100000
419588255 28485226 336507736 482703103 770516785 998832211 5420162 586760591 892718928 127220573 651603710 63732557 90994593 801111454 364163737 55751084 487956726 415744139 581850191 742942433 701737495 903048217 556898348 526692594 277814221 142570698 297041682 460479264 619665063 909002495 595830645 696499460 114529357 535579772 670667040 203131486 979887668 766412926 561488726 943409118 898617259 113832375 366274248 90760690 162566868 820072156 177679069 198351293 1012066 224962691 284103124 215777588 906486418 657341879 227653011 512050541 773478771 260823651 294047091 167116309 742257010 189390604 658817932 434722697 881658140 630584472 715007861 431379304 249719510 790493300 73731464 600208352 529646367 570107733 12501739 123477751 532113380 790338525 3439600 846172760 206027366 643164783 277123655 843529039 478800687 575409876 42870989 149945253 861552941 870098301 251040665 71696215 445881774 870362150 133831885 383977256 780318155 782979731 404036350 429633939 157783648 307490830 344800456 664757623 986072626 377527866 170841999 2101420 30951600 826036073 161942777 529827311 755740270 656535819 653560499 957362988 656425042 473870213 97094780 174991785 851426040 577295612 965487706 548375295 412663305 110290004 918534287 339715146 120081017 34179804 363047871 363376328 535798539 567598834 628061959 718149034 268055767 270783861 42749539 374720570 140660926 271280535 853316629 514468084 25720248 61509068 108587864 632341326 676569882 816694315 440256837 791887321 173290305 375752032 71190173 511008545 920735080 723420444 363772911 948757590 308789846 74737579 490483106 696348797 159557437 89214202 879557481 189293108 390509938 637939404 324115056 724493160 984255296 706101402 696506729 364031862 409612751 288892931 199013374 217437511 735391822 660114388 476744215 530209209 613341382 31332655 776022305 118750124 468641929 867846954 650538941 862539554 891411288 785875081 534042358 554543871 899758825 742053449 605375867 232207367 484337244 120981940 340807424 188319322 874626898 817796778 102597086 703546592 724109932 272750373 508596352 409680152 276541186 153957822 731997097 519748311 667633753 654508690 260466126 18176488 760252349 372708267 324848790 15032024 870063007 22961988 708851206 536830853 310639853 591309507 428072424 389473520 189859214 344110446 492877219 181882853 508586758 494646596 696877951 751018382 581564081 894978340 813912737 714829568 850180259 510319102 873636146 40086099 352207016 323105928 598166258 309647494 961524561 908008313 360511355 103346254 853416769 644255040 436442835 145180993 698973745 250654922 238440285 733432930 23140053 258047530 812026258 286311470 947978264 911853232 993610803 415381516 664992701 91538949 299175096 527189442 838769593 867215882 579106879 635128713 822980226 588770683 868538709 31589849 134359355 81540732 635390533 505469035 575936295 392218463 88874167 736867822 380976943 927440490 114939781 300459567 212106246 358499555 823665811 928379183 664919369 488847670 808159299 616385577 306765535 608472826 973528659 567663719 617984175 794431532 454216224 606698036 724402243 529136398 916562941 412786800 976220157 612897791 444314444 512943848 926503840 937868109 566449499 999042418 401437926 654843762 815911611 82371401 799328153 108402225 210258758 125932418 705501777 383220725 820858203 576687124 845445395 972462002 680104555 358336753 936731903 640089521 770071258 878407473 654160860 240201434 442776660 331111657 947215488 236837186 303372821 232568197 114515268 328484468 112435688 71747429 826172458 349721799 470928462 443379808 636333893 538656147 845749523 387818262 112841848 92178220 874660450 50231419 765399572 190258325 39231536 187557112 667431085 849497681 769382452 685382798 683305827 210192237 364642104 180045506 41625617 469321231 466292306 886319395 417266865 40997003 320430458 38223836 273721647 739148410 820148391 415549222 558496163 495414535 926362203 447571528 82848642 197815799 946426099 798571909 45201911 135942768 904687387 572945100 866849724 711486032 608727586 668584204 491837494 803804498 174519936 129414090 855704615 650319304 52723190 243585400 59695482 473755489 57219196 942737875 219401559 936396431 569057409 840602492 774765444 807215239 139969242 538452612 391834177 268986265 972828375 495177700 952182752 519761421 649805893 292965703 824560758 21067747 483188913 60426853 303956612 213814357 154699952 425426766 278035355 762362565 920819482 969109588 616393772 156671238 73534444 549234036 452904720 3116452 753046432 997644572 914425906 315371644 312031288 531722295 393730870 138234171 267384434 428859542 326362599 451747241 142526770 207022575 421264542 271767414 624982987 682321203 33471134 292347022 497163518 320847056 228385856 569221938 170710971 255367394 189155617 471256114 957478699 941192064 210850539 847245942 676133388 131261470 379271204 766804228 510647799 785777687 810127039 40053649 775321908 974709590 945228479 984033883 41677809 634818142 368425571 286616640 619979794 931731360 441105891 475663583 643128519 764246619 442742456 318190883 42628548 527067230 525759346 610907823 542740027 771505887 673564609 330662607 774064395 622499585 452005852 807929603 490124364 777306850 162528113 342023282 158562769 185046181 460489675 824370174 442771951 974660601 750697392 620924115 373600595 47341175 838333838 999027422 879733202 311955942 929064054 846932863 667228713 902290812 486949806 396288113 897018207 628041116 683816098 606496776 882145482 353826420 960461063 599914333 988261362 908668105 921002350 818280866 474332337 70038735 396730208 273333314 566354218 207825081 377993668 348075834 9247647 483111224 544964901 45587174 559905056 880096951 512832698 963745365 686818300 576735301 473370910 738152430 359601946 444040239 594291530 351078851 509915537 993578265 171868025 587514854 989248936 537388859 468951137 461423061 276609419 107826808 175454502 611714983 656602766 887905198 649755020 343041132 462900912 916776793 182689360 617243818 205017925 249225506 328850326 65865872 709453888 631306341 808081369 47094151 442838920 736360858 101419269 713865525 480163154 236341391 706726822 125110900 642809817 538427616 519486694 240100146 336481192 936178721 109870407 737608227 2891716 175841924 199920280 349369722 599052456 734773452 312286878 260299468 564587975 629043269 340564449 64285402 374013884 481979673 66928169 144554850 315805355 668153626 243219607 893860245 549866769 65896717 736329739 923022455 783022423 403917445 437042599 749313312 28628997 321597724 45955005 893964999 689564027 748801059 54335539 111424123 184481526 973384134 28802281 461624543 656862300 295229987 725334699 624024098 282225816 450348051 810846285 333691299 394274607 972092010 761279133 533360870 86874203 578095979 349484268 290066473 84322935 367335949 673169934 708517159 115314327 846321622 903630058 300564847 817971149 780384752 361753301 235402147 784291243 3128799 527378840 662940140 431968461 288970825 814757339 305327880 979111879 429741347 872102530 748124658 195452762 341409251 205972444 428986108 125843245 522336794 25911143 906730045 112215877 708253100 615415208 500896605 366181751 267302075 591869755 769632455 451730776 587674769 376766861 17670294 840961458 824981816 269543179 337001151 925300780 206626862 516467985 67842779 111037911 526186372 909525890 250100532 219209930 785614806 743327397 518935770 289707334 342391777 357488258 271435955 632246342 715718018 379658475 950010543 763098297 826040319 900628602 268437035 207927369 637204553 312178335 123426511 213249714 919657498 787106420 761406010 620539279 152664724 923298515 786529332 425249551 744689614 158509015 888439653 131065487 206078079 589618117 62387576 469861876 525071419 102913913 356470893 586931939 975922663 477857173 537345020 46630828 780362011 759803514 939567400 975870623 488707622 188808576 677344162 40722490 786527402 538173416 37495670 871152526 622781397 993882562 698659932 519246746 677654914 498872047 172129085 291123075 388778978 78454512 635691100 697487408 164260920 269484562 447280457 163469407 198696336 541568957 206720996 103508960 896930609 970107737 938252137 38060141 205147064 100708650 558492533 536417610 35087921 967520191 823158504 572689817 62288054 796531357 757920880 805520813 391870635 253881175 635704377 534974177 620056825 171540513 105683141 374329075 129144627 645227249 468830797 427356231 301104983 484361938 714467430 597313915 705247964 236702784 508871688 625670895 374118169 599264653 800227703 980105976 900374447 372506870 775748494 943239619 409390068 310811971 92039475 348882599 482133535 925675200 462785348 776644170 863662959 483293569 52258420 588844932 194844426 751988249 803160374 993496202 620671079 400452735 335338476 750233712 256546183 177903929 403137031 893575562 118659960 672571221 359564846 988037345 739803366 856506025 54034603 952845030 579781815 163159468 316074526 470011748 58879634 767425432 265303179 912050260 679476116 916145111 705703936 876464891 152198903 127484389 853919923 882102144 172035391 15043987 759464091 822113157 821435582 228320915 683983842 347284477 424724432 955385185 749824988 845994239 369767943 217019940 754195659 661220360 842012709 585584434 251703502 36139096 45520935 460308749 160478563 539364110 565492772 68332914 792926868 342663984 914069820 644214224 314347645 66138532 998634451 436471079 339480903 467905146 419276124 868966844 86695801 752614849 642411545 898460824 534590590 218130799 293438075 888268235 439437858 888018178 706966958 164289845 229224257 211810218 23488590 998098132 589163021 107323372 931046623 640452381 267655508 236354646 406037933 421613779 902096593 817135035 221625439 175374358 761387530 939110134 611126578 920385783 227949133 704216685 718267790 197671485 566730109 931857378 181185399 57545691 939326280 650518621 898743282 246381112 963343261 478906546 933861456 257323573 384129244 18615472 142400973 936197082 603744974 773763579 17059192 26722362 693128407 798276312 326375672 688242060 786082239 306163847 418828321 889844751 63023659 294462852 505290263 382484798 311186778 303622673 552823415 959336789 370031169 248769516 687315044 274411600 25610435 554611387 403658535 921184047 961396915 637213445 416247140 389432099 901466832 264632061 25372007 585680701 983225133 844835940 542783490 190468179 350411413 380609323 791849220 62899619 605842314 347718157 580961585 424109720 891135120 108432285 215067805 12192859 966998973 831462008 678922962 934514532 48922860 657577608 961055033 578223512 912400378 366357326 424942445 122760760 117766880 278618052 412206187 813142483 638686268 215554202 695133901 100183332 902118652 323957957 327734623 210476341 664241836 50752294 410177652 450186066 880865692 822274421 320119914 674910512 442621511 388423526 83518679 494642665 677294634 261650735 423205077 723274775 731061713 499863587 232736529 455938305 914062525 555879616 487074374 901772436 229968218 854864921 868214505 660739066 869343394 171184571 259450655 332580621 456380428 63272155 527255396 258907984 25694558 165436541 278373070 637588613 174363919 285775807 258256766 843850230 733651571 680655144 521274363 787610667 742939128 286148822 384162538 929832767 185513167 416548893 47791738 752463477 732786416 551595031 653470756 229435871 224771835 876202313 937031831 814309308 741106153 777371566 817919324 16387640 871096366 66980134 994862451 447506160 117193811 420885295 6322500 290084149 127369213 471102039 86449013 76610240 84831773 316186970 718617038 28237098 295333787 284980233 636365536 526627244 837439351 674928178 574666984 807670352 905818022 866857123 958496524 287988823 125714909 989976323 332052578 18607916 414479425 737724930 44375578 287338427 505275880 95231462 229571310 691772229 704347559 130681949 663704375 917430763 112926914 53618746 58170520 150492486 497410324 272821502 150742426 875803151 301171759 897213180 715306846 531532330 759479957 584939659 511629748 248241696 17955044 458638426 312194867 267655919 224540581 509070840 611181892 74368417 559234756 20961945 951745592 60262132 233721222 126943586 765170463 190733953 26883645 476413036 346229128 683395688 834758474 127603814 420072933 711786340 108769383 665270614 29208720 71321617 362262157 304611421 671875674 416655979 945669809 738204793 672402359 962871851 87202923 221757102 534486021 451426270 475791497 552456427 82407300 420172248 944413433 705514704 640134113 481656071 725007973 825472119 653191646 694161232 58370929 199510731 454015550 337795059 906415120 825422275 330972081 83431059 801809557 930439774 993064557 665120027 59758505 282477467 933415573 911715839 202623756 996916797 69166543 967961932 419856942 332821525 560107712 108831021 99790987 576651656 342159481 304168810 515164954 627131914 327374665 404458413 663710547 65787881 192147482 494183073 514408810 391046216 326876903 700506562 776864753 836957645 122725876 905951704 510647443 985076905 475072292 595472376 548336331 103746741 578797351 452394679 138578102 14359136 241446550 222297023 463047025 314827582 480236544 553549792 95351662 206180453 153143479 967851549 932904926 999428011 414814190 611891189 626792836 671137282 211785714 382227423 388152990 43974827 385401978 81645972 853928582 154326308 538325754 892317202 91723848 26402575 397377522 464746104 725301092 347265974 716262469 813915854 826159902 167548367 147128230 891453008 6477168 115317951 660019435 44310124 992395646 517112034 130448742 38986182 79731348 625487066 207166892 884955299 959176987 218030132 34527439 194413601 809620645 826999909 864037544 993047100 580914921 389552363 723859368 153273845 931112980 350217041 695190777 91248136 152159325 68624323 990726129 624376400 447334257 814039640 976544541 719865370 838570437 2094684 274897445 505920718 873961824 439917132 860730944 614284188 720824558 100940810 766734575 820331752 645225106 442584900 478058016 511045833 889937575 219103916 374570682 413078491 145997835 324453303 291977998 181355430 435859278 425655606 146582126 505116433 539166388 495115225 579624371 725753584 716850573 242838214 864344580 437843236 16472655 51132519 343146502 925202134 276619370 574572377 272730938 15157626 143134051 104919123 909903393 197553288 229958444 256074004 606332487 958126518 207113309 205392825 729196729 353996839 884447207 788025560 808266989 795655551 272035402 83803903 790193337 632957566 870873173 189382208 832142782 686014387 65342615 114582598 569401202 932296475 636493034 926673139 100399424 626843106 899829139 211879551 374054102 430655920 235485058 303011784 922499441 861209458 875211148 600052613 45844288 668148499 667042787 138065627 66690011 384899468 114835143 146781013 538101890 344024981 370625777 706590438 725569836 742912099 328058858 737870265 25119101 991198761 805646612 555339904 46641109 599819538 479972235 28549792 616142869 532371027 50838310 694577390 692873576 435849341 184957270 42965353 176052835 405158202 666195314 322409053 5635403 420932016 672296050 729615283 304256300 305274201 675966440 205075476 918786432 602950023 863793502 530599527 876532020 521721028 601045039 209260717 231132315 306009991 648463607 560843415 744187454 650564821 566753555 604226405 438256018 626596446 782663236 661434862 790565784 593076344 17677221 937250586 912522245 575088009 563773378 340550688 285308402 525154338 28748432 759494216 414340085 924213014 864679087 176079083 350593358 34238673 82190407 527036480 800923775 307958833 314590807 404635932 241976005 723436045 36011358 852859455 26230491 375984612 233491100 130904294 621362652 333003637 992907220 725010871 658701050 383603122 806148688 70337591 404415006 854650031 621084606 518584677 470174186 640392557 401439130 580575171 997945892 869276889 314647340 651770336 560284195 164228226 445025369 696151234 192414662 300089796 707234629 286422102 898160179 35031567 494127133 176773534 562128279 335945928 689873118 380517673 132083289 339414439 301939690 251700399 64110829 153957720 553236235 442167233 572839232 672114848 25872309 111207447 687905178 657471136 633133211 526013106 495890918 911329452 77337521 225048637 572520158 969060642 901840799 419866517 783041816 354180357 455279851 136043722 877052046 275517459 679418602 560006162 614598718 472055029 793395008 690450843 256744452 858026260 357355311 27016729 745115666 638254189 742132709 154488798 232520985 918537318 950299698 623556577 929209160 466140685 822430784 411159202 63603054 913978695 353700383 791625407 850524210 463649540 263580180 438715316 21942357 632894232 322868472 439571117 798799006 982628807 130934340 630337202 854966002 417022177 526179025 637355830 616295487 393117106 650984712 389950290 903433766 558302549 523113981 344263180 485879597 901215480 207182861 601338083 440685227 991428044 245749850 277116564 18436777 218348991 412685589 950158175 846220195 395615546 348193509 513670911 61010304 188637499 793645644 843152533 311551254 548068220 949135554 306748292 149343709 570155975 276026879 648348403 113130390 772723635 563413764 160300920 724041577 376287995 867358432 362296147 532762270 305050723 44095966 520050666 757351049 724638705 532662174 176670825 599501 605972403 984603624 120729330 573186850 170079824 528346902 887054675 699283782 659017503 331075044 339955129 517027242 114816217 658894790 103701945 713870531 945620595 46880058 421769884 389229590 337001423 663518119 130503250 647702003 674930 998170234 363757705 334049076 755383430 256369746 149395952 566483417 414969799 156908240 93109787 154905820 755246085 999198711 169037431 90821500 709462907 749623351 327242192 999548239 696181154 576249343 118825108 880516320 511655981 837224822 872799756 696714628 269740142 803375544 919262458 427055035 561427575 399655432 454078223 700741800 294465873 160508939 250764561 454818054 489084720 653590923 724749418 364749285 236122218 194206751 580387509 475487316 45868867 141328068 61412119 418088676 526642331 534815654 513136488 164946638 55960692 97363766 240782046 712254394 507047153 216805328 129498958 320509070 29066286 273097596 265755868 382683761 255248587 721763790 142804986 406052613 194230914 772755315 324878873 710959540 117152334 501721474 96223637 306378592 908128016 726912753 146335689 355454697 183939334 495144484 799368294 722899288 740369681 64647762 850416759 968108601 805226638 117127486 547545747 40593087 754834623 212542445 210419889 331172534 883749519 337176049 969927667 351429520 94843042 348135090 138786900 132772079 302805828 232648564 524177182 83677318 759232802 701070480 732401168 748207326 249762379 978330074 127199765 895804311 58672887 910526750 951258249 251763108 756731201 634206823 782369514 539831912 202338084 299261157 720542815 998645467 511556990 122180577 834124680 589909581 882625850 101589540 723247510 274128256 70422680 638318705 828874825 465607267 297844568 89342738 797350800 216023118 845070345 908036236 963545166 136998359 801295781 374497915 494788117 698846913 335523944 739784376 240546912 413938568 41694373 7098485 339967750 586091772 727618573 229693802 119772455 236890228 696808557 953013922 530742557 798523910 164286333 136930302 946236701 91355513 325875925 145920649 858163841 294628571 629665894 652185380 748996064 582601422 991528440 653762351 741009749 212592848 533535835 998914706 241868877 760951527 756136708 649333808 895372785 303755209 647621521 950176884 259774960 290171205 496275941 274627035 928976459 172096025 928772894 992967939 845604961 611289756 603479923 802892225 679220885 478621804 193258632 243526527 428292348 985905625 833972242 765271192 18321557 212820171 566928768 327529385 151422117 814839888 57869544 680494329 659068606 754801260 127629746 852616894 479376522 838840440 912861734 655609998 283536444 791807751 180315433 411332273 211378031 854012542 517742794 579415153 59698883 500354252 464924050 831010070 681997499 592649564 347076789 859994253 455711871 243249262 613676047 737086482 303763129 722054742 275484810 678516853 635808116 696484823 634156761 68245487 973488363 585106564 122323928 933524324 349673734 793494876 638815554 728622037 932218740 183166536 353686359 204257559 825188225 45450694 721234886 928794448 445775264 240569628 985010850 683529477 640492563 579262241 199080974 794230711 971747452 727898984 823868971 910694397 621044106 444515847 439017807 597782248 651000165 284048049 246017573 566210584 357134183 920485108 595179030 770150823 407997344 273899414 585656068 114531089 980268593 150168416 485775030 827382972 908021278 910645740 498235126 445890847 889530208 163031120 857413252 785509706 212122535 59205914 110691342 824190825 357899501 275713616 750614511 413808006 998718592 606317548 319565715 648025850 27024698 39411566 714150472 652825343 357603877 212192860 48256386 675088622 927887170 698822565 50718472 476084692 278945622 251711908 217863896 130508075 105579983 848379689 948892618 697273616 743651146 976869568 205306150 231289040 356629873 268600331 904828809 174915683 304007041 87618106 97493962 730378573 702017443 560024442 9937625 61287825 259532542 511966246 769942437 507988844 583645776 481880739 764238717 925737473 774902322 752890528 621634869 870617136 301948889 779375455 877507200 394605938 382023493 763335435 307218401 964782344 881107175 836884487 882921114 467340362 879981693 181937642 321762362 747189908 968328635 280526634 672422237 893693320 170208882 566080406 518328052 111961632 670286290 594940895 323587055 379405845 262377131 462260253 545123580 508593941 136670690 407388961 20252344 774696876 898478686 704222867 137147771 238704327 843987964 272603013 151060731 206720293 386992362 78411825 516681457 634837683 769680270 712449162 21265662 479454557 123959279 719497528 690941863 982518789 591155322 828264998 794511039 618620263 144199481 818828903 242723703 109852555 906329538 372267034 813245833 85903122 564506696 574523323 570144587 187694240 970399806 979663755 829473443 331442457 221189639 373119589 553412217 305659729 943190441 149792065 948264753 271128562 515793149 58379100 543245206 67568241 625612196 376982467 599386685 111629766 228129572 97982367 605735055 953327208 135250284 617770089 504485380 35408237 564950897 639580008 376347741 162586389 276334617 412246645 77260826 143645725 326609061 188581567 104826466 330764898 287044162 550147779 727148235 595562522 162629812 349214782 796953465 321229260 49916644 182979368 122594097 388390259 116105463 497709 510770406 838857913 784480157 850075645 4511654 154960916 722492916 858684959 956141822 52662939 11957285 346575467 807239101 993679295 735174355 459805686 462111603 481124212 852377820 248012767 875300842 697056867 847341565 232719029 693159308 58337832 276063056 317508922 481228690 285886714 151276972 301279726 772355897 572795081 182107597 482456832 972118373 648593194 328109792 314544911 378122154 926529391 174917191 903474430 962095724 93253301 904282055 12038364 633156308 374541476 718811290 984763717 569172782 574455820 312650581 316877503 112289033 759650798 639695663 610879073 77400909 885006379 588818171 807632590 498255403 661459294 385784659 477999764 419975728 925649780 181817034 631871372 625276737 307385516 841623058 348180517 445193319 274519987 694183644 580255538 700809186 537481684 605914657 204842473 760373449 235689043 754238191 167965588 688204561 506216116 260338936 49997528 563007838 694235623 640024433 65607778 182356651 291149268 845298596 537388069 972504896 704120220 757180749 60230728 325684243 157574870 446342885 916984701 196850124 138493207 980621580 131006725 591290609 66400739 431460541 35898086 755522586 857188718 19932152 71805433 8014621 888671370 253294006 965211336 724319154 980631429 203803328 95999801 250087036 863726136 549446654 429879298 936208224 139515587 579729517 921103267 503393828 428441711 831510703 486366160 13104021 793979928 137022045 668623838 843862218 715437706 261834936 939814263 405008339 710849174 952808994 170430780 406404476 804781196 760890967 493524414 647526970 509001048 61630085 584580524 442583225 959276517 115448837 149555101 504068902 477084826 37316638 226215080 593248841 659709934 746194206 913622554 735583751 761424910 131450921 728871532 122309487 769329801 614521881 535622650 183896937 720855103 271138214 592908417 176808166 84146647 913217080 806307425 74270158 889971703 769088096 643084170 417475599 82784894 599748189 563107141 66160615 88342166 68753104 378398606 600545745 927963982 757586998 507055861 808155607 796598899 577305850 101983068 89808078 769454037 715556242 410317845 285616015 66551263 613927500 22258803 309723450 429751785 186734235 95814868 65828795 68864557 700651794 867344758 145213159 14154226 953188215 852585927 508699113 718506201 22389406 549913546 887276057 922936714 336875125 209793795 636962338 310436878 853634923 750595875 998424808 327863076 909568255 391416207 312726859 690143873 715338799 78272089 573595599 338782594 593691239 851118950 162762199 879014038 736223563 392065583 713569142 292613413 196274170 405898975 232487607 548554318 523199405 444070776 769515832 92230519 947828225 57371661 262282199 399945778 810333748 914896677 790510386 266010703 556140853 346456710 97992605 855380335 178287663 968044169 834612224 90667036 171088634 245124917 24539279 102168863 69571155 772336757 991606917 924005213 785135321 522285649 878796154 91142539 655681442 750144052 751976840 526666928 626528180 635462600 646488009 913415065 189896417 102179669 787357362 823602900 254570288 473226660 575165589 997059833 446484489 100069022 404506761 457594079 980668893 692104595 620787079 148114450 758156088 852029806 224504566 362391727 279060095 30321880 234447391 887818009 446091010 890869978 445061189 139171753 274612197 945521143 940475079 810000581 251568665 92082757 679749024 657903769 787947149 706987528 552206990 519041643 763593487 87027330 983398778 6247445 848300529 55921271 911025745 578333981 158363686 256008731 472586925 528390786 380462574 428104561 624590666 602999705 164000430 608599756 820000389 177388667 383162995 628212496 604534904 804261710 723463818 160884892 410282618 799372461 566129436 80461488 426032908 971858680 955111061 115999212 435208535 94052236 575097579 861221698 577589288 48847654 299523301 911513202 36076763 87501955 58890700 89032160 755535367 39782682 827362046 582394110 951367836 132451299 231967499 688791014 333512144 878524882 525843551 542851041 261445644 399230240 552321156 624810605 492629418 520520950 302794958 839568975 517652382 39086748 517023588 858427302 486974742 53132067 903250092 150876013 510399224 225566746 203585308 283394887 750735571 711977411 831551968 467867057 504873636 301073493 272180656 600305421 97767018 113771430 680403033 650511306 584845473 739343226 131425614 36594123 141584341 246293891 973321243 843405060 266977130 513133788 994830255 196414537 685566641 336216559 162243998 975274426 683017684 223485533 986833241 982314971 965543868 116229802 869960219 773850133 493715840 441514718 92923394 342810095 24894411 721376519 778788757 376803185 880554323 838196117 524636946 408747735 515325622 320865766 628867595 719355938 113180582 351783056 845253841 199514579 160708537 792315685 45786009 626268613 418433278 558792675 502882552 572151780 426642930 621647454 171401181 625707467 962550444 970672330 671659095 965212606 835397338 998393917 965321094 724358633 2559230 804685437 961201181 150448441 838129414 141913562 368496731 393661477 239007115 587327250 676918724 576877022 27804387 370198582 850998156 157924949 65058691 491738373 865420986 753503410 854492227 799343177 152855449 139118855 218518610 598785894 954967007 883229633 832684485 564569655 424947399 278781047 360547949 997347927 734593478 338139754 917719734 999245964 887017493 837521010 695059412 7585005 438011221 978288519 355994399 228028566 154928193 415161813 715101256 316565797 724786648 819578891 386201577 742108388 64920623 238052601 293019245 654299157 345935305 409991578 314095342 821632918 874773712 450976861 809689334 775838643 285950443 294542565 647686887 946991258 991123278 462051697 26847050 663269854 979869514 888467301 376610883 185299783 988154857 132281116 431961423 403327357 222063601 489375116 48351711 64097857 863174217 301761442 36831460 760108922 25172689 66398601 337121663 937861559 601564436 362867144 220322815 295126134 472016528 878862108 300634460 312587867 875150096 757364351 941345411 238508470 504443694 174913960 547902655 636881538 494439693 536568225 316174803 836028618 889612428 980427046 442635709 365688326 58439652 902518001 933643722 394755624 238087011 679964373 645855207 926493762 911915458 690729519 878012229 332571466 315492123 443107097 899931201 690656200 701543282 455200674 625156199 55406801 772613449 787584483 919705543 964577388 221465267 125325555 187360002 507553906 547977211 8121378 361558047 463927661 23471225 916008739 813577358 803778558 75408444 242108920 771855345 123808240 605957871 939933213 170171236 723873526 916932694 37097908 297216212 272230508 404982463 856750727 357562864 19966770 340162336 543591294 866574300 858061645 956907661 915567934 956745579 430192099 225869520 456536007 683010511 336146703 702447176 795501890 934188744 924203488 25469291 56518249 250225533 198525680 214260890 550621711 577777226 884741644 681589988 467198066 748580534 253345015 193073710 338017461 792149315 521763755 155622217 990043011 585579386 303919718 18683815 925507289 744251474 659593307 740400969 159093850 765522441 412326736 695154902 824071646 275178897 308705189 973931861 293449837 926612755 625875764 796477304 622684994 55815972 494490039 437973014 607153742 455779248 901905449 929800260 552752551 994316907 786351727 58831869 550540853 947232231 213125424 488481318 830845374 659561997 738166061 842903801 83527867 113107944 829187446 265451712 969732855 763675476 376457196 894843613 56586512 369827592 743275846 917345899 344923250 654204495 711720933 877489547 619570035 634152191 548169545 573706016 500870942 886108516 857289124 223401138 98269686 266566452 262600874 592293762 683370878 935306836 459565935 623652967 728308777 473073463 711502590 238463580 297507896 26738338 478090150 260030417 611877949 997861212 323079631 211019213 206156522 793696557 304396496 589593242 60868563 479166811 472492980 592421733 863439157 24690545 530020446 819809787 977689156 329395574 331216081 346407623 363095575 635007807 499575443 690050595 992832798 242173745 726921937 42066482 722294944 999316908 349415357 40300784 867348458 358472548 998794301 36428014 426856507 660980504 256591575 126570075 618845880 276708806 386191900 448068631 858055044 398450808 910355490 993193858 799153131 415863524 536301882 82242659 217905164 991975471 793447667 475701364 284944247 114940404 515732973 6339630 93469747 931422286 108923989 979363160 563644427 853924617 85933603 910815120 914140800 210969340 516968104 600547499 972678683 868787221 721999408 714511762 243266353 128928728 493304501 799305844 883292886 366900161 804741987 37622433 572505316 616611837 648741636 578749891 976763037 637311039 801013174 55256 662801235 307233939 512275386 274613853 497603569 241897128 401376729 689310705 387921412 546466276 422017343 841298255 594646436 554149761 958832450 340485212 542230673 692710572 925005431 485618107 696736390 955445050 538653225 449024852 183749463 92859073 153199262 763818316 24351683 880289679 283985141 53352172 321139389 497945186 807293804 848056042 97853115 341762109 7278370 453000168 245717338 544963775 842943565 28509919 893855238 346809510 706151193 447900845 673595678 601516408 744499332 391496367 8655701 60409739 151430145 396678262 391796376 919673377 339593116 599773477 712272578 801403558 297348780 978931655 138176335 449008440 323501421 225053987 475378761 402201356 285373307 58780380 233944671 54347005 81199137 157504829 504243121 38988633 807721222 78057421 846751540 350431582 538243941 173008662 809401203 549028840 667875698 252046605 359246621 563347901 976972153 990574478 320838591 395131084 105749793 713867906 525390694 235981443 290869691 580407354 808679455 615797926 738636799 889852681 827837716 657452606 6718895 563413415 687053918 649352938 328159772 442861008 839355416 421489535 698269351 611931848 97406452 831934841 343779162 703488991 747019818 841755247 722810709 897253142 185928725 826778587 648846085 171892446 675792094 924435226 636687262 175089118 842594000 92241729 401731214 79896826 809753656 531820189 70224385 886062114 419661471 597263345 120770777 744136903 872845107 680722346 944203341 25921071 24842429 231718772 20541313 269822573 799376357 248629827 764689875 225059507 427847445 444549108 902228855 253815962 646049873 134235258 805997510 111452059 414006857 840591980 47404980 570621677 453840759 572938574 585934566 902752540 640381500 148578089 153083741 887089833 973149836 667398335 246058785 477104359 700407838 874603949 892190120 363646369 658928773 7219946 284867459 257255793 491287000 193716289 500057363 716535679 32532760 538082012 610907409 882826703 885792711 840990857 148364875 481599438 869319682 1856425 432987113 723857959 218312876 969433826 130410412 251145206 23482283 688314176 788151054 391193678 538659742 931100711 160000150 801667030 200546154 845883550 995629800 397127796 908418346 546690291 675255347 354503119 899187597 789339511 628866053 513788060 793789913 533406161 634303684 214669647 607165462 513013167 902080156 478256869 661927597 935013848 124043079 885112387 303160245 735566007 279541408 677322417 828451915 45616400 277938289 481715744 473653080 388024842 750248724 638512522 622436830 668875916 825816572 337377033 972037870 737178118 603482794 315959820 134540772 770664150 640143485 489981513 885338194 831545265 722835015 465362216 256428741 463058748 889846109 965845603 708125232 782314792 979212348 524459923 704683644 970866671 412900249 871316388 494387432 563575849 566108165 608049119 340924837 956926393 186576667 932912563 576172727 415126123 123989070 345948532 580233193 608906960 262920057 143154063 672536304 678392558 668973706 833959008 437261735 629494798 83855268 110727256 762086788 447923145 669108435 3552796 443509538 695683530 857055382 700389837 406150941 600893704 207692745 242882189 379094872 896830149 115970510 507653038 275044408 649535257 655824869 239576411 452056443 866679955 1089480 187240709 346918583 684075433 748810559 569089685 759412349 833015476 496395423 965898574 531928145 301962396 756636455 649187138 419143112 713221643 909260848 419334081 256489327 157233438 775225871 419342337 555436111 399108953 51033553 636976369 215898979 348720436 984884255 312821782 353348340 800031127 233495537 287545674 964303383 463052167 439537413 343061856 891520228 389431924 212949890 895290516 954809021 732389835 839609024 618880879 245383697 382035517 196437194 892713745 708796654 351795 317254705 90299197 206354803 906056169 661977714 630368829 943388229 408041361 313203875 396445065 278104733 603312188 724458542 594310805 19514872 743574769 612016105 395005265 17416567 66044295 837781087 478571612 707987298 489866728 385174613 904179849 610634106 917012082 468007604 744836812 227822000 847828948 359654020 144135872 909432039 273969672 10853888 6232230 494324164 253488060 797033411 2835496 127307737 41481580 381316996 675901059 280178949 342103708 312474706 729824741 126165579 732412417 413486097 992268634 443449772 383977163 341695148 116191029 133573227 138501354 509269364 159753020 222556088 276124702 740337741 121476656 680571540 296845048 653994608 697388110 33609927 864012677 839418779 166097037 8838255 464666887 409502939 949196349 603620567 142443638 645033169 841240264 842098458 887958399 444621299 15919168 338185361 271647304 448885547 761452260 145619348 52777442 276561898 580803634 664500941 298308851 4026168 237540722 823786385 31458360 949040171 248108654 953680157 513875795 123684245 179640084 343531993 51075105 539195104 523628905 215983446 336090959 625212812 992940640 423447639 267508336 876069310 631171042 262228646 875606431 640744518 382982312 3739765 655531135 807414627 642191400 485016658 276593241 739592867 294455318 84933530 147537522 851278275 514363297 767381367 89505777 944456068 758209949 564061014 491499817 479421030 108613444 36596613 933382742 197954258 181935489 108051332 527798650 488407544 628577441 841604579 383745635 334095094 486413228 762476102 724470796 163918937 221764643 111870871 999915237 633315347 123782195 962610322 991498439 962216108 285000698 535621385 656904590 339523876 173176506 64221119 965014553 360327385 5889115 327410340 350428202 499906343 692722575 794926937 124376084 163988197 469796040 724116263 69295123 45512513 423078180 216224934 487315242 834101364 745554912 850080200 586108828 149013716 759950104 840624886 34271822 231585491 548461914 217875055 109509639 769259005 483937798 683958187 264344874 732748588 968967456 827617882 850097875 923345846 244870293 15908246 87815316 627781311 290196445 365584075 33134030 564314169 853508996 348197127 259580961 317183344 354288037 843337147 456549016 277599325 426781771 420772044 608480992 36343427 708205700 260076467 410766508 839702706 166258767 677370647 847238053 315134658 265855010 220007012 220237907 125156868 733278322 574823486 976793251 122759943 112118859 736817257 36001671 475368108 747949648 929196181 688781733 675579886 87167287 581431014 926317747 428449641 701146134 95880560 344879238 544010732 840013961 282784110 519493997 587091324 999254860 696547768 311162049 488891753 700275136 729862289 566709460 449074170 743409770 879770590 617986110 544957301 994149037 288791198 740924806 401970713 487525433 386327164 310224593 985004653 796043134 106602566 63535836 774751591 124213927 85327960 599792744 575827521 118797854 26093417 550114529 86415562 544700003 758820330 650367633 75809734 816585563 42249704 297756296 573843397 927549593 672447778 340380229 436072033 300723617 621148437 371965709 563540488 179312599 653069163 543744010 421395572 214819612 486646161 899134382 311677401 881791369 75795949 656896271 629387587 81761619 558818269 800322326 117508248 599998885 620133687 690997820 900295068 657899866 27794942 911082768 443603819 244491405 386646484 39021495 500670896 834561121 107110516 421651467 817586137 387974823 155782397 943610345 617646673 271190639 460292836 975530320 797059818 966870114 778268273 655489403 498477133 98843229 878545628 641807995 581032447 649190981 237607568 250610267 830256648 25323481 643564475 462628436 593413306 717338908 315326578 432331157 86255727 331569455 365240900 675197742 935085034 38928044 633498324 418657464 957457762 944954146 346730962 699087986 259926752 428395026 697087740 239581247 45121918 903861697 830997371 591900039 72342674 673388068 410439081 210422289 677058557 890730077 273685217 443687691 839069659 724215449 330302077 591098900 122679508 130985483 272798853 59117163 793165954 21539243 613162759 599166731 829735605 979466121 291986873 110221842 322286021 576332157 82831157 868983614 589817129 825660805 660304548 512729135 767527657 499858299 113374040 788852318 263676809 461824385 522346734 223864739 806202848 761527228 180702222 412568997 16235541 310648225 302306675 449962993 620175721 395318309 982137167 94076034 620924113 956880306 308424881 78552010 933052258 341243541 949446750 590323621 522889180 605191307 437424021 572873473 330620411 229528480 541520309 879689693 758135404 213686219 91930929 144456151 610393354 584795892 702027925 687265418 46056139 361933403 235578449 839436789 634076326 347065184 772954913 447077342 148013971 120760223 107190603 728218706 728305729 676640914 318834442 813057902 625539875 33295247 114861337 503496446 614444263 339417378 679359849 412534856 198006902 449909534 760395847 767280952 961120705 988932172 702564709 742104008 837708035 909793683 914613249 241173561 74677047 301641763 716010877 741721229 72549803 953266993 642368125 880165132 194700555 813658554 564525569 240044608 842419983 520004445 887335646 457127687 993849392 977212478 73509295 20712393 868730892 791861617 31102754 289129688 35386119 90387355 867562547 711795475 688278096 279627727 813421288 769669484 428637826 232712298 917003178 356048845 839510737 962663088 322120923 945492014 135667740 303298950 387084709 658851642 868433352 2325411 597356167 596960525 329126692 108118267 454035314 52191980 647737135 499720540 174676938 744003608 384103273 326305113 507733325 537372397 141362541 746863121 67622198 281349923 658557290 599856225 649003717 459266349 773477198 580446687 569282185 963829259 242385312 200339139 3909933 220561679 667422030 166601054 991415343 295138127 534842811 224142731 838925968 249731289 438318741 768547740 953137010 375300919 112100214 332776346 926653199 475726776 521506762 921868049 139194410 290459481 23974540 533461117 710424259 215947543 561218874 465455461 345690247 202572439 137540209 130151083 653356819 172343839 204009808 441814396 381649919 973881659 962860866 951754910 131267078 573518002 600704847 45445784 321997384 913152832 125661398 3019788 801708563 966880064 5413382 836124236 212125865 194837584 300011959 975528797 920473373 464648063 105851796 979947273 443562207 243158257 190556263 611110088 445703405 940298929 983637582 885517896 321677349 213500170 629586723 636021096 520331139 242314782 971359544 642336785 693609834 424847358 958810950 861201843 655673443 823832638 468723451 652144450 707979952 222044956 986360391 622695671 829506866 313928163 528753894 199064237 969066722 86268389 178438239 413696395 5922419 848463588 273562547 198525297 705157355 771638113 910754866 727924885 892083803 440269800 189396744 462132337 273054628 28557767 228304049 761299821 412128747 555951614 831712235 372265458 483125692 983509508 906111677 533594980 147348829 884260930 678940491 444877624 363374307 927435093 668816377 722303532 454555015 428442698 580989602 277022298 261690302 614978833 143133297 306058579 607582622 296441615 300807770 101591230 398188210 136201871 860756422 824384367 800369172 834402187 332626330 151919130 391124224 727212855 777612584 418966356 912224205 732381686 242894425 284314448 862405480 412925824 19536356 764456944 214637375 195805645 368673116 374965365 227575375 591724275 960043970 12124976 839010053 89136102 712930163 806263976 673139565 668145666 986560550 960967846 826737070 786995958 211239478 96334643 449046860 964466135 427747749 830455688 561359586 449909363 682141543 659116862 248287953 353157764 753854170 466495389 458803722 546032366 733252397 791975556 422009427 132079188 734846172 254144513 19842345 254673619 398060778 760890669 742771764 659085840 964153503 333368815 226451417 884315365 195239192 847472886 830796810 981750822 241155728 104664145 666613662 856250885 743956939 130448128 559074460 462794206 554718797 672657902 741004888 936607384 754896685 707424718 435408271 151636007 689190891 821419900 993873784 876932024 223701483 690503070 377781370 155168154 313579545 75525803 423760892 795811640 564651979 274494268 302486010 322274856 387957337 119631893 212722912 340050095 989942621 52993881 781452113 392178169 330359206 770304487 380188252 781951027 668242831 946194427 965467385 984295896 44062545 168652557 847957828 377870869 266760742 167025863 284817846 640892407 84433720 487539349 50943223 649179704 531324339 87732932 583203692 199109467 359225288 649182754 737745552 31070516 415357239 717002069 558820440 698634813 647437663 2143506 594221884 734801968 723171469 356313093 456454039 336915092 467141742 207762448 3491338 904192305 706876485 889357403 30450413 328066581 957290469 842760990 432046172 711816843 975914234 208972528 827953488 22316344 273248439 341728314 143503626 20482328 263028980 972612392 460352853 321302813 907255782 435403275 426295644 53765003 830437869 797747502 461132298 956253355 873675524 789549721 461124987 344131316 396446974 638369300 675854407 616854958 270568126 280705174 452672704 756186161 366728264 988953837 764272561 346417860 809953576 728207229 211177968 276435655 61200253 860024922 212761034 535145191 534617262 102880379 29644847 562240732 494852585 566752053 971722137 551405036 163278015 802916007 18550680 266470489 521466940 644325114 148274598 31326897 585834052 205660550 901347724 380085745 741664440 27147076 375781970 979423235 842711096 411809179 273582704 41363653 996418 250474764 191488238 383469867 308392187 818462714 838305176 53410242 875625658 722499904 401123914 408012799 352800876 824465486 232987441 670958065 865431596 136646285 529089550 471473056 912460257 247363190 53691553 536766849 269930155 668312656 877876853 417549271 525697366 581445621 370650140 11362548 13651373 628089527 423989722 484049190 962224394 650789467 253551871 917189690 359886557 760140372 839657915 97869135 267550758 322356231 262466946 287697315 436880828 5780810 697277753 310175450 18374991 766947868 240896954 636375929 777060882 294560642 13276781 129211380 857855957 912850924 797494177 876719462 78615892 710584073 852299392 589349856 480580672 982297097 452436128 743812094 108926376 374097932 896010865 867060721 235008145 597879234 266239268 112105092 461315139 918393040 591028039 376518026 920181026 194454525 903807390 407921099 458422336 80951275 847654898 447497637 170055697 552962383 508777268 402088824 24056769 914162153 374468018 640829849 531733429 21635606 924504910 482863334 938608302 989234933 96719119 12223005 850481547 428084878 733580133 39444591 130382546 690421593 470583074 685148567 127636920 961694318 9847699 940447527 473902962 283907014 848708096 47239061 840538695 251806686 8505240 442743625 816634315 866078497 946230452 454588795 338031043 356961683 803842448 696610432 192666144 16348281 733391744 893264777 736561666 16981402 393441243 688432537 986561924 985448118 190070667 84596908 223900787 985686164 896536446 20838012 813973965 596482982 155404447 681475554 864090675 900434524 607681304 86954949 136239164 893025749 462708851 713328710 463564229 675433957 47773047 757390512 777930722 746734294 764071363 376632302 481858558 846739819 955082782 326070650 83503267 413318980 459268246 54445081 995949071 757967009 603121796 91768286 245814245 618322198 217946021 331452347 319753302 533014088 877954191 655910783 142269385 455202099 276303530 351974308 503315139 420519562 81790648 45900813 104358711 84458878 381888944 380981623 674345004 308499284 590496492 392966707 820828976 595908634 483802154 864786055 146134181 650163768 844941404 475237042 381933917 561134060 111294489 25233178 799725043 395302515 900191982 562275749 344253051 272216873 540509075 185067272 242156356 489370523 828782877 593345193 907708028 816106852 975414115 118001399 213826631 64541998 902899354 406214284 762604291 580068981 579192266 103000889 716127514 445049458 131319540 202231677 735349982 404263380 412503872 116928637 593353573 613304544 540692800 619821183 601615297 688193197 594443241 884105628 494034124 178059175 752208846 589839755 11405999 118109687 678615682 779310877 775756285 49775989 781687810 212815009 159245803 707556079 105721292 850846335 602271961 887252728 693083057 658299076 757382135 481527061 194865739 288683900 991094443 531158328 500133162 762454161 906542445 291557660 643925170 549074751 490655180 919190793 821399392 572921031 811293764 671897164 6501815 78618525 210021099 577211221 768686168 869641224 819095821 307899196 519389615 17345351 615608167 892567760 187552776 709079233 722631271 769087665 150155593 529548535 517721550 922189873 522852266 860261027 687229013 768537543 934482494 716976560 296010822 260565537 210126495 379888989 208748258 42107994 51623566 82704063 694756071 326088799 832359018 747630208 933315015 435412625 963746660 395927713 106436313 753557934 333139696 400461035 700389700 228912269 19873968 141027983 983921888 249427067 102368304 484855892 161411340 848036171 447920256 956012163 708339508 18756070 101441741 841626648 410378151 665270144 48900097 757209480 20259474 964947819 542163546 287277389 499848746 50056067 635232727 621225845 924310677 617986867 914821113 292425699 714444133 600890446 370327882 457192606 358801962 642992490 822695424 433496285 310484789 790582072 273607955 624225995 121165929 465911633 83001589 722983949 617204172 261246351 729937903 770624352 508929515 874240393 1755010 709509628 794414817 813125781 727811971 995202532 277674019 637089078 269736153 268347801 179387808 142029877 226022659 493842591 995597694 454887144 798973965 891820172 290688283 998260601 51991918 351793248 730532037 480958251 537479127 608868830 890415603 690966669 371522715 711893227 280728692 313426664 906837992 979286599 577704666 580653533 90556241 892431142 561335405 767794296 38134073 986897078 264725981 381855656 659281677 865289187 862705844 628957481 72435402 575952396 14080164 133758447 102131757 9838580 247220066 167299050 466937319 831428256 209825507 926151391 251742623 219135263 546594394 590357561 27104414 729278793 536963098 71451201 742804911 98936344 590610507 42683633 197365784 23563730 591441333 307870159 698885880 547319880 519480656 942083592 939648681 444937685 945460611 934809216 831312576 906656536 149688458 415604133 999703336 503531025 850456582 768487265 835220775 266767921 62326045 936042705 847673534 268632531 414868423 181845845 175612479 605252613 947757703 247912947 834491684 530520067 605446407 453425287 206507824 87912630 262447429 272410959 34010896 112819505 702955078 232327159 91687627 630288578 480422918 461309782 444648658 37860970 235935846 619171887 769604967 676479852 436334184 336536440 894865253 649424334 98020779 313403638 939220026 658989986 943017842 99320146 285802922 826902990 728509573 928307920 971624367 894142013 479303562 666664092 361302692 132189780 235358432 553870593 151837707 69167853 94817732 812013488 772819977 993591360 234018425 725842895 579305895 501424162 370485116 191102536 155969570 618237937 515516441 28809589 430213286 544417374 787235530 20803158 569648414 347667311 408978163 835687743 764170325 555047640 350462564 729264826 154565482 324567473 967019184 685052478 489258873 378804212 913510988 795823929 920693626 507891163 274244133 450910185 673026838 469606221 995340930 201643973 208109152 997070836 167707541 250852758 417415444 316896196 81766429 801094775 302416855 470114934 204201339 306383705 300905688 445299138 234667681 514493475 372264108 272927001 354101271 486187958 101321542 756513887 227529939 848228903 121559635 18531526 219152921 623727399 397634684 163821253 190708199 212064576 233293607 885371755 860300068 949920006 91754300 396323868 33743013 547024259 407162486 825493850 975461597 42375271 140360976 482282246 667737252 701575370 393022579 697633166 114764588 159056826 565491634 491974088 474550997 988567343 16222233 372346315 793134904 321655796 539483220 21937910 426349273 770590018 64207173 309990751 621032257 834057933 79630359 167125449 812908615 197010612 800568374 616509874 424931784 794070882 235270223 399795911 612498404 112889805 276884527 701686627 752326663 776047838 801536667 477373578 602378895 184134788 859907370 827406622 51071341 908519913 261065295 727143783 600866127 240213729 735840151 989764243 949433007 95963017 23013283 96763797 700113814 816707824 330319021 746697052 328688285 360895108 807970124 832720039 725859716 166496546 297548773 328351097 101750800 909497040 17344282 402859162 406290232 931341349 60216027 807120458 142682922 388435873 141996665 490489661 944786409 463639279 569089223 828554493 29851046 893552324 424279412 107051708 203249869 984194300 724939189 731915168 259280270 386666567 905875457 976593895 734260776 353847655 181562465 868217015 416772408 261497214 446083412 104633975 549880772 648569268 37717554 948810178 635237658 696117972 66646729 548187569 649807725 13923886 145708728 85256137 272007331 428046916 555576141 400273728 339987504 670170157 568651584 166133429 818079219 145303815 995460257 214821292 858974753 193730668 777187648 8596926 98044606 38672800 590925195 218213136 302048990 825811170 881445017 451963136 739578111 220645869 815983495 72933017 125293301 540245390 340112376 790454466 432053572 39536855 264369343 946515727 454330133 495033764 526769009 392795896 446704434 30755039 471339264 449098767 24481248 253652493 513125489 787341729 337996434 903107707 396046331 106958512 780852217 774424787 258848928 486442209 57997056 237197889 935758387 122376713 21809556 699878631 553949206 778066103 14832577 155794521 390146396 547555597 334187879 287945514 797202137 215668446 806935379 944029512 401135411 352366692 915681199 977905643 492893994 581738722 31272663 500716505 883870255 377284875 420246813 682321955 484927292 604074959 492539548 275391339 377950619 437773311 276088504 909375965 459227417 98052131 128680365 192595927 148779824 686144425 170870072 693873403 986759257 807831864 860223027 73913051 89311277 259447240 143797416 17667373 597412099 677458633 943481587 399089563 621165965 674021721 644224442 465691623 48324279 122253925 262172579 132482772 406673011 749645753 722025805 737163721 82891599 389911475 68784726 290124226 140723889 550260580 287532650 585575648 130723814 124104458 983195053 375833707 670990963 944316884 510836677 18971039 452570277 70254695 840694062 535798446 825587757 610038151 723519477 429932743 692870934 990150993 310541553 6850691 664241259 132184962 687570726 612089032 629787445 777593305 156197405 273243889 47569592 902828862 845127109 567054582 738560141 562771489 140451964 708979138 684646133 597710421 847753705 348194228 933150677 558273039 363618565 847339439 663269853 993137421 480827419 472714893 867407164 752466990 241254054 29630840 500131093 86924454 914840697 654777276 941487725 746336513 542176337 876590094 510434663 624972199 775037643 579609353 770812898 426289230 527551923 347944899 104019649 536883733 555332205 993899089 859219338 35066011 444849685 761401402 719608935 524797450 724441349 90575111 285990199 950313983 661450890 614467867 397814139 475393122 837689039 70469269 257027942 881795161 33113581 815291765 167782590 865785426 355147652 318765272 231298679 641111596 131631977 38006819 110869444 734362396 979130140 408023036 275491713 905933618 646724808 81688801 598682870 813807601 676298355 191237411 457497659 998883014 626697705 813076073 334526727 767020750 158910854 691138666 392357105 392577869 57981951 529827027 804060253 374494005 294685484 305758909 432047922 878706245 811664050 541524044 246710213 110533432 199039333 242361110 882549292 446556409 67255967 999099027 145815952 640931112 397078312 932849556 173191690 978807524 241990292 26771026 405773291 677210691 854452534 999975630 807947673 133278482 781572591 215163557 284534567 148046132 403880011 208621779 137766591 594608742 683018373 489867480 738188411 440535933 80170273 177277086 428541136 717619936 747918518 230311642 270978498 574695991 673631723 752403702 626177444 394799373 691747060 31369607 849284848 59542872 600875553 745306625 19143604 515061224 813188881 770311419 103167204 8651740 692026251 738071938 246680551 863494776 83744010 841257770 294107607 229283852 397827631 38971580 154827449 511563490 330745360 386888794 929026099 716401984 404121226 482377840 642992459 450433533 843284305 813616333 658745564 213981042 146654943 912091976 783880981 777994896 916539826 945297661 743236997 643932481 123929990 247532945 283321364 170060737 233052002 931312772 178001254 168238440 224372151 469938521 773492044 976446370 599369829 212526784 333486457 270778272 117655378 104807311 340969397 186211762 836350394 834742213 296907139 282528233 534700140 889732911 305300049 27778638 454125661 237050017 717155681 969838467 489320539 311632000 11423398 879443908 816187690 429524134 968560743 278868555 966666469 53325355 214604245 842854728 46776558 153090259 43078281 603092842 792245366 442390400 42483117 354933842 815754346 945977868 961619597 908310067 549973929 715347998 746373586 170593126 139954929 909235270 910406004 649271915 466173288 372225373 95726792 948229181 349446404 73787255 433438117 258589681 957207018 693811295 488629729 321759469 778716553 481550960 306066441 442561260 283782128 831580370 354377189 427921674 27694876 21547681 890203694 237713344 333714038 774120648 478188771 59207027 899647301 894955893 64313814 248446257 55794075 728876088 931703655 244498755 185906742 749359745 289276596 428690975 999505614 146470773 187676571 7151807 581077326 220659208 753360024 397621283 383812483 603695570 850349014 669872132 226285035 193964104 21905088 154364697 19401974 384189420 247151470 965327548 217414723 130290775 925800023 615752705 280595554 912338383 845410045 718762385 322010497 833953510 366178902 176250530 319888495 588274534 973898259 145080749 825886813 62999475 334166528 603726914 40790476 202192825 64993255 612130286 3267460 737584439 892232105 497500861 119180818 686968042 686504965 22070820 697197383 904794157 677525748 141379706 314627829 409490878 574721761 178183647 632126844 292517350 593586653 671059900 882048817 593871192 998608877 680904415 247677730 589873000 826008168 368302394 459007224 559440638 980515582 728888084 958943986 505692255 626514112 554355560 676739780 232158139 736836997 51561464 606305432 188230001 559354886 711332861 380696492 801784837 307878972 329304362 121833247 51559083 297920748 283869160 590843255 233359514 476067884 73707027 604387808 866844168 76901214 289751473 73296592 540714853 476514523 646327648 669618118 58844792 904797911 573312799 197077267 520094561 102132775 923716636 450124709 848365732 523152615 362538980 814709229 731874721 755058723 603726449 376834219 684601082 776606920 277098373 774486821 45246712 191123690 912653859 860355178 834620040 949360781 18420969 236710241 445086796 563105128 160369470 306509456 766636515 773217780 607212377 545428733 462316595 816691420 100419459 492751213 844287579 747779442 150440930 413740334 762562221 565742108 811054243 525596345 453567684 299640930 189011080 826070632 713226171 127680398 96555043 206464154 822752332 238093259 196644942 353588604 83062066 739316342 315859612 878480433 602336905 626330844 685879301 458415518 330277825 364091718 944573079 403904576 375347101 772607166 636376254 332391646 543002939 926759189 837096665 313377964 196186658 204800939 330130169 405376603 344807732 739441811 184839953 311269432 676955527 748146499 506877740 791961385 937953372 516722698 564912028 791829534 221593739 349189721 567379339 394305319 274735934 562297698 33559013 821930176 508420092 197781831 84850597 583529050 788326178 611775519 65593327 577756992 883137687 169099926 39625568 14495067 179175436 300151598 989665383 846184250 303454087 675696189 186630408 174519538 89312571 714942564 385027685 172057431 555392467 939841059 383869743 88653324 522604067 7519585 91242326 261570452 508340920 774910704 910035828 801967058 468454717 198271599 324837516 47881288 736286987 999490745 650509125 274331662 401889078 505447054 803724200 241116371 770114307 65582108 423205588 36788051 664827965 592652765 669462781 449034168 585339012 351508469 980763916 486366735 601537086 163453256 571299612 483611891 925736291 197999433 749216115 877159270 972375202 89603019 107543308 916032185 296135508 577387761 39659242 426126641 739991546 384384873 103730821 491969662 736803727 688673896 372848793 394676629 120856794 373846839 454211040 264333630 467081984 695603993 404981213 134185058 681991733 154095875 94770217 784500914 875603194 426624531 421774615 29209506 742645107 888344446 972586976 1163665 639805773 421193382 125843779 803697492 333365218 152494452 579292958 392242689 221146854 532393370 510512345 386606231 273096230 230536858 167743964 538229821 650094375 638442338 269657455 988753795 692662973 788911698 345525387 823124079 341834140 604410714 869751453 110381299 16489869 826246339 791271320 823759880 198964511 583693981 351927756 793328787 464339932 397511692 290000681 723231660 48772423 413843258 9487663 713362467 321154328 216866863 29251557 944091451 578210313 775381947 988574555 230279586 347958694 676820296 689714179 299972910 186614908 868049020 504740324 310819394 822385705 429381677 411692440 952476774 729990164 582105046 241034461 822803274 362237955 420849033 373065293 617709896 12948841 705841240 561164649 959687598 955918698 31425699 513919067 36204157 236321576 868396038 231020906 589142312 272689734 260902519 398920831 847238883 516321732 267328525 460268270 826850475 853135008 496803069 305307566 60567461 307731058 343115825 926292641 506525337 121554821 139824333 692387084 788823447 401429157 150023031 855169740 975247826 586255747 677976140 487561340 43140667 411645749 251445922 432057763 919172011 723861591 590900217 902730361 786548493 281121264 4140498 792535806 478258872 22215415 795883386 46236272 686417921 771297198 402321047 570876897 907393251 399100468 866996230 421991867 95418760 209214800 490089176 424823482 525552634 471626925 714661147 998230005 244959327 933212471 119416271 749162675 113947477 315353938 655006602 590889941 912001289 860274426 845086952 631142991 47766210 99164759 413214904 665229694 820094764 671070195 338883968 961622344 910967860 520560663 866710292 819425281 323868372 906681506 227043852 252396305 5625780 989112837 715221860 747627099 90239207 559206662 688873162 643857222 144041048 924955657 995963542 9598945 116797376 99527545 746492236 572953205 884005707 535045288 381477432 705925664 119084116 158784339 713079959 757198794 909108885 77953469 88891736 199089842 625803496 624209194 488121946 959657389 486780279 928044934 500712614 383068173 61318930 373216289 393746814 389545750 3721358 167899766 496010639 999311146 486297929 400130532 706690822 938635183 232318371 984687931 939541896 358241829 442795766 345871454 578318886 962277232 779369974 58723320 721402283 559645227 90202138 389609302 620103330 699238233 513259585 889905551 429431038 590844256 134495258 295929086 935461897 905278026 835419656 347349570 730420462 309657471 416368124 467530020 785942295 688876797 971823900 854134364 914656182 806000375 14583179 11652852 760895558 877644135 359363509 893471454 834515326 745940811 387598636 631103004 106068632 630040324 972319079 861061482 884957528 83413814 800043229 425844346 677791171 230929281 97974204 631229474 247906216 990574852 561890031 637381340 827400829 676246518 357975531 111203057 333231002 461860969 614470116 465152853 434908423 750985245 704144447 476979545 444205907 623405116 950895593 190399875 140173545 913134115 846762183 932840673 210646453 56263365 910054580 759525679 761200662 469954313 941365555 620036067 892522499 589522806 959191078 156775145 291104780 601489276 515219513 534942535 525882660 700613804 301298623 575953330 895705117 428079316 128980399 451225529 720236741 8082523 835048909 917738419 670110760 147037719 169853221 510811458 212412803 984321203 68454645 22648799 445731700 367041578 67103235 377992870 18788463 483858223 459225890 145487593 570699522 789689651 738817037 714430386 452029026 853140512 689498129 564378977 981395987 667002632 234689879 716674119 311211283 647025729 328004731 641519087 719757954 438647993 151325457 719461144 798670713 812849079 292760569 311964696 851804940 526043048 396402652 505425546 682452524 504674639 988566080 802791642 813871491 888127122 508764887 763252712 769094815 992942861 398321818 601499389 493516213 321504399 523481056 14563128 758677630 244817048 859669696 724685435 915056726 669095919 499067658 848436152 199776296 484081131 397089846 255803104 904763761 477379159 889932672 175049847 590624725 954854259 419973092 504705704 120028496 568157636 918058134 559575602 145103961 616910532 905366425 452982432 486831077 510783053 229581405 954677081 783176609 275010267 176827403 454844973 809612171 378380013 312628355 100751816 214408385 822665088 937558858 653198812 879617405 213956739 260190683 392504330 378651158 570699790 78900634 236808364 711319117 172336045 245980460 721791865 981581290 519997416 795956742 68509888 336441555 159356098 275668746 928798825 630623618 138121137 955616206 103209597 928371239 452102871 103551141 510545487 493224814 57054982 498059809 370563170 122088235 950625540 785369222 950799043 703200778 743732180 686005377 233109008 792025814 656284666 130224099 11736148 674446373 532153932 379239182 883323502 929090434 855941862 925540053 833529818 600853768 303016589 479857885 513484029 964228929 729749546 907196035 327632355 306683269 304857843 690436890 716858870 770282380 834972243 645297579 176173288 612231697 812534469 785510422 27381034 311679820 593630635 899247525 813111480 570371314 124309647 187348174 21874974 963457644 850077212 285472484 672587014 344545468 530247060 892612408 842309293 345666587 886366384 883726234 418494582 831287908 319232992 52301030 864523782 693516624 357207304 880047180 596111409 94505126 774842926 683258506 286673989 675560013 261621633 68712324 188752307 856984466 155397232 431198763 12056363 860585984 257777844 754443697 821784831 596037689 171547883 152378596 600940121 952713038 139296303 821931695 937174964 417289351 78780031 883855020 526899023 730145678 472243607 873629068 225957417 958576702 789612318 192576092 419971044 340184930 507990482 483959454 75675312 445987672 470828449 160882040 414085833 632227198 637620232 178072746 185440195 763406745 450764376 368645256 367190010 61025453 799120876 564512561 946510111 131272967 427102989 281901446 179521145 892936867 552432490 667036277 854203208 621423981 971736889 906899951 176413807 113158165 325994029 26703861 402305041 898005280 207921022 497739083 394930163 384226795 357852590 266773148 779302947 648915869 691814889 500926388 562213116 244596020 318097078 387028709 690465558 263545476 405050771 392057857 540007281 604755991 440771779 161555852 302012726 606818772 131212823 192883082 181197999 659802055 857918501 773090821 499983921 239069735 516109219 436357559 121075611 305665144 335104692 235384980 478803272 565257982 609357898 98232708 352860875 539030590 228037566 141062921 802459253 58231363 430214372 687171221 61395676 34722180 522789679 297546764 638232590 142451776 747000397 531800121 688129296 249823680 63316090 116512887 943774667 398892221 664282728 89451529 634125123 348085435 266432974 467344911 577667321 225917889 909978101 975825197 820713558 56722626 956856364 916307448 267990294 583187159 338135315 298417369 732487158 354463137 622512741 420970124 918271284 336353895 944656270 300051800 144674552 579801055 65748542 939653034 282183775 601477930 499041074 26104933 505023542 719372861 41575935 159956960 474880581 571517536 728288773 117788452 138066622 473581430 238622899 606442761 854604988 69505046 991262795 177105201 382832221 356900253 869415103 24703068 659782935 946587054 916175152 624505885 266351452 866517545 869313781 738240558 163175617 282260416 28784714 47821459 474622 993202540 935418929 26167501 684965715 660131819 423707049 777492382 678438889 88004933 96729143 338151823 789920841 960913816 600425797 423870645 616837376 794751620 386650625 348558585 806924286 6146924 459312104 674923104 25680786 750683778 394856857 568842199 985310134 799757551 835830163 332118555 663048570 902957129 518961827 99312832 687594378 619938315 181592020 431283340 4004164 374424912 392410691 64634292 160787604 713969750 285407845 792617813 766282300 612492797 241682802 507317440 489148301 851695550 674974548 7654910 555349662 213978240 233659529 354469671 672471144 970229379 249658599 920790877 582117518 274219019 342428291 935141026 912406038 715006703 373647618 868852387 362826224 974608244 682223485 660174932 573479833 666512414 798816280 863709961 368804458 716134521 455249755 569601373 530852077 659036278 158735249 796837399 251497054 87229254 58622952 737870490 616595727 999440712 193249740 635272443 331808476 999380035 629182280 277783284 894003811 246917262 592290138 233904225 643954243 201444297 290458384 200122559 527872979 961319536 414217758 629878271 618410042 83174382 870343550 33425733 693922151 959801839 235416950 274906770 333458619 47827148 139244871 969505984 103050206 171343036 621797798 928759491 921507843 62576416 198739420 748376681 550017391 248821743 51777551 883546338 964619930 146345389 343592976 586468859 312012027 740493422 988563493 354348936 993237908 414813014 973330760 947095371 502772802 369482928 584198787 896785276 792079298 973475620 492609354 687971473 311125725 247284018 193029173 865686254 145614765 561038509 73076627 482721710 474772773 542796147 584465004 463787259 528229122 310196850 754754142 67023671 395219066 747019421 882369588 42634022 140078493 238399659 109924202 398870017 413962317 924205240 629592363 231007308 830740319 726667228 541383244 275901417 250176308 298948609 905769835 730597391 828614308 97040557 452700909 356539506 799189132 983299519 34798742 237752395 558819425 47664401 795452908 28316990 766269959 209881905 96410613 689845492 823384803 391337641 574128942 475184488 525174920 463591167 241604328 115977423 859769708 262925281 538240036 342289409 244419941 103858897 890246138 598442724 261212801 235151319 986972422 119173095 164598590 516637402 550142948 524229978 355235628 473665708 318220651 105183892 261774498 233597456 166075781 467262953 240509165 226085618 722833479 682062002 82589748 715932098 270756417 629777060 593591840 501621762 194134189 187162265 480820062 729378953 942168676 418156406 121943674 694443889 495718039 128087331 185374579 577486921 461426771 3421902 916846710 169642233 178275417 468573420 816944610 876468620 511875944 489816175 890481272 593770467 539682061 273480754 81182889 569068298 849005985 752489152 616049162 83113300 424803448 756238509 651953536 611053832 363247551 274933727 421342213 552385338 636937606 763872003 606999553 821008884 308779250 379898794 664854425 139236443 974291139 874258766 247709390 62045692 333853803 473905716 963331882 831479913 598486014 550546475 902424704 357066762 72914317 896434678 546754576 364191394 680933952 707776459 589179818 872956108 867992526 251540080 227987696 589874544 789416963 494407433 716599995 130543978 743537514 604847781 333833666 416337038 924543057 97519264 557718560 919867716 869030481 86996556 168598771 183918085 511916425 775589891 311427141 1424013 957243692 598430324 563482481 969508988 727289441 65597090 504121318 344413147 554214933 169579998 156741628 17181511 551493182 440166946 658242459 215891129 457477046 845424982 819711752 579947078 643923818 426945440 287048358 231155478 753190115 67914190 675642137 960465193 966493126 981641276 198093028 311901023 766004967 46773082 68879634 4129196 81655547 760138656 701451350 246916883 900349310 79091926 579820961 910278347 79825271 21788365 168860741 621822973 216112558 773744945 962087271 449828187 612280550 235596541 49496362 137384203 933044383 645177768 337901859 154393444 849063158 307647720 412588896 899922485 57476024 685371413 871428676 508677304 76536779 848707434 593644084 795655569 406875826 549480464 238741864 43353984 161198759 159981346 665389378 914666357 516037867 815131259 155955879 427757311 267705697 450271614 805655710 237773208 214365840 383290200 144237765 737968663 666404046 845753437 163351280 539265271 712342738 505684000 909852316 247851099 944166949 352888500 525526314 959243937 103378947 887185814 779521558 975094137 893884996 272297179 487544550 582969294 817300864 889525795 652653270 70426494 384190242 442530183 900885041 462687310 500425966 63712244 718551204 978718811 276382363 997021448 943544134 420398211 442872992 963089040 911951358 993782781 246598559 838262133 710631182 207054629 294260836 588735383 308911060 205358778 504051145 327565065 870964477 819047879 484745317 537548424 791153380 4586692 79409578 401008058 655800616 572159424 988641575 186831852 891588524 912529702 434036968 579930531 346451813 195174566 909746792 705312874 898069744 567745850 735720879 666178134 966995094 470775716 660412271 792738099 509079811 416593497 242405058 631874489 64280234 19096734 271593025 741938101 915492067 645543188 395206646 226872139 217432983 756435299 936597458 752240261 14488470 704314761 649738853 516219147 472699097 966527084 889741890 734642630 84426751 25871405 890242111 608442695 651422257 571127509 124680941 955447777 85069120 600452686 664823998 321507407 271677576 348121735 267972410 490625942 644904534 462633303 628673751 981808964 370498249 742953248 642938365 122154176 32216406 780123491 208990916 95604605 238881682 708323751 585503829 544209278 38506359 80487670 553808083 286981674 641485936 218659536 746399209 302054816 322847 990945182 441225091 296771100 130384516 552216570 268939400 388048411 880534586 186137639 477701425 834842630 146565904 73876068 579209018 385315647 261497155 284310652 677723429 97411730 105234441 605724532 428975207 546251558 207213158 739707394 444636079 27453842 742024552 252732468 385088412 361782908 743714057 951110584 639387613 446412430 172404056 716860334 597003868 399030979 824441920 34493398 130756479 262121802 427832520 827051065 378811102 447420667 626857666 901772312 904570230 649985229 224986517 963754608 507012395 545002484 688807633 397253806 133322036 946232450 632046970 76524240 904202747 843728581 594279256 968236349 571771737 735454895 269524482 146474715 104702337 688758259 644846680 528235993 963023941 77009826 829438416 139723626 51899418 903006162 51082426 936569393 95579302 653120332 261934483 181711263 536202314 499647764 43718503 880800242 561824237 633007315 997460836 729491863 637527759 723037750 518564257 311051965 529410239 715298187 691727209 272847236 219878165 470920008 955417779 600922923 42463100 231814583 261298447 722694054 123364442 69955861 221893715 688328490 448015197 536652429 397159531 708513110 358846493 241996028 577286269 14498510 735954358 187686032 206373925 818873403 333126941 168583891 323688339 427397665 195708439 242321810 704200089 525721905 763465389 804034411 992070568 438456114 210562220 455676731 244189954 172201517 106026883 812147017 264171299 83625423 627152427 621545883 306725524 293172926 684712611 987822976 101555554 315902971 466370898 925590882 595654314 312566874 792846241 227039005 611591487 30652370 762708866 934665976 853255098 390555149 675882847 910274734 145127084 638346190 240267173 157414273 322377370 540449630 240955843 505332196 568301821 394198352 91277110 248470273 74113811 242257039 810701684 732718295 463873320 357417369 760208626 910108605 279734571 259300778 790856641 953307046 257557682 893948973 818684837 845298595 53804839 359899463 459131893 713108670 105194578 746313179 747336077 564137537 212635950 680514320 886988427 90924606 735281661 943099288 499743870 487616843 905423893 992309786 602302323 35412740 899458025 231441879 308573031 273213119 806033235 788327523 667701665 805754175 116744462 110892744 400505716 179993530 740619573 436749023 574041061 102349876 297794993 179042876 834750657 974350074 880321681 515137676 555771406 17898638 4542222 129751747 640049995 90399561 957995292 885245303 770146399 773402731 175399966 929039757 590226005 824249454 706398395 405399662 738853336 755285556 248556748 745609968 971784561 100285389 936448312 941684673 361386952 152822704 580708192 124044423 463100515 295965013 352730379 873062079 22228199 111049303 660635329 420790468 418027690 724799574 23520400 961173023 232957927 827169040 50239351 709701271 101190144 271769949 219556663 401949687 967230810 47631275 497016465 210136668 160822697 290986182 111089360 407102751 114713741 83225721 116937753 904968332 518419769 831435570 883355376 620402616 200329605 665718752 698454223 705459731 116791069 136809697 518775895 799623445 676816653 755302922 518333296 926266531 74166173 553598866 248956261 599586605 786156421 316011640 400690306 170835364 665681602 285394639 925429456 818643123 193390960 114360859 742613004 698251432 355855728 446930669 404678833 110561910 646603299 814356585 214841661 864844713 640894103 706914875 677129532 417960391 888962283 309178252 219738675 365593719 3353139 602933903 58849137 717303964 676863473 809863734 207462475 742392567 937143396 448785389 631467783 14574580 331632495 230758911 326493991 360729564 276498183 343925326 825826483 755456131 980635934 941851731 128730924 248592987 379916348 136950789 200688367 995892313 636664285 696578502 37071924 382277510 894534080 913040689 269442952 472778698 687270034 489449836 583758055 810174236 150622750 800454061 132998648 15633628 903012607 537742978 184168966 293797460 548402590 953885916 989444486 519783755 283512413 479646356 69307983 602302016 763630829 351187258 778791742 479375357 247961596 261973645 348446859 971544177 794722946 566109150 983926562 781932927 853650557 695820739 6816880 973615565 999235100 295075660 157778469 700062847 306522356 819405177 823301688 995182893 303563167 554092502 195101514 885868008 683462034 401171053 438899158 36837988 963248317 861784026 176709244 397183573 752062969 669948717 386850136 988777829 425857293 613264233 997862209 930484560 823316329 473849778 80743146 317996558 221634307 618597718 853963780 31526347 806313363 132013523 651262720 767870828 958089242 355583724 239707460 721555513 767648274 297895181 337708336 133840780 604964263 253378944 191395618 840028257 598768908 42763093 941763034 824926137 814389868 590152855 997781039 428329191 656509220 794756327 827616197 965486902 675508918 569969012 460968168 522166010 131461619 435765059 186799536 61510252 506184021 477675568 291333208 1268583 892375339 392148943 447133293 210684290 122004221 204199345 739500226 872923390 751862320 744565802 171727478 650588050 609181629 282281415 105115094 320395221 294255910 939078367 336874824 826764454 71233881 313206337 816725634 289594453 571437173 269713264 934915884 780103278 754039375 958352149 673845917 48233643 913284198 811150850 950900247 319284936 520819570 577673613 23748863 588790315 470775946 82553481 821365640 194085530 314136719 234264602 590566575 451516640 472088140 308109679 423136949 906208516 761644346 484617981 825171412 219309500 789556032 431068517 723234588 533742657 5496612 429160883 194314792 757345944 374106647 794189583 525118777 561085434 180671487 404469270 16934067 888427263 574730297 826802525 518004933 943055248 724970457 841812498 319325554 873576800 756041570 395686653 829881911 64035972 981890339 239506192 271915471 161824628 57698978 891412896 973377190 863069817 409999506 989396723 205266764 527271115 112192821 191797982 345035035 381970778 163039115 778470998 666463936 911894113 581127919 606984689 968894043 725332220 439278321 718060682 919595917 697626775 933815213 161657703 601206816 441779252 140509594 996055849 55506396 170489967 747547539 943423859 688586383 744208736 411116811 482959165 88807844 251176457 309757001 603227705 28065883 418969495 179015080 109180005 692664351 692781160 743365722 380484050 401974534 972154650 263044931 577043820 939470360 598443383 609211993 269976483 738895271 822122809 360822899 355403340 521544233 443617152 769845815 580366801 997236757 913203210 651988409 546552015 239672912 873660476 121735929 287596091 723974307 116147135 466589429 143636707 865241384 880535841 686013814 405348791 515346119 22076777 108123554 591928785 220719188 489097402 617485183 339659953 825069022 413933022 368687906 556753701 900075825 245759267 584547880 833773802 443009303 241269677 624692308 926348159 712295664 125088490 852011698 739242088 26417256 640687332 203173483 296171535 189989256 176091396 24204680 592490906 40969549 299592989 501218042 882158748 381206949 723293585 254444421 207769824 695158112 116319268 840852268 408236623 847263849 635070742 388258267 724026256 300673030 864326304 196468119 343695846 395754205 94796303 323260580 919331470 178803643 607752294 783123606 949882985 641180182 751838364 932253236 228350184 352874741 741797925 298197334 707976498 964777799 528053397 106542495 490176279 240584330 973534740 145026058 873906950 474201612 364552644 645634786 634809603 101194756 607186676 421890961 391252850 613344609 40939519 235145449 781900385 312526530 93238657 941658264 24812909 677530393 379046376 135065963 734869305 834786003 46322925 376347982 576668849 764211346 270818494 711922754 261428573 88978131 171246232 429604825 322340879 470564932 475492536 803281559 842316526 535006437 207217795 954265816 556189887 837914277 172113135 691393836 548638690 441357254 686624386 601547589 157021198 282317774 736349598 88138164 425184832 489643243 576927516 192344417 18943881 368398598 300142863 290121418 37332738 879668912 612976127 524585188 484965289 762971342 808858833 221633141 854215326 173142322 517160377 777659828 46176463 273515169 864245718 742488378 845088180 134481003 616234648 782809137 322573955 336399945 335116479 488884538 341363927 549417350 867997545 189944617 538192941 638418587 18830938 181128085 598250355 463656601 832051907 633086344 314195660 448176806 256746873 104853031 823164848 302922863 719613673 754666265 377556717 683365540 111347223 509556965 885528017 161905102 116849386 496284523 146100472 631398993 693840139 115457263 101167461 675907243 132081457 320200771 103394553 887178254 470228800 501679724 937109400 441196137 661723336 617429110 40145075 422176927 985059135 611954583 744931423 56028181 229519252 658162090 67998430 946802366 108019892 693374148 688892580 521143234 420447419 712444278 764911059 259328281 600932654 889023185 746143723 166454654 824387974 420432662 149950727 619060162 671834585 748617137 446072177 345137323 255630116 424363106 415751022 669859895 39978059 981365316 607035965 658637142 224429836 483085454 225478118 331454742 931163427 955677089 406592920 337846812 419041070 588845356 767018707 424290508 605668229 396940955 385166995 796712899 501949272 520104673 597681330 51466548 591333180 616727454 85980751 802980825 837249936 865544705 341163994 662924128 913655954 52375723 597074499 116832023 534148207 725654784 833423098 549337466 921722598 285301443 348687227 727422889 358330756 142701814 292172176 541134673 66094071 835811791 679823386 790683703 335147733 114179089 616064501 212460776 576640670 442622126 656871119 298389425 623770283 406663335 481111295 385153767 169478612 514490218 244309218 966273024 1596069 289882096 167686574 871489552 330507273 358360923 398127448 796239539 598855010 16120406 296832938 694866875 937393256 12373333 813816386 890806023 233834891 408420087 799195697 25979509 917541015 12650208 740747506 82173842 172704871 714142656 586546329 517588701 484688552 67233702 434537782 872703310 316813667 2598099 827632386 367497084 240634753 63935342 224665700 654185589 679388850 524201613 208883838 678382509 577119888 960504930 249750857 823521297 647357213 860736711 593903482 129805954 285738666 378178008 848548284 91663655 273547936 523157507 968686704 487066821 394083258 797454574 854917661 742271996 209702350 437397527 909064926 859356467 414654228 158570957 8500746 291885156 279580724 967612541 101904949 462483074 900346290 932961308 389074447 771831433 238767414 257233446 113496137 613224100 651125678 816208938 533499147 973140172 980722276 773409046 609704042 458634227 607539825 219061301 983767974 723243005 65290704 69107804 48195666 627233373 424136104 463632988 653001642 223407924 292077029 814398991 192094904 773840225 186338028 809603630 114281144 426810803 245462531 528787724 467891085 257494589 950498886 938289117 325458319 828598744 491270706 722142812 978058429 174220450 245883724 321190862 320979773 748357045 778939980 474393868 246461440 619379092 692512099 101262977 515701731 556808356 105105108 167849260 818225428 126402496 640258442 574723164 881491337 125277523 170198242 361004056 335707871 865359334 218481478 840948830 738536345 3284837 307634923 891629537 555089663 830632287 465154673 397750800 473624298 500462199 899400619 328538632 419510585 444597047 748218280 552473251 784450438 123780855 502969813 747312405 287931955 66061662 857242831 960373365 642240363 414587820 80997642 593479339 244571283 337260360 566146452 42302655 373964732 942461226 530535833 377217750 568171898 458927491 102335769 555719641 861331654 538551583 922325119 372596931 811152866 813029676 757162452 100698540 200978746 117348414 201525014 278765920 709740929 751693950 807361989 209546053 281807910 497139057 478304107 526860015 243233455 621885236 982469032 853673273 939390401 316271074 656434901 928317031 669362342 418053837 128900341 674512628 703357177 779598745 953379080 622299553 226710048 41641792 43062424 100088490 568680097 331962194 430278399 970737798 234838199 439633906 486894846 487292592 468193758 466003578 862342977 841484061 578089411 722777449 87454712 793025133 50270379 892307121 324842309 335459631 418457556 148394429 323474850 45406147 483816236 729238943 837692952 817323482 850549990 108488702 694373580 354151300 696354084 132987108 202175857 730863504 396492004 375670059 1006981 699615368 45984971 426138804 714358464 986882877 645948273 367145103 982590695 686540341 598054288 397112074 346821076 734078237 468569803 488665456 603343491 339847490 753325597 231062367 284668711 793876787 925501667 919980639 776160703 122075236 52466111 865307410 199610161 612916861 740412095 690459169 117495070 792485083 757430443 226263195 729572117 145942320 555845205 631605473 866335336 81834074 496945199 259613881 253038856 41327586 775265809 806619196 530572223 682023686 861666077 370625757 428466387 713051452 360978993 26420420 252199240 533855718 446659492 732500955 161260817 97272253 583502809 145063190 529667455 779540000 406409667 402661177 736725395 303595800 903355156 20790782 677852117 632801630 263214782 263389187 282231627 229618584 739156908 238714444 212515934 877429664 265890519 94948404 749887818 671315607 768424629 869075667 637261904 666976096 954778571 598139512 987739984 117692478 982636416 272516955 337998884 666534207 418511748 948150233 591076657 726753581 629870379 828345844 875393740 653627735 886031445 882570909 275385414 980926249 799578569 181804122 761981426 708194540 73940354 136360064 857557777 329243050 78795118 459767519 901715455 917658089 55734097 326702837 458632836 413254909 807362547 478637658 371192767 772883359 64387264 675991653 101835891 428646910 641301940 707549762 853842675 327085295 258416371 291036046 261609348 34875346 819712702 677702679 711707344 592389202 145213029 394517155 165237570 973032383 416971636 702798432 436358841 781208837 143763682 402494765 9364629 92066867 544756117 751778034 741794215 765952387 351088350 801041404 312991103 269073118 530878337 112860603 15699503 951417805 755586369 152838712 796690687 870805557 484156186 321967965 97322904 984781217 79022066 904822427 217752707 601947940 49418171 882419051 370807539 471500066 818470938 199589428 965405956 69166173 810060739 697522049 113069316 687388511 105296163 366709727 334274063 198400432 478741223 676311487 394154398 985297762 244359666 813297822 456607443 897145317 150937282 952823350 647850933 914833434 111389870 858087820 684497205 628633830 208819858 9751872 850772441 723655452 288341281 558629546 798270561 463873854 739490342 752418458 514524713 317280513 57834135 286102637 509718541 340035245 199359689 7405535 31787222 918689837 751120237 211086659 414288311 583004676 569185607 585395074 121392122 694580114 682663413 906456361 395983523 909516873 457094564 306101925 956017910 496932115 726034846 795370200 933859593 45452376 290783496 984421575 11070875 80941546 364307796 804222794 443100855 531791260 611151261 848491431 964202423 128987978 597486908 905012662 228730426 423856786 128216411 474941522 733033476 693498455 988819024 606610338 122031543 311658018 357609022 972448589 479356682 487994349 482366849 245263811 392720731 402913755 836713828 48663541 108510681 152836816 251380817 470504323 160023271 698930594 991606842 234292094 685448196 32891483 558171956 821620292 492329298 330828905 120729736 701829258 599668469 672302344 908903634 671044352 299916970 316060834 904957053 473624810 290636097 877368509 193408901 74270643 682765423 177301475 343445319 86907125 278075919 596037724 253470797 886060581 250531867 484787971 552572269 745433485 934256607 816228252 884528339 524251083 383292100 394774208 399876923 214258703 479128215 477382348 59242601 340511118 138444374 591339874 118887085 489860994 546765833 673007493 205877300 726831827 439567057 258309879 249955991 287762397 682635629 33756651 401173354 41718473 175527871 433565993 731584686 859374647 91557962 62727585 137841312 981858576 788035743 296690991 437147385 542955758 75283759 517882712 296904494 504675628 287641471 496754295 297676904 998446476 529907018 9208587 335508710 400488754 442475078 769737581 507935405 349025811 85220581 562380192 145834448 315675120 296157350 39664115 466203872 745387486 622914063 432209258 580492663 796302645 883423814 159536361 323817663 781838078 433985019 556842773 272619225 413111882 819133610 861672153 444263440 308593201 16930763 590278101 764576598 447771250 568760127 206323147 57332312 35456291 48487828 989639567 902465587 917831411 828543563 392475479 310147131 734016233 378156188 178103835 548958282 104695454 327848721 278215492 158636278 475754886 109237612 705442032 840677826 803095143 202006752 652442605 467252410 2471269 889753053 365907055 261657136 902369396 987076164 714911494 585532689 471137543 628190423 314694095 695376847 970120838 931674740 451560557 680576794 437226080 394292912 378089635 950431688 406199143 797652659 374627641 233045998 154656889 603918317 650514111 102525967 742030273 807195127 418511197 270856866 210785621 619832857 584940342 757533951 905394338 10470687 111429184 418167367 971916398 815614346 687448393 636892784 270804737 269970393 771930947 339147620 148737034 640763189 323887580 322882551 29875492 757118183 403525402 348553587 99524213 607452024 659020951 429328302 857542546 149324236 478780991 238624266 551204010 291847330 319711929 397702220 578695891 105554588 356814034 779242452 52962554 864649793 832094579 41014793 441696041 609176359 149748832 417078866 181352311 622441522 337536311 584579065 42950516 880869215 372263320 857633930 355219203 606485767 746554209 546726704 427644667 205713763 406571474 650833759 972027628 700458647 405583629 732198692 417727252 351088147 216029001 92585952 401304407 704530667 645819461 854942302 958643815 608386017 405718048 781207323 17780688 282044310 736936473 924822639 104548908 421616911 640183787 357044067 266215035 417057589 646208245 158025061 639954394 672931936 424001837 133743179 403463324 743213569 650274071 144412220 76178024 418953363 339599996 465055410 663661317 94995054 158899474 335124644 616986134 115173194 878625694 220234622 505579361 976401696 459079854 636922287 774188169 861873149 106765076 996866519 722876952 345379820 939421544 716755229 180034691 939722796 779970844 789464661 182228751 302591583 721989832 563492744 791895015 740745809 6116151 850889541 620173413 704801458 280992939 765516390 173192678 701840680 503913017 489316491 171413715 913313645 263863259 908168059 314347763 930477473 219649127 80789192 763419206 530952748 427011791 439850795 135026600 665963847 382295830 541515907 326345591 311012875 323713670 63913345 793211356 144576751 566371724 745485344 954464445 584302780 50164058 286546495 306572355 43630318 690081983 478876854 223335146 852201341 807893606 239555162 854873175 640928828 869010840 453623256 967006534 300287662 935497134 825534588 862648155 237242812 988114253 668084274 975257541 455981144 149285468 680143724 552729755 439569417 547207821 535315513 624011726 206530592 236479113 797500422 713686156 182811852 408658999 763933971 296747017 378586315 171266189 306606184 7406072 54287190 44409879 582082214 400212436 32104641 493523947 157030630 907981457 291078143 536995998 687166750 209890802 512124912 916421836 557302234 801102070 407400234 61263965 423243875 592594954 574634684 275039560 821552758 413232909 472286206 306038885 383270954 245585015 331131969 464845588 426341850 720740564 384420265 790865599 261068014 171637851 806234135 235676620 848406953 436747778 376332931 79381539 270813552 145500227 35367564 792968008 310454345 970606394 723278103 279772317 216451477 882967364 418776368 520600751 965063063 325022774 237701801 176461897 303127990 371026742 276382122 326807704 184472569 478659117 89035928 624664041 705912745 62440181 683250811 623539644 650201985 84950506 832750539 948503649 853896684 457576858 99297079 440456904 291275810 970746846 341261330 139434897 91374786 143491380 440783587 760706137 171327865 451526725 768204250 480736914 647243104 51357615 946049939 960107119 783328169 452350213 799093053 818905342 63152229 949320402 472362726 371716369 874592876 781052111 584053703 518298863 655015584 672133280 13486848 65748413 536173498 658383127 469542046 747668186 950376023 159139306 108945972 661249195 377841319 103795571 278189751 744705368 929646691 982921004 316954143 795989414 915998286 605680768 303856054 802523964 91137428 72991715 5235440 688806071 550756610 270209377 819177579 855761859 725969608 993085464 786828320 857603881 518186246 475192483 579151073 326974241 322796119 787123878 147840913 563475703 577097050 972919210 420357382 469972187 462625191 351211391 342437542 906164684 242712304 27242011 775239172 719444665 325859175 368381035 15111952 710279442 216546550 720389998 29811564 927294434 79412687 248210993 173276545 453967372 451784736 558326157 189296275 741758674 878099005 576467051 934109676 963154213 312853765 517036195 24961546 844702558 921969454 158705291 195362797 820786380 455010090 105927665 710408921 338677320 616349853 431369222 635320420 841849299 845771794 26206616 675273705 547423948 167054762 131994473 788947828 953018543 345523446 624207853 248527494 649668746 859281647 682203486 509039752 34471514 838291346 996834770 88261961 831042910 834987005 527013403 40296559 999263383 559079114 57142281 241201955 998676130 19363963 898787479 869539931 695851424 596028616 349546634 30922793 512797292 16032610 890941060 177112322 851752235 284556045 490853165 585276195 428454091 415749227 264399023 924894282 884462243 504596609 874538338 927081047 775001982 519038136 656515033 588794952 558521650 854357315 107518480 275188043 698016025 180664188 16188420 284924581 926090845 333024773 624502818 232090825 429972679 544346355 262808049 664126475 450780164 660486167 649367763 852394761 601640001 763411672 946305651 839462024 213114177 136760257 596637658 566901126 253280013 190015009 415787891 487043995 173536679 563111008 564973466 905604331 91478069 845137346 471597530 787955040 569120197 125294112 396541130 862502952 840146992 108588626 654682256 732231092 285423668 209262940 74334201 223989129 809722676 265456894 424592443 855897267 383756121 374096675 65545676 881824343 858107348 930606045 343146649 95079977 488071857 956811216 747140699 392561279 388179097 251783908 339464242 558370452 626716211 587046375 784354750 525713982 368434560 338807172 790750060 905538055 149310611 295691853 859008026 514700692 992293344 704724340 530570285 566108906 729321431 697534525 18370324 649479056 421057513 446044775 774978554 491872510 691907626 465847116 766065215 773810278 963705961 354747737 83278435 94654635 168369117 538696793 987512779 605787012 507939021 733063354 394387844 603307472 612325127 491022209 920185948 845111375 539895430 797971274 333466938 183920054 425987769 951363613 862220910 571356545 723243756 6906942 957430498 608983824 337830112 660385515 570927933 50078200 125151787 24785544 388858265 532156916 70711605 386631488 977842719 86698877 558532989 435994544 591626122 28882570 252670040 712434327 446273074 245446595 157944234 370048484 967498657 202081321 717219554 791469153 94837210 573907540 298831205 211985280 364403244 776727885 757854079 552232023 278751370 102582717 598374808 801070429 310786999 541116257 649401839 464098284 462396481 46249635 778107173 296688282 634421123 233518393 870587134 786603466 643571850 821083979 690779706 897956455 24181287 718590288 344860103 547530171 243667001 422225771 891144340 813887897 10237924 476092153 62250156 668368765 146906064 773152079 576340572 653007597 340363636 906297362 611601436 252444623 990919000 391152609 363815177 718640584 168708640 863798845 823661375 70555070 51025148 690000185 955976405 878485849 703743499 31831312 791280695 867429554 175258045 466005474 222727940 850130795 669183326 342666435 566720410 89607893 419732379 492060976 384074501 865845617 584342671 565296079 13373962 702316543 457791382 92653468 177521517 387932147 192248550 329676599 861839142 513959191 207786255 619120811 934406241 251147419 412716168 279090633 939908393 179176835 420730568 340839146 143863347 531959863 598080580 656138902 89832715 945574810 517673708 462971427 775613720 106526590 752323398 259084136 226942507 723162005 512687862 233358518 76596642 783117352 461470236 324436156 815922387 549764116 187715297 654117707 600565683 984021236 440842559 511914714 429925011 244682142 752910956 408985747 377481903 38068966 446430308 696445438 699818433 557007842 474832909 134539409 930741672 226857488 902446949 480446012 517732592 800367239 396880967 882602618 997483885 272617320 938147861 245512928 188704797 129198987 894370822 696666048 648488304 438192109 938720162 38280200 454500682 670164821 943628919 312586878 466766630 13876581 886898586 316796755 435280845 752047416 235416086 680908314 735518890 54743491 846580613 373595700 919682476 141089287 62260470 62454725 711126146 801207599 566408129 808758053 806587889 750902172 46556813 225627490 400239644 477240277 877436691 14479305 286809476 256366779 901496747 650013410 938751496 428151018 264076338 492224304 136634514 504462201 237164028 121998645 85958888 148942329 790385420 394927022 772096725 894817445 833957792 142824903 633634753 395164637 995536151 772051660 849804297 477086470 618349920 597795507 721119597 635549535 614743191 998774848 273928429 987729558 828377992 811803012 664793140 799943810 49799423 75064867 21757330 896723535 561040256 173805311 121241621 186095715 364607065 457365352 2861864 301691698 182550037 471782745 809897469 151341828 151535615 931135735 210248532 748229981 679821110 937819147 240161102 141652631 142200944 721481563 195881502 136273420 952535317 280160450 340409751 395187795 505146001 934903473 875463015 543648898 992486532 64566426 710955563 562490800 677623443 568503183 586079657 185734337 536413637 841986474 9468301 126601840 361899120 369711053 517660680 176446788 724910482 106114306 373725889 79312989 9788469 700199693 507142975 960934739 844677460 175892530 321047413 435816686 93883049 336219723 566459527 283330954 9526538 197418853 613402095 393123299 457161837 717699520 916207985 511020639 84693077 229310004 322883671 938429089 804062553 17142193 601557683 100290332 419358898 737348115 369163113 963406123 244846795 113670659 851365475 796238539 414853576 762474255 755040406 476832694 915370252 777627061 894219062 842954390 934224096 144881078 405377856 225716425 61281834 72170161 323829085 315997621 653188142 540722116 452383285 547624940 743911577 184000324 911195914 620707950 400805805 650774409 344444034 89884567 324691175 893370819 259345597 793035320 71809945 860763468 6752458 87041279 787089365 214899775 263396511 873836142 484557643 46388827 99853956 794495291 691625836 683043410 514813509 916517654 753970262 850792911 922764572 793062180 98732950 607781885 250673376 990246640 563290142 609951177 650655966 328567410 293749241 426508737 130112307 732155695 50205390 624369942 284525685 141226406 92596459 336805768 365407696 35004256 820374598 225455136 892992554 913262777 65940450 334135743 943201737 319825600 951537928 332928798 882865907 401446628 399127008 964344589 431316534 759678051 370704750 115447627 772048128 215718883 921563231 31879577 156444771 728070758 121022786 776924875 2955024 330616991 697302994 774213123 641329323 657280553 56127252 85779590 642408998 876176623 526176715 715229296 218310370 305982185 218808692 547288101 75098032 716053627 485859171 747946522 545557473 120339349 386272873 357262050 590039136 290934859 564198092 300812067 416656682 514009066 758652966 599096893 933075140 868870801 43856886 228993746 702827 341909103 536005687 940650487 619289232 852062003 735874060 342277784 463538075 548500227 909223346 474230977 879688278 482401272 37936649 991919706 324888817 228923127 447212512 543660468 735460761 25482103 46803469 625987173 63472622 800038811 714511552 32652873 641859868 966280917 524864367 655028566 93680342 294867656 386628141 536213008 297242325 47773776 765646559 21103868 761491273 484091439 666452831 436550992 441455765 376966099 286049042 63624337 777499106 42619009 187117242 600256605 23958370 461771823 416535650 211100077 569728279 784817903 700566429 77849707 362202117 447761964 321001026 681370892 367714117 453966122 25279316 171516142 616556845 439009369 136716785 230286182 258399188 10787852 765990716 160355078 450946263 297948374 539446197 618985826 446498142 122574935 366772407 455520844 213390780 468302114 623066861 184456535 630472836 277734533 6593804 871138389 46349654 519151305 102017449 595715837 486232734 790064965 977859623 327808515 965394016 665705458 67883659 410015356 719426945 440240527 140287387 572727251 410267882 621898153 339122646 179662476 366885733 223721171 787622535 935689880 498421946 82263837 362847012 994886358 573176837 13398540 621384852 206224189 947329767 862022965 171948941 962856322 158474957 738550264 565243996 699526655 557508990 24372403 676504728 698793533 775623024 4961734 798396308 512504668 636309252 97191163 698387092 474060936 607217321 574508269 569261937 267595505 571185888 967221222 708332182 923009012 267457610 737079309 731272168 54211160 37942867 793059851 48238349 613850725 521480634 807887188 208896759 593908826 544554390 227253188 306652387 739932939 825429142 776225477 184917780 85714457 139067919 941537671 706216949 881339428 617336593 454431537 378121179 150145533 847040110 287306509 824123940 851780905 807095158 344457505 626762095 874996653 809223466 508870252 413986277 127701529 20750662 722455201 238489895 77614919 152086659 512542731 859459027 706417151 585138435 716773183 930624527 553761074 385888240 6253857 624437724 506745210 961634598 689598125 488091043 695846363 903838131 333865693 597264057 665887033 777353422 509964423 386988020 635528880 258509103 299642250 774795106 177544645 341066700 891271707 368022224 348388061 580132639 211377728 100907048 894085853 726899615 613524916 720642918 146460218 713501247 252266846 570058840 199543065 65757216 580972031 821558863 319015417 566078914 216447136 682851369 763599060 338821101 487178132 632500180 733675728 399938650 422030085 565773570 476380869 858202926 371543846 64889112 684003049 195097466 470241082 414671447 694289360 393271428 394645317 96983285 982780542 653746216 152376866 70599277 900795760 480832253 661073076 362774237 664389438 32664550 278882340 427662802 63863064 170948780 660044292 326891726 355148538 944439539 595732616 371286267 264615769 29511518 822555674 64413265 767957675 362452673 738670145 466724695 382073747 212963602 607034379 621365278 132788366 771939248 745801130 931944011 977259975 815921996 545322511 86497892 196854683 420363259 641164054 761405831 655983345 682614669 565544529 718242587 464698878 499306161 83832243 980363125 812068846 738424232 838277758 814482175 961209600 468923558 860308610 705489653 74114852 846162179 129387634 90338658 965954852 782047275 686518068 403495600 933228186 264436050 700667857 499831168 922994966 221731515 650133618 899536500 324383073 814388169 573875812 852395092 249630020 58683507 214287169 35672490 196088814 281546925 204406597 401548574 120737136 840361635 443367882 280937205 400362613 295152318 883141089 946597983 47040354 996162526 294146959 862303350 542554492 47520071 485091111 972013338 4299596 958186922 784731180 365864295 74327291 484723247 831944911 533836844 944071997 495425977 625172747 613052326 990257861 674188473 704421056 713528830 131631176 170169276 307694129 494251335 310584737 759460489 242997528 804276919 564403515 371671021 131765702 754202393 16872798 493946239 87501069 54756664 720201151 146099187 458160967 600142425 751141403 575007402 985204682 584606862 14885115 904503874 920205951 255896739 267504356 729710326 266898188 294983018 60080369 603313446 848160484 170038218 169160079 519914171 11175561 248092174 753893411 272250573 31286500 240691566 731008105 92691609 492634175 274938662 100909101 944028930 521769473 586831818 255721622 663235538 675884873 600844619 254393114 890539810 922364873 481670887 634463116 904523419 607773973 82982155 840442553 650714682 553019695 383063437 980973699 595156671 192180424 720298354 862206850 2485218 801183063 582880332 916018886 403898790 865765271 115623477 452641221 348348592 957532607 388383146 732139988 951564019 537289934 297848220 517647940 283766195 81558755 740475444 300508676 890012829 240512271 764047923 462132129 599255241 580897985 302788095 835685678 546086772 597579107 449880857 906105232 685043531 108837232 475750788 288865691 692954064 545952804 677817711 395796554 243372002 208043399 719062191 485489168 784689596 54738130 231556722 963316663 529598049 347666984 730515095 516336960 938326595 889224691 247333172 496537333 789990146 998114367 180479150 372116662 56947661 556195309 728594997 202627928 793933868 743014044 793373854 908984844 637248100 161569023 646504503 465050407 623328613 718625710 486280790 413503312 837729974 960071808 932068841 284037490 765849501 379038976 910177304 911019556 627012476 4897891 308314785 631405297 500652731 811391045 253117056 713966252 550438889 292800599 950997093 619899468 471736870 196298972 413002490 342006811 736158679 838267033 49902069 371666463 343587144 702036822 586645597 506191296 509231529 308242451 504248825 446825116 302153956 720147058 82638796 30861258 392865965 311661932 561485051 274659582 907516374 996843683 930091528 52827590 990195093 452103736 964133833 889169022 847142115 818929667 249250428 426908585 363919078 922467881 672614065 880684196 670428316 366031806 736630869 396903704 447797220 987612785 423072173 529251094 33662680 78247031 487258358 812239668 452873169 683645480 781078175 886976009 674747162 933280688 101572839 417275377 551385545 496820624 986473350 629347488 189808374 651276236 929157438 712867661 150780374 842355990 331025971 749011238 975532034 357723204 287209871 646377988 584048124 2099326 534534293 936181679 686809263 843055635 623620437 159162354 387446494 487372870 2446002 427786321 197825782 477369531 620061950 276153190 760702814 210034675 767085198 566321464 522829513 859154237 250372385 624305054 489045512 203893521 255300023 324406708 525118829 784522517 301939124 111581144 526809681 273664680 977991697 197428081 564202170 596238054 511953589 385361029 561338867 210071512 893748993 4091692 587174859 561632854 239933841 219816019 179945372 780962895 637118566 24595313 397928468 512387498 348639520 196703543 989683938 98132745 357307248 552495121 637147599 140477099 334419653 479266924 435824093 783612692 299343458 435212158 218119392 318519411 251985729 679534449 796375766 923611261 786426412 286701835 78808657 682048800 386979224 847114703 540613542 110025740 838284762 710177089 873564465 862728031 837728486 544303112 235946702 497498188 812057053 517254211 507296550 221503372 791336078 433125921 182533117 303607950 579523480 277341333 805000357 720998846 964531071 34825725 109867873 274665096 204633458 371597802 30485267 757979560 212073198 852836669 333980747 837698545 291167753 39227158 205079369 668756356 249786354 373178265 356179898 899081074 938137504 440207835 37038405 663127306 287075340 952450523 395688744 906649752 594828298 301353852 528539647 411252946 266851566 991621841 528648285 283775062 891207896 987636760 603884419 313158052 246773042 687915158 117259630 272876748 113701946 147334309 112455953 639101870 509268153 779964027 713262290 957490058 917231776 624050376 790867988 618146578 890786509 182606256 215054242 792242297 876668274 83165487 189714255 53647349 969294491 893310384 64045756 219727247 743618747 626567693 475265160 688953234 772355747 901170125 502137295 635802646 33962670 998801485 784259912 62662704 835550072 66894015 778788600 975710768 179986476 600714519 85686815 197857278 367948005 609341374 774351862 63107179 635959338 482785222 255987823 957261398 654460087 303146917 158446391 722994203 729505793 8843197 621474481 839057079 564972942 166039240 497994852 132702124 802542680 199064641 327565416 913988008 726084902 238593610 118365976 269521644 578856006 502072415 71378870 601673750 67719915 576545895 14495808 864305120 513852370 315237946 624982211 257916298 661059858 376793279 390991957 794082774 540198479 372724573 998801310 316835467 886002839 248919864 878948134 416908396 299534423 891867997 794428068 357733379 630944648 248605884 366872162 411164703 237699833 169638989 534037354 112996333 824471800 848924463 257821870 379772747 520553022 646827539 482262390 135489291 265525649 115787720 995185548 269239183 619480781 986792066 704805918 173994910 49465602 473244480 498431598 256928641 195948535 362658530 802074477 436693118 204296904 899745226 417866773 463577870 741576720 854696331 137652164 237261842 395890530 888580959 281379805 113659831 440055983 510900735 517825454 110003665 949369334 24675204 214907332 219102752 547695324 212268965 439644624 661381758 560888581 358161356 95619904 836722731 607655683 943254470 616102030 436283633 65022614 485880276 502028811 864294384 209073726 56643447 293249646 760544988 478922062 517674853 427786747 857821150 83387294 86809213 452470845 890423074 141233363 352543151 717819729 665826963 192713950 440685348 303727942 697203448 12204591 156893343 20601857 305590650 978998256 38960470 266245560 301775672 145887059 383921990 553195076 341726809 888810718 406468118 167403448 655152919 175315329 708929391 754263598 96334821 877537816 641009063 188344334 566754660 135545874 203103100 184171571 265904465 795207330 451335 348067823 982634852 716174255 209857577 645695894 842368997 756766831 532716172 550874054 646225517 177698485 332380779 885729816 614168044 396977572 545102890 107197642 464406447 730334882 190255805 242968093 118259149 947454932 888688124 44855322 322888824 313122331 609519534 565552689 313877819 653473547 710978496 929051256 28966831 222458133 113455540 85399674 171162434 500617320 401066266 418809586 804223784 301449265 984018878 179299095 229584647 330450634 786489916 393856981 727290407 691927255 620489996 254544421 138186869 38897613 451000543 963372189 668512654 2181687 968283005 976489670 716315278 678976552 189411795 973020583 112720072 289068284 104233216 87679496 85120313 620475457 940226827 546022367 995542034 131888514 105353829 586596772 633657702 34479793 838260499 107784233 949570945 893964361 878212984 36766109 563490073 855712858 693986970 727343905 70769562 355547193 384978586 141965229 406428585 525764171 567296092 53124814 669413170 81316470 446022499 504361973 498040850 614884019 194949491 134482323 147832869 424252057 786887584 196798354 530400137 926555794 177874796 161177653 606574162 43226602 44822850 583097680 292822711 949269781 91145393 719326883 258301993 889066950 962956795 997558889 633985778 436026489 405802137 524359111 268948651 407897427 574778193 997568154 101801489 764265727 818205459 980425439 924864510 39044351 195674113 874413966 47967696 333147713 881274574 951850714 723696011 617417254 279408793 685251300 355177097 418263407 903689244 641757388 578914925 374395670 522583438 246147259 119931851 294492361 764482878 20766310 757032734 827148432 252615966 99637874 224194634 206247729 447353844 648175234 667105678 887538581 269818704 602034544 380133086 5492567 249621847 859928510 231400125 375958891 146967324 187741021 118564227 573723982 501236240 574804070 631659860 748079478 353125658 201010782 965479027 408307906 606612306 322530124 808387544 232548613 810182855 150395473 210474649 903173317 29592265 708976304 886006097 309794397 749272014 246250680 631167320 98811673 129402858 442930069 563128808 954233938 975434570 32413631 930248559 916311529 264671705 913631184 630799346 675509204 193833978 178902095 119962261 878255452 113294151 638390604 387725915 207335453 605309246 611560126 592632743 294091303 499804844 313762263 979274370 332951552 992300416 927905445 392134507 280768857 502365326 152530592 415676456 937394080 439217045 736027862 678794562 60396116 365057827 582250872 924697060 751164254 877425486 994034462 186211648 110017769 779357046 507796616 960402753 808825560 413232281 407982349 27514778 845062133 316994280 930346595 192508177 540791196 424044693 346302886 515828035 155118864 729867296 742970835 906820116 746373740 717402584 517442914 555882877 779392819 179666850 750505065 413179269 203469731 684744466 50593149 128256143 648009111 179718662 500340521 506664437 461239130 966970251 253919513 5893015 970959704 211458783 726670044 734186813 797257049 657731234 730221241 230221284 68474645 109945719 661222538 381325402 677451011 597377139 196163496 55831457 36786408 358068341 602977200 640471648 817470444 220410730 41783996 335497078 137543612 39497348 140213904 491127872 636502303 19296479 309786462 130658852 840840929 828166188 536999728 351314410 366756200 824268716 370470339 882188494 442431757 365227106 121871214 870988248 766625367 913825349 291109417 952804383 612056315 101767157 265781790 567002173 623506877 268829737 94321062 563808936 364249911 405959273 874140302 485602013 308473463 563356232 455993527 64729992 63074264 285007879 222845014 468491302 377912204 372172704 830705564 810477315 93983406 353971834 6259385 716279441 841649519 964722210 529641783 740856294 763321006 267431914 719300890 420670934 345791999 810874489 206643674 636159200 418508938 154989741 763220099 168708532 5729103 831596438 232459641 427257410 809842050 951170963 402881332 349484740 869404166 255843182 445947938 708586439 557377472 358193919 364655540 257040511 368625714 115528238 105658379 329715158 255902301 473974820 311263924 664330686 921032505 76672167 852405653 650495857 108674231 436941902 672888945 537998567 897970604 398142944 762056655 501150198 911867419 18830398 981634272 384682524 190920130 972958599 491839634 110709936 530796073 319760934 758663042 797079175 360954484 605735441 141688629 94191158 347674947 258645611 746919263 875129720 833780642 760718729 468241197 85675253 151300721 425530320 338771763 714335742 445638408 106240186 192309519 571692477 202659951 992156506 82585365 379976585 25907038 47738134 30070455 307431228 48983436 649084725 219037952 608427011 749327520 527227712 716975510 657105181 113902972 685417576 317823602 220862652 626745532 510920637 990667500 867699355 687653827 513517055 46993824 533320626 210574723 796522369 253284465 516229851 179961141 749287932 919899483 956417247 374089923 45401346 814081341 974153854 627109650 269993821 634621018 689009106 25527067 155114718 116470109 361989835 663704097 166830401 611388917 81672082 440444447 349034037 923111282 91666740 557018497 461165897 54386207 45622731 576964006 252558784 761381446 150074974 436037370 194269010 983712149 432028347 944183939 371487766 861807901 817996378 291291492 263357477 31852621 340567212 667646824 102512735 939126361 13896822 948810331 258207492 464966603 257982971 720315327 654367979 309274361 888059500 257381660 46449327 981694914 535144869 432395923 992127278 835581325 862100265 750457788 105699014 479654938 223902998 807732747 114747647 958523536 194465154 272599583 940887303 964725146 377931990 631875609 668965571 218048426 289634613 496753348 796449877 990298667 78450305 911237640 143417954 250991369 565653548 522448585 404266315 23090617 273900650 572178018 546854452 995250908 633993574 6823455 586350645 328454329 117177494 544278953 559412414 960866657 687858240 693858608 502111591 395692164 825528287 35110966 403623613 500845135 378273586 794075093 953380518 159607290 656190914 891721279 434344079 508135528 403019484 1512241 365301602 836034639 594908647 104958790 525358337 642963837 233942231 153794058 903472952 501569708 498839057 107749473 516971200 420416761 521445806 558306081 803132769 164367938 851199426 407998772 816781165 103478084 459158583 713948925 559929554 699465533 91494372 307552029 75716129 412389301 235452754 185823331 65176300 298108941 813941371 483244625 574333826 586298444 598008902 326676088 964939238 646920024 816339643 787663421 446314213 943950334 740199738 727704890 49036368 16359972 919209704 779943692 834545298 512729446 584122987 16813088 386650685 410403320 850704147 115142965 604256761 45742468 47905313 916332473 171725959 432452351 682704417 384515809 243907099 14780728 52865435 313305706 700588038 903383477 811836317 424038115 670746695 108279755 936321587 143586744 200817764 537753403 540096627 116378283 154567334 525993879 616223362 114276886 420599205 478629665 718629745 110319891 37188347 725166413 537282796 603197346 131737686 987995283 387443194 961379973 918574618 275719728 999888685 538812710 86916711 606576520 369367671 874845308 775551842 197350687 587350946 162880487 832263784 45963767 802692210 262601292 599727268 731916547 209010378 692747219 84601798 683199880 828569764 748803017 970111939 841869707 597806483 189590281 535233297 385474276 516230841 44613208 335901848 413874033 72359708 519026603 397082572 390651716 982836281 483892413 319106808 83344371 66528697 675575570 324075127 503146629 318202352 309329113 53060910 880775159 165998084 301484232 704736239 647070322 138531670 424209143 602346434 850173868 295333808 800138598 361796228 198347341 485025696 38670897 182260642 616040052 345190774 896651062 975023035 874722102 288685025 545511598 730206763 190898258 594322729 411802624 918108336 527714676 323753166 154031711 610795888 686214390 110695970 486262750 132644199 276411530 359948995 728101395 331210985 263320068 807948099 18815760 621859894 812796555 657153512 668326844 25426815 740762319 237088945 719805126 457383004 859956238 595103650 662424933 136911478 114610666 530966818 754651405 18922802 755631332 688685248 880997911 646091954 771519064 960927009 485799420 424445992 940604650 46503247 686486186 673415800 796296168 984604539 731453298 580015896 889375277 551376299 806591231 593641025 36457214 539542250 180331061 977424951 466085424 977335189 873479334 311686072 727836865 258868939 836103059 809610512 833685798 863516826 717520729 609674413 209054117 230198292 203386674 873732213 963334646 552074563 964823295 291944342 407303063 168646448 290202341 55323548 956606587 711019402 982242623 481636957 806317433 393524506 572583356 899803111 946115353 717710370 963826357 584588570 783377589 923980177 355708024 74933449 1879593 797576668 650801767 676396825 339032181 561069300 398631120 158036094 13445681 428828006 338110321 472075289 163469788 507630866 605798610 88195104 560600813 852638687 707383189 212849921 122968125 47663039 431946020 634741376 331224648 506248978 779076090 7167378 127349745 522603758 291834832 456583846 261006301 768398448 395706690 152329773 419582007 297644144 35292979 913123143 983384712 151784316 635095413 619708085 981399400 164441102 945567273 254622236 698099415 665875302 918294132 511449280 615698900 399843608 66065143 873857313 965497792 179996109 324355241 390179724 375211371 511254563 172689458 97855874 712093580 409303786 450215627 5806297 152218021 323837263 878870996 936764839 900170159 387670577 215549929 543053362 352278193 389481764 113784603 90402529 900049721 752154706 67342359 463917246 508167394 94348229 820409675 18212257 399308884 633387089 599194392 155826103 820629893 898254503 676470544 421067756 144703689 236799252 886920936 339861350 303490895 211405746 781141388 134913211 970583116 738101953 74694557 436354679 172858013 431940515 162110237 648321554 825244351 749539178 11629180 466411515 503914261 789007853 721877931 178844654 142829216 383038456 863058298 898977527 127978824 890784268 561047542 375395978 457549696 211101083 910193481 401773288 180437914 161169267 904708576 465644316 999574945 572762544 662812044 333347570 811484716 308420474 295427330 420368875 658748468 149008757 73500381 57892781 806278639 414864139 461615281 417734351 893330077 231923209 80549118 450626036 987313619 337291225 981875962 530548693 50464066 991485270 769553564 224143636 239337397 971603580 541369433 951155660 186004304 771528098 518865682 446759287 11156992 504524240 177044292 511970788 316001538 184935451 963916992 942070142 99084543 816476647 208186175 519278511 409202045 894967424 281489278 538919132 735629467 595430574 72186214 778862469 542058571 552000196 77249152 399800452 134396636 228074562 76759464 42363048 87520643 732682899 331870837 677319583 823500087 20848683 182235741 32270560 716949200 750361443 763499635 514511410 842621712 734012565 559190665 770936091 646300360 722284268 301222305 127748014 111529214 402224472 379674652 985199863 814438284 773402087 8648457 893073501 341168400 14237874 933270614 115268464 950784413 937764576 176971102 377706129 663805168 163865055 590592763 151806583 581256945 432956475 901457265 402548128 822842632 915285433 607468756 730025572 12112092 792172307 283940878 256720556 433946441 399742169 771017750 132796645 621611478 45312003 229957317 106045578 29419913 81186796 975260572 626591014 436198239 719343743 443596941 255484894 706489486 55963709 869501395 34395485 709282524 135965615 10236985 845877397 623230542 861600435 117556730 550924124 197341339 580817296 333581859 42055315 985228643 378000963 521905515 797990522 341980636 5698465 91907836 79662505 758614577 956134699 110963712 757028607 746496309 833949213 304220287 764934121 81770746 859766824 578858058 16163804 525127675 677547258 698652203 605097952 85394763 70101924 211801832 81659283 758772950 754211424 649560117 617154726 507475288 158537018 562767978 569302973 424112920 366776555 936702233 971581130 264158458 257993445 122928456 266017339 605303644 283089680 221049815 105692422 76743211 682711341 488319821 107075807 335179042 448525190 852036292 72498853 413550840 976296155 252983761 758447541 31488722 820017179 532980612 37559145 939077640 633396192 918631041 710694785 637261586 75010943 977368796 923870462 139212481 793242134 907203293 289237422 506001654 868626725 566404194 506806151 906220143 30644120 132948455 910297456 409087529 688336796 121025180 114202691 174527534 669158138 392245637 399099224 250036411 142540176 929508918 573189435 539607810 733469380 558101231 761890585 826046112 683074594 20886664 818103315 2293866 988592178 147310146 208271107 665446472 104698047 527158175 875812252 91885519 70092238 462377236 855381569 512554254 875968772 522076433 75592784 314555398 953565981 199255247 439240175 203118965 95987648 85974872 743676379 856605779 946464710 530017100 206337608 634178555 140562705 435422792 795760511 674545933 238211290 237733852 988171458 47400760 813814846 372013879 152417920 162877303 430016671 857730887 766220927 427006432 496305583 397732334 883817477 372392153 117191602 314539964 137706124 416490825 496394839 465630483 612497811 497616178 37086890 385872652 970820397 380247689 27734786 473134742 608727457 439721068 591144726 851192452 516848216 463231046 348778369 263464333 434220696 314171105 888353122 327894519 778704310 56727009 223088946 382235335 205583818 625672062 198451782 210047982 498277215 777739051 920230511 360074421 259088333 426243270 587947063 920935029 237124688 749646942 490003019 945236311 848462361 264480847 567294261 523035931 826048411 557600941 926863316 992519568 424229391 145258835 678309785 148951158 95711299 869731542 233408275 638456412 807113940 820278141 973648853 657176127 924392693 504732146 405687097 917104109 872142811 214246887 673498377 828490496 911466542 305679750 379040675 332061571 556601111 253549430 871839863 666310482 86493703 739191222 781909969 356234627 645288113 184718883 92282759 430283516 891249377 222428138 221736330 191953182 805867802 184068168 571124633 806954839 916959942 444523218 105362569 621362972 753941516 499344116 731031740 282611183 3641539 756730420 260327971 368653852 114863617 749280474 462111328 358667644 453868551 35442852 966039339 976914126 862547439 317729771 350787520 886109116 571672113 230307815 454172462 4117559 824032694 92516929 990120778 877644433 714601034 288049511 457168396 388579813 439410544 811315787 266977756 677929414 908416509 96659974 736850633 33909451 730896651 889665027 736948480 533171655 677825044 182564017 475269452 945454104 750093216 868105775 520186809 575107077 939621250 179759528 817736657 476352837 410656072 885344085 642469006 214980346 22244684 24918343 906208291 837569915 926545255 880725258 745225173 81207953 374884468 42302634 463899099 304472712 53763464 797871598 275543808 81942166 308831287 918031341 68609185 711587179 857385496 686631603 317115666 684379597 690113393 724881949 366672826 872513971 520792273 148704199 539820294 671626508 131380662 469438725 406422393 128683384 404107198 523981059 229232004 328357599 807993054 121048264 764989459 333157714 447992581 973601275 526968190 365402201 967529485 954269278 721987511 754673897 945422584 27713965 331548159 637329343 565630261 872656257 614042300 398151916 451227187 757196562 880885226 980160608 776123539 117181103 896757786 217474885 695868011 764523188 918775926 501408521 365020909 792057178 272459034 168288682 340585649 455434042 694047278 14360657 789125745 15502278 906020531 237668293 211571065 95919658 366034913 313047873 797272137 414616475 357037196 507010246 685660461 196349838 373813410 792337710 719645453 815330815 431342901 770603045 974505045 971912191 216013055 793973715 483081256 601862210 717647013 771684893 187747594 840234853 356957284 592761024 364631857 765484691 450612035 530457742 946668887 133069959 961581042 251491264 974296410 847090900 545887641 740312246 150835310 244341789 622574262 394353674 419889730 295617412 527353811 871883100 305743194 477293264 553383004 159286231 757680944 677821430 918176186 832560867 240419866 663048866 252911790 135642374 684383246 218291839 352199127 21333806 157220630 296728443 444222889 922861890 687460461 99173548 378684482 307229083 568715451 407107014 536508496 208406647 739142905 502458641 955282947 354237938 537185698 244968275 753653521 600376796 428800381 294149077 680655593 956595963 888073751 268605789 594292829 437623287 175618215 618248154 710586603 173814709 66507898 767820272 115270014 137981457 719579411 395241990 944444163 320537671 339922667 450785394 100097816 412089989 88205719 379526163 665020645 759983737 945897500 75567837 290942392 857652281 386597345 629912685 207364932 239586773 691870647 45068670 724938737 868474259 313690608 836105148 398892247 302967005 56065092 518469122 272728126 319232348 48568045 347503804 281862928 117287421 93323321 525089133 780865573 809899182 89022988 572999495 571369513 628540988 309496387 786215605 463411265 70760190 173673693 674549495 935601468 176364574 928974179 815415823 133826590 140108902 722615986 177698687 619679529 970566673 997800331 54990005 613803894 687168373 757652941 128097502 630266807 368586278 321767156 832562129 177841183 212954769 172395148 61512536 589808657 664526108 178962816 518234176 733447478 117112921 562274608 138527585 746555244 918308453 726396964 586196006 5701357 94141093 177176033 634630596 677911897 181645184 390078720 456336476 155573878 564124401 959090786 433456441 540776974 588443930 512847211 487993641 95395924 964079160 555788324 51529147 144389128 709710399 831450143 465296442 209737739 876713659 931031426 103359163 139529453 113248596 56133867 748456374 665237669 944090217 758741164 426579970 230058685 681886685 233234509 75295321 838390950 598823859 447509022 490520213 618734002 338633285 17606273 672092467 538063894 649102488 829438394 644985702 490866423 609508707 90004343 297680556 899185228 67933068 117165732 880357472 151659126 733056475 964961557 140269567 712631205 934948211 561601204 564628689 510995534 45914291 162689151 829673174 513376972 564232620 927588080 457069380 690554130 169455597 742933843 771919669 251202699 269875288 269198089 297187433 817452024 452385993 888065539 959659994 83157210 938453111 642490271 839692075 207154236 730540367 710484359 633617204 427008716 725373628 516913662 24442237 447883057 742183021 595317912 594512044 454232133 648222566 40407042 794807119 277371469 999960309 125154760 852304582 555191805 498574571 668352382 157630461 900815183 791512152 324892093 492476278 582788406 876119706 542317158 895724 815725062 998274039 553389540 734081808 207729940 524891556 660864341 615591488 690492931 325297939 904678551 911241678 822271135 474237368 471767051 396064076 158662609 60384815 242843489 436182778 451847046 75512290 104734224 681894668 728126655 38020625 358739255 804391772 809504408 432591793 139813538 349670788 570491214 813848417 684828275 75158541 956572448 674112945 131674856 533274420 963232736 230593085 755261047 434343724 219236290 93665848 44427158 787332984 355408441 889914719 461020604 660344810 350819224 739703792 373570817 221809604 253024576 888560383 943544531 89823140 37795373 479369504 140205 145118483 802641917 177821838 198790831 333240078 26349508 281842019 322367896 3162715 283032045 847148816 582319176 542290910 37976622 901388948 266308531 360161532 900037788 17977427 378536009 890355278 926403350 594655965 987607384 61854712 713547960 136662389 976242796 518393433 396932657 887975307 563387457 440262820 393066523 226106010 56007640 506804046 761389789 448071425 342010834 318820290 431811200 393437778 233141682 472846902 840031038 472927988 162665390 506229741 646738373 966038632 182574213 708250721 789957390 572205116 883747740 498051068 866641726 184111111 957495994 472612214 405509120 488554720 20615900 721332814 364212356 588464845 126003644 368688611 717304617 695128877 649340297 945694048 715446282 640444099 774964613 12743262 350718204 322373911 560632898 762703892 67628568 388025792 690287931 805718294 239092157 947858479 314767346 53429667 635357223 983008007 307262988 580309262 195606188 644599199 754672515 66598003 879023725 583118135 662929744 355275048 827078749 786142439 569274319 77116538 211701006 548050338 713535418 350585024 636900925 324874374 529336597 703412703 456322916 722959200 331681920 85458670 78115083 880476785 919436692 21272947 780789529 488940593 180710649 519078781 485358245 755135057 408988706 638205965 7774519 27033232 407923835 695333952 112278028 962019336 52596983 887408334 858041779 289149157 311419724 355295890 812755584 55019213 696178138 133448834 779446475 129389879 318844166 500274323 999937121 173109331 176624691 136810885 406677045 193342758 846083536 141133368 398097222 602779972 756682904 542877317 477123223 443085333 511792731 352423294 636648915 614041645 261773283 411244407 104965062 767661010 354008113 401255319 520466389 947350145 795125635 619911246 31442134 773095564 756182878 809098375 288059368 553329965 176908231 522449523 894324673 196097486 549883943 434537622 994095598 580120696 285594520 889186625 282402943 147692458 988916006 813948766 489144915 674659831 901456910 94038288 892359104 231437024 184902698 547489688 239265185 400406322 774092228 607028975 786498322 471414788 176604152 235995014 253279122 581189741 659603830 590563211 291322346 454712279 869860800 251129779 90460858 369189845 644919452 721351015 582417983 789324044 442816283 55056813 465156084 133231883 621234587 895353039 619273795 872848525 738997641 155187504 222971023 760873783 623240516 681669290 945654658 127712628 675388971 209754178 686162774 301773486 248139841 690504168 81878255 591043728 517053519 723231731 669211469 822536394 94946783 13866854 595743781 715759715 639329594 180798536 603431596 259538795 326487905 576419663 808391357 716734754 878019260 38621616 9715769 193740525 709440904 848503111 561492853 613840780 958095729 181286420 902388518 181666594 178557117 716350896 757951222 990971194 372443197 336065616 415749126 953796512 745344208 463902338 259382024 564136038 375347939 679676436 589486733 488213581 311638585 228148704 176954233 23393163 210612262 74894217 816127320 714234873 205972838 423110595 889477976 848444140 868079619 787405859 106967575 181888568 898580874 352920013 605315466 658174703 15602300 802041864 412331482 99189034 680562371 642214143 394160145 811944277 341702468 455276758 914182167 600612866 633663783 975534412 24212291 5108033 490945230 467202742 603497835 95510202 847310329 846260434 57709223 555403918 993988421 511714634 76760806 558423042 198171278 396108684 531256361 382354359 394515982 538038542 229515982 866324052 59114825 867685966 13993277 544416112 213546796 325507514 595987286 43357433 246012425 258163734 751089925 254722995 10157521 269588439 192622836 682318306 381708224 286717764 924839380 141963349 644937292 774383641 544825138 453653243 368660616 587489136 673591883 480183382 952889856 350349742 55816048 72028395 999403276 792892710 97698475 556678519 263596694 922844223 665020484 805268048 99687943 56842412 927965961 25741674 606343235 595384520 665889177 954040459 742082959 469263560 541726060 261293761 325178543 821266832 205422695 874887521 931599149 996187534 538860262 27929849 263266112 727157844 312499789 875064878 149403538 968132784 236990288 338544026 470166082 729958318 660256988 852771692 534668949 256925867 443174146 426189728 562307245 959329174 186731784 644666091 426031025 647357799 897502112 765028389 414330249 67745493 666866724 245366943 199722224 228031886 555250571 785462882 464174248 200076931 595807887 993372515 248909693 488468385 547782441 249210891 844465178 212784298 638779468 344908981 623598897 897877694 18268739 129348883 332676332 375086829 778191720 321550964 40585677 937309507 750855085 633790909 181007566 79937836 612963590 751433134 360833359 360626664 759514091 945756112 711464445 429511157 572111216 706196217 119582126 987926896 685625195 51562938 53064951 720540803 28722139 624246152 367312229 755773997 427671581 50459787 996019269 34399396 707580430 146853881 4787936 814549999 477860374 618222772 873212815 22381772 713809632 207116949 118341751 330105316 620752135 961974466 639329422 570688269 971388601 720381858 312190264 880381970 65699787 938703325 584346523 200787125 302989904 48784898 979884939 529950308 719798909 494637931 144328466 872511142 880756834 514552170 708070321 64246467 970752314 204562621 164086816 967528770 485823439 956121171 293788298 657379128 337721945 551602680 223312442 765664479 767416043 726485925 158028293 469886700 772413004 180406196 768825737 626833049 838533184 519872366 878287113 327850202 446366158 522552461 16579691 407592802 250923476 649865504 374736533 733055216 252642702 728051221 999600643 736157034 224827407 242725152 858523123 149240411 289434402 190107524 531582723 16254097 711515017 90158806 942170282 795611971 517698826 875307486 247070682 73565742 253481339 187845131 799883226 243384976 545870884 365488361 786405733 373308144 929548634 608360830 533088534 696087641 562456987 122524316 738321455 629169734 371877829 108079473 269305176 542247563 319002571 554848575 535084874 540112471 38833922 883393515 974994437 979606658 567097253 844076845 270611670 508163506 811330466 264112654 300387312 65609640 912678070 439405576 798107583 35654293 18125310 536217826 416632910 726733943 669545929 333112930 208031073 340682847 657371073 186444303 638656936 92655678 432203215 204835033 534555223 112040785 523661037 909193830 89297176 860000380 768316934 225396079 144523176 400228792 87484041 609724429 148743328 906748868 891556463 474941336 280016697 672665490 69831550 768570204 804763017 244069729 546845764 165918717 661561165 905443455 251371605 192528896 823973691 289543207 45275782 125874035 689443100 307052423 874607284 890672194 236560050 309288145 522418791 893006753 28231185 854625960 6753901 93956000 669516400 420278155 319654884 161719641 978766118 463736230 708736232 757824177 429929829 238795580 685268076 404978988 517250199 915042574 981711777 294770177 368915883 845785938 528671982 298043278 192500145 112829525 732072137 86221061 479630193 186694772 885118880 73223149 908427701 680248992 490163716 188252587 514057917 163810560 830472532 487182151 422539072 764265564 581356681 13354684 824963420 856333851 475366555 280265015 340532813 103054277 845087099 83147405 913299779 418081269 690554724 781126424 138665259 297859687 147975640 150428889 44787144 157617163 541791180 56351241 235960985 839593224 429886834 545587205 224574442 506043500 49621061 673854841 458659859 77414828 143524876 38689900 748476782 911833482 882328455 786322644 238247464 247707110 738300483 251658117 957980600 864778594 90540614 416916661 402467738 352536889 530697511 509169212 294418188 893003337 740473899 508241508 151836595 107976538 490833105 788933283 263698601 344555752 55151593 212235725 272641824 561871784 437320444 7509234 380397049 586772922 553806004 827642149 173309225 686505221 895895164 224953854 740619430 880981720 170559383 961027150 92409802 534406069 829811806 324130313 195080362 695596763 23421760 121170661 823713019 746676841 931382078 824373547 588140359 865443375 982561234 994703606 105800742 387985645 743673716 397211695 123275021 142165771 995631784 897442652 703565104 561408579 20348312 112756799 672778462 246548 496584603 826336322 738351198 339822616 803768381 182548415 185530648 185879763 351504577 75552614 571010615 50163165 688177628 680470855 217686473 214625963 584336524 320682119 330449181 908926855 225017716 774104748 774914253 24547209 786049878 671190633 601345825 264362541 901599810 867058541 740357658 733758399 547365872 920384239 532580825 845614019 293666516 798935720 530438545 84309762 407580122 520684071 72572459 363468518 140012095 772087087 452326065 484015000 758038461 594694342 356829714 308332416 187939989 328478272 75165189 282131400 329572443 578194130 98719731 305503316 348193811 895516268 41664515 260919018 980689884 604437061 166613750 60602886 233894956 564482587 816366130 413868566 791294338 952441154 426658061 653794082 141314734 929674007 388827439 67718691 762037859 621054607 601813633 899440352 240105981 655031354 440058504 910334945 629605088 647259011 778389096 201200301 570787820 963909644 331287806 963889106 429439891 319201676 279725663 856987522 143245738 908901551 348352121 958039111 339968124 868058099 701535861 921575679 935567014 308926029 418830549 849957991 697947314 248695839 833738880 49724733 11773316 452561603 644909845 898296747 437214353 891459459 767287343 454862930 253733420 965812662 644859432 723664476 448364818 427512541 302772147 12140274 508248306 577037826 135967857 923183059 897017118 266760580 72679967 217326778 629229111 983116920 335765190 596675622 235205311 906626183 301895966 571621722 55881214 318191364 913694707 966588879 885841958 595236826 878866784 563585634 286554804 916541281 952360283 599409620 782832637 983515082 800424006 729712091 418726939 691443383 435347096 413796935 135953067 582808292 762849339 137660713 245748073 763515230 637240434 634591201 718886312 512132433 46093372 666050240 937277305 730185786 724058592 134388237 131305871 619156930 255378052 47869261 937411840 33017005 897602064 233809735 945425603 455402491 901424425 679625615 398632957 237866921 352995790 93216965 222116205 635345133 387587949 728681683 213787324 812096093 213591403 404264596 345440987 449715284 955410805 372030776 465764322 94034469 18606564 741656363 973256943 505580082 781879998 411858694 13178874 89943341 283369985 641578757 499894643 600871962 805396069 171112335 150428354 966971659 369503547 337965578 898481706 74712286 371065852 923138837 727125340 183767835 110588423 991429945 377385817 544359139 140524603 956092871 493997222 197354508 337867979 942409846 236262011 38116501 930532157 379560988 345991276 719578751 621860329 419773823 566127472 994072823 72948973 546410147 702110997 589283575 698659674 410231376 275228423 757873300 24685674 822827273 930903933 41470529 713891653 913176066 170340758 980619611 594383642 887530595 180797454 996977590 48833961 700942180 316571129 668209981 728332557 939144555 969641976 67362912 720592853 841421701 409957182 532371826 23018357 466684664 229828968 921486291 869917223 586451490 603730482 797562084 455774210 234793591 106426363 325415061 24506136 506328597 675513684 192035504 48306386 935543561 324398264 556927868 216214049 368865201 522592513 750666317 3987516 509284593 360146922 444570240 674615537 802673738 413584177 153390811 246032615 76230870 423187768 128035292 935915954 549245366 303606673 602547823 501258142 323673310 903539190 678891952 869781643 853858324 68141336 228973929 749859344 793287154 983267274 717187591 120286127 353017222 602606699 439469206 37651922 778915343 264931595 751531574 204965577 743152209 364274929 362822628 855290466 232081855 613340278 9744067 702471451 818609669 622195543 987348873 75702785 303864537 498917188 423884128 934957313 325285437 269735802 224744291 732349696 409048049 869859057 205105082 154457780 504995053 171236829 914251845 22402208 357886523 17365438 71179415 378331946 727670822 88942098 448191611 152870786 834044843 213281338 529335493 246864222 594048930 172242565 558505654 242379116 527370611 509996320 366443183 235766616 402649094 703476588 692448393 536089824 313067516 697494949 987198228 262462950 908751199 210649503 453773747 796347631 914609395 864650273 919882477 301192560 915496861 148985669 912487378 736689642 76434321 361532437 305464062 463422353 522990775 193106523 310941271 921110387 131571217 568632027 711833664 887258445 168294629 757156914 276895888 432134107 617166288 364671028 281586592 949462154 925613774 340758014 686056781 421707268 311886601 264642044 250674897 601948293 899107798 84546787 981363433 369655423 129097337 843874644 247778382 542990226 255769924 82542870 836624813 93524790 167472298 613411778 893435999 943549715 392968157 503922635 26088092 442920228 922352921 806941938 436141766 902592433 779148960 569674333 839403382 226937199 812050987 56078669 592347882 711077884 300595127 141808252 880725096 531951122 433982338 640984585 7276890 407233484 80092781 549373793 534143688 294703798 749628675 977420724 69389295 596713226 784526406 81809798 461545151 924175380 503008142 951379767 653550468 631508789 549099392 395181050 425122537 50933617 457398521 474133311 158890846 264641366 926045243 725289498 909750436 881068104 148782788 706942706 546300143 293568711 284209072 435548404 94075447 130862454 252428538 445446098 623021894 464339889 864204854 284620686 363567033 806672991 241987637 457922633 846632528 372284376 891666301 504169332 576839710 397239687 174416029 638072515 908112447 280940831 779573512 794412400 92346106 997327277 350356331 584628864 527612400 423238077 752409297 965872355 294073370 297158624 929938866 252278976 817034569 461715706 421170747 332838817 679500465 429096613 945539569 567851131 229664793 713957612 860268862 990814253 513934975 519519154 949548042 21072212 855322947 586598672 412792209 646224357 853889825 688350345 361640850 338000323 64474778 367156024 515585821 645046874 844324857 318381011 84432565 435293921 320938009 25043149 276877892 292334093 239444709 237247556 121878384 965084463 513385957 609087817 670001963 111539462 635121369 144349446 38895088 894773494 173951843 401730747 430916843 348662951 805527635 136367228 902222314 456775766 235800890 347177434 52664316 279468434 117876037 890245311 974458020 660252098 621035164 91760849 86385576 569939883 422560924 222962499 695547898 893216381 351472104 372588591 870938309 735795624 548333213 380672950 399372129 56673696 259679442 545861959 925190116 541673786 694658462 945638557 986763026 171491501 194875248 105235429 611730207 728962716 827623067 119616121 831726479 617372029 758179000 19365957 728012224 974418352 989285178 898053922 284291147 442431692 70959311 335869808 317855583 38575680 380209796 603706682 805842762 550214658 920307902 595515275 757855833 907396621 653757905 459680099 313948346 317644508 964480267 92357480 358468589 371442136 657290828 721473028 701203979 197780441 61895299 827296815 652461415 946209322 952856373 429565942 885845449 615551735 151815450 907212326 833621606 96849683 519229564 648079316 660793793 766716954 316828968 496724766 804819056 119206935 317685641 263250567 278411902 160695275 611360235 293157291 708196772 433663845 240622694 95832420 414487929 81222209 870209591 666922017 450181801 376915780 465077242 176097618 330727048 29758228 116892374 392713435 953189280 842306545 945621977 166933002 373318817 493627857 392268923 288902090 95455797 941747583 667597886 621951810 588633471 646536287 395160017 697676796 765542863 178155568 103426604 696795244 443014364 504004006 131586544 493001495 227338477 275307731 534821684 782756953 65944786 966331375 247996740 279902897 216903845 70719979 169998235 438270507 280678843 523931790 121318075 49982214 292656788 611038901 644523323 126876057 70972360 564116919 707068729 475358919 165889627 402863293 214211547 434084957 331439815 213196303 377373222 630733356 731270870 289376794 789436148 515984946 647038014 319803408 52661997 374115324 232446421 876388722 81785772 387875523 964023805 902760126 146864424 899224478 84039915 144205848 874161395 676175994 706035453 228350551 605225701 718328280 950979922 886127448 144960998 952385424 582784240 57215760 884099034 995169776 383834622 220008635 886586612 918080809 167945816 751610673 806796482 500596449 4292183 482950236 777855792 130407598 783434135 800888588 81096581 585561714 786307994 175076374 586488373 509593250 876714121 26900437 705820797 271480154 76537369 953642052 631687447 696037775 206111569 380278569 195191097 255315031 524068478 643298864 731075095 725964983 81544198 753370313 474737703 207004317 414903418 837436848 93156724 476914456 156181528 603204198 193585730 404831807 97581869 257941507 183768331 712801816 468341704 992437253 545499203 838246501 173953571 180436001 423016542 153218360 38718884 662100330 285137799 333971827 765427108 998145760 111148885 968862879 821218396 593700142 68145197 861317323 700006736 625012316 707752016 777669187 716709138 153268265 419328969 347304466 74410772 662470650 387381566 366933142 733070914 45792111 418474907 236865389 154632505 440661714 479979866 933586508 557329672 493364029 845652705 956930793 489987179 584054396 464204488 869994451 3413949 474265260 629377189 893969033 539601193 655995230 361657917 166810034 762174737 102808626 961424013 800005350 985542514 836683220 163795726 397483124 62273666 974375108 8632546 735444570 764733746 842488440 324509872 734155278 960527669 791589852 77713566 93258159 404494467 875504163 190360165 573609224 655055857 898788281 964089639 110686468 801870681 996880549 371004405 303826625 194769854 169291248 127104926 175317356 50410040 549833603 269072207 989776997 997125163 265904499 643687263 568298202 99105279 460840560 40803067 396259277 125798344 923717719 251923892 816774016 475751719 87241818 477033960 435569830 466143727 691480692 942597823 597641478 884962946 175225426 779188635 528907174 58644202 885562582 357727416 426741193 432080538 422519999 293085310 199161220 778120274 531120976 155339172 784994162 127648582 993815537 467463310 804904001 270122414 696509347 771724144 655042370 1570157 822927888 167999060 914034453 70029938 54379335 676518935 334889962 593967146 162703765 194761701 115372490 819543177 726481045 939668514 702847801 799439367 984210450 649271556 347300647 783199971 84277392 858611803 351959032 197743843 427425049 347507749 56496631 921374632 104827339 421327661 24562400 697817215 483894661 77283643 133282205 80948224 987537480 164507591 711077164 275452134 204394774 303065999 94925522 442403089 153568080 549782851 517923613 929959751 125029667 565642573 326388516 449848105 731207242 802308495 636775886 509048569 578283752 84366512 720713444 565956967 943866103 164452586 920849551 37336196 888111149 548620223 693117428 8053544 481138806 509257205 893607995 381199506 973660542 330786613 58895078 281352642 303898410 624890600 555311314 798929044 790917932 970068465 786980802 73918526 861190197 174789375 184444899 719439493 576205044 663572818 716071625 252843493 17388655 33723641 449730496 522492974 646519244 323346280 749113423 440089613 935564273 652251574 744491103 442555835 18381705 64904110 186457412 865119937 14663754 67901632 65381592 538996885 889739963 52390318 667774262 519362399 128425676 932380002 221832975 184717799 899746625 657147261 76730075 779549230 847224003 942552333 218613676 101228475 600720793 463049297 334764016 993062757 530050574 674320000 825075230 797721330 351769079 911853228 948108035 601653109 81481567 16625534 439581547 841697408 803916474 833829994 718927425 138454899 100871205 269543613 262671120 53772763 729745313 753093765 478153707 116414694 298492699 762626191 426784430 336568802 892403378 846061622 220132678 900660724 356085600 468694693 146801599 279948625 652228289 782625429 890480808 771097723 805364569 540079757 872282450 646874017 356708797 915789280 237548800 673354390 947327989 468978906 599665352 734130052 960052049 471638028 840239375 736417406 468980099 455087608 971641827 263910879 160677973 5428536 829580150 58302723 179716192 680755118 481910384 25229323 362988416 634412241 656307732 711262596 78410742 821068755 157217934 243388627 12618943 957938483 542845879 110291238 969937186 810826063 159072275 695454988 370513418 242314541 892514246 426955486 13880934 398431486 719353632 435750468 346739686 452920410 923818586 682759697 230580509 112091626 280962182 621821806 125039592 444558585 824620243 482866520 504997736 18797073 297758692 99570381 733565177 578125588 68998855 168118901 462905659 26903721 306834075 946189747 835760378 902320750 371104055 789920485 164024485 224193024 822539617 459563604 852634471 657042797 722788297 467080009 158463741 676453357 923880174 442792879 886029294 830918644 822077113 417359405 302184422 587795758 936629709 791191912 491154270 144476296 495317668 241063087 407839676 868838699 408942561 362127705 535120700 216945831 16092817 305783239 878327003 276595801 964484549 210171959 249384152 752819874 131559760 689353114 71500506 973589892 52832394 663360856 809629885 495872424 649468738 82623662 572786888 626043221 629751942 798683410 529642322 794838174 896634838 979428369 224905553 219255248 940137808 700497757 370508775 486124391 494451890 263056763 718440756 537281939 106182301 349655448 927940357 309434138 563897200 264931167 312224046 509587405 110632611 352985188 534214349 718311333 834186899 581337956 897971617 542494467 483443937 545142239 497443923 76167883 948019876 653949839 392475223 616472497 518207552 98403176 286936527 143520183 32812437 87745660 778616275 400063672 494509286 871277981 493476167 103746794 808903222 562542961 350540133 727888450 763729251 303037026 872737820 300786130 205632580 913981552 337814429 676080152 693930496 626274846 261855284 193219207 410209114 186135303 549359709 896928809 872702185 149121762 646568233 621792462 955998395 839014652 329863075 876585217 777858326 113149672 682765918 862269376 372820790 937953743 251634272 124091887 191406091 459498831 870494885 990137348 514218602 360097785 311643217 500399604 451669634 461836780 312921061 24941351 43895541 89640247 42045132 317708752 254022422 82674936 285310793 159769737 898389544 31309304 101465774 815586866 741643020 50040188 255273305 208897879 443377293 171326377 126258145 750683832 203656631 678594709 807984707 367431926 20905765 225123829 156789310 81039676 761754754 827769501 734115500 310704085 354864383 243086368 996069953 182414659 42404898 905022255 71731562 645847328 959988663 21545365 240420560 525207107 896491551 876100707 107698720 129627937 559959165 311149116 969767797 806445478 445757109 132436434 759582139 580059289 191240814 642922995 93471691 914244913 653948053 871092223 701258919 625070420 258037654 976252328 108786056 812388011 987858878 373290182 825438271 724030187 694546288 771516326 519147958 285956106 199755829 306387121 536200569 282321876 968574873 531745495 735230843 331163128 219042208 261591567 902799916 807860383 328752083 374990683 129495315 212559282 791450344 688561678 933775753 441029317 48221019 492842114 685594799 956247612 740538339 540131079 535266254 494518721 487346158 178696542 440825625 453005928 379630890 598949989 733229791 235853455 774835208 277267632 599070254 952389608 335637100 45506702 479535061 844090259 490118500 74936812 401868174 863656299 546596681 338306669 653142479 801110050 423821284 323744326 115843682 275351479 807240741 30505188 947188739 121770061 332263161 70476865 345794042 576167490 739972506 519967421 113572287 444500809 995069711 87382067 652504259 205447383 18201055 337787566 463721698 864166286 215476428 83727076 360853866 205859514 14695507 723107002 539180585 706566527 105720697 758165995 648323546 85009199 677614376 793079582 542601506 273268975 675803087 178502921 825318897 690149405 703350789 750582783 936392913 81442364 292821011 124778 228392200 809204307 55971784 648664343 726218015 476634435 821161090 811456717 999652975 532542070 223097541 145383139 386231363 887637144 152685287 479922710 803017636 306328820 482595972 363318571 393107079 776075907 693326425 357148849 816932287 786283238 11322992 289908977 85934032 975516565 503739549 903074618 550293166 498426306 763713225 595634289 197079556 349731388 486269259 982677062 481605568 361789333 923663733 828857932 620863640 464510061 208590983 988689241 822888077 200367434 430654354 731831484 171287702 867392964 983633956 508235098 159830001 231365167 816032471 875068903 622616896 511826444 979335194 809275187 384717789 13622215 19706534 776222867 744448652 944982085 999717867 434460643 49524987 8457379 891802689 534010623 527383549 121898568 642409424 650442961 802387799 484665269 828745829 846253431 103092815 986178729 975451433 318996607 852285924 738084486 873295378 980899726 939448511 821429742 415282883 107566154 645687095 946898254 54074904 423143322 855109665 794771790 929451105 849573030 187281926 54151608 150752018 559988169 436552786 103567509 777477042 701336229 106228735 223282 792111722 436349410 767669608 123268958 636699361 603457166 714316591 227091044 517567583 336381970 233911770 5952539 576267368 191026656 197548760 777928273 714956277 128793123 194582306 680068196 916812561 18898111 214949400 58307901 801241152 253567383 661946063 747134252 351005723 556850916 606815880 624606971 273197861 2154686 3539896 903029621 719171663 628540241 544138688 166310528 507478415 481625095 367329739 284260158 578865305 309488699 222237506 491150919 489446509 341055629 298402026 104978135 803206945 125554410 549794741 906048034 683831037 102759466 59316652 871491076 282366438 48478150 398652936 301191487 467199646 36403221 382741338 22108691 252635338 981284747 177927591 93167995 116221167 735298209 825505878 480052407 421254834 563970413 229345975 56869598 759787706 137441030 129450580 474357349 598450193 906090163 29706665 833311430 494031394 273540548 212828098 560029283 953544366 384154770 393022535 561504059 650405252 526276654 551019723 736307690 545142128 885479759 81768478 163036037 570788975 602465853 180083402 633496188 466067075 570979160 996760166 856112810 720791331 961187036 23936356 316342974 982682767 773069734 953184528 464812553 378962649 195805139 646088559 936724145 799560680 860024954 51625440 733349658 158941272 356943187 155736250 839577839 702336404 384771097 24387562 610395930 903743409 824637997 470901052 748333751 5604414 739263939 692148055 822387240 381085633 38785776 168370731 92737863 101255165 459240237 218183711 595211533 872194941 483507817 525460201 547348052 572902740 168467392 329187661 789202107 476225308 123613010 212275567 517388845 695617082 994004802 854916187 382817641 97292924 784624488 723514406 132316868 398193762 701358646 428407697 649780853 62152489 481592975 962824096 868223718 706070701 733825031 280629416 81859799 910866772 538703951 403792836 323904941 717930599 828780238 775582925 844532457 302626190 506314388 38405130 482344590 298653565 795782519 969120076 265180652 632087188 899732732 699956164 280539973 53229833 466282525 318824874 958181039 197458958 523173916 723879635 542472497 563969432 730186589 141144473 65246842 138071251 572089814 413778274 420829820 690889997 566517544 546041632 862288267 762863027 950105210 144868635 764480911 203050451 897403864 289825054 712787305 870236380 809623094 862269731 336267371 691721488 157853241 565275425 608621571 814575209 593710225 16669336 476118789 917542625 26539729 928452318 509030969 936855696 235734574 973113629 567378056 544635889 738906519 833172083 602481487 292856239 226332859 723377896 535790993 860377949 359751298 740717142 66657254 171262152 492517421 956332857 927700750 151387568 756966696 694599127 349816978 987751401 738009201 270892519 501184639 24460669 499898104 499820846 703537085 667839005 803601764 340528323 982491392 677770206 988568038 413869569 421046503 256621386 214014009 315959284 733499672 884087879 141601411 884621327 555425475 276286621 152782622 399913535 999444377 677923581 734318157 700094553 934196146 987594537 974916065 527108829 656602364 156036112 66047139 489348625 793260674 419159744 214612250 505392534 878074938 251604201 284278800 317153957 801697497 339005000 768101698 172062364 273143008 78421869 375111238 883969502 222005478 946158629 650703837 592571354 124706002 813401044 686402044 569883679 491160264 35841358 150433164 914139901 262109482 553427068 997927209 723696714 68812425 198160856 650903474 551988017 556126815 928767415 93844563 672101088 825322558 402147902 159528050 50486834 114962049 937612815 230150397 121178608 834979017 790726315 671342392 181024647 713343873 7301787 11001754 810582459 969472195 389018958 505356004 623044007 584628197 989087772 720906350 580795406 639640834 307685984 81871352 487794128 739191719 37278627 74550881 455478309 56435621 665841765 615706840 839171150 993902130 251514617 175634917 969513701 206112178 11106875 56494080 432371896 759781420 790099615 176704827 985775334 134468449 600119742 542667185 360693653 84887555 337597572 383528212 154450728 670756333 83429914 506974716 12950526 163557681 726862378 343900291 983506405 7415442 597701333 967686511 699817210 453023075 977140531 248812603 729876942 448401511 530310461 466544182 300418485 354891372 106066821 521799505 321982968 50563671 450802245 407645995 812346323 827839435 136263808 342523623 218318979 316163334 135270265 495165373 696807694 392535342 5227386 873743420 667802993 668603768 798845324 780630024 606791142 614956041 154995653 902678900 112222308 151393094 305694072 365604613 652743940 332790877 678687213 756129837 517503192 544949228 555245910 474542831 994147731 276545425 142049430 747689895 5144671 168618244 994219078 390087124 581968489 787252294 889022745 179915398 67230187 394994250 989748864 43439463 948901647 646417022 802043146 641209248 796171103 643558292 320565230 453289684 351892192 206940566 272074564 989631111 147505889 547262890 818445396 586790699 956396551 452605574 758258952 388579396 945367364 917093963 655961526 577507638 779297732 592385255 443833141 757878446 476209440 39243507 196130558 94316339 685712231 787068101 633648003 226488385 737315141 627209493 84255721 176556553 921186276 856638407 173904858 196894519 710414358 12595695 272133741 883232926 351521488 992249684 665528671 907421941 331013401 487965198 603561215 950172412 826103235 933765136 317021119 613175532 352615014 430296928 174104022 176788906 189070538 82987830 809331240 143143201 828502165 276261782 914317342 854837997 362056046 105846823 587741235 479121195 873173216 382278299 962641726 175497296 337234142 825248283 607646247 406539274 637898311 790041659 14792686 178543194 345143268 291921562 857168638 934933228 432205743 694231986 585226753 299013793 773484466 199058206 966371208 8220336 74605277 28970334 367734794 291074426 89419065 425948384 480515133 230186094 751046283 343194607 412091357 668527419 894816079 16069537 179392900 184317121 834259479 688792167 232035028 706971712 729716125 144595005 230904464 807643693 241508296 674354840 917358319 974227458 557384117 909213696 106452264 687954247 620448188 719539 279983162 622787233 693632495 243299883 723481885 299080421 102148532 311097693 438214813 639510166 725065914 119844907 773805092 803530759 957977565 416169205 424916348 594522700 992414801 440072424 474057639 9316087 556902656 39011331 914835207 207037560 958765046 177490239 459335966 176093636 139168286 148759578 257692289 755660990 586030149 706497398 671572992 588958052 244578153 392526946 570911714 352073721 155752289 225837502 292457451 254221127 421928996 759457049 81692954 63956126 372785309 571369541 889761186 527391705 129958523 707376065 621787256 160424769 158966604 872403706 159324271 327376427 470672039 484688990 531403380 641409456 562498611 819371898 168802076 273715423 97619337 816861353 760286444 294330385 261017083 177221754 450254474 214083692 188382287 640783085 854998506 855499750 995259799 32321447 228570585 621857898 712036942 965179305 539485383 941167059 305753390 968472623 191869988 523139347 563752239 68999342 688119514 858520390 115204005 786718256 753806163 115066781 180724489 544602509 769487961 812580439 66656000 120103027 551356411 747828484 286113708 868461244 203983101 429293122 43202640 210154130 920268431 417856679 708955081 80515961 437108756 379320157 989312280 8901326 983258448 922992043 812481803 847146157 135837995 413446450 192339559 269677295 873898930 912512155 967732413 447205254 667077519 839027004 833260579 993470489 526880439 385325748 826309181 717674195 263480185 754852247 618277406 46575008 166257050 401259875 944481782 547772384 796771199 711032404 414525615 697147903 155018885 173194975 918745300 603743569 32901781 639259333 13822099 268869768 398022197 41944633 711797330 839610382 188492245 388449980 546807153 571587212 239283381 234553771 818178962 202183378 341906272 933339104 871879700 491460426 478299860 761160856 220440655 255283301 308573566 768646899 744591826 962274590 803591554 576782605 102040477 917796036 884905065 41603292 840566036 662649499 919489389 457984897 444560198 644606927 17711365 139701735 23288878 411765560 636960092 460950113 409625826 650935129 969075228 331678983 431840066 416796301 380539928 168392391 870285130 509243248 243476002 258822831 454033645 779380341 423215817 591043639 558142852 680332662 81887109 11526126 633492593 522201975 318521189 438282894 816790095 367377688 973178641 224027885 135901666 264095624 179781646 798802676 167383092 757527559 164652825 688582595 261001763 517153943 114277904 707653290 544709733 945218683 858914168 843387070 698193629 69032955 276884194 702966503 153686618 403010060 578091697 608082904 578958280 92356517 816596454 997501643 940821033 722521918 427806512 261859952 201829187 471748752 748462432 589636150 781215434 524080278 778878291 434110545 233039060 74698601 662572935 644303877 408697120 974209123 464173690 404369963 192164307 155472694 520044874 392991380 320928829 577128862 443612422 350518759 779233438 650955272 816578618 133956851 751113628 456983451 926716992 114503894 696837758 344438968 528591243 276248819 691758978 689436310 554432249 806749876 950807623 474234273 133045743 504637423 504314725 847095135 222983512 118131464 933448432 958212647 259604679 297373662 431347038 324178095 399561288 963630156 39926214 993310134 245249242 249659890 821538838 382330647 931234872 931722110 58094431 578372628 897562730 24423026 889320738 176111071 202734624 276764003 447379635 444103910 698575916 144653036 214655964 86758689 340348368 432404891 410433112 173154120 386516104 169240650 533031680 879740325 813175345 887545133 130115860 419701907 160298709 8070848 881034090 526849788 276137275 11717813 870892613 826012106 435489108 274544815 72565928 111026164 925300562 924720909 573540403 275525393 170136691 157359000 71529063 665458 731576878 520572892 227882381 573973809 468217660 707900085 627219034 97097608 681107578 581930676 49203170 267785771 604525417 140844170 625109429 876597141 644183057 902462974 981308117 657530912 325255804 684602592 172022179 520696796 126418016 806212540 39440842 459325559 568942318 393675119 368400007 657092476 720545868 290663160 346440855 721125955 727711224 701334724 386062932 988184100 243426955 754192051 84377915 673579552 239784359 22202580 152721140 393763935 312662168 228432308 430470346 787009192 800876634 807491916 706580847 668641001 215557840 768347021 388533459 251707229 620286956 291834582 690217675 967415 101765941 711367726 286751995 977067955 683973212 800606920 363561809 531176613 65303173 102395066 48631337 355612896 608235609 638490782 83606046 936803385 609036467 977534533 436643571 488064785 52358183 481751318 334373579 266270184 921567788 402544451 893588302 116553681 783561228 594158525 856340882 933000884 823379365 475281433 480012439 743249961 862482619 238023828 122490811 889174528 520147633 461485045 535850053 678600615 463013776 644459343 555301435 458033305 435735488 442607910 781655253 282446603 697027811 250913500 179830993 219769847 290370035 395312652 65265935 509195530 821274953 806205621 925402964 57587997 327534323 609664119 873221629 718113571 6793137 146776265 333141614 304393365 239721059 183808603 375322923 230426778 415371150 294897749 595189210 536112008 887176639 330567871 459641714 329390937 44790845 927751011 908019696 320836171 356236789 13630431 816090705 630645300 497822376 491075076 994210476 549252906 628469639 860256568 818994230 751406646 259177041 728974627 382909362 746287910 920266645 910071111 702754080 105144164 107584051 366597506 345581483 763919268 533287612 810822095 897747191 93590785 208829886 140450952 657870999 622516159 439391807 457756508 643411863 92648452 567487292 722929375 813513808 448568210 754751741 442045285 42143954 842193570 482125438 349979443 661281718 390633632 640614078 190765607 950018052 838917950 726714542 987705147 795929677 931377131 488842145 477696415 234217661 407670328 926311178 679150444 980140679 654127743 985278187 513341240 97866564 746135824 995458583 759131509 614704522 556791400 161944178 448503475 585886175 207634963 292601532 399856483 791929043 16813803 650764182 142328628 982621083 802277286 327968358 107258855 426635631 398857303 82557079 507648633 640514229 954167599 442728435 256725977 863289447 753959058 640303196 127919958 150110138 321148800 304323116 645801736 870393158 833425179 93792718 257850478 734656454 565368468 79704650 140500628 843142044 171922574 736585672 639552611 514461032 971969947 294645693 852584638 873479773 263794737 369810192 877237506 228356695 919313381 397585554 516570144 352800895 14623487 362418254 413042470 407538235 335135237 278797501 795520616 460740437 656106932 697013469 21641029 81070764 107792333 739419580 678176784 80600044 704624757 270154374 783781509 899009314 234869833 339235244 929850278 452710824 277858676 874816660 859582684 494746220 508815875 992997227 953475817 770689993 511458835 313193265 145108447 474332530 502401849 852835091 413299174 424373012 169299347 35688664 483139376 763995044 151447682 872265053 425747186 222465027 890602452 936685395 855137981 393197113 340732570 705871449 621091583 124627130 493993514 87953572 420157681 985349030 388680458 73280115 829226957 512156678 763324620 862638563 730729062 598474916 146608626 949824128 540138793 420914901 37885113 38031502 85670058 328083672 524291541 352753986 484999943 743999401 311095866 801258094 189595833 846955489 281161483 13463030 722800215 508010836 946592003 337939403 19365774 468054657 187064761 724934821 766599517 490356176 935817643 792099941 853635256 414311982 364234115 922156058 166750418 768620857 204130349 320367306 59427726 771366094 437921180 958593715 969239259 249747261 241529418 277396866 364144304 23659666 206934035 777790396 35418994 375454175 962799548 627894003 790642889 551298451 288792479 211405808 194980208 631388972 602069130 363286313 680381302 908987202 808639613 775252269 357816551 563213990 207550616 521181239 132582163 139884488 844182888 216668578 169735247 366922615 184239534 26612136 305795113 802887486 579739669 144127142 458424152 79483042 490998191 294808052 795849946 459821799 905739919 696987089 201586596 762116477 163661488 684070606 776185871 240374788 496332924 490316344 8065184 645109879 59634027 728817512 823056460 434611329 982272132 651644376 800265776 239543048 26394176 64389755 666014439 784221536 804788633 422723786 280696450 753025952 477473788 880235206 550213732 170528344 70997205 872040644 838807834 33826614 260717776 344753026 301856773 509662100 431811904 178211974 530269588 32349779 257283489 926279217 915889438 233494204 725168136 882733860 761743211 971710654 600411915 466930210 327023789 337103455 674678417 42374216 345999531 244425584 768422166 829482897 506250133 226112297 992848598 240531168 531977641 925638195 349378139 5056720 661602247 726833999 474207379 538342857 637673076 733997805 202188090 320459236 81485669 187387555 351223084 992514828 419254672 574139667 890701154 612919417 239553153 743370561 14183074 463199173 129747138 325434722 843804134 460503954 712928681 178817186 415438925 639615343 99633928 254882371 894892139 994420354 527938296 414775856 962879978 895257814 887963548 908139015 284404502 333100645 512676745 459250904 575154493 552119393 311399041 391159230 919797639 155817165 525790822 200174069 655594926 739255072 363666096 418374304 101195821 825926305 147476445 698141314 148536299 174674587 45291610 36845691 804580247 726588982 395440913 169868166 452845185 89372292 677729485 496636619 792298661 63685496 263137059 803673276 465425808 828330228 527110238 20893645 700950061 678899287 806163216 571622468 785216155 772474403 245642336 521539234 63757930 699311698 681440582 359067942 725763575 665561319 153184989 919888560 174177282 914743706 110257168 212965559 983916571 971680053 950636921 200921013 408892193 997503859 623644046 130549674 941107018 916005649 177194737 305978932 493133246 827152124 396003427 37291964 210862211 711420969 669711662 783276487 845961859 74274946 298446482 278441775 825925088 397263372 892892444 713540021 713275863 115289917 782311766 232722550 405828432 612311129 46522412 345182072 367242575 363123231 560952608 71812777 227677906 122381374 939375860 769400960 753249623 809250734 32912561 958493090 531085751 636302690 271261826 579204557 228244881 794053296 391745637 782226419 134101477 56508813 230427503 342377846 241197376 450739860 135418090 26885470 713485376 904047494 161640403 800534479 248715528 369082860 883259569 882410074 718031243 490627647 597998969 720448077 841730878 171386797 585415752 903192598 816946233 982990209 250321586 960043217 801035819 529242347 88218673 601619905 508216624 681360387 596491277 750742408 357848670 727422408 794481613 190213563 961439598 9112517 781320755 472301574 936474975 908373044 957802453 909974477 177380487 711270236 846705894 222579902 258290773 911693968 105008645 830057418 51409403 819804678 646673233 462413160 331230688 965674439 464365342 162093403 925861159 413762787 155442802 124345537 653086984 577555171 469315398 837705169 746269110 952536367 697007156 63426168 503136249 514592342 972107143 626602881 999466871 92155129 902355269 194361188 107656837 328095081 26051242 238107147 282585656 201532129 212726380 840021285 297937602 983512615 982688367 6562359 802939213 438333164 365829120 841340077 145293172 590619655 662441042 142158308 579550744 54052645 595961335 751793277 422221038 690960337 336623328 810334081 118334468 218024087 589699509 151879250 172961184 992750859 341037478 409086972 283509924 73960791 653924169 573839597 351456518 614599655 204750049 796120513 633988439 311268991 725707221 789389182 171737432 898563233 107446920 912069947 769777559 292590183 442910651 821645982 99307092 726621989 555206078 643925966 444269399 945604383 448651922 956254732 390414364 49570865 243806021 38733470 992349903 313087738 122709259 479591250 54411317 69815879 308647367 25611428 629133954 381357093 46504516 747820090 558445678 853232546 595444132 93771856 231595402 92448294 980188093 928824801 602057253 760075950 410887868 326929309 224844888 910331424 405936077 453680873 574672942 198571127 997415098 5238265 160541518 343652440 916142628 307011499 466866912 76242076 866402434 89159387 905370120 888866513 374354108 590990901 457255665 882769154 292615793 388139750 498473947 868850537 715334380 356179810 794718813 816223604 643899076 494963830 861312932 483689128 712442037 765487565 35079501 706941344 681196881 442533255 29164119 695743535 19102462 521894303 202641665 308983820 824688897 224712300 193654868 400969126 160390681 469900888 621768027 90631243 15562599 553927801 627318091 351904454 124705899 459450206 161677453 579084504 851232180 744256814 454022884 522333119 146835134 596999036 485212459 577884834 912957369 927150523 503301331 782366712 97287694 110776539 621272371 251405098 246149442 95066479 352528238 800621797 397779630 304322815 789189576 743001759 559240551 124624832 511411088 741548632 540070086 393428860 713801366 226256462 248667942 428678018 579888155 91389458 549509497 772040337 199693171 452516969 380441337 848557494 211825125 166276712 72629184 487589122 334058083 435831386 341420813 718185806 618284595 133508792 895796180 897503286 913030255 847261013 348660298 645160419 874761679 860297302 885059908 145981822 933264814 718936631 368302315 888404405 504788093 108314753 193826569 744443267 924280276 82166487 216622616 574259216 242818915 263619835 809250460 763419697 119272457 741516120 741406035 22937321 483615245 363283881 208546232 631304374 965306323 380429110 418991656 706137030 800225424 508721601 78837172 368164636 581398878 211323578 290852105 570186942 550227956 959994909 151943360 810540824 559143243 538739532 47625466 495405621 543355252 290542966 703647753 255199012 783544664 428861941 278655586 236110996 64402164 436591884 977560983 390065187 474335936 773594055 121723526 309444341 88807969 994169770 741447366 448461063 368249573 505822774 894944460 447086377 558631008 521547453 941773687 98667385 453636091 350991390 949548257 731752802 295622645 545206023 695938931 997294881 738920511 230698262 950847462 684000625 82511830 650230437 480999291 223552861 568780460 251834520 237927298 629256902 343733954 556948013 830469624 506089721 686438517 396248500 99731951 232151963 88841301 818808380 315363442 742239822 397848947 663010063 654034790 253974226 150260343 970189055 641845553 131999930 73564756 408985214 571439642 854498630 276888693 103651958 203089596 864927523 14381787 796189094 324830540 663718855 311571321 329669950 183762704 821737657 309300382 790375923 869559759 646710521 628586950 418607661 137828403 346216087 207323759 774222976 251008890 597313001 667569757 508974218 51484548 756563187 379504672 367199420 411942815 828032948 105239486 569900230 12634299 50690868 429309140 671929748 245665273 292261777 603988281 653335690 677784804 104952572 991342592 17780400 708898739 101686044 710132112 493453575 975686485 175965047 463076770 366449406 77513078 661013040 761351598 520669390 99887823 821212822 749494457 274319756 984000424 264764063 690258387 726507606 383249979 549529830 641323894 459628656 227848740 625713525 11954298 669736639 706298297 809265023 364705127 284603099 335852635 126506289 381041988 397277671 63959070 151657407 206811448 267549101 530081261 948183379 88257483 992716221 379491884 138820185 458431005 904032698 906320797 218765342 678180698 513994894 777521239 482158051 388297166 362158384 613022244 31574513 298050107 993781116 789323116 898634519 936860175 100547632 246211910 989097504 5180457 30240290 624995407 132950467 722764972 414810201 659657913 276107339 430541157 504856277 724424431 958543735 973930470 50800156 183584848 97927355 322180008 357259472 936480411 967359599 557461649 237617654 255330565 15224402 590785733 678114684 507222917 589166572 778683773 714209645 81273579 907305133 321669455 211756693 698111282 425706605 545385555 360576981 616506251 943077982 927199412 397241447 183743104 732698835 931533958 257449405 56187449 784065499 124704975 658598196 956823355 77909038 238969756 677556609 242616090 741803516 206285541 447869910 53369869 308580624 875713846 429315279 162988688 808008982 944098393 3799225 17219192 834849245 619883244 714630622 48340478 697385900 394313219 289369861 379411723 993863574 831378887 585674587 25044649 18592902 169759180 451531053 139807039 954126722 883347967 27349109 734279822 362484148 424993678 650520912 657416855 190521851 21197965 565440047 49474300 662017807 711832117 307361196 475384121 336389053 981438678 902530815 873364485 879862835 732858200 467491398 83172417 55959968 832704760 210176607 740895287 29180338 554754822 545830972 390297662 857764161 907170331 195213475 234876245 5040447 329792183 193124676 935042373 206315654 671038024 6409254 706784231 81240882 130688848 882277648 998157759 170788150 985792515 205563146 775717707 413779619 659636424 387405547 987509762 10383474 787669263 424964250 216747131 661142339 335368921 478244812 834870723 913403112 460966783 819402097 289418541 732266282 942841666 451246965 122578270 876417001 63279406 149375512 423908781 152395148 868515181 886669798 866401595 69967263 116280988 724343845 17578797 500807146 346316110 123999745 631329520 612519592 364204314 820827688 564492785 640283207 585442427 943535915 491276919 159400834 325953545 842938627 568655658 726499256 349460933 629962335 957147169 65561557 789668188 49158640 869773165 406198333 22822265 737022833 496251288 740863257 450612275 950616715 931727695 655761804 820050723 797428596 422678888 227300640 119725512 502040172 703282299 713800025 39294912 370824907 723438238 171503218 193316235 294232398 821025585 896629162 365542698 431310006 384702142 388841478 109654815 804400862 312933139 69299602 644726979 45195948 865665016 132025457 776630885 208393463 859237766 907843463 350397069 205239961 852943325 583216392 101315774 697741046 558521216 699571167 773886439 357871037 528123645 326755510 954418424 546310640 949692249 947934146 957707725 856598988 454358550 304680378 657201995 294872440 533865488 394473687 451676958 465145037 867596419 977654660 24019743 208774313 309472802 43590733 629414442 643353995 258420028 65230032 805914386 431370411 131224110 848961719 8974831 701645372 216604390 618482758 437616676 512926009 216627993 441969187 333922372 350608862 949498357 757829575 94477366 471387147 169046613 904372491 156766988 259036297 311152194 341729300 616079177 414236187 534143944 505774867 18670637 932525229 12366991 468833410 227837031 70590280 399219225 610579977 447953787 970199303 771593209 692018139 878275220 808623085 45064699 93262135 731544434 374246496 250055684 581048136 43503195 106052432 638957198 729458619 331394058 12646943 741948474 367605467 294314857 344380205 866980508 472306219 30771604 155741346 243867315 420953932 688934385 417579104 260164745 56443245 619013992 947992501 252035032 150168395 798324332 720705934 162904842 502473404 276809224 745097081 112079605 329696265 459420844 62967882 123857107 644721482 315307634 749915063 57685559 980051973 283183991 356109474 791928848 804904218 320025065 479342599 171465109 172600603 35673995 822804810 462514313 495086022 480867175 429049018 411549304 308243754 211943601 773655211 369170858 946220018 517929449 350393302 909806000 959907931 814026263 534494999 930907422 24463164 893881345 820922035 255922065 752494068 54749137 166171421 106510658 782528969 957374806 620947807 232494700 886371214 963689282 11661766 496446514 866087343 604669338 18477543 63740624 50684025 988005500 651816902 188868885 478899311 303728536 341911292 242645255 256305141 703902978 515481264 440506445 113827474 635381704 383635064 478287737 648615190 171840541 870896231 114975731 270224561 903194638 925535417 510719643 890695459 867210517 697728365 511962550 515143539 805199604 134568422 789980386 263861115 151314822 214620207 848479496 906211732 511068552 323033350 722093424 924989818 827281321 15940679 204150847 321133336 238593347 557270883 812744913 692932191 389495104 846234956 914239226 437944545 207477675 145182710 357354644 623854583 665480861 180721849 798186665 986218234 634377795 368708585 46382490 740507151 133046507 540884887 834801575 353852772 682795021 144650599 986969267 709268768 464443831 74767545 584131168 424390364 916011946 418184461 266015168 43387226 460641295 222947537 385791891 216303054 919804574 263475924 23134131 376044487 429097277 295431613 657645362 583658546 959020410 280214295 755448113 781578521 569665324 615603260 706133837 4314950 650888152 844952236 298459388 305020073 7349260 714467072 624152573 202173944 134697370 413173883 234677837 602593173 493984529 35718009 681253866 868283219 866788407 467700634 177852642 307964055 894123634 109527656 764805356 833648485 793110458 164970340 466750887 389994078 358410186 237514929 622262181 670696720 522726859 582048127 456910635 786579387 686230277 338571947 25081495 311550131 576775054 601945525 100293232 622053610 446360511 459356245 989805154 479852074 907702538 458502594 46012396 645912567 896031043 471179250 101120882 922329891 624471259 755330240 238658101 520009084 978870921 611972112 736672536 864377065 729747049 440279070 209734354 246847359 214691416 58436960 440861611 227836835 821570337 95644432 154103700 75898168 99645986 343581986 337642262 328215846 247069503 21015445 585682739 103688718 451883941 471117124 992801715 359358021 245695907 462988641 761689655 898600711 496575674 254218428 971588284 682990367 536895393 750105772 113487203 189326436 383024205 827595410 712024476 629095396 153893548 978234969 624805604 720251505 744960269 4792851 705934326 791761961 793672508 87160468 499758193 760536239 317222622 304785936 937475950 396102153 461368760 732978195 705604113 704934550 484621929 775791627 183596878 666443802 351398996 513969574 228477124 902005435 345919997 738820779 873987882 698293695 603715440 75304467 528863178 643905386 514438924 137129836 73977771 529983534 115805319 763414150 404279427 331362727 284009520 529935292 854621113 6127564 641919425 527498612 816285443 922976824 536539476 195974495 99408398 719236559 415062122 492935071 749716233 975977089 408760774 972810068 364402740 413864100 575487709 605290835 440999666 774029063 292559289 492757486 346798501 783464910 883242166 287830 153393407 679275761 699801602 527429093 880015486 659113915 229687038 732404074 968508807 907801117 403465892 876214508 336416949 730934272 612616266 619205163 231537058 380722207 736351103 472823537 41804965 54007424 756250852 130356390 783551246 427015234 61755458 358621351 537550608 768672204 407079119 333681151 358070407 186394034 543992808 504903251 178394255 371322351 306732888 788417388 128044553 997786319 950160963 720340098 656426217 64248176 860369308 646552776 115804391 622515909 238064021 110778653 26135576 806795967 125568819 848067149 23231664 313876967 476993642 524131664 161469596 778989492 68055776 635039235 779907229 709056678 441879065 163127567 646324504 364276514 82443354 928009305 501178114 271209259 218945843 177202779 847375784 731047953 34779204 692084386 46831245 549907812 157951841 18151887 94512625 400718919 12983050 201356737 866718636 9723453 469343096 613509729 354540788 965147198 674873710 732909713 63905284 768346882 737225082 275883582 958782175 20770879 182653592 96473721 969249785 289746497 894282602 647608825 572476859 498003052 515720040 238672996 340241034 21608980 847353276 290604001 225165545 266200317 455704898 458610058 985919721 341496217 383141716 282131614 443328430 907968392 830045558 433268997 824016873 528265919 691523764 425145448 440011876 926881877 218817441 903836287 477945514 870441789 737830274 99555895 862238570 703616374 627375534 823051 727935662 494390869 290349844 815151228 921542751 483529620 797925018 917376623 230383529 839985589 217377507 569866377 11124716 494486058 173340614 874203748 847148286 77271185 382895701 289603545 334241543 321912290 824180147 93262424 917333335 184601598 157239714 733580808 777065275 157174435 324700040 460996020 856437056 125003650 602868074 491789175 899991708 317297031 669875108 909617144 263857780 150496725 475511910 853186762 688696924 737238181 104687075 952414399 924807299 359148543 796949751 339217036 444342060 828350020 923679694 34198925 210569413 851083366 594026879 344948805 396954592 205925357 977692926 780709130 858357591 973360938 354942365 541478811 619668935 147321790 497640546 971286819 302559591 585743655 215336521 767061111 233729244 795978120 26611518 783983223 215301408 67907114 313642830 633816465 233592540 43428542 62075116 283337563 952072774 100725615 533686422 666978964 995028597 11260491 59828412 932270064 269144765 449699662 500729146 600797811 582239653 411891237 530441549 997399170 468596710 323263581 116757008 106665089 801104696 483063385 414568721 504274038 450992638 877179868 622202072 257291622 656338545 232592315 676735530 961416850 519164658 103134557 764617113 238176389 136499547 77469803 712093470 805281651 522371649 290251518 506552112 537722216 771764933 484190765 320763295 552904319 380217349 473344232 475038769 452371720 826815495 715526571 886781759 902186953 225592018 671384496 872279263 424692946 416235517 106553879 718935944 134498628 970804402 446128203 796820818 591301830 139273605 130392658 925970968 801377692 659774909 155857782 408924596 465695555 549438456 574100252 266712327 755757458 409494061 719242015 942115771 539850242 318851223 175134341 425114720 615223677 867791846 950634609 335341682 142723425 441984161 625190409 84306735 152226694 278968566 49461167 274507233 926663614 7991749 162895875 914804445 587184411 587318095 309061206 267763231 684907736 572821406 712842185 612602776 932761578 858071251 385239047 1866783 792875979 703407055 721733757 120237926 300095727 579498205 608467578 282343711 691436112 6040570 343402789 287573434 383493393 25202043 791568731 374624345 85299977 380804674 993685810 910012201 330497147 570060831 691210802 233466372 286035997 932093808 183633268 852690677 681016010 819380100 77368129 201716594 489092731 278963214 699702560 710614915 922644864 203347373 504969362 342299626 740285030 665881991 620641650 149320991 436143429 19182190 488912676 306592497 779252151 701604175 649375950 224085896 252433620 558723482 131273599 686645157 293050857 275216854 349244075 761643748 974775136 33536265 344185246 211781031 847763858 236836007 397540274 198810257 701631680 593648089 188422901 104809755 678314478 620002187 796087504 786430183 853416152 572874882 105898319 616879414 328060588 255528064 67756951 762342527 826845466 188119188 516602940 678767099 205457045 517709496 200129143 137053767 529038089 211848224 615571248 711741061 50879853 422364196 21856475 45280847 309280953 196197377 515599335 823995179 69825874 941081354 211422618 314344481 573397513 542477502 249321388 29185581 277337849 631342962 182485573 19347936 486850718 434943849 380461367 814823908 253543063 859351380 68857905 7641313 768584114 506077472 92472083 536765158 487023371 932446751 858352214 776613163 111122881 763493521 188022072 411200879 47980016 805825486 705596874 417973847 621982596 156837711 242630130 865757846 614961023 760806105 264256604 91777691 510217809 947181245 3095656 564253779 89679629 376525120 286335045 450691833 714979826 45665642 536034396 445523514 152061007 634003445 956443401 641553257 771330854 83417620 416236283 935852249 860376330 381263216 967757802 897353029 899508798 458815071 415808984 141614434 573369660 798739333 527919054 791210753 538280491 494867483 901602976 786507611 547155681 33872071 746721886 633867867 840480282 136646048 218651747 988469997 305377380 431633273 846325490 694200785 168424455 705798124 418841994 251335347 641341933 829729418 85240008 97624813 920402846 661429539 572525490 823489710 719956596 75359784 259201550 557446219 778312670 686993524 859418023 936319180 758563769 664397575 28742296 418144942 276713132 25311183 950232276 441694572 908026874 757855235 156914607 453034080 813959786 109501535 809477024 243475949 664254213 275387951 423044855 121918296 887242929 491019152 433642397 734230277 223675229 613214413 472781895 634971476 968300207 46573562 584242068 198100462 134548857 197047163 400662 883947217 876330777 97868357 105068997 170591328 643330601 591975555 655788915 40506998 440604393 51156181 842775776 37435056 658456667 296816530 956787428 547916179 855262111 535987704 17584132 330752270 751158606 926457482 639937390 821651700 48101916 317426576 459848910 338778137 788858032 101794731 809926852 404378816 343399197 736189307 659338459 738176718 160178215 64288447 223772300 711153493 610010742 993188124 913475298 939166794 56916741 472634256 387573136 10073873 799033340 88371006 715747057 922061782 695064742 562112102 563017799 374863534 848395631 6744734 791134743 544784708 624757059 904837026 446507858 146225641 276258477 193809232 937909835 656607144 192328079 65417364 492329944 290705888 771158898 92621827 948948881 543322183 852553283 435759740 814647089 29181206 39184766 171125476 605307630 348820688 966483730 112438664 747604832 629687280 774569774 445592340 637928796 342366941 121149244 934523948 652488614 185433403 364771037 118717842 903147855 154764292 566760222 915208873 42804281 806857784 840691722 155869638 87789971 509472136 978623564 66558094 574316495 562363316 600687274 40008841 590153189 789850747 138533018 86008333 477148217 948641366 720089770 293241598 356836241 933656312 569624417 859396959 963228591 870954769 996091535 881672669 499791687 725315359 594393846 70308390 118119377 878034022 310183937 317919622 521675882 178384774 301001342 837446066 717623368 547611506 95897445 942243892 784006658 383200165 13826203 248588483 732494509 526439914 124149692 404622378 459197505 148853428 430883376 724961230 637565584 201876701 806421051 487304336 263488973 577566117 686148412 537654240 510072156 925040055 881643115 531747421 481016936 376017278 111607213 458057319 583222403 652785172 91984235 859178745 950341142 928851512 591102621 405888462 37184994 527658331 23380456 887913941 352352113 899064855 164735795 493851345 638802525 555773573 186606000 541583461 931198874 947239434 681674240 664720851 373167891 418810590 830931941 781682809 233192130 446299946 311246633 724249140 557231784 260004330 830550446 350130180 382004175 722495185 955400781 686573615 331067584 807476078 856374475 794537433 416872516 226135476 15315188 453557678 122158032 530135729 925173835 761458333 877769027 794462349 652932132 342639012 130593714 374731871 528150126 674092775 340829452 405999560 78639188 875471250 73060252 436874346 185928656 855988513 185538121 858692653 857650581 788124223 826787182 305105550 656373147 48003286 392812421 219297058 793561018 900664773 368057717 579601553 894440100 86059737 244457553 874325409 470504647 807822593 845706385 398140440 845418747 297405593 854453617 619544984 797900318 429391507 4078311 633183367 157302935 961525632 362938407 92098135 952372893 736878772 259801409 573455857 809829564 455244874 272554550 919814759 122209055 384362041 369110655 935569831 220372160 896849561 474727737 409688118 578898682 397264297 61477105 104311087 764734962 607657578 301793917 314280599 165786257 501473356 765142113 424666922 135721197 336375207 624497732 271015485 906796775 503938715 275244545 617401946 944892105 223654346 787895305 143342895 76252615 419968401 393001117 715640916 11877085 404594468 967567563 649200295 649840787 512735364 313769025 640004518 546475831 734259730 582789667 258154329 343025965 487385202 756762322 992259322 475807936 748691055 445600660 700522402 310315745 409175052 590703072 598555136 725861090 674634602 182993547 331781090 887334406 21241223 670066464 145809162 822146974 248166222 590510238 476033324 658717619 988011791 470540291 173125783 383546926 35369933 314406897 354045110 873465831 878867421 883418639 834160884 832027053 591579772 665881910 237476544 172079667 764917620 821881071 526169936 114974479 216918975 89826505 703624366 173298076 112674512 566801318 456321211 271158306 381820311 507191380 743352108 926542165 30103377 589317588 646593779 402634679 507135391 450821550 824930952 720692072 863895013 964483091 836297346 61792905 468653100 442475771 818383951 407847824 370752395 744280253 325753878 931358542 131243297 494941707 484540198 903849526 456489087 24152941 775171814 659298615 254996280 365349061 946113473 194264647 738160322 696728684 23885642 57995691 949378110 481885487 143479996 69395197 935229741 331191443 646870415 494994928 828385930 804850107 595955534 156592143 607053745 193331410 534597146 937590346 954602801 136322831 179304767 549752917 950383085 420548941 422149268 679392931 712753872 753437093 146479846 27725990 899913871 533083590 417548469 734635453 162312081 757072485 596976343 523739760 349353166 899486091 122015815 437430807 166770024 394352201 367451941 935266599 93100331 976476910 832581336 583510576 666265230 319198052 859676082 768924123 398841528 464838687 876192480 472915034 16581767 997363627 473089606 439257185 199756336 853260064 546666688 651802228 501516862 13376579 12743913 67005156 601737922 428121918 98243697 292450421 762686545 856776895 187474006 666583118 294625685 887826426 48416890 645026058 879410973 196565303 446286334 116951196 374571205 865892122 514979595 163040622 648243499 230584552 581024264 465685550 505231509 560190956 232755834 885323845 652765491 471630344 532709282 305120149 376533720 948391528 901514957 720980571 955327781 64141341 732240667 167562653 672931495 794001583 356052001 697649716 783065781 445730255 204511702 211956281 850601183 762871593 536330474 812592753 698015870 580066537 595599179 153700366 838628555 445470303 868048035 891189909 877012366 524683964 403103532 292361872 374586971 796761007 423089848 240892589 138656400 914746994 174308794 16745054 733169947 871246593 281054645 817997843 543845814 609049058 914365363 864190766 881743718 172655516 910426036 590674062 90398802 416654643 316264687 225273602 15977022 903353512 132686953 427676411 104213602 144677919 122240 463163884 355582476 215511625 973272449 656657815 802032691 486082953 200995603 881030822 580708098 930884338 341966111 262393426 182962926 164817807 334804100 430470093 123988579 896547629 199770570 759775229 216234593 545905623 993377445 552648993 197350244 425746826 717053832 874984201 417561423 706198797 971413553 773701488 243639334 234621389 698275436 184173358 669654190 506206901 792216221 546102278 757771542 342739986 895036025 836228155 270172329 334732846 832349577 780452055 26291505 123507504 946988931 260391864 845546550 768981130 790758711 997113240 352117692 212039553 93085505 754608003 335389204 510281451 115930333 835059347 790239325 76833743 176757436 982954274 824595951 694353908 638723436 524946623 520993162 194102891 535204267 196523247 569323403 359956829 675489686 907747186 595131465 502269717 504860560 628142447 513195346 435099894 539050748 370595685 749158029 348244387 387433201 478801786 663502060 341105664 136893501 76039492 380357003 991727533 254189593 433356817 685050962 90884654 528490603 329912844 536813038 749047540 409328502 738609898 598344318 738666665 439256465 680787818 282114852 86776118 739759997 82251440 666394049 178989433 152870901 204238300 443058215 13682991 123485943 775482378 995393810 302010656 562240437 600423054 96232916 279718459 440451011 127260576 917166618 973488354 695913725 386321012 558981781 761729183 586830621 55834625 48275108 911459611 840162227 459395380 624401141 178684084 215183961 251132511 640163077 398757197 138723644 123067035 886847725 828292454 36101394 199017431 323902561 228759987 806683037 933775731 287265555 6436124 178204484 705737603 45128591 802889891 202556725 201903688 621986635 548652293 552839448 326087514 681766005 232905300 650453028 944933343 66440233 851815892 343801896 520454146 153053158 905758050 822263111 285910220 389844523 298351022 144630004 42905770 793422625 162288972 623661474 538612026 374652977 416532681 879874600 917600077 287508547 22032568 466591014 699810534 578364013 659614440 132949708 226954309 922241773 885582987 638423787 219099138 498690254 915031527 925442985 254049695 510073629 153355822 44283485 11528034 608412420 142603798 362037201 873335905 849356658 920586844 374842565 131031615 538877775 885330087 280895203 628387919 443548293 903464249 246339913 186336241 550437686 745908711 594807755 584354113 973426959 483773137 171814523 309820925 447946088 52013987 567382942 91746128 982581067 639452918 521238493 241016275 10355869 323832575 438866784 134296027 670820063 113981479 264792694 216998565 720978760 60182043 695429784 314112525 912850406 929732548 274102837 514465313 447744331 223887434 601158686 433336721 926480527 532417593 918402430 277450317 894446675 888170691 96524175 375349114 924913480 586943298 336681396 458338543 928134175 154703034 187663465 561624374 931288460 19756585 994845396 132107466 434932480 487668896 594564874 947342542 813194597 124374888 23755540 335074646 86207218 218187030 628299155 746726890 267538467 679630799 582250586 702934402 130231727 722468274 584043295 22581681 838117556 186608705 251532110 441235911 38504858 717860091 226336248 263206128 111260574 489629487 604195790 163929088 978035408 635995352 168569403 103062114 656859792 234757482 109597420 535326715 529280070 322251647 9879356 75288146 71152886 117554784 515424016 77071652 115073518 307238699 696667216 654540446 429132537 502079011 657126766 619622665 50886326 202867020 454429487 751396158 662878269 810284814 428512126 69120816 499197313 661233542 498094257 329149613 679051525 39990107 68483653 391345969 125691423 438256466 383993472 847288352 24490821 617588557 368515240 172764057 430517506 876358613 213971968 309435739 452397870 6262472 993658191 862713726 62213322 660179814 266102135 866483527 347857474 741156571 589310881 751170620 465307997 161960805 110048431 686405388 246378790 50664761 358380189 531310523 733623402 838294748 522937257 308532746 702266330 227539846 471053045 254654681 411069620 696876791 857672070 657853322 446559841 456145703 338856834 97802932 274619052 41091796 450861413 172621551 404357871 321479987 107440144 94581959 969064363 909585528 126009837 973441079 341136911 924841474 110796463 831120809 752334941 170185810 592399541 913286279 726291961 62918899 696469444 4546936 177134417 578672371 834815682 531551039 612631982 198061425 91187154 989292867 188601663 192882763 630814099 349540773 224500123 312091192 390502240 214704628 775114969 202852583 589897283 834517734 605851948 3694108 34275127 449778375 683864128 292379330 485672198 968588939 685043020 397771349 426568607 947929196 623049324 37214985 780500510 75970734 293172744 314707534 899472035 547601171 955760557 654548553 253419142 244900406 641023564 738046027 783147473 457370391 916775620 170638015 811152321 98436514 741833688 62633021 12038169 160593925 820454557 419709942 985539779 20181147 676504859 481616511 734325958 387688512 280176188 272993287 143432308 632401973 132576320 562716512 625344284 937130424 712173504 481537703 979101128 262940167 629208277 764169778 797930195 273117826 493259366 352724320 338979639 466388280 907985784 855290691 497098863 460822399 857851714 756826378 460583057 30815380 559943330 502560828 308308706 843673129 902586879 517712170 176254970 25171839 989654495 852377104 632996078 252412062 734800570 243806960 404004276 155642846 974714157 193494923 911912300 538890155 147641419 943433500 78936410 892568431 742725535 996902546 84149588 856517574 555317045 375016808 938296062 462696977 9980971 206393215 893018946 146962364 604152542 832604516 469900444 502582551 165802811 554615908 932674402 75156357 712688355 622159665 387243023 624262201 645726605 276089929 206083646 780585865 933599454 461316797 404108732 260120614 659896778 556777679 164326006 178009087 804424844 322390251 569516594 363358365 181851034 311094152 788991767 940792672 476272286 194545079 300068332 848848406 851662132 368118181 46432765 656289851 746648400 309927459 125639894 70930214 442588672 659504561 559890540 633007557 73139434 453082191 4070268 405955270 72435647 629492593 879852585 500692663 709462201 36351345 334677483 771599733 703587796 45416781 442211618 150130121 633100567 612315973 622686806 572586948 149771649 881517456 456148151 810888912 74893336 401501503 59171500 285011827 259989199 260982025 184906891 108642133 7006122 698630700 109388427 146788189 619410804 798567450 745336168 688796103 709532112 480883740 510187076 626140327 580997003 997100607 784347340 270982643 467097539 239379382 671627990 425507405 36475211 854624319 926678230 534954041 528208608 530278406 914278132 497449813 74864318 95409591 463589130 443368334 710028761 164096029 476404784 835173909 758605511 134622989 711709879 445781144 629575015 40013497 273866315 983384853 984576924 162109931 39842306 616055069 686594938 584019597 401819651 521069890 214950147 661049475 962063413 630405750 655820186 542578110 521494629 330923683 681285234 961177194 772930754 305605412 659000489 786009729 969284459 190783128 987162086 937760111 886060236 429052196 901363317 637422698 947046700 842111921 734681140 141597876 387741350 618093144 890003495 653625840 646803714 788830865 576647420 519274779 355853034 44216710 430946574 843118743 830148600 543095354 399488750 953119979 115925034 19758765 57159305 550158319 155825506 257336272 542426147 555505930 763014030 409395817 855014217 547916789 11231265 862795367 885410880 232293937 569906678 931873136 270564243 192348747 621265221 26043514 760555892 150899002 321958421 676162637 523146984 553200141 193697797 913645497 178444844 816322796 357680374 680141048 254991935 403955953 815568841 799774362 678476455 722556698 842316607 923606151 861270432 843688395 275631879 8475081 112213063 634246733 430871001 888265212 514182159 304430484 720573091 40090604 247874398 234153856 134946563 795884580 862698639 230263037 457491082 446592874 436856871 486216064 94572481 119201940 593839597 264916878 809326192 277225659 633789986 479369711 508158882 146033901 485054654 813477672 219077342 113001811 484134428 342645811 118724762 169458041 990002739 341556601 413082628 304800763 845062102 135991837 481744434 935250834 827745845 103500919 257005191 227936368 24414026 721159810 116489083 580256927 792681551 733435337 607649186 47687475 584500671 564971889 417771195 730069382 728928543 6058173 900356756 529850084 802333828 928021782 458627236 6133928 601293840 383148238 306267931 691714291 42006312 435190714 747559056 873574936 897623067 690479088 288437816 323865842 355446557 186165873 781364862 473373327 799357512 345289575 834908633 632939805 668978623 798824175 470038532 740615022 742499392 882310529 231723711 159873732 128344700 700568119 382595389 240383561 218455627 471007764 777792758 100364437 964406915 327937821 129335283 56293937 761968789 942614871 764621810 503912192 573992392 407385390 295351754 113185564 153652593 483068208 639856232 804685531 96687315 533275919 333586812 190569056 531110537 965631318 360105995 690335289 653362501 810492350 640911470 880885704 265870366 890936287 305858982 889291101 403389027 236907660 755755298 107928216 493970230 19206911 610932470 128443808 594488663 635689074 605401621 867895389 336539053 458248219 546517115 699887246 644476268 514785175 277575652 585236294 115095600 640602920 75193041 358854 427406098 950550682 251028570 499774334 371517297 637543828 348524332 559946615 518442956 859903539 992022630 842486260 830620033 757933677 63516365 251439197 400170479 717731674 57131262 957370563 846030800 876680114 623037071 872875558 96938123 137260044 572733251 577412743 179425724 572283800 611052805 175913739 272165998 719781185 606818582 723592658 350536610 759739447 511590577 788639794 443143781 203788663 200179292 439809893 913545292 236499574 345756794 474573142 355706006 219482242 333121519 249878955 718551148 863215044 728224160 167364437 354700948 34662867 457977193 76971392 357241078 941303834 987411364 473117825 920116844 209690121 603724346 89269243 822635233 665897747 185635426 954773093 409712938 139697825 984280889 839366247 65571954 867458795 612627340 308158292 72826365 603921921 423553671 959131573 319292313 140854543 847767927 513872902 143849277 377406157 815687762 862412823 829105029 196287298 388701657 208552543 967923612 521675235 733808453 161828033 248749016 554417027 798765732 85947989 640676461 750073804 501252065 769785404 937082126 67487625 915016562 730620932 722243010 948976078 645090389 635114882 871405527 679595472 40848260 715201374 39932183 775651110 21728281 539109082 79408835 928187396 733944025 213896879 909518493 886039133 671547216 897122067 217046167 125258864 953866023 285253024 350188042 462376673 939262594 857370389 71476667 824207022 395174111 341906676 142142629 175135444 104801174 127015488 756477887 218441274 374341242 952214514 49241550 757811240 172333384 156144866 184875252 842358967 942926865 508564093 209784595 508782647 509656882 342441778 236917775 677234435 192783190 499978281 394427946 325839120 111445250 156063246 322040126 412723594 145506257 879441914 844191524 427419588 933147146 170521372 621089183 252675934 927417429 648047771 81053187 849409607 886795251 637354659 636545436 874182392 703122418 466503398 151161859 795625034 977730550 564942089 11546689 409465238 402377599 30890012 485412670 829243262 489733040 919876268 713736567 284169093 628005537 945638846 454095548 811748689 161922431 652990996 208209166 792927263 686592944 840774381 818701320 137275264 549457985 135313826 920882407 886825226 484080012 503783658 831147224 250554542 218305901 667864232 632885639 170243586 551193664 330446205 376641433 975065906 495267089 686277023 919548182 549186647 367893223 335663175 304686485 853954293 121248473 169020262 348696409 628866486 342261866 76085205 681155873 768857246 350946056 211961911 186109659 153228182 944934449 86479009 486330425 147569917 803663162 499608834 645984940 977223907 8121900 832660752 791500506 20217613 330896109 515579544 547686199 853089942 992680565 380889065 485948482 641578617 301777584 163567646 651066999 621776747 8065738 753213104 312280673 165238945 568027642 964764016 835990083 146192147 758758052 817803068 112569457 150509146 644097326 395387053 711233960 374169752 616075278 825365371 156384964 37678725 243739362 339937908 903917584 857537201 101200510 241941308 95861938 839353693 925354564 524732307 172883412 569657912 705274934 367082421 428920244 567616631 791130642 127316103 208400784 5461987 473110226 483024219 861284726 518083646 154000145 250661063 236021525 14396224 917287189 177493759 500252759 240549663 113839519 817280998 228892495 459390712 784235353 388850709 276191384 617593089 438814034 854005947 110284385 327299151 519097676 669630092 364049505 335637870 650757315 887559009 868958904 196620362 473707164 311797895 472928472 795560873 317194588 39460282 349927245 225760517 885909350 2537129 974073926 401879537 487565507 855903822 891996625 373390413 24240770 392341979 612709763 599053263 699083659 441934458 152136814 209025097 940526182 151120173 591326272 588322340 61819724 715669837 687897961 850577425 661761364 783415537 414457385 895751532 103376649 911209669 699728824 359230006 978262068 76973127 89135006 157067524 355214111 197061935 115796289 376687329 325698383 632197948 325366549 400188831 657884352 53097296 267734934 686461446 594946301 336262085 215977026 722689044 158092255 37634042 837935459 841327618 761887067 186119699 834620805 47356607 504014153 914027067 615458483 127611644 734836635 853188966 796409925 845531283 366866719 170084045 837906571 635395178 656232095 312151950 994317357 106303699 285732416 790198645 864756116 172902679 559772387 324836469 998201651 315104797 958571698 809404990 713179065 251355892 155198884 751028265 830103691 982844239 610419267 602212233 312406445 466235434 516112577 526467720 864360517 942355961 202816340 472877766 767510233 793568729 262501471 579580859 888302101 823859368 337303892 940742939 18903335 748148000 975291904 284290788 947782404 641530688 778644092 531096526 26041339 451111459 595318090 906606327 976494486 879964977 789948146 495152406 646311935 309568447 475218669 811596454 76107102 47163002 702148243 562359415 668830723 75378101 789863941 949581096 118217081 599400442 379760987 504288087 436968227 419380423 553226419 243939314 403822557 280655402 802939520 27841642 756319982 988590444 939122787 371236749 491770600 313113579 382791612 97501535 520175028 377124360 623399150 178989894 767317606 731517993 756393307 46581179 804233039 449747964 647106282 698510651 127976314 704234888 32796653 666271045 383264793 757623386 273243986 578530742 102461719 85700533 840222399 329447857 890384429 559386768 627758048 750025978 526818421 999865236 247236762 333953921 484974267 476908807 478889781 574736083 737833142 446894465 959195062 788327724 729563065 314566369 173916071 524554273 419438882 533322078 38856066 441775791 358418614 302118947 702502493 194586341 893397782 124971536 990649352 828175037 369706787 341838754 608528848 590438222 107495636 210865166 718769160 343295334 460562436 219276021 511492157 8169410 506471255 861601694 715736484 220548350 51175827 457145300 797888435 26817864 5579165 619728779 920967725 845865676 48490822 338633546 410629372 792429852 563973292 84402557 377536656 343989654 505224962 148492329 361392674 394949085 987671542 897644537 154596748 206061354 725521217 931293328 128939920 120410094 50285481 35062699 312188054 619441509 949174281 160382378 908780971 512017556 137632584 92807604 847058663 836484240 303546344 918674140 699518120 704729649 923927405 535430710 119503532 996544451 414910029 554388012 8964908 591103235 279024341 77404387 890748037 947454406 576541425 682128486 206157667 951518165 435601840 776711089 419750358 234091244 585239134 990020621 460235281 847406137 870175979 150705040 584950812 850370484 95518926 430021649 586439386 558327913 871706250 474125851 601263496 577538282 860278556 781566442 274350021 730707487 624117119 964174124 974661806 513618250 761548941 149406655 232551288 417501629 185334186 459934658 819551488 165191688 391684593 187390579 281716060 300071444 392239909 623060699 945101464 932102060 972953990 107780573 607363402 954120870 20955303 751274056 375538280 201998675 830521178 753238894 162471887 509244988 771547322 239721166 759963932 151172116 300150120 342333663 145240782 657851152 216856681 603145239 338343000 169632456 417207638 972920902 896336865 934464029 153015538 963810330 247105084 579284054 305327228 268335242 526838214 260524491 300267077 171883037 702487274 589551155 221191529 147196907 90402993 861432676 272371118 450458504 23918310 433273743 296226752 594257656 948132446 247381325 505336453 906331977 388138474 819937952 857853853 404905645 70705860 110271989 395186519 372105230 138121840 537225649 545503412 992950726 142395327 545427894 688057661 175428516 322123472 469233400 163056576 566248332 68834688 834231904 388596861 258305266 349285670 838221280 920856661 188504977 970813461 953190458 792943577 612878890 178302926 547289186 376163443 547628002 538529421 227157591 828988654 14345922 744920760 798381154 872859083 77502071 317666955 846333235 110263034 230019523 253274211 899213322 717792044 465947080 781973567 989818477 536119286 176061183 806965172 735549785 411602605 491901185 309914753 665227122 363550606 375408483 79182950 150930773 627775783 114122580 244139237 551725424 512268417 193718719 652849265 659542995 687811063 103476727 402206316 601593374 172234771 750179468 113714265 919682120 668676601 975789466 124448667 873991464 404410519 717718394 654775188 121894044 237862005 120221206 146891380 838721097 646046338 941807522 575293040 43596101 294545271 679140504 263296544 64665348 168379985 350721688 848534741 322665543 459972322 495339565 185778006 832965206 752415461 556181779 229962659 280451483 679159251 24970928 391099305 466889841 678077590 466586611 298773779 185727734 345574652 228758535 544257580 954389158 378892252 816956837 25548322 749208262 571311653 272985597 118113270 495344831 637566998 991757193 371754133 202656664 396500014 350977449 809214804 576696062 980814070 805918188 94798233 948706830 940240726 682333807 590381615 270089038 841265933 545408064 763593330 613900492 933603223 571209406 238008511 256424882 245786373 31678408 339556412 366894669 521997651 931371909 951851805 699288592 122445524 224134083 102177621 715932411 81039244 158404444 901122226 692941601 220419383 208101792 373057111 250863351 915079063 394489335 802862525 867166492 88547311 833662782 491266745 344725599 718393203 604971798 156175308 960963130 651319898 344824910 742514564 258977788 461034834 965113072 857772912 132257709 704655986 768512328 194464076 226409422 207754866 472274138 758800862 861369415 932840847 392477776 839355534 288338361 943275689 583559041 312432210 897625156 12443877 602620137 561638650 908224090 534810914 688512077 445861152 396509943 936542567 541797198 907697593 317820654 958793048 498468192 660536764 115083362 637146885 746404053 688111040 852917685 818678114 541845053 609921753 507390648 659580415 163950492 604417366 929493966 198493557 664065769 932098003 77525105 170408310 759707273 472315159 292353111 599303799 278686151 470673208 291763699 226099979 821996000 389061491 705862981 333125193 134907490 12695490 274119787 842119620 221276522 246604755 176851362 457370605 98775482 250757649 857356311 504735444 680556786 419424999 371486225 332439279 737688993 744863385 852344112 630795275 555977727 584150220 787198331 699717350 553108384 951692278 103805500 563501424 20705635 356268748 791349253 578205719 463704915 565332561 775988275 496901230 31312211 930240306 601068170 531185590 704490620 518361003 590633589 123304536 516445188 148925134 563156161 702345889 612276453 398965587 886145229 741578603 590033157 731080644 522544449 581434369 780875203 729209914 191971044 911804712 395048431 212084672 805352695 913895189 188574805 910372414 297582475 592044632 696234104 41994490 816416378 853257920 887093725 734308991 415543412 773252381 659190286 437388841 670650032 595548828 858615421 997867473 461988710 403127750 341116335 652600699 311869075 73822721 232335059 303163814 795528705 332827493 890401519 642432183 185981633 676217549 579444460 386649847 212744661 354917447 174862126 212624470 564724689 157491552 768874386 912239874 609728755 705703940 330642530 291800700 968395374 321943607 840676681 829719773 843393221 287613685 117285235 430011189 764958908 843870152 226567902 780266168 543101245 357894329 193098317 857539368 85120062 987750495 478538717 779161882 432325930 709432374 971795753 486828764 154951684 569770924 225793753 499015132 653762392 451496483 567935904 290932828 24187897 20561544 308730072 448160410 837377154 902974978 269883330 966310071 800107921 80167661 669519553 165590870 576613077 391439887 465368415 248679491 202211876 847222526 381511568 989010054 656215186 509720483 997089956 612691277 377355528 832319032 983805304 873595774 148161535 349001708 280496697 505755448 47288071 609160376 334631862 67349459 660099767 409447984 98427574 325404462 527930636 122064702 269399812 230281132 149808548 953074327 793850397 65230263 37621220 626136752 795629741 22196391 935362795 37198986 151813758 241908977 579621355 295884617 868794789 850200030 422698607 486241668 597912329 311344532 846159544 5730051 178233442 532415662 210135088 266833445 404852129 952913044 619545548 560320045 272661852 624384184 442711721 880638763 494762827 977376584 492524249 167819149 317585318 65495742 143349470 150911823 557403254 126629551 822110333 633177168 29268124 624765457 152849008 67515985 173357737 669655977 811839810 785476418 275953538 247735356 968409584 335161886 825828992 661996177 498946131 384214545 836007625 181211451 208957586 872312979 426126039 248433155 220751548 175905830 708354949 84956007 858505363 850039522 363668435 884180086 669803010 972461801 96464653 260943586 612986551 339592453 532382044 596914303 894089282 752945819 586552958 807717588 859793100 424280802 514965561 537885463 464821280 608861485 663656429 726677024 123652727 270100780 327192222 478783508 869725354 558152298 5542089 380930747 593893359 479779030 99009609 871660846 499219363 700858751 512259935 333106743 271555089 60039159 804803867 202465784 481973205 969206268 334102589 823503315 955047499 625620679 551877997 622139572 243699557 753062640 247397429 911655946 687652097 998637631 602417766 368875396 590470712 850082228 296184131 233210638 911419159 472135689 173187681 841394626 646166252 420322128 526396246 159524415 562815881 155487762 768856739 198877473 35509210 194378917 401476185 642723668 675824589 68693715 486774474 490135633 209959681 288577906 149663966 706819086 855683693 595793001 300852843 641981102 611385092 738090521 511399680 903092548 334265265 806995455 524221903 855793649 264136808 713374655 142130397 893232663 947266439 893600465 340625901 226571907 181384440 822296184 942864564 57304886 220148844 950287326 751755711 108551848 767949579 988736167 213785251 983390948 466857392 906530404 645823367 169911066 146456851 219628348 682265680 684132351 360156091 47566635 359043053 148399337 894972284 853926821 287210364 182106258 463782778 265841617 264686422 148714622 132503591 91451248 949996072 320357409 468809993 641833947 723569022 181476629 316175798 541474343 331425758 964790982 228086981 612797534 214337050 100140928 71123147 565534300 852652348 648319015 835652663 75597902 803221854 708370997 975865928 866184484 940075869 537849408 699681109 774184078 443594592 511405007 891665603 408589608 237659592 404782220 454842115 577989417 149725322 18794066 374920642 533132080 315095345 103545143 201611665 702767298 878028795 36408586 346984898 236546231 692810542 207365673 474011908 46052796 519252521 166803819 144720833 180162720 403189100 380562449 546719900 98216765 289277654 488409572 645218239 429566603 772567085 191855706 931270441 747643794 790246530 35296379 202146441 2417265 717804053 393982485 229419723 516410936 939939881 576889506 932906090 318855676 543361823 616631432 34022737 654247367 523694863 261254715 206838598 747478944 552621878 70845749 681508078 880788580 484465439 764867902 989704942 795915933 689775681 654250706 579280476 106320742 525208275 866122669 234914239 271948871 726559700 877176392 191683394 948020220 337642938 436739592 984568220 205987481 399270864 586388993 355756650 580964687 865337563 77271076 844893233 18857740 623145136 635452096 688228000 931515187 159692414 322315927 741636769 461972874 797729543 978431920 256270185 325560578 354087368 276846240 686254494 114947476 607115690 168954244 559990981 187004265 768027700 905754145 921016201 272768987 361433739 132859792 63967402 713048109 952497387 776790252 276282027 507474202 25017348 136985886 414154276 996945343 117005279 623918876 95456303 780381402 529715404 515219774 472371137 690897567 712976553 626370125 749759798 983373278 877088290 949929067 757924956 557026195 288302394 984660934 176116256 284133146 288287765 326264242 249780212 998795295 116550729 605383946 707437934 941792152 215907727 680893215 149274291 71976129 335611399 36296269 84516600 303277592 732271410 566538542 150695484 410397823 611621100 903476299 174139663 437398545 380724907 368912689 405627151 482042225 540328100 215145998 117724541 608615504 722532000 947870016 91534743 185461817 103976814 941853522 75341677 664618437 24075186 77314690 570751505 915372474 282339313 789073276 299000278 114937693 660961555 884213575 492480108 869855011 100244888 409633545 809897007 979256464 566253889 675406770 369978145 374352595 703191412 315931225 679820327 97382206 628897546 359621356 235649352 59379502 449956922 29655522 979056346 609625533 870043153 153733778 790494876 493766463 63362093 890981924 760001308 65459152 427356604 137094575 495251959 434855440 544080459 550793710 942451085 81458530 629750396 226890012 553057545 203379282 565121197 597521551 447669975 294162674 937118775 803896893 429379270 930495340 194529946 776039770 221304230 732947077 481466176 76643981 431661676 701638478 790487511 250104437 921037130 987347368 536441559 709807273 457390774 610253678 711043687 356209970 462343535 779071287 632153533 887904011 613752497 172035168 763047362 94459781 18197587 868369089 567857603 947994365 144526195 907749695 8847962 888996028 758389872 819601410 618447490 634258287 293418853 474372175 960393705 255967689 910287286 150617249 227643894 385479910 430006064 296820957 515501483 924761901 563220865 290782132 122849883 220090014 467298051 764406760 667281976 335509786 323124257 319545557 241765136 496577760 869941303 164422026 723677207 665965778 426039446 142456829 849252799 748821372 618879036 312292440 784350631 327042954 896792535 191112162 588062340 815627203 866406723 549948004 851869340 534640005 100565560 584088933 811821230 789904474 307112604 488718528 538765493 544880248 738675567 486830738 361792015 271143781 797208311 499324968 822697884 329908389 410052346 497712153 122863730 814589925 341599499 22581647 759376057 700860956 300872715 870758915 232082483 322691997 737758830 327516303 695612577 642193535 415919623 471122584 293380265 80185044 346283124 282071539 315745783 380625126 290889527 574711531 59611818 585034139 829205554 808536602 727596273 112575812 314182968 168624125 671583504 408257688 925739879 742799875 111590051 347080195 829818364 720358626 697095736 977136928 437510757 109777590 86576798 284321245 567240250 997901434 546865315 819559683 984191495 183729631 110234417 423411403 259037612 894837458 836348331 302029322 442482690 633230331 957231654 605262943 718973678 357218164 12511167 699294229 491872299 892247832 472065818 803741615 210346812 520027422 283257223 1926601 787020293 548560453 247906966 185802322 661776220 367188204 468208661 295342349 294485377 428099886 952750371 545857339 297914550 88132553 898989805 381811383 263081342 392608654 242499544 500856648 444334886 408074863 300644158 620073797 498318484 37851064 756173583 564025924 133461418 449006468 404203442 448166103 8898603 443032303 986259632 814140937 509735382 171099947 879913568 898023273 101984204 137785022 742773276 826476560 618667313 738799572 627766868 519942587 388731525 19803262 966334240 651979415 892867844 639142614 31251882 692373336 567536413 130654423 393203935 133743619 559355932 712099589 965191325 486258525 144129216 418973798 91204045 1931247 101102809 572338125 108183523 643362239 126463933 349336774 220327423 970807234 379656541 486983314 232320057 347717593 902319512 625465147 167938269 825640481 970324846 395409970 935323537 743852719 770768941 303291797 774080424 218781709 101805665 182746365 846958490 234884875 369240 742159436 892278769 631087385 818432743 90061648 667673593 257840230 652903219 698907 799517195 86731361 585916354 984004459 202371507 464123472 85184083 806465222 937670214 920480561 604126569 107109830 420873449 410782041 860402969 979766574 59799576 884464951 437657414 317015558 455346636 344057248 639179677 879392460 542136916 36034289 977026473 195664655 366242729 927183484 932434777 977515612 938004005 194203595 248754965 627371425 143374206 383790773 226064561 676295809 608630218 245884738 993187032 436745849 725208798 23785276 59944158 764986875 307373478 748815864 465514402 519434755 662969683 276553305 494645698 946683713 289322175 529826618 479410851 596572232 142784285 354402794 870988730 715336807 614637395 64024695 128794259 465480494 267798216 84541093 957041881 652388387 719708135 203492951 74950751 747421802 401411600 905676855 833359173 799587949 531701357 154784621 271311383 571148874 600028264 487436828 657773256 517540675 204638670 314300730 573270400 74618211 569221624 366156985 977184289 664911404 832091669 621344301 504648196 285361785 977637983 34555558 342956983 97140001 60699806 196770384 774257389 441437401 793888501 354116334 254074510 36897665 526826395 310554990 753636142 72533274 639542997 496482008 349385608 593823044 646644954 582592984 979497332 67581191 430681566 500755342 948190972 917179156 486370968 905459230 196509591 40062240 910696395 340110075 502851920 264867857 159437765 986704684 499912906 648755333 923959222 235332382 783519518 370343258 406764842 15257598 20621677 850300537 786605765 322087203 486975986 338783270 193162349 95923984 213654752 555236399 346676561 441291041 693857382 890927727 841172987 292347032 168082853 594829486 165048616 249937192 507004671 628387559 879909699 932711168 14572120 243439394 954899695 700144855 423538418 479911221 352565699 215101523 933526064 379938965 350053819 657274619 601945577 531012026 705306008 27421996 376956647 797819019 770205496 731981599 231718573 399054793 203030137 220696804 525505895 495968328 649752801 257201009 428969356 906787061 310017778 273819066 322946812 202012812 422148642 456846075 45237367 841803192 383697184 622960216 700101378 227465665 230645590 833672528 481177789 635940941 954477600 935940536 907707971 568913568 634885077 28154499 345732297 314046448 354380935 442482787 605965553 118120063 689041669 347315060 303484440 992069316 539745648 231439314 13028728 625726034 521446116 92862783 644761867 169559027 686524989 378963262 486869810 771587974 936899500 867399427 17803322 601443099 764694363 623379805 459213640 240386146 120601485 334554789 420678132 216622730 527732120 699353665 97425522 391352243 502239115 709210128 929215061 334728000 678964737 188158136 166593053 72054824 705745698 465749695 854391014 574827748 3800749 500687402 912863586 381908390 985461556 240842149 67068181 242100370 469071905 101619817 784767963 597209986 171822702 633093701 3009834 539814283 403656189 440948519 875162796 460040192 579451447 714488208 397600561 878298034 561405672 284908111 392491631 919187763 706605618 20851551 504100269 763817656 716672159 839360201 648370136 27007256 447830198 223078307 572234142 257551097 259262290 776968958 698303249 454937927 996101561 847393457 279626956 788962971 191016085 308466365 961561911 958281563 880674452 615061844 227918057 762322878 668734895 891920546 336019891 731956908 927254731 331381663 929957404 886709010 207343074 983049672 802381530 564076528 3437575 986270740 27396916 829079803 734167443 962571799 446097119 221293293 987032536 786097528 368264472 302221186 897110407 730869284 220689534 355302637 726912267 544621120 185699407 499537113 878318103 369653692 249760343 58057793 928528459 594932025 280630457 812966213 341678497 192213943 823902286 958872786 172059688 200019276 545678133 96163298 244075426 13238328 508488991 859598582 998428787 149397532 985489525 754262113 407266265 718583865 549058759 142830452 426822384 321606389 33529592 706130365 8482895 163588692 54338176 102248784 217831792 293318322 835737712 919912722 782315712 811295 758876564 839941836 852265725 26510255 73092940 462757975 199588990 880794839 366804553 532793705 182782461 461343042 456545579 416912888 936320723 408267713 104889197 136914299 978899091 871598241 142065163 726373263 284240351 908614248 229250261 706594628 848014044 45144610 218504173 49791132 421106145 562251408 567245422 34517790 545903868 26170842 939994983 78747776 112048293 187764567 361170380 394797682 798869182 938677202 409950793 915627759 662001958 943776786 441076794 107126190 442942428 792428590 731606957 901056407 513901334 48827536 790798578 430523853 191208588 392948617 896972847 528787364 857273776 414181532 303902881 417839401 70570036 379420808 75934852 338422043 869137803 220179865 855336553 70011067 873370327 772791654 560768846 716971896 682514501 505383241 276593383 672706670 642944197 104730998 883794050 673200148 465221044 527795680 574923959 725175424 202537603 352610624 121306107 598927308 520886717 454054658 503871614 8577834 21679330 400780738 835114735 286126777 807524471 620220277 95555598 419255310 641150333 673383292 719324290 71639049 939846643 103804840 979099684 201211556 754499135 159835362 631736113 484843944 249865252 917774714 759725798 610023019 491925432 813980892 516694212 41685398 548535254 164796907 922577109 14185468 402228262 400272646 969271032 850011576 372835053 188271200 569939894 717479101 33014944 871397518 283582200 184535762 823516179 802725815 887753487 861803014 956444417 959345995 441227970 286371230 782980298 275692758 924662637 832943253 951816684 469440737 3764412 789883197 781892268 947837738 815417952 185123851 344275508 825303209 796595080 507838442 644733618 658578211 496577418 603082749 274104113 953590757 267859143 542132407 219138955 370129819 926622008 571538823 255956855 163861929 360441728 52437959 489149370 388175575 88016717 599062178 360639673 224555254 745522702 37467169 617762600 399198771 50377627 437959889 629902166 433463915 693499419 980341627 4458945 171270915 998540471 406973755 583602214 9619239 244867702 701574645 769058836 155548123 617781863 61008150 236412561 736416843 46603236 249017802 236580886 901963834 698754718 941554176 174616561 684093114 666689132 846295887 277335179 993728020 911011621 288797931 361485220 258609489 25774706 973142625 655488619 484136229 278040918 656098096 359502217 27732004 388943005 186703169 764730766 903556463 555271164 857033229 764736901 557040667 553509014 790697373 71665473 510748960 596769615 364910929 210193259 715220309 901840562 103848235 988556495 151597614 884910565 250625785 856059017 252723958 807633682 895829238 910742921 831448611 750900989 469770684 735664682 990938808 178955706 954331363 292799537 698381368 749709959 264909441 500064912 268014306 698828726 369140967 101622330 386879737 677944593 473603076 213088850 221747887 152468010 669243045 282814023 386352676 345347411 704027124 871196557 44139752 399331895 53723386 57042129 370410826 267027805 607670057 24917430 679687233 584171830 338296991 654042227 256020348 709807688 189231057 97901435 255544870 118849808 68699512 742572085 333148576 647819743 946412323 461545101 219843393 433228410 251006113 564213012 669608069 858859048 556167068 216600304 535042464 155777056 139422721 313517639 188044722 626802948 24285016 84114590 227049089 642482971 275702682 321422207 908205860 779611972 59798477 375227084 804774616 79257345 378747936 564439211 234162829 341058644 823886738 626925226 588509213 687743615 933919995 475834883 405035443 207057319 319924997 399500146 999762914 837627039 957869845 909076259 267327478 295254748 205648574 281029549 801680798 758981527 184026 638260125 59803012 652088386 990786733 425723778 68986988 304231634 43426571 569086315 18894629 300083253 162899987 262482314 293039350 568534020 611066213 477869155 613357120 779469308 726998265 633679212 955140316 423511912 390163087 389117372 251260772 455568781 793118098 43084530 87737274 143094734 257088898 246550334 47618604 788959091 83862467 157389795 74791028 264187503 539561950 868176957 859166438 744844222 292554179 31252420 911531738 34487984 555161795 501125731 313990199 309533730 658647577 46265186 633969467 894814859 594961370 272769649 53923930 796010999 31882874 403135000 221321252 98422459 203994478 437699452 658428716 883230614 263202974 17656331 505777784 927916719 898904799 447328698 624622377 451456642 431125424 537132097 213562658 197136243 156561925 795727838 288179590 127184617 948024647 423101937 38154551 283306679 586895224 750541391 31822480 538449966 887534785 173051622 618646883 683002602 81994210 722851186 858010002 849141544 848443313 136893909 348429988 721884568 92508210 967468281 814585331 969295545 960800779 524418406 730917803 928829829 857374925 24649174 202878297 861883612 415850910 239349425 255914738 430946132 867089243 454601856 732129963 693772951 412486240 703712179 916229596 691456044 676898288 41246262 72642326 877975571 776112302 469576140 713181179 188485024 608598303 619829747 801730104 284895014 509877297 745221975 23154077 898339647 322314762 755965148 981203104 814330383 893949921 740857068 879664681 784286095 627057782 664370741 228162509 178305654 883290964 496392026 804396966 208004010 603711035 518656304 10079232 991837123 819507155 696526744 864470530 405605184 565516108 481045087 233726303 773765599 738290079 993128476 975434207 333008266 377777967 838623672 201782287 680658179 930341801 251525923 919438310 721260201 159928010 790637554 956456415 837237112 370559610 537533166 174043395 141344810 656959516 185529286 176067615 171233892 26405528 966992560 752346309 693581225 957584578 442019252 938168676 861422151 903467793 959253454 296823418 470560284 616653348 799486693 810473257 593225285 222007815 30278289 999017996 520632979 619749128 538017091 852592451 683664145 163041961 123478050 582571996 239355889 977493986 350020598 324007670 660185551 109282820 807753161 426435589 55951299 916634657 669694806 751567051 371426249 219302310 169281502 142952202 909226341 36282041 331300950 663295972 813138588 828638373 110746671 385117358 51539939 934804919 155459248 510301592 589113435 912060664 940570546 283135789 146497308 918307852 590653545 737583314 264288968 65958293 757169783 777181248 89362687 526020088 300703824 535205989 94692200 273457325 426582 318651075 353726079 371009851 645009431 321516027 988456854 426622625 564956086 696640910 505200511 240097524 872649609 718075878 506146865 84061183 479113445 824865660 269469052 405553717 501140855 944961934 794206459 457199419 386300051 528596002 601046970 85230058 153728792 679825004 443181101 156853741 270743383 289214583 408419329 344440252 840949380 390274449 777173221 690694234 563900585 400766704 864825041 976761434 200764122 224897087 272618711 990947059 518028917 525899089 149061167 124036794 370916734 5113350 615419570 377915034 255630258 976764222 100014075 367765125 985516702 452104863 851113896 590660202 561550923 297649834 901455664 261359547 822816261 274982277 291183161 232201538 410180373 603165886 787574250 576899375 970460200 329643387 72010844 202777368 444780309 589777604 92072961 985905837 127428164 395795828 290602793 628963239 753975560 967279159 442613487 138521483 581313254 217329862 254858957 968788780 398547162 204289670 331473586 929571545 303162330 608656077 344628225 821711566 38737436 520877118 327826245 273468626 198825413 748860336 408400629 325488204 700094158 78986233 359666691 898211616 273229028 981032374 71544390 1432592 528326397 909178055 553168098 209979996 294384164 33812793 328027162 534171219 208133530 265384301 380681004 481244723 115471214 957345152 208377768 838123068 40704729 471944744 979316314 761311567 63174706 577650093 171000755 752565685 168780307 946531689 173983140 569931239 305318811 200815931 789442825 909021908 667345419 606449983 785194898 245392854 243846679 359125996 873088608 8013083 810971117 324598511 977236732 202028107 835367381 694563536 271343299 292415942 210513824 403740170 82293813 472361239 13784729 236048332 403378754 793225028 950975784 968974040 139652496 65597891 932747776 44824566 592972457 58545467 12347396 12050908 349173561 369686890 975065444 176388070 372751040 419921754 169034740 899993585 439153988 442477270 322565211 992223681 118098246 550734120 876228729 692132139 764612007 969552831 397491246 924964928 809935661 858719801 211043667 531995867 573065584 300868465 5021000 128735420 119816460 466400196 772517200 929531951 358191644 679700192 909089738 886451399 995667307 875517472 175709729 47571350 677558738 474658906 289918000 935583678 808781248 676553567 921778695 515781880 285169450 629652072 677552849 37045250 515385671 884421208 971723954 32502862 392101610 14630792 937500105 902662538 580425345 20664766 428736743 813497002 483748206 902273062 309989681 210340471 172764153 258184351 386985932 176500720 135912611 693073819 219337972 773075142 957391412 823934868 870147819 481301414 406825658 854933923 183430015 281648139 481756308 413902563 314717473 669559643 982345678 194728600 171704245 316626854 411894319 539110604 363592747 104530092 252639632 319589937 461686249 644176455 956909506 937747975 473023242 618820486 917995221 585059854 379766330 235015772 276294024 547857392 314200177 516041055 530152398 954938870 144018561 594040011 101776889 857900700 765866604 25048428 874232349 832212187 897733564 248985505 327553861 880785389 845759156 330260485 634089187 564615429 658690889 472487940 193685504 947900822 290005389 311694396 527878852 13427237 195756624 882410608 20293480 94410963 519091265 734633722 551859296 96779806 858363776 964835340 19470075 221844360 402394020 705130751 598662902 337280020 774905986 552047448 458675583 469913783 307160204 837461685 446902666 789300617 177206431 88746278 434122504 403532500 895463560 334311710 832158371 348090022 791275742 629659019 269825302 279491836 111109757 7315000 57578483 875119273 335182533 690585567 97136718 309605324 115751500 839531941 908475060 564597803 562551119 980902757 347345206 375602258 416284342 531166581 700656551 207977469 363266640 991529923 289370523 101233458 760478981 492256963 405929243 769695135 963745248 928699603 490930681 786620554 423579663 315957286 442728596 377762906 744895073 515228060 644199700 966533356 525351047 730580752 931623091 927813419 563793707 943871336 319853591 942229631 216044186 222338838 804234148 912594110 560937045 349065155 807376217 687207814 634109785 236781415 31499102 654876919 875990947 756151704 356788622 717934401 808576635 652077530 455285590 987864377 839647958 243487695 884931563 632516107 52510312 822938923 690010153 436615185 610717386 366845425 145375161 516453102 463631002 17264565 121372937 641863494 228572262 715318341 831072549 293088550 840888746 759539290 671573510 395011459 406123137 500773062 561836554 648573786 519204839 525653960 142938080 766989818 350912958 123319849 401172529 200925740 93765193 530208718 747331109 589317438 745721182 169316706 66125779 8402451 367375189 619435866 108713215 362130128 448016292 768811754 605279822 834218019 908993439 739190217 122603313 151060389 699905907 427714454 744530648 1763834 307378342 981441785 707902878 582104765 132177836 214611683 201959578 392358020 447832559 7681426 478615071 206719076 335932083 63771410 532968513 649314555 416854243 61207300 519314204 279808168 267059555 828375075 131031956 867214768 45484562 79822721 152818335 315348288 217943401 135278303 777461036 834083318 337285281 34937286 685532247 188501789 567320581 73858866 961136611 245492235 158376301 142502806 223946724 594179376 453427458 469403352 14420347 766409346 922576820 737516549 244240432 517240588 714930471 745249630 776441846 267388361 861226053 976454754 214819039 224024928 782581691 359312710 456931004 962715635 484515649 183969186 110068373 968476027 482515638 422344055 449823598 344285126 943151524 678686660 950331801 938169806 40971226 967015089 781337064 932398357 176329261 694589971 321308525 523086846 113948272 664570400 100936422 643788949 594811700 110094709 797676574 376525668 558347982 525795753 616879179 76385894 370681003 689221317 818584360 276222740 448013006 549340261 849434863 117562553 377229681 370443640 109912401 598660704 954747131 407526764 473247416 319090507 253357404 488522990 884370565 749392911 61301725 621769189 463552388 773236511 612286137 76878721 56530673 562315549 960620857 281037622 169759065 621312019 383696581 843821062 609840107 491373049 58043527 337981879 939397288 734015024 92870049 608986746 406101049 358265463 361971580 404290499 991943738 440652291 659308215 439367378 260971597 827402715 193722079 638510690 671340426 306769517 632530856 763976142 790205556 425085475 312502489 898812301 424716574 292707468 474817966 13440026 590158583 269171956 311504913 636355889 564096819 255356248 429609706 247008226 738447914 19414145 718895510 274127750 205340548 194566533 955361638 224483975 372146846 744975644 459759193 186565095 905310156 974580064 407008573 589425832 737682911 51532811 973270003 738699646 767695386 273032263 561319232 454069195 360802375 922070433 223664484 893267487 785173448 606300598 124424990 209104460 26429559 292974684 839024011 823808600 726159944 20128446 878376295 702200350 908753783 685479723 835999650 746583143 699081757 832708302 861457578 602896148 399773954 777456344 282931569 743476182 37111111 12938831 680111582 687628629 22181575 86307953 906370897 868710407 525187295 783592495 161786698 932099368 139503563 218974514 422838661 195158290 157910655 243089017 771997629 379877690 104192564 40770462 391816934 379315962 660549155 782264891 183965484 615175450 355554849 92857507 446826064 385417052 971065251 801430274 950132786 131485883 343924448 606345319 115125890 331686329 546989227 761060050 89019491 233290093 479279442 186938834 635606642 695569992 779714564 822835876 888789309 703607323 260203786 833081153 797580624 432343805 267788708 32834769 590390123 981971291 515867342 362822294 681418069 210804256 409433378 820215916 226143418 434507545 955077006 70685009 87427628 849953626 51621762 329049819 380932194 305523712 686594788 315704828 787163097 836433943 279374639 676334747 184036297 32391508 882158690 794505340 698887617 567263299 185280668 582033298 237944300 75710294 978485428 682371658 858627502 56599252 781087168 792071155 121054563 110067968 340251391 107432188 181684466 918161909 77785677 23457775 899507354 212587424 189796667 52746960 232984403 52059534 796734658 859371685 414868338 844449308 604795007 823890093 281612612 287624983 677597875 926886477 209234397 387943197 666403864 654138439 490452123 599630822 78881798 904230287 268851656 169554885 763544840 59586703 789807670 209566474 835875075 830450687 384229306 534330141 235004466 438700044 522927518 763275406 327068655 449601829 101508148 935587288 501161576 151110868 615191613 865180156 922419132 408074440 501149584 704151330 473844412 220213624 483029024 281838800 890749385 605137559 488752661 881001623 626278086 389829926 766765267 264856962 464293705 120468627 926831840 927414435 590449751 451148022 7610070 845251721 800286917 883667687 84619503 611779205 773855249 640924497 320970684 174829991 702435945 216225458 596037595 34568002 485847842 268214395 25612456 363074275 586974279 706679700 557504488 385513974 925916243 712071980 889206648 517117789 220118099 518198265 621985018 824359070 634955837 798456548 330477222 992634215 286883918 906952184 290805962 37302507 120981352 325334765 616369926 862583279 3513061 610776879 323152874 860025617 176627322 49156959 899603455 491080667 368691348 79702431 930414286 976407229 319413599 775160336 819610587 896195678 989067228 269064731 621323268 344237817 887439086 80433385 498832385 410423063 869526584 332317621 707794706 277498944 76232671 549017981 614819016 609197636 994274211 242662547 987973931 543687199 110424251 154466825 475250756 266362840 156971449 4847135 462598281 560966149 880767491 453853488 748708640 282610258 675315200 131698752 213797843 226778316 298427820 378943662 991605922 870701758 689455549 203585217 141244060 218749206 722874869 90315019 745201980 609607700 375597348 697562845 972409896 603375435 350960239 514698050 526490777 961658044 477482951 685757799 344464484 409849610 90067616 524266434 110916463 521344719 730807510 298940099 212987254 847452118 978317405 857759925 23401393 262876169 748776993 292182918 16300163 851629121 931055697 588273842 985723954 144823432 400705195 59299117 481060876 198899837 245846413 129780619 307479358 981354139 104036547 961433195 903597505 584595423 336526518 579952731 905995423 353012581 177983564 724086549 826983456 551889915 595272649 116022900 164862014 50503191 345034487 164559684 306895822 612809251 2607055 429014999 435596763 73660387 162882794 659799625 269836980 472171038 747314966 588895239 163624733 799516696 861624595 706330522 784077970 606143969 259963998 574860497 861999154 254687774 588374891 657925819 172008642 902056397 960737435 131857204 647980843 936732388 273853312 449291359 566496765 999969965 993392835 97186552 712528279 647061956 992449699 367020133 592422472 459379545 692235817 599742921 394993483 457329316 770541851 258851132 216739630 678445222 55227423 834402806 188540271 280177831 729341222 474981118 416401193 824844870 479788452 156366662 891007780 478369081 179163416 405138639 305935415 383070927 838277334 158794367 930769259 928877253 442053202 618049494 551709825 973818594 320708536 305789756 352298715 775021147 572159290 332470103 769464779 374363810 755440064 605337712 151041903 357458026 351008675 312011852 298750556 155628722 38541228 951504987 322008416 199527618 841806788 559127900 274665502 556260825 562172329 28736886 898483363 329038469 84069755 754862818 260835301 597543456 828850389 367907932 531272441 670854119 571285816 319051506 834114884 81225941 969927694 247984448 62923925 676178287 50429 294030741 104228776 349326811 106014475 600582209 296507407 862936032 540639392 28203747 679492377 723134169 32583488 545377128 475554486 56163100 336854917 58191996 679870749 269293738 910134890 56243505 559276066 243994251 253664568 371313135 646989509 923271067 5046130 168255819 937771016 678100626 835380719 93475745 742072012 532334504 351882910 534295031 422670246 736686975 456037688 89551279 666560396 361302519 782055605 456949793 157669094 892070878 170454989 783179007 941964609 980778226 65417006 835300896 979315319 8394915 259457234 742473539 365373086 95695943 943242739 391371046 34072647 97369963 831527487 462285222 920853441 654871343 697614238 696660078 703140953 190981946 607248222 844260793 576129341 583305028 265324090 716800901 370065231 788326853 979222313 955187394 111836475 580705184 691087973 628295138 82569335 422299534 961784042 34265975 239973267 606639111 156295616 352492767 676946267 899531725 925216498 888757275 315815792 679031620 951763040 40416583 709089581 249639273 869719365 129473313 221435537 749942252 176275992 486112900 213141487 888606976 457252970 232180229 220769000 723328863 858777935 200961354 721890882 846493259 154915940 280459715 799203291 571680802 125750142 292165450 700092420 825458105 988648378 205080383 448854982 58387503 481641424 65080321 662113033 398202109 50782522 9989736 768508676 987632528 813190367 223082595 785665961 759394918 421926675 697788135 188426354 920792591 670071894 832395816 581630787 471132786 763905482 266115952 921824512 61105525 179436829 503794905 389308560 57792723 326253038 693745353 587703042 393761136 801412642 551631422 734919569 954332222 686720945 124558030 498750603 910617265 706826973 371739717 47972615 995302278 859229591 418085754 731151274 651008724 987252278 70413341 597494803 388693106 504817942 798069594 730023641 869050896 795914614 644862951 874113562 945833866 220759978 326298614 794768611 195596733 774014558 78757029 289019690 437482375 454541438 761993647 731263104 890944081 970841101 61463909 991534537 957210791 537272991 746957327 702329113 472212581 589355185 352761675 850807954 424470188 933704811 413457308 703059681 930863716 876220348 4118322 622456395 179162868 139648970 197894607 84326800 607330850 77183304 704628276 692232883 819155124 732474983 894647381 72602336 133680559 87731086 963530961 758653242 217667349 529187213 383747505 973292755 83035694 767518242 27508990 349077339 711232578 867366507 869705753 571150227 378340735 507670783 539840023 766404761 140093625 25801853 748711171 500284922 822024304 30065771 504114296 488580695 556729550 929381845 936114922 254523049 836828166 605625820 728740762 762933631 398144678 799237869 727365975 302016811 735588868 717440052 628750271 419687725 51509150 157980059 729988221 703569581 805949675 68621452 360320791 37752090 716948512 759445551 10934315 633063302 215481829 565902507 227901766 440637066 426344396 657629252 63709001 86703398 349829797 648933006 180124625 409286269 67363656 848125218 781164220 102273567 651464040 388062029 510557470 794569523 315288845 206096620 682147568 438124001 938675964 746665693 771474291 945209677 750163569 332432422 373783055 224576825 305697926 974977470 961332960 908954870 975911738 674467469 496742641 531796464 134365585 452115502 632595822 79578714 794706495 755879727 340151830 990863395 670861257 57939163 903957134 604642216 265862667 636337297 598064935 843592385 670759911 476039895 318243190 626618335 505501223 271267977 393980902 746628208 338967476 209633923 22236721 224619138 728416251 840608670 497146208 241175786 51273083 375817225 557384678 106848781 818469525 547582456 213994661 872853560 725693016 236216630 867784374 578180104 205891856 156662834 948153518 694533810 480973574 206592401 525527035 252521673 175378561 37989107 710407152 524412936 449999844 11904496 202499052 808734542 748725362 396999429 445028404 158406105 568368077 78449259 888462619 209437953 911312554 257403296 611487720 959409542 262375327 888466978 531807921 269397516 94231537 303583118 562375336 48258970 163834264 230012462 247691837 646431069 57511249 377685503 576602197 649589418 897867423 270419520 75753042 992127213 484424604 85505510 940430078 871316466 881017493 970913635 798003922 617603018 467071899 473547354 633567333 844599452 832772062 729236319 696369618 117722137 770976430 498222629 146170911 423454812 368501164 841554767 776896308 887324079 995356564 227331036 251767026 873342739 616488780 833108313 337107087 535121218 757405148 947567277 242585200 894324072 457020227 250985928 123163965 537774450 81973328 146745640 21007481 119086162 955648283 438036841 375110613 178007388 453424586 724328473 158252606 169250918 511262080 290736797 96371030 640412053 179982333 912821810 26993298 761559298 985156525 871020029 501859901 217726691 843559445 427147009 789815783 90478392 865021618 241706238 355495692 409432620 38192136 155958401 125440410 535817088 600556512 388323347 829627405 354820357 461766014 57186261 790559619 939861493 401953976 577716537 811081930 766226830 922683265 339108301 892822828 100761297 417114965 20083782 95002759 5305109 986521070 133806376 70883520 776577044 754952080 61681138 325019480 682713517 217724093 469474666 388717224 992700649 579163047 928256475 300391252 436999932 974377040 425908516 441105108 36948774 742906084 257454137 469771379 263553253 941629370 705812353 344426964 807587782 81681803 53881913 430628463 716444896 695595938 694173285 429981881 66791291 25083658 897930692 71763391 844317310 617629375 650066600 61022817 121524443 323551113 721905137 778280521 462795197 131216901 66053940 631101705 241175771 475686593 223787563 999337987 545305569 497571410 3851527 808015949 675560701 563475050 630389772 273983323 62519007 100845161 309926966 273487058 938321816 378005625 147475454 186520849 552416513 865810504 771432231 795910538 202005813 814031578 601526282 873461996 571079953 52956162 64105877 637517391 891196079 587792219 174316542 809793392 382905798 746974317 961519711 312834156 52055814 743058896 581944756 842327663 249639550 136562238 813684844 802397525 276034560 264607183 462375354 760721257 101358382 888585987 66852342 433378685 287980409 363536072 187835384 504316494 989300747 449538830 2988313 890207162 8120540 853692286 220153056 135480320 199260391 420134455 458803711 880851153 877989864 432815568 374381653 758294015 307347779 991271185 748285450 412062383 174835951 852137409 629506680 820094452 110562196 581048464 898230933 856144085 947741682 134993377 774883489 629611412 300547451 122189731 703916206 516598446 435250244 876557600 155221518 890604498 52794380 338982802 843321118 916217719 378259946 58593683 750698607 522186630 967841615 557458004 228676782 952329725 828766381 447583080 285301296 477143924 923727449 238757974 916791698 167264779 514754642 575964964 386443190 144060161 235226241 617073958 70234258 379878365 645875869 682029308 228389461 158572294 61108352 497755 485422919 140632647 215262117 169642089 670747220 191392275 484984370 230069214 686771963 852413112 586879546 155185517 447960836 81774636 501042509 118627918 111163934 913268208 70128229 703744937 509897651 741511482 111097902 266108740 135548809 670281167 758712359 187132831 938557059 143196613 273863329 960132182 187083402 613370984 126695946 965646822 913228441 367391016 461627775 973662244 680676662 504430362 119596560 650089696 85233176 665463441 787596039 395217454 619446268 825345886 681692931 853898976 646816022 884796735 503133886 609325991 140550601 601919556 708684495 950901780 930203728 513002018 1998055 242905940 633305940 745037062 437723715 126361505 997350022 635387506 351766716 670532765 888001546 129396397 44206361 131785868 766218980 940657208 337563239 555785369 774413712 78911331 322973547 95851814 767576604 444346854 408210730 561473299 735855483 922629697 916113588 797741396 144711244 589505688 577845097 894842987 672116434 755491003 741199210 819297332 279970694 115107027 801513 56064870 855101538 315334666 71462837 862818455 871995357 865690532 700393881 256801832 690767299 827960086 327048611 999522992 791922458 913851276 6884884 837334964 343518116 462248659 47352580 760389050 345342049 466990514 346092034 52638026 808579199 221841866 255271465 956490387 249568997 837395729 298526637 88770129 123653115 129676339 233539493 895301582 618557323 665050754 168716612 838060465 803646636 783039815 932728252 22693935 541129962 861000974 498808233 415243969 343571520 977274501 92239444 694383093 581548883 938724394 659289828 693138209 73004849 157533552 243541392 213346344 860873910 760038399 234368363 17907175 849453297 682398752 951178432 480002758 105558925 828982739 245132539 964378737 390752213 289065740 946140703 153565720 104211576 311346628 413034198 124875534 725234857 148073790 731812422 636933136 49939305 792202329 211520948 354078294 772778804 957480768 648172680 138389121 630454346 731537155 910628854 310377366 785563503 220311538 289607050 856437355 397323140 967536037 351493342 428459451 144929776 361066433 374194730 293158861 265962895 175282215 732700796 790113020 395930801 69931169 710317469 535768680 559314235 967525265 14981251 43137721 125277931 667632933 54322963 459700132 612709276 181684765 788444508 496513923 393786523 391724985 400049237 836886054 740812090 798595102 161021860 987323933 339215419 610467191 981727272 370200351 45121688 940558998 881324942 720606904 462767225 376828671 270366683 372506198 788004645 524794560 201509180 750109486 277990226 601524373 199058795 116807712 888555448 796021944 390074701 404564083 352136960 620897456 409377283 662851727 519999254 288957099 514403561 127227958 920529671 965842169 637536521 619585174 449309653 610180831 404560546 635300614 806981002 411764298 930109931 487983937 73849029 643403047 418479642 933887381 874925919 712074215 412434182 251892373 162867519 38160266 924049785 490595235 825184911 569161125 244460079 622266921 296565110 166954630 377422183 959783153 143658514 931739754 28031356 892836098 526639900 530773520 168155465 926976283 601982782 843968675 423902496 326211050 130351519 527650769 215039663 461816499 75410604 868410006 210446153 692780554 358620590 689268708 14805981 628352314 936665674 247350684 419251398 360774221 275336288 444532523 702340173 865436938 270486873 578660332 301616971 508342008 806693627 438086351 663140364 55597410 862360078 427949439 927772131 665323277 409482701 315911286 755425785 960114990 781963522 373562950 367721835 176054237 951537020 952631270 550736542 832844899 332776557 465885429 526957706 739557287 13150196 271558726 82210684 286203896 795764869 658658179 442215927 716340671 680180189 465319784 336559287 225764207 778029638 840501312 864583104 210933037 640182918 960612538 326845233 809079527 219072675 673412969 131037352 408066767 154811582 442404010 682640816 375661714 288394339 908990210 760127882 808753144 691572666 280888050 209363467 764611613 701552988 181740295 271358785 364816964 38305001 41657165 198761069 142903414 337717443 587340728 890243821 440648982 989427398 109531412 596444227 633396431 838800808 562404570 437876532 552428835 264395068 734699551 12921818 574184992 709863569 83297390 166555234 805547338 2194210 992279636 118103764 289975486 46584041 796690111 264861190 455210967 868826992 733741176 776331165 179363701 880007422 652577832 52669500 875872584 238056627 719439310 504207942 851417471 380176171 939233420 655526437 151779425 75312071 307656879 811760021 767782249 20319311 320097739 482485319 33151359 994360509 950142734 535130611 557836637 155066773 874057803 233530643 40789394 632343355 436187739 244479337 915313978 202293493 563674647 28126948 170109376 964799434 99698638 282962125 393319316 138456407 675432052 506283388 353570186 201197188 210109865 191018014 901832430 773629684 842763323 610030678 902327875 106402035 436371230 702029836 855074519 430723290 21402990 13429308 441106645 335361140 647755920 462629337 354794521 527349062 975274831 936546841 708226772 732465548 893689827 984319881 456485543 796379702 733454533 488379859 159022090 193545417 148773047 327069343 594469164 732309025 968161801 640256680 832063758 563166985 31995767 333699996 389992588 833546071 590777411 820528210 826261621 509798022 833796327 310440822 135482023 517068738 309646825 589708711 870321084 397639388 90894887 335579096 485016442 331927655 571339230 385425380 606071993 80069272 649685529 150809982 309376626 441293532 140130652 353650122 832257875 466595411 821797988 627715408 460374201 318927365 310645214 432109981 612627256 957620093 246727430 805855786 934363464 405799278 57529635 349133610 949250705 562117970 478939044 976400727 618018011 159931021 982596943 304008095 944363079 83212206 195144321 387313229 202402854 682748690 952969125 369287146 180969164 513065652 988584153 614622635 504344820 947435412 233213770 41152227 217754530 992948023 777670999 13757511 562039500 671291193 623929488 586154282 427929305 60281450 262221399 479568010 766279425 357524283 358518946 340755995 904052755 335032481 330808057 139322114 768370260 755479913 869271720 857982186 532067599 275797354 527726625 624013813 420731133 567408867 497349155 255493128 782231208 387975777 90591708 438234987 982868858 723635390 143532893 824600595 292157951 259940485 225647223 71804345 43276411 513455425 310073689 6008648 946790907 683099878 410350737 569441422 406748193 540495573 237314137 621154596 520045641 528601523 892533935 711921571 1864329 548829363 895903653 147285849 566215347 172792155 170622738 120043426 548997703 835794267 662928541 35739884 511328856 290545400 207789302 225755906 436699875 767442956 117678708 169278273 318791575 483355511 133144992 360831605 515226963 345958924 307543823 531541178 855886930 420628152 384120567 995314015 576960521 722771022 781926262 830577161 363604364 966177823 265348451 925647780 728355300 56807545 543749859 784038313 175866754 561589017 495031708 616492681 530024375 881824236 947159039 55302800 54513196 123456132 327130796 102517039 237387003 327259251 250611 133933178 185362220 398097678 803502670 822402065 734402189 389144714 657892606 173448204 175476630 934682808 224568928 459609950 667427259 784468277 254932173 43330208 254260556 195614027 34998316 284696369 518165915 452305733 237560389 189548340 559525457 237204540 868803622 517246590 47487699 632382483 873350387 837494165 278972027 639730673 132581633 972154713 145288894 301218984 762206368 230109559 257461607 997576645 278813139 123942439 803998722 851849614 973177182 380432893 167584074 581982069 236090962 612415149 755900474 732700140 922437008 941366206 531605601 139034750 503872925 166998853 110838695 15414678 816223789 374275447 930671537 887047414 793828399 216399132 389073651 732052316 155479681 973781696 549782693 414120315 927982140 776742448 512657196 83511847 983869025 496840116 365852615 153865146 203241668 134541501 779174850 659470704 702795308 12758599 876773381 795422430 845524351 924451502 346955019 796392349 449624141 131682610 216383416 195421400 674486722 524131736 233276148 310006629 969870913 532571495 997533353 920773823 245136496 246620149 443050732 60141 572672643 701237703 633113402 684796335 3843730 296625721 242614605 658030021 374781880 36342 318953374 676576049 191624768 29977602 498059120 915112978 615763476 825909152 423569368 645510779 851020053 408662679 937442899 290208356 704919850 604701614 647998023 96027368 250819947 476813256 875486247 398716056 58573973 901738705 608812205 103504138 72557981 474403061 721342891 865014297 646535272 143468192 401079121 892530318 175436565 732770627 793571916 799752757 631106666 20994586 151077763 777964671 73168526 461902809 633069915 884620071 506874351 671770920 841575121 38726455 275742865 223755767 804106622 716513596 321551957 893664054 612383976 699617782 680574881 648835682 507698057 292879846 730164093 610017161 936448329 202027494 382116430 839986013 727699128 523658002 898590983 60521128 36573528 116343264 372390303 38260145 456044897 387448936 373027194 857527332 615660570 994232055 40147584 130092648 53638395 826648445 339249947 691553014 401355682 151634383 78532906 391932309 851069561 731269100 858468520 478038652 515052485 782639709 812111997 518366407 730810445 318596799 661679608 277453793 886688202 919873062 817637119 939147722 298713584 9767872 365660893 954554 672550866 510406697 784023886 589467386 239912842 922136813 367750188 294969665 644814172 726573813 638072012 749582894 524426698 308107303 751621523 915615675 166779269 262632321 132216455 388946689 316316694 707652768 737150009 757832291 279731417 345820057 833327263 654411694 299057597 798563213 486496081 797269030 459859354 545963982 871038833 945910327 476778364 460099178 285816955 527318509 87857890 209578929 616899002 381967461 506981156 95372976 978053806 155887617 200033484 728119829 865656771 911876164 912883993 618967515 490413973 158728593 45062052 407489038 898516013 304510630 674635638 866961066 826954866 260792696 171284387 750119468 666982101 379471298 907127590 528830959 964381941 883005903 244809017 193850216 669947713 249685576 509172535 245689400 270036848 712318603 951968012 844705666 616724683 304995515 241062600 329621106 573115439 487710789 514324359 984331802 287254398 107435403 815089352 790984477 293411924 753314475 26688682 197027213 948565184 570587099 52050730 149851349 958802364 911693050 24029134 265106947 251341620 348195733 820817551 311208005 893513292 788707841 751080773 665663794 834160573 226852340 205036348 37511820 970836894 902368833 887585056 86273228 972882053 276240303 943188302 802860524 673818616 172707957 267320281 386070954 108522376 991318992 513531883 261267183 861222528 943234606 15008466 614027982 630971971 281947507 725836349 159273694 198870607 916999889 894043014 753038165 584988500 76328281 141434766 614446014 800240707 213321336 234897296 610385283 82147742 238357367 247179730 473067651 676010171 266265511 998811298 569658722 622162840 869863462 617199674 542831356 905790213 177841425 765029124 87513627 292917028 727600924 533578273 197031350 139091083 592802762 969724481 61485346 482955056 448209885 963667264 199789708 939580314 652407611 284254299 422337413 936845416 354366105 265208301 290211147 332367900 223916621 168766968 303766214 100593194 6355655 183075394 904392338 92747559 427094945 883758106 315287146 689029733 494500494 39658098 670237676 33352907 200208262 549319423 468545425 563254526 294059943 775683242 182925011 90783836 813204812 445114123 346518450 937098766 888057604 679115248 7727367 448851079 364103290 483384339 274943547 668605535 529354781 874143193 24529410 750770773 733769552 979309730 996670144 596364 339528191 918945370 850483422 573151410 567334826 445202092 343492549 182264580 580053893 526784366 12614640 729824709 846069986 490439021 390485019 438629570 654375520 104265771 485799127 104775795 959406021 547920500 292064971 860766401 246807627 959730223 527927506 939279671 778081932 496576987 211017299 103662523 503774512 740421076 468305481 399153389 290518793 263088286 968483827 410191934 146581747 642090269 848064921 417241575 995829336 907061698 478629071 353835189 551400493 611794572 682199813 679812406 563318309 404297197 266675380 183681285 695834985 164750584 260380291 600101147 796310513 582829169 662399327 419801183 752484390 839510178 499143078 75808642 511717436 11410796 352139478 338291955 727951669 414549410 124154353 470778023 10928562 92780135 485753160 99393571 46832201 353044222 265886269 562223605 971740321 862133566 548939035 636370125 812029151 370072329 95370434 546968094 171428472 249145814 382255515 818457730 439843302 984041506 200134464 159454547 201305021 644841256 413956217 613286336 144850308 133117029 359439905 636323840 625845076 528933865 679543797 830000277 452905923 912476116 194257156 372391655 609779322 720139658 237759603 95792203 569985300 601688271 276616072 760453725 193745937 672116312 427903905 587664038 681591720 74819485 778455846 943948367 492846690 396515739 430475791 193639232 561013876 720455926 13864754 978056208 249373518 207883013 296265273 495643357 366116139 185876100 156445960 633145738 722466183 653232774 719506604 760950753 806047406 577459074 780527337 306056643 702560227 288708615 612553081 905268860 186301021 677172598 202332884 464403409 638241936 130282845 981252500 717583839 313889925 471584279 153211576 9389388 415160383 52922544 668180438 487044208 170497624 917983660 980589487 579953195 698792816 210406674 10972441 612447554 290218796 622748566 57392055 830505381 93453754 279686939 965103737 765887345 619768847 747440239 636149865 442296777 220037095 117588866 840671397 96157398 382353250 972797514 758797346 945470371 132828721 199442717 210174773 713728987 360792234 977902963 689434965 770052397 800317321 705534962 775405018 687230813 597792888 587320229 309968686 802381213 218564876 371033714 682214495 563028851 792348203 974734882 777326355 251294246 143843846 505877691 265516436 314894337 433733923 626992500 492225882 172413114 252076266 865246142 553839681 321361442 416516090 403165499 151362322 751317255 927984886 479800973 536997041 385747060 815170575 508530776 952407123 69047104 421430889 82830591 411034821 347993064 342198245 243110288 318681828 228814451 869387564 468161063 507783044 646848317 555003148 854949157 660709948 742528937 578255329 427171454 782969980 719307224 76685878 245623441 104898698 468343329 907861007 267658207 774066591 964250939 997393331 549637268 476118371 731382246 564991201 378162583 686035023 845033210 340263178 543190776 602881176 469460851 949470233 520100437 116191105 414523332 853699760 943040480 768545342 366281054 986301169 205436982 759363444 743798270 937183441 777300135 816635717 876835572 258603852 203830304 134259109 13945661 648751388 88242661 409413345 39754178 210155319 242745955 638412429 511366455 859419329 705293302 499272620 534150500 760037956 795090334 172132260 134539961 989869027 585891545 283393468 12768081 753244853 486789650 870414417 493696550 960032902 8630107 4255416 750842739 647395252 836773714 56037824 696804439 645985870 111494953 435524457 353008794 54912738 127368388 194076558 666141599 911792974 686159371 843383775 971485217 726684686 391853199 876888673 542274902 750760670 596129508 884088583 550534330 306918000 206782709 663010934 201000385 110372800 176275269 197924108 295792336 893855449 423934009 589095345 586065719 909470867 835502944 710404007 30253248 320408584 437119434 762348480 727055129 29440071 456769002 32530803 822650148 568666123 872706011 58233995 703208515 989617678 672720526 610623647 524687432 976173908 561535037 201524907 14426487 855325883 273060262 603365542 370118937 906833638 349863694 737543862 471904823 51400392 300574717 668388567 173137517 659845258 815251768 60932062 916198094 106594973 495264242 536852013 735750131 873330853 520568772 663261924 656161224 416107024 721608033 390858097 57838532 657480968 733429903 107100085 524952055 838284710 971547030 59318518 389933476 362304698 433861414 599931313 505230271 510230351 830927912 897414346 137893791 386862766 741822356 131072781 238536938 932186680 124029625 974704678 801259522 944697238 282357668 320264244 889500838 572899329 778977952 401615467 315036466 541747353 5967905 158000865 456748492 818355970 625955407 447549452 487545516 25393775 720372745 603874404 744874807 84875247 91816866 492645128 692214371 371609251 817437365 878797201 325105556 198203047 152358347 547045786 577888157 743352635 116663785 650416938 399623316 395631876 602737118 952186771 423421316 862019369 192295021 20655956 91890659 455848904 495644550 160989497 431333686 994401381 322410298 617447526 222490853 543394446 279518582 622075242 382098735 83976815 479470197 244215074 415652822 530889404 88350446 548284084 925600097 183254481 502437201 569764944 720676101 824700780 705185717 628355610 140274182 228838746 185726088 543924010 368946500 371254083 150540557 434664200 640603494 851851878 598545560 185809613 589663650 399534031 122175045 481554538 725667627 402832655 701484723 947251946 863785093 395304793 157930658 67049600 450588837 753150372 249534777 269699351 836772657 586922809 44837218 804740436 14805040 833475134 254081030 756875961 239933070 787495363 583560184 281631755 881893370 780920162 126009575 175059188 700213424 296852616 605306057 908817555 630552157 533169459 574415658 139148171 975822177 586654011 950846546 214677427 387041519 705908127 769421531 265431340 70407165 154865003 528210267 804402138 379975171 376198292 72501695 424788349 677856796 75875774 602603960 70546078 622414919 138010567 173501423 561346574 40450748 733769219 557669752 582975795 34588545 605099989 719894104 202236868 812830766 92876782 568525032 838276075 584814029 622257160 262858102 234100854 456560400 725903834 204286813 964123893 963745091 776366095 14231220 109773190 611715144 912532376 173840709 148362632 547984861 522615998 668109309 929774944 681274049 410465134 342443098 664204251 620403745 445597021 125674130 887149417 440558994 6044669 257875946 596514189 433961610 320179865 929359190 148233365 664838262 355928430 63933861 947315201 521428070 849273454 822208516 844617475 458698046 826998490 563354945 578755569 632372782 102243715 422619302 539700999 512400675 252021150 165033663 687889482 997402513 460221780 63959974 775589600 753600734 26845680 554334612 982207349 338825695 511895778 415854860 81711285 678406965 961312607 565742312 626730601 185896490 890519304 91162170 853478182 133937023 220141202 272178745 769543358 599950215 883511837 803476038 58905116 101922978 548816988 24967026 527283759 275301480 667887835 277699590 869328737 816655916 240767924 329525922 336362355 530734627 878889684 166296259 831291075 624199350 342200975 903827454 843015884 635917785 9765901 746253991 448813830 303283866 661936628 942222123 49926272 830769432 36557181 588664868 149464435 954679917 795128216 813171702 871767908 238779958 482467842 786285228 291455587 566274232 402899928 51059519 558675469 518727734 599730715 359563225 71826360 147888254 721948664 694220272 620224989 785905618 816878829 349156382 30624638 921828654 883616850 121526901 405230970 651225785 912763336 296418109 916848563 306368627 147168519 722461497 61325483 784213731 223007268 351280720 357490299 594205410 502848604 343215446 1363828 355150599 507989121 825280986 995295116 197247725 322013778 748249667 980285682 97106445 343686414 334048801 371979204 551988220 555760467 69467671 554462847 105536337 939590088 930888554 932879092 852545255 388271987 867481719 107629859 245952511 445193595 286010121 761814639 962243079 476806649 837918944 414864352 216781162 226380068 129231306 985011812 943495681 624745748 902961310 116063146 676966709 280837837 591341659 128084507 174641770 265890728 884047143 524468404 760221393 351947492 982409976 509985798 333821371 466606508 635685110 172941773 203454361 517128004 737954885 585018560 86123476 533955648 193244580 343829667 107062904 329177762 352340617 342476290 411606223 124941793 854124109 964972560 285444250 109346148 895444054 28043752 650013776 927858775 859326728 660493237 126200545 578809993 192463356 353598717 842728347 222395135 96859926 57874745 693682163 761810773 552112216 319417585 104707197 862525936 359041459 107151883 179625963 684342153 816042586 817356831 903880107 424085194 929398176 55523640 777836273 886193953 103322444 164367491 318002033 613303603 408451619 451104797 667531882 938952154 543615632 455138484 599493823 471540528 555931588 642941971 58242200 735340144 784000686 256201295 216048698 309084982 940227575 440753568 437502058 360516393 970268910 470520168 27162840 908941371 489504318 81110320 693313167 491128703 751329089 27258281 478039096 292330613 387269308 707011254 510949437 440694596 129201087 751869722 436636158 185590134 781320880 286654195 282548708 75286542 340350202 696701071 743653704 269767894 154427001 856305259 568159900 207195715 370051052 55727130 41507787 922922001 47292390 92819074 71581376 71535325 498681475 241365779 685446618 479707973 171327636 870763690 86872175 465631749 621302696 961637529 558337682 2302863 589919930 454037603 731444803 234340231 155296248 987782327 500144878 297161301 92000235 474513712 796340853 857896497 400740431 21964149 52793453 435667603 385973598 706098605 705110057 191463568 455045868 579571205 844891689 230922489 748363418 577164863 393882829 515392678 864867743 351632861 328650284 538515761 864856385 602953423 915432021 834305075 239148116 63464462 42328888 272467508 236023642 378989264 694031547 79872653 706476619 388438216 41758224 228902698 890570854 561959493 765915748 539050130 127647051 698418584 573843478 477523507 706284126 346830067 240297575 31471779 540690511 102049119 29246859 172341068 290302107 577238269 561908697 446333930 332922103 443268300 667099753 863994140 784351563 843726958 169888138 765172118 89863273 783712357 173426277 19638835 374911982 130936155 104665394 14858310 79323705 355646318 560101938 746594347 553480080 684484538 563328691 275342053 61355927 247619332 127595080 541705838 673483590 395879659 121411007 312018589 845699339 995715415 433981494 129526669 424526077 621003209 26135253 89438101 746941801 538360979 655005535 725082956 505433258 761100872 553699966 784144162 175989901 315999515 488477457 176710986 858731378 946048061 994590506 696292364 415559646 71734491 292686039 241455970 614808479 531102302 80022994 779862504 896735040 717288316 940625020 615579 460989086 115562889 648480565 158235415 990018707 408915976 476231619 9724151 198344170 312564113 18912361 541204517 455333290 436085155 149397418 930439068 791502104 258544580 870334280 905084970 78181839 733388262 927850314 305082493 88606852 686990348 789062884 595526164 409083386 999642075 544343088 465470217 236125508 490644549 717509974 953395222 62718880 758371167 884288513 633604988 24546384 215877455 273442841 354658045 441148979 842572301 906451747 381092196 69561515 951341906 442494472 226920640 872113341 595070920 351785987 274575800 47596609 630688650 547903253 777017493 648778779 357206473 422026087 41565088 494216616 399416196 906395750 360998173 511182045 89915461 479910800 443461994 144349463 835886645 689193416 676412696 157954996 947025132 430811285 437990577 18908770 996839039 560048050 611649914 40265913 121968106 782705996 882737623 295448020 179122651 749294143 921574181 522094806 203552769 157894139 997360415 730205479 175537159 161651775 532420853 268159101 959116030 934454577 743426842 540903186 441251275 367249628 207207238 518957258 374654262 54459508 872635891 892074858 761340794 990894392 598895481 414597361 709927171 759543017 701859575 288590476 96044787 537045417 10667778 379136924 197623851 934097667 281526503 233862344 80396719 863631159 152764575 379877342 921281952 424379231 163204448 522730022 507112076 159654301 170080776 296509491 434742251 873017904 809385779 139560229 757224790 931699256 558328805 336326447 488691553 473203306 251410970 182953323 944824687 370239177 115377236 436100432 428063584 438998716 362815735 261298016 581816141 104432872 662740434 398026900 598545248 535587969 42526972 526837568 445456429 640350407 136338478 868847147 951969404 566648502 16670719 698310776 973945190 626489969 634411324 722300844 109152967 825314090 760645385 218808266 538376641 298338465 372567090 191807122 775985953 700849936 801249878 901821353 934295683 952115695 262126575 444116271 106120220 991433373 758626964 964280876 33303822 393085621 959433753 608891776 756757981 30144738 62497518 129047609 693835354 23511691 62015713 20368797 443120415 254070929 741651083 483329854 85697627 321274959 808760239 390361625 482910654 904716648 267184823 242207517 93813763 503515449 644021232 196404867 11118833 911459576 561114970 574071148 504622044 146127056 188568988 223322260 946510987 811151551 830629784 815845186 103580065 276323735 762757286 311150589 756769489 849494646 298619115 663751911 292269763 721428438 495571591 2432696 218617361 93717805 201680845 497840822 57754134 320237515 359265280 750423548 111129721 810820204 680540873 502653034 887519470 31889210 528088049 397076969 418541872 261689199 589147760 68855813 35736796 394746932 182472025 624287617 107737115 834862897 338934944 429142575 190875651 924705647 168795029 208436706 853946936 145852540 239660038 707408501 845141113 358436786 967732824 191095724 707176043 576737733 718637178 774965573 332459204 610565910 464120699 724895985 922507186 28707507 801770016 961274262 605319370 243334227 56742990 910978366 846211400 363981223 843537231 274390909 286777873 688165163 885766857 142698299 585768502 810701191 938438267 13666953 488565104 374442079 530682997 208014431 88420219 90653587 237533122 942423852 273209486 221000710 213170807 720709071 778027829 865350037 832433419 242376137 233105688 526451272 747644191 404128730 349149436 601189417 618370528 110137846 399438254 664048718 71095499 376603417 75219114 781310835 438804514 335240413 809223655 130758921 625464017 432584885 995478079 455891491 99973356 543354993 866723710 824311931 499392548 315991223 475726221 13187771 324416837 867402742 618046214 417249867 285159669 492245425 299689666 410999864 976516268 954610712 961904658 441134450 884232510 979266425 393943153 585258606 660255891 851596693 344131859 281306776 606030018 311343274 735920824 163768538 131644570 813581407 726689062 851340625 852928620 606895224 378411686 704325647 711426716 815390216 266823242 957574583 169634818 725086133 669549018 280794663 681807085 977459983 325162460 983539813 666312919 419144428 932847863 825580165 68908887 30856757 454958335 960385486 985514894 307971181 248276759 690229706 877425026 523088495 62449611 632202456 827570862 260210373 993639876 793442099 467697987 693008313 58853840 602007634 306325910 716443334 951515679 361675103 987341474 253072114 222402373 298162977 55459416 983992317 702753125 876267298 781303817 88875767 238513432 375135350 273695123 697135721 521833837 947339479 107545283 523428141 500849049 768250892 118576713 53455319 609122611 376717276 251501542 433105132 386027806 467511986 218846471 174793284 68189945 855042215 893029216 511083712 354425446 364366160 732639729 450076456 259559846 383408934 446596111 988312976 953270893 404576626 240287415 395310744 977868524 16837932 644439425 826819709 589436534 52515113 263159015 566337510 801063378 126993455 808486630 122951079 670183996 500180247 798911286 83253453 517947473 231756313 707879943 299643039 713737246 347465763 665992098 156893998 551282021 730926475 424914455 972380079 142073654 122789710 447060789 628610471 20414668 412872873 798022600 723998943 475267739 117069752 22998125 364768395 230616100 470913144 483057866 563011850 386778764 540054643 283481723 569810656 957582297 792641302 775405716 380906783 89651080 383678562 456082143 947540472 432557329 10429342 293545754 988050717 675475875 258003188 929126547 690650897 797850798 910741001 726521804 72169753 724370393 576833964 450793788 176676580 225580064 720104251 201545770 210350940 212569663 566203371 813617832 389253486 923197358 838132640 707560174 836406669 104490056 321039946 928691384 102725950 946182284 289261161 878856628 915080372 661941383 12501314 471568770 444294620 772145556 623141510 253614084 59607906 912519632 555086201 42204074 91728032 571647002 547358736 199697845 209255259 208248960 983696583 467342059 865113030 26223385 141956795 955620116 873144304 404538839 426325180 90675542 529095006 770554383 493935127 176962544 21042487 687758336 370847944 798515024 906633282 268586077 922259632 854621167 447859573 821968692 510302392 535537597 430158792 368174327 648751309 904818418 717684317 610504984 79924239 449242946 700879999 443222882 854801903 548860307 282407111 42625865 732675984 478593874 186117102 669072976 249490147 380668242 237405062 476516112 942764272 282982269 892788953 86926636 854369699 121011837 377141610 599833343 208504292 824879494 592234628 608128865 518207783 318244346 253951795 845862264 125680225 560572514 586135364 105514299 972128235 376685387 176028495 305104953 609660700 321740785 275321649 710439606 687574664 925616003 20748170 473256204 14269789 549412594 587590235 603062712 833267923 278367132 634869665 112686950 137024780 317269558 726045714 671425609 462229538 519547453 896277346 700186233 263555902 41194703 860724221 568388360 987570513 154129583 425897251 110743303 648230786 377517908 943329238 150890564 157017887 842999471 149278217 948970684 483928712 710196449 82941555 219578918 944675084 501929292 944173753 511121670 750790387 901548080 438402164 209713213 903183610 646911627 462265940 58871653 99781258 57743661 70161863 885214091 398896876 155145482 771131231 348271889 781403732 41560594 346194651 126977878 631556378 858629432 654749586 813196386 898942851 402168008 433946790 431213260 210907931 922959315 764919794 178251450 968218033 453685453 525360037 306348959 608550296 551389479 410494359 483102244 569370131 450434780 470716197 276457339 847226391 592436653 927251812 918196764 811221592 774958645 604261084 169180653 350477450 100756492 301184174 955065917 77010789 91548419 374454732 696627325 553069646 652326903 775831275 207301826 943403147 760853305 240532887 229037251 31681984 291358866 876930747 133457154 270945301 212584623 672420611 199058457 38209479 970114301 515026664 496647042 132232788 39883746 142894763 129144247 595176650 673658955 719287214 242120611 465764061 139039673 332317851 345395105 593373972 993494675 508438337 146838612 546330536 55117980 25684169 428527338 166871994 894395568 261311718 338551139 712329833 62142402 888144685 417692597 348352818 705568585 372101482 404395406 63544657 337741838 660070333 390649820 656495014 611092786 649667395 886600570 429618176 265213162 694490527 111654545 736788939 901105586 664612747 770379878 810947147 694698427 393334254 93292075 513050945 756342403 203832032 112970372 945283066 852005003 531279065 596897214 732139804 941723750 857257480 396259240 812760130 9451013 778931949 745417384 414286372 651495084 248874595 248976750 110386452 55347718 229387581 65292848 580323450 17546271 323999411 747899828 394767012 316256998 890140222 111871932 842124451 102792293 689404225 821005018 197664939 175245434 583820163 560895652 820346187 108825585 660604186 398726647 709733771 747195253 137104109 517518704 647993020 672121248 546087311 296855195 262943651 972635991 751405245 378491674 236131929 169379941 130709666 173323529 648647805 191492784 851042028 618601142 237058677 405005591 524059248 522161431 796494600 634776211 643620762 38890711 711081477 225003705 80710258 281980023 420106165 92082504 614432754 390741154 87802224 103092399 672682757 231017716 590590600 180711095 562848769 70894841 799164773 916515662 277653766 109850779 769294270 547889993 663613090 253116306 11946540 440993330 399406185 1772000 126252238 161189661 565957751 680397013 382566103 717316400 312350488 255593144 427765963 412042609 35702748 374197943 310316309 405331924 74712407 543106561 861925252 520568364 411021659 917812016 24577247 965621487 106525015 652538415 87661060 679826969 178134572 819212891 216616062 598476951 3827216 680250613 363525051 58487153 647485992 278996971 744521557 662501277 239095731 360551602 438389917 402830430 950573026 744583254 738482191 801969030 153995910 727465742 600268360 52561937 695111610 769061609 852978488 312973943 509616383 464062255 144687280 154608400 911682052 830496114 785819617 70344499 825655196 195722750 579503064 713407296 636719635 245776130 787159004 632506555 899461318 141366031 679230655 781656087 954954776 931011815 141333992 196505168 147698259 356340677 219108793 674484314 403746739 158879099 109500512 7807788 318711448 738097076 470626607 306365659 621167543 733421073 680061702 811899846 569991679 820629768 954791019 10266756 978950333 188520239 809060385 279567991 450038490 144000571 180894331 681623514 21342215 600448620 443749772 12065498 970096089 183885112 966697563 729320165 580657282 859840064 890160425 339464357 321088928 861816067 750323441 954078837 684372498 929160578 111117071 877871793 758541408 57214631 731023941 309223571 743574419 213722759 341024852 747779211 80906820 206050163 108812926 969561131 503614597 527647674 792285313 675058786 580323538 179958655 467545409 935069184 682175926 810885042 988387330 329559053 165965530 190611231 783794836 622502581 753812447 629677888 219785922 651501637 290538476 286391393 109965328 828019377 287385235 824281220 461003168 895955221 178187220 212798646 271044077 468681762 123982202 888475437 66091624 791135513 917598927 52157323 30094562 444699169 739869942 376856066 733802338 995000184 479064619 937756895 58586560 352753907 668173137 308730734 502127558 69219363 404150579 296672839 902763728 629139871 795047534 119278505 198146681 232371057 770445445 152377625 365714202 64815133 515430234 860910938 836739848 315109639 128602960 335146532 253166474 566366163 785984814 687318146 498027662 118316646 763619589 135603977 17785552 531963316 941255420 432193735 530213958 395579647 602994322 825412578 480287898 408867678 232626970 733711428 773935587 690329056 363610951 304295845 446192051 937632771 137141657 58575135 444118739 323813597 598253099 364518039 917556524 211727891 702259797 812334031 827673800 270766035 557676015 255101786 796386922 823200807 355259961 470625398 823943863 744791408 179738342 483503447 61522921 362410677 778020494 589843811 948694911 435486429 191830794 163435854 173006336 920483966 726552050 268254661 157607930 253495858 661593297 484885639 896960002 277078398 781948754 383618716 477036262 108081134 150030428 906299227 30136864 478130555 106353329 325215750 342071479 683172930 4688464 488234021 737310660 880694276 386645086 856935435 468199231 609740567 139927295 513796419 623604683 905957002 924677701 480539229 797023760 654566158 784271012 876798841 739167196 207418601 899185393 83059775 587634466 37758260 32644183 40433242 85162160 233936421 543968532 834334975 910530021 343874220 928337393 567992244 271157926 98546514 925780179 431212665 402656634 627965411 98817496 598100590 861528224 211785393 176885396 753345612 418236308 629410332 212735501 862143130 584513644 51204478 982037514 870051968 587651345 45112392 170252917 811998270 878577214 650625800 589894684 637202717 928910560 566247288 753657518 655153088 360669609 910080069 461475336 719045316 33090358 374780544 605509386 799545373 680326517 32665559 884214703 226672576 932982897 788328114 865719005 250457852 970653745 672944230 676625195 995869949 593086585 355487018 197705781 229433058 172974935 455076630 926435481 795721124 470712703 87151532 391491980 26812674 461097718 860781307 337664129 343616045 410816234 645672387 636681509 102067865 656144723 655434311 99021803 674114601 536021280 787814546 467047521 484697418 148346953 46300400 481641752 500937824 139196044 564409313 382439490 658350250 297412893 565584554 486137527 307913772 957848435 592136620 303636106 269595142 78053940 499862168 7521254 553034909 309365669 366847238 267347242 982079822 985747107 487882377 569457946 725073417 852880891 767004999 143014823 351619774 349893175 905660199 665588283 893251642 886336669 274888891 84557211 659264979 713167651 949595564 872192719 84906115 821871104 968126912 558938539 384409256 365368801 422059603 318982007 970203698 479019930 192645240 237942522 817388463 996400693 200091291 501286562 581584474 399070394 708676839 468700354 462141737 586562964 851403393 795864734 458034948 558261785 903859342 257066024 603672357 615245383 285873516 860516116 440346707 599806294 399761944 900358020 503740122 406436176 86903567 44309302 600688956 596452943 634941230 385327167 80549581 610631396 809859355 417253738 873227221 991110537 699415806 635375037 66584320 828679616 511498883 569621644 759573028 43544827 422017052 824638429 19994404 158776180 747115109 171585368 607558432 503742919 335584049 969820374 731290691 122551526 764075192 812942174 74733489 179621888 28553940 358010576 750351638 694684422 181305636 283121493 1901669 311835029 430736047 924613490 109473434 852175384 700999989 175374539 237577428 726054764 403439423 950214561 564241505 959071083 526522493 78932265 951932779 526947879 891141144 785287844 451211355 16108552 304420490 639051742 161497790 121721839 921335375 923615211 535892262 61038510 907754099 260234045 874996910 998477866 823729678 267873849 369592271 42570023 104312348 396422416 111156118 819281615 422272493 281166518 873100010 659396606 251195999 583144495 806970767 909912837 897589832 787582513 45407000 756567044 233757483 855785792 653229811 121326924 479498141 580038897 487379280 768473690 151196524 567320519 582498173 447968527 438408706 570114249 230370002 585391847 708657659 212879730 23395910 959133694 975191661 941787963 875583473 762081257 273185242 666964782 747744700 279030863 350501802 461960691 891661796 348004040 836647522 370857360 68607035 721561550 655845040 261841983 371334789 636273365 495142377 419277487 22170905 610979873 778748723 595731022 282379171 71494281 844940472 391566505 459565697 621901404 275479271 429615463 95404010 657076367 637226413 359072513 777835615 973120645 584595379 539471862 325287565 465041496 636463548 288425320 967490674 668427158 609438460 866721273 979258244 833872343 630843516 729184117 257189027 122421553 708863030 136674425 519586453 94072998 635984011 162711540 883849703 192845671 901642080 478401497 996685492 163232584 737701704 818251742 912644992 745706649 830461909 912733327 304964281 571497634 440076272 833628285 255000778 781586371 178837648 938643765 643058126 709648860 688878429 453996684 297861435 241569216 725016512 457719938 388279579 10040942 801593662 177924498 541000327 515654968 281586822 540665222 767417876 739628698 898374529 693885724 486258035 884610764 618287460 562273158 237796124 913005209 614011337 973895652 782811373 621561769 952566494 547535963 195811977 994671335 838287315 750979521 164776002 239304090 188907492 646427169 235622900 270353951 901234591 334542220 455029048 27868875 741912120 927331908 880677484 598538563 298887231 498860916 905002891 428154670 641776945 610643837 392626851 847503113 315989146 677826366 419923449 118954544 926723546 669241969 582166365 266733271 749016842 292878597 549704688 88383222 449190049 445883882 244193619 923919306 734327788 868255159 163816948 387579756 553703033 953081993 439769689 751962835 591830682 621848597 12236874 916272731 17842047 40026349 107082921 230766861 399846526 900777419 667598295 417838766 12568566 74699634 973488514 117914601 949280661 320157092 842078696 154882076 785061891 903490903 368570973 276508985 694380661 764374362 236944352 763300301 30842964 834622959 645993111 791196572 659854636 765112967 739619252 474937663 962578914 173651535 853002715 444013400 112652943 330315409 480575144 588648984 237559778 768088034 783857297 902791730 904376469 466138203 693370486 943148819 425984684 470298286 494791505 635110188 365239821 446918019 543874610 490499864 538325146 389305282 579282199 79004240 587460656 741113731 491300456 687091731 983175983 642489463 784998820 151749746 642582281 407059283 184268536 955936314 354495039 750701855 768764787 348829452 735572775 348271960 125652004 94455857 810774905 689545127 759069111 197917790 690397901 129410540 792153463 827147761 99205921 330077914 322176441 885489958 57311346 212432735 835271887 339526732 428181142 302141406 59029557 913951368 491270704 443432616 940358323 888516383 98905604 657997188 41818305 526437201 429637559 362509999 779417209 483660653 934039574 376346051 282848956 252784278 624329873 133662319 701461797 401433522 908744948 160681784 919650135 355158682 577772700 744583990 318802824 173642891 985812343 85224885 697051442 221873998 907797811 984821863 320116145 228037203 975336146 684687127 309379190 175197859 573286114 444482721 551849918 652227948 900592242 682156659 206224097 398608367 542597104 947292256 628826210 19847601 610089804 669506808 323455366 147913500 450646041 573319741 324429907 112035326 965997497 503878080 976736389 299471355 71409460 882209177 500558762 503771464 257322439 756306863 303879342 493607996 821867745 18955517 705571062 809687665 169176372 368392954 929938626 597200091 369602363 305914638 530661803 562979713 954217213 612496761 945393601 955738327 155299815 448011621 342949470 208201355 410727762 90909895 837890070 364516718 346742622 925029727 541898865 693032073 19639809 852717114 201745682 203854954 517462557 186628954 387817796 246175238 895269868 919891162 541173332 827684538 629626648 998386010 125927701 3716235 745578341 447980658 359481492 646518193 444521883 287144242 379014850 284964366 155988661 467412661 63715562 122536088 626705522 101238235 455318409 939390848 126975094 850120282 666242156 290535612 525050328 976950112 52890402 56433508 434956225 898788228 47231429 950711331 985110768 182988185 949324703 565979963 101320133 590051231 383371600 977188220 144238201 982863988 811950624 608729131 53871204 414778032 949838781 802820182 570716395 347436159 940627690 3076877 990868689 669138020 468186898 262753046 35411923 537114961 313557142 541229158 254232016 761227445 133030742 165956862 253717533 693554172 976413158 399315193 176058083 779593862 815213529 966636083 582201536 62381256 106617852 255167648 648256458 342021597 175212325 361893502 355699704 776067731 802681672 914950293 447147410 712926491 697688796 979880718 995883917 566464440 283735964 392055174 710385617 530056785 433727149 129184056 744310459 952119655 561224903 224628862 449615038 821512570 451557342 292590476 605478961 881492 971059930 316063818 391574457 51636503 639619278 520001866 805955650 265973023 362885364 532150504 702890346 646315747 302353772 514523238 181343421 417801170 867478688 82040624 298600308 270008637 365581218 279853963 883149264 661707635 605303623 461910570 630216878 351627872 385678916 564520770 783907921 915644492 925917858 169163126 745920712 870012594 480341873 961392526 772572974 212538920 317381915 943921630 920749507 715334686 943262308 952302150 457205014 174238331 869010452 356968611 693325632 550764466 815643463 429688923 126928063 978605095 610977884 122740318 166402663 65035528 468301966 710507213 878132940 761554623 794680779 782871191 324813274 15185194 563796928 365092827 755858705 94011840 15585811 377148499 575206910 287014158 717188709 256169165 877062019 244572139 729954915 553016626 513246625 366319984 547864724 529202056 297584177 910376066 281894850 970640427 196877054 922454095 64545064 923941974 649387209 263111111 198584777 838436650 590833644 173297382 527584297 128931073 27529314 978746880 220151853 660765295 860446132 183540804 353489896 664936551 558541469 632151491 692317445 940488090 257734026 460459810 493135232 460012905 700284950 897951316 157921463 126418159 786611943 657639746 100958859 54721315 189521886 263318438 372762875 905251769 256019231 213484798 510182321 228539037 165852704 789325507 40946568 168909344 713357502 839417898 977480981 294637402 384855482 460388048 971611945 992682147 123163116 366311829 371281474 388357214 962365034 409787651 946044859 79954501 683515736 858993803 857224435 263742452 510373091 209556068 86025925 486899644 127891373 81281688 318148357 508739935 578107713 506907744 910689143 548050310 265862288 896900167 596097650 690974116 581914255 919388494 382556644 414053016 92634758 671773427 321499268 442215702 139536728 162385640 698933373 740999797 81717342 712717752 477235502 229561405 694335882 658165102 437294035 469903172 452361890 736147899 755877110 256438599 343071596 307907431 788254173 645483558 999406382 359100287 382239104 904708967 255476993 688041030 240806412 271961774 639757535 467753562 6916879 853826550 90776519 884100005 379424909 787772703 911980967 619464521 341491471 830570751 205317596 324366124 35077220 624115248 629986972 630061751 517858723 446351285 410641811 7246608 981698029 849580196 146679123 158503169 562423620 272600990 505182518 991785966 774193638 186908029 996362868 303290873 511931709 136425976 656306070 129715547 983637651 178912290 306609922 238678778 82676613 491661657 977434390 28454618 126204500 754043149 708693711 414871706 765746783 828538851 108546808 135656543 827820584 12866509 868675700 330779504 989428638 472759623 683446324 113554241 183997560 282912033 492895882 615792527 684231812 177915217 654850021 212146574 399225779 225991666 593064034 882848066 411248180 260261090 173235223 569350285 926515519 245242169 326658532 96934444 655731463 988687924 966641343 43186505 742118198 604327165 507308899 504806905 102911800 251917051 860779455 861771908 57795472 828996140 245454702 923217366 731298165 269421568 673143638 614190363 726274112 591122739 79692974 405784101 901005632 761899711 708964434 29059734 577369878 253159635 557642376 785555335 31592669 700511543 282186109 329577686 183044508 571600404 351036962 14697790 629825835 258175353 298510540 652372629 448561421 684430872 677037568 723705678 113992693 380638604 643748401 118465571 87111412 244067540 291588440 668278514 206905868 822345392 857083283 389835131 120661619 117207067 79004092 538401447 335129417 340478933 561210476 860555042 648237238 416973733 390038083 261366439 290436403 830195241 324303470 283588032 813405662 414540600 736830553 455264781 991526104 258211309 893952621 476510908 943578372 770084056 17800847 24772284 198799534 276032564 371752843 22343145 462331337 218692410 127404208 951698350 618410604 249302452 491624133 69956875 109625551 721159273 389798653 275619735 23333209 230031204 873622178 670321972 305834581 949495880 925721054 544920335 311687124 322411102 152184594 124755546 874416971 884444608 958704406 61247250 142712760 494766623 815833131 424856153 724020462 56568318 245999665 443091100 991243407 891533635 398518051 339698747 193782427 73447708 325379591 207311788 95612686 27975005 515798132 308679891 575049610 826440688 369117441 311613042 92282035 174361293 15989356 390018318 674298539 44070128 184145608 359426642 558296329 445539549 69387892 823999978 569070884 67597032 441528082 13207390 571945765 186789391 352751493 741363842 343220748 477443554 45234345 250740470 332598693 605428812 426590247 36375152 643771804 320541388 960494266 560695854 341054296 487025620 39467827 494190783 886087226 320093411 619644570 886589528 697912986 262347650 900954941 781458767 368225918 770773531 980295295 422731187 12692004 342665909 787233655 886714697 220123186 327285053 500495144 574837410 840071536 747004518 917433382 776858868 22033287 420615253 781722766 903789060 42023884 856205179 638199914 734508799 487112890 793908000 881447239 50047867 559997004 754054148 760958657 800221391 700911113 612823512 507132520 829667520 772888056 608820597 69734460 871123609 700194091 947461528 76388952 401140265 384259342 192134925 812079573 403345719 441797742 833599271 458922510 8955801 896802602 482463145 633366644 66365735 286759095 506248625 128904124 627178135 140859267 75611979 958827485 672897529 146674925 461745679 711703950 596994494 525070819 783632265 400367016 399607857 813135535 82727734 573421834 685280903 401277951 527852303 953004910 571285545 543078656 824909459 985284616 293872259 536335826 234264249 510005113 632293558 255518445 325486778 687722222 561234132 615075650 577196536 584424266 719015907 515791568 926905377 666392657 801208659 122101914 252249044 243172914 443097939 568550050 620601172 759367701 553114827 189087251 982412239 487192045 794361621 226482915 498876260 731808352 165878913 831043116 564167236 572233565 880402606 300731246 818010677 974745472 538642004 96204934 668347089 992330819 438201833 605206242 824741233 26276354 889120734 288255012 392749786 244315347 291814701 433780613 171969712 144441236 489954025 706501918 731034420 124807096 181140235 227088286 503546908 144835393 598230671 971927680 893078975 523373103 916215376 379427805 213916023 537020782 388362788 629218342 376505403 287043072 549182258 867689556 748104847 425894217 734111890 314539713 513495323 958873197 914249474 950991394 777404250 626962151 636114962 871866094 703544014 807263365 231041715 139951158 1129367 167916699 795049835 556219404 760332565 364243242 67843396 733805420 80917176 338898966 354825185 554861501 283379458 561532320 177280766 911139170 2425371 98767818 624518836 95554057 182286146 50368774 120741783 123936211 148381052 535390499 845489323 53177460 52062298 826756172 106099938 873608175 935254025 632983420 851692399 606673754 848707108 336104016 124794407 782227478 691148214 841851960 127042926 938664437 121732033 516385010 564680146 530824358 585624983 666024600 193263123 117699351 79812920 333172661 630697528 276311818 284105258 281545927 95687661 465673594 111529984 366977070 858760890 980143635 457925074 736627446 57657413 47870684 954985003 581174750 584583429 401036508 258948806 425238345 369608626 261376754 782804725 216777260 960573362 949224088 270943414 804746723 549102527 98690520 41655491 640776472 501813171 99434452 633449714 302561204 979390554 780367172 441546006 954127258 234886359 254396839 366224311 588207584 311841585 790737006 752719646 808529149 644905716 897740807 302872992 156483869 456833985 923473732 268410176 458463511 773044782 906886283 921920939 603467059 516756394 358607936 682128686 81002613 59785321 266416243 343756841 504658019 463195066 682813038 568020452 356075907 489992916 612341410 416989925 213119722 891419623 553522143 735341037 296291402 981619274 350963470 986189334 98758998 55727994 354203688 7176523 359674674 719120429 581334652 990199915 390645719 238394776 757656317 782813268 519567354 311325083 428098533 929337014 623736720 533436301 690211864 591086125 460610964 481004946 354367483 224029804 634420881 612503035 814915998 37960577 767155590 696281936 693664585 903012629 972272077 974334933 93978177 323587253 186569635 525245288 774980494 579479696 863063232 869215529 441874986 663850382 970842067 908420149 415620171 469109417 342428922 753003421 391474181 15371360 948651558 478638488 595207858 64942301 108141315 601034812 130932623 292399973 987691712 238224247 268358005 450846149 813449445 210634646 453207622 66072075 383258353 603137941 576648263 323143539 960419925 893061719 452392201 583944112 418351618 340937798 279000948 65029374 780694198 993703511 578467772 184432123 515651366 868479194 821632322 955156706 344136333 389762064 374550007 227164040 883785671 882118461 808666097 596990373 882844791 662401593 907913459 668275954 236771405 276045363 829446945 969769818 113993336 413660151 845253391 102668270 206665796 848390801 332436320 922974616 214921274 242011978 30898464 1748842 672294564 771865867 931703847 880823815 574490990 289058716 224118990 745943083 691371948 878097004 549723372 158169776 344714865 988824081 836511987 903438328 35052677 301106432 930765847 915617985 893761593 90824192 596024578 452086502 991819988 288920834 965521409 899659246 203400299 352754257 46721935 199959382 642364619 70856829 638394139 2284918 91981233 344197489 138945842 410695858 431452550 797100504 2217515 812398551 279242454 455324801 224928896 832693713 896120650 216128514 394571258 362261991 858815990 213493478 75745891 288879456 887545196 498442770 424618834 680194516 276765049 863636691 463139999 126087107 876516120 839847593 799620124 313280006 226015873 23439120 424137838 548102573 40642091 558904881 364903324 419242309 397279875 408101762 18749383 266091601 47486142 80950820 885961699 278319041 991495662 484729271 267677421 519113967 161793195 857047151 396274147 636670597 547713657 292639807 954199828 568175479 945719445 240338824 663824396 611279975 53143075 997497985 953732419 586228287 830589457 281257490 242010395 567672146 298811211 664270928 168826116 310845324 335680309 459915006 629721275 112451527 756571276 597085873 38214003 692908881 128650335 514410998 617635011 906782381 591257948 98678774 487880874 592995314 287525922 749130450 410955976 119192657 356106173 387550898 226097624 115581595 656039695 796576786 533917195 92126120 490005716 80605139 147935224 295871076 762750138 983763846 67907110 637523409 901190930 126402466 88085364 939341772 755702791 833634337 276507272 459350342 685172745 65781430 136805128 930936110 563636772 87260368 883158827 951486232 279991356 520913203 23942712 969578674 217633954 905760231 548491755 862752528 45364468 785431271 494444255 620460609 526145340 203915077 978332683 788462460 94632788 946922323 410367250 716966523 91198537 43780742 437032561 542968206 333357978 718613051 850498210 119492576 340051326 166515076 166795044 668737170 475073693 491041794 131753378 903673996 720685023 972546429 41948909 3999269 167640569 972937738 798575310 440370656 91593737 212456680 878128352 462069070 452801799 327141178 634806013 902119135 689023968 133600291 336226424 786149745 351263738 808587822 558867982 734394740 851123742 850246494 336577766 112855443 287977608 298319487 585715691 714482075 790981865 727544085 892941555 12319295 683619040 38556186 305667109 438466323 921088057 109666322 351032627 152984258 807280330 649585230 557946364 185400836 79951017 627884769 919628267 537285594 790501683 310751809 622840558 392520365 190466049 910810263 119723932 32108238 652676470 532432662 438917619 41363983 57661093 660474371 542925010 390707472 875666614 618439932 651518335 827015052 886547826 228313824 608828603 401141838 748854333 641325095 823159439 314365914 219909213 979756569 293796366 539434886 424365066 17246240 709234404 870685889 893977422 712140775 384904636 423963352 881667410 598764566 802554615 799759890 567274587 441936075 443795457 362666212 380398575 242376638 980968768 49702310 19996724 905449102 418151635 775805901 565646374 615087477 66406786 589232104 394640634 476627073 113172090 231364482 310442477 704867582 914340012 17860451 401192400 836795052 266746748 908291482 174881074 239138747 545360241 363364993 62139504 618604019 589394303 642158651 485465464 108843322 503922756 422531280 563777519 711092416 187148354 933979440 27681763 564749932 88076134 211861201 686768053 77796825 539773518 534735825 965173227 813601652 168418961 26706307 620600542 613078345 680359976 737153107 91784930 579690450 311764372 503568342 126474541 227211805 92340900 642804836 192522344 205381683 118237669 295704656 352108966 924556874 801841078 588698891 754972078 76721958 193495551 172111964 22652893 78237364 712510115 582918869 820078612 983569051 686538745 32832414 777344107 468440867 822533057 162549801 505512810 408753463 226316748 163344952 502289324 148037172 206236432 673414506 606031431 643503556 525164093 373672440 587318089 264934203 531388756 610940691 922054581 224882158 683404145 90688089 503022787 858382819 909049017 415178809 761272964 849261618 119801442 65651647 475365398 461912652 786661814 577268107 759514469 49829261 586834297 529992899 531308937 675816092 223014044 515379204 876226746 214699393 230462274 64619777 910095565 778306979 502118089 629066028 642649642 748937194 449679552 285952340 306124789 114933418 728523525 284782260 784863329 14464486 408930171 138373653 568743366 460023552 625640564 683504032 3605738 769028284 495443090 939919312 348222879 667994644 826247259 840421377 915385391 961230772 400013013 884753270 15560258 929278536 555323022 39642101 780118446 566544328 724646436 825119394 118634467 940012932 568214956 996317915 606195323 185737596 927970644 190668168 34869656 464949996 198783601 845443601 720412189 576347243 575637946 261935603 137863000 396940105 529206171 74189722 521712266 567681910 308888275 748454809 358815886 772831267 521257500 126663845 877000976 851571939 654011049 78265917 215193708 490311843 283619232 82745716 204629709 180826883 892099423 72892591 439449327 703351614 883995833 991156595 553104598 966025514 27270197 934840855 32078365 503334592 237647443 57366919 765796810 214068334 747182431 857863499 706966392 249210292 995393008 733038440 94978109 684112079 41139541 89078698 25223641 159887357 994125776 672417388 920173074 432382523 571413671 265745755 880783508 719464752 656436517 108823686 426801468 170591242 368074908 886468066 893844513 494517139 985771212 869689328 14453458 282801598 89898695 739206066 283973062 706045751 453360199 903432477 339238486 486588892 550063964 281398643 773380562 401894473 772446706 745244823 279073642 79684419 931805953 76328287 673218328 65788184 243297712 672135737 690115131 946340878 224271644 657653503 328027148 354294592 654146499 437958756 706578844 109334919 454327823 166439139 477163848 489627197 375548037 917035877 148500212 104200975 923214442 501733383 150697170 736432596 102260395 172085411 227311276 845834586 132523021 997643723 799002307 162493268 897088342 242262196 203879638 259012209 934308459 521583775 790511281 605586501 99760948 815100878 177119146 155447481 317442355 197856193 74673142 475716778 20850892 790879915 103888200 249535627 653713299 709763993 160353668 992308311 913851472 535530005 568829992 157702297 167929090 208543264 943627865 958852237 918576327 910687354 219015226 816924106 997210711 63239205 272540499 58836498 410636731 769702958 762203613 30781892 645508667 378372689 224921844 691181752 652347927 431474424 958752875 631527521 952505106 836271108 902024279 986968104 312931341 797062340 295426901 539760992 282807251 865807239 890082024 394845202 837257607 713459702 689401686 117949219 966752070 729299804 218899491 865775095 684468711 137135304 272795799 303631886 788656017 577211650 879713448 293762097 402422563 753356545 743045229 159076407 796713341 22426772 176236274 281337370 492615206 614714943 600040718 415424801 799453859 89181678 358550562 685688552 568040474 537818393 376749696 182174940 630102182 397656444 486157736 923816246 862864477 281056488 660763921 339977916 533195497 563070606 98848773 925944454 619988876 474642411 185393788 475234468 157124177 412239895 642339175 240258703 7638556 149335430 244528369 432175807 921673241 925937755 534975656 829034023 15178833 595184105 63393053 499881702 901808676 605149020 321259676 666422980 460719159 657236777 969644947 939250801 355724769 3434633 264929899 717795757 761980966 921109046 268731664 796290885 270384861 856058544 369446355 198931767 731242919 975717452 890724237 638563138 978461736 781341392 565912421 856608950 983673312 781570333 999539199 979436742 344809401 309058019 276202634 617321432 727126404 253890793 65259360 923855265 230020441 674574869 813709416 292299085 291437088 401986751 515766549 764495239 894558648 710975287 254484283 569340875 192527913 622232061 152068312 735793125 911619075 314270486 341944862 508593542 1878936 777081587 504167347 972872400 291689417 572734434 153949262 746056542 294478562 325400631 531130670 432603528 325236229 571312385 965452414 789271099 503332639 879284655 178565627 797550759 383481557 210304219 644250700 146530326 289074571 274500491 57855578 311804665 682639912 736375700 837689249 372164155 797753815 342158951 6484055 929840627 991779881 800308163 201040446 28061021 882643260 41363075 27609681 66699771 737853325 823090475 366556128 323626956 78237904 244923174 155797944 98569244 105439443 34305720 588920573 142676337 275083418 272980174 227133282 82654218 596291543 732829719 703661654 148117102 511144552 592677462 19597006 393396002 396564242 521422174 977659783 501148287 318984402 383946910 977138598 259429974 104672434 487171020 316487742 39815888 857818140 881925811 222347096 908881992 965164499 882449043 287697565 334723978 96774334 329595887 237144766 751658433 767917233 812487840 18987817 314945670 667055096 403264643 443302644 492271982 446977399 186841721 556990704 597144550 918684228 585362093 847750305 992785384 549785146 64607648 913469142 177012048 264576310 706594233 828757321 35187861 629033899 217329445 279635260 728035854 870718919 726097121 221578394 638041391 244357757 877853185 914131019 338732025 237075181 306886064 208044557 21698523 665430572 526865919 515508394 681001069 625864420 313085191 194661435 342051986 742144959 91277733 850966373 244359089 44455006 465901603 627601285 211386160 414162212 597172953 921957016 17437094 113664266 246661812 537545749 856634824 697727419 847790103 321557745 434758899 190053994 568983521 650256593 542539525 42890903 615902697 425080067 928633863 678608422 180454914 819266628 467274277 655527220 604113378 986443485 994405415 479758042 391595940 375972227 932043070 255722935 324851666 819026967 548710160 275291076 56767381 501046490 412990121 760817463 914199293 907116809 281374902 350705740 226191830 799524726 733495918 769231994 309241013 896768317 19593130 234488629 839070939 362350852 613502885 26774155 366533717 469654680 393099644 915397965 109690640 153938613 415726100 621014955 897059381 203071281 910930700 499244290 909050905 36267413 946706775 632061922 343776373 644918524 225207114 888538685 700082278 506233413 129474849 712052019 743577417 646597965 609374272 220908742 107580207 266438545 319300729 892279825 796062174 938383591 520403761 345869716 665868408 824559964 393081689 500881242 431208805 534128374 900545214 289613235 322904643 878449976 290514507 22624259 740633594 603515238 302591418 371578678 855990989 853593345 159951111 473861824 558233912 255750881 945963666 635820409 133485937 701268131 122748306 17703800 204223484 616814011 880396965 412352924 978382006 429153095 965855988 412403379 452720852 575471976 700943311 685361919 15147121 810991459 269473334 290002179 501924518 344770788 942985331 52292611 670906389 691162030 885478927 163344693 518020853 836351812 332297214 930596384 3737722 639663283 284013716 771954331 328106808 910771991 381969228 731002056 954853252 392684740 727630355 36477343 896966171 930287331 836641384 170399959 203577997 538334865 727042970 349089244 307713242 231819896 121632402 996067943 907102191 342499356 787912497 438469977 70167101 640060006 594493792 149666149 111282194 206437413 448977876 21574917 185319249 349149207 247014333 885362567 279050910 152789184 159589046 567289685 981474897 764469241 930889676 397477726 235124536 817772636 413312269 257471393 284471609 739201063 654839127 78719550 81935251 416990896 777382109 191630977 313848302 36765089 610765743 389468034 574574249 732061428 960847858 651798124 190193138 725236482 275550962 736575210 51646557 158750054 854831365 95420980 724489264 420319857 919096494 315584373 32470211 199137538 104865517 810901499 985105280 802319699 848756143 405803154 127366119 411929014 536967933 956438080 267912105 257050126 762315132 441343434 706921069 404499243 665216864 893033404 95167438 494169503 730995458 482188978 344006939 986885718 630825510 339838647 705569832 890835156 359869100 328651905 900270576 680688617 566984711 984587774 668896030 253647107 614878722 813750611 144466731 856318215 159387216 939635589 228801073 241926457 372252180 423100138 922613474 519671694 584251510 412958830 506169847 959687619 450693615 864223195 232452557 199833819 178698423 39765313 768916470 841157656 217138938 62100690 77096447 219847104 654645181 409542140 881894986 189120113 877755471 926879215 718960884 554341885 108160689 844121521 209099860 967301139 201086380 152048622 241306096 679288522 597099966 460512384 26234890 320219570 215435472 667674752 379822298 89607116 607904326 802414956 82376987 795523909 127875503 762361173 270140377 312762582 79787208 984024289 415505694 235578896 364088583 895085861 643468591 119892038 849207629 573103309 355938481 451236283 274003660 32850473 269779908 153667824 10631236 578153810 173842205 289527751 220627966 610061764 588040166 122094748 826846784 169795687 609060911 157794615 889480448 834979804 369125352 429243983 689992801 946945172 702707603 76929990 834509322 999032865 362095492 320987465 307484768 103155130 128117749 24510183 535916137 508764373 168293034 469338616 83718661 5369656 187002444 386508679 217478423 47545043 261343148 370536640 534583405 983061593 30413311 246911011 572497651 282099230 418093703 58483319 808633265 35976729 156420910 792464282 725802711 385983812 42142494 271374832 615553259 738555711 736077864 391828387 46948783 852757583 469478796 898941720 327845311 402623905 179329020 611351738 651213764 103517582 18100375 792474739 29504335 534815430 858742577 221928729 833225957 331245099 847409242 494495340 413937845 4787987 759884572 252373938 181504716 755367980 797134546 377558580 566554615 504614913 354889634 495006182 373791498 145608144 939875758 744932615 735765559 446832075 687392252 981313432 322873666 885447119 194516127 28744720 34288082 290532474 925321113 487027421 3500128 586769192 627211549 167353413 835011845 400839351 439959921 346545240 322302575 893639273 479844378 701995463 897843715 486113688 886683025 249980160 333096684 24592370 899081234 802889528 432808567 386593991 551979406 192305608 933637349 874437271 126910418 749798779 804458999 244373380 997332043 249005861 185172146 742384367 343361832 924517886 125106264 634991994 166916171 614928528 313659794 694360605 570224761 455115357 698626550 4289121 778672083 692671223 886858539 622917415 456147810 434956845 234372012 836194218 787327334 439157694 982599296 588202120 451816334 130370476 74387446 656497933 825074260 493284069 313272593 686069029 202798792 334143755 26240168 760092904 792288585 552063094 140208468 757445431 537381946 1495836 533347722 102028234 553834353 961816114 3767623 35141307 415138200 861715221 862536264 338140941 845487189 472134554 984144182 81547286 773689583 416291099 545950380 130581048 149409439 731817454 851813779 615892751 576720868 371394149 853767486 397348828 414621042 235092948 114316261 496961530 286167032 844426275 596677760 334825761 836877758 449923112 420594697 785713525 398665335 258192928 336308696 878072283 137700411 5696885 789718150 124310570 291619258 255283496 216412812 334595405 575505961 140628925 781991735 587048055 558465406 405484667 50509104 996104441 628035757 600467635 467629940 665011588 576894785 339200165 653949481 640531674 602152496 478714113 656567462 284759848 119773126 534993226 102842005 327216426 335082517 205109673 582503469 365657005 580810399 370698024 134280332 866749916 453154029 989969999 4864081 305947839 113961335 739852654 462393402 356681065 387427319 62146113 15705016 755188792 949490576 296596827 365772996 990575103 8784492 610314645 213452506 743339750 797683823 867112732 665403771 22815896 787220144 365688150 460363166 203871022 862194493 471575694 123110343 445819534 19057254 110684595 427674817 772351966 821450537 167145184 199930183 368849201 903941538 160733088 79159402 322760213 253307981 951825711 28758543 573101936 281321085 439448840 666449142 166145618 373973258 132489146 757882098 765747314 621309189 826651101 679162560 504006759 644821662 668851144 84945488 584757771 269645169 168847262 275167087 900926792 908604718 250790693 964813326 106261693 598784998 100097336 418984337 107373308 90167279 375605339 926592637 15131318 138492043 275127239 769074122 92043399 472148556 587109949 661917779 553506046 106252474 680272742 336170099 248024618 946429063 967816762 847757596 530279926 408637405 304546148 128328056 21427116 344422460 918525876 162270720 332306814 3954365 71152710 810110026 600355236 775580374 717292510 327006826 353842246 396593991 215431900 887820260 657126405 537532966 967478200 215145628 201727583 101907537 707288055 18730622 999139907 332925568 958265971 534092175 668741839 181878491 770731789 623886796 933997564 152594738 546394764 486901132 227047136 689024540 637858903 522182529 700046513 294644568 404997281 791667426 736886632 28143928 268251836 485622191 72043874 548031578 728229068 706870761 793510408 662685728 284108159 362862761 390413054 804749101 343974614 583973446 503839333 650821813 855015328 69345822 449587858 671310080 929070845 940448098 760558215 859468856 333995458 351246448 258842155 655891857 108793823 18749502 484847655 86691380 670732692 635744457 836821405 457315496 439909341 225493881 967939565 411487096 339320616 750363099 420967252 218943889 328948331 707468749 932351592 52295754 893748709 981873856 430532940 223687014 722381641 150460831 130795638 392592596 325583421 262366559 56201931 327964261 879479922 752717176 592345179 417355618 137252071 951170052 485714997 911836244 436169348 212432373 322849708 292303944 277576537 677773364 187815697 101079613 416880912 722924998 788708521 828067627 252955843 183879058 750907861 298780868 125786348 935658384 876269170 392103964 288285272 622253575 73133955 184729776 320450405 580681445 223893446 409916464 827964243 75149166 77468433 428941178 500457216 291043163 258091527 733068957 344494663 785540662 255726543 123402676 920980710 915777438 600338772 387534009 49179102 373299654 7764549 566250865 159629832 956642561 964679439 483905655 893223317 93890018 208693623 571722187 309483620 634564523 47442639 284349722 100576802 235797222 691708860 615740428 285953712 602671823 497947832 116337658 551501345 843339232 830296467 511426198 643407616 755872127 926362485 769805433 56666919 670862685 796630284 714316165 826547556 30691637 423569876 94081070 508099760 785411986 117760562 625833694 680454102 518604011 413929315 56342079 342740869 106501173 346321022 507398181 638415142 517235389 718058654 552476500 477125162 29175385 321617552 38801550 899107216 143660913 313656189 614032495 343970825 184265817 316101615 488804090 657185524 840827117 825086018 146435079 896069459 136303273 821405606 737792544 754406457 844963949 769985650 847760223 310773918 205839618 627328709 359732227 940545521 649877634 217860897 570007263 967092837 203378759 740401413 882624210 766718603 487743838 827733848 693612908 397044413 609877411 98937510 190718889 302030538 592827221 81464649 195061111 559279705 436104577 883958869 833884559 539490889 843261876 876722591 190792277 249530465 566604611 226479038 487458254 757753382 220245934 387283512 662432706 300106087 934986907 120225939 10764217 918471607 313921836 926491602 51765029 230113738 437569158 404141348 670063552 705200902 247127200 166459596 147956300 383248237 30313122 809114321 932756809 628244295 297001996 474623484 76233561 838046545 666965812 942774211 337220251 486974525 983593795 525112184 348277111 528315970 423337827 357212724 88651175 247969940 683295939 623416626 267904543 63674433 856657621 55855666 967693172 91364455 278347854 799018166 243223956 711043128 727118870 937576343 878490226 134410765 108975644 439040575 909397900 685907539 98996998 185167801 623858929 745844211 205729346 40599409 596708374 871041334 425981068 817753093 964755863 51681500 276754822 546139059 374127447 625939783 554315232 673057615 858270212 371733258 205060526 833518886 198328764 839103046 766659681 828096656 175472490 398424548 662076633 517193232 270326909 184208990 851942361 198153962 277272652 429350158 280710799 269541442 420921022 383094036 285394254 569113529 236164253 359667043 82258734 839517134 193951130 769381548 201967410 40984788 888904984 396875329 256704296 904607726 809786316 40887791 182895304 396078455 571725713 482609172 585623082 120541574 444724930 459056135 876047137 420692636 230282945 880311300 295603449 498726220 928823886 641345074 219318659 374956765 690541567 162388192 417627653 970717150 229702138 224552527 452721807 205258234 535598026 684671834 920772781 799522055 296548839 496662691 303308867 12513321 588409533 746672532 262537644 801220541 57760801 317822405 474416355 598612113 216565131 521037760 950864382 270555138 551649166 327732515 377116909 230358752 851612338 110484308 473428034 572611154 896834594 840610185 256354260 490514173 78702295 85857633 939555944 546337834 29765075 75831651 296616198 660767306 37508330 843495836 339558359 822148674 714402569 501097198 271328704 991844093 200386695 467317542 752464147 585787819 651955372 546729161 124682151 18552291 229672647 776132471 573219431 966682940 585932416 411067176 541040933 282432507 456388828 536780643 676196274 473906751 517647744 379484528 500562097 613384995 647660699 966953412 194987564 894197715 934939197 59692392 616950455 739368428 350408584 277281978 975771001 900170143 147300478 531829684 443164142 169147398 713118745 291481106 589036187 567900085 623148269 706141655 576422445 147785410 121411285 575852561 494898500 512948927 72327633 199517212 94589972 954903699 686933836 149985459 980403671 160483196 666798214 425051512 369344585 917371700 914551093 211920053 202991140 68330316 113532694 236876192 213847769 953489314 201187602 285477928 482611153 269084609 575912029 826669657 799075202 690802057 670380849 459081121 174503505 304886647 207887129 101840682 330636001 668717607 173193365 604189097 665774336 39662162 856852248 177168966 1970442 691515937 676369105 41652598 19705684 255808714 700396736 752935672 374684509 132026586 229502899 385572109 636104851 742711021 624328556 629319773 982716972 806082347 387472890 185333303 741238152 472320659 575907889 718946849 582028583 916104104 280070923 15145895 709912350 608478135 546866708 301033711 97316435 978017507 609678609 600320118 368693721 321537666 86758128 980959128 548453598 239440559 484524795 994459132 377583151 170557492 210574111 640951011 660340830 463705368 510238564 66332058 583745766 813766404 326418484 99884215 188354762 225391562 323409678 530499191 476036795 934953551 982273909 963491699 401502343 780754813 779046828 609561413 161005675 797460270 913288873 425730440 671538353 493339034 542217710 222415999 705143190 785957038 760072002 537627012 198937024 776022063 794861359 722466676 311647069 709745136 904704771 549398782 967675655 882592619 912430277 896008965 847625886 495215553 531225147 995875570 975071886 248821273 879322500 111448606 394681382 485143208 663190677 54858352 528316733 975577841 491326051 373173091 406267199 970260831 164460936 454931680 150658409 620948237 52729882 838604277 615846567 148957147 372861689 379821927 739981980 813400458 205702135 462089993 716481081 308088265 161969445 88985072 966344175 941770533 201962852 653026366 215405367 72285668 70929827 886514438 421043350 768939660 206664287 799129120 324562108 774629716 935153345 516665183 255439288 107782117 802198116 614295291 666775131 639202549 654634593 602516056 898183727 706733694 545414218 441956429 713882559 498347244 822541916 654692413 458317663 804462477 109276208 868277619 122491321 419391155 84756331 354408602 186243883 647462001 251017756 652659913 716172437 390609905 464263726 245240309 727736234 46318980 751966465 384899678 460024998 115046392 941089930 464733554 991811005 62876937 31582381 246632290 889272758 297831942 480743704 676714665 397879773 250817497 243096706 886614536 438175112 892510813 860326612 29395174 981274978 646347396 815904601 451319466 199830858 352919364 473529185 372017920 342839254 784901089 486468907 454707399 172685588 679483647 315797490 654755397 389057440 794438957 201061175 526231998 53752861 131676812 628720012 455275453 300150040 708026421 11652472 987288859 711203432 430944723 581357401 24643730 753845062 158802846 108737958 71913723 624365532 21807749 515012534 58294059 162932660 773331302 842000786 995040455 256990992 369359966 143998375 471380511 619343412 200375686 574507544 910945345 756359566 913550268 431064925 823133068 968675684 358924573 15552106 72837790 186374228 663463233 680596386 556635384 240005773 355322061 694522063 667449854 126976515 694402488 724134758 37258795 105512289 285424650 847057603 351479103 103115691 779996965 714604843 22602733 615223701 862702934 769539003 716515711 636063780 262437342 578430740 616297457 955574313 80061335 894256532 287433209 671282950 294564083 600215934 203428510 437352020 606441185 101110548 219593567 75422112 310390599 405357611 874054043 630540700 941843037 355565995 274770944 254566466 917205061 942421239 207091145 243200275 860787204 521670562 458344408 473333812 470510529 50502829 562049159 151032502 608535644 466954684 489517307 936529386 880300203 338007776 456454850 900025600 107957769 229726454 9924648 540536280 16011217 406200476 513593326 915286698 469634989 255832217 228564596 72737949 438773846 69307915 159695354 601728148 92981577 800271421 553741008 877161785 437248522 808931252 412449313 844466688 858793734 29835846 11606035 144948893 246846466 933403569 388915196 495358178 56534094 59343451 964110351 216881690 339919919 254693029 228060652 149098219 51280613 340301825 755130456 665081551 312871834 244754749 986653122 135524971 78299790 535855882 394162427 509716383 900902913 727620813 151033217 773538045 670490464 648912716 630274175 16303771 629416197 150493444 157768738 28656319 737691280 135854426 746281907 288312923 956693628 781622093 556793257 865650331 689743760 819691777 107536676 994264394 6847365 204593595 981680039 330195699 26666443 381336649 395888239 936432744 5901203 405775055 400419474 86145353 990319725 694816443 337936310 910764965 76997106 128314909 10701875 799885274 960346764 424073730 309403526 792881868 879996432 395074020 303595944 535892147 376616418 424632904 161276929 403262781 349785462 954323509 992929656 185007514 952846298 658907258 896376888 812285778 424780252 717288920 459023716 328920382 759992780 541726757 921808142 269391453 643891479 808605447 104394876 942579958 268333456 314357744 608675687 721614410 283183651 274782049 898458955 234712090 517193457 395662447 287101196 272677673 803029828 511344446 794646256 347601773 809840619 120586305 609058411 968821322 679384327 440846353 512173702 269617402 658180310 500965789 156217508 552453513 191943513 794929452 807484145 322075601 273030856 541547632 954734107 489738079 158876169 300133411 321803472 382683584 699590316 243309000 436528726 218943304 987840981 677279786 954427474 803950836 535984011 658067966 177251326 659011143 429862789 971402483 327901554 16446671 787747664 343577529 956808799 632241083 80030957 765178697 739534797 431682483 91439387 143255431 111501027 205813764 346805035 881119002 467486384 746582809 626812634 285822641 314027961 543946002 400634209 251447980 232365587 952905601 523173748 620676105 984781753 685175931 996304259 102926438 123551519 678471698 409992464 70523455 244043168 411976334 145726729 424692350 637623593 270077876 957634504 740600391 657230565 10252908 529806845 736984069 628441791 870528695 867910608 235881530 797222038 684932479 328462996 961250352 63165134 814568769 330088683 304543309 280269466 836290419 126290669 754556888 917170737 970625232 957064079 577529393 568433305 857258082 532484842 215911293 751517368 995953019 629889466 628552203 390451829 728053253 842298198 894701634 756494205 665990514 714837455 358527243 627459398 775503745 380784653 453007549 506161691 206253167 774679616 393630193 190330146 373889226 919002802 925173785 875388967 2815372 643548884 465378902 312073242 549840491 597053800 558295279 263248230 883593089 221071003 478950274 297187460 831380422 63389679 599403456 969789554 69761918 693957989 582039234 426684007 346898911 113732353 592327508 28046831 977014924 103039930 697480284 674545599 519932330 16940035 810576151 412800402 928501311 680318593 809256275 698236443 391980146 205508691 520619053 335879334 969444106 234733579 25383340 989777331 661496930 669536859 634701688 531225840 42559323 604869269 674025522 948556438 20661006 162238575 208996048 303552821 526115654 546137911 833523619 286573523 73862643 96206535 154561469 42297624 289744235 982248530 122595234 818012416 366709476 328783643 966230170 372895572 116162804 604157098 534419523 382581161 618128111 558425226 847751171 51313243 279216384 727081096 837865460 439404755 742518165 762044483 204872699 750390464 679134826 622806072 518091824 929847912 593213156 201644926 917735260 352634084 722829345 950985202 606270683 574033733 198806791 421193030 801642905 611065205 549329135 262169952 279737319 577020800 840206788 750815163 791562716 721346995 704603022 900507032 295083884 358492279 338420481 377271373 378969870 576515275 359480769 685245154 145395519 522327776 848427410 208151234 203347256 678301046 327329506 155002022 185651307 643451627 793495681 657113357 623729765 619360106 37428855 407096342 177537326 11755298 844411927 397275389 629495591 200891704 903708069 496386148 381128315 578266731 978578292 421590157 413076499 988593357 532321328 323508954 476254467 798384364 174868743 744722 954649158 216600906 87702737 947094452 876409827 247728694 497136148 925368050 395663404 310820465 553476023 634191832 899598792 802489181 569594763 913779174 351893315 872655402 913585371 945981833 31306129 426928795 658594773 358855578 768319863 775695444 829146027 103597100 717765893 996985430 438417261 202108404 2531429 657736259 883181277 487695464 650451385 486772751 675799021 320240168 724590085 740418336 905788440 278661843 891092958 449907315 814846506 870125454 583714640 582063363 75952328 17377003 776967930 947634120 245963863 425859975 44426858 752881851 458414293 634178232 307378600 160051354 701363979 423593486 712182471 514765550 894566984 348594532 377831318 552796059 268347419 933135440 813719872 519131062 618560756 383880440 998554339 709268717 471019791 840237767 920102719 337580886 774016050 172916939 460220191 405623400 182775832 179147457 794298590 150070496 688722346 842118381 147192861 600668566 357771523 341886647 786161782 283364050 621993374 607177198 619646949 393497444 637919456 459308804 32002370 44163355 599915442 112012415 868634653 209887277 869117033 494921103 5175876 497580422 720140872 32531534 601480582 15064339 200887683 918441400 803948375 147851055 672672901 130408047 307133995 400120685 279347368 843742131 498911875 716363698 651517396 416919843 896543505 233825329 742170337 596659511 622648232 41851320 845138021 459602637 264767533 20800291 312509170 655770431 29125026 38880235 811054800 456207728 987053869 945119004 360528912 421973419 169711690 863625822 871253423 857450812 239970416 99101890 28969210 326735928 818721931 185504236 236992069 545459001 118578549 304603593 866425015 324932918 327256939 121663393 154214902 443863281 980461415 859155276 185373311 178674896 238357452 299042721 353768213 736296652 125408776 835266283 385212955 564271706 525938602 955984538 143082023 563716801 613299568 463631082 241238075 260128169 594013648 129210148 828187679 417448406 635579981 351319977 536475783 18637706 463165142 67758868 588674148 188291169 129787492 195722317 993466043 295442263 337520682 467944796 291644237 17347899 189426793 842098738 46704329 201167583 584544992 161760183 574856239 158890383 553942782 944438032 628694023 177742205 687334706 128634319 504679722 702385879 906311931 687631810 227444012 149090397 385398713 283095705 654625792 333764586 684498430 69215860 340943697 491992512 759252524 365352828 505044652 700101218 723361674 704339006 468790593 601691296 104629048 391660727 698347822 195241171 613715402 44051383 631915586 34362761 394128895 411508827 442636015 311138789 944782063 425558151 649332512 716451079 127914874 584635053 663642530 636512883 554245673 467458218 861710894 363788429 311134383 428721479 394282128 502686777 238253386 110956182 348866958 392955920 16850819 243072283 617248749 398110039 1660487 783092805 482891182 433059032 226981801 991916517 890300605 452569005 799829042 815238924 265439883 284679111 850792531 936146346 857835664 371697193 448302857 853492777 205294560 890887701 806017912 7264216 895225841 775530331 187687012 21546834 979824012 44230118 26645251 774030755 947647824 584465899 822516499 545154454 237443920 334523872 993991352 692971615 996407748 798193868 216568785 801019161 701552575 928766763 161855292 60140152 596967847 99304589 304601720 781932029 497048867 786289786 931503299 323179703 513435311 305244979 663514620 703047989 696692868 372435790 170774009 342869241 380867760 801742123 558397179 323119662 525645701 579445963 286509459 20748670 669207400 495157242 280666690 938004763 470036898 325308867 920208850 783913633 145319729 926783603 664227227 561412927 81807124 290965140 699551932 365854447 367899543 689578347 394964834 671842237 836901903 897429335 534721069 725951684 746776942 778620642 538045940 750980487 339369241 452815541 76071421 241270544 523971603 117152147 178742277 769380087 627951761 84673369 792458861 929822435 81276282 55603362 741738039 130889656 737251395 987719738 303354503 387171282 70629337 60772961 533010835 499404970 128053511 866560709 75712716 870688208 903781421 350878940 763239983 273756662 844381014 602027112 767820126 617627915 909852795 396250241 454703367 952245797 766242840 477956672 239134249 898343258 228816137 411266641 604802433 630901779 731165166 448304349 715405017 85342027 43385823 508828013 335418676 255418300 444428328 3147948 408299878 794857814 525769347 23509442 669055713 221497297 542550469 211858488 209719151 929828198 708660234 530245090 800716999 69152794 432824410 284801747 326493137 866433850 479899118 534340976 430055480 119175065 831507441 443669060 719753904 559170855 304612332 600226099 802745977 222198475 192717623 386522358 635766069 41044865 266508125 10661617 581448973 64483583 180365539 374003875 131663371 799520795 89164690 271270708 162162735 625726901 257472011 648970733 978148223 318126329 227488637 373806875 240598119 367658998 149698586 431298092 793922724 940668966 710211528 181770128 35151555 902551262 814985133 430744383 598073316 971493411 687602268 515328543 221355144 536181724 517050920 593023385 572429931 475206415 282635554 575575516 781419469 29520242 52831349 655162017 845951518 761528943 976068724 313067207 791799568 785290103 700135479 489497312 159838303 70953201 177534100 173966895 567111919 931338338 653052088 876415530 118231250 829673691 913531378 554909979 502445106 824473094 963148429 525443535 232051343 300737660 962514274 850789478 483030005 683655563 315096753 767899644 838682595 610694860 267841573 616250576 474440261 357509595 688164018 81357792 946534289 459930877 778916855 38166511 693466595 932665183 80680406 978946703 60313487 435546578 333677523 734019808 786370617 112827275 153353146 987839885 438030995 235765587 222427020 903258006 792904126 393890324 835838667 912653147 74388566 239219691 929343529 759777655 350088410 60864699 180269948 494771281 118534455 155095878 768752503 76703427 290831842 641175233 186288071 854443777 686294411 47527183 75920798 375296904 1338801 451778484 37924880 490804904 225424996 941257171 463440799 564452803 246103095 8641970 811323655 914702565 453316186 806351002 267643429 85174429 727183550 284572971 103533981 184980489 634954744 721353762 754718424 928981018 207870020 279543407 490827308 118240681 319917222 974017103 790610811 998760002 410528159 570943207 363356356 336058484 80769838 269413180 7386336 417785701 212260088 873231884 470451825 268325636 200427418 370732152 853660278 801462383 48086266 732963056 309870947 507722269 827415189 471532964 883170790 328926927 193081717 428381509 221689680 446632611 924755453 922724378 801654791 167640755 623840339 414712216 210026507 907028666 376912710 636472189 918104713 121243542 655104885 937272579 394167517 830076206 857826552 204570657 751343592 419743488 992345409 70756069 750644618 292029968 808358350 192971703 585063450 935308905 424038265 181823776 348546345 864515096 726433890 974170124 913847313 285672510 777098660 703651574 712948899 363948761 747089194 690216821 273871716 266691603 746592896 428300582 793030836 59495757 864527292 616763662 532488826 807325789 162162597 265172183 872185144 273080365 980134036 141527447 411953102 186793566 965370852 263928920 798739968 106919989 678613246 888577193 918082627 21749905 63690409 473613044 134706234 332611255 224445173 575975742 294786100 239955858 994090970 794697497 986275606 389324863 868044489 476874636 990718686 135036544 944771284 440001164 139602219 364433041 139321074 129816153 23089266 749722309 199557743 180512506 63447044 620703506 2447405 513257036 1755514 13476062 757494070 90798503 707623680 156936643 127009038 41736088 626133061 471201409 636506484 611969763 747684365 580574259 966937180 127726077 491348933 191074841 23076406 569641422 253721899 682030007 226429417 330967522 534788549 47174787 424134205 427015063 597890877 905460344 215910031 958846040 570275850 121769127 960235679 44589639 192205008 250768228 218121276 528498581 583900086 787999003 300388885 696015902 712698993 313663078 442170415 809620494 903610792 656082988 497995495 975691160 881247052 454628273 978535756 819502614 467083844 630672309 957294376 423082327 28864910 941414948 650216548 884230468 380788978 464334080 905927565 961613310 19501681 146262788 540170115 207902875 307191451 690791955 847696938 561652435 108239814 246625178 47545482 964339695 989575338 871037919 111413207 424976023 545412120 482528243 96556726 558143627 66515572 389184204 218766092 874173770 277646203 529478541 725268266 425411692 560665855 324695677 766186886 656808586 290792589 362072515 678419086 676308209 578066388 451089772 153495699 118095873 15693236 560872140 34538518 411744766 644545809 794483542 757504891 878414668 230657471 380521997 961100978 87773391 943253986 345741962 903002292 852864790 295220800 709024416 886249297 257539393 372792347 762975463 599219223 378645934 669687059 418883753 635653847 889592015 299564538 283470071 544209090 134874141 218445616 524710838 642064835 413114283 639945868 38072539 849525765 248981837 109009731 604220023 652729435 551654518 245584492 252446245 833737908 841971037 235279882 747492666 786087835 944702978 442003317 89132914 118286001 493241645 824742886 6110120 305239001 922798473 976867543 452308903 29256789 379348267 877975543 105054836 18548520 583944221 973075078 699073022 244627319 94157666 820863899 892618940 176394407 139249484 86943270 119134274 271551024 345375703 33066428 15542531 26399202 430931223 488798930 752827973 191615592 541955370 151781907 756529579 987374008 18582343 65686370 825168961 114722533 799512461 161940793 189068414 599166124 107504129 258962038 613489101 382667358 82816656 321237005 238238468 803501067 129047113 732504052 423475964 351849766 255224734 418165967 964623888 128065779 918100713 469997436 401351257 252370036 186325880 271872934 843543431 331907538 840556113 763545848 832791622 999006570 218542821 416530291 367190533 524130202 740237366 643903594 835415343 127801537 377197282 447564371 953897319 996865810 382779779 123101813 129383375 577113165 447966425 893112862 905414834 18266574 104300872 688809527 79024396 510182603 374638687 486090724 20625384 974103498 949861867 150874800 909190836 902582991 393554462 795597792 435413020 264581962 928485635 57640467 900400723 730099670 503568060 118504668 348923089 142056099 516197090 945447211 986031577 11623432 492920451 629559215 413926611 301835797 577255957 665199718 276067036 971402068 863646091 220879974 970175692 457770046 274298882 177174359 91979157 895414325 889338994 784558354 356756853 387724128 371377130 625395806 694204734 827345695 933293206 665468634 442939261 265426343 701667662 955381217 386165442 846777934 782236991 308125130 408621016 589600261 79099952 551479969 556529817 618242958 243752177 29251218 142905866 559059462 828618978 951904370 325648431 486437429 524489096 563737415 909546114 941847959 304541567 535198714 808725567 667496781 322746849 543402423 481070769 627454008 76649838 748581546 778784200 635874347 167450713 337972829 809800836 818228415 867964064 554060581 545340642 320985721 958249981 724597725 899612829 437571674 398441235 288995472 833371516 450260297 876645571 432432323 537016613 455955208 655235036 819419279 508155405 91682000 967394164 867840732 49538488 640740728 157038926 856893423 84481236 383004412 775005728 476523273 40376274 542077060 111856907 664491488 497409438 535814071 108133983 376356904 247055892 313048183 356422652 837748430 456983562 639330094 322920496 753694062 655588578 575359781 136767886 856625296 255580754 743182889 896660325 852003203 946335561 429232480 614852538 969213221 448309098 182878509 288799417 665826131 733860103 829508589 687519283 890955439 823618988 664149620 737982051 89338894 467337163 382047125 875971056 650652440 835843524 642886048 687851572 773220567 820232845 134242789 238412399 796336177 937259532 331887444 518615634 974377228 136683867 107624711 857205560 740431425 226066732 702613340 322593824 119594610 861459475 852489944 356425692 719723400 628716829 176817451 854787189 44004509 86040110 840165395 82280549 680838938 253877072 785407668 175594154 157420238 617293204 105389490 349252844 82088627 818586396 17873653 115074233 268720392 540794619 549536748 100181272 637942752 88522737 108111685 765703567 521824325 708577327 896650019 525531807 512055184 182521092 637309302 95372616 493664810 329635388 650601986 296127556 79327765 64403183 473600824 136242274 227153858 9275461 917145346 299357884 652305503 320867599 737224121 573835800 308630900 663397725 702724124 139532308 190342507 770118386 539148888 542017905 945537017 857105226 529307475 438325825 723512971 687866880 435279888 375463495 141861865 344779186 846359511 324342242 195474483 130887238 410918871 187139732 123220956 86185813 620796160 857583437 450113234 308338257 297186547 428496882 625354772 756483345 807041988 563276571 261153034 812075366 727733794 103680750 539673026 74306851 249376315 101897193 876693220 423092717 202162225 768325152 335211979 864911227 641100832 555296649 812031396 910519017 25940952 969494303 573617975 350815725 962913472 178701338 426222084 146877485 458820059 468611895 498467616 71348421 874472240 540383289 500001929 76658090 397404751 471253846 18449333 855822797 61374860 272671153 637092152 763865491 414963679 174432198 241600144 24766384 31668012 6096254 139962466 962032636 181321799 68699090 647463372 318524246 238654962 554038281 433029191 470599268 159591955 552979101 119203222 375243281 829478957 607204016 185865927 392489193 957973237 738802461 348403211 183948429 563386663 928990112 952523257 6127029 636365515 823751312 124310440 154252529 305381217 877827340 274089578 38565938 116451529 315989319 25021325 3109897 372386202 728428616 541613260 970451683 111235873 367369494 374840556 854085884 59580497 156014552 685526006 60045193 880272258 946984617 689419832 525881014 66319084 143616494 176726316 2251242 680186483 267017194 549836224 951056779 194216502 771821237 543819153 507114495 38103275 570758227 648639931 985292683 838416101 643540387 542571315 805067708 344552734 931613933 945150431 409398722 551653155 634352332 403759003 388678153 281660017 2577724 119014913 845027696 466181293 921854172 569609104 120937615 954602829 751105420 497472801 697970926 15139468 690158460 640642635 72747277 770578345 412499844 31474084 495206652 177268650 633236226 816400537 252134942 471163480 702299542 261564574 447337513 650917451 457230929 834925496 87162233 691741305 479151371 878000227 191554519 882393633 530403960 123487745 618535727 997187175 384821311 418893264 861811312 272778636 217591607 273812563 684220191 96765888 133421181 494759776 531507596 370378136 489959528 155741828 720943075 839589038 17826073 538338230 136853520 632802250 528835520 434431126 566389474 840254591 630468425 223084287 810294949 191374496 164323732 53266887 643395652 405511307 884260018 93904121 266077782 37973493 385617272 148916931 908803974 555211901 489075241 886712943 337228110 152049888 276391979 725870728 664491117 626041496 227148285 856012034 23408983 145317810 292777673 897065604 817853784 222936933 302933140 926034377 325319617 841004600 756053583 165208457 34873984 943271095 447788806 716599037 678243942 614441010 741957846 709082355 899512184 989365044 980099943 799419047 913002171 870089064 121721026 954591567 918237436 751578507 918298407 690938441 69115690 399721521 474601327 615078595 266011114 762167966 272666368 459191694 205228194 264671575 956968200 646755163 491607406 737466094 111286182 346231376 748668997 980112784 277526036 600385242 361170590 158379289 94446821 405480866 492881999 651089204 737263378 562887911 868839394 262337318 396926091 633771742 337080317 524138371 343785205 957748068 17848394 575506575 663962532 290974614 173871416 499812107 916888342 207338894 430667202 566369600 780284364 535093923 535827532 631314536 94724270 953145165 306611508 954546875 311196352 5626551 290277710 751862584 190138305 818054347 833043927 868333300 239670054 202962868 435428005 648962756 976496797 859562729 563912775 916013344 793645314 568014096 668817049 950858637 649636321 67903789 711689029 571861998 845467755 975294827 317419839 124119621 840808855 974966477 432323504 569535427 773481193 166906346 606312138 124258064 37905204 217577521 113479106 724720012 42404760 767373719 152002620 426464759 701458682 308891426 224054970 698364665 907498469 675461130 737136797 152272554 923993791 746630879 812562290 582687907 178534554 357419283 919284614 732896299 892850142 514793619 674934847 494344801 118494791 552476466 613804660 894560061 761071212 385272045 136982332 358018093 450267027 778431486 584233555 88974899 785346504 720896604 859860005 979840028 674015803 327803207 351294780 440704211 821654774 710107382 200789559 710198849 854931448 374898701 132903367 187699953 421990794 229662032 162843213 934521569 445825155 91387702 569774879 72355300 671698685 726118375 276007899 64746263 420216903 770133939 201250146 188463042 21555937 172591197 38008454 888899257 290417458 766506177 750784923 308116985 460499801 939888996 57929265 957626586 580654860 787854041 39777997 54960581 999157067 767879622 800245918 726850228 501074367 665279229 578094538 591150748 57747589 771938117 79215308 672480789 325130425 464045729 433730989 49680896 108156963 132363915 145600642 227615489 496145072 506118955 360354276 175141740 26032115 264874525 752758005 213556113 860239165 750948934 106809407 399522700 406926431 301606014 446165148 816872815 570612638 285465566 933037842 706501442 349179226 396364559 959035264 433425444 252572079 192800619 604100050 227415483 496725149 109002575 345263023 528146549 16455 655806707 858217494 963215706 68877874 305230559 471492386 375263112 269530903 837502940 5856986 184538488 456053317 306350674 945199948 813367713 185304862 444905819 48076856 884660951 88512294 998392392 191111609 621874789 829491451 699389270 281221495 166821958 574862859 741295885 902878252 765852732 18238354 528381808 192410667 110240429 599877596 637997698 993261118 591114424 369072630 289061450 346776009 594331488 363382487 799854115 103313735 519552952 739387710 910218331 589452346 45318096 610828638 370649073 237698283 335074547 163345242 456776497 900354957 557789279 907175449 685591539 483053804 826980421 76132042 147064509 723893522 643979288 700516954 198591726 772021792 743243292 513337817 580532132 635362363 631565701 490608291 244746054 650280696 207737107 554561422 723796 137985240 309634556 867381282 72509027 221146638 801840633 765838018 294548340 342735362 598955309 301548456 493243369 287861544 940896755 622947941 206685011 494623451 284384754 138932528 999107125 405027727 524117340 719887274 997095821 74457817 449932566 10909060 850606887 104529997 224343780 687118547 178692321 139205283 796638156 886305344 953856681 209821057 115434463 595642844 889634685 184452561 467223985 957163463 421668013 339057811 593981528 150789686 548800158 276534543 784397868 162201939 647941697 939906289 992461277 935701570 878285783 467155638 717275895 312599881 810614065 619812175 789337322 298324251 259040098 542708785 688580361 413244484 642599735 230064248 300651620 586282025 159012957 414169341 972377378 107238797 912712278 967137258 446303617 281707536 593586450 502772968 838983088 916056257 141867497 132344268 697132794 470637622 883030430 582895132 669465778 842692879 467753174 535233771 931721196 845433095 992984716 926694123 448443298 810079825 684381371 537940425 206912576 107162619 60694749 848869222 549730382 82796319 683058411 834825748 45665700 157891605 18952723 597603321 809298168 527365262 617013839 807515777 694315866 803634745 557782600 787878055 647404910 958620247 339964831 524983824 497620867 676169446 587201707 629407521 861494283 332655528 871360445 184784633 483316721 238645438 446357356 488357987 376080415 98021012 482902157 23126805 54644078 357088496 808758647 478928491 537287306 659935316 267332643 602810419 353341600 910063964 32120685 537560909 23713155 546057942 730245310 531486508 720037604 574306438 185432586 502739735 55811923 364804662 294838138 708618576 828776716 905247167 730200861 701253226 907434446 56679126 615189611 227052314 480984868 520656337 506432017 810355662 61571643 984489179 489642034 866630027 665010406 789751417 861451187 463447408 800920113 415610143 699462101 20868475 163328848 31147837 114609578 508962993 516043491 752812169 684817277 586039503 448494448 417566376 565739776 665292257 74078845 904931525 447719079 339996253 124155562 258866943 516605490 156819797 462951758 638869228 865637187 96231539 291576944 70576242 751562952 754899337 241497179 828982122 370140355 254256755 508993681 219987661 522061036 112050249 999380220 677475143 367193952 801930910 589715222 780160080 722897908 157997229 276964937 836745117 871687054 237590863 379990090 882728184 147618444 240023626 489647590 91978062 717912913 288728452 788693079 480083795 641100478 754976098 154034907 356789294 89324366 38008948 700946784 473837615 207712618 442746357 703961651 17886029 859818761 364131388 215916730 493226222 329542525 231625650 509729035 755406805 158714389 171204403 715341217 17298669 801442724 480749387 72620228 80945585 536744855 778782574 944212607 955374892 182905923 213202872 427003077 757868642 651025025 122182145 324868883 763549792 4207584 850495108 258196345 905492929 438933570 507763590 111690733 359631943 86248630 646728022 889906549 384516735 260161857 253488137 676394617 197209933 99623298 571790028 748685023 626398771 15473217 12274431 388818520 242014173 958448732 687924330 292744539 5926388 171991504 57667975 897573444 814444095 80277911 498392470 664672048 803238010 384839296 285283544 176549440 17733295 135085439 423100829 481664456 766206234 167595267 310419299 324382233 473485528 694500440 581441899 566465886 600904659 423507513 726422877 821870412 492665023 156020733 691302304 466369023 158426150 902205484 288986880 570280473 652349583 605991663 128056054 685454018 905632115 924989827 231603865 731508866 376396433 170303175 126381752 926353598 758644102 42562567 777080023 571850501 593865811 23591058 646116119 442800913 184114349 15531942 748559498 576068797 540136484 519171137 413081446 765395313 387078230 719342576 675273070 855637908 255580905 559648352 685242758 117623700 577795537 84236905 169064035 205609369 877332253 267765124 548001774 884539813 598221065 199455268 483904408 493659772 605969636 462509225 894122698 887090238 378331118 309533030 603917938 185647591 477789750 816989489 598397353 962072873 975550626 240150225 118200110 833032759 866010226 879550263 317352346 610671386 283883543 834692747 833531232 203085839 711734451 718540367 780228687 681288299 274654397 691981811 916870946 581265708 76536949 686686610 956056045 724226346 461559325 765241855 333344105 440271483 320641395 845496452 893310652 397190755 377438269 109586014 463624245 533655298 336650547 663538230 914349948 186119342 241949651 803384107 930466228 462980924 538251294 707769381 353628233 793604813 558289657 884445302 146148720 51329145 439012323 172910620 772454845 973826715 675474894 570252150 549135680 976472029 874344823 694226058 33182996 572348841 954418079 281877882 986851981 822403155 359119383 982645073 244712081 695760576 146534191 846575774 937588437 162668752 971880917 472063073 769539058 179750453 964317930 844400952 352453927 740681138 255458003 651082497 315480062 781841609 901594003 795817171 426917208 536603639 639366315 627972222 180527999 35499739 947757215 349736524 315843616 949294745 70835 213561681 162118988 516523301 147150905 924712564 91489044 280700995 406848183 23614347 463120976 818199406 666968186 272035176 37488889 188271136 172563283 753532562 566015112 845401318 291467689 173359598 68031641 706173191 307419557 461921323 287776609 804238282 289940009 276831233 291262824 486876908 98197431 122946026 326653129 407092705 79937653 744756426 685918244 122584913 612929626 187243074 871892099 783034676 702675988 166112881 579740559 553323989 608064164 646154282 576440346 228233905 595267618 94649941 478286574 241559201 38023437 241457135 792135138 753271237 930288455 296388524 729065826 664723275 676292442 368970421 286916052 716134972 420827558 181771620 781315401 647540746 643369001 769403714 753160035 825511936 309256238 793108940 563569939 882117240 125088274 114664422 149788196 883066796 645941994 948945075 696202642 549712056 40252889 733560024 570565838 512943724 839184714 37323808 268667050 102665550 701165867 544176310 463251421 642466783 628542487 157133014 829284716 272810149 354033764 105734286 761293879 321170660 168498654 129842645 874615103 364559810 173547389 862408605 143870868 772532663 22121071 712160146 873126719 489396765 5554699 306466410 455318916 334103767 168551284 193219898 412309989 362081738 419570223 10003699 983525266 98940432 185566255 622359063 641752379 708428705 61772786 788360639 984869628 856595434 946398838 489882381 232148251 830179215 76110912 355553005 73229084 368074776 552598733 38440647 156119113 145164913 456933209 445804499 977851705 227127642 175202061 691159802 77378701 833047112 983385530 527789002 773987795 323960481 507361350 260635247 203745750 226991240 199622369 443121850 650107671 424940803 180083162 367869443 382719844 969724587 631136433 156692432 213337504 815726904 969282469 378285178 423356323 864234940 337226768 578409681 46770016 784575775 939931785 417952802 526017854 627602824 97258780 388165999 670528772 514469711 391214931 878800224 696564337 659411396 915633446 601264212 761128067 559149162 296155683 921032381 358636570 194775430 823731769 785878560 695714758 701738872 991035933 368635120 112659100 550708731 370627061 565515379 745814454 73173406 112401550 181978599 122457024 613569927 730019726 355089001 864244359 449446051 101163658 86644401 222844764 725311370 669624875 164298632 511583625 548043340 75353246 17534623 857834311 813433624 492573125 419060388 405507120 5891607 672739392 788927575 621671457 743102509 430208940 447580981 141978598 304066349 810782804 943248762 701216830 726521430 356372743 535370285 333710586 607114056 74406318 40863717 1849182 35182735 25035702 285215505 840003025 831327419 520958495 363605453 769033324 583977521 167831071 113455948 204944231 174599472 898196945 378827685 323114119 299457236 387144917 457719742 281618692 844888244 513871586 164676666 727059028 659441407 768353374 757829111 925419548 525099930 485291881 684218282 993625236 694295744 839451376 633779108 26684302 109355045 998332502 843642605 116505236 526998691 950282867 895213891 692415174 766836632 784404185 987180915 758110272 376472318 879217100 331669468 785823709 996235877 244083818 2065990 124849338 278704248 799932663 560205924 694077395 303690173 390806995 400946392 703401983 491934763 130866571 242496167 194290496 866829857 787087938 106668535 120555634 888589031 512572018 544346865 664007686 609719032 544285965 391364476 268042456 427177806 42266430 957089015 6640468 628288751 256790031 800630407 346348057 510807541 693187623 21923554 582456468 775921576 349425160 500903723 590251492 106038327 354146387 969904667 687239766 46661300 966026582 530916378 491597637 814612652 463848735 137868652 22538002 808762335 608849715 958854817 683136386 621695086 726160722 974400284 400913184 843165299 212878284 742420327 576774527 657663746 244823161 787791513 551269745 73015600 9520957 504219741 85746549 480697276 462723950 659743937 983476299 153849722 581863841 474302537 88527168 9664560 970599760 998006674 705405954 639417769 365045357 177404253 850359040 692953347 79479423 823070611 556980576 263524324 242043189 98044169 582314240 890797765 217542569 904905447 89214589 696970546 53662336 211170621 839005250 466920664 423026119 711029941 204674085 21150534 63635655 572973291 315470646 243620601 758212052 207515173 780303493 595611390 564747644 418771056 579249067 368705901 734052146 97128564 91894087 474663816 377512660 734221016 683801515 973539943 639030907 342010187 332397034 121686410 32058805 597556419 520989621 448586071 70686021 585533202 976111012 628319051 562949549 785897261 464725993 391414088 66064443 534315198 288135488 820190988 213288984 54876958 406578133 462900877 366687100 539367123 948535290 525761963 230859474 752276132 98584006 173342845 879055600 44649387 417882496 773361866 204989427 984593249 667037446 692143640 315694957 805450581 460557471 835910012 826150013 821576942 421070133 475464606 484642326 139242108 479529339 852425728 426768109 464561318 321080112 262559427 957636770 326279257 546245107 82258627 183297397 937790785 706611461 160621967 705898246 702147539 777254587 901233252 562828839 732152264 867201469 439193055 64748604 672645672 372817951 467567538 852226543 454468472 739800163 875405472 811095710 672223127 496887381 317217059 700208441 948401358 194790171 978988518 260981787 59118505 136026794 964881600 407300789 438097595 207268105 630722615 578400309 575253162 465601377 79961540 635262345 664419674 330211359 865183746 237929663 304193859 377845458 588031966 72693219 290916978 48099465 701688307 245330269 268383234 489835878 663438106 68947585 872422281 810834406 470111351 229891123 114005597 469089402 39090347 839104677 879445214 78762445 118738261 176988107 459141293 167250150 20434738 598730496 282289410 750807021 304494334 318143231 188737807 183212349 75423369 982948872 578775449 522799839 151663165 116103921 634819902 350892270 526365756 970097757 622495700 798368916 444711431 890244910 972574191 693044327 584754612 710249052 405747319 521502476 201602358 42747411 156864646 754966606 560054995 298700970 257448354 717007924 789801260 399476673 393134046 317502976 711969818 613465727 980849318 532785770 338298924 633629034 380751183 469765677 232355321 817757676 205545728 277899056 601020592 353477513 802465011 346792599 892060848 622110786 282326263 718563150 416685221 680336241 232689432 275171596 583907499 770344201 5366037 495119079 271829814 423063625 544585241 246317317 488897895 387314825 958080151 858433041 437256269 226146450 727245867 809147067 705489018 115970971 923757437 908337341 503312217 529925134 416271879 883211252 351748669 536504051 743588150 952034801 732287518 740727792 466820759 68685554 459346243 797927851 568495058 956681644 691913499 457783803 159891579 630820293 950704145 410885590 968158294 747403313 610485715 339023869 511029293 809232347 75480536 594051786 688039538 518466030 296107494 111523598 131076562 801439298 351615704 687882908 155037197 219830152 56758615 123537640 225778040 654335353 80256632 731098212 620826445 154052055 879773324 65131764 606556956 915813034 599616438 737713785 916670574 957884685 991219764 569626070 3805560 64351789 311262728 310675091 417482293 635094817 578987888 865816052 872062017 135345887 877179299 457487172 728745194 605394927 694804322 433587963 231761081 230031339 362235844 318900612 601998154 337223488 393938639 969344487 562158656 758595318 198158547 360991980 122338342 101000336 123707758 855271292 372477147 625705315 866281291 766845918 822490063 341960267 166762607 237935992 474323104 56197833 458307525 815602039 812281472 741156460 302674178 420551910 884097409 891315288 694997237 615014216 349764732 815212546 733328041 12538945 494919497 703234297 793926040 867388176 57890869 251118223 224658495 998620701 766960469 161696112 736819240 55187573 864104709 627409992 298340380 787868694 372800505 439306972 378471865 696722820 488015787 910855784 683255393 879158082 234488930 594957353 726829382 143821777 53966371 740751534 158772072 143784254 417375519 45003784 615962376 811847095 145797795 177391223 468619965 934082741 734733429 519453759 717784348 123953898 568851386 668346379 713601942 215518253 795685392 471171638 237251510 819452374 920351489 371512857 795292307 153215182 951217656 789803711 767713976 169515635 429376577 426423397 472001728 212474566 52730791 708659798 587536807 773184052 418689597 697907286 4386046 236792461 615637109 896660862 838852123 376536500 253550546 451947184 192012146 875794326 705773282 724640778 830504829 382141068 421432493 594370015 893388346 924422268 309490256 453106136 570440116 341826435 926251072 649044508 51808738 669407100 257431292 789845794 564609130 916547954 666477882 657090153 821234483 801830026 410635827 681254156 507805408 111056654 75066463 461124530 116788587 418647973 372111643 930950342 363793756 128021197 171978482 815837928 586444569 27693061 275774948 491474352 751236850 651244706 385643437 960841345 299586797 816126465 665515217 6931031 29489832 789078488 539847916 138296440 580442262 911718142 514347928 815755482 699226568 143998027 427209225 278975527 293186709 244099384 774905942 980311263 363615665 482434298 198321694 316513778 470390442 978541369 50555542 730840856 208749287 615019914 313518644 886556191 631562539 476170509 243692795 691385558 448219174 792719016 219645183 499708862 936982270 855385054 745428068 426353232 183260303 614124680 309068349 254958141 739473972 754889683 151396978 847207000 98482280 111641349 577142599 70299604 245439115 65095310 757177231 795836461 35580825 708753302 792391859 221280167 410085178 66886179 47454882 37377438 602366374 628498575 819756293 806355236 687164669 186779549 425637729 723672039 631416464 789382792 935306175 503559865 936650585 160972761 312810194 691350433 433422259 181664259 214087717 681794003 829681124 733555609 932423082 396113219 294674947 374452779 899044576 261342878 701826308 195653417 664964085 389250371 163766167 736822491 959143247 311506396 38830193 255460718 499589830 731543063 423932417 59717134 906307976 34578425 790042302 485429669 7680476 121657513 447798143 22577424 605358572 530042252 975138988 715180013 761639235 549176018 785865471 171891096 464414422 707933041 731384552 968702680 103918306 591525385 679440441 867077378 22940999 803108888 145006607 586697942 147330371 5084635 466462945 91702841 961803223 661479044 975961526 919371921 207731968 880525695 587301676 852365217 981199701 310126565 134018827 700668523 196066710 421104043 107348492 708243164 136588114 743236290 786754628 485311531 829535168 323630343 199772587 750860145 578464434 110930852 304946358 121306359 41998496 28923330 311351300 239774385 264210434 759612537 509366639 552405944 486005262 288737308 322044987 345806457 870114617 141554893 801738763 219075026 383094976 406347161 264513177 874790445 571559073 260194303 74271219 442498521 807081372 304698361 134365275 574503220 480701914 104553437 259457540 531332123 537488854 625044965 771239088 352349910 603210193 116049829 586411639 560594491 373555585 890088412 474534409 680049209 150464244 77144881 549163364 143503078 759250272 425688299 439707360 4404142 552118868 112151424 23909934 417714061 155522628 920365696 112521061 859546528 62828118 765358523 710486590 322310573 953960054 620168416 272928100 246978760 855965335 602671415 470000173 517378820 865343729 694345520 302724980 315583885 640067071 994173889 376781246 128634968 543270770 275410618 545385668 453287128 111565456 331207100 268244021 572958662 736205235 807383502 171034671 340197023 780206316 987610633 89199177 170829310 545236641 91480930 243665274 785307026 35862248 760791003 467215710 590282238 984901244 704127359 629740600 993016845 663189567 802077898 347744137 74447706 555512000 776967794 148236015 564472637 350468451 665898493 124539253 442661618 402191012 889671289 407763867 134029093 269892164 539983466 493554337 542099572 693176394 223073443 706396629 633409194 649950735 718925451 594076392 248284660 495256370 144281746 920367846 453157698 301974248 351586777 441125203 711604920 78040741 226027558 335401357 141993744 656827732 663076951 983086718 156196992 274346942 596748893 705627449 983228823 379542893 327139100 545159782 281330419 625561110 588037556 98901959 698668516 924093665 447285332 949213180 979797628 730694602 892736362 958950027 987025387 944261427 699611089 692918553 357836358 326525998 687948158 850033036 618187478 855852345 324017098 190815213 894623610 668667690 644384483 321282514 427580487 166041102 854731282 709206547 136348537 754048419 452919781 390769724 784359648 334167157 582863579 466759612 131549777 739790991 53570676 12066396 578199144 415422455 813765740 510753259 608690702 282772196 759977381 918387964 813482640 140681007 532259542 796199380 948253516 31037325 661696495 48259164 518208286 876391679 217313636 339499767 302609499 744314456 813945496 827974120 440652964 536810560 286751224 177181159 355446814 724098234 22700402 949127246 309432907 904074660 584403206 690477051 839476903 458748459 979203414 663986390 596601638 772913348 197220079 873925958 447122378 61620507 711598994 169506295 215594445 19722948 196658719 530666043 141878230 140636703 650927844 868246821 587312436 707905791 177255546 516040591 152025767 819994238 206164050 853604316 911299704 460220190 933493913 341751365 766339363 444411649 26350917 894403392 971373081 678748629 319651280 748266516 298159653 779622528 473529380 295770831 241590353 602413703 336954381 299628125 955398723 367807396 877383535 737676865 76107835 396544846 192842440 467105083 511310244 499245987 586563569 612265699 411344539 373151041 382423047 665516671 596440386 971591474 466450928 980815402 329261704 999897100 844648848 76832988 286126251 867954566 729471053 884856348 308047137 236132415 565518795 505232146 904996398 420901262 351285436 316658185 455566023 586042384 649553413 938957301 819160685 851163122 827020055 272814161 449849970 192691146 897759324 403220561 233447542 874275021 878379656 990068697 905558558 885921237 220777841 692641015 723547290 123542265 522029488 10546171 900403525 405311719 443534648 762018559 385836661 234434562 163671745 636050293 892952291 244025723 538426009 310233695 51278679 138355692 766487325 101507338 908377973 165905830 809643790 840261330 219912029 226115332 458594536 158073780 130159823 491754075 781462761 420899546 936464598 170258747 853563292 60543080 179783695 732315973 971231987 489601452 836121824 927839400 576104110 986016558 316878909 595129865 62763517 821882219 741173316 327763907 220702074 493050121 784605532 716653717 284593838 620597479 986240716 677653701 553509025 654139264 575474122 158246577 479975176 935153109 823254904 377968975 827684638 335703280 661023836 741847951 327465625 380331769 704179535 76571639 330972927 247422482 793907373 973716656 30589588 448058073 853908726 337954818 132904075 383176442 920381102 555437781 799962836 720449260 793704377 907406726 279654686 127253200 973450258 741118582 12610899 852669591 5031160 926837650 505201671 190617831 777621651 423086075 818147329 581240619 4385918 704232362 746341614 539518165 81561408 375707375 708774502 699832489 480063218 73502553 836908417 682541314 995365210 106063780 683118019 70068944 172779760 72842149 947397503 267911623 66272561 791992021 621938812 29766344 788755045 990097217 743001199 859658690 123755642 172558872 91486946 822142353 783248925 655942948 973683313 601879853 185498797 849844247 171411196 382863486 952060207 904360978 416321397 143029332 708258415 182818806 407118924 95341065 505487574 836191651 550371571 368722827 587008857 582599058 421829229 278363743 174625471 845316024 303117989 924333990 369392027 144307473 145820843 14366215 163058743 314998136 255207094 445702658 997495141 471721743 156127451 338878727 61245586 907204093 227559844 292931014 483660581 25551609 677602502 440312554 453806628 786434806 383185612 982295216 75817684 423426480 564236687 439719128 346356853 485735103 506757976 698054818 1010752 287225353 597305165 600720945 368662180 791959157 248168843 65583072 483769021 237631313 309035752 287770896 816366793 125527871 298793463 693027132 379450471 171145768 383485323 167085517 940674658 884344306 346763836 867378935 5995509 386992909 387645048 453657540 729932305 354493722 847912888 909587504 959557857 557730675 432528485 944942755 71089665 230371697 394659486 128932316 69127695 640667729 728993752 40809594 657264229 19903549 707109150 357998802 353507737 422888043 569005090 101901634 917846047 823305600 547350807 199541314 113204799 707194370 791136234 838368755 944314946 495014345 524157970 135731007 171020144 217793985 693059971 40616581 403528925 792375334 966397628 27226790 145334615 665646968 117127748 895804384 253147532 374482405 770751958 907480996 766411838 801215435 850626077 128821985 595039762 841689974 819947529 863928940 246954001 493360928 311165775 718105821 455577601 936727448 168779003 759055045 678430598 868192158 218741408 258045917 265063353 206675731 133571494 51922920 696279135 159244850 650099919 797889126 585070819 823431816 808228032 834889424 745685573 649308652 788075525 87796817 321131944 412527146 447283425 639489818 757160404 65068717 797122441 967738276 579219939 527172788 48316010 620942024 608727323 374572256 181322427 946132101 977730527 366248863 424156047 363211178 821567293 59792232 358914614 197522270 466476921 579083002 116269243 348200414 737987746 710539562 278535831 595323372 943821642 29137945 920977312 612374527 745628228 45245054 547409386 297283771 9239077 548244668 240482094 595047335 781822539 540057037 516462935 725457634 491876598 164903970 509133516 536833583 94109136 540439031 424044775 500070794 464093730 422823001 332110856 340299105 909196551 713268204 636925232 593882408 122805482 759153850 35335807 932219251 578238217 605586591 544661836 829638231 634947126 35547879 566522693 170374642 858031988 270389148 505908862 886798758 205621608 569773431 452612039 536172615 705374228 343637634 350467659 205488736 931788081 962075547 817613407 101706061 265299080 787691397 405471740 519827241 694068938 457057092 642160437 634724735 936724122 482081147 907468758 268789881 912382997 971500312 491457531 352897108 983302729 59159928 210328979 718099741 430354552 320542719 743812521 597065592 573975173 423893199 687925738 971079261 687018428 159125233 30055817 266477363 105020774 894765012 345418837 881277392 448496482 947745474 752938073 492006137 349533004 386271775 943728298 950197970 236910596 374520791 712829731 373801306 181741502 473248735 101145584 674061474 384876099 851138948 974108895 757659465 71340209 565154471 926745387 236386576 3033822 887171823 995339489 654000480 548042833 65682045 325579474 646146270 666858477 278529281 827459870 229329312 898225311 886840270 789787214 935521640 350276868 332361841 275365472 219449478 512619771 4478728 565908968 991841054 609860045 209354894 169462103 550965951 553945092 258138197 180353624 864542004 405450584 522676409 983260018 868183359 227442236 925788949 464335749 258033770 840675212 361791748 452153295 569685950 849186298 703648402 841416050 688215590 120623795 298207065 424076279 397671169 669684707 304166304 130696391 56764124 231826835 214575807 487744952 257309014 773333059 723072861 389725758 18883756 640420086 35329229 16151332 637178360 710718076 245655041 767869358 572594570 683804418 442985214 786044225 222814968 439683980 11675752 126801923 479953695 536873303 283507491 327358990 719729471 702122280 677939061 1436314 765948458 816791756 277963303 850884863 468047769 675043335 694454312 155935289 966737711 181185169 407185755 624841171 96971008 750850759 849818283 972054633 992885266 586732996 968719652 480547910 8635415 686417906 257803249 863601040 700239906 802524925 787132782 12963799 87358345 378351514 544758119 357698251 419647472 525099183 31638089 288366307 255451369 678040882 73465715 375800002 738688439 284962222 391601980 337809611 436112791 117676428 334035467 192845489 464022947 214362621 477972681 424358193 504851682 308736126 964295913 500715580 1990145 934763479 595935821 957026778 61398332 915533438 437782536 176247156 436168402 172426834 846972960 742747587 87236494 194596667 584626773 703614824 666264818 967333312 685299850 112713776 387040365 762609730 389422089 268521052 466234434 247823079 389206232 68677364 551778992 88195184 583954952 791922652 561906507 299250276 262771605 113057296 333032960 816172395 317483778 511104495 695173892 609585319 431982175 54960079 198478252 772440805 547173568 65342711 700483130 978805540 150765755 531997185 557729520 507598564 581162625 153381171 192278545 488582507 555795819 147563448 981051943 861487986 314765461 803638951 813103589 675092473 723239512 82709156 552776680 670046821 196426646 669087421 68423199 967534535 671561954 892458322 90125050 202568742 489133077 753894440 444468367 275969559 695273249 123749839 282347892 453787621 470308979 186264364 861885663 706405167 983017532 537201313 991485879 840641315 138818115 668416555 494095830 275769525 67039050 403460553 520052546 561033152 225429458 292584104 622637554 664680623 761770716 86199500 646246961 912871591 844504199 609873146 270153827 552956447 883996259 859216594 464719279 167467775 685722505 796837192 45571436 2980242 965162613 772249373 130962273 545832438 884369688 1171871 52261614 622847117 715315477 692373989 213043130 863524359 33019882 438566790 986763254 653852108 962185199 227734037 306952788 573624823 428481583 849653514 744781564 149657689 550283882 971365400 725822941 295082920 920534072 264105221 417931000 79635965 38137091 598915599 138765874 316539156 526955160 619595116 665100079 607525254 300269692 341316514 39212631 796745308 39933118 960225514 564356624 55080932 282383371 692797737 765599497 341308241 944133319 109558990 350572355 48455518 975438249 829014926 774634498 717891344 819172733 885903783 155077062 911732966 983228142 852886960 522841968 384034345 333490806 114340814 414725403 361285601 342266396 165660416 365934993 690300487 573134419 775352748 942340455 602210958 210750622 480894037 667050910 775715903 744676512 829655669 294435619 644214605 710780899 269621038 176335886 481323809 531840763 214539729 352727134 702545315 691772344 624292405 800172560 895509978 833662196 629852615 275915346 884710881 279967637 890205004 414345316 623599470 250450842 260981674 350758747 817874357 851398300 264300926 599211446 179706768 842706218 334954757 334831604 823687241 267655811 534758006 135693425 609381867 644951932 577818409 181804010 840021132 539480904 377430960 401865861 57329308 80468849 543487183 101367242 265346228 979541269 462692246 900021558 300662908 170375583 985898883 978267061 701246894 181196406 618501125 310581409 660512715 583913292 251970365 427878080 435194164 80267120 528173241 398129820 387593693 399415162 141111642 543513275 890221674 679396271 64796997 746159207 79021039 652579262 192390357 836973434 641026508 419050644 935027420 82138501 376847850 855425523 777209838 807020154 546306923 286712412 956125090 734925915 504480745 874928797 186536084 240670634 800700748 587464444 157639282 502795866 952177014 164797568 10196907 891029884 36596777 808059674 257728082 486119790 729552803 521819696 380944966 553828634 224045462 875033113 644921212 856659043 245549099 986942522 731011339 397495515 129458565 521780559 202022132 130846662 717201388 48944198 577300661 832505555 6353590 653676336 373314325 311734066 917020516 333096379 114934237 765999884 140579100 606171373 128239955 411620911 105596090 991779381 143152853 61956339 843401167 779810473 770136349 958231545 898693298 132715412 569935262 374958090 468130105 465302310 546115726 744246489 870116609 236330888 572276959 935809815 978261718 296423446 327820421 832392630 833171296 987798483 956841928 191460188 708131858 9088421 945634596 919854607 286000638 730778246 825673481 814578765 868569272 605393534 974140253 53594176 316307394 841538044 786727140 396872584 596783259 600622094 528782404 291498685 433128342 515543724 324596458 645110215 913169634 508591347 435554423 987957322 644276143 654740481 561167820 387986867 171319597 196554288 119070797 340050274 579173317 678611470 349762237 16863607 124795951 264641467 228385407 525000892 126179425 824237262 694441891 806195847 536925372 115611755 549717587 963832543 264963237 71625798 563825946 738758442 710008320 948655515 278468356 741685997 497310936 961361954 372660055 621620435 988880498 705530130 40874713 155196419 914743467 148368695 842921591 296456707 349020955 850518083 547890580 460051997 644307544 18083921 470464784 971007516 777183511 143111339 521726863 553855920 683364157 442433409 673576347 967581562 337139436 619556020 725754181 926545706 991034347 695849174 116387543 345668825 378114518 290731420 680861372 184291557 366810784 445831205 723524788 868528987 590380632 521462003 723488971 472400368 266647861 765513464 21538875 757896622 190305548 648402031 830176479 224981623 555892252 922944979 248723096 208026173 146603079 701923911 78873620 923452235 827749733 37665542 729032717 378399753 644111260 753524938 800083238 181633075 871015482 213819855 44835101 982598938 578700886 996299277 699247607 174671403 662615816 715411334 800205922 22067880 418665716 676262111 470512700 858959306 350760249 226770150 202002015 419344547 803223854 21854647 281213082 602098444 396217016 719429802 251984799 450707904 574034616 6821806 293396014 107965982 328910379 940681659 311801457 481758418 584556510 841125933 822124939 403406463 182047960 411151778 232195355 801070694 16982699 253567631 404682739 893634687 680086293 345534908 989843321 759619725 923131859 770811550 854330728 254360568 374201304 575016675 489951105 606252215 230974702 74056817 890954654 496030726 607744810 416041684 38479645 438411831 236195328 40600173 979533586 216853425 470606988 661372395 531545590 456793775 812898643 209665106 345726211 149186809 648193554 738289627 103939292 12611516 542469296 31543025 199439104 40829219 898076856 968560964 250499202 53087769 859265592 952681291 208563294 612350487 391216465 209076750 879034894 995604740 7309203 495043907 569463727 981084657 853468608 121554053 437097563 152971914 110114130 865811849 641357860 202159340 282982307 665731641 612019249 229830468 624674840 389023989 892247721 708935898 533239353 836465839 149036026 343192356 282915995 918966456 593184798 996132707 290939752 445172848 612277773 552328760 495141255 101141340 826479803 51966338 42084284 533051195 605015741 396758844 75292972 985302693 8475596 134986731 512987059 377288778 87842812 38651565 255504504 3968310 914847200 679424111 628561212 760649697 299261628 899952302 903070371 232291749 732944291 947401533 105532801 940131850 936131733 40064394 992523927 803341158 637623432 556765712 222919759 3863163 707732480 903721172 538099730 677635531 71369818 150019387 267595126 740622557 234159636 63151988 701865040 387489336 485908309 910382306 542168810 213096375 207135788 751385096 3590895 493357730 420447425 681985654 574714686 494441150 975666084 766044257 651066247 963391154 582307274 169871278 399869966 846551814 38470664 369285309 724034909 507097915 675931942 63667757 171066730 593688861 412606123 652488215 656655638 453955213 785180134 898666496 147502894 114528341 239041368 90998429 78455734 44701596 84074192 86414064 970695249 373005430 350582736 947712489 840792744 120981296 923649119 16345945 36684734 181559622 648062260 431101841 485819013 988935538 371616379 804045452 175711088 196600701 305554496 744795918 252658222 425166536 577195283 397486549 548023385 335330560 454261732 789466325 377628268 754695405 62549597 713329299 842613349 954418689 504782185 755480515 310340523 790808479 329619999 700156310 107113217 36396469 529948407 490314972 647724670 584740677 615914275 689969292 659875133 142741361 131551995 938300074 192973551 79369715 386609748 696983890 511215726 555464782 179416504 97950814 392922884 949429318 406524907 934098352 44750222 70571463 23662461 376773017 156879530 710078647 25615435 813556631 490350432 175722061 292819077 396092271 9339204 645921216 979527222 423675393 534468674 514364611 116580930 693335505 727285730 511384277 99582295 899494972 895858897 992139043 421560596 993355723 188516819 588854492 869549472 764743908 306084533 800549606 759007140 221066992 925538629 534570122 533517737 554073151 548768945 356657938 512380006 669118222 454542899 817547189 39449210 89898583 716717877 662680644 593064123 112054109 709525770 363513693 230424013 358575866 897903644 555579858 332591248 301169225 701817227 484270670 621718447 698497465 238469857 755200526 301957004 923087869 656826411 193924668 850369238 631993985 100253699 765679004 466862144 549367252 722422011 537537898 754050988 586814730 25812469 450351552 194960022 875032935 949434046 913167823 582868248 918155171 756550375 10600231 429301767 650349229 47557917 341464723 101582312 550874731 35831993 187761913 711880798 934232254 638383965 151790485 720866038 629683508 480641384 662369764 875174685 68598793 859301240 401636139 411159674 249904826 735371167 908205858 98094153 53992056 808554760 922934874 443126583 167605545 249978785 475208356 910047429 623992946 550368526 458842919 713576470 301706414 265941550 714099255 360442668 953467570 441217578 59668478 268337895 862799962 851838146 794213563 389544504 114200416 65895856 646398639 220651475 662076473 646926016 98299385 211733040 284208428 723118412 96583895 815934630 914299105 518315785 143823214 204387004 27384881 900473572 287345426 926709846 330968934 698260179 757342660 525977259 788332674 655089013 933082147 747964022 934839784 893916280 34618915 583370229 991135058 308770848 712298062 678380086 777582077 21031893 367901527 223033055 407869107 499868453 309561044 822676375 473460645 760822938 948079197 242406769 756727293 707831800 224551294 78115432 607715482 778178963 711882406 117906843 249079591 41729501 934761134 949155064 107306877 253901051 829496288 53475485 534278272 104228966 489492767 796430607 498653559 917341137 55128132 545493996 979968013 584977187 89234632 907528929 1931265 293132695 607056443 679121784 222041424 522133308 223297660 55146852 402629679 398549049 442349093 734190196 357140762 160437132 279580476 679190732 397821929 273203619 852619701 624728826 864441828 877144270 888286228 456073759 160503657 261630904 521492095 289121189 83703183 428423012 796939220 815357949 854973695 639494997 792890922 803072455 653528167 903050036 613897928 154666904 491656639 54465446 152639953 117219638 867812218 624420164 630468058 343260595 125038266 698776243 238368093 663617273 94314776 919925233 319554900 201474612 687572333 647907647 602101025 727352355 72547345 569911934 706199914 350217139 61738905 201606368 673443505 636395351 783570587 394349232 671517500 401424819 851363058 405227605 147746427 949709402 733016616 518045896 213120433 943134427 557247507 719777392 860819920 811744958 564774225 512200777 322281865 520967554 491978342 322044245 98019896 982420371 199654753 528135038 764557193 916105339 606998987 679716440 939806531 611596535 287052681 74776464 511746848 384468104 307771262 947805331 614291975 704104939 521846708 311510091 174865773 396927440 816149556 81370616 749998489 841730293 544781021 741778552 904523387 932993637 395161027 540237097 78337400 627250779 671056097 795912520 79948560 334022939 42163459 567486048 165994272 381573516 910454204 89875783 569785862 982718773 337941091 909047213 593547411 353161594 865788431 251647150 297900997 595839394 4965149 175221548 879628731 481158908 490786884 523980327 241339255 548250416 887272167 966143793 796001212 602055595 277931931 606886841 843681585 540333648 562202190 39703244 592339275 263520433 653590322 764681876 213134246 896424164 858809685 392209406 594501465 230894570 752888946 475796403 670763305 436395960 345491018 258345101 286030103 990613973 258283782 913678595 766875196 181504253 151854000 548545926 33601431 510439179 270751619 390980088 410206728 739111116 681855942 11140014 40701288 132889568 434153833 522897161 19091776 540306764 50727325 24789990 815792694 1058173 91211539 612496133 556653724 379197295 787382940 494069671 440777662 475450278 47054040 116046852 633358579 191455187 385142821 773655665 853940682 607118984 971503188 326607071 729063877 834482747 176536895 709882473 360844458 766651870 889710205 49716789 477776908 979730440 842345899 56631897 30760780 912302989 161221264 621482707 898570899 740973410 68267446 277462397 60559688 304730591 795686674 901756307 810592223 44122769 373434850 561577114 214897033 988942170 624738866 901473882 89427274 534103158 451201743 779430678 545411255 998983218 976466139 32177406 976931008 625364191 180443457 985938862 698249404 925344644 335588309 328956641 315139431 358533031 675219033 66703235 848546161 361664756 554343693 467491666 686979144 340295904 497604758 143702638 387268450 667961225 545450834 587279478 329750386 533543404 197504354 559110270 288775198 164566549 574229585 373398828 688506088 54305218 872050755 548329176 143698000 113018481 42924574 394764462 389634481 4301201 767070304 584232238 264203921 555219169 694763988 905968825 440568078 534271794 283205775 628757473 740488123 402270000 456207243 564890364 860288768 918636423 7531610 286370113 270620620 579596903 752071727 714053807 207014838 276977029 634357483 395057003 872156776 107127420 218867082 185947693 741699239 841084195 352296615 454633401 308429881 764857880 127063576 196142271 785806111 828740963 968985398 503405990 758526354 525057561 308534972 601251837 612878952 52902033 835861345 589416638 330335 237700202 563304798 885868337 249991156 659151767 25510105 474174947 324215609 781825162 313920490 305178116 282150617 113163115 215634464 178407030 270290080 381732287 279141948 898050773 873182212 946809447 124269845 655526046 493350421 839391350 370562767 862138653 68642219 50990087 930142971 251041245 103794720 532140155 767676501 357104577 307301892 913385000 286402130 405490752 876193107 295345619 369091217 586055318 801878043 254074151 976402851 687037360 719176740 51925875 411044675 800595674 444424130 549261295 40628233 727408664 236661425 757437683 204136147 601744093 187702794 923063342 488573368 322057059 383932180 595287300 399788516 386925507 717503137 942391057 717156060 927508954 352670892 861966568 820940532 829181916 341403267 56294498 725744833 499622159 547686095 114005404 467760956 718599282 815374576 842496139 552528902 10688563 50992034 795462409 486256866 572520200 974589690 350687172 225004645 703036092 494285477 61821930 832880094 218169497 616902989 711385179 793617274 304765972 304990206 19372883 830084740 465974945 237511844 411987574 832482723 287345992 102773783 719826852 941086855 529147875 975538778 390260628 790179714 688150586 512929047 542500761 322379263 355501150 56561819 607783198 782429090 749172300 270905296 106874102 467693707 899802691 960867603 981567686 962698061 740914062 907725598 628920356 283844735 143790158 388782319 101615918 916721289 123687202 718131136 95866303 250083350 370167145 348654315 312422237 695200004 57104075 883905818 689147676 825015166 801415371 369547833 432452749 250073195 10524367 616065263 639895332 886228058 233346014 473336361 683534690 271336445 479582485 527837469 482554418 177768100 562497516 586582326 878765137 428087625 261992843 67061166 736557662 58625166 562770494 464042286 272469474 941511446 2913286 698105214 181455504 598245936 185208677 960270529 361438167 85020206 779637846 363114506 871506438 641809648 717455358 329816998 994725198 616182790 992917707 421724532 590746435 787366204 16161640 614149823 866821324 961182079 219404774 671015064 912929124 978995260 682463329 240129959 650159008 794633697 718282254 251432920 963581171 511411388 565217702 7073515 611789367 873787908 602860618 674070415 831716188 327780329 348262551 602151422 216722808 82906454 772017143 202384088 839141115 203599742 890689657 654284845 863065756 473632608 314032252 91825388 925428587 276483123 420799546 244889288 369931771 521324072 242627576 691195241 542207397 620405532 304410501 747218373 643399915 591366018 919370788 5516428 54503011 222339609 684136625 817198491 40607668 998472026 940846534 514297198 136729381 413193926 626877107 629564015 185001148 198848201 943081898 243127162 574680369 70217351 972730884 939403407 438064831 619455829 664208060 754121293 525713177 328397551 979047963 248117605 693702385 608786487 304574866 683663022 153211154 510771060 371675925 80003524 7438608 238718034 253597197 481233784 642328988 228546097 894336865 120123217 524699460 919648131 504804116 172730438 490613727 310069395 93960411 836816067 65720657 835158832 171722000 851083616 2860737 294815863 767804459 936049642 410888875 355405375 32969353 325991160 121036542 271388360 193350983 872510719 286660845 711285844 995893654 268820305 282979287 774353210 481478094 964682413 50367217 695836980 807739508 995959661 793971976 892028300 296131901 897796375 174165663 281977299 466411789 830229351 739715325 359667659 855032690 898458442 231133932 607381487 774737687 163382970 873264317 405497498 906991009 115618663 840153159 651712154 795951568 385491201 18743332 827387446 483119045 697029150 621419625 248460719 592346564 658530367 354979285 83782639 962495063 200763327 259876029 948643186 13785331 661140800 576966289 231444293 434859829 707009130 470585823 295585660 125629660 661863715 123922541 414165227 843104052 53394472 319120013 585253366 168493749 9293866 615938335 420821599 528446431 8450228 693308954 4973477 38726897 78505280 132724002 280149852 710400549 170374656 790940462 5615747 659951591 759969535 828869537 466747134 714405187 491045422 817926995 402338641 433227538 589527650 747224327 607672514 675301684 873396651 514088970 773792741 967637056 107033969 103604033 764575289 921429661 235573622 797494625 971461523 373223846 960427468 884563040 971407137 451717494 117805852 761659438 430362712 755692055 484601953 755099980 385947107 871957158 755220190 113408984 518348028 43477347 287272487 185682608 903260010 570905613 76110657 351114146 582880514 434960146 350680216 962233162 982327682 175279952 757178049 472893623 621935215 152578626 953835970 909139592 163540333 348427947 286621135 259417702 997396637 56194001 703503713 181778390 305118759 688439698 662706799 742149573 706580509 938245072 358402690 501341116 628061702 413518931 469604201 295970938 60706709 640137248 851224409 942748284 703167919 744119683 64175431 54405227 561257661 69568889 51607332 807371930 353908498 219757347 227168087 213483287 612312884 668055435 70700771 461297332 382283730 765802545 195216584 490058764 89188790 396185484 744820930 358668307 792428077 281959687 486263825 720854795 633644892 510335954 768751927 15187230 698022487 118407320 255054648 576909975 582173645 203410684 166301310 177646069 420122035 527529400 729828877 232444278 564230409 206410896 790160940 783861427 373486598 96116678 586859346 952401958 605954803 986547680 132902978 712980093 809560721 134979854 958879336 393040876 253515314 593280376 120121060 799315923 735448521 414703753 763706188 975187731 818064962 618001467 140197958 358940906 338664537 116684340 223097215 429499528 501559144 194273269 654062469 160189017 290462721 775557582 709714586 861415197 639743491 416930230 714274734 392041042 400872636 957716851 809047083 58565007 681171849 620197568 783954717 367150215 236424006 573468935 540615847 656287645 988019821 774906065 945881304 672893311 822972501 87119171 536723893 458746826 331927861 263787264 946958459 80292636 405339291 409937608 650061914 748571828 670140706 997611748 369696987 218194055 625889431 487262490 737028861 258595215 340072963 697639145 864853542 555388941 958298807 267319041 377859120 930003380 566606095 944803044 528570038 267469812 251567558 884410751 365317867 355451867 853511912 349943179 96989397 815012231 232282885 121538932 4579217 335261859 841886915 719829140 912493965 841676431 787510164 898718252 294459639 754300318 613563498 961605658 75692153 407716871 506703013 831727141 347864920 151836526 564298154 539421035 433187165 404382162 423281835 326493762 516905185 524925968 794617108 792969407 607285102 939937655 709623614 346051161 169127966 812058109 288548182 963298898 677639460 614514084 549465553 226035737 248401327 910837540 196089521 625017684 363608751 544350812 110638815 456170563 467458174 990980961 53613958 207996937 238831282 679596026 99161885 904433668 133429381 95922193 366339723 878091140 862438601 795126761 537714954 300398937 166685074 254944354 849441427 965220879 946919757 537926840 111659120 139640974 291543845 629328247 93605741 478463690 724005667 259335259 824392972 403651541 91867223 636232469 376601100 623443190 735282830 653876456 149032295 962870371 265281476 194528009 844515535 431192113 425479011 616252281 866044202 757796642 492881738 258253825 652271254 28643061 694690445 535573430 115480556 390132455 189545184 812276034 995911928 883022575 505701128 180678165 870895724 434710081 467755239 560336972 522760693 531048798 40918392 60484637 317975978 734605920 463191467 631350414 507439387 669593413 126706637 24412714 434979111 926937326 647548628 710467613 867662603 525031330 157494810 222241271 809246596 855409216 552885961 634190484 795308172 526044787 777147795 96564730 164133493 477120582 364812979 471721299 812064102 977819410 385101389 618041481 904260111 548996827 727419134 771122271 93141786 196877182 124995885 188744509 508835988 339817488 921120145 346927030 139229568 64398003 121666197 962835164 37648320 105630016 359099634 216730975 688305248 612443979 49270187 473224638 727365545 758590858 986117568 197764972 919224166 16956935 597600599 155513651 325550071 784674073 423044531 220419606 932298366 276895041 592455137 588614318 685957856 904467170 785645831 380835204 437801167 879324662 858067952 243463849 639157259 429245153 397792915 960859747 756191832 499271352 381226075 679702094 99909066 408839388 231500072 567536451 190010943 913887030 616982725 938111438 413419222 198244236 624765944 383497018 2931657 72840777 258678079 81301173 543730652 997435121 39110868 302863957 887645498 907521402 39949208 801528544 442477937 663768286 353465058 900949344 763858224 735943310 983909819 872508679 230832220 381351518 8468318 476501910 612987931 926276953 372981949 94414 902828064 263678710 151038835 623805088 924187521 240019997 421747364 101252571 754210712 356465889 12075874 887266950 595642424 338571225 646636581 821337319 334568751 939730206 972663297 957862353 69369907 488138114 984296477 132517951 746948834 493075966 411045252 778729716 790869228 144259813 890012233 296317302 410340012 478095746 131332314 606447456 512751311 504894686 71722578 421890992 147349186 253294634 987558007 506730836 252011396 360517969 746514169 136694470 789390021 411783064 536536915 675594624 548244364 685162932 489842305 966053155 416160553 155060272 907592325 83353516 589712033 769451021 454930279 565496738 104720092 125163220 694624927 199874019 691407567 515682522 406145486 821719806 168793297 801560317 119850642 147868921 715954502 607960478 936514871 484281182 503499675 709764760 550042811 54853397 830153147 197767816 730232076 626984972 417923010 635278524 925232377 576135493 104274599 172560491 412327196 482911519 599495246 107069253 521179776 200649329 104552453 910236751 502008816 567154059 214804814 154077789 971110155 778237744 417260726 808949064 610389508 645088529 646635515 608072926 682642883 676606222 812253369 369827015 680826025 732541523 956572688 733522662 807998893 264699615 1357087 390399325 761686304 673445794 83470973 573360535 767883026 394307380 997524604 680084002 256630996 764204347 612459320 459556431 178016082 475281307 70391040 203678268 775415173 974927015 142498177 261394907 806359734 72530069 190160633 474897623 70368683 940121926 738092930 809564526 474485450 286751934 350777888 642646377 512041668 535856624 563180916 24061201 345258732 563048086 590944230 6201512 300735566 200494412 831691873 118426595 305283656 144202938 972126992 780107056 478345786 89651371 182319148 501962054 130504830 812334943 82987552 399971278 188404320 637512353 934198361 710752520 963022691 830444510 871536891 566447427 55535967 12239474 57535160 527022956 640628309 114236540 125819721 560834043 283558264 442615427 193989983 527752802 458129418 266740004 952953441 50530942 969258879 540163105 647474736 111056876 839435197 791786270 154264509 31680301 632981956 715146871 726499076 170361820 679044548 78815854 20274417 284829703 934998989 532459283 623568923 154906580 138679478 604037943 47825239 156350625 586434354 216293082 982503130 839323840 434235470 250404157 83465798 120590618 360975372 397724172 645958963 871839020 286928608 683572235 893316726 546740929 883186577 99199477 781039074 235538654 349358388 150113437 696063958 313040489 172370472 87030842 25066584 466145417 793449879 839997513 55761966 719204703 394345760 180040211 642883742 826229724 907736245 8481000 673504634 742366456 438421938 31045357 100671799 7864687 571199081 698776908 572780137 299585910 322994324 803788188 264734183 612059794 521619572 286991152 478435107 759821198 536323744 133345627 715052532 402843456 336794882 890661193 759696250 760125096 112508956 300319772 821527792 64934141 922653337 856252554 765903377 779834061 356646654 126624793 341512677 508817335 185906622 929176230 336064270 432326708 567629209 2876339 947225810 45337559 75331000 472599258 884134428 259110399 612263621 703619792 122870100 339013923 725658562 643297472 936144375 960933740 205813916 871955852 671549287 907860466 603788408 629818363 793135075 74146293 948494649 588170377 88806625 572407309 820845163 611967548 357992637 430149861 150634905 606390942 450277824 903004180 780074347 767304616 663388059 389344721 629103771 134834193 806196140 846986607 137595958 392969789 197630534 838725225 467953642 260567902 764720376 328743449 211625046 483036359 153426844 252723003 757377290 281058900 123450044 456071998 348776352 376118439 261559457 214559081 332765223 748335116 917750769 274725122 960289610 575384444 616966385 87669824 833096483 612095545 319710030 717535339 229989512 88531358 559170277 27483800 695246872 570581615 486165736 61290506 729359749 60405218 137059972 428351229 820251619 578913196 928205744 890244367 423606729 9230680 4186214 724842462 511334734 137376471 796886602 245308051 950148208 394316793 696522933 726132101 643502076 885815264 235793322 419964851 245408396 25429550 11409560 855599648 194505544 697095046 173611139 118221554 737056318 618654731 829533871 929359927 920731450 747860084 275042174 676751226 610768974 483259652 810067111 184455550 791410941 691432351 444680042 414619151 181300560 964254780 741052873 742478331 139557469 843204587 491170833 439318580 423123732 997830148 320293859 947062805 165074974 985484005 17746157 312609222 947258885 908397612 835011542 52814554 468677675 959544734 907623248 213004 835063406 84329203 892709717 798723714 117456066 603044920 815121263 309065637 364528640 325373361 715899592 738824455 596036456 996763482 995170922 626188937 901425548 113910718 570061813 112354208 756054145 529818087 479329682 361696599 637226723 414502636 223297327 436254100 534326559 668254448 933259152 8340020 323635607 521242129 600512516 138903741 567769096 880724479 7112670 72853772 3238687 393738102 883313517 505875812 901374010 403902520 529277542 341018093 655839218 933447889 808689985 390658489 52347212 842215608 529727916 88292464 667400112 353522961 806050088 487629111 920339432 478027879 636916042 821221880 817894094 497514799 972905344 571477 645436413 437182472 261835767 551271503 856081476 998081052 101699674 245388502 811628253 814359263 442246670 516616081 906305081 457889467 145562936 482122080 146838400 824259297 775495867 614911116 696929755 966947270 200253719 483639156 887694515 268824463 944362982 21727032 38624474 880974454 886706673 608994005 380871033 454041544 392304369 378659862 772132202 384222156 445392740 672489166 174513359 590495061 971881042 383406746 882243045 148943239 982022027 514867039 991557651 450583501 620195432 288454210 457096434 949579056 513439034 884299781 243326697 783905323 119008199 302276785 98422171 430815947 248949217 954745623 766467660 99760548 655017093 364795553 864523823 184442603 727056646 715769211 648596519 411938301 359740257 310508040 185227770 640837796 606651878 56135188 641859201 752916218 253305540 273270625 674288947 750855424 747421684 649984491 148864069 99479185 49842653 392474308 335669565 233602913 864367205 682494559 972788688 547133579 333321734 196717134 436630942 616010022 555630446 736755916 706518449 4441055 58755940 909247416 389093248 946324163 58272097 487059649 552059769 831762518 679668055 895448228 882371898 36570246 987168778 969579539 863316006 407235839 771933252 965122987 477344345 220771205 906644461 924143112 543282853 524097400 221991605 348589419 647945136 796768117 563652898 82313466 765704336 723108764 273521282 504220662 241299994 629893097 955085130 763316433 579761664 275976389 647185389 256451888 336216372 37404232 331082402 361738664 199609599 515497207 346704887 594408846 780647704 541457036 185732036 337741447 322720118 7394449 952956442 791082989 180160154 762476014 710415411 695044132 402798377 714899675 590170662 842843600 430988035 739338018 282191927 656850272 177851129 609372618 694467963 231268535 523518478 335293994 899605559 401738661 538465480 745476378 653794968 174016816 407374313 438048772 150415198 891384114 439387116 461119124 954711757 73978696 530057042 751298568 964737411 176620891 969560465 834767660 503899933 758196454 130653390 632313071 574026738 914800144 629014213 78934803 786472067 261036909 92039662 43678314 916855046 591416390 397778879 652760168 490348649 256876093 858403500 630961819 271433975 280600689 949862585 122406602 886067587 495309098 685721996 328294044 423740791 260622371 964392098 487032391 221533710 684011755 645682667 38534203 758281125 520586431 80710516 803920019 920496219 71416086 22503511 400490865 39401178 119250829 823152484 933117575 268829899 974509428 366464140 844252357 368076712 269867947 333458885 83940928 367613399 619804278 951696324 812938172 527353206 144862068 276342587 669170373 728028935 879787753 647412963 434430227 741197534 43335846 685877894 941209074 394709288 519968218 808072940 389569663 221193309 455552669 481719269 301152886 14360312 392541704 52728492 356505229 791109308 584528805 686623197 461200603 740359981 607340636 969474390 156067781 37128551 411057654 413135402 127208284 481578701 728104491 28617745 729645772 237390848 28095837 909499914 99584172 138491140 876934835 333876942 715177115 551721294 715184446 702680472 668718578 384022991 933142377 911097576 745203969 516927499 693009876 357005757 14072566 8251337 120626090 777016216 391357559 383902085 233822020 709501805 680830830 95330439 815280275 510540474 128828254 416340009 401972425 254366007 133491962 503301973 724808446 282252290 923848994 438515900 176541160 121947181 704590847 673030811 782695958 79367599 824929884 871342188 546875273 829657810 823630220 190080092 700135732 616700891 674244538 709955884 459375451 429239142 995989667 303380225 789454549 499191789 377816159 215970324 944361042 422758752 962371493 677835594 668312922 104400090 618798967 868673648 432389975 663320536 76590394 525951489 180272030 652932021 584104791 939275192 26696055 947941684 297874985 913940506 85055567 75188438 623510885 12965841 491282289 876251434 347196696 583173073 122272151 84053874 767979180 331968608 189354108 90834176 341376198 536581832 785821102 881246218 966595225 884241720 994192283 908608211 672009680 326442019 337836404 541189452 11796921 955983759 552372024 357908230 227104203 614620337 274688774 782412088 860932629 358553410 144533246 718115293 768517155 446485417 713643103 410097367 13825235 421247036 663222355 619431007 94784159 46899220 452613005 329940269 302660312 304887378 109408066 544905020 684848373 674991891 239112994 396160568 901176783 209563226 592123375 972002369 500754728 787340371 437909042 848745313 669853597 637546100 429687629 481899616 45610248 960858807 862575725 956855499 766690392 731037651 473996150 202034278 976947375 650285967 10303657 498238787 884576131 650992538 128752186 9772970 784076338 998720055 40262645 650013616 10301732 581066781 997956080 901103921 260311138 332042293 192267262 912173061 832751373 208188748 23282956 475097354 142105415 696094972 596789661 835640463 737284438 984369075 892344825 6307655 149784764 921754916 210693394 490847484 736865209 507052125 825053712 226912829 491981522 556035423 317396812 91330291 948075279 850731087 18858553 987244920 958938385 868716570 317551459 351010266 12657552 242540999 91935095 717074716 406788262 245293215 426806788 665323681 920929848 898751215 109460188 483634573 576029868 608804430 160439003 480930197 974667742 561333467 278206642 901714393 884880741 783649671 438636905 371927500 123943656 628533639 656358180 617802990 829390902 39153226 103509618 883564900 302241910 49918638 854951412 577016476 933731779 847171606 489047387 74374078 347552343 872370940 165951229 355074319 387562118 584651837 609241354 752463062 29857499 543609174 849460467 998932987 745912912 133302509 493193656 534599221 512378828 454691238 380785882 651723660 445970382 898644824 850748362 10506107 670909440 332459620 725228472 479710749 139671504 265624395 371737381 177598159 324121162 94095024 901503159 851950819 171325272 853944887 783424239 380086022 28465608 780397339 609772634 969873928 217082223 343318992 804027891 800895080 442187656 353784078 374674719 489414828 877998552 747867139 93789617 170025469 686017199 272634735 603882462 117226954 216596263 359022292 749715720 585422445 51837837 364842713 315848027 150817079 489637227 153807134 80845944 249595061 678441170 984047987 180629735 817812006 222379869 199709727 400301563 873075904 830321990 787683902 172913231 462356332 270997467 804221370 85702515 696878821 130529350 928614919 788263944 348568710 978977059 961282345 435179152 341317320 972970916 705344920 673561644 887933098 331285395 6057030 103414181 867539221 628416003 34794231 766725400 495890685 52424687 245038199 379077459 300853943 408996886 86232673 680014427 282997538 83219276 697502045 356315396 423236348 847492758 380006811 13360781 441329118 113113953 508232366 48589771 196974748 544615209 947380642 690818200 312053025 59571257 848675113 122036105 153125403 488102179 341624780 283819150 600161667 452512773 480312364 533313845 612180293 199091011 743954326 374457628 298163075 853020595 915130022 845927177 727478368 353220624 917473165 288715194 606317775 562313147 377624467 347463324 240348899 688900761 860482713 325684169 1462568 349254912 264261054 831129019 799004115 949834939 515165034 259702567 811563988 24265971 67211261 805241252 150206814 132397160 418494320 961428302 909073487 90018615 627847609 814342664 327775534 328677960 532828683 773831611 253665026 730587923 725263983 500046506 136674612 863620654 699407876 925911966 306249295 615693337 878377389 649075101 831388207 629436308 818777642 324718269 744800264 416011307 56035014 900748154 932791269 803026191 91700411 224316226 852281957 538555263 423338538 911004101 199104619 39403308 24146550 567201954 561863940 322217573 955829226 687180088 968234174 651142122 488266524 477163583 186452280 347499270 451156292 601516693 393402577 975321891 527456112 327896913 688605128 333008830 488156590 110808984 889215497 77882801 959176838 173041349 921877314 115303130 595544447 472877526 170577170 785433363 700872162 702227358 15601530 960997910 636827121 216842911 755517880 389912814 164176777 867651995 216481975 348554210 854100888 490705509 459376686 702256163 183859689 485644076 545869030 40689022 153761984 985503295 646462170 43880222 583179194 860713185 671500164 699717426 878173090 966454962 25944433 986334874 401297416 380579297 594905044 457452046 162224210 140740864 781215021 48135173 51752542 826428095 240676688 808822498 313029636 476629606 638760839 213229415 445709554 401434193 435429455 156823081 349350499 586818610 176445939 192510081 464901307 788110870 732371441 478877468 409540387 911787128 867930492 434250012 595372370 978033063 40631526 801114577 838268691 736705323 10469510 703787774 649167584 140405460 43045014 281252938 283556359 105900065 527236346 346661898 959983336 178624233 759244013 671564476 987960180 307371802 426563751 542041885 498030994 283948450 420402683 462105684 351758220 49900744 813508417 517401278 390735082 306586005 790678083 752326440 588538120 184821289 462577273 453657631 43107557 386225010 495602299 147021768 104869705 241192153 600749132 70821803 389871772 145393799 180781719 758808519 906632519 527149350 429864419 331145002 348264088 856666307 902293945 11484478 873148494 451983296 271435990 681624988 568238341 639445327 28702156 871036559 777456120 693899620 795289377 977554434 582750667 376275327 612228695 388626695 258329948 655790715 13572892 279384787 173059123 543869235 65338833 449288934 764590113 239286986 221393508 251187759 766788830 772459580 737980626 945461858 800006658 740503803 853060789 456384646 823384814 867193553 236277314 190375474 945663526 397584605 179843423 393815721 194441678 480572544 904779640 40872440 134485233 252263309 181705096 10359381 158268485 315189009 354174854 151148246 636413696 873703047 48334931 593168497 859625710 400840987 673732358 17150851 742588406 334616931 461201463 625631088 149834356 989647648 292941711 364085936 555302572 521154645 893634039 409918748 438540748 118862388 257210503 467061926 17289207 649898268 786714838 597314430 56646884 26347573 211323024 973384445 626676226 818535088 360283843 17207408 10301118 365406610 114194369 708301387 688503201 536826857 608509113 626936617 75626936 569825118 664912235 193461057 298525422 712571755 532269045 14757233 188312877 919941504 775277008 498153674 653371146 662944321 702405064 933837978 776070857 808080186 135953741 844301635 967603390 740965849 687471163 441313928 446919719 524803909 385553587 34816713 850861835 876698827 139084273 394736437 375960500 342867286 168474920 859657292 16267040 328213987 127513135 33306038 853524614 324779781 464159540 217152832 142517639 908414438 178776236 835405628 822972257 59485916 585725386 180979090 451750565 837791390 99486227 410486891 888183658 93935344 428253542 35588325 113066602 509024639 758052411 229597657 797965822 280626703 412161717 821077212 521818568 49569092 143830484 893428405 50823095 628804384 322833313 539409213 80385109 318315620 238242392 996324411 860676155 141201598 995958256 926673086 200613517 154982499 546727081 769641665 961249560 650286758 780594819 414660801 318989040 13337540 638567722 53653226 308469932 338714609 866143909 841565874 74354698 123393475 580500903 442381716 119447424 922351043 910707132 896849969 906015018 403186431 849164106 942027228 860535831 311273106 876195220 485002450 94633905 652335031 983704654 928360757 363491175 283923424 489010490 441157514 703926042 924633839 548012434 805306630 111505857 888512310 850218799 685227906 510873861 418740429 347084483 99507650 875477551 124814256 325147240 778432587 297688435 577473816 327330662 726857578 164774717 181994995 969359223 383653706 307855188 913494711 231613736 421196619 846904922 823413728 613939790 613465432 265468727 969771067 801430602 673447339 848067998 812625749 717406784 831001211 208579081 485062737 296645131 991564967 760325339 177780296 586218554 544128754 569069334 230259664 455771804 980667410 932716675 697885874 953721828 156173754 696753907 278452877 111925676 731630905 395099853 210548596 470130234 711987413 954838664 992132716 672707502 342754542 74590649 329845049 905761319 82233132 19698918 603021121 33588586 611717310 571391689 319684148 981103102 529216827 709599206 177584318 491602513 512646543 868135528 689769662 515012832 967110966 978555101 618216942 805374473 35225311 390536794 550510767 644871985 931366747 832890664 617520466 682059953 544541275 680034945 564492079 646581923 973952287 858533107 409179917 853333918 71201972 362956056 126782717 903833423 570821634 563429982 498968447 686141305 351777604 243998806 527872230 676284954 506059280 910175697 896776018 590505271 923726185 430125010 982094502 723424128 783163152 833431294 152573401 58504655 123184719 808288670 580702599 705198183 502929668 18633596 902073760 202119344 511594330 686759282 294233834 93200538 220136389 653328914 557794698 523351413 959547740 423982664 322369730 550850919 226722025 420012179 834760769 581179625 828929059 996850795 687277592 182721065 207170848 396544398 431666942 412166826 776242766 730262530 570640440 720318854 543268530 975238916 890332994 923939438 235739680 811931584 46180757 658568102 664331165 776804260 172525582 535661543 16078858 974338706 60482391 337488909 423611637 496318071 828161858 690613653 594532020 134939666 324922596 286119621 345488190 648180194 743320523 453961697 383972745 991073616 888375931 61388709 482211449 915337867 325855323 442191461 130329671 788952476 563801691 635580107 919824995 584969435 684759173 604717191 306957871 135721317 730428642 654909824 965412423 376688340 832414216 968821479 174059131 364216709 759430319 997469028 749062470 936169030 20008493 953478076 841859303 581280084 226343626 594926443 167114225 692913884 181121335 793411097 373677458 460159427 772447988 718371378 100272831 350898183 826739584 9358516 23275443 717493808 380682295 282867851 175154716 859623611 64207497 595612761 293194269 941377610 15543886 686936522 324262583 981983426 212049518 759115894 986664104 929370311 901975761 408360767 441389540 93834278 551583513 56549250 469840792 630783239 80262772 237742920 204223166 26437642 726782541 213191977 807623566 222914805 995857514 133268793 12941380 772627117 597192042 398001783 748945947 449951189 972581802 545096693 148972425 412959242 368611616 511392791 894153745 567976844 412261174 590011246 340968060 25574324 415168644 63956005 732381985 151178448 592789587 959679831 513987497 283123724 983613508 888270034 462103437 260687437 293001867 313562706 624756755 941021585 541051720 812932212 507514174 472428989 317907996 899671004 323916232 781469594 103321062 783849128 777279426 618510425 487104018 175474416 53869882 281516714 812777011 994979262 841593909 64880720 781419037 620161022 501915551 845534659 755177181 964894943 339556143 270505958 145297377 952214551 79608638 662654369 207046759 98120263 407374625 58691968 956583258 135598937 381463965 393811184 752792421 159843233 280914304 557549936 200985096 592845781 836174681 32965810 788175262 328934685 327816274 650018410 44638329 865429643 159845183 491797913 956416610 291643561 2369037 891351973 45544240 743247704 983813804 459719574 74922642 567870851 944887731 988856306 918495413 605787291 133913093 745676998 722557862 738509693 52336510 244831117 478070542 223503760 528648484 898445548 66771091 2496420 911705355 322764541 382692761 485840409 654197639 27591569 25699275 445053055 201625999 640614633 200805126 703934941 392446812 575591247 935421442 175366409 178019560 831064306 32814642 522060572 153934862 380236024 940335946 553705771 133207685 150793564 749993405 80815585 820317179 198021684 954343044 305430322 36652838 822686361 232672274 114283640 657563900 170343105 84364517 996558841 34307027 389181180 147519397 679001771 267559529 510049879 952598807 123858582 977827225 887804384 583342138 312092155 203636943 821925449 506126760 338084101 133319919 753761950 74124411 334302921 703453064 249114367 871976373 361545617 365326594 958122934 19827099 972638399 211006324 565999365 641857012 807027701 44271517 36397322 556985007 908308576 770282797 635698 823391289 389157316 637729256 177744469 759125643 727411188 900860927 975077168 392642177 955618401 535340636 107912278 192559507 597381025 34410387 489707749 982925399 908650238 174013716 902555917 483000248 854523955 684163626 832031631 14593041 992822212 714064298 648784288 739640906 600186030 86592177 134336291 782974263 650899309 656913173 18145446 453287670 679532425 275388358 284501005 57489129 320548604 697130633 50762832 707887825 145932801 80497623 487354260 601825055 835042146 7743396 48093395 326340944 685935250 718628447 830591933 585126818 803040509 420730024 42055089 262952557 874189915 540025953 752318218 126943834 506607491 529900750 203376811 981468958 469577603 585819663 85923437 238199677 675692713 401124930 746615200 504397898 120834564 7593747 59434838 321002955 532802205 761132751 555951577 605883905 57362298 785148804 122119768 798340329 193667635 989673742 205297316 744185512 988055043 386598281 72564158 148507320 427629952 927857516 112506064 7286879 85367237 553322558 748686632 688050656 337857266 23349723 814517412 138630662 861985260 650379838 145003505 76432217 93499735 707786200 968955757 635417085 340830882 219936296 492875397 402524707 434205632 897831084 175649560 883142363 74100302 690166574 523333793 203335647 28424517 406252813 945718808 496853592 6542522 240234136 8357960 282991026 378323983 390172008 566297179 113740289 343155362 318578321 85557096 959188450 30233802 386524462 899606842 845464188 563275877 258638157 696130222 976189843 50622713 861068921 544773342 553674750 270777497 561828778 74784802 440767958 576955128 336420470 910162957 247850217 334281408 526598321 239405820 2506209 268943504 997751594 285657059 514351496 183484492 976832752 709019214 674022868 586807910 38751 872434970 330864561 800000837 701863716 998441881 37056096 910347131 31650045 370555498 122155669 196720290 326027956 617198447 347112689 72402568 366287377 212456461 839630973 113569454 291118243 891849751 972426369 284802802 841762613 464964395 160863345 275913706 458214412 834327606 891614400 819057104 715338358 271083508 8506433 666279983 785460033 41113202 823657592 755886998 90698226 897846456 528030815 840065322 968739422 250901833 994182813 697822600 319879120 263680781 328279068 788058862 908679327 77755253 484460414 918451875 585882163 627411938 665161191 283744880 927656919 101973770 112296638 463944657 434252418 396237640 452000734 561644182 778390043 905128219 453301834 948303385 331229394 419841231 955466126 772884080 129873813 279802218 839285540 711640114 58472399 745631764 804347078 859802354 390237843 41082654 61614864 668204553 583904924 578013127 627880364 224310284 8085736 950437262 216958551 954521025 29072816 358760853 642581515 50163777 923032491 197425797 461681040 906898855 972431716 318397172 194038760 362821954 541865644 79354482 452940540 86703069 342987748 410773184 944189301 684122979 206143490 736632021 680823339 670429056 440091812 762941604 375104499 319203233 435427005 925400611 237143785 115070571 115244579 572560872 439474427 128361103 779027254 78687807 328771509 798241077 435686684 258489253 737769743 822758259 819365289 87527546 925991184 362462139 832183677 923888363 918874514 459991524 202692201 832320071 473744627 391188919 867689533 185361101 644129077 50627252 254932095 850545117 479279798 418285786 138553526 416554369 342277560 632720985 815589595 557103439 271857558 166181071 579093397 614523839 254928790 176661605 411113995 717469453 163249094 399863195 405788246 988094503 748984517 138475604 655233713 379229296 506641087 464953026 215475253 200085046 710087141 156044181 903025785 570262734 864958829 978627019 138275480 530984857 575436328 543098917 119753490 743451111 146820003 798025216 684305896 10992078 480504221 802057146 337480643 393126578 708329695 886849380 645027348 525867385 416350660 459552678 291202864 624155975 841125157 515032183 981408411 238707289 577245192 448165013 877345068 524962450 167762672 316149621 890016500 899322611 849374297 507910597 461257998 907234587 763309719 277833874 522031085 418355930 747456412 37890266 62057393 88147844 918280635 846357696 994756132 841614591 14768214 191551918 774670381 971023732 691248150 579346802 301443583 706241721 607794542 681391695 841398123 812861482 553710690 295741677 470974885 604181756 933101715 754114589 341496152 467458970 716902320 661005859 434891539 173590732 442136920 421002118 258404526 891115317 809010089 339537033 502587060 245585651 921682397 518676637 97053854 426366641 655893262 990772005 649249472 789193724 972124034 308910726 984872399 220088647 816600697 87116158 457342459 641180097 910220811 71734040 454484550 206415434 40368912 922865235 886051958 789469101 431935216 304408607 980965626 873585882 986443588 50030340 622395883 382702842 299112224 332854496 206864507 99705002 238781451 570666436 106518366 407634638 235660398 864609776 591322291 898667877 471510392 487344973 921862221 959628229 983608484 764483070 863030598 233315673 196945051 823237465 240323905 464197299 826048749 873815491 315281247 568659502 472755340 542553443 223001138 348487930 919755643 832052572 513067538 796276088 557589713 367261503 893157814 131085478 98327434 286241182 567157618 230888186 507272132 736578822 233498606 938251956 457942077 944265436 93476393 303313067 678978285 87306357 261947192 642472828 564803660 693735396 197087701 829460729 840539911 354747791 767275460 217628462 751938335 693527874 814549092 349304743 110518584 261679816 276908515 707735158 526387294 410999751 455249561 519207211 280608706 183254221 419427258 245695941 471709193 633783604 69827339 449970411 531413880 382676215 174088571 802197105 601572665 397794430 826010672 778062628 131589434 868310714 157050684 410099979 51044574 243693608 753679982 125432290 839112270 928947404 650268120 352491358 35599297 235637962 655712510 225012018 344347775 829455952 875535246 910523485 214411201 967952468 297942729 99005082 820217684 920854840 542610892 63993214 914855851 840269492 611109351 862199376 499014282 645901822 825327326 325712317 642183888 513351915 608792910 576309801 394066271 94764442 183075561 105534028 326700918 479066441 839689803 999738652 870544487 489000872 755587697 764776061 895181638 148238332 111768891 889849517 548990954 79961671 929161690 18339189 905174433 291234221 742003441 483902059 115003432 162836612 721770494 667429313 148336745 848900746 453659777 971989483 59230840 454154029 48490841 832104967 983315911 818369720 351687469 918149575 296258882 751011483 862421254 861729039 79153967 337722492 81617907 657290684 136312410 13962913 25575471 716988317 570954289 936538251 366635538 122267560 380833358 215733031 211636495 161050317 999981550 285676033 80612904 828473194 641816427 147353859 303001104 189395288 58033820 385135848 407174991 399513538 675483375 497871509 407862757 205837056 902982300 267453744 129983278 709647495 465998331 118718033 764848086 462754116 91018676 900315205 944988771 744444512 15289090 901645492 880624109 495762804 14907543 134734217 850238968 938915830 99477844 809631253 542243995 835013326 635262243 393578751 86252227 34821519 420829064 772243320 204952263 79974740 651896632 867776602 785281954 424039446 54811138 255305640 789323199 651138111 299070133 351003196 274406171 662252598 935037516 157030377 22937190 432205568 443824094 874907667 670399485 467494476 434486313 166277696 604872774 294970397 602476531 485026330 915985128 243165315 803452257 232821789 714037367 164604965 647122471 357411423 152816550 335729460 817088413 581709626 825284007 477794066 269683058 834327294 630716212 895277406 266105754 889337715 58835412 450702453 980391996 711502603 867937848 265473317 783931989 509423828 140833608 786356369 793184218 764129807 567569481 137600557 225945971 942471477 203228836 951168403 401455062 846179707 132868979 104107495 470904207 173706742 61364317 312471324 194779003 325855237 730656676 840230824 777316129 16474378 848878200 985394991 933364260 284157514 226366289 630560552 955217616 835036168 231638421 612116053 4160910 44995727 637680703 802473705 484632217 522803809 970952702 312317611 457745644 842296665 941052421 721166958 859760135 999735539 811459087 898933841 293160338 697569932 112641306 166966685 764986992 97421153 848132685 113523491 476094786 357174446 389609651 985691216 164459714 865054324 855773269 501358012 109201007 808228985 97689440 980830103 919335838 422067383 854861112 398335091 726754368 161873401 341366733 398545297 744915525 184055483 944856410 593735793 379928655 356325719 216209774 655625200 463662486 518125887 309391092 19645336 5790929 536264365 670735368 499356265 35309651 202005489 520784760 501275290 207790961 200021901 788405403 608987453 257834022 831170281 677858125 394238274 490623950 419729824 182579866 369228478 112686671 615867909 821758742 896556918 471707779 408866743 325892815 983808518 527656423 479295773 960068117 226893385 306791100 351197914 208946013 672602189 22459914 838967485 283817619 462649719 393741003 826010344 139594174 768678291 650637267 82800457 177696195 950418798 286954667 109198283 105918140 216000227 118191018 961551988 991002218 879866777 236881734 36974421 645743730 681909889 34923297 970444319 388674620 93693784 4089123 461842602 631573281 554971294 803337794 63154359 171720280 295267589 931275576 832303367 336650878 958379667 942312201 555981969 867372494 311689915 316188496 141254366 290225418 738725635 505681239 593120284 143321551 856065162 654037991 824316800 356330343 65141715 635862538 766630175 167761237 811829606 988062676 99788657 230519890 449000043 593324483 454131248 886721959 32353072 110852329 373766010 595717176 914564156 808155338 574254003 592057091 580123057 850083345 926775644 447556120 886264535 3238393 833974847 148878553 847167588 731941563 749318630 443223343 817399897 960238488 796816514 242366838 274896397 284323460 197650794 780250309 713601387 266242635 709075347 680673142 996242731 35588442 238160992 251517843 732578535 38745650 724216691 988886102 442936668 820163460 61889287 429401025 963163302 879443879 337362640 618216752 611199712 360414937 35207315 87092895 829742898 452743204 445838356 17197929 606771990 392163062 881184005 869019089 193915829 375541815 642783588 524082244 962841043 678883503 374864041 639127297 625867733 103301936 959852963 802020024 71672724 633377372 515598403 861449966 592564025 561732618 330437080 241153431 43262916 175839253 321194035 789180738 810055335 111617233 585686442 359870156 195743465 971093109 233567097 795586201 485195117 619419861 75478697 939029086 760787050 341754900 609664893 807350787 700415928 70297985 682198192 827032998 320378263 758518356 242205259 785123444 458398594 919710246 602455577 219841871 185178410 560877152 733661169 212615219 217999233 507212204 941507271 683215997 214322624 7380242 915553455 194667462 309785276 294738310 421689951 297130426 939158084 738437201 509386969 537278673 490159282 826252597 232983106 512847425 839740388 101835003 997024795 79544069 649725336 641801655 476755300 247821165 144733445 838762013 39559062 136173592 154228971 801670677 572360015 961252054 310176426 60152208 398242317 19398524 578474773 891390454 331614094 928267445 663998210 354238591 534271893 231153264 637068308 986726462 965719528 859856714 669337878 224235236 922757632 28208369 126052992 960362016 990234463 410124230 246816605 81556916 240097662 227428318 589050539 925541469 556621767 74910174 443117701 753951249 935701169 238379123 158841872 126843581 297290295 679363461 942616985 325785967 652640205 40479759 518808731 811983800 451796149 585169815 811998844 763825975 209858780 796338573 447708040 763650110 693901678 858461912 617316900 907197590 925217568 772372437 785664998 199488619 224095032 517430560 625424999 748891565 638339698 583779096 728853619 564014399 676891222 846702080 908260171 447750607 846802769 413370579 504727236 642600006 960925652 92405925 108537307 196102770 805069383 376396379 131666400 947831150 565006191 46228132 143559743 852989548 925901564 326632661 300066702 402770939 955168408 753990523 349214499 962633940 449953642 844718010 211584443 141024186 4887265 996001839 886094609 604138202 960814509 106213282 908009216 467920331 318412827 927165498 858639956 602546187 938295790 474178769 100432971 619790903 234083835 800637552 669663398 287288533 350580041 996068219 568329473 211132698 61081924 69348779 634124876 746351714 222033785 194487101 705730584 496587030 990345272 827468764 369710018 850500280 762913626 116335242 187542525 357389425 409970779 654159473 113414245 451413544 62250194 348622286 177223541 544924514 691313212 904733540 732612849 549336575 295162597 737952384 59694017 281283977 305032941 358458128 206058849 596889696 943378760 403570918 537210957 996841593 765319553 341897793 291643180 957269191 196931623 904973259 514178291 319841972 171128696 686816721 996249242 456015231 573477513 472514471 837299752 130118125 771572657 876697717 482120054 9176458 192240781 970073869 595733796 783592681 25183189 236325800 3726078 233411406 925353467 610364017 456500235 447690262 528681419 224329091 281609989 706093558 536158200 350485708 531067049 960167659 943010838 823458601 850656725 357877960 767877797 82670426 371082727 819849002 665387720 411576976 427738377 164785814 799352831 575017757 835306723 652131406 169542228 260608101 970187139 417806479 351365247 477551079 717130344 851204568 233231105 315186026 852818955 305753346 177226481 186504689 567073384 861136558 283985780 802487654 714573104 402804224 852349595 782454521 86562475 354475750 16771938 583696364 165947516 852665874 879748570 403088706 247111208 106770460 885312489 458386408 672727216 588881718 994549165 773150515 991198842 340696318 511019684 148475322 644355773 516132055 163573340 740336083 970716045 686631283 503403613 596970415 304250810 808389459 673243448 217947244 145029499 818255058 471943567 864255196 368251646 158294986 978861190 757452236 721866867 597721339 848554622 514010244 241851485 672577792 96496267 272349200 641727187 719503823 509750384 111877858 48768495 751535533 909606354 84038322 845766850 76600427 222579485 731961409 907121094 151418432 525106216 204068529 213515070 541660221 608707654 663247013 60948587 908648496 836746970 702825677 612306679 351839539 723013380 186297811 356742275 855644125 679778100 305103648 388785434 396710015 789860263 346646710 400128390 917399008 498952850 445032973 72151900 364953144 786400879 600606712 385089625 245719484 515027907 184220003 144997475 151207289 783321204 832218442 134637993 317656340 125188205 735997546 769369023 570883161 762281953 897555940 200722103 800833004 819301246 345872488 972781853 562613049 893817693 676894003 848808041 982074298 594452448 435978891 461498478 250960224 526154216 576934173 692965099 142652292 976236816 290559211 585735536 9755611 388456357 778827727 966604151 992960787 8921451 461401394 710346901 924607021 741674891 389256484 131380398 884807448 106481105 126651912 213320485 698977196 222702578 472938564 658156216 314212695 416555503 952919036 827479279 956483480 167923644 408495947 246298095 59950154 943805110 737842755 956812925 188219058 249340912 338073360 506272092 727825739 901666976 492828236 231392422 288333434 361050739 641029402 788416999 568768913 77084959 119128531 615343468 576693645 42921509 200518083 856746702 333358791 751399312 917619894 580586234 78795298 788978196 673361314 58804007 173272908 451879290 904114880 483472218 23187678 462144717 648593118 911650494 705941838 86865597 718589954 716122428 55579227 337645677 535250663 478061301 537047247 732649326 396521873 767133853 492340623 215433397 574091648 892058841 533675141 552869422 699240428 205074794 346481576 325590386 732552697 327975683 74956677 404206042 141882110 768105029 998044837 824938209 489465217 554839461 546038085 697580515 717744450 244651101 422507887 349185817 451812584 922459922 273556268 431981878 632292039 961855519 974219500 559577959 217804338 64590957 645048151 612188015 764516470 570149489 153434842 717894900 501290334 683723860 219500026 18298402 547447673 526886691 571855716 41982367 269815924 322859197 79366191 372083815 756815965 148623508 898415569 293232668 793718816 647729707 372308900 740745610 961696602 491885678 560750465 496274135 660763017 262322407 332005164 119618005 523320572 481747438 801310496 200742658 894815638 880033119 85106507 683139467 214227120 776872588 163286427 705962746 208242586 639159838 848228301 348051264 792720295 27943879 328499169 100598030 34903030 191217649 4259688 823244919 112137032 484708811 368056313 941736247 793777784 938627197 749338543 769572785 634386941 714940001 900584907 904152493 451080859 712294927 878041987 29247679 430181105 332537933 649913250 776896343 418806985 853488658 66467070 603794493 935968250 501230952 162869153 863754512 683271659 745702561 896627518 258443128 258614992 182904441 416550406 84147460 510733126 955852023 875628269 258991781 611204059 688811940 432731902 471355739 497501091 369094874 381740053 475899705 394221361 246783627 679152367 576482470 578019747 910272800 601189829 179527186 504788554 850279535 349604229 765433758 858450589 251468614 378048606 537539086 736848027 984468114 497546557 782420798 915996341 95998071 370054824 761791559 382007343 628319573 399475535 425985096 154552426 288583489 360763125 439110219 592734975 518003195 570141168 532266906 335922789 365583929 789288235 155829425 903126975 180143132 256633211 794609348 379336070 82967001 489224822 764452366 603454093 932147249 589174356 421204988 619405548 877768078 232629894 451667810 247797235 313472879 529337377 917699682 1501148 581373386 402485977 212083887 475181761 69135695 321365860 169625292 99477655 821969739 42462096 358508863 17869126 467517113 676607169 262098807 907549520 92383388 384850092 102466454 628711701 901547703 771738043 767555734 215410185 588038899 698182668 761069836 283594517 404624792 824332369 643869789 237821458 139889665 237584634 179328779 439578865 439247796 481287437 797294673 769951768 283226427 404977061 56195303 334619322 916872203 818505292 865153094 327696560 169741428 223555314 299901151 290713549 783317167 581738034 914748511 759663715 892210442 569912459 761868718 65351940 654798167 455754263 362407837 118075027 239831530 84716864 214855431 443703764 330482454 152140758 768305031 570534945 776938665 429662704 423797371 927655208 31171570 6145788 111334300 558094775 135651282 721931882 822953236 420749534 805346629 615314734 746731776 772025402 391669403 539873169 201239640 595167716 17098805 163094970 246580609 914256346 463009433 273521886 928274880 830507563 850552769 131737515 352839633 707913317 264610266 8142514 232778002 483151170 408050454 98275077 65328007 482838816 471104928 214740323 858739184 326803123 634841975 353960200 729549882 956779765 238734159 229627949 881236997 977547922 528887538 356930114 425885509 435020634 845198110 438324019 347602222 814307969 469690515 260026115 838687351 12696891 164928258 957211479 920062769 278668356 395624849 296189236 821571247 788732664 603117956 100934308 868572658 300069421 982624929 54915447 392898511 795618983 823695944 689021953 684330912 728200333 50434243 714676067 638075415 227809796 455715523 964482744 103617312 488496755 209523957 113434926 648611478 391204891 653230739 184101267 116256846 607044141 2038160 158068500 21096156 919090005 688758593 434254174 935445441 945465369 666717601 14024920 540009210 233787273 812313699 752093338 703784071 442908772 663799960 589572377 11648933 865955088 481271095 974183052 337273161 598175433 119319481 950520939 897871611 5287330 108621237 304741041 280457451 12907826 926619595 641387021 691603842 827568724 302078250 502229753 837364259 144495057 791880207 632931326 275859089 38235603 485985659 572421634 511304054 226445726 354251573 358992377 584324880 221429686 239031389 994135782 450614706 696537538 271081691 123753482 179787380 38469162 876001967 137337745 311412450 375654211 731235704 558109075 936606898 271212252 950741063 55768204 75656781 911011582 188266534 195271308 508720945 21401368 79806001 855203234 690663861 420168252 976444363 96431590 121723428 499596228 349970016 20798028 669771601 454606509 421284155 778368003 749890668 883264181 347733891 703055184 431670335 85248103 581831145 935240741 33777642 818180391 875330391 203172897 177596492 628384289 425117819 915264477 989235657 672343488 662339971 35367845 548128665 977980607 13247315 579243274 965789514 736743315 371700262 46149520 528024803 898077108 834591912 986606445 227259817 941657046 878005799 324105575 907780892 364851843 404497009 439696775 668983716 423133811 861204596 357490164 384330946 537314835 105650565 403778034 396059089 879351411 834684423 331401816 578345190 446602566 182552312 380623861 706047560 977540350 785310439 733200655 717272141 823521335 335378241 804077320 940218010 711149000 364968460 353994382 728996759 304463275 396324516 828431006 522672522 61373150 957211933 986842891 595970858 272724686 810095427 433728783 834876438 719471855 497342809 4293839 904453265 671094022 676388256 345283879 975661960 944277024 3928533 573415867 795332266 729307208 924649813 804059643 172167627 758413261 663047691 320009220 325446936 106976350 570352711 102374697 683613702 115018461 906151577 329661001 106563417 733179620 315618488 480166409 439173036 969316365 86077761 937367542 777680433 463382974 680705579 643250043 11050766 710673909 453918174 791745938 150238320 592725611 267568281 49533064 9701381 642306084 411003817 589757837 843563610 41316032 409540697 194154545 50153888 6058911 625142695 968394594 877167307 402790210 868791085 440726081 662288511 643157462 753708950 476221194 730088773 516221546 415201113 94705451 180248735 273570812 735222634 253377905 845178002 103273291 207203669 261559946 863895301 415751392 613231479 740578026 231348588 39116203 630938529 905328393 58213571 696181544 735602627 131709875 108810881 532486179 263754829 745043242 48644309 835221344 461281332 135791615 668662429 206713026 205203080 241512493 953608916 278290086 554540446 397654667 434351596 462734761 784822738 857412257 229342154 30290934 150878341 53000789 840105914 742182370 42723579 552989990 838772196 310294138 164720568 125812457 853078036 328248934 309272691 293454035 416609988 967355822 107013186 172787536 791364213 59301337 196033329 269634689 841098841 583925164 723586444 771697196 742394621 462963783 529559529 102277312 241611238 663571476 300170064 682967427 836897997 848280511 872358263 175046142 69586392 872493598 319193778 514687169 655778314 331013322 769242577 992073230 841806357 950621948 254911879 139742563 711620637 258024031 789271380 377703918 535850661 109588405 38089519 102375059 768179570 800203142 816424778 575987182 986317108 702723443 990976359 232790449 781455213 659005136 674575456 476546305 99245397 478250398 530859721 799172177 210279603 199704339 137749577 883716974 946203279 925309078 424493597 893092935 535345580 915972133 32482294 822460219 919302732 682510819 102523209 659385581 631504300 399643956 249206748 10737214 109714638 328668136 442931927 151646416 820914466 347001233 73373160 8939349 506310439 718490605 419408069 714937923 843774777 889457038 158487660 437492000 354537229 910480804 77273612 471175660 309566902 854910825 241749625 387228878 981707113 417564283 604662723 78260202 129896343 497677796 549796178 665277145 787989740 102687299 954471208 406046355 830619301 280317587 46780165 968876560 413898567 300370238 572676239 53851623 723914439 283107787 405004731 791820282 413832901 698072239 971688084 696586807 417305515 335625825 56150321 926924343 622889767 631151532 75713388 697146106 55807776 952875647 783832858 929159442 369717239 411900906 309852567 273135079 496593661 154046230 778705353 740604987 767006720 198365381 848543946 831953560 537711842 601782705 614747719 483853208 175019083 370171594 970339390 12933714 57700985 589279302 689820986 73577096 248935576 891086990 258089885 685816728 130308974 341027101 52816973 42227877 92518465 926046299 92710680 767346745 851492274 429878161 474671883 617420385 444831518 776445653 747378283 121289013 183683164 300604893 158983003 112226477 861748976 874598630 868085283 266220565 956761300 731414337 25551384 222886154 678337172 641246865 818084664 540666815 166972355 589913695 78602902 347295109 945396296 340802750 41672485 881791051 565875010 977052962 481517202 203283777 305521794 386882384 250675286 307908500 460762176 842648252 196425151 418313869 600842621 935958434 859487281 664018027 61550898 730695791 352405963 443101530 380493676 895042697 728081495 101771140 884293228 755612526 444888823 869761339 536509063 737693112 518519586 688076453 937767119 291879593 110885151 315630127 565501226 777959635 877410647 296978345 825327914 218572066 613079773 269993868 545560678 23651269 640495472 351680519 76437711 519038886 822839256 834440429 879427820 332949532 802973581 896743226 732768895 650863898 526018692 774638041 432088833 4836284 550548419 634574500 440639189 392287218 166278139 497456977 407184902 739752215 469364087 145800328 684815806 743632125 921479875 832888350 563773075 241538262 578093997 184218297 156655102 504402734 204700477 216363742 548043548 816899303 147972475 454626765 347680988 16528091 966875701 524154808 899674466 346333292 478655047 893061561 583603615 472117928 222359573 991893596 551063564 711143815 332946557 449135969 360711825 16630440 99708264 566679192 553666752 514108715 846935015 9684741 97445648 751668822 612234566 348835962 428487828 536884345 636031149 323784780 978394496 215552911 294143556 198415559 215448924 837864386 756200823 879191941 76584485 541588866 576222322 635567196 28585724 532864822 197836467 678071392 592838060 311512334 524783616 610700955 702349179 650957527 706918011 648648373 463003028 515840123 842724191 631487316 554592960 213522696 167361024 581609767 815699431 178281816 263152433 685417923 293239365 981621550 30734897 40686891 706016215 161142842 570618572 202082926 222910999 300293058 315664648 841920748 62458347 398851027 799857382 741407744 427500239 905276697 299580745 875659161 301018600 911247283 910913003 510268570 455642949 301278424 326791998 101367891 380980453 769219188 34072937 122930758 734309792 816380220 434515062 522733373 92839765 225423586 336691419 696659493 556215300 373268524 484178801 421251425 577567410 134990090 838708234 9944853 695446264 235791559 161993848 952458649 781269793 483590426 332467425 204673426 724644589 855914753 823681980 221504221 923038686 399441488 76178961 392631599 449345352 751179581 587303624 112497425 682012958 346391395 349847642 243653863 373549126 205090450 390055616 117920771 386199473 56271076 436870820 371229229 21142479 777821993 765263626 390683699 316793514 409983825 789185163 105188730 750776505 341665008 806044716 103391452 533519719 924194148 292148741 32236445 677409813 779335170 49519920 197101219 466144069 385352949 715155738 159603680 727434722 175803031 718614203 983369244 465769974 793739118 631653282 709028630 952460397 338907111 317747306 745762474 739911216 646637326 315994914 848960995 344774913 881874429 64472591 147494495 229231398 349406609 759127517 512656017 511779094 302153513 905403572 916306207 648081346 798040968 69334151 213285827 374207902 214597429 991777728 493986147 866245820 897690514 753689475 142369852 650593268 609467783 781392968 86544557 609580596 672596977 317880220 223006461 962406127 263576644 913166591 657229442 253579608 954392810 885737165 346003179 654211574 375332005 777168420 525856676 759381433 902130730 792406773 945969693 685808658 867305789 775700609 876101955 490624828 842875071 27798035 610086513 299220225 905815726 78487297 465585661 909056766 909815041 644142390 472953383 722633767 205162792 930100612 886748414 834216842 957786856 733579429 6648505 613391827 897259759 807066114 963461113 462933220 703773088 601240506 574715433 60941224 964052042 123709428 285807863 995744924 611509862 328963430 716639766 721190880 955776252 736110882 856019771 526593754 797269792 911085930 904315208 989528986 200718279 887838242 801635367 201160456 34490501 951232614 470657655 372581922 52114339 887467351 302609910 537934973 311702546 161399999 658805044 389865259 297068123 257160323 468418342 135767086 329797767 996112331 700364956 457859249 551536281 465269708 16395354 373774825 958370835 545756741 961758592 322362811 120208894 660230048 191124144 731765482 91322288 323998652 822963151 102287429 380260736 604364027 655937323 696325592 105824123 562255285 144226729 5233713 842123144 585174786 383580859 891272007 168936200 154925978 228962280 943727027 446146950 287157116 963829968 217820779 970082293 486758410 485328531 711226251 95297836 334374134 636122679 306680725 443189777 64519165 103198784 144410803 181262014 449869115 888892624 214110449 811313056 529011846 409971242 34226661 270864075 229753614 998288755 761539664 420362568 928274637 679588122 935698121 80351756 765601923 840107624 587833534 399076372 432630297 223314766 159712463 110621226 202411031 754063962 925454150 516665461 613106432 676114606 76434152 512408925 448118126 488122366 516176058 894498601 168813213 110958638 644087488 638788337 245534695 9724086 786436358 135247726 268288626 774256405 718233854 78679151 325530228 871561489 292783054 619463597 142054433 231842510 596092866 841034616 399440600 867403866 393952482 771132981 512447666 186977252 43280108 627427793 580365192 481708394 523157389 549144054 656802347 759502365 7232773 618110353 64799853 958160366 179233315 367746411 360627066 830489392 516713793 353519918 964665617 991533193 230721248 461911592 432413981 292449087 348194397 153883919 236252920 27376079 791317919 564819310 278418910 642412861 348336370 552974379 860166476 161319270 604233385 111772813 509191129 836881222 290009101 989902180 181941672 11639524 716519917 571632089 124034692 486168031 833770398 414201977 96401442 793457366 488094413 255647960 402163102 911757854 819491151 898200009 489957474 197749452 888803012 303873236 264625406 439205547 288914122 319941105 954030458 414695182 819644534 593388572 378142033 429677792 618390570 263109621 443470151 387199681 745668583 793276343 839472240 69976658 807081777 952688 140952900 992978884 928893409 663614895 257424992 734732034 752014949 462347561 230202839 795397287 503614059 22651262 415883407 322479165 644455487 714618315 880961685 806572001 693455261 208701340 241168640 667458300 81954765 178444935 725254065 593521981 577950911 498188700 81649141 860587855 416591927 969230046 608732576 808167711 549529860 930160362 254962649 782129113 549218920 218101185 121385114 473831623 696054822 127215753 879742850 750421465 667775863 620766064 47655047 3179066 723019384 625445827 227410199 359654769 246962955 626806977 245805000 533630990 987067806 953787322 642438 369426248 554492181 553092794 418816971 300113732 331024329 381015962 664002572 936349061 223836503 16964835 491752363 804790167 194930682 945837281 917538434 45639851 475423171 131796431 69086776 720210227 329867408 356438234 168333914 913025229 219660970 988386393 700910606 457722459 103558683 797918672 938400626 294029303 314372129 163913029 527927768 191161329 121492550 649701228 596312028 797544084 426137720 499348362 873419916 270070293 390933024 674943541 443939769 830522942 467727533 324677547 332974286 325639620 892593673 968433182 755337309 101729520 586776660 765229692 931929141 451889852 92796416 635729947 480032893 386816449 251477501 531694109 511181866 396993199 602097897 449193181 13940915 909173174 261476333 923490804 995340774 154857293 507107036 320428121 836133131 390541556 466117853 645133812 429196684 47367989 610952432 774414332 992343213 430898439 623088095 493728502 551795259 157222348 804853816 573660373 938739223 440780997 166556140 856631775 737722249 627790707 205868434 58842253 837295601 901251685 828108668 946148004 97958428 624972306 9384307 337775205 563140404 905305070 296244442 730023701 633061342 986798365 265655017 897244694 664264611 587003957 855020686 143627247 190628450 756931552 194139327 890511297 233545284 852520480 94153934 992372819 68747888 199601467 501641763 88217861 20513833 216192727 929013493 983044914 574618950 901691970 402396027 799061874 959195653 742607717 268322694 990031526 78960409 511530731 371195749 208491960 773549260 669951886 483275114 922697127 244704900 393161288 853958154 15832803 196766012 619253669 409962719 894211266 239298716 956858288 94446124 883946393 205775932 337192604 872873692 789673137 936831029 910308028 708319419 282031855 67675766 279695873 64177648 139250287 450265609 699087526 453680456 611397329 976411415 228720613 347834023 570947057 224567932 974846320 455138375 696704786 822616267 676296468 495150049 998311010 333545891 869869187 89829090 314111492 205452225 438111068 358031719 797619586 305761669 450247773 139767133 705443002 19773927 529408684 47648823 388198405 558026417 32847148 954066526 801235500 623156138 61077008 834601630 307452511 280284748 160174814 610146236 101345067 649758342 956430419 645949517 143533467 787033996 470971965 786405158 912610479 417952373 158330776 20429805 274738224 568516325 637413336 742082857 346339861 294655420 306150336 707208844 592838293 672486297 772740371 867072236 657379444 743662173 241732230 499788343 803987303 436833026 403011555 150790625 318927790 252835440 370168685 400304724 148011670 586213883 59101887 558201781 642475017 622357179 242869177 745784824 360809656 522643263 963473324 225234896 535799187 506267033 271107932 619034933 995193599 737086519 704875792 949404265 993359459 535275755 721230975 956184154 521534082 908441033 699393351 470618576 55885825 384513127 960127848 807271213 616247228 198247029 577640984 632355049 831870455 562042488 403323300 230967684 10904751 784784685 983881650 736721891 802497688 534326593 10636004 531567959 1408404 585090168 454741132 571984567 903886048 990261343 833649573 62472961 881027136 954229162 985746637 848835953 845411878 988176328 225766892 749841844 813689412 752681991 488667779 359570525 106289762 161073769 468355189 498303767 44096417 101241114 953703739 176486107 657083824 743169787 982097386 857120938 44508270 247674326 643415260 162024689 369437278 409527031 774453107 728458517 60513159 832854584 68951860 24453442 963718443 45032492 222315551 967067054 460930070 291804972 292037804 839920904 250863297 544607539 257793572 668254215 803467247 994257834 262975528 31177121 264798320 406086942 438457943 782181804 309291103 234770705 573210717 111341835 935810560 419371336 154465371 153012264 995548681 445149233 646817697 192996297 858222327 201150584 450454395 693840152 195290930 398193931 853812340 687960392 844621914 693155420 478920429 955820646 864822844 432726254 565537131 473851731 321314632 960034043 465016866 723174145 6500993 873587074 955715574 767963728 271714872 652889253 877841016 697401552 454837861 923309551 919632366 145061212 952541678 503041124 368502475 601268372 396122701 50952032 729642426 513370858 817609845 325827716 303428014 433274243 763789087 335018741 272927378 366168424 767974080 221890621 844779786 487094654 414548417 871176417 345547155 421626866 171640067 407668755 962581607 744846110 17459966 316642757 999038771 905956959 450113023 177987682 76266190 5763348 568007006 559840313 205149211 109119355 963612499 347192941 580026801 125994188 79938652 351459100 21292608 648506920 676032162 111308891 701470812 24661288 530199718 782658878 163708498 654493285 388357342 19852443 588521722 818769685 190016904 636278598 971525577 802963912 271888301 211080509 201323174 391199994 7339885 645542760 452345366 994807134 29221594 993317412 333052624 803540231 546548432 718531062 32478938 964233755 829301090 373184558 696101207 344574363 27048496 801858953 958103071 510678545 807558104 422032267 611183707 560322301 49085268 972809011 373552892 780546928 359835383 40053953 606681412 461039971 259553645 364266227 70965453 368522138 281156332 265613691 752207591 516376579 8541661 637399192 767687775 289085777 316885164 758739882 975216366 573560997 600734238 369830178 310939379 294495021 238783834 750113620 89113266 504380479 203456976 513674899 524404953 536461248 38156783 201333140 551796583 198387249 7349714 802775566 130300531 103928448 904432949 441942267 315828382 105803371 427643098 999592818 640455280 392801382 181685798 262711640 557146382 460614103 548000799 2313163 363323013 997958310 962483123 738419381 886082115 278146555 906568898 863802048 857961796 467824000 111303591 779411264 594962598 220978022 416316140 656281894 221056094 506287941 128558713 5237223 859748604 22679262 881193556 502720051 30138901 840479350 569998550 652472414 945509284 440222006 579242344 229496717 615724195 177507835 686102052 426718568 8971893 31793266 209195515 445002740 826627048 612226930 879019122 17841780 453405323 204057537 339394305 90871834 99173297 394186006 809939902 148887193 628442953 256848226 169816759 387621509 523811324 695851327 469994092 93557918 520904281 305538050 86360565 479581981 234072149 457979893 320737579 985257196 836685907 283226925 391576979 592990800 156359533 409627578 957699348 762915912 989077048 495453686 106091498 961691945 169674908 398972100 458091529 137213840 924381577 535189097 464313565 154010861 4498159 999868043 998541872 752114408 939307090 960459623 851405633 275397451 402700999 35921541 652500613 643525475 921979209 852639389 419165353 435542634 922813983 310756978 713112592 979569911 69445946 856927407 284539176 118575521 885947695 823386458 230311099 804506269 436739753 481087815 25605292 323789677 690392601 206622980 929733794 908210791 81537751 571646470 567205618 727134309 662026098 3721153 324979041 404610528 471282013 698188794 460513972 147429265 880903105 645395342 111755773 31822846 956108046 357212216 702647882 376067672 442058901 154730203 902618496 717714235 539737333 357730614 89068278 648247824 428051859 594928549 559553384 297641619 614443266 712799606 850530399 172570625 381521397 765834085 123340772 666107156 578891999 768535613 247311597 409419615 115802975 639676508 640757820 884508389 573094593 530490204 311597449 375379862 670218170 448094324 584607625 999913098 429539974 345310943 196204849 886231350 773413390 612551089 568102567 505668447 633878633 947062599 882697741 230578340 578283068 917969443 639549298 593457303 738092853 521206964 277611939 234226012 823423920 899165355 502038003 253168670 125165634 475318244 85036430 606721601 774137134 807230641 987096179 40819145 958665366 176097921 152057981 856436581 636386873 915338848 814470026 967236084 560332201 16281135 30453927 76290977 797749109 754258700 315687901 360302311 885819038 106704620 903412596 672502418 63820855 519094709 654196631 22881342 7599678 512615522 198236342 881427471 788375994 789956501 906420339 816167373 748266835 915465922 707409550 945408826 422108497 247416540 167174606 195626579 310947486 695119032 515571181 975082955 812394605 147673852 10985543 655773197 581961632 278437204 795980621 855617795 944729757 5818773 636960574 815351775 15451449 443439361 78545201 518534605 688655296 717593019 356708958 173270479 496344000 310381099 891481183 372563026 19541213 379729694 773874348 16610727 910936493 161268510 849183014 170407213 604160308 985404076 244969186 439930535 766701554 769217640 537674889 767207821 780297141 322796766 128172866 486581842 193558711 222175662 415232777 773142986 684091310 830560172 805551641 105474981 939131450 350361189 782494540 897553599 108949491 550432555 274296468 970085931 943276296 998159008 245979818 456422058 953140457 788871962 258943931 7551690 531056677 454898494 267300359 513794622 526899208 148268409 403938497 279833655 906962766 119613960 529676246 825347018 26592741 680427220 990844710 415327071 732835826 891985046 925476454 458058023 737229453 959154986 263009799 820490336 254615750 274071731 166519900 457802364 752897490 952615499 647080753 255864013 234366391 119443343 291317871 440533217 66660041 37578339 60373606 117437096 3079474 98927846 801392114 977020886 218762149 793930855 645037506 818077786 279637255 631796126 478883346 817153036 222346889 228268207 522022832 466112570 967014264 559756588 22344739 402378963 481232826 831653508 194814445 945754796 947295903 684345334 552472089 845786715 803008377 505095159 834727474 93257100 767221448 334397597 183693570 487840794 612041421 369412423 400190019 799935978 146657889 21244593 14791305 223509651 856580517 21075273 52294522 601956246 762609528 453319002 106931007 31098648 377449482 586557473 752285418 758475093 615208035 668447606 743690091 73583910 633513014 460773776 866677148 939770457 897518170 154768603 908595654 812050487 318356749 928797161 232467112 867830327 373958717 207178866 766124571 911984020 855942531 795479301 713692431 166258161 247664463 820954509 616558595 20272037 135096111 592265923 337796659 127680077 184117228 734107935 253986302 182771783 667602067 639903849 37756068 702343578 398637076 465873897 324063793 166327570 180894984 468683341 926892253 172383233 52020365 345281924 1629369 647641120 570539254 908557969 957854009 933861360 924262772 335547267 251916259 418825373 250575107 662752074 219691096 189551195 606593259 268914229 335925329 47675625 942509500 435618613 922880556 18779085 565431011 207378296 807731343 480474943 505943549 276601639 837798932 527574927 922245036 166134613 692077019 507038658 712074341 782104783 430614760 975985374 658747889 713505948 383654159 492943042 151611633 825204189 231824344 58730465 795922048 881608769 894130813 960348046 937494743 368611964 15484290 474165414 740257562 727419550 40377141 556990932 800400470 30940527 344580382 993403808 958825784 227943217 426736275 613252209 735520405 491731369 265232130 786600851 412587598 28885612 739683385 829374103 939223181 595895826 739490145 326309909 695428310 456777547 142496329 879744381 26548201 290715280 468382505 527687111 811030793 671435540 354301258 934597751 499489778 835154673 136190586 972896792 156506032 343266999 913781450 108835129 448915091 437539290 655825409 619461322 298877637 699413863 147590989 37253890 217436649 450273012 217314833 189773339 239119907 813314386 591925027 435747860 29941819 135275307 788064228 906921928 693356071 444758883 557483626 88720223 180788979 339983961 553236265 749270028 15979146 701311503 667820822 834493782 609687400 802373708 223675665 737890849 676886365 28409904 189691109 762768979 931859326 421467626 174682673 134164080 452083629 228013239 679944293 367102323 212967670 187395554 820486531 948098071 633521911 565165877 819297254 328403241 837002865 158601726 722542119 194939061 66818314 744652733 842190999 759727041 273132555 404917593 802172782 84792895 211791663 335323106 645225839 895233298 79465619 643544903 427551961 881524372 54221149 71315022 641870888 271564659 510290 377994558 214666066 271790921 532461430 411479060 398363130 317654045 489431350 554557174 691505479 514760056 469371414 708154260 195518469 325597978 710766558 731536970 241862560 877742772 940751933 371843580 738011578 552232453 875777906 968095627 897613966 976557729 242588918 371097515 58376431 784688400 101859946 65044368 762228203 46470733 788041372 941124828 253067835 47298504 822736218 770398184 940531510 806929178 775759796 178168886 24505092 900543397 172998107 559340177 827573713 884481860 577761290 906233494 674585545 524102837 356115039 753831684 846729544 633378126 536270036 722877501 876552059 287663135 734518870 225348560 518506045 908503481 74956262 459701772 114149680 363030047 833944845 580619721 148080635 254577037 470027980 863590743 811880198 229230584 56452852 478586231 108979951 40908904 328905585 695475092 755607380 263492877 709054394 540187743 107246978 354147118 570396237 964630178 367522058 775188472 316167447 659827380 611896361 135039039 510935445 599259956 692426323 15577594 892938016 618990249 107238856 436290597 553873395 33678406 404602338 684194733 712082278 327596077 154636236 336493582 501278769 624930964 612994129 965979347 230506039 795219696 706677569 209663984 476491401 455807417 928751675 132006440 222854360 16098374 72697154 259481042 724934394 789139861 379282202 21115199 264003287 385730892 987935697 75723921 824737745 721928062 519146206 609008544 816282327 321539999 747280353 132001626 563115796 569631322 799063215 737291982 12651951 991286328 892651126 887049490 930768435 486192829 541528538 436923524 130321298 513805122 556379291 512558364 226505685 126026012 339598614 994434170 503741458 132585477 31210464 318864408 298121903 558115040 651305056 868033279 212572098 492036513 519298278 673016586 376776340 837649216 252270664 155527731 554425377 18026665 392847637 228353494 221879919 928607848 214472252 248880281 338389544 282366104 508400927 370016871 808892575 426513824 986153237 726508552 659249322 673499788 786279505 161154709 46752955 714480409 353980469 852809048 613327484 950782326 345568504 868901192 725361166 773530562 791076893 402866623 843500129 174576073 99860826 10426465 703282205 466371173 809219823 682886049 1927387 211171592 237566754 56705918 217613494 986931041 762729464 594437707 126844550 775519589 762723949 181451820 882492612 541326865 995692691 80030288 292683851 651161441 154534073 186387694 246129890 305690796 901326184 236727474 582239029 758015285 83569773 502017079 396029402 265152051 33171453 946343904 899678176 476675900 715552636 109094086 975310383 139196861 816708073 287463429 408207339 716102748 623926289 500919223 576748651 646177034 828213395 995213429 706491708 778110998 211392776 320930063 622388128 113245111 603968756 669054928 396076772 568193793 708221767 955329366 766720388 294670278 832439372 128234040 147079360 656135013 805850699 141569290 787234944 800773695 642507475 856287288 776824201 864154522 776035621 636345029 335850057 639835300 463453892 210914813 942169926 278247103 817681020 400335370 790328058 152640914 940633749 658697579 407513356 625157061 900055973 914351794 810744076 455148758 681923196 90498220 31384138 92980540 830547012 414462290 311274420 542793047 566101838 372614305 896721549 342278504 740782531 876969549 145742029 4808741 220513283 767069906 914624605 378265682 828454639 130480440 84829079 692498466 549366572 285781376 348847575 477253482 893508236 459478384 134595260 863566863 567824533 361250862 341913721 371745276 499814317 20948307 13969617 824220587 962847840 189390114 893415795 923692769 3034033 167208374 411795597 763446716 825563385 94061900 454256678 869783927 233718860 214912797 330752030 168212875 463796743 122587413 627638092 135891459 441945697 520836360 599070560 175374114 24796561 766438436 780302671 367440737 200169911 551836328 909270939 277729259 797570655 292135471 969392286 573947675 10333634 572980242 940697249 512138258 549805650 474720941 682866830 497010779 216527565 551455539 737622618 589850109 461497480 529398918 339808815 628998570 548957245 877077317 825152253 131954961 618590626 19922943 421017534 197714928 987726345 968369049 509039079 298533303 523126172 898869786 357447762 975574490 845955283 271547704 778874953 941957021 965686713 469098861 682193493 672246124 39398853 181344106 724468361 556684255 706730133 972547636 542612451 872045890 903893567 522227277 381016044 484588685 367801234 791308005 981673381 257798119 675147293 148662242 955024012 543567260 414293118 602122713 195355285 209152526 707077292 220929569 692806000 143886704 520441835 76973043 76928375 765107372 782177135 109830472 142100144 293260173 631715835 266851348 496774045 772155034 519015829 33807324 220522338 627400414 935161320 85414179 817940181 849613526 512995269 572546222 441723464 919652284 571282562 514938336 815786624 220401588 658102767 455605330 615864972 358871326 523666412 503551484 208815001 388115193 746829599 939470734 345959901 74721770 812215104 719220965 612096262 746026308 290547837 740428402 761502975 952971144 688746539 416895258 661831074 355577508 832352560 412688017 726904524 923996285 245726000 475791185 424993938 86129321 644404965 325907768 200281705 649262027 528127667 311453137 840733883 350135950 200994490 165250253 691785041 639098120 604666923 985456591 48401902 176181073 997240276 390190977 241727327 244295852 491866994 841202437 257698960 817741186 565144936 844214735 618088018 803301871 729525503 228959577 150250976 681582631 288851246 821403408 572444783 121109987 313084359 115191551 124603548 99107422 411534397 962450476 610403549 61129989 529492605 43600135 728835261 407210048 713811905 393612487 517272815 132357875 241732667 205109670 420183241 115662137 68372805 930539934 352878438 527403221 807517967 920151603 107252070 620413550 918854165 633868391 394017022 427976831 774648442 370009001 476963755 911702247 446631511 868180233 933537250 320163010 564189424 652519672 602145930 593890694 128326518 168724497 952840366 312446045 810671515 180794765 828040625 702748618 568349306 185441411 536736675 614510577 917213125 947264721 952477026 479417324 324569574 960237020 628623773 590970858 729940881 504729624 405048600 884841008 424497397 972937891 915049943 256066583 142292994 808957912 401142238 543231807 910365529 279786183 146284510 312626851 207429298 288612361 306073063 509742235 643032403 333246113 883470624 391350024 650546316 460023983 415938311 848730330 266169900 143559968 211085029 126101053 654073589 928690790 550725623 91369506 82870138 486467209 28937271 602801207 651742984 103474848 206248555 726768671 641559648 775656103 780237146 495322249 663356233 991054653 223655492 205107732 304170877 550263479 256608552 485000196 791624359 108875916 909020169 346545913 424485063 756742405 777319424 264805612 919165822 441619850 440571169 996856719 840261332 807864 931746853 50102366 593081109 126645807 20255991 644412644 436469436 587387052 253035609 218391265 802530233 995938788 950507646 617754375 181336452 345548988 677682358 982736349 773191996 369409678 353311341 352779965 520283139 339704085 909165231 451215836 295165014 325074583 952898827 867559948 680223359 306908002 458689914 971294737 559481986 847309969 74386795 862382157 537140681 525626592 443863878 179482257 30766188 313990878 578229113 486035912 922463728 766192221 945610018 824829436 113051010 945798976 837121364 773465294 228259200 619255284 53019561 274988952 993155088 790468643 838521746 184381569 888312596 760800540 292649668 273769457 481480456 955360929 636699360 238965558 500441502 544992511 96370635 881204837 513345557 35888829 182388224 245694921 249622595 697149299 953760142 353695806 967867446 460610333 434725858 451424447 813276690 97986273 726584704 347894335 660051574 163887855 378153534 37723166 38311820 784027978 84689773 209902342 428327220 106771645 353449739 74692344 501054063 847190114 509988883 148368763 804032541 201267221 42624708 256737252 824460045 558811376 886274838 753900499 488467026 855136782 862610330 61297901 883478443 923446056 719634571 630051072 794038577 875494578 270805548 16490255 988952794 533878540 317400174 192886841 588638563 735332205 519945001 229769071 216002708 631897168 972136975 560867381 448606152 309365470 496403782 935058562 281702718 780876058 393353170 962003879 314407834 50556939 386650783 860978293 260069915 855201817 557127999 45568681 364564921 801163756 119198792 235069792 207482696 748536174 181018068 659558857 743560991 873728579 294326203 962527117 672172351 600327442 913706560 104313556 660979600 761324314 41363479 429102514 977458936 609089214 708597021 549542829 128354212 906329844 106427335 454838885 124609123 637429018 109575339 408044211 929716951 646462676 993963736 655808955 246937047 729452866 744089505 145798066 953067550 298487376 278192035 248265189 38646092 574862862 348338453 576695965 650265963 504683974 436677877 896683038 958963521 119868471 559416246 181280836 314105634 340907797 320655572 649586679 35270548 200784379 133321765 597879139 227131405 627432738 288866084 100801572 416990111 293888483 286347240 216646276 804271979 249293518 656744312 567973656 720468128 887670653 816279812 943100867 338108212 820220962 245918456 418777283 789674842 664086004 295137418 850539120 646393996 609381333 370881162 743669709 883236673 350803597 523649383 926610361 227492611 526565033 379317409 349703993 580476874 367542744 321829828 818669651 103935036 833873539 53342913 850511481 336819558 458165887 285907412 58464548 222483467 4046964 480171433 880878379 104509076 354287430 7360251 993724542 721853647 621038760 648644528 285884253 495189123 822159748 70624933 817576662 587701485 846933108 763939089 865187141 896207963 730109461 651627266 546610146 373418671 553013681 292713129 736788355 786695794 709750154 635175731 296598082 523529748 577732883 865597555 929312007 776072541 961157285 964269387 703682880 111605005 831207516 668856062 602287834 286394474 199535084 833287096 731937279 40913981 844590491 728849200 599602629 387281610 387522901 390923544 836559341 292455376 558514303 427201606 155415239 599426443 222923312 528927175 716118380 894188131 837335228 314753050 536850258 612070662 464160494 513294462 280123087 818294051 770613149 318257519 475587025 188212614 411382791 193766780 719769602 128536527 219093600 425176978 447366311 639936344 207631968 423422322 586756243 846179418 30154309 62899911 724772000 744215819 705680205 394357225 10796148 324845858 897490492 326294990 550378417 787083763 629788242 696065052 997520420 853211989 407428959 540602511 299596256 568941332 672958453 840630189 96130215 831351384 634874797 579137737 540026980 327320207 569924242 527297806 714734839 568392321 711640169 503559786 303182519 109493859 535145154 367973291 773209587 133526963 24930039 476105340 895985440 264671269 458122726 350194811 347662253 771999101 978273962 637284238 330885602 721841951 736599199 958154677 129405901 298096254 358597242 88788685 858401069 384650237 384265785 137328343 662212070 564134648 812364469 700373562 886590854 272266295 234676675 569839416 590549713 192877235 906569691 232419389 332685389 762243341 349267645 161025502 880556919 804819237 7998068 256187334 244924007 71740493 914555548 349306778 467841617 12436656 557844585 391469586 825804496 114257762 990306184 539177310 495409761 611150418 245628052 41851 953803669 388039414 590990174 463148730 109876651 141504637 532103117 492564966 252241419 246798303 492656228 847799764 992204301 85345889 627411630 746448363 962767038 344827040 8948635 904042214 301744583 366311166 424880518 774258232 848876858 145240316 257043415 530629612 161974854 60539652 644716086 442030213 558600905 891501728 514172420 793250129 383053217 986038332 861419625 521059153 46398743 17566918 993627603 74430192 447964063 31794877 591904331 133704306 320463337 586935220 43798081 284706971 983771420 23736440 804295941 158530730 82380455 836710569 511374214 710846732 719414398 273612511 522175611 189507564 867728065 509932987 235200296 816155268 216021631 51688995 455468596 661750645 129936318 140761219 31881295 738086185 980370519 170473551 808928327 704905174 839059504 534904305 642104423 177841362 359747447 884030507 630390487 385481665 516780988 631372621 537475734 123590021 336893033 65013475 486713015 18556072 83636909 566441585 116287452 418061229 517039909 95726294 173953039 491399910 297339038 265185382 964301948 941757615 631232023 814035672 163498656 314741388 108375374 94540947 396452235 230323130 537789647 420193476 529336158 701025388 206913233 541675378 806563521 387922586 251773155 829314580 922131393 285098186 743295605 915938955 546548483 27676406 459273697 222045145 886291066 25320925 714538063 792730076 636300932 780710087 447232873 314651700 538839173 113662564 498076714 484614091 18194636 869136483 811507257 264375844 21919518 3627197 514330561 405877004 389891765 622126595 241059157 469181666 925360343 106660497 987089456 876084596 462026447 440882001 366564691 833780517 599155347 969618811 76322520 524404479 767965302 414771093 526948394 315693569 347368175 210334149 931195819 468853094 148121157 638907680 367550792 530601218 916762461 309090626 759168685 778653472 273511866 122385277 101538856 269861838 494735587 163742337 279350730 698702647 184620706 109555530 926401565 68601846 589197417 141723402 531023401 244731562 319389970 141895123 23821394 612181349 922620598 772734647 470587623 536195166 616623612 181761863 36441713 60809229 381306873 219323515 791501214 812094480 101853262 79162203 375393326 359865664 451677628 235962680 157619714 44488136 553993131 159222829 478508018 686580592 689018516 609908278 363626020 267845391 917379220 24177685 603716529 406679411 13600064 356678919 35506920 679679441 82854254 452578057 353613890 124440396 595540115 309353595 883828644 155544438 251861972 96868773 492199025 647839266 738405725 802215944 395017011 799045820 154285808 720540805 967444410 82704248 307176337 597967364 507744966 812317753 480523750 808160149 903835138 372795601 411386804 939509504 697878028 842410500 732206817 971369844 43035276 951707520 525304153 475106652 209915402 788491597 217772018 975992721 880528648 339861276 540823866 531212752 498611924 762643881 32777861 18650132 122622672 398578017 254434548 680734503 732559363 161591631 352540392 529702900 345458542 31267102 248364810 733555044 163993288 319312237 766017466 359317897 374330421 481774429 576770029 191809871 901955199 273183244 976572748 64364021 666209813 497244916 185727519 783697535 483920960 144901030 45697625 887424438 558526228 512005538 376669709 617415920 103761096 159131189 398414310 486434714 407238261 130536101 372518821 761214865 680900251 756184767 707612097 594505761 949469112 288531325 128270694 6495462 643552465 912097085 155134127 195710352 282785499 390835779 237842356 229143490 329623192 582793619 990070360 896359936 705625952 771823079 802536601 888593780 183685471 125079126 986537028 701944989 787690528 741048438 416812402 83069915 182336062 768283531 482892163 713669440 189062182 306930025 644012754 227291540 855174975 526371910 863124340 281525735 884600812 49423029 321764098 328693264 272074595 195137197 822692100 593755936 289211950 680600166 542965713 491854203 940359745 86182907 547968031 24250473 264096542 101757702 170517149 751027144 4998552 901671832 447131832 306536039 202717426 419351684 266874459 923922061 50082456 20659154 878818465 952689516 639792883 690504751 770136904 393465669 733219425 671229505 526382634 779123395 679821217 393153417 342023723 11292199 891860998 334275849 630321662 458280761 105866340 365026731 44736545 455764635 860491018 133938251 48611716 788529139 840055844 700247847 688804807 145899771 759230233 933559542 794993516 762914130 428419371 578898922 225322076 32688659 988660696 270849943 196784441 939819270 564159655 203752053 110179910 63593551 372276559 285842087 264638363 415657903 210768315 309259069 892768268 448685772 33519244 839906932 428550150 524100524 197909973 843558301 329178729 696283932 723462472 199853316 740445680 341175970 78532331 319775085 937342839 701031429 628226287 292633604 839489191 495398412 605664912 840254646 387949449 93495640 881597061 680169254 749773645 915425078 557021140 595373457 66889778 12709718 331945228 601338796 989775640 80791295 328240769 544967340 152696661 106867815 151950625 652411137 869289905 61427677 949198176 434124219 823125675 709993571 995776321 328103198 465952946 931864789 889616406 418148576 819361771 243263690 121545646 304230336 868098083 257582053 662700133 776125615 359767707 188517377 645487445 928820300 469296702 348232077 702169181 927338239 128452608 597158855 174576291 185965471 566182602 820410970 737067268 130136520 349689437 179560396 604093689 43242316 783697790 414452649 158504160 130899957 898246388 425746591 613020415 68249867 827888581 226199208 244412279 450609003 445306491 383758450 827734148 553764444 861751774 469512234 942521735 546254396 219480052 479602006 770325384 861054880 688684623 287529336 11610393 127039242 57457082 149958578 307855444 905682395 61598942 230724965 573297952 635252752 155650449 435835681 638282249 455745285 527094526 209858491 907298532 49715176 845526327 526546446 8014072 815695811 985757363 109798356 515391745 976328473 807097940 50450511 714620732 644749622 620976176 444442675 649268912 658292193 135470544 705410056 26948916 491942035 301037587 144988752 74215378 443926604 78110003 392881155 578105799 749244201 5713376 279408118 298040537 57452120 937268928 63196472 983026959 658125281 530267760 662116268 123306421 263815433 673354328 527760531 54226554 669867797 105546374 716926633 655321581 962647675 594017463 743928212 783557584 166444286 323127665 123882204 19405523 45274084 642280641 752102488 909970290 646196158 578603916 519796166 193142504 781607087 545737798 833464336 825171723 631215992 765867496 331286659 368490540 533914283 255189165 86678007 170404383 862071941 66978219 940067009 426111030 961002259 167846503 143354795 935919712 73397790 708487631 498231010 556531681 21564008 299338284 999952521 513399131 261489304 78719737 786724697 539599901 792242243 658244598 357414240 443436376 840200262 457837339 934378161 340542616 168009142 108135547 184166314 766778425 34244476 725944936 552437142 635565828 309120878 423880772 539920069 315354487 239576736 510244073 754175049 376557089 120516630 174302887 943577634 993745947 446043910 623560095 966257117 217415732 94770729 184283369 514261236 105037577 567947333 858128661 844764173 334221905 244527308 930941266 137727030 789091539 452971274 68760383 607638532 560686515 956318062 472254263 62982350 603184039 751938547 321537661 166013282 645208880 746847575 921935731 280790747 857352782 110633157 354144718 392719378 588626295 43120499 41362215 484395856 836339129 36265224 818430722 423295024 185293289 811067198 124694591 248277887 393429264 301031456 186711452 239898280 603161549 845270984 403915062 220682642 62002253 94572024 970689462 113182663 403445574 392407482 859208829 491783440 437117735 933954621 515431009 893072707 240034003 379240938 760537476 578442357 292643310 221651209 645120716 682297241 838682018 153365330 772282150 70633051 681076319 194929263 4241881 635895071 702715931 260406491 509066899 47262181 186177949 717256140 9157940 15472224 165815144 615942651 744077694 260269070 772676270 552482814 823077904 594251643 994076073 252684831 281774068 808790921 2733138 812908474 229960263 535306937 761122150 555845534 563267252 97504918 836964545 431565093 719166718 299909445 755634417 659209777 662950155 45336852 475890505 955717319 606893726 233307682 3594188 924428018 73818821 697482135 385401266 401781416 822177246 185262486 866270751 825138822 175832344 651464496 135004426 931514684 495160687 194643149 185059499 841597379 712811130 22027397 718016644 152241525 336157374 134620251 257202117 387320364 262146815 183824703 650029594 816249778 437688826 994619103 424425610 273916616 27830609 411134132 98054413 992599798 733554090 38380072 733845494 799607420 940803265 963942888 678074764 557756860 614018972 990317615 737523957 693217876 901538793 870791782 327121919 6396636 123904758 847611632 116719997 551152127 417289947 719420922 30269673 833271255 264407593 262343304 111917657 464762796 911353882 542616718 459997036 522410138 109893497 955595917 867694970 684740577 611982761 8555528 435959381 621428820 248081615 174169165 975863397 539390660 162142532 200668475 837782597 316956891 418818234 942063363 276726472 611073771 257528282 742065545 823445908 793788420 586574166 169068087 681345985 722180718 432973980 343957236 682666188 288658207 291403633 997827070 160223816 322352824 676402876 451467650 288421718 609489348 150305383 217571195 721671838 307623328 181729855 78919089 676885836 837060268 289493548 626626530 157092704 239715330 449059845 412535471 996455349 170990146 310482091 7517544 637140934 54240612 992477635 517789748 247502392 593877968 784007000 529126169 487765114 636818698 678506715 435463365 326910350 558039317 424785949 105601490 377494330 50774714 734470239 935571517 378372419 122059860 496087660 254273750 165388704 493004581 499196431 871366182 322705409 44925002 930858972 159431235 307026148 57298503 686377731 736944089 970762140 752526311 844685698 731428167 717094479 896880301 988792218 205268006 556755720 584671613 527043389 894440501 399061164 505342484 989799052 170079098 786227591 257367191 998895588 724266843 131050233 683672365 372196433 309998411 948617120 150956419 476784025 316323807 224761764 148289340 311096921 465495881 836749856 933682972 796564399 145908751 402646948 106075404 933948340 262172246 124827917 496823431 403003252 464085612 209429685 661781487 80277885 373236203 602771512 838782956 121752761 107748040 487304138 906784123 872901276 631886762 116477269 41742940 811666974 646361144 494705765 101550398 672543518 187455448 671329434 159426702 75355273 460133497 833529131 532195452 611607172 326538970 517658109 266746380 350474081 333305681 244447709 671395369 925273393 690708035 700974999 801537973 862411218 651333532 309761303 737855705 200245013 310513556 456727381 328397602 429020887 477773917 774108726 448994968 229021364 708752946 434801598 528097340 509997332 742196583 938587601 213241218 689032321 713457284 640756854 292441052 49244389 199129152 709350321 339078045 49245372 672060479 751091442 319879815 646866551 994884127 173153820 290224231 598754363 662582064 802017842 406842471 420516171 552243477 721565267 807169786 580412355 195766982 857993489 715637516 18648521 652204160 763792703 730397890 944402046 958126469 13148291 954097819 331160216 852514353 899412037 76277159 934825918 624263910 525882442 937859551 1366015 477197491 838019837 61108733 724103418 136201734 235592087 903786339 629296640 419356303 942801465 257954797 723089686 950065210 636111185 560558378 542473426 277869913 976378918 164277139 338514141 216874759 909956108 938093621 435660193 477615703 905575408 544953497 768170661 762316013 470341867 794102176 585482256 407621775 61275627 283317529 673437921 532905800 604391402 308749927 735845393 369279199 887342270 519681463 808665353 591039846 287968970 229317583 90320804 575775887 866309507 193353460 171592530 343800666 980396165 21364331 755686114 942670815 642349258 636626124 445761431 833203444 772216535 162152265 8267109 532237656 876986704 98646191 885391860 493503847 925386506 893468455 460475199 870634978 748666194 696168869 948715750 333411319 992422773 846268455 914577839 198076515 546619289 118902752 905502380 550089633 247023108 811098677 620459501 248094849 408881449 29976780 686989915 956614770 721347557 325400456 101429437 549933943 856862072 79654924 639399489 115148523 848838225 957828212 316082282 215045057 753392593 476802489 963479303 515232489 285301944 650911843 344352297 862705615 505384937 249125863 29955499 709235641 704524338 506916585 540226892 593636006 532770881 56860413 503792236 580512541 70849980 1611058 560546596 614043150 594194761 917684556 36458338 538902182 380543271 775909164 158641405 350212927 442307377 279741980 739117009 931664378 777889809 186520598 220587910 763481832 502163994 883154088 205526514 623831023 643291862 925424848 291216721 88551218 75053822 407773268 901376454 498852417 851682710 409605667 880379944 824683003 991052276 128178352 439080425 578409152 800422860 566055114 592790752 617114754 134924678 954542356 800473157 863854549 587683664 512088946 403537515 515711681 669192211 421371426 958421336 934925868 485985983 203975161 97138645 437904668 499808338 485623157 975475607 676839012 292778209 850428308 511324450 518979281 591334574 431516945 676812545 267840759 10187598 980850976 360957564 541592588 758571532 73084433 814046690 780294637 564408531 358279256 913886034 331248117 238689985 987838491 992726646 470076001 198680410 767992105 988145650 342899541 345565214 221998138 993355301 635635874 225076350 496881315 409387714 947877045 794434750 740220265 856206540 586034117 149077054 751365446 922242991 279389708 908799045 45379260 464164826 241472857 989679608 284654275 471002509 836500347 719011852 948712772 7275202 965525456 899718653 545149938 784093237 310344179 459651256 47176389 215916007 676453577 49162171 562439334 394194514 781466116 713868476 978435207 99471425 214359723 155100732 567198539 324931558 48933670 25858777 746595990 161603569 479562496 772886260 63166169 42121873 188271861 261755017 266063590 676130890 327435808 575407890 743375810 342552105 322533161 447716016 923825513 456562736 315065079 908445319 716275682 152853581 471572407 132801952 980481634 729638690 672884721 289398822 290145404 174609591 129606797 370284335 741530941 300141641 507889427 954434380 335643446 649976455 525472585 895051485 22609255 579802909 581961328 610933510 22553445 264897674 64445309 933382634 734594782 826526920 3437671 369276198 993094572 163648936 14318735 931860289 840262957 422887428 301461533 154633157 388914369 286429046 941233375 182655384 486510565 8897224 359476341 180737471 48112094 508403836 741964774 514642071 929404230 659901036 241092288 452244322 724122884 597068447 985058128 365894064 542308042 652264422 974975539 318578792 585998145 492823337 655110749 407677206 807393063 569895357 263669521 160815646 658235929 227952911 728999720 978304867 59514333 813971972 984526226 250064841 151541721 490117503 562439509 645764225 872611871 429559541 373479982 506222898 248402017 122006519 331814777 329261303 367141823 287973558 173327330 164654542 710792789 818777777 889495383 882655993 796427370 639242596 803262688 906534274 526625542 594667162 991714101 565842957 562250302 315478305 308473964 924608300 136235435 285475987 581987221 341765491 348683622 155974547 187837568 521130140 80027202 195557193 91852746 972153522 694614630 151408491 827803180 758164976 643669577 477053617 905629172 219487178 174651698 959457549 228190489 926554666 127981757 783552575 411895268 399675477 310850937 228904220 584740231 279082788 914554945 507043046 257089735 780070422 9864475 992001846 396121535 886571420 227585106 462991754 194097108 927093659 362132988 799477724 948188262 93939973 234407523 34608901 173606917 978267709 56069026 510922848 302656689 922196554 364814366 674839384 979684480 213987294 566582092 786731816 13517212 540104596 365467351 5778503 85772267 628356549 479180869 354041093 607374488 726686430 105110421 392057578 943092982 610169006 578976449 598514862 359992826 947021331 123975263 893228437 371071515 677136843 148517344 161670838 33729361 186704767 162147706 613367555 502965818 196917083 298576824 544185302 607397286 851651471 391111896 530739095 204884791 81750426 907772167 909707885 682588023 213988371 363271414 486202752 381829782 541885669 198835330 587178077 315553295 12195977 929873065 960033025 113633798 359424585 565032507 827951287 424907932 506735167 290949425 808710623 680659677 270430026 37902017 706204162 497709278 550191751 778558845 290513326 981963779 24646089 139537855 294929283 719840834 447101873 960146444 191212275 775239656 934266970 268521665 436169195 80900988 242398153 433247248 318541898 772380040 184086837 982586011 644840031 619537658 366083450 900563759 888769585 68046239 29526347 163031272 801753089 944123326 275719866 728862733 184046128 71463185 856185939 955023832 773609735 559996813 615630103 11265635 776215431 734745739 673705470 342497200 681987014 652108146 388987579 893907362 424236780 473972319 287043152 724623893 228554138 980761492 547933929 315340238 678048968 949430939 365325375 102698414 872295728 807152983 954621638 514548148 476297662 24145312 503907112 164232152 124475052 275132663 663588123 221758207 617364914 484099399 867969262 370488387 138683774 852843579 326937120 53606439 280162230 307341181 803158695 6445272 143890160 173342245 314658576 441584404 232522993 28655079 364950411 938738271 793536267 500554623 899137400 580799834 766667 210530046 970799667 796457087 978855391 940998533 150613007 583872921 163458964 13867184 722465395 510064475 210307712 669985803 864179237 392235170 269500149 70463058 303718037 999455158 708125196 952977824 454140902 840260459 756794876 257979090 969565415 24411852 795418087 726916662 468133054 528927839 916242413 22430478 714456174 665793547 850656710 861138645 132236513 320306422 562142027 833748192 509307822 910823007 554538286 713753276 609311499 601474449 948034389 250032439 264317446 152600880 736581613 464064867 457447131 76694790 770647459 320209421 561101757 211115725 979149726 126643783 260902234 817048404 132534028 870354127 980888029 419135902 456050276 838680506 58827200 5529449 83987135 280216597 256930785 976876718 183100597 547332333 580522663 431668323 7357868 306714306 219771453 450367638 162594223 314368274 344435575 693915256 940996865 155578559 503967137 949971143 272911299 260418960 710821154 228381441 198224680 550630818 119259837 456868611 683274053 345957482 816214748 467744240 167470160 70123185 514140337 822488798 46301889 96611873 303861502 966307243 672182254 96431742 277620768 398958182 690146093 624631326 218479005 538123601 247651339 755657358 594241890 399783115 794950625 449694077 88338118 68453731 563546817 170182872 462031710 531962073 477133864 214918676 241316364 319632312 771938405 314060654 844063066 855928932 359561772 60634668 606304230 759144340 625276567 383666465 787759459 266926013 272926485 929984932 865582416 315739941 969761351 896070484 311833014 746650619 63100339 94997433 764961900 865376179 226741322 614148783 500511165 820579373 820496015 825454925 712344424 831589619 317880473 880690766 76011558 856299407 629068901 857392258 658872261 983487932 165756154 184104983 399175411 197013242 88058450 726380362 873985918 33112767 431759270 764380169 893440118 155787484 624769720 352270033 692286924 138061139 46027640 588583402 818108916 916441366 30863580 974397487 5270308 107257418 152682618 853522549 287499953 578805746 875019078 82711670 70002531 642081676 455901263 890153154 496248787 572043756 906395820 349901947 205491208 16312014 83614326 432249010 528295490 77285249 110857833 710977358 495843669 862481064 925985485 574397845 597169644 190415144 50216502 787114693 426487298 542680792 703243056 592372699 689533263 831462650 366960113 239230362 505631399 634690285 909782874 473351038 692187252 754204624 96249874 856914786 257962200 548080242 959392055 490934879 976469074 537884382 988022103 663337720 276218950 805650662 559398686 349049044 745267799 912401635 85572971 270467150 748029906 62433610 68593337 650891916 537259016 930086223 826108070 710920451 920521786 49467242 292117010 122890680 426172732 452542737 177149695 363575503 554164165 775044279 527061511 488008202 38656618 293609134 275934201 69586598 481935416 309784139 120026617 422475082 121189239 906260739 552003967 793455791 948755208 416418659 817789748 320180207 69764307 411267370 389129838 407431999 425236746 254943868 444269833 510645359 557983949 513164519 78882914 382394422 449515646 924282252 664958685 695863107 694481819 315988921 152650398 548816008 709556948 834298087 277896216 453187048 240229276 897160800 659812096 685119547 277008021 190477140 435134901 916582093 298037930 749421817 360838599 772254832 468392925 764160736 395520726 721167134 997753493 386267349 573662890 141418907 179315059 531044705 952326884 370123604 928426891 784271475 38573410 559658927 117520440 658756519 612947391 240810218 666600181 192460179 596844815 627636945 163204373 256270422 242254570 447942504 854320607 793465553 79605440 784557175 343728970 486455681 678125774 712361359 236503258 762871132 952306604 407770719 836122905 98044009 210671779 510266738 294357794 720614432 344847281 547721058 523187245 44835680 791442583 217190384 588258254 929922800 73141194 197283060 120524002 656173488 63792875 41633112 898628577 803502621 619064884 986578398 803449707 966657584 370232678 600822414 977122229 21579060 740138652 127710394 498476090 242293726 932204934 289940293 264882812 149456797 801971668 822321957 436119285 102196574 139819393 726399166 32307695 537644134 511583992 343121785 286124865 536072838 311179134 527728132 700870064 161924594 430312608 210468417 991569303 474646574 788446614 930932058 27282771 691379893 325256772 866197378 464978257 663285769 714912834 489852676 422444068 187121908 211501315 599671606 33456475 20450984 677431645 392932099 151376910 155025055 417728251 839393804 203563669 859964306 304011332 314893069 978303689 776839033 972880697 980488747 601476726 153525326 782352694 192851874 778532915 789279193 341985182 124561897 905955836 521114839 6981331 239726815 361195736 94063049 691218899 83335251 418984465 555314018 716647638 545509065 176397124 706031108 31635151 543102332 53203271 858676486 62786335 100188579 348952567 966472163 801692661 779471975 537702835 177349249 310530850 158110438 269638053 952731035 825903166 909062783 493170090 795064648 297118443 626722948 864442614 967066021 208541513 159646807 799778481 412071466 566111021 195256554 494626848 965778822 267969243 258255796 160163803 708958948 978403261 774374714 396639771 877354142 322875262 654676278 853175594 352846656 372825304 250355799 962742687 447566518 338768430 150753061 800057899 674790518 446202091 547101626 492061834 218455529 123269246 644059755 4953160 352541595 340797502 637435463 539577824 46042607 212068940 828552035 280898294 502316031 952188038 39020214 254145825 934407391 995374280 249395643 471766768 599505654 425615968 60188109 446204220 803860825 944452655 792745736 406341451 585111632 198456212 391078957 790084891 624497917 336805978 306919723 612678354 427758321 204116724 229073385 529195306 121565487 17659841 338899556 249818742 670559155 452998788 852641311 63298897 823723842 449927229 171460595 795928513 161343987 107719303 174291315 646434114 870048367 264936404 507029723 966305757 520274370 782893580 760001161 617636182 347198013 473390124 349181153 594270336 541519817 264328631 290797622 326889971 981803910 109684406 606121307 811882305 283278827 289577675 223660910 551589465 586862532 67504501 438897697 916679225 857514058 327162552 665994312 608915547 485002927 383276222 971670820 613569060 920892135 52997778 37398335 54625328 903535164 810871433 846009709 628098987 367580105 318456118 145341519 981615451 774613450 696389184 174509098 408190163 956994709 789974396 474582313 804262833 240623224 952504823 756035703 605889545 339971765 556895483 76579704 96756320 38645011 7543140 945013427 126133487 647992682 109640881 360203753 586262273 898546490 561231443 585279597 713469587 618569252 112981360 400036630 701647359 128461765 559243553 583454434 516807952 657965370 465584686 503599496 428381301 103456881 484905612 542826403 260888584 71340949 724516757 165358355 207543171 856205390 388166621 713615080 219386209 724578183 201653084 181535829 952366855 59867719 182276852 806719939 569439184 115430883 257070260 684813818 691327291 421634933 216581709 157560240 730104700 615142888 71396100 939061673 72171992 766988151 594140159 537578603 882161536 98556396 332749444 395860845 893174699 775817838 463556413 899454127 836117005 831417550 362092050 827101037 508130534 55395671 18949273 984154552 642443858 403460304 564775617 417412146 451564680 46507670 377103244 1708726 602381091 949124702 211142870 754806633 293262112 397270528 978236381 925019174 451553931 814657778 955589767 626487072 288635695 232799020 947064817 438993659 429822064 570849907 789615576 10827 139349270 268666703 143068975 722008073 758989088 567245763 506649661 523765818 948684797 311818980 82026085 570729780 229379551 226796248 170515916 172295179 765631016 250934501 772490996 297017189 484829907 267220856 54773662 434840094 606785710 609845727 770659902 974072903 334669509 37493843 781482932 664872250 187542948 652008073 956341541 223505764 500149958 963595639 238765566 516588101 691174472 840344578 921138930 738583434 500170975 643635969 673306133 845479052 165663054 69511684 661976482 508810696 532167358 799734177 969824922 813756040 919209611 515604216 383683624 224110893 897769219 718886975 630728482 587827037 768950470 500677165 238288793 198426146 592418296 279936276 19717329 283373692 223234583 336015588 352638181 683799125 200946651 220847549 715280225 546128068 600299923 601526417 577186039 749348622 762965566 578440754 240015638 143872267 707054918 581278451 86028706 657935281 464259864 424918685 124399305 664605476 923222236 109931803 75673289 17560704 594290153 998934194 904162771 273559984 13292917 118523166 106713896 772549124 372192346 582402923 971044266 113332467 738666535 514265042 829888598 849208366 933136249 458189509 98863551 222883629 101884474 343701430 861812275 296533437 267200331 233328305 861678758 297715897 951142723 620905606 355559456 405681073 665156518 920933881 539568837 977473270 38279311 621955829 338871363 786387957 200721014 587072582 516948036 228216296 183748760 166984193 684527218 568152652 403900483 497838761 39241955 763740685 343461433 562571875 815599081 214855332 276302074 227842516 125035180 899881190 769757306 526527666 54233740 666096859 209849656 216995688 895867595 875482237 620072456 788756875 640236417 674710911 676471325 58781742 585358363 742644192 168014331 351562470 682234879 780696537 376902712 368116004 435822543 125786862 146075949 60059127 55486311 783039543 343419675 162513109 728258526 559314214 718457267 396050128 186360983 272650374 799955108 637687751 972984780 70181577 48948686 39878618 621763487 594196164 958995413 844942958 165632603 244899813 926298611 701962972 814282596 990620045 606792528 526034131 442292863 275946761 38146857 885059875 811300849 474536560 424927583 734299559 379694724 415616368 646356059 952285983 739959080 668584763 895487043 172756916 858767355 381142039 16403520 845958167 594067863 285791470 436153024 354771255 417939388 80999687 819831926 266126250 98920651 66323929 934021554 604998321 451666367 345312411 505486260 559217599 368269850 684221258 807543750 229505393 409729402 562721016 999962721 106889780 968082629 989702522 352114745 310033871 866749362 434217786 295431431 419370661 739807776 742273393 981550839 212421767 220410167 495720494 748897603 382677583 473111385 914108268 580747446 199021456 454659642 373963647 620981053 898168518 612417825 405651644 326878311 588506277 389721309 341068706 686267399 693516900 524988361 376902197 218771880 831833547 588746269 118678509 573753789 639403763 183130139 553012971 856170937 377935283 614106647 306451528 408599852 228985710 80280129 539009087 831704194 661270119 600579472 359770795 914737893 242675237 405219149 706326450 189160713 247934663 241202866 26497389 787048107 925219808 534989574 144568202 961531721 759895664 359931105 101249325 107603180 644784257 922752 964081477 444426865 738102107 276175239 49906286 677460560 289301638 902041404 216620124 356715018 54039225 539196571 726857731 898786175 856247664 262153461 137904922 334511207 168249968 101775045 967825859 10488552 147049059 919246357 635742094 968008993 143813571 622771384 792557195 134107870 530774254 283681266 486832109 168412010 687777621 304657774 146351341 964535361 835508838 75222353 565776007 938725567 812663540 832955717 715968159 122413044 992560848 612925941 556214139 74565049 755364734 476883932 842614272 494578221 929411510 590988544 598543038 937568691 376969444 704657960 672844490 489891993 566771057 665100402 448877779 426593753 878983826 170767604 987019297 330315056 957242694 121177817 17305182 258836664 616872499 147700592 548803578 317822510 534627784 129803797 831395344 987319372 411744641 28320760 859161141 898178674 254062784 799834369 109899461 38641988 638125843 629761971 31704574 949972340 274064350 824287367 166784367 641853496 152119619 53059603 234130822 333092432 774792455 546604528 93197445 453229512 418669205 806509601 836054730 312428007 893196953 752683271 330451026 892825393 19060275 532779266 929439946 649021619 691071380 151131063 718485644 464183947 718327490 245831597 820791316 625701301 487993604 9357703 944885216 519565288 650153860 327525961 506012825 400889489 820571941 492209047 749206592 275302040 152725944 436169205 227558927 323667725 863989659 237641886 159062811 445729347 890925656 279865632 217518642 738895875 86277109 8058456 247228435 658570930 189703728 63544117 172566008 725564337 210975220 977956412 162468380 982202079 580080472 33432060 843130846 920364062 409205932 921511306 83724813 149107151 587063031 942099853 214045927 202308041 673736686 620997767 773616215 776807300 982424989 650297739 521666861 663968946 171894564 258531959 62857107 593005585 443695724 204330252 777370658 29395889 431551605 760231850 544295721 28486138 422251587 232254739 377455306 777506031 435087809 485829733 153818098 345601236 989432947 948851169 988533249 709880507 675183545 46354703 197705062 579196494 667217255 689220854 524482941 348144708 544069458 798972919 848368808 488152990 216247320 57957126 666915546 76339638 578631117 311233794 730399877 918518302 132031611 232575867 443474158 443247253 422179009 643364628 229586260 972389663 191308540 731143330 847905704 485720823 692361803 285667982 848368299 79035493 574422242 450336255 601124330 666192223 698398786 815920698 668397841 297897475 635985972 241244168 681148052 56878440 240428235 706046830 558915822 458312934 996290456 27302020 441081440 533458953 942146380 67908004 932310764 687586179 934906344 294378003 419508384 777610183 606881907 371271246 482545405 496867931 105180612 696403520 301366534 920463331 7475345 286414921 886350243 250063535 992503267 83238886 505382855 322319205 754152304 416477757 83214134 970491938 438977537 570308915 596456439 178059196 538970887 460909111 518157661 585467708 876782534 697075813 157332486 272267216 948360123 592575790 417150880 433489188 17855779 94338786 491908837 277061268 377616376 653380520 397131130 495229535 777657931 107996481 631794224 15925949 326586008 907215292 95729153 419137755 380412324 463697602 817815126 928359111 8555765 777046826 200853082 708732265 388861902 303157234 494997285 639921151 496259977 484475097 556526321 959877938 114438893 176946942 971862685 369316020 710050933 550831557 656930869 359212369 446920211 394645773 959564685 337391302 771292575 305890128 147240597 246986404 645927532 401790533 206146243 263201764 277415946 43042053 481009811 447175802 795840625 473892251 539342824 550176363 755705565 281509246 126690533 210459161 163857889 415594789 815218343 619172305 485643025 762187257 96189670 194672173 692581793 281583586 994538107 798155969 796301766 58458819 757962827 618573045 881068289 837819682 234729424 814054426 642717054 492345858 563504726 813159035 920330692 242096533 855482150 136852010 51091565 467866940 436568345 859422912 38628340 722256035 533754645 145086260 276867953 359125986 521910320 902427754 775271322 178036227 21877335 349564964 385258993 2630557 497466315 269545882 82788558 172887795 256899493 295898745 20889502 473525135 234042096 801901988 803748762 122055888 506785568 982552357 30277162 538677 321803566 340123024 475433690 859951502 633392420 606495437 782268429 278228991 308410627 820508206 44740923 755319877 589381544 969956337 923424518 283720789 394459334 535672034 208682307 874162058 83894530 807249375 759426644 994095471 382401940 830088464 839572270 383250856 771646771 151058802 445685456 696932623 759915656 638708347 109461822 21150614 844363832 206145418 409877459 813007704 219218147 562168318 8628037 397093045 759591494 254585372 792439831 467383460 693776597 733707909 550054590 309009726 54354077 349084229 987109873 1482323 523418363 294218705 866899436 922545236 298044404 764923250 635027209 145266335 102228457 519015723 832956754 78194877 885836912 787757295 899202660 518472287 217667866 111669860 730080773 373109049 602497424 701657923 523101702 312044033 367557570 981764598 907022533 458951280 628572195 896429371 144584043 781789637 453992190 331477075 568980118 976952547 893135644 337451778 895021045 251835897 396080472 915972874 788110634 94530196 428460099 735728131 164823326 35268766 499074526 78491915 275109130 447703488 245625468 698001379 626749610 897492053 317820026 730458900 19287474 839083127 869234210 330979525 196104106 940903631 443695179 323638193 406250073 141178201 622473474 574979819 2763685 610144661 895636948 409746866 861392477 85566033 560065854 409157007 537415097 577361445 3341203 366589880 395493883 282938330 269907271 509753375 127826000 722339821 245595502 164476917 59704675 123547799 21044950 255901246 368945817 24744251 833248531 153827448 188903486 67731977 781017298 360012491 247181347 401931598 322468621 596997502 621430235 317868778 120758398 515107301 306052566 231280107 897035557 148099952 496600603 56888332 380856369 714509375 309445603 573646005 853553209 860212255 893606390 874512936 671008369 822910434 961371958 546610425 531180319 777953635 166970915 849389082 729876075 217564942 511337484 608620081 672290631 661059914 148455962 705247809 782139963 552115609 745343663 846750837 603602878 574041444 430976540 730258608 617461576 818490884 163180889 204062863 959663029 326128666 804524590 981535315 170494023 581100311 416125314 18568059 384401448 446302680 328668799 215639090 547791343 440257088 479324937 686363716 263504944 7833210 269966122 37381217 231470927 85655910 860669199 126967696 161675729 781760575 847317875 996150652 598868128 566488691 429411139 469392488 503175210 171705619 543845188 654394289 324922857 335526072 744377881 108034900 170771054 758976680 271654122 802186609 494483 859015488 396423360 104763768 212521319 452089808 812446232 818953786 335792193 360275802 80470798 412970000 806554682 234621434 391577238 725424908 417914652 772420099 801914521 803075835 402857478 351001817 109261563 948772294 616936067 351675035 680770044 483578596 793790293 541199789 345828417 641535442 617194965 8200418 686212429 514223223 296038774 251705484 587596129 875146002 846117935 608087887 368337724 210967224 975072515 418850183 547972811 164597000 46007026 311044051 284190885 768647411 630808158 681183682 67852186 131102684 154607582 28105144 258002461 760911287 887603569 343211034 855202141 979763719 920539677 829290008 416626969 85758051 113526449 36139738 575695448 421449417 436146453 425586692 453152533 100860174 425990225 723363783 710783582 849379821 304105813 66649704 566941523 282883374 785582381 465432840 464843419 46808905 425928850 254972237 50624108 775538759 162877216 980565690 324410457 942961973 743373880 266119807 209801775 937128732 412826712 620094512 575660640 248520799 601356641 967424796 562018450 382059151 401015829 942679354 856547807 801234619 235069913 111177803 992533249 149326789 237121654 261458624 174868998 60511448 711210022 690268384 238099662 544239781 252973335 549445413 130647832 427832985 555724029 51586141 99356922 734859707 311908373 885220454 417094896 741837405 516255481 837817185 859342311 900434366 470210503 776058225 428925892 948104246 18988991 143462194 527536615 658605946 745283094 168517373 660641134 237126541 521894053 434366691 905702350 203079234 222048274 161752120 667864970 713248679 782759771 533140474 418205008 337330628 444244961 857651250 531494544 991836344 377435185 173002921 237250775 71663599 459040833 491040033 171011618 398138806 899927278 63377045 228245290 937122365 831437627 406442910 647174590 92489229 962953054 807799185 558741065 162523260 875035621 947133950 291181254 19133348 124765788 697628462 300803082 168704827 129268572 304362398 480644211 978172152 957132978 578329150 59147291 530409868 893167165 140346052 672984971 56493350 391562630 240492015 936035190 218572110 779909674 344243792 285981486 373617771 184919802 807676108 701806047 58655646 132992792 110169414 224166574 650121829 966680724 874771359 193164246 908630053 192430927 694092910 40063963 641241660 553035169 647684402 990143029 682081268 329889244 631412028 191399887 374136049 283401017 258470964 86311716 288838821 261897433 324497878 641065922 172356268 831055707 381922742 147016799 538243738 781549692 590437566 718571230 299372310 426903163 700405031 230120088 436235655 476054352 695724238 874543197 501648704 890124535 760551444 115582374 291241249 242646075 123294750 37530578 725012954 768853745 970710399 676281389 977287519 12153010 123088211 85560251 302810416 807293573 396444527 950288482 613320677 390722449 54775996 854411318 308648791 464494360 92484700 549310139 717173568 657112172 362971033 2293829 569335271 593908771 238447125 372945476 861206444 595553758 150522652 594383665 108748649 671282909 906696189 113709205 426554840 751309560 308659800 701084347 459831003 670099195 893608916 416380056 25529620 764096850 234468184 697389842 613910223 588924119 464362852 23233977 760826098 471935865 883386991 34195289 896626743 590270155 964056081 375699628 935047337 215753492 759072043 668761336 112163503 214483212 802947460 162493837 55505138 6757119 629274697 284260486 50385862 170581061 279511364 838245533 204725801 721943993 954968398 110157011 917003715 809899651 573456576 743331565 695300849 680164399 68991162 901798548 582186226 689896391 641956949 546808106 558217292 225523782 733766154 106185591 190952447 53813736 636145489 349187289 935070857 937292509 363226686 303990847 176090088 386927908 665472682 287472208 881807145 703902748 11331426 218185455 845585847 334027556 32078534 710571105 804073963 446003978 790743267 314857765 705010755 700785953 863162646 698291138 724221634 33877578 634198958 906258825 721447631 273168533 445586285 644775064 539833380 138405280 245040435 393374001 529814512 852159259 913192220 162469349 359782635 817082676 673589434 262545165 49787531 14273178 50110622 524481628 447912610 252450568 450939543 390162159 279007156 779740545 253951540 672222720 71362271 563946326 395871594 292623516 459844058 241264875 756778033 514726182 10577679 919587432 725406349 161464635 38447571 831850840 705482584 755907441 966710015 337363963 755172287 887434041 12980402 53726830 31483300 245273780 683748189 676082874 424371517 996743240 575340455 741290005 223753093 30969449 233847718 456347507 664162133 13018285 288502727 132835286 208542099 357850597 288897191 994249502 284365054 282836989 313083124 140135780 334653341 166657691 137020643 964600017 823996401 303238155 675037867 395174061 899215010 145676657 296373127 307328698 208417377 954525363 35082930 244119093 954887075 607924304 282386875 656492090 183179290 765328283 219920042 204534664 265496699 723416276 736355369 70750403 33554010 577303617 83197050 27697003 179254740 118065213 799349556 306749692 432248371 252825455 925255148 591138308 158414468 117070989 329910100 788933061 893429679 621561350 60043942 149172507 631547906 381537952 57309003 711698241 79100575 77719877 492996416 264174392 402922117 893904037 96407819 210902092 943699106 385771295 140062531 397130147 188419489 189722967 878046919 749659204 93978242 942441179 167549973 942354200 436663670 710118531 482663422 37814221 319700062 936160579 696082625 765990690 272840650 187797537 702868168 157957067 950319959 599817399 141795402 366419672 849583696 62653105 656484723 338138755 495523150 439074968 859773889 221695687 123943171 711120857 747497481 741005441 119173348 625098879 320028324 350216225 143083201 901000451 363492032 386593149 738348886 632175662 863952844 543367932 916916 934348118 523894766 790213629 912576143 442136734 338316099 845918260 704110579 425820773 63993571 982513618 447759478 725279568 925095623 832807246 547805947 575108498 224410436 798478535 722285926 607201235 112068378 72966636 254517361 898379035 243543452 338911405 443965848 923916292 219054140 177603479 616902396 912683756 574365416 845128091 52478491 277396460 450921197 481408790 956422964 517651269 845919365 718340865 507142464 75957075 497765141 716608593 853212427 366002004 633186935 357822063 604739318 522373518 24784194 170543441 127439129 276450815 352395871 272950783 207802199 729063999 664720093 788987719 456473996 63320771 631242166 195816211 540046138 750899476 950868298 948665959 130343855 693008345 111373321 296386235 113491242 770455471 887779477 916369470 524189137 585970301 400294476 782586278 284792404 319021162 809582723 596749484 880375783 770844391 697520513 693362480 315954549 23285286 651085710 963589258 61060643 867182829 817188536 353375744 799848294 362922261 127627839 729191311 142667567 911762176 444644157 757780162 879480593 592214424 773898535 862755419 721372703 287034381 875894108 214192416 393506992 75059882 290506432 689276853 609288496 595368021 765628046 436728940 318478052 964748418 944587972 54688374 155359095 498078482 32970939 936775564 416227782 426333558 176707155 467874320 703555493 816158339 488530034 72244325 924351985 331396200 49885281 80429526 879640463 818770350 778414083 506219809 949034523 947128136 857426822 310847133 258581801 257811826 604282761 897924099 766137150 566618132 219723640 841700983 762026092 556877849 611034026 899167490 224406880 589539078 895180756 536280219 648167488 716137089 930957823 295169815 354968613 33008271 155616397 958296949 959400322 180792806 719753195 505355893 862732840 301512946 679395190 303217489 485144536 28163453 816732463 930777193 893789105 841031873 435227670 126248499 272967114 867403573 541356777 758920699 513438461 487497112 546493106 365874089 723701310 773829096 757117143 300758840 558245715 519827683 638767683 389195866 318961195 886207535 963364752 14156568 302710656 741757226 708913583 635463135 40423523 35104569 2417677 793839786 305182579 952941887 915268468 529553236 656282888 717435471 996265102 886068885 979676417 62307679 36064944 618967295 867184121 234490366 775501044 43443425 563109155 807429896 774238590 303927747 325586429 700995809 514073454 108269939 340778845 677066461 234268892 613216458 787245009 168247027 654805661 714445953 142655398 57387533 99801339 790414246 930965057 60528697 341032450 288011435 874096793 12434453 755998412 457318150 659847441 26514323 305123323 259070890 711425307 856650249 687130248 196972932 991769775 135190516 982504749 115155926 646374782 840100270 396978248 134937553 815512059 729712310 276530088 314973353 659535495 390551191 904394585 480093367 391877638 717042769 613501552 858718123 688931258 875292767 460100329 587134668 199487363 925882086 215359750 104542559 822232717 731105160 804043624 152607991 66480024 555403919 770634358 540270056 215442699 650253447 720534374 887755687 167745559 458066216 492896668 876111366 697320437 58517699 472778237 416645233 495853702 614471299 473653800 791247293 34046254 608478135 124629992 221604965 218311616 175096817 156595777 936781062 312160384 852855557 229494493 240691393 763684006 855751094 129786683 787304667 6269318 472498781 654692039 277848033 867194841 770781822 637856585 858497894 576540803 113025905 969799625 762110867 636896472 210699431 771829073 978873223 871770825 460581759 519168102 742107038 723478822 40264642 223916602 745017044 672007830 919360057 972485053 937522944 934172526 197756594 335842625 356196166 378151413 933408166 526782084 569597199 698796985 808717444 393343765 18095139 308700937 900903709 644903631 156748663 198929544 704165136 899232544 636315324 18043166 561146837 686996514 769424485 821281135 270599094 809536512 658156467 348104224 483020092 619564207 61282268 627781211 223266909 216622576 743180997 879883094 563868881 978996423 888413160 106178903 203693620 616761885 32653909 956794184 543347601 159945960 626845569 403642868 919514249 107585607 564392757 511973426 769576758 841261793 823350701 456962234 565387390 211454983 411718976 312494351 849355687 250074370 923948870 142366444 144890166 343763973 256573893 582883085 411382111 809774835 394269062 103317904 826841549 546692939 739185459 7709173 456780006 261411056 780392662 141160547 999998902 150773519 31513777 967178820 290634838 981406672 700766052 582869452 931477849 952049264 251723567 402503443 373290682 991812280 723281034 247226102 886592471 669651404 626884085 287142281 915281156 48945557 381224321 846048628 383327961 628458960 449845070 678614877 629093851 954459611 700863532 521740498 294172651 344536958 938136132 458456045 992042913 541307325 391090507 245680992 942405394 886487539 441381774 270671637 915171451 462509886 171949359 437535259 412832272 327465134 881565552 32074006 188811960 629711300 470280871 256026624 239328826 352951901 627503056 947699583 687925142 40330126 890099664 854761887 243571302 151019663 829729166 627701547 710660523 791610430 936605886 632125006 522505178 106380795 344031628 526424064 275262096 124622275 190331728 27882311 368706739 543478252 412319466 497284644 77316433 887221433 32436647 34952545 173012365 565950390 487389089 648166761 657796237 815221520 850803150 227244877 302699194 591037494 218364097 432613025 203931873 283874314 572094652 575746622 26246436 804663317 341877686 562101972 122615607 868696997 569002874 39986485 753948009 142037391 536947736 628167572 170665144 272250561 111630921 400502456 909161743 135133051 913234335 137575741 573474105 269241287 447203904 269618599 488244004 365137323 643719837 404244007 421860333 406375005 32855985 584373710 617271072 378902384 743467911 19631227 538035920 615190215 335604055 657370858 65768500 333088871 60422989 335283577 411652371 713167241 753787996 207968587 935679862 820934898 739486129 584726544 252434346 571542921 384482539 308521990 576686017 78674352 998699222 110534510 543564490 613957407 425351087 21171037 852939106 843782711 613127305 896429045 448205806 809194394 182414980 374912196 670537106 257566887 25022820 715998271 31857693 910719103 296823034 77632111 584651855 633748104 17302937 310365207 580527759 265592990 979797405 245171605 892752568 851574489 36758328 640983586 403752434 978884450 475564241 351590159 617872250 546619471 323317485 424985207 997935133 271499720 674325954 844004490 955770514 396166143 548599032 715807161 560370567 603661078 300761246 483485813 973709366 496281370 288633070 239338081 777944561 119365903 406668294 118130608 620328584 708000046 512393635 226793960 252364919 688709285 177732007 604099899 904845917 252329511 340819673 704848493 706881061 583072788 488279705 985792355 940200454 659870284 537704408 512752452 42066570 74124138 337924161 725827104 231393011 248464303 149652333 381586506 176098176 279463344 529433419 882205175 772203071 886185933 427309813 127713301 433630595 167464626 249544664 417110839 378424536 575963257 307552195 822905627 121730674 193784836 209897365 219222288 234371722 573199819 127253464 94051225 513232362 414006676 276990692 415497304 492369552 803034895 574304385 813514855 867079807 504013162 91234177 323088887 904268989 726056572 677911076 124950068 307034371 237935448 971292550 622948541 756493344 352688517 809912980 552572219 138228604 158079386 782532374 196754840 536969363 708928815 226166589 672765824 606406249 473339027 156952542 496019780 255596595 878817203 832608639 837843143 701095522 333360192 122096160 809783294 792598040 697871270 42991234 511423282 345419427 680178381 813596315 538922925 262885212 44881801 376980158 602258220 866179473 532342414 757312681 233755630 25384445 677664938 608120068 449364093 828958868 544663301 665069456 720128708 808094516 489625792 853262832 713060064 368287953 715694344 749104264 799164306 19635999 397837596 17458914 219144235 51377741 567286463 895882453 969141467 471104043 583551084 63555048 273715447 255928806 922932591 248443311 921402261 233704208 25115079 397516928 242235240 751367092 193541141 414034755 19731311 726450253 93703737 691154129 823464047 185890572 756105745 933571820 513307219 699146347 877240877 435511117 301255007 363963397 13578148 347292700 587925499 401832360 888717971 166686786 435653100 308358141 576331021 46582394 945632992 301961247 380386914 351767793 62507167 775955873 531391973 858069825 823910676 414990812 471026196 849971019 988172079 162544958 51596580 196348168 41698990 195064024 375149343 886618698 46917659 276346560 499532598 398229768 149891653 713388034 366240830 484695405 189866657 808787567 237747756 76396968 752995239 498803703 557379910 628151772 737726931 277202075 396750006 857954671 160537327 306562461 357839962 957241944 160144869 79426021 700037210 690729290 157464436 782452235 599076347 281977479 665291400 682083441 496502764 759516833 107430441 825453529 444120622 949653211 683203203 935484757 881902933 687889545 335657927 942785741 894059736 882094748 367221757 716628343 169145246 87386167 355916954 151573645 339880990 839635288 489986615 700518065 928671830 71116637 148241457 347311839 497122032 722408934 177806553 17748522 280355032 293273074 552914019 177845876 453605966 619977445 414165632 751797044 541231659 155007703 686050936 909727590 819404894 404413512 794403707 332331027 997180487 994242719 352275464 437993516 941911639 756773559 254294722 22247018 752418939 147910063 861034207 663586306 788396817 713594731 843034864 655487677 617384111 874960199 294593832 523141997 139628732 524244080 653922900 890710373 97073351 696253128 328604807 342471989 543308232 445385862 970237247 540113669 420713232 388735053 431923080 299414132 581838787 727463203 855734964 953954342 285465789 448352578 861213846 833529864 373427292 446675566 516042212 708951669 527658835 103792421 215565907 117446212 919664376 852503791 71732582 473743637 49343318 26253586 382564307 779594775 252858839 271874647 718145161 648489048 274430298 122106808 508939532 646890654 27295278 302130431 38630640 65238294 291607270 758239481 515267385 769008661 101694285 532030750 328561497 64330630 489901881 280755846 97765632 395382013 910445984 760316268 247478163 385540578 691615252 812474360 320871339 80229931 620373006 913539896 473693423 696578413 713194259 298249208 740365990 183204349 844855804 793314169 670252984 352022790 351422546 603560020 53812513 836553226 674990058 593133068 436324708 381651883 94598875 629638015 241429766 679367941 27858585 992183015 811613504 138776294 992494094 439980731 361531860 853872086 108610379 69479446 768740766 505176780 823060311 723272321 596863878 112015746 528118832 258538716 575214463 220512887 61852885 511318332 51593253 186178302 920314447 775810230 188329619 644714636 38472179 693562900 877661052 676444546 197380320 643276545 259787894 59104098 436959708 532877437 166848296 410126535 554085115 633354683 969142901 797576774 725440968 290511612 316004099 254019064 772769452 554102365 826210887 525398621 698988383 220835945 847657828 796593255 362516331 616457104 320283628 738587003 376950285 454742993 828296051 481227335 550463339 550138260 139727288 963404959 287736052 154583529 921789615 792404075 640281192 545622248 13155867 677792634 207447592 374071046 61613792 375163424 893143450 313292309 485823817 691391562 683468831 157240742 696815842 383951778 250114832 239564176 918020755 162451434 735598636 659239379 101512974 761215290 595664938 116858918 25767917 584458747 993049150 791390718 552571772 508521840 165911263 359144633 97312415 356066637 915206686 578453875 543135567 132434002 119459248 608629687 407011319 404659151 409079124 189529185 618549125 804693784 118128713 243021562 155368537 60155121 403100176 996522895 323876391 108833443 139536792 270224729 29350547 464945718 983007241 926148757 251793123 656228507 124704000 104177376 768215439 982553397 65932920 112860360 140958564 737266828 998775687 376417748 373985322 872441529 458859234 691029050 174372835 736353206 996863045 234923636 516942410 247733192 458401203 197035302 805370212 813036766 318221634 203964224 265048506 797033267 733440219 860224595 726631796 932646766 740576454 52054047 639410667 750291421 846118401 67474127 356733838 367770025 405195988 931845793 174909980 446932481 48132204 337596062 566475009 28854329 520893337 748960600 901133932 831561565 858010144 112592799 785665539 229388944 800125208 5953962 239086172 639672002 303997740 63845556 64995270 77134558 769714930 209171456 960127457 324633277 277197983 620938334 646403632 403753103 294503641 724938667 579418613 863563386 885812103 564865326 824436203 273695750 962553493 597566934 943992251 622609925 2177080 623614954 116525622 905924750 936361160 588732989 903301271 841776351 869590820 3530528 451095289 447572335 346444945 247368099 798945068 441215512 717229527 159699914 451752779 602213582 512478462 362061888 865146807 844927234 717590904 861145462 281160381 397652068 877450827 746423691 539835608 228791608 713209382 269909837 68953029 562735862 328668571 104530125 932013802 914141594 632682478 228666162 71039750 890201054 608876255 99201498 24288644 156911471 351323221 611570940 668169921 309201725 186996659 40290614 578783631 325694246 236366266 436177060 902185201 382093521 148137275 711217126 318661023 507828816 970835105 232528736 555382658 555215906 882212530 962472933 534371702 558816274 207357023 521613724 731166145 621044526 539302196 483265726 482396865 632959467 514792409 576920094 509712672 147922843 389459054 494363630 460189394 882977325 692012948 360070312 754896652 982517133 474285896 898016695 720584699 579425370 495779034 974626466 174410385 901542948 842125989 36900023 448835842 250629129 822043544 979414196 609853616 249845750 231133295 6681792 685084462 847947383 432593666 982096223 424421088 451040775 41632263 761182786 866295589 752444611 435064550 482168943 897769401 140333854 821414242 584890107 570552171 596274126 368411536 517702722 303827579 45156016 621806795 82864179 244264500 916229190 261619969 917075535 55102892 335090186 717158056 680837845 828047572 930476767 708240267 784220846 281397272 732050635 274358926 629502991 109706296 138541932 466855215 7537706 712021088 948690429 208231169 52421356 304338635 78629504 160437936 44730714 93550275 785400134 279073788 490247723 828656708 762236622 502953922 252718527 606713433 565442205 318162467 118074223 630828768 936831188 549547082 371749054 760962885 526653097 767787398 667807898 416902502 498530319 71431048 736335505 403116786 68859606 243529732 205548250 309485435 579132267 680276421 974689487 223628874 27860570 495458069 189359803 238397503 788762927 80048141 746311174 635984460 813913864 67320920 144488577 734264942 397837856 151240910 119834714 840095512 503124096 740093064 759676017 999008858 188262179 297377670 314437826 274249570 57874731 344065849 459274403 989141913 797963198 220537469 410888457 107093519 616935297 465485766 597146954 388084326 428461610 527252574 159115613 576895055 769945160 32185908 596057420 746501857 816159933 576990541 229643359 142370999 282797274 666597866 394809707 887523651 782166570 836900253 266835611 32251466 429570824 433747555 304173947 715136671 130716998 705517229 453297528 3523915 962938342 96236005 782017689 358567318 208292425 79318562 659230906 966489940 122973182 501442186 986895422 655382278 391522169 96968622 975996954 773637104 646085629 577932554 31400370 691785585 471972577 233079689 34768498 96908600 91266983 995205149 407822843 451012946 983817943 535192963 62487651 744426876 513056776 101612626 35763541 781511763 918490406 326294845 731807137 427944749 138942855 766226743 779731659 997107155 133164886 794735363 783034838 600247294 309923400 276662112 273777536 455193906 802096258 908489461 639400658 986137789 125557720 972821992 629027337 9327825 95595545 373894559 48971135 937798195 735843226 697779570 516743082 714417774 975714628 581827366 932683059 868287484 780694256 654326425 654046435 204914003 81577282 649498781 331831183 342165854 545512856 846843997 582536839 907074670 192343072 875996841 954048571 127120881 29509854 23409214 306851744 300127344 267779211 615671459 30228680 324278788 387317025 279446456 387777670 602688624 697549272 685249776 527071822 198685418 278842547 426387865 262742586 781407367 801706183 729328628 123434921 142063657 208199346 345492807 944081662 187462586 411610696 157214556 436809687 943842136 714460300 542579260 682880825 798223532 771588993 367799990 410489901 817637007 877928782 371264414 286570876 362264303 805727484 796810281 727582115 607553391 233605395 508726606 549347734 846192906 141265900 980974083 582116676 473427520 125010702 440574842 636704019 699085985 615697571 562923609 649303254 625215903 57171718 254364179 594231422 608830039 59620711 776432624 974812178 235425011 355358195 570735619 208726392 784197920 334406144 843117584 628253845 970033530 39736146 506684327 122031397 261869427 473881440 559295067 271261121 147159670 789676888 16802511 120780561 554943412 968111488 327288846 800756976 565700641 636737426 150676745 198371503 97890125 137726789 226628592 608602017 906879024 826253867 730003605 899894129 727616575 89042536 957184670 750885003 635111543 438332709 522243059 946570323 994543526 478434027 702879373 567767152 172967010 714279409 608799359 494214209 21613550 504531248 501339850 525049938 598475988 52367972 261199649 840540144 525473314 18301176 865511329 280737186 197506774 566802662 32792948 437140656 679443165 38770357 663109523 738110924 872302689 731359996 348355591 47944574 710557928 924708958 899898425 921761133 962558705 843615332 581926517 823119322 501996548 942420039 611000177 562857729 920138455 8327900 99027331 539877966 263145247 971573142 552905367 292185579 60815574 426739891 965089012 592460955 676253871 447450038 928157319 639039709 804608268 770752314 985546143 882688548 929574420 283052930 406494135 29204020 950613560 946748279 142969060 887188246 922365974 700635551 559937957 592915123 55197767 29768553 163078341 8853032 498229256 484567324 183054936 355599571 599740596 765602874 331331261 787666025 794676968 26166720 618809705 408782989 997344399 580941511 362847683 643238707 85467773 175367624 554119068 210656706 620811827 885097612 675535938 164584090 851249916 902412187 278114442 14881021 323324119 25319672 97810578 568908562 595651486 544303900 544435015 660097667 226730236 458315178 862630082 609328775 619194565 926771595 689338805 773705802 560875521 69321736 531960388 20734172 610016625 817843160 82170763 249647329 630521935 104108146 634800731 994116785 861241689 510556609 266345359 591673370 632362028 565238072 951118612 595740094 79684785 28612794 695070270 599224315 735057173 200041564 329404359 76213472 2287477 269858777 765524982 148154427 239143568 578378163 794488122 527329063 24939080 823453502 802983774 690103089 548221527 612672410 839490200 450327523 782127278 780349657 91556125 688077647 472312597 587944521 963647242 129313274 831455034 980961906 567676676 977985623 695296218 506833712 732055541 137642949 821910174 969502132 421356928 41337894 191624355 990819227 361570540 271785500 382989436 976422921 139283380 44905104 284252928 770167006 846928215 324371248 597211222 284913543 81646390 943735240 628240165 689338898 351233839 166643149 409168209 815313142 237136355 783518973 424643992 695426661 985302895 709525761 891724964 229544003 601502718 120112102 294761368 679079617 992126553 513021754 496934556 925337064 898640928 135442472 633196248 659806775 644125069 743562615 329146263 232656291 682446754 862319278 12099344 518893128 893143016 973793225 960602975 265256413 956850793 91121539 806693629 987482662 61036927 852818313 811733732 868614697 92051398 285417502 29263062 139679021 442612901 779033831 136951015 931876610 339799612 795122400 604444376 979253414 222581664 508861809 357373886 983867285 664672708 574620641 347229036 51143663 159734827 925318880 469144990 572659309 475551884 997632126 379187111 586672481 537399656 576084981 592435128 849009175 9032237 809352448 875163012 181803250 397549645 589109890 153909174 716909136 692526703 725628800 962676346 248359488 555548013 730933747 611027061 958220075 597651722 89322971 472388456 860293873 47853083 286412979 455007566 618621975 810265238 391860937 938013278 534762894 108887711 462126806 145564573 31258189 347569740 78703216 538948775 274559233 239650795 782962050 873385651 310205673 975980503 482622141 667181369 137170100 444771463 548687716 645851539 996377511 508859488 218444470 200707978 184984565 800994165 165973467 602550882 491967680 145605700 450000279 569334238 45556970 804522938 766068247 807280417 908756745 581166076 38850665 9094083 716587916 617013831 789628638 397906771 121559552 845684968 574580805 112805053 50063018 52702508 300728616 712785974 969975300 783201198 912410709 387006244 639702466 85833555 683677262 901182884 478867909 884417191 354783024 353092023 68938796 311501375 594353121 344900538 565809107 419614364 824105265 118639956 870926736 879365146 781308188 832354358 421069649 428197943 202805250 161202248 448326126 38021620 159367205 682505966 79668684 282182523 684629622 254127655 171833332 210391722 128684653 990031038 182590648 12894215 367400404 131588392 872050935 417579203 883557067 820321699 457912704 386978771 563223696 879426364 244027296 575238919 385229428 989339024 186658501 190102949 811143282 162662946 291373945 631041772 967947339 971633069 894243388 407676280 959733469 293624561 789550951 268085765 773741536 325213802 938259956 949889309 273365403 147974594 392117153 592360412 199776749 783496247 361205491 160312438 965166524 341750369 732156629 244649502 963026131 495310756 314769268 555340839 528950344 945082363 858772529 539825360 132212735 719889943 492688119 563429905 937702911 710590116 170190256 269436363 355921230 821517585 895855049 857656530 538492649 583832552 987308753 73125428 409263727 146883890 221716893 842118557 392196967 524790279 23221025 545506648 276720253 964861501 915697173 407789107 379653771 773057284 876925141 271141871 40516733 944796990 432150172 129429643 979849118 206728780 237272613 215942809 447538481 235414421 586428209 434453079 377196883 122073728 78735489 604322454 214503274 46569243 652332416 754154811 157108743 56012836 649361785 137278694 196594089 870531706 934511835 880745171 701212657 737249662 315139170 151835101 20525403 378008114 362287413 698284205 392526151 313796733 49761761 977965331 504348862 12803080 327028891 589537555 57196450 233833212 802098591 213246351 137932190 753422454 210865810 418467900 661039489 385902064 645099376 203104537 895400173 531259517 599061041 935522920 998579537 173667735 700687915 146473654 898013837 241606654 824555077 173843127 149714780 752327039 521966082 415585485 106663133 660045523 133805856 402844733 155223056 156362609 777019160 964828692 164141615 829282412 47694420 289628291 812394757 740652338 643208738 40666802 353075730 33751239 850837469 639720536 59836100 876501562 586590135 984413875 568810203 15057663 825339771 385682568 474842858 529111201 51908838 848844130 21558067 390082333 506471246 597214609 749373510 530771815 665592203 73110583 288375678 390965647 805605861 223078036 796083572 536030095 781120386 622409652 618706695 21897994 470529114 804010334 555476726 229347705 87585563 34106155 342253633 728321117 956029586 567344239 309882079 246967260 8393545 550443619 866328136 424618449 153833274 959351980 495973771 327120118 429843411 268765670 253337341 853923899 466210905 52285096 938063256 582603732 715790540 398039287 402776267 621933745 859699530 432329659 318444381 81742459 888369173 121644976 80068918 757262641 767187902 698528484 699266109 928862964 358868791 483550218 850969878 682225580 583069390 785247176 183648844 116198602 159862546 282254932 217538776 779895043 877541459 467758153 936808801 448613731 137898666 999003223 889093860 600026421 177619625 295320775 402912826 475008293 207942964 813994255 366962433 674983029 183432071 178323542 820629556 56764054 848422645 476522217 466142884 942579210 799239129 516328346 70850023 13240894 395375511 833770447 70971160 596514014 667258573 743476052 264781568 166984921 648391904 450447619 336976496 564639893 143243069 89718573 629413584 252933099 235723281 228027390 919915395 526116129 784269209 431062003 263268003 120129784 497774983 695040448 575454065 684872193 604394009 338706590 749013050 228974316 964291081 881644183 960218962 358099195 227473762 821329478 570464065 84738060 149795499 390294406 491364936 725436043 437842198 797699635 435450405 730746374 30469928 152510498 219955002 67473316 387341834 236051492 700959790 549787903 492793026 937209370 888940902 521752759 34838853 923330065 195968457 247137313 648209996 523261893 547683873 628472408 582581927 65807065 448374490 525006092 393964165 921037654 139559090 862659623 448661856 650721811 168713603 432563698 58549039 173795904 772839152 560940581 838758321 187496413 118041294 540938499 944498620 744337774 967750468 99495631 861474407 775396718 733804114 659749674 359658168 835373883 64284050 54584881 749749018 52164377 849785776 928929901 17357182 436123212 48126762 368970380 99128740 17178520 653387599 998133902 96957066 524984634 816493587 210950560 808462207 730716656 828917150 559042066 728695986 187188770 123723193 381765837 935963922 72826890 838391921 647347244 303987186 522538903 628860464 680732826 517106627 484495106 73331152 692733174 235633832 596232954 359237169 599480113 775430546 27492480 596059831 819145909 132794953 477631963 469956137 235812629 456417421 892377930 369713112 699347328 182673721 870454833 489686610 178079012 7362630 543742491 431224105 736205571 284681526 25326867 14093906 823092967 79955118 363948506 470240485 372085775 348148696 647690575 257734990 615507583 983163122 678025354 130310764 338777805 861369251 250989706 316147546 376552382 561169568 690684205 771443126 39322171 161447515 314610798 841412486 662812874 513103437 462531240 587027528 842509866 49533363 924468723 140949490 453494832 166193153 475550555 514939541 999840601 415155682 850259511 857767803 213257742 780419641 506181896 547530613 316237999 804771274 454270726 589918682 699062449 821266343 149102841 631704834 913217085 471793115 19280842 242013686 11906167 944619769 23268681 690499345 493085186 177337817 263338158 587782934 17641672 240428858 142719115 454041934 846377975 563462753 994875174 687116133 925498756 64913773 271993490 518928823 537367496 627144663 25355194 993926072 710892815 917816261 560166729 627075495 134611342 291433407 494184122 954562120 432826733 774833871 995136979 68180479 158160968 515973293 640577417 463131888 149733601 587808774 59092062 377913026 731999301 199484120 893235937 475187765 191381342 793795097 70504782 413275517 905045285 608144283 992833487 391819572 163935732 444095796 333225616 842658077 28478852 729071195 99735042 726241262 672417710 812191516 282924673 286726503 187765354 92737504 949637402 990198563 594247816 236036 894841299 885512925 467667659 976650093 772797425 481826251 469596512 337677236 536216525 273779925 538333432 616229901 263521703 198174949 728905623 757812875 253731629 264700485 294932053 773801233 372833358 758236634 316881648 63346931 39729905 287809858 712762434 820091060 601557945 615786170 802490706 697245147 441379730 934730955 758506928 869023023 908989462 451700993 421941842 774137237 505377309 516974498 512428933 401508141 884710856 690980262 113369513 248240278 759920333 521018192 724441170 812654143 489171267 6186696 853003343 611570322 718950221 950221115 145427100 446028352 871899761 469747800 793128524 486941053 600437027 7135445 41775928 453292129 641159162 787852276 129540491 477890001 132228851 758860324 156511200 399877186 56540077 5666692 401130082 875440412 338405410 860455162 818567032 188189829 613260605 816636474 582574669 393779694 543712465 389421247 206751196 607432127 633438742 225363993 594661795 380754730 894143011 408672669 502662434 268663996 712993367 518149932 99605710 172322190 778090757 479811879 300724913 718565433 829887517 947815913 353479582 770641316 697200685 788135676 550082780 260544302 576897894 3692809 436002153 495637499 103604966 644611331 654508054 183988592 527427704 840904993 224758945 548560931 332245705 525299087 950375177 401026768 523207694 31160231 865109621 671885466 836109100 51033932 695416994 460797956 692032594 757193064 778426136 705584907 314153645 356870030 606398322 40345160 497038743 907909592 810812631 509926300 39277051 99305537 661828668 1064950 942635762 779005980 454748000 688596937 733281433 969204085 763317290 9963239 888251737 176554682 372274766 264651788 720226327 540756975 880187541 865059252 540859181 837422574 5276840 358427416 564272307 87778280 797191428 311954609 673249128 844631182 517070067 310998885 192621320 775660323 137560218 18336137 644338089 224063770 987677286 208169359 550723039 768351385 895141492 533433808 749785830 404321181 408166052 720237505 17878330 179311633 258314413 898988408 415615248 10760754 831277877 321357190 663196501 607042086 450538705 235861305 638405284 47773128 593913832 802724896 124524529 62285749 390394978 544805196 680084919 896267418 631119131 929170756 323266027 625758995 619405251 455074028 56479054 773115408 315256523 758720640 979826420 665054207 973219201 85121294 739169212 924064755 46194279 613601371 971489302 420161538 579061834 28602633 458919923 825043350 720681473 78958195 650709993 710049093 339883792 467373877 808296915 860427025 28698050 288527370 848955894 213719274 915776875 971200105 598280963 904035383 328335132 566297573 405074029 195892400 316613903 508797746 351959091 174957712 759209445 820515897 584526696 119718460 961708973 563362290 931701464 916809496 741089066 122379205 806745490 557473844 984895857 193534526 425447524 428621174 752450740 424732967 315647525 233066111 975509565 712844419 2081780 639915717 738998267 20520456 366562469 988366599 740869357 239729168 27373683 878120045 827748085 238344006 355798165 297507656 143935065 798135458 737515376 698588803 746122611 245901308 362964405 340632930 214294524 227510284 305347862 768916473 851595282 20581726 823264644 659339085 462491978 218078562 498925398 969089627 929825300 66835200 879625943 19205300 734256307 848929548 15510324 828795087 17947651 220711108 326491443 18038039 568664882 785893348 47222889 570166263 262069163 760327075 654597310 542496574 161287040 524825552 367856539 762426994 226085736 892418022 723336121 174348669 995167714 107025283 333777008 555018429 751278492 877904091 906924674 629327060 107006049 934921731 205125668 425109398 403626347 620164799 448201944 701314260 785800591 190119630 759370056 368775122 440553291 178951312 860908483 666243954 677191240 957895219 589170672 106709938 103449295 621354973 308183575 500917171 346039450 575125269 369266361 653465453 817740695 930689121 76687609 11568114 799838225 238050361 838279327 654464419 104056465 86709634 83339265 952589570 153977423 860062923 811786709 218786925 439851183 905104364 174965653 623740737 944980213 381916383 338425607 564143221 734350715 776195681 53886374 106195147 934043746 928427816 333357421 19817052 719857999 574684037 122148978 291023570 657730074 797321728 440881453 865047817 289574270 655398012 823169226 975947030 761715241 716092226 821144160 583057335 905948982 24654149 961133872 996059735 882777561 402434587 55896473 15516534 995272256 298800022 985190040 660129184 240062593 790474783 749484373 461502498 656369351 141338458 731325173 925879084 227443582 136740455 686193624 478078108 114463218 912529281 848127369 433675582 385205094 669507979 338850128 919239060 578395955 433822511 48863892 753210106 508250901 242627176 319591599 26334639 521015809 26634480 851986388 546256703 818747949 884317733 261884299 31373329 737683865 466231884 821263793 242684982 303434595 483227957 529038901 494588323 301072756 383507591 49695168 794298643 474086449 903001367 659957568 256108292 648384991 828070229 707797497 527723628 849899092 979504573 748183650 743111758 26353880 557295068 434303006 273852083 971442304 336186502 935813022 255276163 25345471 427559324 268502867 557753464 1534052 872206997 801393255 636270768 839654315 627205008 989860631 917459681 238442793 472142580 663689722 101434888 35790055 909576824 187999387 314846719 983643552 142891498 614459239 380573586 879939463 693490517 980244710 76398105 871892301 218104928 165424293 853375863 770051623 303534520 364390287 449990290 160459544 310503134 793808221 132355063 462973801 891962591 862270982 572795680 26398872 118560977 518694083 915447438 157518329 391633881 338482277 726242411 68734160 678259955 378198289 916607646 451923657 975764435 888709151 414402169 786044667 697754731 333671305 563810039 61454340 298506574 656756460 844259989 502304856 138203416 91725583 516941889 67273784 432800598 851685630 55104877 244172977 763867481 308038260 716750894 65414269 514034928 581363677 459378721 695337379 324838330 827375778 824014037 76992129 222203723 345597305 725050335 873705133 64854093 84383830 442073594 632918349 514865050 456276952 274307352 526776578 56707445 380983411 25325718 936789701 901809022 561170811 646116460 905360379 279476503 659444245 6696104 332018 753403492 594296740 324097549 931698551 978668329 170212024 780968182 311404444 675051538 397571255 23656244 576463318 579788568 772848089 905060652 960058599 673458866 383327663 192677502 169425919 39957071 593680414 177668414 754569781 105926435 381622641 742414922 311182592 872883671 506377663 315880656 288435761 736820245 492808952 155181738 951859289 78147182 264009500 196457317 386318552 396120974 901625730 603725390 505660460 674617646 476032085 326441178 159258645 605988002 377855992 749820077 897280906 993036409 531287139 859290927 98673887 31707343 508366611 386196275 895370273 159406239 817852799 883378957 199223523 236990251 315969677 714571964 523186601 835527611 599920626 247542540 61957536 800452516 69323974 73636751 17481984 362150158 937074726 867676242 569167482 478131990 431009638 787095030 997321057 178437529 252791188 866818922 959368977 375054407 229965398 839037321 352884357 514958057 317689114 567804577 851305541 440986076 415029362 67695467 941589387 954421034 607318561 549676122 333610599 690265648 743951094 582557028 633490701 123586030 177921251 866095221 434938974 869211882 449585330 128616692 465915750 961528421 297705717 580296276 877298965 150818507 893928106 971020699 67880107 111812663 845465638 448313769 257407979 460895880 509315349 283476298 17708729 687950425 775562304 808186418 897630713 39964544 284079962 244322483 621495445 88437894 577091594 371500308 319942778 986157566 924432222 257892559 397610436 511289570 985327425 615893635 691224615 354281888 705377533 108780233 352786431 646174150 625258276 272958632 968255407 140041371 376893876 585523948 928620767 208916942 892813007 177888758 423339164 871394255 989020337 86928006 650070800 374159509 204531092 709510154 472784164 398274699 560201118 345138696 957260686 119580784 189934393 62818662 413168175 985332554 615866204 845743643 280702700 454238565 949987888 842707830 775551718 282737199 924168893 983572909 811028512 60524023 909509564 422867447 977968850 88362337 607211264 331923060 29805269 508757750 666225024 738060767 866508443 990229297 982528560 93053566 51625661 35623909 490042768 836675247 731738368 543909599 68228263 253868408 623723842 470370051 447261466 788409659 82200000 571338094 420044813 501385071 447725228 384315225 172380608 687157367 420054725 998044224 250160611 573848125 875988949 972890482 709187866 369180033 849512877 80561333 712250342 392487125 139535448 948400982 726386693 213294069 507815981 137407625 672457650 296433125 885291412 491159206 207635817 40320376 628789717 563574340 331395159 877125554 114786125 189894683 559152904 549129741 550693235 797275344 979581190 878429379 212206083 321133994 4960254 76531724 812209880 10746952 214519411 632999107 111668873 673979842 990430484 345165957 519899281 194194809 655921644 528423767 56515825 542887210 959651565 551392105 833609850 312563376 569165565 255279835 498368255 248328333 671656347 615658414 589569603 981589856 47756900 88753605 444753269 598564069 444571337 502926238 688173252 698984465 821954132 851033020 255854821 724181598 3764106 692972007 644275736 916169528 719638495 221980878 888926570 48676551 492594390 426348513 723937567 689033083 717743224 466336901 250936335 455982661 451637396 863637001 898412350 647537333 800183958 371909206 592420945 664085640 36926576 175793104 617952222 863893752 283955705 772283222 230815990 408472820 291231623 221321121 917097993 146717492 469380276 847904060 700883135 319279361 982770317 174607745 618580944 351610073 736019719 390945241 198625128 827914427 723667199 335178253 360652082 877142840 297323274 507701738 104691299 250903017 572033889 8510528 580282550 386313891 862784222 902456113 481072259 245079496 661307723 460471745 157865200 63909248 615980291 797552212 62346886 15229539 485267006 99733535 258156763 586498345 670268886 770046543 806398153 9213735 371635921 8934542 190085100 619614095 676816886 636134901 255177909 834919162 939828554 346259507 179407880 617029117 672161221 52701410 461147184 54116864 418533288 539206437 821362819 894733636 585625727 466574500 938755497 707090625 589124815 256775650 927118404 682578572 13954286 498064084 409273599 258441339 668661405 269670361 764235611 826043973 290789290 789637454 740675434 420937858 253270671 347747398 308704707 270241570 578805777 657129589 199502352 829067361 480492381 689517720 978091248 808672838 129159852 995344495 736954786 599886106 397239049 297959528 731370377 65442356 918981639 15782033 595834946 632366198 678738870 319949494 726544707 474632445 101149956 52835045 518647227 988503278 737533757 62823330 684653824 650842940 849867827 457424499 149145910 143942584 803437011 205595940 37316892 831648326 202429588 500918462 659210288 773543009 235625257 334999688 867950955 455770087 584988271 957923122 884370173 513142453 465646396 580201380 481549282 157903184 365452871 97951643 444536878 481280807 294195536 580726542 59906122 345958770 837552698 335673425 873508501 758827331 666103468 104918444 955816441 577888667 162902117 1605991 709942632 743418621 129433826 788180485 636759866 322458469 837809387 418635057 611452603 438597522 935420351 175352499 872990371 57225412 849825541 861451213 626556236 779897452 85110939 693577905 723725571 731804473 243628708 403600377 183915512 429559673 776194751 44146370 712806403 789417987 519394869 927514333 475094063 277575414 250277227 228356119 755097108 15945877 573820002 45655511 8840726 583141600 996172653 153558790 811477805 504547295 672811244 463987412 841473173 272246084 729728685 963459353 741883548 22385487 184614782 887642347 494354226 261846579 232620111 144999278 886388999 114711144 377073867 232143590 183961740 272902837 260454495 764603183 678920597 553009998 65658872 79479689 721891520 486573619 566776260 504360781 649860870 565784960 257583869 931680013 212176318 420107769 463269377 341182843 199905525 447372709 157922449 572061128 802400979 887887901 171897233 761896057 1039569 300412606 629811393 122785029 888252168 719664682 492961643 542056009 368504299 587292129 194441236 572603658 106275845 337866936 76677075 368339602 461651455 828283615 753323356 287855927 713493166 50288147 442114779 539787410 10627147 996703921 905555000 455884645 444942538 702004977 541458177 40204887 931462507 847772547 785957749 973985142 368210176 432312647 587393682 937782780 484804064 824526782 61672839 706889560 282781094 421913862 201832471 431063486 895312297 962865318 65313903 450341726 926546008 244168280 527090887 535592797 164533246 569442227 661707624 635961301 756311162 177462820 715479530 906824388 835173150 132071334 481317399 281509704 600401846 873698676 41495701 798532489 928576447 141115420 679082448 552914510 214078235 404613707 737154282 938329722 749062529 512164082 861753915 437993208 699250930 607223202 946172606 330205190 543313254 132853732 834074308 743586347 201319845 589568574 83155107 657991541 557401184 193965700 511755759 164493022 955189778 584366329 720013954 821771730 622494994 502710923 287842746 716523105 529003053 259130649 228377602 871884199 593277727 353358124 944305362 393982894 660632879 171973650 754197963 787759507 593997634 224656513 476541358 525151874 69211346 205701707 246520258 992242677 474354987 192261948 651105235 283983005 388221046 459297338 179855153 687193792 577717891 619059822 716328470 616679124 542763845 656847849 923933249 366873460 979919449 696175058 72643615 932538889 509386481 110779412 443056679 221307847 815405981 930436520 969926834 653339807 641094270 734335613 352540449 561434856 445160972 562023669 93929584 294349035 507709833 939606463 523607421 956903084 142823139 297087655 288625987 504516435 341070556 531882931 187314409 64142539 766577505 714024359 416769753 139104633 746586715 725389541 783940460 695563047 651173394 51965840 552166255 945997829 758798282 862964939 226906954 542959589 378830946 788611672 275919095 736227427 340127628 517616375 480373876 917408723 294306101 318332216 148037022 778549525 763948582 376457150 896156780 895568146 827126978 447526340 571818007 847636033 770000770 156981674 300222257 833102802 607891956 866891356 236608060 753652458 929653069 184714206 324871291 631248828 934805896 852456587 848934470 425836661 297374395 999521424 436235512 52515660 836457438 65040880 271935123 803265561 322433804 223141826 92647936 843318752 773877333 207518173 726568281 665115219 771019553 192429651 482372566 515045955 255101499 556163111 56492064 536641176 462482847 164851811 363031844 263689135 192646747 482277930 896319925 442865737 127229755 614146497 51594968 985886272 332826529 811093478 248422322 106165146 302848187 540062473 137104093 643049431 156833215 864194592 639584067 839903723 45008091 401636913 921928260 282599820 390184658 95431824 930276095 89558417 131747554 851457034 123237170 661453239 181013747 829363673 639321194 296207000 452640738 260370437 305882795 690521441 227707354 178297800 161337684 263034743 160404826 562887555 834043764 182881153 441147877 73170323 549851982 710500564 649556268 412052435 809023232 918129576 254149029 553237913 454474324 8044723 952667313 458956248 570407042 683378231 549572707 899197240 411544191 472456303 476322945 122130865 510752509 114717973 169308351 273830450 66329382 482106218 306900506 461621744 596036588 239364730 896315769 81311440 805395746 842921509 200756378 334156318 802988467 443116437 295910699 929907130 322567894 379424115 864307997 819509884 40559264 137132651 785217772 4404313 91781949 623656900 418135831 941674042 413026078 916856518 657421514 569267079 715679656 5725050 623544055 2372199 863035443 574202659 435493700 985809769 708121171 727675176 500439772 152364280 724903723 12607289 429999363 772127324 836410162 660203065 190681072 171513489 435523608 838623270 315192799 989107444 664187965 897588001 608683830 580707410 480080038 306153882 11763973 411329128 686060941 719547728 79386767 355376095 641136644 682867931 713572296 594888486 817386543 737441788 87545899 959019401 752508 628720417 980153761 499922812 607423266 255680566 803426146 751493344 625185662 827522359 673567771 219219133 663320596 796083319 706109782 413388475 67136746 875773440 357460944 414045900 649677658 391597168 155536203 906019860 337357329 170801323 574273328 961434041 448956922 124607626 174081467 71378800 74611707 246560110 594615475 845358232 956683402 742038146 445783390 43360784 842626408 665054827 967052367 310838636 127018572 605215773 299831911 257786395 346243580 920162643 239036991 405717085 837429434 623739868 378445664 638833105 643054274 717559582 260554992 956433116 725458397 216006376 183119143 139475991 434912396 419646212 313479074 913524241 83706947 770512750 184034050 475812719 392508631 561105665 527208515 19916880 747037853 681067630 180003035 515677394 841668380 174935384 450710043 963842309 967693948 827735208 725584995 571721364 972844139 704987387 361932773 132817111 78413740 805963807 996056383 345787186 695889375 129940892 413027761 474652178 293795156 527322212 927138675 283399527 402334195 561420895 294409781 65424754 183167801 693802185 453219398 778195806 41306489 5231166 185464342 90956516 972726293 743180574 943769564 795690765 479177502 128237906 684603740 71733976 953707791 586356406 354343523 245801438 185278023 928398678 904371240 345309334 608429653 852166721 529385012 726951460 41517869 724868236 859428921 828655509 128979742 216637758 922668082 334475798 581363452 82816815 194995195 752601851 470781334 520290109 638952892 870998874 826130799 657831195 332524473 143115151 466604577 843833545 87810198 211149728 840723068 836194823 581576792 806254664 781995618 466172378 809604417 902614387 945841060 395378707 639047859 939968649 620546824 427790595 871983430 599401595 678088678 299684343 149454017 175342007 10884470 784710508 50758166 312641159 638040918 198686465 175925556 793248904 250490036 430037236 38954151 449619333 759343609 524972401 606160367 62402750 121150486 393126154 403718469 954809784 274608353 570449906 39081283 699896101 142462278 228440961 930858571 906219152 801251920 179408441 871946553 502830711 677475125 758620672 383625213 222776794 530665869 813534501 490650370 508996805 16934297 350165623 658220435 992269208 973764644 692467129 624538751 861292184 498020118 508080553 174167123 16256382 309475166 472390642 818959715 380314530 553291946 291293642 321711520 216452476 958023120 88241862 88308766 380219084 680611822 477132208 321188540 151210351 725596693 981884364 105866128 895564643 567919243 669356529 294156533 125576118 907364288 947494854 523697590 679402556 988111504 269943837 531689194 494592194 131516111 532696771 722771003 729335156 945977388 178454438 782188723 498732133 206072368 131514779 116298262 395059531 870642665 91487802 628270651 884728071 941751275 659402252 90862169 46380763 55472191 186462777 385516298 487137173 132687881 951520373 290693437 441287504 575537273 199350230 602101066 437934481 666817598 125240759 215470045 614680659 88255634 819682179 738126753 509581691 474386370 186858449 283511137 360304251 299893603 182988182 793139894 670443195 937482699 724267250 515909732 554707617 895007295 106469786 633658958 898143572 147721530 105394841 152347259 699553061 311421737 722097305 128880487 902128792 909820768 669865195 392341543 445467676 967268357 148784892 8944450 392111254 677568715 734469151 780459902 777550971 92738382 452445399 602604329 80935151 109440078 28925493 645828726 199503820 131714026 117359480 93828482 618860887 484825699 719744068 163222433 104087926 607829654 280531462 244069739 135554737 524236351 85381507 417790823 831116821 551307477 967432715 631334946 119939252 847572524 183068085 746665998 501562031 335951063 384573095 539769157 672528597 277762146 547401713 174319094 850701918 238763862 17433829 284061216 682582805 264112217 573740278 683246310 231630420 669406904 323613925 109923253 177324627 677763003 147810869 250464561 801561727 114043119 62101527 132371205 547831065 15658446 592997974 705471424 999518823 631284218 871490206 941532756 699827233 7338647 94724 19001927 637787474 384043623 316330823 970355869 900788772 304682931 225755912 616816772 360501476 275773146 979658026 897365516 752592095 350778505 637559608 812509866 202339355 811139559 830464726 409500232 368465766 62766353 411087964 54206098 928678960 552876404 931632719 498035694 285348210 875476494 846161550 559490902 206114305 364401560 565194905 77717468 82860739 345734905 503683068 718353796 499548422 206713567 462020269 673251438 979728359 473882862 906108326 411979134 665719837 999739895 2590755 947847956 638046824 681419366 388022810 286659355 781684008 220762606 332402893 49496625 316741895 632454773 352572134 807439168 697200278 408634506 69003922 131906992 209621747 391301009 372532753 451097685 636791526 522601787 847144142 71334441 666966623 668275163 314884389 296114682 720585759 425916316 981301397 571665544 761338217 462762827 752370229 74721557 612630997 740976915 551186929 181055954 992145874 592884677 46322330 925844884 570665721 580281261 756700821 8890945 878288882 724291156 294377619 460920438 465922192 507832561 112326621 160474879 853396284 396931704 393937044 23929104 669776449 551055205 958784467 168324319 334293076 781358392 56461026 637618046 276686561 605973957 947220856 159847080 704490564 472791381 565358429 647918370 381547260 368542510 85863192 706680825 952037405 513769465 784867680 113489153 727181462 391960595 498165857 867548317 524117658 924393071 636101552 98338522 815867372 631495284 933139067 111268085 38867456 60150538 496501766 594501177 385278677 250306518 197174529 658542546 716964827 193082525 115324932 438966505 953669634 129233543 324966604 357416760 594224337 147901711 161808754 339621862 967107075 702074186 6745536 7692956 453795494 56477579 905406619 123320686 512494541 904603981 735373244 775065254 971593969 223710392 561500160 295382216 732425492 487968127 359588084 62155488 50646595 841081542 563731454 772242819 467013656 716646382 303197448 75540780 598317838 468154993 730737138 51850135 338537428 26741700 971738584 198139489 858858395 286816729 929917900 62732324 568299533 496026757 480154073 981914997 121297335 990474535 327075716 178573611 115969822 552600069 839115791 103904730 178491472 214394519 631499827 464658480 254582414 890078676 559198767 45728372 61774842 311065576 432988163 621446834 375794917 263396359 835539370 438358341 361048748 695316167 986683253 70292506 647586471 708925700 435235851 999673588 857002157 993535818 783870399 737961118 757444611 606742381 869918292 709180728 535261967 802346288 446516551 347404313 121650479 508483120 643634417 599585367 361270011 714682744 331286793 291289961 115035763 261335116 762650506 815261166 656771262 841574200 978468236 707380167 958486204 36780191 131846121 529623817 158931721 596883030 526659326 387012464 617263564 319697240 138007295 106650917 310032765 499468567 449809661 701466 533644924 515188353 667088922 732731127 181305415 80567152 240707242 627441576 905745057 279023055 232580071 12749080 321228467 823837232 297953714 673824617 138786106 18906723 818603987 880778116 1825051 640408748 212216231 408667189 55923158 840502378 115422319 157822801 222854593 749271434 516752638 310478997 126114534 511311264 327564057 347547776 929046612 456622467 639964379 912339704 60008469 504253163 112472799 179212898 945330568 447303668 66817909 863684970 231669744 486210563 889640077 226052544 986327005 873074918 391009718 413989768 133634651 193597196 426750472 867070772 641649935 278570732 345157746 38729046 419588238 689395525 127139240 39948685 412966047 605167752 533451377 275346907 921151636 538619916 572318140 542329217 22694351 872973291 492987623 226458029 108483996 849805414 746376379 234126255 220109896 16073682 875777695 824025647 972651549 527997465 942747845 465049106 148212925 15579755 291619493 486705555 580205509 458552269 970392646 462193783 760115429 927790681 505948256 897554638 13585484 995007865 182090056 44364061 563794364 715553197 987116787 117992168 207979292 31657159 324398930 192838984 185086125 151739288 682107157 367217355 775122592 569424623 56873796 825455594 676962422 548824262 812445294 882215170 397071469 743408419 444195709 345312298 666725786 926265954 609156230 710583035 446519349 865729731 305667922 118271963 46676049 181767167 540508719 594703760 709183689 79802927 236863438 359414971 793859729 79881291 917680314 125822830 620231604 415049906 466141029 922320529 734236242 739256302 992031018 67341096 569334866 789961924 735483094 144642168 223657656 646595838 875544437 835641660 631160854 634969785 130313784 792700322 361938504 505384087 759597929 301551189 818642972 32175760 162103191 673401143 583590873 336850274 769390284 164898448 923529213 439010043 44461380 223039634 56430950 48121147 125868059 387241581 540156598 447220406 149145800 743129364 582117244 150057472 196387116 732455591 7553755 777752777 331033076 268084600 856687147 80846612 138380508 524792741 115367152 433225852 384299176 300650741 795226090 236750548 141193273 555317600 320090965 202389185 267855489 312243245 829979210 895071066 172388359 98318355 200412620 295385939 705833403 25589480 442777232 328539942 625656958 140912611 388195426 52433485 690361066 563503918 817652317 948286769 40100996 451912033 11254972 228195017 188696164 312914886 595456676 288693377 969204222 940586709 315277288 255432512 558338969 729877477 566586956 629676421 936680859 484461661 783846635 961313534 320335002 162074903 940596772 257163519 581443331 597349558 519020060 492657151 367073120 8040814 521576915 389217384 488854655 163259558 798059501 266854949 673163022 820737375 994199070 553526544 729065305 54981194 851569155 238856423 802925331 775914786 77576027 855446122 906888162 938173686 625434937 837501356 270731148 286518050 662769599 128887827 524318318 10533943 236934999 987536336 802765127 278554022 973475205 724666703 129039194 64192946 183280417 501440913 16210873 827092252 690252337 834787581 468337038 275495571 395236745 383890037 237913170 630040807 983809827 935315795 419849586 347663600 907948118 523967143 474797643 278507099 387683182 42930556 952856187 47368763 539166549 219354387 728842802 849260520 701161513 940689044 523579542 139142229 368939956 338331984 492783990 397965682 812230158 646304286 24501066 736236482 337795512 327963635 344846932 799368927 249244062 706313965 113176496 68033969 667441523 360005008 880335427 190027740 883273665 602361543 480747509 426908386 267436846 480632216 604515156 33323359 953150808 927235456 941193327 963386004 970804038 175255350 489174948 894712781 695131703 127266542 570958989 709310825 809092361 915508007 50597059 782255809 711010347 405437477 299947376 971835846 251877007 284405024 354566703 345185888 231343896 643743263 840070302 592441968 407090870 750691538 717836001 841359239 78489881 435395759 223879828 822561033 704543811 967662056 265022383 547170729 365349530 442772121 143921956 784578440 174659511 386699299 105430227 563233043 17942949 417484765 293380465 755740914 332151973 422558026 966655016 866353561 847004589 880114626 506692610 757887355 517649535 910887191 930834941 857130793 25118958 264727319 793331770 402021066 654678094 577539536 9381544 833891273 990778174 353536303 3841628 544216930 916825169 712754717 802980923 960867311 398833121 491920230 416032196 583029110 543889955 484338712 856664476 245724639 742035754 516098952 802166738 783868965 215429453 312113825 328394395 149466120 179834640 650151384 856348512 204642055 445194690 296440346 222443588 799638836 228862203 340108540 881924775 120433584 32718293 118556727 119620672 519021176 494623658 699268895 740301887 289657926 523229613 11105644 280395440 648620891 46881243 582166377 813775569 986397440 589406745 80950460 255411915 300049778 50083104 183165118 394345744 716005982 603519479 155087967 105350749 888715357 197272699 617619524 627524298 985157141 205653448 93725195 393816218 392133690 872766577 401421903 574966900 694053987 880495755 878821311 793910544 211590982 300347917 773833596 443269028 411713795 267907605 75561502 708270349 58568172 877543451 461882413 334269829 495631211 722283824 66629233 384647664 447876826 113373551 137997474 672434194 695607329 880304527 669018187 655193977 317447853 96346351 353207535 361555622 402283329 154150596 836695896 928380886 119982269 788341987 429938278 175352782 141653151 79125915 400454556 37595514 686584429 200713396 615992991 714795638 493657097 778041141 489412307 493513111 339654624 350466361 559948295 980359711 640486553 698335644 264425848 801959202 426962650 925583233 844292116 246515529 326142299 359575612 451254950 357214893 961348329 297520920 76050674 764625698 735762105 442495114 10690565 730623638 23930925 49472815 787651019 624752398 157653296 632965939 255802279 150229698 916426367 159962315 461354632 443164215 647714815 300790503 801220916 549917888 420692382 988651948 358047853 42234516 221243859 8788266 717065228 701502987 782561579 173867977 987397074 381907172 339234666 945743271 776218593 80285431 209677067 685498354 43722082 954429696 679858086 433975447 407676135 356440190 94498707 785133059 79450974 303943172 475160916 619617468 632071167 404357953 586550283 117502892 298116916 420891296 242608000 762006679 428247206 724266949 762861472 15240154 459357785 804234284 453399715 529110624 267923066 738760112 415602580 846778590 969922867 56696074 971731203 63671997 857714278 33955319 991126671 47227085 82903293 406366595 78021375 558797872 949243215 155466505 945110167 736895742 137297405 325435781 890825376 840260438 582376690 216922772 834347129 276036748 453035108 312498611 856054723 906050926 105298688 391538594 345858043 716529823 737680578 307652680 435304073 733720201 900651122 115494413 316930061 812020259 329429228 916505770 458788900 897789442 54849033 667733848 564744493 425978119 756213377 685338228 348161121 631327557 933547916 765173871 568091054 575991558 707945887 616988389 352577371 114551416 446461412 891880839 194879647 289645239 616475016 393742298 774719101 52836695 231906949 928169765 727210067 779871790 275807614 759035723 217280775 680189117 141568667 951475111 679142795 212407894 713259889 318868926 531119525 304705169 825018252 165233503 682845428 225915483 790254136 55877539 545654794 675387077 486316393 934744537 742529481 49212807 551497213 120972219 890939466 580297777 915074893 278194891 232648063 128453721 185056673 268846152 835607733 567112485 454016811 74701271 748486876 761620891 925930888 132169543 164777528 190972839 862542676 460620142 156078029 345967639 695310559 999926146 439485025 142587983 987344260 221210893 738735468 228174689 920281932 6151099 488172654 101972531 421901093 610676340 132051507 261481923 783400472 672818335 732396006 10057840 332671548 819050982 156687816 773750516 151351494 570224812 247737669 425834765 995121333 911806072 237453065 618336704 46725344 182308353 349457360 384289773 221611798 334565471 941173579 214121455 469214156 472739206 752909925 810513733 416987330 201879950 200636475 559202112 733064716 160238899 967838212 544568791 816218317 7572238 388902018 844981655 868086558 32944663 737639467 704448520 493940216 840034719 458807871 79762042 826608580 230939260 154299122 88622031 429648612 817710634 958444099 345047048 712587762 117724726 620674216 215563774 912677706 941272529 213146706 920628463 510995261 74659056 553982215 496280688 568876135 646581105 314556994 572495336 911350919 308770368 838899978 542394681 985891114 20870262 489494058 802932070 56891236 714742543 165697118 589392057 172888600 361957218 108904018 904472887 326894396 436710535 592181374 54849300 786254369 965304933 947017553 936408784 137492105 976391041 761428279 244786420 124712069 779791082 368385076 916012540 826797950 609166703 495481948 628043770 598354563 578031527 320226582 838149900 45765840 19020842 87742187 821608932 22608269 279801563 674040556 488856004 453575613 626724354 151485625 520007136 491389719 426386623 103259752 238748517 742777847 63324648 821580855 189815378 622116556 867348745 867752659 384735281 666979757 131960361 528588973 967523636 513148208 457687841 285196778 329552412 782212279 318648053 999718324 388217568 870388070 941341130 803359598 756461524 401139139 155329469 927343136 379704249 553789731 883031788 384316525 140969816 797326314 721818854 96089416 392962290 976990591 333961533 705552187 327965265 163914616 506364133 857642965 593716082 50262065 624797397 166083780 461422818 644855065 383383658 943760979 164967767 986760077 688050790 29368362 760965876 343714341 377124108 609189183 50740635 40231601 908763327 705692713 506644788 427655107 173406787 336105062 640151102 882410655 4140337 407415716 549115258 542176123 357542147 723264636 15243360 506325555 59801434 844868037 559123075 571847252 393043689 259892586 842332928 110889939 505570495 466157317 301014835 789343980 512679807 457250076 845972741 571870281 478235938 382472113 560473879 349113320 227428562 614714460 218851863 563869365 678678396 261308971 327296588 830635574 225810672 12346063 448969404 374042502 337104647 471234322 230010624 71513392 412933249 964209167 116734964 344064222 610819180 633314236 190111300 222899626 47754295 481815592 975519740 792455932 793059341 694501136 548881518 88073914 91188172 269749084 107175559 105384561 899552400 972294175 465246573 374705773 997424195 417865318 943137510 844503156 992745044 796647546 188384188 817682926 617724449 21447892 47860429 185527076 789289750 377302372 267485954 730659270 696190790 724437631 303467915 830730167 426603017 129378603 902874654 524639220 443408361 231969389 674074856 225971131 307117566 887324182 781963569 709494888 722329097 756804659 296018221 89397803 328894860 625588681 448893584 480223128 447851323 626267146 563353523 774737477 160200150 328145360 554873706 397084653 188978069 905385225 540304342 586138001 497834204 171471679 67915493 607044195 276247387 920984508 426322381 17117880 68992896 174733670 341495850 358552282 457557411 478200074 840385079 837286236 586399585 313701728 929717152 737187263 993600698 259132471 241017744 396838248 250324943 560289150 171683564 614892807 37291309 186005584 56700125 312905745 226632085 316599722 168592407 366475952 519714922 809994792 763634355 949479928 623749189 20403556 617759928 328905174 79489417 308709588 992702051 186892120 894204872 240500499 177566312 129620747 613694311 381695688 597434438 769131887 472597943 495386082 790132643 897613874 541589334 24232749 256004849 637956282 269438262 235886425 643984350 618939075 115071572 365344784 493973588 940759041 5946450 26880182 103994644 102527689 857321615 712473080 968482192 903531774 669369069 429655085 753349684 732736337 97874748 780472932 850182664 496097349 504309378 696315416 130751658 534370369 164102246 662266143 238567181 262624529 158653953 889588883 3636600 408813919 323266748 245850982 175016910 201257992 67878973 132105425 204320878 407342727 51029284 149077117 951020241 826435248 644086241 41930908 693906275 656003485 443088352 758929949 452114256 587811345 960712987 532703118 98897871 959266669 132522176 776954501 114086815 428028573 541508915 385504028 104113742 574946721 164589223 372980794 513892765 776807300 552124035 581851994 295584590 592666393 863824114 267211071 694149929 132895411 341656620 624415550 246077706 465477642 941260004 361905570 790011735 363377689 360578907 357977339 789725464 840319502 406036751 840091253 796622674 240253992 180501887 132638997 214492716 366374786 108703429 843009152 312632240 162136851 532352833 586416017 779930197 350310459 779128567 155498861 940017769 360802573 625130913 485003651 85804649 730131811 34281912 100756937 957745596 844237747 681599585 179300742 875828586 22393896 95421202 645434619 662860477 160214856 179758319 91069387 785904317 853141914 28342071 50055502 433500506 619097111 949929146 302106335 115953593 417687355 992520111 941007327 237191610 101758274 467384718 161381174 28708601 542747401 562787171 963933432 270909989 889834387 697745054 988991166 275210143 869896266 140954745 792448264 642489861 982810491 274667264 406909860 143179509 49085303 594320729 406030435 443019763 431745365 850824659 635255140 42950702 695124125 626239664 689865453 452337212 898534625 428643957 661918738 102609999 682183200 622013031 583717237 902442248 807522845 146215264 404933134 179940205 78390062 908640123 979469816 573043810 498882377 604048742 439338139 933768184 534043175 493539224 83885903 955471379 319423668 357453186 384100484 337193129 643064686 921387043 767197060 874800098 198448279 367423974 149915093 576331284 866547362 207272532 833019635 761738669 654183148 90561577 664244918 174847803 492164297 638595067 78924826 408679296 11259180 103796467 247762849 555890923 914909573 688671593 995488983 384581784 674467196 444752848 886702610 125631816 5690392 290978898 265325564 159744765 385860711 813463971 827676446 314988676 24112753 26976286 176936257 141966763 516074968 512200757 380389155 425507331 138507962 895023961 977497148 586339377 478462129 784279246 802741095 480375784 153651543 50358759 680458392 995246546 740991332 28456681 102109824 201263370 446160562 376517700 161085010 144531164 456412439 939389019 884356655 886584621 439205130 503662755 57330422 406379043 646690440 44801308 751078217 524284221 287050939 198176420 323277186 746764679 674192256 89686992 821784528 63503001 967089029 803351475 375554604 407880855 988475067 7040153 18195028 887956560 924202490 914050779 792164766 922154797 240389500 613557665 522154036 381103319 281023228 36606750 917579474 896518664 487328165 948247448 578200916 546475791 38819745 64653559 449623983 213996123 842725234 207508983 761077056 257627468 741576198 151161686 675609625 672467977 300635118 15442804 250280845 72715734 932981146 614460667 382660333 445974148 248620221 292800263 191580504 345678420 862621179 345064862 35186933 503873712 674388136 386230079 271283547 141752302 804688085 161333077 320725843 568727666 712862986 696846663 891692227 100374457 823465477 626537900 808493818 938624003 416079480 819679716 25408664 218995555 108124108 326090572 52653232 663805363 214770101 294626280 19005521 454345071 858835866 731302561 747683841 234230970 358278244 308417590 793973360 809927189 800365188 53162589 268668665 953125456 450846825 593233457 739878733 836641378 362898431 658387609 672998819 221312553 15471423 194055434 113343686 653028262 979649167 501431083 30176400 790396484 116597865 196444387 618134168 404439757 928172486 830520367 376550887 422568571 77182259 867647085 853277077 476998889 167841904 580431108 531067846 615122366 778065997 229886187 561120728 884839202 86688558 785103106 761449598 764875430 409639735 807921135 817627580 826431856 224384536 368887750 115464744 662818122 713818653 490862695 228692353 213316692 895588184 647319255 211990512 578537663 359237131 792343997 525893895 376178384 616889964 372015325 611258405 156404838 801037799 427629057 812111218 857066848 425672891 946641098 548557259 789198171 92360761 875993648 534701683 130903165 924507299 285136103 209533928 451638878 341421358 643282883 885791100 448703938 481639572 458123528 771227135 34886947 612317115 71256513 287503353 675234069 947400136 818898073 299959767 959143220 797554731 763504266 246062211 799883280 33739993 12033689 154339189 573199007 671347299 619967977 689739871 746597929 66297306 389203708 197998578 614390492 783402765 649064282 31585832 573533316 201169308 882258964 713535358 300700483 255897593 248381561 56056565 800776820 245272186 344378042 983146707 67543260 907010044 718072964 544425625 308976929 800226289 260952676 497880781 955865764 167070691 689123927 97082141 836155737 93890920 38529709 395671577 817974474 570223350 858586745 719590206 593035316 20475187 677667772 704405917 945365558 1141627 380642573 482100642 780229527 496329948 401738651 889187099 903965944 233423178 191520912 512149861 852907552 620145269 255680105 471198908 476084681 6097030 749582035 431037691 587071296 814565590 192587371 364919501 914152595 383751132 610796380 368001645 833402714 18985738 934703598 117121396 204185302 677424533 653285858 372727091 631277027 588099568 706939502 864758794 251589277 845047904 301513519 451008675 688671724 736393391 457898244 866309419 216258758 845360856 213086286 765897493 676729481 560817762 132935287 471865028 641995920 853798390 815122646 112812965 432134949 364534644 513386954 211789513 10554802 553539756 338415432 620740607 315017535 796889603 443786914 918157858 316963629 932712396 42524253 56054169 498065651 545647799 624101218 205392746 737352706 302897122 644761941 313765113 220975664 909090642 315972521 835513894 655816598 707081433 623523887 97873399 988353333 504084926 924392640 544694610 619173949 285084448 889901309 280838595 52128243 961997611 244687555 320659336 159249625 111648090 949375241 433182245 913731175 205184732 290335265 682167669 838462514 343119829 501673097 791911356 800319054 898096531 180803616 587639951 206536919 982280741 523900758 501061290 270639446 564298836 255292313 322803326 806972206 744818606 133925919 185380893 790512067 201978454 591442268 315454920 81826898 995823183 445484171 673705017 643244978 852530109 356481233 237498739 367772483 557884370 859209447 586964667 597033761 10531112 867257379 384576477 112091723 826912462 538453086 809688510 450703609 681732756 376382966 455660219 774153302 185304132 693013551 914132032 162342437 5769640 127125997 603960496 51640416 423797665 471363336 287583150 844385147 59520792 494939625 425369640 851691812 739824737 188799724 756405715 709764483 909225379 928248098 123476539 231212037 121921554 411408638 270483656 858980664 719385807 473813839 755816150 261025875 6392746 133308127 168669016 730227076 314218389 185714170 126403703 485101956 427423362 643892642 400158885 951077500 235338665 331298380 451771785 510397594 945284333 535535379 636480258 710118303 746905694 802952981 440695080 7531379 995919224 590876265 778608135 73843670 976276843 660636345 633954416 325076177 929580201 987834625 428205051 28688557 648271275 554323236 799093992 25801836 422897062 175927804 301466033 417119745 387263111 13183704 326965827 775606396 202303041 790659582 317283532 687178772 190364675 558999258 669565840 841602014 755040414 526473807 407853695 235151814 909730841 290711143 711325563 7031648 351289423 68685581 19014284 829142447 829312521 609681653 893636114 475615564 571166343 329562704 210182111 8753020 218852276 675399659 896652615 616569842 244735583 488828720 824749910 916377584 351919686 744934431 589699929 836253275 527648207 155454659 987289858 41347366 190834318 577144150 230427647 567189030 774312132 189949580 32530019 568508518 341172831 841384410 818884833 374181303 286425071 684255581 730488441 51128055 68604340 278394659 250851624 658702486 314020947 895106244 82944571 389729116 467711194 645078334 561217170 436359159 29449985 509251342 968456140 221545097 974270305 916344238 482454816 687422380 121064264 335513151 302184540 672199764 891410640 197699797 783224785 804437894 98423274 901607494 850593836 426483889 527003518 881959247 801094789 296763547 110877580 349339860 884453071 398269529 598726033 216570212 170311771 304994255 554567682 102483427 731175573 348083655 117104947 852674749 998587972 871471578 936864877 675071234 776140947 662730901 103510459 761478734 442145671 553122832 617868236 616058864 647861170 675891642 679858853 698945464 711638629 859842048 90719410 694081142 132024228 45214826 669655787 82876447 687952214 257162197 559850273 706661107 754046809 242357099 306986093 410232041 352080754 428750155 799517678 479905574 909084092 291278824 590794398 383385957 652590922 957468457 104154660 829101255 22221310 885552217 357575520 406672068 292766599 220325928 709159444 844277375 912328922 561847695 849662499 455275142 404964244 43996657 15043970 48433505 960945862 746850414 459097260 746367509 282333764 660665728 212005241 415719543 963377329 110763618 824914378 680846639 206306561 700906279 590874651 220874240 936899665 650984101 766074055 297564149 270416219 109059850 880452203 861376487 34817465 629423443 373143477 548683541 659938547 903930776 682725325 678692022 922111382 660264475 599577053 570377809 66268605 809335532 33260024 867663182 541616480 546040357 727877046 24180971 146456497 314784733 981308863 913106947 608697132 210807787 379106960 347225603 271091458 730035616 381843218 616947090 348058427 7183941 29584949 326402740 632685876 577644708 1289300 658121344 118303703 677625512 809400246 10091489 567745549 72792014 294371708 269144576 575568617 363222734 449924512 428033083 391352803 493753363 522818389 608780678 136428426 909444770 215906037 374576496 658728977 792571813 260438246 363377405 220774524 725640326 374050614 177741157 666591307 193025240 639917254 352582457 903339570 983665274 452544960 136008810 573274811 649697012 871937232 637909547 291726009 553033009 437597063 128252116 195941257 157110294 275916465 824969165 608730053 580153791 406676236 166972968 76958695 136538175 128890981 435805034 527467775 174843270 121020370 925220959 618313326 16518691 972871870 318992863 922500004 884725722 520654727 849758872 667473422 498501872 385669681 944823200 629321030 520156965 499643050 180633212 131617362 80502955 567037446 79696176 797682709 137183603 253464965 854394478 963570371 448423145 654539624 647417299 669571547 449494913 168233047 163426820 246188827 318065525 483648081 643241696 809198400 163967892 959587198 254435172 592052008 946121162 47890396 347861960 733691627 403094998 469630571 197533477 297194273 735937701 772792569 554589904 955185836 979953240 147392326 613409064 387080799 702752095 393907566 997461250 877440485 423308871 299636728 674386514 886313480 188571804 483151939 480320142 531445659 358123751 737272393 751158713 511326658 165585720 709550103 821480902 378507662 428339301 522479461 377668414 893098353 716236154 175753860 490260588 502873941 44810848 249304892 45057055 773353759 679461550 862431608 397046476 567577407 403366454 299357699 316396962 126199205 484276119 829542069 784627411 579173131 607513140 673167745 823366900 257567812 885526168 19606334 737224981 534371616 47802355 39557228 574055040 506568751 295026904 802806088 352846053 565255584 454624529 361872071 410045054 545050144 961042943 14271324 602637198 6480077 85562882 851656546 693952649 778587952 331530205 804160021 585757109 266567668 614856510 98355485 558410789 242329408 605737285 791202265 63300853 296157273 980933604 683716487 360813562 336305622 96663197 949842176 511741337 818952292 680222344 179575044 455183656 81748239 653096840 718678728 973779339 362837495 701220314 888212777 649362375 649461899 739341143 668889661 777201979 700127965 507374902 493778989 487290749 224251695 557109238 213925093 540253705 544966526 340559305 995055011 320792221 665250857 222431626 583105041 707480662 890323928 73711552 425812097 253221754 791481131 662938551 140807674 739906252 428452435 41253194 493049309 232807294 949319171 21404270 299107765 34499268 358972601 769452746 822895750 945842922 458834146 639278994 462536981 401718117 570535679 332757153 575376168 603830826 327546784 109642525 556997182 486437716 248671693 139278060 803744979 761777974 956925455 239519355 511393188 306970272 755237453 129838686 510204913 957367808 993510666 1957183 667761629 442927306 674904669 824277342 292891731 780515017 639211927 684970731 792552054 811964798 775959848 347388329 259468894 955920518 706899174 255310984 406441164 457187492 763200613 863854024 124393937 52534560 867431883 125953581 488418088 543241979 299834157 534822055 891668865 80541954 6117052 925648154 48446739 989530475 598391866 295205642 887288405 687044156 406855744 493708616 437628330 294138149 278006934 581737265 257098935 991368005 677247461 578164157 845633548 109166399 981488302 661670214 524617471 336491334 350183904 547849783 223473534 414110966 507810213 778853056 833998025 345929998 313274685 106481039 495914469 384751787 146654117 839683254 210109268 677506228 154597741 655836217 676565730 643665623 999339373 931953023 764055533 984956850 619006709 523189823 797150749 403903180 234002472 992674124 396230982 712394737 396574097 946220103 500715048 833259067 760588828 699403265 566354759 712249253 216743605 228126906 806027181 880483073 415249863 526996965 627109344 248286134 794492545 451971013 656990634 982644870 41988051 305784748 45211058 954872329 331049167 787206126 43656815 309209534 117951616 174462440 568907316 847277238 853976487 910775257 627160018 340629779 977317057 580517631 12557860 441179880 190387274 881896200 173727243 298023902 416154333 328143362 85569479 231990585 477789644 542678343 838592835 290696758 97176996 362988499 82877614 378340099 116518368 318969825 685372016 261568728 478134964 22573436 766745157 61232365 32306425 426726947 719336407 297157809 533835533 578021351 209083698 544270425 834390415 143062845 700131908 534053228 91500204 246463595 369904517 64950618 822387793 829269019 320660771 833357470 636253105 18954169 495666236 803336948 739165851 665461035 17553750 227747096 62262272 446421930 624125389 615283082 848190893 838995284 109803282 894807264 846478864 476009000 282175924 369783674 971132879 8449726 951021229 942219706 686105019 750885546 546126878 30471571 695766294 293341823 623369501 935053465 160099763 120648452 263665676 543218521 796596404 771376475 483669972 65339581 148314153 738000856 824554695 729306989 244519175 740237998 124231897 635202634 614479877 998034458 89385544 695565340 572422084 903062716 723085771 432361335 951938946 161120354 542744947 677586667 971466344 507640986 750637960 885528600 926896582 576932520 634738774 107731933 937908534 331193236 944515355 101233312 825680512 279655523 302752403 491047094 229583422 170092090 665296033 957100760 553389869 747150247 170918311 580365061 61353869 834232391 998468051 386149078 37291805 86449958 840986164 270745287 904673757 349238154 736721615 1912508 800947583 367613707 362309160 846554656 19006925 205579016 254690284 324158720 179131144 838215644 297243119 360894880 495700429 162102896 892738334 29101782 317144651 699031972 3561962 278049106 124754089 345616527 605135708 740905038 242506952 920343446 155738214 292500707 107088384 241796024 53164899 540219958 238381384 221503925 557904361 204161561 77479948 766048464 210898554 966841504 181716012 116099742 638313520 762410615 416023092 380265192 911757021 638705148 653598593 304241777 344815985 495369471 561496901 110633140 153086348 447821667 731411847 908119709 134947370 725904475 69967275 882315483 430608181 399442113 764078871 561887969 862621870 922039553 155448897 185514253 997915849 920717254 34473526 845149900 363072043 37107344 636765312 881651041 768209603 325209722 433539350 894455389 935028788 85876540 291167370 579150360 499568352 342454315 825788557 781862593 781550902 651602399 68870892 384187530 554219606 224960629 42236776 507392887 550191596 433075054 242076084 865923647 310215556 393967145 73329078 341188777 601983375 617073419 343832039 631200562 312419628 38230559 487378814 970846822 15639683 674509415 455582049 850385908 701093553 630672009 976586705 771887880 442410685 825938150 987461778 796470686 408123626 337143348 821907440 971647887 466264182 771056154 934621989 33228230 777799954 480974612 444749378 929318690 704714198 350415104 523222244 206530775 295573612 421004485 456227459 629581018 794464399 705623278 926318349 746082480 818700841 711417244 527143422 397121321 188130747 61360142 891847435 470898898 101080668 631959777 724640503 49334287 34801978 517844121 571899306 692855266 842723725 80041008 442080456 906873158 472161367 419845927 411541418 466392326 162257394 408652767 502977601 296904302 535042230 639371576 811882218 741555478 493158752 501400781 212346662 996047502 251833496 168200829 454963858 178441260 604865518 246479521 821020297 87366238 841655345 826485814 46672386 770535708 827591370 788213559 758159469 15329026 861181176 296087457 316428343 701084901 422997722 481191228 612608321 417593810 34500370 808855265 364640165 967044421 987293353 600245484 911510966 236251464 719561472 236162268 236894746 846618418 901188454 371177373 192414015 320065017 744190286 25735696 224515239 721754443 232087637 898794057 461589970 700884682 745636378 531433623 934519993 441801137 210077796 317391208 827285167 597455949 767780043 445445022 787349389 886255290 15975517 78314277 127763683 418270234 944138404 750575061 640827559 468604805 984369303 965571392 227087654 809180463 963447816 817516407 303638696 84780726 430563008 444457209 800492175 845094831 269464625 175642424 869368798 987801295 782656366 981385209 731138897 331298540 628997455 193494639 949508106 62443897 802988717 898160246 515465263 389771088 868365990 911791732 566294501 136105073 127953644 162175355 509716515 280951093 371294695 397569363 977727585 502262877 586186412 669471991 104120581 774198299 333792351 402090185 348556333 319268158 635755193 208879528 970944574 359091429 96838676 59717151 922992963 628837310 888397109 109021699 562137515 972117013 986833437 843660471 144255420 380863071 596437548 258901975 179317727 849603988 962796518 114919643 595037124 216965926 244328806 633570441 872219309 891101945 945237053 285241739 872415963 889440377 899922458 194694944 349168559 892576287 976736254 378355410 787452610 705199757 82561444 105993276 745844274 273361452 307997452 698018597 300018707 691817814 963067529 174203 243118484 324003306 887788144 826854474 495729906 23519845 829894977 839366785 771113375 296681224 198587232 628802873 339447819 347226260 125595126 475839752 318803005 655041789 578940653 669777748 775595795 176394317 94883370 86874250 693271392 444674885 478566432 751112316 107822854 332188350 10874491 966969117 634276043 284511646 253573254 8347176 172037174 517175556 92104953 423740962 460507911 318577280 297348925 495516308 420674979 572848380 778675311 677409959 661725081 806010160 759837123 853087325 441748744 341204846 850398451 231765206 978116385 332066154 832954695 955036941 789146165 667816108 391408322 291516036 496209839 344040668 125463989 110613195 62610206 920238005 137383652 156414377 504077071 244786968 713510126 747638106 615623211 657420701 448054797 949600540 895708028 407442841 340162998 811771534 906467796 572874046 529078509 79312492 735466651 256175807 552852743 775496626 659793521 619682762 230866748 917155510 286632199 29450133 318445444 739769895 450338734 209648134 428448962 290723683 909277211 229901346 880954759 884115411 372651108 333401937 600056903 228882709 219297721 328593199 624122852 500346031 596089342 797761943 425506098 290547278 812284017 800111140 102837598 646180936 850077021 218522172 916182572 941653764 196275328 67666679 450567040 607827433 175003462 402299193 79483776 532759640 948999814 156498430 808574807 993808124 904630287 851732891 844534123 844772551 880176130 792653885 643213063 859269656 483800608 143835622 298726560 389156249 516648066 61576595 702100325 935400636 946073690 568858555 790478789 349151292 179455286 249161565 960180589 451434972 739009553 693494219 712515301 749444215 298460474 610338589 219399719 362380282 354029140 206643914 101967475 308610396 761690723 387460264 881547038 389070791 58822350 874290897 635625661 978544697 494754556 156471937 650588242 13620514 588562968 757842998 746346608 534357888 24311412 109059280 567774487 937530816 449865914 960070118 338255760 517099372 503439490 731186119 583809640 494584009 748733530 475154759 725450358 65734330 18434901 125670468 862178216 430508011 375261470 908760569 896601987 285893005 786591937 194995939 600340474 65119415 840028557 652558005 836432445 981896010 384198701 259838813 153073614 96253881 26678018 948825936 967043747 460192807 133407163 890544943 166085833 967613260 984870851 841237135 568610082 883419357 786376998 693722643 21364162 682658746 410654155 10592197 569312616 522936556 805358157 619002020 193651819 439473598 938539499 679521087 612749815 630016936 81002072 934460131 680557399 886176523 159701705 900994821 366881443 545051494 951879553 553923536 482974405 961768925 173006478 40519073 838099297 286181235 244283464 781374793 661252557 963450569 670234271 112469485 39380799 286583662 228426452 631221760 309407488 14705436 368569279 664071656 228683366 622497263 156061657 957623132 632918320 43232141 699050332 916384872 270911587 261410290 211997820 844380936 314108463 863053685 843169494 553145380 830289187 850821917 437268444 193486888 390818516 603214719 577623967 186458286 621694359 705987489 79558057 157765272 733610537 11163951 237293255 504096275 867266708 964720631 280772299 472333958 607148646 198743661 427823503 144137926 464116269 403251939 860603971 103210561 25743246 771805804 252746113 390580130 516840074 411800629 568606323 385625610 104668476 398207602 42189212 674236295 920323560 87825088 913779999 303268790 543134947 338720358 771051110 636631612 182449494 654970316 824385496 670142129 275053046 603771870 900671258 158726602 503539815 774250383 934204279 211365703 441125381 712666680 708485452 880016277 38516457 805713458 815623398 589117545 454105322 908537670 86473876 762389257 450658835 565143860 331118817 232732117 87814607 966692385 45803781 483473423 617896760 34040821 755147542 827396572 866718539 840586561 34066994 539441132 753723838 264455509 101300947 187933765 504610036 184426601 900711388 166353139 39865496 673249717 500946491 103814702 263005242 307695335 892600595 831951468 713284581 877827849 520491034 274784254 103252573 617582606 669028417 283558169 307400355 946175290 84919830 570451173 960202800 138404103 636131788 962183296 897534561 832347479 61850418 49405619 114951665 142088711 284058881 775793796 134021322 371692257 277193683 667917873 596261031 568225953 164019629 973241647 79730331 409406116 417274942 535588528 112811770 167322656 917081829 210589993 851825211 654211165 687593931 779286954 156225907 853652742 178441665 144446185 225333600 327322415 419885638 648950197 364056579 56406748 270140103 558846201 150391760 293247333 898109683 988277993 205772532 897119513 330168169 266239522 868434380 448622633 377713725 250209835 424683010 596007991 790103931 935971131 595591438 841007092 949804529 437801217 804074677 11040693 872972320 620070770 529223270 794573929 772954486 198298119 32314941 580533715 188186508 615387378 766660908 39481112 474334332 603743138 83983090 79281480 405820114 567078528 447273586 642422789 112999676 772277595 446610603 958988966 732709160 837516086 783649615 881973362 935469291 318839115 960089540 435228152 396862196 429703102 974769274 809371132 997827628 414997411 286035341 732479651 788972813 174302188 540050332 283288482 386143633 509461863 801023803 266280184 69408670 674556792 336193086 734591839 246719473 257207077 404003600 46576225 560287066 179351672 871584304 985725110 577602624 751626519 151335284 680929298 626606076 78964413 73705270 949048748 726659188 847350383 280050781 531477849 625242536 582858095 946962151 352262035 320032623 300953513 251327337 991451160 840799784 892341411 224133117 378772893 101219472 162967855 496285871 822952198 34953569 835656680 70705619 136319341 189014531 838239093 136542127 463533631 975454106 283664758 845076120 810248381 910492917 712495299 309942836 61070318 606739065 522909842 947300896 439077587 987870754 515895165 591933781 3959243 434713341 371944822 54250267 669038715 850167263 762063778 561553212 305440949 919014441 101053090 51978208 753772388 248181683 648706394 64416326 174274417 243497166 247081297 339942254 728141224 354790816 133548354 269611717 621208203 508091348 764809355 28889030 413981457 34708291 838215204 412015301 862415505 566037006 866437891 608577909 289551573 594175158 288385517 809310045 927394321 72683906 93629675 547841924 474248321 615509266 821006224 742095177 164580030 440360040 608438820 561573107 955454317 353728507 310006 386122403 59440964 103332429 46101713 594945952 200231254 420823726 809683343 461221204 275422769 330027976 1920864 389934427 114678270 49790998 131574889 629855220 25014391 440598831 388532859 90250994 300931681 61879242 808905066 299257804 385122733 159872881 213542538 663305208 172316825 83637194 490347629 964560477 780002648 554846717 181343231 308207657 995110138 695774851 739034026 648387941 974145672 638132566 525257000 140434235 155231701 519956594 191740408 54288807 152065576 84899996 316457860 466448783 254183520 873034922 962498632 166976086 401209211 372335075 62225464 133534811 715103249 595840791 921033856 318693652 416811209 582142169 206651286 349193470 786079768 767351163 679138224 271655561 275912918 233365796 146824844 69773953 299825019 120208942 274637716 386930464 938960233 540967669 458240082 783004399 412336112 990097276 334853579 177695454 300056529 136291751 406045994 369164560 398647842 496203605 968332236 906493014 707958672 804170368 960669735 704962884 728257393 317228670 912385860 471289308 549770153 579973576 914922617 601327767 780024891 171695667 61369122 75101946 557413969 521327741 178847730 223310539 205901640 186222359 966714664 58395145 759499626 681130011 767797896 956047139 246965412 710576190 35442032 746991400 221540274 977090236 920375271 156866922 656817510 65129035 967788902 901582456 588526891 205103865 450807108 833609015 580246625 962696167 865988442 245889290 442686558 538395398 749381681 35212695 872723277 406595031 940524760 707763441 428274114 98320526 522205266 583047674 728916596 520357447 54473438 56722669 697447623 899017276 26918540 788919616 517295153 197695290 770925360 313339016 786863781 69071336 832178462 666327302 468875168 819298571 363917734 582024377 771649558 760612988 636325335 29376595 864346349 945079370 42677679 31055771 962554121 587908525 88043413 524544363 915042675 741183258 670551039 934994441 508296453 801724468 284639220 903557420 830709737 39715175 162077300 529854020 784697446 670451377 972160792 806787331 274729855 549505341 590016071 410231373 119219138 748152194 115352700 447397619 505081255 517865899 772885842 504020720 200497951 437262459 338985881 810248712 378412028 576360102 3530248 132803937 110660601 942790893 91183671 419832212 806888196 883134698 778116778 277963307 682368601 578706272 428603880 977278452 607224290 201002726 512418864 297469431 742187830 770941359 830214176 154382159 803199775 899917421 266647598 257342993 17808264 813208178 354266600 795605821 602273024 606596289 396914441 57181657 67138420 225658321 845466800 228769469 808937619 27469926 692106870 111825164 803370246 990600103 290989412 347729121 957303799 655126542 916951093 931056075 571486779 12099755 415998192 676537696 773356228 985169576 352243405 404089093 744647251 289194814 82872541 556863867 578334563 614440422 840057787 342942937 65059991 460840969 314842502 993545019 683705295 92612158 467470226 66839988 207614325 971916914 105270848 99241645 48771987 694639062 705513453 319615155 943594793 153569146 155982125 234380041 482131837 872305098 399827368 978563409 697242482 438564534 848881734 508785824 135179230 922006228 433153835 201754047 80188910 827958036 72620209 457098988 49085077 93216927 332115269 687818815 65672004 306059859 856687634 183604958 211273928 156527565 970356959 272471403 564184749 687456422 824723379 128556990 76350040 944014417 647669777 728567016 453922743 379449526 424829455 710350106 39819477 330671764 627761482 420616733 279015864 982570263 259919288 342160074 791577432 240470578 266122463 272456630 301639368 538761291 550267900 632325611 800794250 283415447 536860458 301204484 99021781 633353462 277824873 361235967 33475643 937783977 818299578 907202487 213234106 569583345 443922871 96186747 288935683 119214672 305107633 329108825 271084255 170666514 712021122 543337806 358145269 153790007 666207520 929099273 449081879 710773952 500384211 816789592 771697579 670957854 79707179 993603735 909345791 890855168 999605130 403281042 544667188 643138417 831155624 460244134 565168835 943658431 368705821 287232463 646229597 256844302 809793401 732907219 743084568 647780342 579768512 860648915 565362871 255649653 456981225 713327360 857241680 193034769 36761561 919894673 398306264 262775349 399878750 394218748 548224351 664365059 773485478 407717322 726406234 727368851 221701018 806306619 898532903 270062217 972475719 960320237 467962736 201685629 713209684 514870982 254990909 609655947 301612073 856769727 681552293 336879044 122663178 86892301 950498641 725684258 24607789 571780428 382616955 202558726 526319708 412252518 735764897 129434078 49668602 491883689 869956494 502783672 480448181 742487716 461292972 941863543 21510112 20112570 533019309 280583875 272759260 688999193 839377277 535508102 681936841 786334046 290765964 420796461 258249807 610712573 107102272 520596740 778177037 765299312 335105231 734771762 558232087 129818426 693727321 537634439 567034353 176480293 816771335 788559036 821206851 975021744 650828456 828047727 897835585 179101766 52025612 775064666 585800594 804434632 728498770 525588113 752778556 194807648 231453185 858601266 720806077 570336346 551523592 290603253 543125717 970527582 772829753 761163761 87490038 87489026 189731583 533890675 604725612 516864076 694336407 303316378 124288597 211282789 745328064 875820113 130100776 120392387 796070114 166532669 389626479 764897800 531676907 851116169 688600185 887494628 954441864 773792278 539339771 13807592 589691246 590446042 596123222 600567164 978906334 93432923 62114507 577228571 210778315 175415615 305954300 776554034 617237929 657480475 870841493 443567411 50374 621202830 337000712 63217172 560589509 613010030 253992798 972487661 654159230 952319221 10280479 669580549 755027884 218490292 54239204 455076642 510934675 225524521 361398758 554666955 472711357 916340387 29158921 965477465 353605282 225872996 86128470 137168847 807647552 74404508 721807742 606293752 397596951 104704962 504223844 95471952 170361719 801613345 507170332 193426091 525079819 290866309 707533905 451272505 702799671 973604213 159070941 750446460 817626030 798255143 676223518 143988617 915074492 816995355 288009009 442862701 145346378 541592777 799763684 229462026 992388148 739425672 950033055 545511078 585852846 624894304 865513797 370813646 778705263 254472296 943055562 63490541 786633043 77156261 869704161 672451349 526932262 915485732 873357153 929345310 649022248 355672855 353335190 710645250 781203718 818429098 423050555 804555408 667083403 427657579 766274468 561186101 788239282 875247518 167761894 614408561 386857165 857594579 418044145 499948924 322184489 622129685 989489327 385636661 717357155 385862017 191192059 909870864 93261749 422762204 886977077 833108362 538258250 485496228 468053651 170214745 412803063 753353216 692237368 618191465 653076505 24581849 338426424 499358670 555828434 733417396 578525158 564108890 17587786 974979384 886391139 227613455 800284023 746239196 304935544 955201657 935341943 876191454 257951878 831891856 812823958 129636936 701789994 508126230 52768369 376303865 101050697 180601361 314256061 329006254 797972350 61871694 698632243 453893206 967968792 316517660 846128117 333765185 801128948 694232072 535282685 254877674 741011871 620977132 85713941 430514249 918807681 465441634 480196424 692810487 73759395 494870309 663813101 478067000 897858227 483378314 430677140 950298549 133241210 153403584 849630803 135433488 291816915 615989126 793871856 786539838 282416956 772034151 180304879 440600365 185086136 694501259 111536976 120008732 33380897 637989031 251384052 201454485 311328650 967946108 227582816 182572174 712636877 427068105 578031604 826751310 29273538 645284662 93518714 814468542 192234155 912957642 234527976 309354037 331845174 211025606 476316124 299967061 323466622 141895094 218087016 457669771 599389197 333756148 773812534 759265149 60793216 557553065 45082093 361922444 193250283 306146271 844686597 16495720 632206030 230727016 670645751 471321091 931064665 364203731 821756539 545154981 192315190 538745048 381755648 555211239 351289669 759960695 652529586 438555684 641002911 596712981 88740473 204572207 941573062 673262165 804439953 241061241 314023040 900042323 898266926 186950233 103859875 833376380 617125588 315453606 643840261 982419800 782716642 394890709 450884432 403943660 886508164 612510620 668535478 819894449 754946953 919735232 576750941 24459939 54915200 667230035 853252129 707925932 499596100 594037055 959157913 941537392 19937751 653590205 261377361 24099691 353267588 428464639 112066424 651577456 122374284 34532446 819615461 464468021 599316103 573251896 889205035 98270322 903813593 418128440 41977116 669029656 732483889 65612880 299294043 156249725 657205193 926704213 388726566 672568849 273256834 580138971 745061215 485859523 41197885 200929238 791217595 605341186 943081822 703738858 632945004 670606368 832397490 259335661 682399775 708235706 716290825 782584832 488844910 433912410 93695271 621013617 664785797 900489484 451031276 391278202 819352993 580971446 678536715 823872263 968074053 86317003 369361572 822872190 655930375 70926259 127340411 413391477 866561716 600851917 923330125 382020478 319686851 130162646 211778406 663699221 861608437 690334787 419307280 876867844 85660973 188682418 280837194 813654222 399775683 761166881 57631153 272478947 552323156 656433459 669959371 641114631 131299201 332365768 120179810 58066364 84879044 188392049 234118978 33925227 445055011 707533482 735355442 3195830 525205607 605772924 773202433 81208353 271435694 868948029 928659376 318044276 391512420 895125547 809653145 864341312 675815548 122938693 401184008 483561252 271031473 353647232 916819728 521832033 685468595 609936683 680456887 941604396 203568672 670284724 612250694 297049316 47564292 90834612 958813289 839908986 302149667 355504099 952820752 78527703 520665344 30664446 768700736 609579960 288395379 562890734 110648307 159767837 841501905 766361757 37124913 329911330 68121424 257279526 113358050 947467942 104834950 316007875 591337537 579791632 284632801 384575830 472089353 891659939 571453463 781089437 787761825 617259543 358385819 864491698 705581493 721011000 723674174 623097836 412826461 405088669 120586509 291743118 341195876 135043174 620285943 299046545 779460331 310832261 438157875 868017647 960407636 614426294 927134514 346564462 916735355 972036210 416648375 441030694 995217850 672425296 16139643 204436933 104219038 91701626 526229353 439454717 750191979 37700559 667208728 777683733 262858224 879197129 609141096 262475682 516733765 709110646 21939601 56837839 837411138 933383563 411911132 997465317 232445114 721039356 335330841 970913861 46622096 427230043 919904034 688075531 551240079 795105885 415663679 563996692 874150233 14593041 964470459 245395857 860758972 592569081 859939968 344362305 622027307 317860688 952447038 122085975 236643233 372440161 907762924 232531456 79157206 921934873 865011695 507900493 223394997 443719207 790643895 240187850 943986000 756048769 295550127 233747572 79037359 966175466 712839601 213362597 931484511 123947822 39382737 989548157 497924946 308497864 176521801 40759321 735029213 249389437 689708542 202815231 49445556 874542392 353967172 376551981 392960138 412250235 335955673 378138768 46018855 687378507 599096789 614288281 826885022 179244944 357849858 687955799 849452600 421036795 706241828 853314866 213167656 13618845 967230787 807682474 450485170 213790909 815158040 364499785 984739048 529338075 557175956 877444506 917268743 103328351 922662535 897356049 680075986 687982352 68186410 318401094 149664504 728767734 393493469 684335291 567055880 866199855 998918134 362361283 394520006 288094922 537892707 926908954 202749642 196984667 899569300 58485913 524288890 897304061 818360729 573852509 427891393 880003819 193336208 933106248 565531107 263217788 957433704 921650416 281938966 770644542 126036565 483677872 503071440 366446875 624813966 242498165 910420970 163661557 762752138 278281671 877084277 285103758 481898718 933624800 738423040 591620361 744749667 801991062 403432058 635479744 148375781 484787475 666130036 819077355 658756005 628341009 770086369 197428115 589206989 845532959 509981979 165708809 312815869 659782168 601763268 387249948 813974968 919527529 92528555 801955200 961846954 641206096 719606139 136460197 754347463 771881485 815610636 877930500 850387409 164128145 470118980 81786460 355745389 966369704 281101873 166786995 391159648 731662900 640426097 859791539 997824168 492304906 423297405 197870308 882800881 238472634 108712993 245622980 371795589 378922818 984756253 997941431 804385054 667188036 799879420 879424232 961386814 957182766 909326544 530714838 988364744 441298355 64570019 543211396 309849720 397744913 516322267 937868934 118909567 190874675 507738604 70145695 239608254 352700758 325910686 608874309 158392102 134285806 194892695 586694672 986179805 779526314 419875432 744704880 575255881 734696748 796370469 366443496 222016788 603583676 172886112 877211819 250306769 638745866 942106714 807382236 808570601 905565539 871125771 935558844 126545383 720855191 311132631 649363664 429475029 596539313 961207082 248710113 944207192 500132494 412602703 298302832 216487260 682481428 885430155 920308838 314938686 934899343 538351007 313558273 109402129 266934104 564216045 208075214 887564259 85708710 401506586 985799366 714542185 585866571 344102963 678310581 536206444 777403909 81382228 495167861 601263204 161237953 155472526 640298443 734919942 101751129 236769503 748773016 518777130 833149365 596622887 575042031 572233742 235737877 971112407 642783631 99839879 149555134 347854971 688805004 902627402 112785937 874897095 153058855 319453185 628609931 850782717 720343400 264445137 476095369 382574414 274706729 918144203 353751520 87067526 645120730 885143849 727793203 257850488 416967355 718576691 657954929 78782388 800941013 328182349 197029268 948572344 589920913 414291002 444922016 876932467 107229153 814692538 342863173 433915298 282166887 677764617 420998842 734313858 951207488 817950756 446768088 792517592 114125984 199973052 857937577 278517239 41180038 577727033 657331645 622422469 366277211 615622331 470085769 490670538 391801915 965769155 397069493 307462934 928195637 991364204 40516735 175873350 74533542 995325428 733518203 957099397 879374401 177389802 568391523 692663822 263804580 924926090 365115983 46243951 594141119 370028596 222252724 447135681 443333954 846134585 313174194 602915175 405758878 118575163 599167157 468758385 663347651 677477333 715701343 4878219 891163498 771942380 346275884 279033770 593188186 733436047 234789678 793681454 822736854 280766675 348440754 500290214 380037854 900352779 98650050 185245195 654420092 935755826 320312767 164180612 352952888 136496317 264417106 516219284 611391731 824683890 26281695 486949425 922601997 281528060 108814761 859072996 67882329 456569568 259764716 43190201 245844048 467653015 120932805 209758950 195373643 655745561 54518751 551992369 152743898 453550465 151234779 68366982 258562387 715989541 500343238 925427002 1656864 331450637 373466603 369300827 848187745 261655712 573716613 972961621 907706615 741515979 630092170 931397638 28096749 855781533 803754011 791322774 195429295 215458605 517963188 973911661 219523796 75529202 756018493 997085336 216588641 626985179 422568160 461887083 222325718 267690819 382093514 636781512 681851352 516793317 672060744 830372881 433978618 785385712 141958784 732421487 706504653 990905316 745418166 598163432 622012997 607306813 473350242 524951957 980260225 550796246 590023410 929979413 970680329 547940048 114057016 147503543 723788864 919880857 753496535 247032806 646372458 722229880 93467887 796486970 270959689 943095503 591744410 146085463 524916963 616497144 830991304 759840772 591160069 213345422 455946961 729664531 641437288 19496256 736578219 987222059 704542280 623300689 795073926 674913942 115882113 250598760 259573535 17662403 158652483 451362374 122539298 363306483 402908669 335535921 568180404 824800867 553410392 188933935 451155682 332784662 920954765 699452548 794958964 449519682 673907072 699675652 433086283 200025794 973376831 996083624 12465807 215764941 854475351 849766963 934487131 430486660 386665220 620909740 823024378 120246117 686284414 881377254 633718152 88320361 514356815 310059413 129919156 921248612 286064121 75215014 620511870 612392727 661196770 416787716 301265924 596060750 583216810 757848349 387551950 38762331 817832338 466443580 562296081 880978350 130731918 450300053 776422246 474801875 342020956 654375718 101618201 958233471 129457418 691157989 764678539 764851495 14275765 243052450 726852410 391039984 790172813 587370885 129314537 448881378 441924640 684524603 897928840 277327305 113927531 474983107 20136358 291371214 203005221 806194226 335465246 184060598 91935893 385027822 216681903 732320765 805549310 437102624 297258074 386737582 925659803 90227302 847524272 161101453 683570757 919091777 170874766 904747822 384912617 591654727 976205828 943414000 217935999 843459889 721423330 549280897 36128258 314010875 962462570 860334971 517637234 309726270 378841447 425304599 605964740 477949962 774483336 46026672 737411902 405158467 155111236 764513258 337037673 285920040 158382680 597590223 827949896 347779256 895911556 554986208 81993901 337869701 962607953 320066274 987723721 803201160 685800587 102854830 793614547 657843161 969538024 930069187 639131265 722144408 44323355 944101376 551770969 596366771 365969084 496083236 976236391 834512412 415701332 364324596 880450812 909974752 100830721 421574077 114752555 840015963 75078395 452522204 470638828 359615340 581034191 173356538 382511923 320800537 837622428 676403006 358101979 901463802 329853755 467436195 221782815 32634895 999377519 116308234 590187810 377217642 470877302 931703967 673071707 467425458 495102690 294538557 306683239 831972083 764898585 877630276 698817829 96408764 569691024 47018145 587844804 131288721 70552481 256766581 959508270 563025379 675288501 21734553 290426478 631888503 590225717 89692497 598479199 51100732 517543489 536138192 965726234 621560747 864825075 162429838 136315578 565942277 365697590 832589917 667029599 118866512 618298905 897096129 725571410 608404442 545454119 804313040 961951429 812441560 264258808 644740736 990315549 137383664 789120410 310816564 39643298 344377864 561874917 131027196 139965765 473288260 814962259 363139009 652995518 713391100 171699926 280159707 453407644 243604048 991379789 241429039 51216642 382464156 240382621 589474488 51362258 36208388 398872024 3500281 659126885 868394579 327283913 598408665 238376130 598685670 225454207 36883815 820037549 969346694 914550365 1118775 395208423 475032915 384607310 337339131 111306299 821829712 796661882 47104827 939949537 876020867 616798668 834654711 880586808 78960166 235856166 797737016 183954473 774199999 204073368 832239641 3319334 343714498 984949509 544235933 92166818 466425100 900896839 823520868 382061766 301926574 512115913 641828649 8511478 590895505 660822015 10038851 88325261 443152926 985486951 641697363 617334550 891893008 569556044 178699376 439608668 400033399 591463850 520637917 973982496 715340938 38651295 425784138 400714608 671394649 652661307 450462960 6901502 765768543 831546964 901160256 504155940 662346433 713292517 431597889 358796367 55804615 542769154 830654271 472521201 43466237 740611641 967598240 81884404 489985501 314099780 794113698 397779357 193053902 226971537 519273753 660975915 320198494 883026336 877188402 199890837 898460925 277788680 338576490 739080579 91598567 998744399 676196974 259317311 906559258 569228522 154229918 306369974 23168685 249712411 225982653 179513967 280008502 787357465 713288836 321059741 210588292 698127029 191639402 995140428 74579810 177283394 231240399 211877944 909306121 420439473 917732706 846389887 287782149 142455279 775392752 540069107 702015808 366091358 627954689 948966915 962844837 988025995 464248568 943154332 61389238 597854117 449125474 555236016 482964753 998557649 351691461 769499278 773814792 294564426 865215081 16721227 405814049 398195127 349231815 425679700 755709726 559339568 97593356 50810418 874919824 25860938 36831421 164542395 32645247 635624124 968291847 54074066 987383203 566933712 294592115 296714618 10841779 823443629 43397530 805786283 218084208 289960246 803707559 571666977 94264119 18841949 241130003 978873502 423259935 108175972 869536623 257221090 681795166 17411203 492826408 809999221 296703982 857896530 755252875 967586235 913366569 619867504 149763271 359764688 241653039 605063775 390962834 198889874 379786020 959909755 502581261 575698191 431861002 214900237 795484446 879263429 965271346 979936918 179700062 813288050 110288580 554139215 882739095 990517650 139651227 218364074 242992209 211817872 742428998 917535217 60285602 61081480 78184106 595650052 974824143 899842907 508688144 813670749 865796735 217949177 944852402 866881582 398214494 517832533 63672947 379473513 929828643 879755294 586277538 229313964 716586652 215194926 445923111 899485661 8453507 859872006 349612419 953750286 385124458 332225186 257540226 92251029 122489869 104828706 188633461 427369655 580162619 298518786 681807638 589746568 534311746 436692663 827330406 269917377 667188097 130795649 337146748 681765717 748284067 938398816 846621817 632535788 746786716 61714510 574222183 674909397 68544333 598148568 458407700 307896694 208190090 379048549 308264762 793063563 858448719 673023525 509328804 129572144 828714396 286102390 339331511 726796088 945312046 793908571 54760218 833676941 872648069 170673761 573688900 492343010 247410128 413280213 704295372 337243754 793927515 767450487 491383410 657739811 956122296 590059855 784341278 364085282 393281002 122463271 45188545 882662912 373064592 869687661 264952873 64178879 132562766 395081555 877874296 432539197 178706805 914334416 197313898 396160995 11903716 867662896 934411494 313111386 874666729 325701340 584433670 511158902 858565553 205067986 872935113 987019543 187511048 255984837 972395198 32058956 280773291 84077188 43236843 849281126 811868990 986621715 181578336 465881032 107646602 325878484 33262113 551887714 15073359 466004816 505947150 217516115 808265536 827761747 508105153 907018578 278706830 576159201 699354701 28823881 566929750 610578365 475619837 142823782 283567578 860796220 892895705 816089057 304460755 110631380 683604520 661656708 705280018 705191946 963330488 259266967 287582609 288438090 860922480 651052995 674582853 729745505 449106895 230837618 628507900 895794877 919474269 387000411 505321194 722746421 328509985 611110029 740964076 789466788 946126184 167874299 901596519 119053162 685798056 853513662 359846771 497282565 449753892 535651640 610666612 322812719 860155202 141069294 986193450 523543345 926823026 705647513 314066326 777452466 219792639 67987825 697398610 186362694 162058871 639003880 462572301 160018912 513853233 65405212 452854029 697033852 437488527 417797014 928977870 22774986 600096557 286243915 272400207 352185758 119314688 444932845 481902038 602720443 493465758 171321412 844014903 245342157 135219872 144067076 402584625 203225964 213962509 496727552 480733137 937526945 524060928 1654905 995255421 16853051 41379003 199227527 67462438 487873724 913817773 721932350 501609310 5287170 490842470 630991871 692884211 870308686 306099467 220015616 771815890 485682050 912765465 562894431 943443126 288041384 371965443 527595088 806085823 393614019 98129123 294776727 492482160 173333405 860883716 776568761 73110886 48400349 261220972 922828980 669461678 721544355 524564707 320494723 690056017 312616503 350922905 6742814 171814141 117742099 606040477 923333099 980960125 768351341 648472812 668571295 885318210 779255391 566165640 677317721 854718876 132371832 613832694 3754753 238004012 22806726 868087522 684384877 640529591 539326081 857050332 543063608 179225849 953106876 375672253 697264680 766624396 574209379 747510916 919400533 40139393 959328083 991494991 125159552 625288026 970151429 260988515 661315900 312524360 211289416 481972560 414762433 823143248 134614179 346756587 880996343 80203328 329525388 405958956 723332979 226470602 523701665 689871680 200185162 926273991 844463883 663849733 659388440 420814081 676435753 231598220 849979370 164657676 253263285 289305691 719779698 849417083 857307360 428611540 599841993 342650671 228635362 35487914 637454881 230300145 338275439 513930189 678462826 216464627 381290355 283681983 954549338 565224538 482742234 523018184 652094325 376186758 724482556 450407888 398566342 719860722 396746061 154092705 627540311 31989193 695434716 846894594 340879714 38203304 103491064 597006054 554905356 728148330 426688938 520221445 403488217 190756187 769832552 719890599 938639033 723371748 289461793 788681333 937154018 941978891 309005844 990941911 78594618 46984687 584467068 449781528 574627078 995347123 55652145 849523732 525205111 477923531 944420191 16675511 880781163 696148770 500177450 299324275 146869043 679083023 248097476 776265590 354754963 662552270 759130932 659856733 310680018 197536802 558591557 44057454 996923866 682726953 107722701 952386037 21304910 973464935 826621916 701587016 914700850 587214396 370949226 538356330 137167725 794782633 41212570 630257631 577901911 95023169 202958459 353572211 125998638 287854517 434720602 247117700 921009191 702663527 573751470 764190636 691375563 324617834 595767202 258337482 923026070 52970256 330248612 45143173 821912812 462459196 286767809 727069454 205386072 977393821 625028140 914058045 538127283 419304661 789569343 970715396 521574544 196521931 334106175 100007308 36395793 677324269 476572378 747195816 556416964 930997003 931383273 851420170 153310027 465364742 440549170 815855569 240152855 314293537 466110504 336888180 865018217 746298497 229915009 137275607 828933006 517591716 970086812 137955436 834574772 842707865 787026055 454801603 173650942 749745091 135781230 826582259 201542053 591830192 327138377 447415899 608607768 883886669 399693328 639786455 130103631 280061350 350742149 839792503 409683690 759250533 941549966 126027441 76698672 681141588 134456825 433354681 535613847 933792433 26837593 711649303 296203784 452803908 126987243 678342887 552091360 906218364 75523603 642440277 171492924 24234325 520077223 807414157 804795397 924023008 457340340 584781927 316378942 806900679 745059861 640350201 838820257 334818345 640477987 89728068 129684156 794330868 151181163 573054314 843927311 854817374 35679910 871341209 742421834 984292186 352296611 454471347 787996448 235718991 259589476 730341344 782716870 814872951 671076672 686320974 137735524 173114485 134251785 187069076 94823352 261185660 662742837 888997166 533525942 693721125 873964846 270326720 843590082 93204011 703586155 774498500 282804450 952310463 832079295 539553538 101043039 71729795 845963089 661488011 597550805 405161556 25668347 68940136 783948656 833039245 828563854 402004150 663568415 674418642 395393166 840790818 785833416 330199518 655645446 422309813 972106543 458057895 856852674 269909089 508065985 718016964 894396774 241058108 965982134 46780106 792286012 429549084 636470266 541373178 872028213 924296883 980566784 331364680 946422678 77125013 314615170 871039834 164049765 595169095 714500552 432332971 601380773 912406037 482086151 150646026 442343938 765727236 893731921 410503597 306441677 820050213 720730656 505673597 112997959 133890019 821215304 196030184 437398748 544304667 251199343 972210723 143926343 969483322 804084786 439919861 887825670 443459554 644669659 539731005 575895771 85324488 649837084 455165587 522973905 820456402 937897113 877440776 273941623 165788196 403797710 243523204 996368360 685703509 858964189 918738229 913829803 272200032 198048063 870174446 484323143 2332041 290617205 27153976 169906319 571415710 478777077 204747427 56262587 718610121 60047282 129208551 606366648 111866283 71702680 907780194 233802709 7411595 411196307 395534169 768912610 740318648 309877060 846164745 503461155 272601469 483608013 260487181 453161320 140370418 386690264 783071641 733001413 309163720 845186321 449533461 670509361 615584369 886452461 450188798 851550014 420655398 598360089 537579883 75458593 501695275 383290539 18942075 987540381 420704972 961020519 627613278 698271296 726701413 287250210 410684193 36289364 579681613 173481468 305743331 626153305 10474227 253989356 292022331 142841316 352907444 953095403 342158894 700396333 724999114 264007387 664690949 290405809 107758775 676602573 365732718 306582277 985607233 451798126 426039650 451239717 525894755 553295356 196136095 231671968 435931740 264886241 602054315 526507173 315339981 365643979 146039220 847960746 678170651 49554622 2518893 886981 865922506 838014524 665522066 348033693 648442301 614512536 428472838 570640792 265612757 794717698 517426264 765805975 771205253 465596208 919150132 649485304 818509011 569674223 944417488 325391294 99207208 565099981 33961312 224483342 306734227 813575284 613519587 71519265 863178113 422307170 350040658 699192577 874313787 627876818 345450586 259166728 154704683 380504147 649772648 758877047 503066235 312791451 475625567 169591536 156794657 374369859 861431881 254016808 783681294 932024128 319420488 217837320 798641519 666975258 648441011 673072597 152673362 729376455 158604138 913789091 964682780 118792606 201505901 140600664 692059111 695537807 922462840 545633350 88840241 53779496 571963991 814474488 453699008 578508330 717390136 426217913 221551609 547951625 559808587 652264835 567347488 35283385 268907308 29518656 646845605 83102130 886717592 124007183 316403195 504134733 81672514 675493834 729969313 575002477 56595043 812028414 64147061 551923333 232705541 231261075 602727111 841939751 661076109 518143727 684324515 547696538 443571231 616893890 72112095 697758581 374039131 794863992 386648629 50233625 571826040 569729595 156928304 892858679 516374753 19230884 684818468 769681487 289813792 580882587 727343884 835861902 828672026 561348579 21868900 485387891 365874508 363386977 15667095 181152597 835596804 306508068 515720804 480985731 847545104 812953493 180194681 450215593 289470000 501496801 392204945 385574990 170095711 292303868 49452001 372038210 723878990 744421956 998324338 83865943 165701265 252365340 415105345 298590841 890788762 804442658 251299530 664316566 778484071 464752502 938289633 677290399 799184243 275387980 124015410 672312616 933816719 752109248 101125764 713230841 642720667 314384047 992315774 677961098 972905331 633065686 383710764 668865154 241611592 92944277 221586981 475826331 106012140 37320863 354483966 32385687 32484440 121221359 314778393 737811725 365742627 799147930 158220824 594698594 5230120 73401010 377306992 281769918 675420323 553495744 794267423 497559121 399286043 555709087 129023579 190851907 253634627 235926088 141632993 595609856 394782784 302293066 492476031 129761346 741544788 116856786 238812965 896907406 205597293 871358620 616344144 887337739 707103896 469634024 438090114 188476069 998292542 105392026 272174716 465687012 656047205 127745710 997694603 892847181 852322143 621914965 739196609 756272247 118612330 137688020 418473456 500023742 868169936 200443903 34265227 194404480 74034203 578514310 485862298 342919038 124924065 695943582 717144341 404242080 715992543 157501414 620536949 369237551 280800227 400517277 146200314 652851356 547234237 928781243 768375256 287697819 708171293 777491381 361815900 583485194 562883155 245190987 307733653 785166806 196048159 494632942 262460878 926699201 25492552 6191056 278211569 774551325 937733733 720106958 368255910 499614254 877876567 817612762 736648493 949450433 872821367 402845808 942480072 170692086 345798647 896448149 325561770 14708542 850767003 943809949 234572850 522695556 994553067 836092828 326153814 765919915 872816731 612615953 551005204 240999561 580064619 303251174 611222675 391211341 189865778 582079620 514133084 171338832 961338546 858303685 549137227 530429035 7570676 808732 661477252 828052409 116912755 720271904 631679571 751500355 877822367 488951812 945085269 273595028 421410759 937758531 664271000 182411671 627260160 239100247 483581297 529411836 596519206 812607181 24643419 740061010 356727440 480550269 500000475 885675961 629301728 843748658 998922870 728518654 627457788 876817342 410884470 415003320 8077334 408255343 605164818 266887781 319361901 22400475 86037417 927564957 460580021 351082348 949928150 288537013 478914361 782723852 945107270 561726733 81264493 806731390 666215060 346680227 191220768 210408589 882739993 349729136 35081985 426017941 223826893 103455653 41266679 567289534 729783169 161524353 681560091 815478610 673778742 221303544 101898075 504509500 307585854 860637542 969773013 656345815 974848977 159844460 454809803 222903249 652335084 846428067 80757585 294226983 111517840 545731439 203304189 49206369 725890068 414598306 214462858 466306145 876774353 140438863 219701988 119786761 461041607 211214905 509699667 707970576 557766158 767581786 838247573 830107488 972534915 154099812 406035110 567584423 128518949 510030413 623828088 242584501 262372636 704787913 851987339 582403853 869920859 779455729 89270780 2970456 978121203 590132885 599274509 705196872 712078745 83825405 420622888 333968479 973324713 183689474 368299036 798271420 875186215 440493470 939880692 35699014 26414142 833169342 881433415 974920234 277974797 598409014 362029483 777331885 101704609 110763584 215081133 453404000 137469279 670697218 237836153 139494495 602771722 389360324 184035149 125744877 583295887 794415078 270917030 923161320 323898143 669182920 730184982 967417538 693315476 487161076 215352252 140319284 320055751 946234024 124901775 729644932 258405740 613088252 488510247 969933320 278676901 798363576 988197510 95745261 679988408 408898598 139175685 359666254 185560910 18987748 537444727 524409914 873324364 629529214 435569258 486456 181297060 414299524 959827000 774889852 833174817 353391612 488903591 253673392 538153543 664482987 547142549 5731833 871369709 593218220 740682597 800543618 667610676 148919776 457949834 996543051 458230082 847407497 381687050 444526023 25873591 568182924 737001686 994822468 212249084 473942092 83447971 602474013 183870325 19482296 333590191 936366685 666982302 741446632 104751791 886486130 969482458 341402440 513001695 32464385 519240821 76063162 574284485 182944441 431837060 987582163 155515014 843610470 926450642 446121816 354744460 927286831 264200121 794044274 640105977 957915891 407165111 209421504 74827445 199914136 519089345 935846668 985643956 479026503 306874426 489068537 199037253 10580289 569514678 237211177 569023918 369653552 487066644 489159417 669581781 688225055 954387551 809835458 69217739 449167416 322325680 251006820 825881147 74334350 145910705 965420711 212949540 968536558 891982873 445335000 723728398 338342629 651336128 606088569 662308547 492667911 938456507 32786418 405181374 911013462 27266695 471051868 571431073 389065423 783804172 62759996 206623575 475100837 930101596 564037716 551883325 451949630 49388290 62753406 937396447 953928155 386452206 246277241 720237166 422947867 474406042 478254460 862164195 860962459 66735761 231394501 958344327 599124477 44954660 141706741 641969732 676601374 850639903 817180685 626927051 869760263 891457490 756030537 682431457 827812146 369968086 50734684 803514993 503518827 209423087 449641841 530818297 395495061 529793718 288337261 980042899 470444140 192769531 311618269 162126442 89726385 754633307 242480857 587097544 632544393 536327754 445925763 118359166 875762185 81809027 410824630 688876041 900730385 95700591 811046968 319777011 993464105 525364087 543322741 980292629 210001453 171987338 682902037 898293171 86392712 854023449 684138441 376204451 293495742 822784495 424165900 315747158 984236962 613425371 519128479 305977364 676150764 73047376 138128446 658435905 835221608 575739776 995374749 175989098 960637228 20307537 956360628 812800437 478733747 420336152 534868764 516783094 171831444 818113767 810910703 167750173 787938721 923055542 333521102 441427798 730385570 639782151 699026175 952099789 40346074 481659304 958547561 513420301 14684019 896062534 992752497 942929506 184037310 266926312 815621927 468587361 666946944 695230371 338597743 898919656 10394938 877642911 413859691 751689104 387580349 956428755 801247004 524244247 908386017 922848476 672851345 918777974 732477448 867779657 292847076 710453670 246560279 597204999 242538080 764116370 604801665 336985158 183784551 281910558 528533715 540446998 413717352 355965399 453415901 991454497 362460109 961011021 161641957 979913999 395256615 671190820 167640513 60310102 632671315 825147806 637907377 641613064 682908415 772361820 41494766 144144050 955417976 984710687 448760827 303755252 413063933 319286329 374415806 663251649 829047642 732991092 836938721 373233844 629642973 380923271 988404468 433221825 58280459 418347949 409358144 779315753 383998381 11956349 757313254 554031004 671571790 665931284 189015561 929319194 466619525 665748725 215871919 698654833 91973358 124562768 154790952 391363241 908362927 97154189 955812875 74254189 936852463 117070180 203936631 667142340 441778721 585252476 674050780 848285469 80434770 460695716 380786196 496835414 794265887 174646927 88279607 696689129 601800962 235779123 251612971 687621189 383257555 977270692 530875635 345944982 868092849 581676005 673343292 135129867 37056109 701111706 592156845 839938678 327056198 66631306 552992654 607577525 422082978 350167667 821734385 169935348 16226767 865255769 317334033 626831890 105255625 176878613 9112392 826723194 983698215 210312522 677970337 651197608 385551198 333000192 450594410 760559237 226359195 434831548 15997616 368472868 903070274 358173460 622756819 738810661 427210228 207172741 983761719 647544369 370090683 667570608 525333498 860456183 731196266 253131005 211871456 512138773 702814652 414849641 687753826 683556270 110737407 299483562 400462616 316227557 368061222 358573256 322054040 427091852 92962964 737496659 783833705 684751127 535378158 832817522 171424667 378911612 933015392 606303061 607032267 858517822 696240909 766507337 172286664 301529404 627846261 870963588 265182146 581614544 119023217 457758549 52266797 290702998 666524545 878482214 623298534 544647754 272183560 768354643 614997639 235945333 978513278 138950594 305543147 705996267 178133903 578688206 492028463 973239921 798550198 236133 218313792 119432068 931110992 900112084 255589317 630938461 84563414 919083342 752583417 720374808 218949415 5941225 127280724 486402222 653898825 605420682 74754703 335406824 419771366 561444765 127249 110403641 199807716 414306934 364007049 674886533 417261191 50094147 772526275 418883223 153278618 269358589 696291390 302605835 200475633 734115617 740429237 890602978 734672692 643170460 37319967 949141559 423320691 960140498 772315314 250288210 541186094 670492836 251200346 936435376 266742034 779113270 87041689 6630730 404703378 896697866 603144922 823368231 742891952 802511032 797780883 202537183 44330086 671475434 439724561 706411178 502274043 493943188 443254418 52717780 917311018 151453482 338712539 502580242 248653112 833729578 889436016 733004487 439842591 608295368 871623034 973449162 169909113 443442111 193245004 133232156 880448784 361955809 142939360 372419056 638756549 161176316 119598141 627570205 260347261 21656801 185926370 660172312 358531066 816702951 796415501 959705202 543370366 860868177 955072203 356200456 467183023 213152118 690146574 550309355 162300202 27378578 930431323 224780886 481656528 841616437 839427115 703656671 338676513 209462932 611936903 350173466 122966677 805804125 799186771 937170071 449920941 587196320 160519585 396554860 802438509 912119696 93968124 183878251 85549318 455325237 564521327 139782387 709982654 45173428 367261256 523047417 14664588 535745621 419421034 671951789 832089495 155059940 906476943 407982141 304756921 357893281 573191750 159933247 338128747 990002054 146817487 406801780 367264809 650045269 794686896 738290777 163444892 635309185 88044026 643800240 846644927 718869574 515604346 679335436 733573897 965433049 36712404 253523064 588986007 493055039 260207500 880368245 263837644 216193375 836791058 984828637 112872045 404251947 861313583 542310546 35034371 550912369 741101496 439693946 348352227 387262016 178397885 733747481 800168966 120597807 801661451 655261515 676703517 654729785 180580593 23013528 726598043 698076639 21490772 852969064 400806621 579693360 85078415 360359577 284102163 900376872 417970759 329868818 351817580 294893005 255294107 153434465 912226688 550061308 505657278 501782538 195849020 67730371 497189857 381735685 486128673 958517265 927905782 205718045 755170335 501739642 770254515 368707194 79356276 157206695 947744026 210624477 553900736 154158058 278567906 289475055 508611095 192633123 848329302 787045812 514292532 980713232 329264332 833552487 727489384 21679061 533394728 245068420 322604517 994275601 178738719 217653728 703044704 174880565 500279652 141814894 12524508 548915711 207807026 189585927 615000824 184409878 272072203 606635435 415215121 756637717 389834778 893804890 384055655 931535301 766063470 235033478 915018715 778178736 432997940 965604847 376588596 547568593 165100510 344315655 622174330 258323053 916137076 647987134 176154815 854105136 477446593 52946460 152267403 304537189 358245606 601570814 681725055 569953137 285328275 688088016 680493796 482905826 217496455 117773579 758908293 206180161 329369631 382648513 224311408 33529304 898463518 41029548 257431193 850095213 317909509 69796206 508581212 111214928 263855820 761801845 730650985 938823039 571555370 811792634 311288072 985464231 239735129 378707667 880947643 982827007 977497540 924175528 335220879 493878047 378489990 153698990 30818139 307812870 808519144 80900303 118790382 998555029 989028991 472467561 429950233 116479651 753205337 734237066 738007401 327042960 337955168 757090329 870525313 701296024 517897285 306867179 848178307 930666098 641423262 994594041 512081574 143803588 455175350 930128230 708195298 215757011 854735412 73123703 322397138 26633670 590012974 267885383 990759890 669357229 150884965 470912466 892652336 930317732 919737860 455760981 960772046 977699945 995453113 623681870 985709758 367064550 271820352 13518170 282961792 113915699 268774845 849416016 321677310 597450689 496357734 329720899 315867583 397876667 379141964 868582836 251123984 519554411 788674661 654141778 378705484 950937855 575945475 68549459 726634271 353014169 209644909 286920867 247685448 308354291 103903988 747584054 751221004 799034619 475826247 380937620 707200224 77926377 918505556 571644619 730334407 465133178 73710363 450993678 109836031 736325753 771413204 385376448 181978960 539452614 134901819 682261585 767378423 671242635 710970472 923625228 44702547 966398268 724566861 867360844 293202907 197809224 585373628 274747757 598243705 269903091 822257374 575815616 110333726 21410940 689719197 317751160 611637819 341590462 138070388 761814674 687004763 741986136 735354765 53552765 951146818 668180304 246518569 739493191 218041290 636183010 532663381 504106561 931613418 35242339 118621064 802315095 236645006 963229191 8683260 866542568 163685015 645154361 536692697 547686527 106522729 175820079 146729373 610269495 243600420 718482659 877811262 570309358 81278681 186746272 344885560 108512779 33383688 407120714 175147240 883541880 959865384 364740524 679859589 863354133 584069683 103752853 950449780 213539513 915929534 316021559 995182789 308601587 581356573 211940385 393661794 303429390 695276858 953745324 270852137 497665917 434313970 970225429 176744467 869263242 181751310 377100981 16501878 875161880 557132121 469049155 442153723 770543208 607392716 899297063 612075796 655510371 335062462 64177128 304139523 772459303 612828076 834400532 873686124 835765495 573614274 30629204 127143723 944380596 51190152 450336934 677330572 990774290 508616064 366260263 455552454 821658314 230698591 720320466 991684791 896703259 941386634 827721715 272046462 4537753 833323653 560763699 672353841 974629631 570412038 504204985 76200259 866734004 949877192 541601473 836744567 795222082 589436335 956350478 455248124 108726926 735833039 208562960 76548018 100026951 898703159 682118894 258360778 212506051 30167560 176887404 26007515 772089932 200928052 69903376 390845007 211825326 601049937 677380947 305501668 340161133 669008431 199684182 135258962 999754833 39096116 59459111 243531175 197261220 791039801 292443457 729433196 22070635 110534046 542134105 341577492 5591641 680585983 514462116 476060460 583460771 195155616 286886224 898304915 911764073 339408739 23863658 544446505 708516280 900137444 496942567 745174239 184783228 871964085 694802904 460066424 268931380 124949947 595276251 564012976 53654245 226962866 872907535 438967495 805348967 546887996 946219281 165696843 940025718 1978218 29049598 697356497 704668742 318610177 528194705 83036179 559226239 824819869 833214889 82204521 157030659 902970580 331371619 892512726 304785339 695829483 231695023 288214858 380544176 830788791 813833486 945454702 402845928 299596902 444781846 636957896 455724680 582080864 681262981 108481224 245073172 220633526 512985096 693216880 390936817 920714123 930431339 129337487 525879974 322783153 262662858 259418416 189289105 169107202 27758243 903661960 290588063 859083254 778916206 867027004 779432327 927115994 972562885 579614958 303150119 313955072 911372011 995335309 978406738 93644705 356579975 489751599 927239600 859979007 44275244 621417039 925924054 714696464 908520510 679680773 315885914 310388468 717128724 243030194 76390014 138998522 240303804 361840156 370731172 232180215 771880589 385144713 608954746 57897473 413017990 819262692 54152390 9127892 363020300 887410000 982822650 46909218 179803140 430380557 811892963 538738765 14874115 299533715 855799889 181690691 491157581 961265598 390158784 349463517 468243971 76858559 475196625 241648456 527271299 206673114 484980555 780639364 769356169 905173878 537639785 326066355 9893446 85441058 358817331 884965373 229277321 357967150 596308743 58090441 144540086 675326168 533914453 620781357 272068454 405265166 84363364 913984028 572890188 976782935 726182026 370247895 771795618 237155764 17287298 743531206 564293795 723562550 715626903 646668873 811381013 368126799 572562469 128211227 108811116 487129444 58763168 512093518 257440634 470583310 889851474 380819992 314521257 930746336 518379646 432621392 91017782 866961604 628899726 693640085 931941801 761860952 837579292 511220349 664300704 353832629 264633034 684132230 130859888 597118753 80632439 574260887 576666451 181942969 694867664 192749437 470338034 366122875 76353786 29880027 462631764 811258318 864381377 339937351 132947 935257064 943634138 178448643 499149308 223642434 397377582 874895696 144740828 529343978 300651581 407945680 799771390 589792888 531003408 294699232 460502857 138780788 626945649 845373323 272881113 599468988 801324461 12468134 510948626 17753296 139780906 1709122 106188041 608299674 32498502 680421766 508410384 622781720 70106808 975979408 727648125 52735760 139771075 93260311 52371886 445571570 153951339 700465802 57083598 952999442 307010429 659935228 100655996 879720636 542337469 575690556 219297448 861551364 300864455 263749035 189033793 144317836 27795514 693134912 869152440 992439474 614140316 72453467 210697829 825072197 307920937 372745108 957600488 876986575 543984444 330842140 762324359 69272286 7356248 41678032 954526718 716644763 432609604 229349297 935963516 469595914 876537640 625194747 648319568 307640466 126648827 106952755 980250083 357517034 565726286 448606389 706322263 379872392 89544077 459679044 659956413 87039473 67016809 289077017 121127296 142747181 119254104 139173338 134412105 39218243 361475393 301683506 101620997 845837048 467123341 579523727 309452440 914550920 71569729 53691613 976496112 201145592 620726376 488183231 493157488 979884042 569121065 675463478 139833123 220468981 951955230 70731036 169544258 646657812 625228221 818334899 95944602 933581043 236412835 882698914 207461769 387252265 887371889 766965504 743835795 525189181 604401524 172959203 309703123 745016378 909244239 791876323 149747015 236232814 461709765 333766678 872702367 857764708 484989700 992019188 990901672 933287215 288091125 447678620 455648028 338892192 656814504 477152816 701197033 281823826 829848028 30087730 573380728 502171041 690077238 511538785 503687573 129770735 982778439 613059408 185900039 719662307 17205954 818445544 703103695 863341783 131540975 818850483 770527937 260973963 799879511 716660052 381426726 579958236 419397471 133228508 931465587 523118306 217459855 115264814 748996434 553035347 333806504 375995585 646144090 993626127 550376622 15452120 102222524 334614063 880957890 795520504 517056049 754528895 165615916 622307236 465486030 95452257 797587844 568089308 418839608 1300647 523112356 162882750 754198225 755185083 285253324 230597767 509115300 874805094 696905442 562131524 905098872 74508346 592812152 107686703 105697246 371806502 974509259 836988694 693942013 564253829 270760981 320190706 844217142 478687155 394870216 600750484 150498778 652394358 779586744 3903175 105321419 31969864 956795122 10672606 679810877 273479974 747705291 564487151 311849221 662149564 589609424 419816545 867840168 73002813 843364499 729848050 542766213 435614632 839528511 701410746 26825460 164024284 222874628 450379261 788103444 275297984 527004931 700520229 570673355 738938218 483515967 78586112 971951420 330265297 337520736 578810824 129822014 919625818 498445023 297984356 594488686 350139763 602422988 633658250 945853498 413328458 293776800 507473954 607401193 226853636 616509981 727303307 109694082 319158741 399459354 167894630 834345750 958921776 73269242 660478153 370594624 943754282 809165622 589959098 314392993 707518516 113074779 2101159 459054542 105258021 946988402 749665616 558654347 99180851 694106541 983719274 842718929 977648788 295621881 659247943 83656211 999458313 84463054 32684552 179846804 589781420 980046143 107232997 364015564 991770355 686239168 12554040 610293721 446254760 483923333 811166595 433572339 922381143 710517205 211445716 132693949 466881738 2953930 692426448 156408899 438983296 188681243 103760503 426252271 735873650 47136080 750060115 279922357 495228317 386667873 332888587 949227306 763789253 710988989 510410060 396299533 257536942 784748160 628688677 968573889 955279323 313541151 541501666 417247456 952174743 787549395 69231358 577916031 231351379 897039740 375086298 14152600 330676535 668834140 50372502 612575704 206192563 278235134 666677206 124687318 640487773 164209539 374030888 164090637 194690575 432203974 551209001 562707820 971513385 479654012 695396885 383229909 390116089 167799474 4591074 926210903 256905259 830765587 648610430 218305555 662368141 373018820 217879436 815210576 188238352 807381651 764395586 720827534 738190013 113292181 415008537 987079970 32288938 750195967 191978197 337952950 250783647 320052057 743023897 730610218 755093873 775909001 765575694 577570001 739525579 859279699 55364235 336840561 380832112 918321610 133859974 59818819 529145940 149782333 412231223 473950729 245867821 902113738 92778399 392961315 260689640 969861321 368354508 812297766 179231657 450103633 283258459 132060695 564194531 482549165 484416357 64555864 990283820 994084227 157263875 940747492 833639823 597647345 786040982 484978957 369445304 463435143 356341373 413944497 835292580 779914823 266637636 38217779 706911014 320790379 672339213 333239705 462129726 868078186 428359113 655722158 302817071 298649010 355913829 709590919 694563173 329197100 184887745 248586325 65564432 146459274 836355202 288018065 475296261 458294619 22328884 488505713 37932060 437670406 298164576 642243577 304754736 499715676 514496369 545694707 602129120 563543801 946003089 688126801 17033858 15812041 756640377 83522831 240614711 712705045 797043371 604072681 467217650 750356715 966222689 708552025 894318614 323018388 165537889 840673916 683345120 33200566 698344989 416955100 62254774 914506502 79251694 395628225 72271317 532968288 511732919 316340919 816635432 485274337 951644904 433403441 346316055 409197617 142380757 752669193 449803538 724743856 563124098 447982579 517895920 859668169 287786084 551861426 902327017 316272374 468593438 726985925 98602414 84855173 107999861 533623631 802034479 876102511 231786985 192988083 600999775 364353155 137536377 221644930 763581099 495400541 394127943 227695657 562088973 255476524 351657075 740557611 224110574 90887998 334156775 667016540 328174921 216816119 208561683 129321101 375487884 646901633 155695192 671547867 81326992 301272803 604642300 214969100 455139 216683964 261220440 544650883 554035745 60377834 790657756 470672111 249469828 32964562 602096370 713494604 991184967 864120528 60970239 529179780 794427364 174455385 878590773 135909097 151959336 911361454 318817357 15526675 454578559 843311990 508504014 982478199 112557973 810530694 365990611 758376864 552290421 170080788 170360596 288836348 396036065 898578612 460564867 568239086 599631007 291114802 900056799 247811989 379224674 272504491 809274563 889850306 263199618 766165275 651694312 317225004 17745896 468933198 88203795 696958446 514902796 966883040 203660633 956379371 43327958 223105984 667541796 209531753 843311896 680408438 786679529 707729743 881913035 955400696 116081034 505776468 82236998 687711037 110427445 93023352 320503726 502590667 296991117 855357557 631763815 392849644 134758085 447551041 317510010 992933690 644418928 427522843 831824920 871934275 89868769 459821596 272935273 176756963 953990232 24219044 74547245 859388617 690406842 999210618 739739629 950241188 244984037 785961240 258429043 294365363 854544646 625975581 822304738 303024414 900402941 535154172 853966860 150989302 699382369 528757894 634049715 923330683 315994788 384898643 798579082 836906697 397067110 183188509 603406863 961251224 404900487 646664808 744299511 63834393 270027081 583212940 365532943 676046913 460247058 530815317 210951436 711630881 929066864 117187513 250464092 783995117 425946999 308012986 189361760 332543219 474386512 164059419 721486276 207862652 289535362 277568391 912903891 758985458 508515421 724410596 308096225 646100925 143458717 32724936 275646145 721133363 137765792 101637890 201910867 667976202 489376553 10140253 313755553 992776526 729677365 678721921 793309086 761402096 941755398 966192162 946359938 928524147 450418382 889427995 378336323 533945475 149497637 947717729 343553801 735006415 941731997 917201037 292169187 488343405 267029925 114353067 206975406 537034831 187812769 179223789 101475402 178567129 62807713 176256927 821285938 346090170 299185491 816667118 506913989 273286130 331530419 90284090 579085030 982543880 51873176 467203729 368391957 276649262 711243220 339293638 152449485 492737055 761914242 747580323 509884927 316574687 171724846 334547265 69083820 133423175 881803103 901445883 115584449 661935817 686754147 270641716 133236490 449762308 743864925 912841834 568577636 447372164 18526954 957792398 752851015 117452785 753079977 307499881 853152709 778539164 551410090 871331887 101079705 724317187 842034190 340795452 933860773 103704243 783719786 188161436 836128646 687818611 285038895 458005939 242019668 868561305 394159038 672679214 883188087 43074800 317923749 757829384 326141549 346540308 615800748 688433193 592073745 718667076 144468360 962692883 760101371 648028938 157952800 512164944 632102578 152030657 746137868 3330855 605114636 301970616 273054120 832254961 945394643 234242470 488130478 364135433 200816806 468476098 140802508 578668812 234667996 150917032 5905594 973097817 939952973 828412255 788599611 963649428 882234894 377937257 939617735 851701390 257508973 139999113 821858741 353609737 358114156 277926126 207600906 906694213 697841157 760252724 300986118 184921555 896312163 99672632 727301897 751218308 261483458 353628660 821961504 81608552 815346956 656727214 110765995 69226203 233876698 654279299 895119546 638891480 509616479 629649003 547588024 26656527 447675946 58105100 181506383 681513830 237892145 752092540 589755500 372689258 372374368 924202612 943914816 819141497 243799168 469633933 81654086 729029419 498279539 919057698 509656807 86784038 22970941 863477312 901747047 812348971 602189453 658992430 653971962 990976242 742957242 222894298 575408983 35799311 440621008 910444248 673959619 500666941 930336158 685373845 178833170 27818289 708456073 103528787 501572908 565227199 657840341 957500286 150213676 809629428 137540641 214929053 747493790 729040301 729115509 198644948 327148752 618553667 143430380 494901681 695719147 882260299 890410698 850215553 72333473 544616791 256339687 135858082 212379008 510624593 132795415 117597672 728807313 710506593 990933584 299910304 481784940 472955314 971904622 122421113 975074371 210422521 76661979 82870349 690203421 884836992 925880768 232393361 898516289 505432498 108389636 623766396 168563497 238515017 326487624 805313801 427859895 492757113 939974976 348403764 608303435 511419552 390237499 537325780 894514295 937668767 243142333 380037841 779645310 402248482 583554364 795081704 276442085 949056737 801554062 890650037 759245867 320172716 238559090 911904108 259926735 95596360 870532346 68676668 611396777 648777452 89190402 123170530 436485657 367290576 107294083 971501014 470807866 786985596 894453590 456510955 669392389 114728990 556015615 226752155 998658684 220478121 136459382 380033610 131324410 812185215 514393600 457196834 378265373 419839646 678662843 677067317 361437934 702277179 820011655 212846953 492742227 628672682 657031132 823813218 623135073 105793901 323830767 648438121 962455653 834390078 339904943 806968723 34059407 751270947 709621948 878629874 630881727 467783611 718529323 405297189 16351828 57015571 769102514 502104365 419052914 864701832 449945594 150850705 890871869 178232870 906443157 161660199 95564642 877641872 814017328 110576225 627097469 503537512 406889168 747547215 138171487 813752035 961583652 208882720 308190526 698465040 528112806 966103596 544639726 615315775 754326080 610466390 72937640 664702807 349023591 241463342 41975994 589803195 328547652 508931409 608491476 279236059 63066148 208682041 123742435 806993508 75208980 241731092 94375296 433232926 392739272 565311762 56996560 142992542 127793991 632198689 822965759 139472038 781930356 611520904 57748412 533251838 338800905 395751097 308090350 426970646 545183647 338607807 505268535 315631027 65913250 825287306 469150852 157517790 978511446 98805637 803169732 539141017 462124767 434054739 776982812 311424752 765483315 851531478 720877502 547014679 543339514 473699296 245970546 533039425 140443327 230812761 265042719 211155198 342726228 420149230 235220384 841749710 792816228 619770549 220376769 180095087 546724040 285080540 536173373 141395974 841801919 896547188 736583426 986456044 530563988 704719071 52080026 942256005 891489218 103272167 10121617 720042577 170952031 322254630 537268056 751232475 108060541 703275598 796816383 930979716 321421673 855817106 805354053 529105961 763011674 88205159 824256091 797877799 573054835 620040595 861466042 591278170 104650805 595918859 332610224 745177657 16541083 812732989 585795622 112171618 341327105 690385218 969215718 195878031 317644449 720916601 732355556 538325514 853485324 844096457 853865453 716827447 936035112 427624790 721223833 759673584 997070425 537431106 347479822 582476487 924976978 390380516 226073836 361953952 866300591 475439479 965045919 116928873 759369013 348820488 198852366 439182898 513152077 630503450 625778013 58174378 747068580 299659443 391941287 987996291 805688170 640844608 13309613 252073914 425913500 673438648 238636895 719116035 500061599 453850617 479112272 100975061 933680381 503906331 691959460 830750650 96051175 120199860 527760551 332423734 140717131 993800256 651936460 955657490 751184522 861010797 577037415 80049920 452651275 725125268 484941629 544650667 465825929 831945924 155934254 437869633 40928828 915087559 220281739 845433777 928504588 19291249 91919361 238778716 515918517 941870087 876412405 893317462 128635841 309351898 959235974 820366445 870242304 578326573 409157796 576843429 615405392 107653498 572371583 270743314 433957487 485189791 440872958 651031781 21822539 652521039 493170387 534607802 522349527 261455511 820513346 814709010 540902209 500685264 623932810 390306121 383660616 933642428 212570926 567839108 899065655 935698245 579924071 250151224 368825241 987692274 217664448 711652761 482371001 477785525 640793460 222272536 485178773 192508286 778081074 995986540 482632080 872245974 401186837 960190268 158587106 749883216 27676017 716656512 959898225 4904437 730225066 119951409 471384848 237535983 856708957 184451694 848669984 872131292 900594343 756573798 958810632 188026900 972500351 576252796 328615870 245445438 192578290 811847843 740990274 24298687 34099846 711939896 201885226 632673276 841240219 309861733 766945007 851268628 27979385 330383557 657071436 454221571 352723468 743986765 548474487 443244388 136723031 642249728 493526451 283945725 236986105 265115804 225930926 144979754 100422756 214358838 954859853 254131308 866693164 542046390 595354592 428978932 409778986 844331856 807063824 397019946 662416906 417048396 753129422 190213596 550813639 905445058 710912229 399763442 954317053 467237719 426560544 195171283 584346850 163600973 492419186 307410975 508583512 132989540 865252165 482086534 226749137 20364003 793858181 577807713 767237527 931019520 970359214 789100855 716748906 230384674 524642737 9272751 139321949 719006511 780057386 376836730 104640825 574689931 589003013 529219957 685471567 9725172 128214647 962374717 255839732 570935957 916655057 753059984 702978130 954965893 901166835 555697720 252838815 724635325 48902888 374510004 489883737 44311943 369116981 133621476 895627920 965273593 743940454 900963511 762513064 63723134 518535519 550742293 615147989 915454475 930481990 304652462 651102412 439905040 300590393 616759183 835266565 185966786 246793217 406260469 702523014 908185788 313663516 923523789 165153351 481741999 256282671 226550590 711279932 88647529 114164872 679802974 213496309 907818863 245346053 15804975 963461093 115478675 846666714 159908179 282262950 663692602 600799810 804467610 453816683 168747121 422185901 84432966 59140327 625417548 851341993 538582489 840204873 728384247 170805624 163668477 481967377 236731498 228288425 343130411 188834437 810511295 731539643 316451240 860198322 340365986 367387339 466191636 746736605 202096708 272621446 993333283 448777441 647600444 603088032 495360010 365874706 583309148 862439757 343776031 26009495 989642247 84184100 661574722 567765782 454407856 340553855 42841310 450552536 492210624 354400561 136434333 699372324 67046301 249813439 571517579 29416195 693901996 73914666 410196272 251463437 25436971 201910461 772197298 467077068 569235449 904498740 567845093 515658431 569262495 840650479 194125136 546195314 383738774 792773653 382985985 272861307 904254502 75198970 665188032 899576695 25286830 350886354 230981801 838093213 88506104 712577059 358517596 262637424 523380884 953219909 357252744 454891107 459296888 460525073 772934271 469304837 181131652 325399366 111368932 867353495 719755813 692470637 374419455 548243771 633150764 828517830 711685017 378611780 995840587 543429577 293273777 209891582 852791120 47316138 651139697 570282605 927914902 731784734 38941385 946573515 528924406 642310206 341512269 697912545 95010687 532661076 594672412 107580892 68131099 414362573 452403914 221756622 340754833 961807404 343074322 506442913 238041481 353456311 804651269 235180694 877587313 564533008 742848598 154094681 515339678 92875698 955789697 945035157 623159672 45919413 66995139 642913983 188736106 563357083 62565170 842384798 303540016 616076326 38537637 122390381 52364740 949865477 350719266 544899253 207245933 637820461 353197069 643445724 946376997 708944143 791569792 134160349 220766432 135627509 378465185 661062740 948469189 463045911 415198911 343249255 889041367 160697994 740545177 471680241 462812740 174095007 295896480 835036641 257951499 6866355 517227298 819714735 598508356 780528361 496334683 77054490 575271365 237892446 316850293 583368598 493645356 990432838 90541476 812768100 152353682 25681460 39223007 182004526 6331224 35046421 757201274 939129644 397571141 185825204 377734752 129770110 64031170 364152071 132209637 464645452 747099007 192132803 787610347 608242406 674426901 453890785 676763594 217707871 965340962 285486557 342849620 128683971 564348513 362002540 265694378 820382434 926196435 248995559 804903425 515748527 224940091 786276768 923934102 920557418 460686987 775946955 968242124 425878742 113986000 851477888 237106697 968945616 584749300 675029083 214697595 709983676 39844263 183915603 802791262 651055419 951763366 918178276 887809917 188003059 6180188 877172229 836400859 648380673 476657564 144909992 767643726 539030971 610185978 22467665 331356288 975380985 776838100 468102033 492185214 361246403 851083518 876926022 825811347 318122304 167950310 75646550 837993251 998287050 612989648 37056108 413470051 84660016 214588996 657742783 317251897 668924779 440221925 936459153 16326517 64352645 76857092 196777617 754455634 258510125 180398052 305173703 699238666 302582202 88043272 506787797 893603115 362605694 265623959 78221568 92915250 416695795 260249278 23503187 134319781 523935776 996101445 376574653 82446364 930300491 939104107 886638029 427513416 984336881 86449084 987679939 979674598 825837855 532403594 444872185 254228041 879051374 126905334 61236850 700065854 430456231 792139879 635481376 41566547 566096530 903973599 762828261 214990107 795121299 664657459 979307329 696210163 143681436 961090080 803287974 925817393 612328986 336272412 316478430 611613028 365890187 362748932 291490165 831865394 535402663 847548149 589718406 631946567 185456662 86831766 466318556 888868174 796856759 923569820 515704966 960896819 559348108 9678584 900897437 48740866 159065115 946825454 700662006 305977882 574638202 206237732 364214111 495011571 853587041 924937907 350652464 246999560 842699269 702152056 747151305 769031005 946740278 209605275 65227769 82072684 944314170 645291036 475205783 602823918 850533889 460705196 288980188 215112317 237216581 408316260 648549316 3589823 793975688 862062088 650490960 577059396 925703499 805463730 671043773 828919477 804457366 132462417 618729843 250797373 127113719 455582725 474661420 600364886 373154915 308867830 878599928 120616027 132109340 944612105 169091930 429403120 537081627 162430704 650334542 704811252 397992239 362502226 356539174 525810131 779027645 604309352 716342812 633567351 231713839 674493473 807528834 123054805 555087577 961552183 545913880 136435874 485291718 326664143 642019428 243709431 459021068 153574912 908590562 139017480 889802039 72429651 780942556 255022198 384571472 121982942 674172269 95373723 562630940 923962890 199391552 751378664 46676674 645981974 721403084 221928275 522389372 458151455 462162448 269453715 585107257 794736504 765998139 523455075 858904488 551596706 926776266 929862446 22556595 20681805 267350918 64228260 120961111 279110164 702941492 163154727 948970070 761600926 779442768 946063543 789958808 187264365 679070605 585131799 846998074 839755868 134401731 491050503 337430660 500962065 72660063 357449305 285100774 256424846 134568752 973119290 342795413 25690960 172271827 703329455 265656105 708229847 312757051 297646419 782442466 461968846 869820250 145734192 20304153 188010994 66629007 523891189 309870426 964047155 128098865 666476509 484624028 872408292 442878422 900006136 71067885 904651540 960203517 296600471 583927643 742032035 940005423 604067233 183403375 669944449 810059253 108755524 837347082 886370688 214241526 564860170 929667313 498140058 662024811 103402441 254085681 713379243 438663496 75723942 616263395 531096465 310842326 883085249 419836515 942266199 673714674 820530677 593282398 882192439 298966402 431310094 976496893 973041957 425105430 820168833 515756144 578208491 200242124 632556247 852767480 981619793 471462616 614676364 33158987 456990407 303889629 766208550 347459540 906935514 517355554 117451759 33377980 122724189 678968591 972949220 781737537 710720152 50094564 22141098 98097028 480115156 701749919 954069858 993629180 373094692 3320389 315081035 9428968 979732032 455504574 920591705 625215213 641832201 168685023 101458045 167020777 54798055 362890621 848382098 224137741 650122103 399587844 296981580 663692752 161934688 164197740 803518039 717942188 811941759 729480278 336438693 970117653 313207870 432919057 306785817 387749834 890611426 675875785 449214867 29381921 619493587 57349284 777349373 340751858 946940439 836311372 867291498 158269284 686843557 664596751 166879152 334168891 602070417 107858061 937867298 703391768 783613324 507537287 366474569 494370857 382849075 26430862 739783911 578386742 496482308 184143752 263972873 309011716 526607116 161566477 209882046 553176736 170161518 23348911 5939837 399046658 195200372 739076195 800508585 69169197 959648494 204448461 412974460 88863117 612384681 388253590 79338865 497604196 787645990 266565700 935953932 913529062 435132671 501820773 488819564 327790870 118570192 551164464 23183943 890336367 24545037 970156347 491402156 303525479 188031143 407293509 398745374 293853188 86931873 357895384 286676082 289925445 386319762 918317287 939961331 599471563 277523485 13830085 269022504 630456707 462643145 549659643 651322992 393363140 321933566 559015441 215550998 77976689 473724764 546990948 165351972 464741154 567609479 814868558 130995230 548408544 508090733 112758771 927922037 353085595 272851860 958914920 406986276 954247372 109342656 963554573 269900370 142844561 93706897 565940466 959312557 806985505 354431509 4171848 18819957 814325297 260068103 919999547 331652485 523836731 58316206 764247746 944715592 723449072 622264799 597308792 766373969 2590358 234483292 713632256 109713273 896765190 881651582 450187827 757452088 4672894 590528319 861767206 650622669 349174851 666186353 960776855 771295371 49115713 189667217 503721633 957156981 135768295 888842929 820673321 707152204 606442211 481012289 140795352 678531432 450028903 628749977 118058227 905357386 755573654 2678028 351013947 664906843 632043330 93751366 823337339 479844585 214682001 710927594 558969422 744328403 385297416 744888795 249800347 914399483 833926054 729996211 845656956 304987312 214946400 104446649 873726590 116795797 776195156 450665967 753672725 729007337 406403337 96313524 345767555 343544772 640893806 778939897 521074580 404691716 324282752 306646651 646876218 676968576 280215582 941645476 547146543 942006587 758608902 980678963 594349221 964352410 715774963 171995321 212282266 664490003 423775252 564714101 465241066 698159958 118463196 143631721 949695865 999891422 795255100 657298038 99036000 600176052 86753682 877468326 141305270 772196376 701988952 925416872 17714902 219101738 824838163 647584303 512098983 409008563 500837229 710963753 852420013 235582479 745093662 238190282 924481761 251021500 938868347 530895707 429745156 533489880 773290302 536477732 458890978 294594400 598871687 248756178 454207066 468241766 241463062 591142980 785307441 131570592 257393177 819774345 54531615 831268590 547983462 132160733 114801677 951015832 899086024 119066642 603790708 575685738 184637744 573353683 743635290 23405542 512050585 392449661 632640922 428461974 815716950 999298984 693711193 950339292 547787313 284489395 308021573 492277056 314709719 513767780 777224736 852347490 79474028 890575873 370485470 164209797 731336329 951395779 287458103 885255965 979363249 240261146 437169669 777663156 548400733 146785115 838833765 270633346 708384513 353895109 585438157 854920159 743674561 782157812 64344114 359127693 134597479 258349236 205029734 235983102 777864692 98398795 92987333 888346476 976207139 958263253 909586743 905125575 402573318 61770904 181054709 26916698 21698029 629793796 344863795 292768223 183270469 52349377 971946568 490538323 231862410 229075976 481904796 809135307 706402428 538642156 453283323 653008948 291683606 476597527 166978929 755308393 779795266 492727243 997958353 744760771 866290756 833808535 175564838 680359594 948765630 146487519 319237337 697188058 23931324 97313079 332869759 850289810 593769678 524228407 437790465 365901111 936301670 684459060 30928840 797738080 710240565 592561071 590603440 668034197 142163691 292524181 299851658 648930846 171761048 739722961 727882219 832428166 421199654 725780910 58079580 222402263 346892149 875032077 73783041 192580032 816437754 852021727 412253316 950870573 977834477 564241861 777788700 213800425 52064677 560775476 672167388 332918361 106762803 63489006 165861629 994043592 252064267 283961693 923927814 497994472 102871463 855723817 581995648 962385232 276576205 571911346 899351448 250817474 362249400 458935105 553039277 398663330 364117186 443910438 335603144 572712583 702584885 812856042 447927351 227431253 204810210 814965449 84249807 321281598 933259985 575519145 474723731 139322461 995628935 386397878 486867701 152031345 40085601 302934998 883608890 148133428 295320664 330709581 379003913 475733194 643972950 821043294 896600368 191082407 506589823 700841 942603717 303406916 699615004 894397052 999286763 418702105 172772399 178825930 200396014 910048489 932304646 783799250 557597425 92990808 586702443 832889595 555296551 853926327 261556375 900795709 716548128 622264612 935826838 646740005 966803524 35725075 760180947 319892602 908151829 910815135 274362418 464147732 137065495 409521819 517496911 72360806 491188614 719356484 787812304 532591547 465522173 766120839 917875420 115102151 962472349 670172901 959755383 503384810 296832083 468953315 995281354 810291365 757553378 613724847 333281748 766792758 540265133 370898263 906528793 268367699 680385830 555971852 167572458 95487723 240081178 467044223 965246034 692134544 918362807 756828298 697602836 596011605 573079849 871247572 268953697 235719324 554332107 886668282 882081996 428544367 156678229 992584777 725928782 758014372 391281518 841310461 114616907 367403499 488783458 355419082 782991425 651390429 511812301 941047376 669269456 637424563 409058801 142583902 580711162 283702574 569149405 15100079 158379792 846311651 186087656 419582559 460700382 684954972 110425624 239606583 780837997 660672831 8798612 281479347 542807958 999276110 780577179 719194565 836813252 306492809 794909306 936314128 880175688 891466293 590382471 237611252 147371909 464831177 205083312 806155051 356697970 968813708 891388810 656092751 806450943 426764039 26662329 628979523 263691613 922535805 91780006 428574027 754934093 552070132 914809226 597588250 141639120 554382508 513956195 777633665 934584248 224133954 376596419 415922550 981725728 752164800 449145129 816946358 40206576 956575594 692318276 765643222 826083039 174351349 40208258 968208161 203080361 759797881 843167455 68863685 754045244 960807559 132102231 414670309 143202600 727992335 385150758 821942723 759891097 847605056 158594507 92806406 69099479 466944754 52578000 972800617 597305370 685135356 199011305 994691466 59898944 801078703 843403731 20483457 499800181 308847881 499461904 617902959 363376027 272731587 609079191 994650930 785502866 575952177 132047346 644696169 181454684 657834568 616727351 157566985 464391868 468453810 102759035 386739728 905711916 714603055 345030410 582135107 439222018 411018117 443425132 218769481 600046334 805983114 297007118 615961225 363352152 957466401 827926674 825605114 190893729 399826572 941644796 601744075 225234169 710921472 456676053 786241655 744529789 192301217 966449563 93339468 222873820 617885745 940385005 626436265 195345501 113540971 725820950 353721609 836899022 678567852 372663294 595303074 236835403 689338106 239678916 283111300 209665764 411372294 946445081 631570515 986550631 862504029 454969366 983157339 335681605 373160921 7093497 717997640 913833821 213506556 291289177 63267457 193774034 502575432 78036500 258840882 875635365 789232426 541538186 44618337 783276300 644106914 335160010 952460469 399977355 105983659 311199442 197357917 411350270 929405785 375981432 855459750 749181299 382033535 82333125 73684430 791326162 292423301 173979831 816113345 214444162 361183861 544254309 331327064 181085545 921213248 758669132 906394609 128557349 606972224 651271755 438782183 25509263 514606485 37080067 256120690 916606475 808521000 200197697 217357686 198673445 683170290 993444795 833855011 586558107 297964572 576417046 335647453 22609541 444492384 544917045 557843796 612774266 201732626 623260930 728001970 255101143 156018086 507806071 813156468 445984777 395134155 636444664 984773039 140193687 242072983 501297398 33510098 175451116 479065083 807546791 764967555 887698425 715927406 103173572 419145442 836830279 700341564 338863504 918677420 79939044 362452318 820945618 691722315 51049305 690363000 952877102 792473549 10996163 218194396 603242038 377036285 817081318 914033981 965382414 674292542 633555606 184166782 998340782 566592246 140577149 791722881 782143145 660480818 176997559 149259067 679551240 500080405 461110049 138806873 107332207 666098861 802749860 199685397 411728000 719574039 170753735 366136520 983621098 643025088 738896963 174026190 68204806 258210019 745320716 228861160 83728120 662834056 944995348 537727169 745499560 636176138 245875407 175035034 70818388 861034022 13729316 924016006 557659774 796527690 765675274 711423317 563593137 780296022 8385454 26358303 742851465 195876041 505059597 580569064 353050579 536325858 971934464 469679233 21082842 580632167 62450240 564262470 673863966 981245344 755678677 466993203 866459918 83643159 167501631 615609853 121721332 599527285 668084044 880207515 208128293 294618296 164493571 989769401 383875031 838129237 366458042 577216794 608270389 280093890 759746393 446144601 976944268 46835206 786369463 180967102 788375619 835901693 97029275 344036854 121690019 149575795 292111877 338077806 496275176 51654994 475331835 371962397 490716509 789611655 381971179 888089035 678933884 873953646 428701951 342877424 163467679 668521143 873272366 521719395 14795844 449807847 891052823 478573931 534789808 351907062 430323531 631613731 568089110 816394953 934771420 943266762 400469478 141140542 162358221 532316425 8540097 62245701 55570035 255628402 661291752 52301206 287479102 460386250 477415463 690491585 308470440 989113737 71959997 577783455 386658670 469257899 334884779 549971425 578957682 785042979 660336039 82858612 130561619 356903350 201480854 251247302 870928044 860701003 474890321 663622945 29552937 305872411 29122336 497227158 378735280 400937414 99260992 959107986 527733663 771754538 18174205 706002625 794469504 821810808 181329774 243657778 286649617 888317144 92738134 637459424 92941470 701515107 122264355 167794196 394684724 274710098 681719855 844231436 414523570 581454291 484146603 548434778 194703804 723248959 430309582 303755346 478358879 522953807 157001114 397204328 224045449 370981373 358718617 4611507 316875932 981613970 715875905 636625639 870524841 270558232 418371919 39468581 921079224 927050695 38197934 41440783 761857545 968355435 822103742 962050999 958331939 650037644 389466879 949528958 105492814 969623431 806535955 994676371 173203857 744402558 472338564 936058768 579841607 650553727 373572104 153238787 183807745 946821036 44050700 602086491 263186565 158540072 119125463 670738345 424004015 318839 221400635 299726202 228839405 225357645 236563380 339634179 942698165 670555770 16468002 850568105 940272389 216428480 355113016 30854033 634888364 435423709 830969947 839851027 624687381 823986278 714027308 195689953 433273341 317908106 11819738 592044554 364744477 778206282 185535331 996161966 553931650 250134264 445245505 394168012 536000445 921725349 987548011 606729804 530983675 938850738 490044064 146984841 707931094 399426716 183810281 20319222 881449502 256391892 391366510 344139780 413482337 304666273 144960754 551370642 619565601 697075617 553539393 222941309 806397787 646522146 748357587 237098613 507403086 271166591 613252032 298299477 966957084 539880468 504850206 173438144 594223645 685479606 428778445 408781018 627207170 805841176 536792640 498088440 788194430 386247883 142177048 100609085 660632452 541313925 71244831 10578107 644316722 804364825 843607685 120204828 652793561 545198592 470740493 137003409 838235200 334390242 424264704 975060501 528617758 827593428 239339627 422381242 726696316 158620809 625454895 784217071 59637826 801114396 942158892 456051480 525656961 461963076 210195372 273485928 628351874 559974065 217146148 357360520 839521372 406678862 608499579 395504627 877265022 51890877 58316619 902755486 37835767 895676328 729611948 758484124 621708566 353308415 944750748 756877274 133052929 290210412 603696320 675824535 996655030 847309887 278459376 706560852 206993286 427804111 629505656 52142211 84283536 326674027 835623624 233710132 842445356 260639952 233172849 364242905 631218259 973997865 170956464 315742898 55288227 642119574 211899425 342027587 575843232 430902430 445907489 471763622 410102814 436143063 608089059 205219026 358702862 438473592 229022538 444021704 875800048 584915914 777699192 205424604 801760252 569208758 351133896 519192522 879256327 112033050 727424157 335350702 600244875 719126668 224108326 304051643 868886133 808901412 538547961 470756955 572943598 373700510 918462522 918134452 822869718 483894792 669479960 770891439 502708312 869045188 292447776 669460519 939274236 377609502 605116805 812497697 233999848 931383694 470596659 800733240 757742877 689604384 299370201 852953487 407971826 883593736 873385601 994350646 584091147 657593169 72721548 366345135 513678085 549808129 205079337 568785970 846906527 888970046 775673141 856486165 727294050 658449140 783810812 432485434 13369117 260935522 47797627 992530358 834319166 797840394 101693572 911138479 124911200 697670786 280898719 304053275 671786646 304273521 478083311 634178096 293035359 894406138 466735068 144088638 859382283 367333633 864943907 290636233 966829904 177552869 177037078 283958417 204794607 740085169 154588409 144770728 318257382 185830660 718324211 852426654 797790788 361275790 36154842 52086382 52086921 704358593 299191657 264463944 233618834 232874115 202150347 935911547 655359761 936409593 33187533 658432975 939039222 257534868 210809539 482215048 270535641 352580515 13775444 821866976 639487869 664189798 280132914 80751231 116155621 564770902 943156112 914331621 814673481 160744210 870739068 216892421 144489336 455834601 986974761 986575660 493416548 922280266 676607084 963309969 111247192 198537191 126712123 281818901 400148829 119515227 580900562 900068662 661181879 74886849 321889017 358262032 483433723 988152209 595138360 262042275 584636790 63639169 717281144 51059516 671294862 674534024 210789105 977409721 361851782 368573680 992148594 424890454 787971929 628533538 117091284 794424741 34458085 2259136 659950490 715453935 837473440 825714273 651047389 507939893 806646797 974150468 243111231 323551332 670333911 581449514 204765362 605920677 351780722 255266397 353469075 499313473 750811736 147185989 189461571 206371623 359138291 92247983 893307241 866595021 225338018 32239145 211644854 800152484 802649485 821873472 389331862 991379832 209037138 729680148 418301365 753556467 496015548 124294731 80532399 633935357 793736483 261504385 152821949 8171040 14952644 995816683 937031840 536762822 319300862 91988309 964580831 14055973 848234025 719079207 624942358 503006823 835664801 638383008 768810337 370581594 803065894 84397377 970796083 892119366 135787792 812885544 23713808 410593158 238978669 271662978 382928112 896456064 284971533 656691459 86586138 131728408 17003798 53656349 287173244 350175696 521979117 810467135 121057716 48710911 879209502 19521410 819177406 585751361 551223211 415441348 945264867 931398825 417246619 599511095 138990054 461328539 18665809 619973284 346029035 842317970 544614972 11367964 29632996 449377307 218284963 56800667 888508301 37943078 588120635 963256710 318528047 435806341 999680627 317503134 956094899 966781315 170144752 392637157 379912483 357711811 220508130 109726299 95219394 29820196 879937622 114496385 383141717 184325468 306734177 751165548 768245227 279701498 618242366 246170812 740934785 627770983 343648545 525786820 340233923 242536820 299982887 662389814 119480531 215392616 447340120 689615202 284429745 722784079 584068299 41984003 16271037 360802308 966056333 287522573 180893778 98606385 205948791 941321273 644020341 808741051 375411304 657949986 107662781 424894102 724881990 494216465 481135449 447677565 266745334 198329672 972446140 568613903 559983815 251285816 585224970 583220975 343994711 494063728 460763483 495941840 7400923 856854440 882742916 698537785 62580052 86737776 805608514 496075963 127362120 372073187 78430214 499510179 189733202 448147454 736765617 138660965 299518610 292587939 151712501 381211107 934869911 553210224 936247568 410000668 984967908 191086172 587104258 241539847 771438475 330801523 955014547 556103114 531210325 600677448 739170934 237895165 832191414 286024874 951280159 895123703 97815137 42866111 4911584 359275934 83520602 623542606 166498428 819026634 333730189 880322848 127944311 413836334 193608329 24315125 317650079 217838884 709083588 798071718 881218526 483053370 191142336 966070060 909730386 469614233 218608724 111792466 775843908 542916203 836194457 666872519 113107287 334570160 312705877 220265936 365793277 94612790 55538709 984552223 579900818 629295381 146879385 34643553 546179273 827648261 420269870 300569365 868284981 86903935 817957525 357674845 573674189 895950360 76030397 48989274 251426870 418150370 78773949 751498400 962347054 769222865 603663691 5125106 313369519 672892078 488455425 623500862 303285693 82955688 473285610 48739635 152873441 737269313 421586466 398117038 135798153 241115367 647126480 853951392 576540768 115039514 731111267 952224980 993903384 245626613 740351154 259927773 686516151 303361138 845387439 661743705 543452007 89506177 807158861 673486342 515603389 81686121 677970615 423865341 145275247 999224223 459982242 519610221 509575857 57788711 90063349 224275786 836313959 486352304 908975070 750919594 610191816 814933865 821710837 881517752 656667442 994348881 364222149 680780488 476674587 53283694 77151265 450443275 412233480 646291642 746570913 672026977 756526861 68627342 521298824 292266035 76930062 602566075 131151553 306422182 652994089 468245216 675237577 804367879 745748550 570654856 630891630 342796474 308694173 986978973 605063049 508278768 996271638 20826915 81150476 135923671 682347961 846718698 446400608 947705735 898255869 374930865 987550173 97730661 19960306 367363131 385744177 616480314 792022982 413751356 467202426 812614943 429276994 325867652 719173765 741809182 345438783 129139176 5070313 44570273 235966237 915043487 887253529 649702858 794797240 167125948 926097766 597556186 217736143 168299114 55495583 999265250 872914527 724528065 773829470 683359855 87279468 744278634 679357852 177834098 834111263 501252640 620253795 542366442 846954037 838059041 450916279 931090948 551103192 925043884 938018775 33733894 370499703 501490797 339952216 498813343 977637156 915745923 867731799 673008250 63671250 718556309 438397893 75539687 335180530 308504896 273971747 21439794 877310157 628671662 841259546 393151093 369658128 931120163 496875303 719454305 542874071 963175881 605710302 673466445 550615592 98880624 498003805 132569672 526617857 980008840 730454468 337731943 496908858 172132225 898582336 376543474 153281395 660300597 459810447 429826552 830087103 747291438 360941070 393801286 654088223 897347895 192541628 207145506 993415461 487324490 487437680 23052866 678839108 689854023 215862877 623773157 310453049 375241110 909722528 970831881 507456915 140725075 905334317 979586065 693875542 591959182 216101136 417104233 514445982 614042244 627864491 909266997 414477724 124371340 688200982 762528241 762737095 309134695 505536769 244571941 895295689 566723666 499258278 52468476 315839515 748236236 62474532 660506754 839764111 176232067 688901174 858758795 64411167 136136135 832202870 639103861 490549291 62865372 477947034 828805136 455487843 805917678 661109963 747104102 561618602 626445807 229257368 648362518 170416429 388893839 437974305 389705998 22282267 912081989 590219720 228493640 237863441 900390858 580196132 340365524 246318743 560453927 754919369 625446435 272727865 969393320 292041436 378581146 955069991 481913951 443375939 496862935 575865502 354130842 550058158 930412061 373773263 874562902 33101263 166911115 288994507 215947411 462506028 893982516 783688651 998514921 700370324 340071021 892085284 441590876 273925456 426578592 313701382 875159885 854702746 854758480 98050864 276505888 518909089 290377656 202939769 935933623 7313945 481852868 790424492 469279351 175503554 751957819 824458466 970278097 689724700 843775371 44035258 480423219 565435630 123023299 762364945 5594948 843873317 425389011 832097478 781416513 803531446 579339387 398478930 99283078 250434061 963429817 690685175 553912194 851049918 621693454 950625552 256700196 477809866 614912735 953080157 572811093 239884729 403094806 533383797 843540516 396204416 499951066 501605155 284379915 681339992 981196761 348929626 344682546 998442313 349389256 790476662 194213628 482315592 392068209 32107792 609197519 613634073 415561007 156456000 773742963 100149359 529635001 646442450 486669608 646562123 92558590 619148432 282544134 697901796 489816851 75812893 201865546 845602545 915092332 830089874 337123404 389816059 688546511 610127700 536889493 132671538 141371981 780351092 843819223 408649485 433226314 782665984 664672910 428055144 298842973 36903180 347901310 353287311 135664837 488145085 424500039 32265918 630664784 873033758 310999605 256679817 450689855 986608915 746628118 599989797 72643656 261871111 107583208 99461655 184964125 857558826 178484028 325183912 999803892 54350575 717405761 781992791 43700573 992454308 268067134 479872124 439173309 641792126 105870681 54088872 94943570 551423910 13921310 582522902 821775662 125083341 749958846 372970494 690106130 646677683 714764681 404812973 977320183 232073060 99393036 777285154 751056644 752137275 173165083 544795592 534849005 737519535 579220297 483448634 214564224 887186420 736136199 877706238 566334409 187400161 388759046 324238970 641815958 205284723 439750076 336358060 547153263 462726419 763696921 525881685 674437171 305609696 712864763 901606452 48863357 349124132 514882740 259031541 566507928 474992751 571812461 972673340 765939844 913469717 963872624 684777246 260153837 960292200 508456925 876418892 527896642 796671025 377279154 672572008 334723552 783916867 653940203 215530102 802914900 73637353 58212015 862449032 715141700 151579285 813448621 495699895 812785126 324551052 284371828 951827864 259336069 43972969 777228103 28320768 353893585 995835505 413895585 100432002 937453597 155089751 299247836 896296977 359873891 57720363 557714936 686732406 963713778 940036444 956432608 219127965 530845978 691502565 370324101 999432647 688020833 592953928 150508031 579184411 552556815 928415493 797615554 375162864 271009918 249717140 491518024 983752664 53106891 583790037 402729282 159270072 198731130 139607164 765932414 90962882 588778861 489355787 545334756 857521691 877293994 230117994 519005426 618989472 867520285 496374866 47071301 726800645 750251652 904693682 286760366 744246748 732372087 891405932 24511075 471190067 742059145 385785652 783510459 90015760 643541698 155486047 257961141 551654117 544813854 628424588 80956524 285962059 636725115 409183228 803059924 437200025 970807003 454116015 970705192 205616677 265075960 530013524 844198291 452361150 536425738 678589546 314245533 234135308 605641940 332394909 286111203 735068364 982513284 982923618 443136948 821679113 946546634 802395669 97922841 130437278 804251354 667310007 216752231 139279394 930824693 71712639 505717660 509486991 305785141 594663899 528168128 292460410 374440629 766464070 184432566 799224814 708236309 639597180 98388677 47187402 701587857 158468846 935788412 134024627 745534805 946552272 657538506 858354570 279795303 335459643 429981859 893735731 362817066 131532268 658054865 357715342 50939628 937527437 732846217 890240423 683840074 922074442 645210254 840004782 832552224 697206933 825648236 21135993 890131082 962395565 303007842 86682326 797632738 209687344 474444907 224443197 320421861 117924092 21926320 812715974 375265873 753625010 557944239 24868067 529543049 477216914 386415542 227899982 87462248 816187078 460272566 794275061 348462440 792632380 607165710 848197675 522310549 246605915 926773238 691678720 350119137 775766308 683986697 755897949 891647252 561297049 247779901 803698991 574715255 111209929 460516506 761864608 19298446 240467880 840794388 381411066 921336125 609753395 698050755 839522215 295117662 244257525 714926121 255698498 543231187 950816498 842399250 211180295 23783442 2626639 136911361 742556566 906005095 167148144 595678584 430427339 694471173 531076782 693169120 325074194 765979420 131313333 113627902 191194288 662765200 544258382 155921790 104245196 839160291 667860151 892294764 457253850 223377213 27957719 283671230 271122146 777310506 992121934 868376775 106486896 171655622 146629923 194759105 932897154 757864409 387232775 905088994 952062182 248402693 555338268 659718561 440366309 556395292 511264120 441980657 556115111 922908439 674795410 839855431 988756911 12106950 622399622 246170422 215355272 71636165 121639890 183699739 701269711 57267330 645435370 440219759 317718592 511410594 506496715 539762076 150581956 996290320 35295479 845085244 419839019 849686771 743583443 701547022 515624701 346040117 75329700 521190238 536847670 438513470 117741305 147522528 546846995 445359459 877696893 939886605 69174575 303215889 937109932 268784253 176335789 219765359 307064447 785830885 402545621 521010837 803639906 19832479 239647076 616080317 67378694 922428531 222225857 919018622 770473773 503114781 182082574 611244732 274253396 739463225 271268887 686672873 31105575 606167483 445780609 426375773 751398867 955928530 816787238 114054587 920509480 64720693 891364705 91989072 688568333 667032335 588760942 994037171 372137127 721922320 439675806 757354355 746095586 129712212 394533242 53382548 970491158 523472075 965492663 406124897 687530116 919457350 175916049 562964445 686473617 804476135 318231441 573059271 363058932 571282578 980144124 32412728 981813487 823359408 24994277 648549607 887219778 878394902 441479224 422157035 691718841 296931636 282482219 459795031 56385536 51510373 640767884 636945789 181517270 36615458 729018220 149237601 503493361 124270085 491261550 367229148 881852990 1487060 892601632 570895742 27962647 248155941 684736423 628379428 305920949 97892354 261455462 811090504 936961494 247479591 895901919 373472470 245327666 337618787 500333556 962401619 259535557 796698941 475423276 545156532 639536516 547221192 254840673 285920072 647962326 73825689 766179231 120869694 945053744 953703290 952749286 883454475 929279939 228442321 877701442 811315060 555843773 392339043 515596924 579295296 595486480 447530946 264189830 8324740 469397639 159338989 18236176 233567014 356132176 213283745 532922778 815649061 162312051 649275753 759498961 91301862 561347657 409061388 492717260 207844401 785521312 966150220 262928230 635322532 314914403 339614708 377278287 424987093 887282972 498845105 657592996 584324912 857281886 274015354 764094551 156410240 896389637 13177489 837041927 585199443 579694856 390892451 529418189 824491059 388753959 623319904 571035616 172086331 627407447 811206252 122249961 914705112 997967309 201384746 513684354 752429116 598474237 874150920 866491045 834465827 568669576 395705173 524703645 738271819 77341678 581352835 260618392 534751452 825360883 21101591 211490563 603272064 434907885 659764181 966180315 31757098 348721593 164399495 725381778 42937311 980658513 360940224 61170485 306356210 793779077 309933915 77542489 825139059 148345463 312936560 573539849 957556768 925249024 499931060 21605539 828547916 108344049 588678466 648703245 439775926 308468736 370989364 120623489 619764850 857115799 783698035 789246971 213280200 859674676 187732608 866728248 941774981 353853624 209941625 388143812 921867618 972845575 26182307 965117544 22765923 235724312 427201143 624256673 685866313 883242697 417751424 178651857 257560058 103911272 411119143 938869280 675566164 504304924 187963908 90294112 984902390 233449377 315219853 101115548 679572532 901085349 339831001 33421570 507723261 865153094 645251814 860030049 728553794 348357966 642865135 985171665 118288095 706631243 300199382 162241865 402905130 261962038 692456852 432079139 262510499 435629830 434360209 747148047 107210457 568352078 636716214 249158040 904919404 875386432 226198467 994291125 723092085 320080858 334132475 107459291 701341622 476780976 23473696 602079803 565780273 959380323 292272788 724654546 595503112 667657859 475438875 898223827 226855438 979246220 31618110 806923018 321059345 16939959 900505483 487282943 805683765 945907699 529668244 134634587 350591996 538357369 21424346 889321089 134498623 697324690 481833758 569330647 934420698 799864301 192370643 538505146 866607451 911127016 377300582 352552522 165439390 574183591 563655873 249879703 208629990 440629213 262751245 691247833 483264263 304233990 84021450 500197688 360615600 630627557 568773963 933522639 219803272 105745558 822771832 827789249 745534177 747937440 349565413 771978787 688088382 155241170 447666517 154042500 453754622 493726745 530451170 20044072 926830107 871173993 158574907 574787551 732935539 272932053 322337954 674634638 242056859 31468042 779859174 615679552 405447671 834688236 175314417 775105540 979564362 455732823 743375210 462442247 309938438 427136458 366782581 266903628 662049615 510232211 748095351 265233833 209456144 290711902 451558043 780492481 907712796 135360519 842253034 812864091 298358601 210910161 357295335 840471220 219252980 815786113 575892047 339033565 685251668 182531609 766151036 344245977 276277456 988012628 150737875 603670564 949113058 428180647 531932114 613422571 314024878 106488169 940519976 970761717 182342927 769373834 449588208 862220001 582229959 541618632 455897481 39903438 929161451 536245863 915466398 436352745 778601749 647756040 995009870 779182602 880483960 166286501 357577135 411048330 22563449 38999519 753290388 243051442 439490647 581001567 412652900 312333736 762203022 534111000 314863919 884471847 442452142 997047192 587425196 386753218 9284531 869308461 581546253 693589830 769097448 200575693 848957610 813477234 683876487 468205446 113159308 90150461 26500424 837569850 828772840 301670547 222276588 939164341 608930680 114537188 891824315 983257660 232327254 596544864 873276145 664436499 294109175 717229680 448663015 235682405 996561976 7473804 167307055 357493939 655974307 616190997 600597387 163049561 548080621 802678154 801936740 647138628 227558238 320632809 809490166 554764657 541274279 517658196 326537206 397303794 83470635 627637497 908618791 672193573 905227859 768071389 283637936 756720954 614291343 627901700 455399789 793054026 300105996 680508210 823867328 723003501 167160202 543435503 433129917 128410953 201231434 75289389 63812666 226078794 53409404 902195830 232725634 550089180 796121454 812337846 144583776 392348107 847004509 21926313 190303467 428843425 392317317 323211357 369523634 631662041 315447308 498946128 822270515 318995886 16709442 152225303 580932539 253618595 699484468 154276823 497709773 966226535 399999131 713126905 529517172 410147522 393997970 546486766 231593118 411916033 137057737 165567239 562120891 579308823 198959696 92908121 46912528 767071342 293039856 447665636 711428675 111855518 388153710 755727136 910055014 847377426 237687473 359427985 149633097 417159877 692574174 371006249 784271638 5782993 354321530 596742436 402603814 518399698 177165793 119955163 400503599 60837393 419626693 84671022 891883628 339556020 661442048 702162491 433604030 518035465 346689117 746691338 860125388 728538784 769103448 874728857 385701488 370072215 582497699 589767128 767563045 669543073 465664450 617575243 883191604 967447283 370982844 936199907 632326921 530292382 18325030 976992493 730675489 953997610 964069399 636150979 94457457 774585940 414365819 879912975 187516895 157411671 254380866 714298770 78720464 954539230 639918052 345962192 97775776 604038806 552822191 333708822 214371678 833989919 405059210 494002598 916504931 853007622 607712957 234550677 85561202 997392620 554457960 406012023 491157756 779766140 88889092 475872540 172668057 601566183 109744313 509828958 409871798 999651029 220584414 139608598 852576603 337863666 788947788 236054651 902612738 830792360 762969176 30898842 105740528 151916384 984124968 276649276 258993120 610538101 290671734 601852879 784892750 89456673 882005404 766905430 796603173 941268570 861150565 923484323 990548229 934545065 851523048 821967808 800409577 316935124 332504661 924678746 498210076 860533945 875688612 318739264 417649717 765802576 652056415 259744042 900869635 303535432 293745846 498343123 115559962 34178698 334111293 580991984 457205368 724399678 147507393 6680809 950565235 402946072 408523694 238793061 205562770 248922923 723784840 876027093 486490385 233934275 892370832 123055676 503094901 920369384 892321472 677328623 189493562 348018284 539934521 554170301 175556999 45350410 381167212 406253410 957744736 238325763 46999276 311927087 670406120 315941482 168932483 913936889 246360503 190416861 982573309 513927662 865960832 194478749 358137944 308684712 232851652 65364300 566840222 405612379 554572994 770996938 216580026 722260106 933965748 303844555 410799147 66137699 156177425 367507816 353433811 607499870 859958681 188381937 759452768 498778569 168154430 158274478 657092446 238559816 826192716 824385218 527678436 260503333 549165230 390530097 831881987 40333331 97685514 411146422 815854977 506953443 833424348 305513964 7572462 875424111 845118682 612826335 422533903 621844968 814024796 614575044 714205435 82508675 180606453 743457398 337503078 899876343 119442006 677480230 748446574 862322766 888308894 190219971 745169169 426202192 181146205 712966304 340498166 568615906 43513029 439616969 910817379 376341796 139794481 32936322 63971240 482435712 565238353 141345151 858900424 293593502 695981071 798480770 286261823 219039205 43912083 321762658 643692066 634131213 486885182 160565933 429197155 438198600 173147105 687111897 791256665 251859464 244227568 978525615 286215252 166289916 179615255 401299768 318511814 936764497 887716141 260807462 979988626 687723300 90773180 388125639 256764960 379073312 626389769 302742617 525604450 427922990 659946457 660885533 594246681 11278734 8868389 890716389 524995406 146538352 970436783 946752486 328870043 293560027 148783959 19974353 662371101 313784320 335869310 462303399 22835311 540752364 478576561 930152717 214950476 608441240 235095626 526524940 198332716 87547758 775077942 268709269 745142514 337805438 156657982 878765621 148700475 842203970 202541818 341516983 635389402 102497853 420192146 430511321 341956006 895215770 799116006 898755162 708023530 971919296 182832391 909550033 738015966 930040180 879207942 727889542 559408182 159897409 147053842 685538412 492078362 250400005 869284882 338327006 57950045 426912484 514416000 655765962 412118662 437670231 187801086 362027719 413792656 47929415 770631850 43555395 177717751 394441610 610745654 487334252 786262920 546206534 751699814 463029267 155945138 58687315 762334112 703573756 394088634 249474516 523941051 371295809 212192576 670297443 500936850 641469516 329238995 919392534 271589190 182405896 857996198 168232346 915361145 74013700 841710173 518622754 190696411 877107136 584383753 821088497 839891366 496812493 891275781 759578686 555278115 307752609 490479749 356798772 869844265 441677036 630423473 751154120 869050849 479468165 16801780 872299523 682807640 254908725 40979267 492065028 793563694 685069636 431148816 512265728 687404013 113182014 261275424 794552209 364244229 228326664 227985854 445960465 607761757 114976902 439278452 375109354 653117917 104090810 597208830 208967085 287495089 49667422 811105439 381964337 41450040 128127049 719867818 352120758 495916765 10942390 872171938 636138443 269104874 167638162 99956590 911487371 397010306 826347073 242104109 236140968 127385883 505381821 483277687 713606548 129169739 654637482 267486197 508985426 624569664 605937003 615822389 250646382 9022723 325486608 844404877 466747735 379498797 499910843 444059605 686129972 846179368 216762069 228405679 89895375 979804719 422195461 643783684 227144904 342997743 894018679 368830046 861551325 538424339 758734368 33979778 55475812 703484729 491695274 236006959 418216677 715051239 38345130 545277702 363947221 518292161 198607690 851565169 635179451 944389072 394505533 882605745 515988997 96318896 989660758 559640145 133048706 691152506 134038394 606135629 730308888 523218113 135528404 531109932 681702503 706982287 760250109 345450 861965606 284214843 163072963 202320602 230778651 900984345 472101230 221535198 366925933 169021501 802949612 729655911 286830015 911001277 91656716 277537130 774090042 905202694 541653501 929461470 500776096 371732054 126070738 261859957 648705629 453382717 28107532 153548253 395692493 952711908 324506119 289170186 639591833 874565661 752298607 346268715 219862100 693042462 936485471 739944536 59584301 895171919 857030700 31609440 785827455 943862075 375570953 832556030 853022244 614019990 188398799 93007629 607779965 499130883 433844881 784803150 863988439 326609301 743244771 238206738 456564767 450076242 745621225 749266539 315801325 74966861 769663812 738774265 328875702 948358744 783089643 847114441 275765466 369103742 791243701 428488874 117708314 106632722 367698032 59561520 854296453 460773299 621464019 113778003 392382805 43205665 941624672 78539221 991474334 344382068 50231712 941531350 138354136 820602907 685423534 630233551 798076966 987516860 452921507 656155769 97408171 418623434 511564299 427446357 560307397 987138439 792126006 978727588 201918720 243159238 352751939 77607564 866746993 741796936 717242320 949897112 796816463 484682758 908988308 919079685 268930399 903364283 704232216 295688686 787705718 766900932 492220762 398255147 238495003 967492679 263431378 138257833 89384026 681333223 363823113 597989277 995215544 508574818 508258650 658356879 12269251 144264865 162392874 547930159 17984570 35712916 136194815 398422397 561822706 864510417 656398521 406709543 635080994 706620258 59593206 517662018 534512280 680726980 461355176 20772156 798869414 332764655 365525254 45033544 96863805 825542606 393129811 181055910 949463250 37691007 997599832 991524388 908436978 212622677 206452201 320158946 83779237 733207368 79294071 211197066 466697669 178811191 116548249 377613678 758560979 283083358 536923996 143176652 457387615 927941171 336843365 578561999 332364827 423331814 367804922 723787277 331627162 769961678 990421825 269695315 459846714 629921423 914779305 103430251 796893840 636534745 474183478 20328035 802263669 222092453 410781686 454004078 303153661 900247811 782157849 896432561 925343106 576775149 852525162 890305659 225895573 808477377 334501705 855909675 822698755 563928896 206232077 470056926 730577404 217830915 471790027 138479818 779492580 762444045 489100037 868093532 546160833 131084127 295405318 642213132 906131056 385794267 545672275 743849486 189133891 75915440 260255607 307896511 44785502 93667843 766572042 266958007 891209629 327265176 97999581 715125185 309601924 604370362 807134487 779266866 207257746 283118534 431407598 391095758 895153948 71513249 947549789 918110265 76678536 836789774 181108446 83004551 736295179 801647430 22774213 19266595 526823472 376788727 679517552 107743035 64379827 433279306 469880102 563688148 41499907 870063661 313352172 878252377 447075155 103929180 152422312 784875229 249825964 122455351 154510413 29685945 501845751 118001601 638662968 724193398 612988556 154181235 826745622 936038083 497188348 354568833 686729006 511812365 786498404 780647165 971423789 945879009 326333389 871363445 64294287 223672658 621829126 726921421 332167193 557444562 758955625 627939385 306011974 634258883 948610049 303901337 216688405 298265774 362264022 185138153 709357467 457870675 309747252 909431383 964982332 479305614 577011374 615168830 946996943 877612691 677208944 671916099 933977784 133460466 379771773 842747191 221505498 717908769 942508958 133782014 847391952 920041181 412997538 813993319 952438344 316970822 523172104 905780252 905792620 654915680 572422582 421937662 365185633 324923550 100534998 456530275 394807501 132644811 163331374 427876330 594477803 449214250 369574861 422703758 249635193 300669539 558823144 495162784 877929513 907886095 959907257 6072354 880432753 122959067 106194495 292768639 337753307 772438819 340083849 675095753 566471001 406573912 813057791 954747846 812833238 600049264 447761513 871715020 476546160 33476248 430864149 202969004 504957240 598685719 390995524 218608098 421705843 842395620 744219539 994930731 485521985 522043870 335549196 463791937 56506852 98189475 924437451 986058169 866913300 626497343 926665830 231746877 352303313 568210380 347293281 657221108 432559670 868834835 471405182 819824540 230217541 774881214 533544000 872097274 263419593 94652815 755532755 57604248 532152299 116846741 259304988 818814929 155168679 147777524 943643691 327170502 471122650 238515189 485413705 344644051 722019013 443211613 767484943 666510392 708697243 850218130 756453972 16768318 63725785 66469053 194621723 938533933 348789977 417431004 767253421 4428706 183392241 599186809 3258728 320929703 371591207 92593827 699086505 758640000 385203501 352400783 185313138 351188040 100580551 199060339 718918997 158159199 227979079 4432917 60045234 657670089 262295180 944017873 646898881 752140726 943095759 185033517 983843050 917042290 303274706 816441892 726141971 523206025 83004429 809914793 976607117 459579730 803629518 635516881 845954638 414606688 529444331 321479901 511267085 770095108 273036201 741110963 767461727 12343430 549038599 961697506 423640204 921471641 504221547 674434584 288159172 225819643 787112989 839650704 355542804 368574507 864936315 151305967 457444391 70137263 118181842 546195076 243587016 78676812 381403561 59547064 516393186 182194345 595674479 899254499 858173080 257754880 375232096 607805462 300550722 660690711 993654391 459087659 937317728 260535596 929505339 603598598 476823831 285522024 928572033 712457275 736148193 569662345 655444763 895510658 386201165 156588540 717355546 985657315 85994042 13641201 313432465 762424689 156734186 688474687 247636700 788581724 956288835 836244498 128824976 176646786 659195589 761965212 852550200 660400557 257740544 606926035 587875642 517627590 567595464 552620606 563308194 544793408 975388349 549410976 887999488 223135079 189106409 786421188 586035320 929998605 137255212 19833968 503268730 118973133 310605339 304175583 796027932 701179744 560296273 317107251 670662669 315985342 569264273 638249581 805353281 308729294 649039612 17384723 137409381 756202523 67342177 404935044 189482700 672928842 722494358 698878484 490310926 294364855 447012831 367298432 58547406 972881846 704099598 828934639 719122956 306277472 804745972 887694883 456750661 193558413 504392243 531167594 510671253 702084659 916346350 18606114 560496337 403341965 448974521 50065854 917788458 100120818 842464243 594218173 311325886 85644967 25673768 774639098 108051214 771686717 967688614 930751342 319303551 697523658 58172428 900424884 142334522 61341654 277066550 370070822 659019055 150066547 387582828 397814294 804146251 481104290 782090771 508185501 566481751 8175668 83445776 290347977 617147145 225165017 85938395 237142729 685129011 395838565 585986683 936634447 975789099 916856534 975688697 73809265 29007116 93583355 915642178 862877557 845906996 705999062 270850028 228944717 353987328 723006582 873898177 610139412 581833362 769807157 165267437 909662565 294298167 192750170 373230517 272865606 962082754 304994672 975244017 293959464 492023728 501003209 998804373 602011101 963185380 525344009 905823476 500224762 907466111 406901337 600760216 441022157 553198238 205574066 506268348 502867131 324210150 731921509 816475275 292359808 135293739 641378145 870168226 584295336 405397452 163770548 772932816 24507840 128885882 776275486 921440756 457048985 524908090 393577659 62373863 264768850 926538212 935549425 81872861 473152743 280062769 522310151 488368741 405157358 825506080 448769208 439236302 579122059 95878537 288211143 861334646 895868117 843451711 13303260 776559501 249098247 19804802 244004064 439981085 154146795 24285513 165744768 720242879 184482470 57959528 477100510 614647681 628568091 936521127 145497116 725096556 154318504 142187024 974046045 265936190 802804101 708223605 608247932 755228002 131658114 193112747 997912840 346428546 449011542 187154272 41136053 794925630 239538027 828584579 856711930 960312538 851873917 908460449 762787492 384762424 42597221 124493495 252042223 850951052 103645229 916891478 882795672 675883157 218158072 377097754 513600401 263641831 545544145 544831053 16092575 87014561 953661856 270172421 200514903 397112496 653684026 833498626 402793459 358968801 785277564 310603172 605523465 910723219 17091439 96560547 157574310 721198797 577914983 444836798 5983031 144683654 74206280 898450346 116294347 699889505 979259169 940274112 560461313 221025138 483049996 933116460 762191279 58211142 915919629 448425849 584056095 161336911 8863132 322753803 772356077 515603642 738741543 892460894 983105178 880174187 774305637 457343539 525302292 854768514 656672021 617436898 890550134 928831887 76394182 957198699 163157286 136383738 262190281 807329890 777193702 415248769 492493323 754115382 304439808 506500493 719287077 511422412 409179949 399469133 787661020 189143506 294383197 703271485 119754347 198591303 569339516 178057018 648608467 973981232 356891656 825212282 812312091 728524524 368216954 895525361 730494790 93346358 356786316 308972305 67387408 404933840 475941156 909993323 173420238 885674467 389090288 712820531 453080733 644782274 585791856 563297138 19094771 523932733 790916876 68794752 289510547 750675848 4334989 456044650 173351528 604137062 532164453 99752316 710792025 354601 30279349 772181992 983847160 37093994 248802768 716042175 647134414 335951068 294939004 702687356 824267978 720055340 394829968 456844539 409595874 444675370 972039939 990266603 182476765 928609354 221317205 863884847 213156803 745770083 573011600 64713922 778517595 587485132 221190728 326520605 494380142 64273075 720992273 897540836 450861880 575139344 149275061 228729504 403615902 247827435 853981156 440611760 917403855 426898628 376693162 118874893 843860694 89718352 227969589 545736787 228061129 41298909 77591785 692750709 833095375 285348333 63608131 653593017 579869145 89898680 542329537 863655820 268612415 194179026 617450711 718075763 730343293 237457564 995568873 138544234 779224437 269142190 853496850 395053701 266025595 233092857 683673347 129745840 691664681 160162774 682762889 415844514 466524232 370953935 792627002 205736677 928045565 813078804 609426476 182341919 820177095 332232752 552251239 609812380 886730561 651845324 786952738 672687657 925451158 332279995 759227209 708570648 28558852 514953628 512319520 748892781 318751718 891360972 703353829 861207375 946904257 226007873 867886696 656001782 871323089 679183170 700227988 260688351 694580772 615892279 402600165 891567698 995988706 827044194 596876803 130676143 374527348 883406336 903799176 713415016 558229111 757384609 802299193 442569499 160058827 701045453 457905266 112879741 661733568 606079266 564717013 578876126 267262341 403874526 794492659 589756509 488206952 450092173 804077251 27270919 1162728 244003437 318374291 643683693 362215737 11653551 922191547 514412194 452319484 816194588 308018692 27836310 875711648 988305195 5938686 380227679 739422908 794442789 701276078 727793784 785949183 502635593 134018101 861966585 248550981 953592445 497887296 254996041 969676739 162547395 612248401 444030096 928737218 872348348 558567772 583811285 190684846 224710526 376692711 263762319 279132702 101697747 447001675 948097927 158382523 259495402 81126911 915863964 440653464 127814167 775575712 237671481 482063198 712728070 888427715 450379847 744051584 677595144 20142875 496023620 703574507 666578959 452346548 99793838 919718233 404451241 137457762 297814042 528206356 315096858 121882025 766215683 701922696 283331924 94960327 855297414 73266136 935192554 812374106 287934469 441818513 768661711 521093028 74632787 406644360 555765776 800076621 98566199 844937509 762800726 846820243 878667426 595130863 813810609 752001947 70951524 377120806 26499297 311134687 526841568 734274426 251005523 938980552 274150556 739168233 914596502 818870561 369546386 620252779 29471392 673542309 137875401 894486229 786162017 212359882 231405997 717058551 25642934 854469377 763422824 505754687 896894484 595146515 80778880 81944137 284573306 857334896 901672961 129460002 736281071 763698701 943376546 786677554 771921983 631549865 149295200 221044124 503372977 191576548 990662074 326783466 110068903 245537456 444644345 704789410 703876246 569956150 327186918 878821711 89171950 181822485 359255954 41746128 969145952 396711238 139296252 642450021 694157071 579314995 305208859 61771111 233147844 513168514 525848147 330004594 830489912 731654628 315789443 644440394 803008811 723032852 372596653 385803683 390718335 336441548 304164301 208845294 573505634 53785801 441781520 639748692 340306064 29753037 612482711 820049792 745055048 525266126 37489501 407694470 389605552 141203320 390652303 726084751 903505904 457939541 869010830 268939157 508541360 476920252 736235729 746403736 370012167 36930861 550035582 307688148 315393867 176834099 45119173 102144833 686638439 414130737 611328287 501213193 824918398 94914056 383724208 888918358 276345152 13011232 403497540 37959861 327905245 225704206 631653851 227812867 301888745 343600324 558073920 167040359 422738532 698093296 833081462 189933508 266633004 9763246 175699098 675303772 321452015 416934105 547384605 722250265 491777005 10053684 414273297 684770541 116743439 997539537 482614550 232838763 111350161 920869168 693143204 658597897 454430013 154797653 10605877 835594074 348562248 382408079 63567953 803610934 574061803 50135498 711699537 14665871 408526711 848072830 535655907 173039833 286307020 162330375 231166422 550114302 662160243 452083687 811769382 394260418 989543985 127279885 544510883 593417364 590206591 751441490 84074847 837458019 648364860 103333458 217908972 205883922 509304783 281347382 788999662 773060280 770416522 810744909 282038655 133176766 532390585 181374890 948889179 376227205 174117918 535941787 63844494 753250128 155186240 478531411 590856960 879506290 52546455 465945431 132808197 344445333 350461931 394315715 475707171 978052938 133544018 835391318 412137518 145181095 539367749 208084267 266169222 999373122 821749368 460494228 292078765 428164022 97260170 637147143 901243775 513210121 869628013 517984723 570015855 272013214 460375243 347960730 989817133 927264745 570911311 17639199 727820858 618641696 820443851 911602535 836805256 822817896 308535463 688605259 861145653 198989965 268557940 123292755 162010762 628362626 25877795 769996548 815627595 890921200 567543504 829391673 685206250 278849817 517393125 366787754 479574886 921296496 243547433 475676066 193490117 797182670 623886345 857176715 323212888 202486403 663222585 722111070 334276465 708447479 230707631 663683465 786589378 367397356 24241931 630415388 574372994 993250267 653972008 629158583 720913377 563584818 853495339 715876372 138026507 705524367 671115462 877620250 661694917 827980022 507984384 513469527 205744440 747991638 282997650 820528844 996429499 482329227 342163842 696828511 148628190 958014112 436063084 53953477 966159673 252057451 344608015 569906812 447502914 46023982 967301481 176852815 356011876 309296982 552100863 384442676 997365314 878848870 997445361 604831060 603607023 15437331 609437469 932648056 406746957 943510001 160918092 989919406 528532204 217455861 829377318 368021081 451179491 910966832 894382645 217106988 437791187 486686655 756534270 33475611 424778798 878741560 852540491 991293408 747994639 391410056 521831352 908593579 133459540 880142530 721180524 594705385 798490889 853336121 834733277 736123037 145671496 312049548 88098129 353461107 557701426 200556235 637817759 596301900 674815760 311300306 372348154 566482116 604537465 671754629 326930194 546396246 755067496 299769912 595889052 863514939 864517366 443171999 220519550 393433579 712511605 544842547 1102320 44486695 757175177 492766510 498159093 56934094 456125515 669809588 312668758 346103765 741031650 958886552 785794745 689623390 950506956 854549576 468149772 610739652 678333622 503698011 658669686 335836218 267422516 809163870 206418825 587027048 534994986 492187693 61694147 630434487 353585402 328301506 53090854 747203989 644889776 56249150 259319743 797826669 358717292 205225010 992715918 719623228 281674466 658844979 521657276 416020927 941217569 337390882 690347297 377053762 310790849 452447167 893193284 947390138 477927620 694042037 11368391 590815676 198037679 976437194 724137013 70717804 32187950 733151200 489565185 170887987 98806671 897427894 203352158 593529688 477865194 223990199 256741376 436772756 357316915 270981279 512147762 378912179 505216744 13078160 344731539 738895797 643041085 545604329 544353387 187750599 677548527 176458792 710495612 507718806 468451042 325279254 25229334 691408725 734378657 199158601 641926838 427535624 166497906 229944149 830620691 858507677 609132435 397167142 941974804 404857116 46673492 762253673 662045982 658399850 97498933 760838558 972977350 116918829 512879888 809854872 974261609 644263512 61268783 373846958 993397838 538558482 557093349 93562183 728050960 33606987 901183527 523050077 179218054 558803668 801590592 610472142 787055231 236956536 550546982 572842627 977044760 493333053 26716803 886180765 922470178 86952340 24221612 673701553 386002411 783873538 678332506 118663376 169741763 201983605 344565752 744822853 747375394 756732725 826632369 625492214 117689541 417529124 832236423 642897442 552952884 92118208 700712546 996024684 17025994 963993161 266727969 191334190 945301677 106819052 508391151 324995586 938413306 53756910 96881018 138864473 739993187 946661070 943738485 679860188 190056766 569784759 958699005 18174638 395267010 679528472 544040946 957900972 180571648 1729592 335285207 116810082 379584976 642555602 426350957 412350404 45288481 477957099 92152985 520191624 975093012 394508566 226035521 662101590 876103206 61061056 195527856 310524629 976096064 695502898 208102993 102276919 471296986 994870094 380882588 367133739 758276127 170333957 334126989 978621427 178856841 829776603 272172080 264303644 210557957 266068244 892776464 9496102 607702912 697680715 63401681 395921401 204356591 276485695 629699823 610416127 549379668 684677208 198816275 754473152 271890624 205484185 67360847 493848392 186643185 981913942 659666085 14663877 43842314 93285445 136967086 893220040 92563687 552990162 817247792 22878004 476662177 295926733 324368988 370180385 490077291 646741257 840050753 728532558 956807252 281676012 495945089 477477816 584907444 856304497 309396828 834133786 570369850 414031134 571111886 743803804 712897926 694305634 943952122 784318831 239162795 135847183 568923225 727503638 87362654 797927434 822892833 332781997 59849570 185826178 379953759 237597924 837151518 772301598 219440535 292248131 147292692 293113630 225099026 816701683 820958461 271153837 508260143 68926317 498832066 465995506 678017163 959640294 75093423 905492471 5614232 894504889 394166423 530924949 454987241 993136828 200121328 881897766 267169733 894431993 519938758 927286708 859476389 786780260 460227236 20764773 250241048 131879655 967996275 362763082 305744529 601403420 902503646 605712330 213330595 195081481 868346310 163354594 18334805 379015134 724445368 915656821 881882151 606938429 931249323 808905396 350697624 912682778 506773792 84171231 66430199 866914135 997365241 972572870 336392886 537316575 810450123 196559180 782235497 692908200 105618762 551549880 511843682 95720520 340880561 97153173 188942266 753342977 923798478 440429273 935866398 219822591 210118200 579169022 849641041 543871764 411492043 901385330 45126160 341592483 534176510 796490674 473701644 197658594 419841659 592779125 126369388 365947088 589142737 400156384 469227134 119459928 186592387 910996776 279883005 640350269 163910343 196333397 471208966 353372997 111482002 155290406 395805957 886894380 609614727 337799679 247500168 47118642 697514634 82520368 687139834 526632598 944832133 666252902 254101516 668542813 645639328 538298006 235763070 470400926 157613152 506937877 777647583 717027434 283897624 287431808 69398149 144030802 363587743 8368138 494921417 504237619 374281983 541114318 686560106 290799877 824264682 126747764 249892378 166959304 36359819 656515497 834469939 562460978 294796481 552973026 40039487 608280499 86779474 447908887 720818981 414584635 826650576 925470719 970070933 437507066 243528344 382961016 342351417 329622571 347886019 862848995 544345790 653195015 403005665 289642732 857371013 329752115 288045789 977672542 598809106 566727569 425393287 778367865 293788387 558468336 403929429 777936880 476207008 445303809 662992879 209922451 856774349 653029269 708547586 149272146 26553828 866503739 166678190 255444644 442139383 542497452 709954174 736939141 509227083 241500075 784997762 738350750 513533746 940515743 859645560 53182323 62822137 719094654 777927730 940149828 61826968 891342453 894796667 38431269 188175303 310495233 250452717 516118428 897994542 647192795 749054822 744882851 496582423 65373968 687166572 347379289 600905890 224318573 118882124 62323905 162213310 159364292 791618481 828165358 808646242 693642319 598494145 231148171 390302777 63474242 510985904 829681734 900961057 876143449 581261100 326324508 998834164 588062406 288387417 88503453 452985864 576194049 987066597 251826595 198696618 551346234 654277124 84877589 606910381 611620171 319569215 455669373 735321338 632407362 348916779 920515057 685139611 617438197 770337423 851306567 473017001 741585024 631779574 331980227 536634879 136564437 376988436 663314282 435440246 557137914 74366073 835720408 504693829 70691654 426197465 730069859 125928832 678055324 749263762 856092663 281224315 516319034 741843640 52975789 238310410 602886202 745766299 388810368 795812381 810438921 600636054 239944619 826352846 121591567 382091473 829048597 635113613 679716799 386251611 751614766 984491131 883340511 148800546 77637946 724527330 362522332 371143431 293333690 203149674 216446128 592983635 882076509 613115842 786510561 686414890 772128713 382684218 66350160 353077528 119026404 814034841 192575774 818442984 334470625 666897805 21206228 830481149 759031930 622969900 501454540 704892445 170142393 895937459 860703623 828627316 946060559 420987989 164400047 751214721 92173882 12912157 28222628 687689391 294253370 564468103 419913911 814148624 32889815 289839939 571420701 963895785 893347642 180772367 340043628 375292119 889501980 20971901 779744137 938882437 770720774 341246750 375982241 847579281 648743882 725029012 751681927 235680556 626519966 437264693 679068168 950055947 683953796 703690483 969650019 618293784 484709475 402356964 732431178 990957778 148412798 328721104 152522558 846740783 281351880 614242989 880782703 783286257 697599302 507679465 4757279 672990034 84659720 551709184 284430907 410099800 538272689 76698792 759034719 884311743 173888511 201357652 552640364 600926944 556635470 993756548 48263411 528589987 883232919 161959439 46802778 638232698 231553188 932089898 194145710 346699342 289688793 690373089 793948066 422454633 723980534 688130774 828316840 431530551 425446959 673225041 527773543 500392672 199790699 206554571 933109439 681733757 215718698 943787338 746293984 923806602 997355147 113772840 974323561 962325273 650984485 801063503 398328906 579606028 660237668 977447281 96827969 725301182 307247732 462232817 715826568 261671654 301314563 705578836 245635402 42772415 972251582 121458575 69770080 319954648 47492820 642932415 463190467 668683445 168185166 905744241 257706224 130368024 911124579 911744559 421510412 436932263 250124176 541352310 756343708 647443272 242636137 382698335 833116183 641228327 56742906 844254619 388921722 12630883 502363618 451327371 441925692 69340085 8540989 781545802 973440791 957370925 869734325 62509543 235583639 605994961 407911048 929614541 785396444 418215752 512694838 545645108 97379273 279001512 765119110 478354389 296322421 405977079 4469888 852654397 640462032 52048654 572420534 114820011 986780935 778935880 936540138 518603145 170527017 633380638 455995541 138154331 977744196 221411614 493143280 202040394 57037473 892649833 551188692 192481038 877051656 935716650 181117582 498202339 389777210 885970857 773922316 205710230 855178120 448220518 285700721 533797126 375565014 468497746 772597897 293326066 974211640 547497029 827344117 838629835 538095723 640780117 654186323 544949185 944038270 229937624 660971841 252397287 506234208 779154891 643360621 570179928 26940438 488415915 601009961 642370550 39603878 862168415 897691309 711769085 332293537 917034580 934964810 797645795 353222540 652102482 102506678 968968493 266614091 185755412 722234289 362345786 364804423 139684201 205816277 31591931 444476486 496151844 738069819 555114755 145869770 10383804 142072446 781543491 148737021 677697214 98924953 111197072 9107687 883352134 938761064 783625522 790003562 24860796 149518165 101299354 977108785 768336764 116669956 325648024 929621198 18298800 710681033 790273786 36895746 243571801 509391115 770950714 740639759 146849530 909551883 831843769 589594012 273782795 331231179 267834685 776538134 778656754 117591022 241311087 596513954 627377311 831875628 674624701 698647596 830509629 425987867 597629853 772627703 401015253 476057540 216879655 415060878 555041238 744613244 420973843 323258014 139295772 961161037 172082961 503696407 513737632 454426033 109588525 360349327 623665589 697021910 812109373 341588199 385793942 546799130 514345393 137911411 481742034 908776259 307286159 823576473 261215208 494690921 297799524 918386379 644511052 786730218 789597205 454720682 150191992 179564006 454300402 141466046 343672034 447868390 776502774 327367593 772059804 795914183 199132891 576835509 72115040 2337506 654737762 726842259 136962414 155566747 115105301 715378880 16310577 773661354 279047560 106587809 233079336 416503805 797060026 967369117 342420084 502261983 129818785 405362588 178403207 893803001 141477398 456629242 598403367 659198414 767620105 785949940 676992037 170247020 142843645 187803244 543633826 599188663 483789040 382581392 408522754 513143213 749769504 573003656 220754792 772712039 2468997 948971371 891987506 812175289 171910276 958424601 958181765 519388984 35690570 378485192 634256589 38113720 828620749 852596562 562550765 356735286 480828810 116828750 426000220 104166090 751739726 102904244 282968930 331687839 773783362 623537885 219149739 702545739 533490014 920445646 562976301 952842560 999793695 379646768 489636899 435511913 508703953 282931419 425937604 416439742 638873119 614473835 139749801 706855049 276663147 113963030 891808541 635977039 337043977 956135325 245399697 568910124 338027465 72214777 621170789 453355324 860251168 302492484 108186361 150571423 960892169 34880353 817439380 441432241 213437617 598628757 207017843 230226392 442817225 145217228 110964894 692865128 794717123 266467553 399705848 511329473 146386873 951119007 346555678 943795378 241379949 824345412 195657371 12800846 618114678 787573832 425300084 856785536 194131296 338895906 890258108 428628694 63674359 150374151 90872062 927406312 928252075 354983228 774510471 500987713 807382361 932064112 384815273 24101622 579197624 375644853 19763305 82123255 836932256 125974554 446073065 324321522 897490857 392086161 765672098 671247514 166175609 832450901 516242578 209227839 836075129 93960540 154142923 65826188 925532466 313682251 154277969 271381704 206075559 268865106 351749211 530120682 171669658 49525062 155519516 559906571 215141713 284967483 307250112 316097264 874232571 654266731 511365671 10521214 737762907 414630018 272051227 12906963 509403642 274169540 774454654 239702479 163723873 633506866 916279801 827078204 224867959 595237816 57341853 691551126 356993059 987698992 630926163 960298975 261332329 692110527 614419714 248208809 172759583 968471907 355122818 128825303 950893773 44765929 965955683 424361752 618462509 192223573 279753934 528981018 262028419 398765573 242327403 171252771 835827218 160946369 955737111 478685168 473400869 312758156 47200792 920260703 843299223 664559162 498220187 879796918 375733990 475691383 964604541 661482954 522354922 151167929 15190241 746264076 995822948 659141363 548754548 416186764 920536066 240048633 647496589 597051434 82535097 593326281 916517745 316017660 374963143 99835729 812760079 653654236 756620776 33766678 894405638 74134429 417967132 957241057 239717846 152654835 587495626 957531882 998457630 169670352 85373199 639694117 110871383 524027826 458438764 581824237 391521509 683699692 494349961 389956816 576074011 176325276 548922344 758553039 387785663 891340376 830064504 871196428 786935939 260901443 321122811 337039941 511254947 963363331 481233948 355197854 461154448 72927094 122217095 231791303 591126688 69450611 932890337 831731553 201418096 83044978 975914694 650142438 531028062 733522853 161226423 133148533 971169753 156878560 542629672 884056458 708946997 402727436 150962337 453315393 742533459 296554680 717001186 718378631 838528069 217789358 6474018 700057768 428575464 602649937 323398187 911188838 431870716 122306747 711213069 837046895 613018578 811171127 918198242 590839376 746226133 542657007 896846459 894004461 237644913 515629562 316998820 779660503 94273815 679632369 984892360 500705578 324610844 139311568 175634308 959085759 643522817 20010084 802508006 316245094 155668534 28377549 790962179 307937120 51185287 827061004 85591712 231637454 753394475 123067474 103578134 751104858 728369198 510400954 704870044 183427503 717663109 394168473 67978688 922936302 88022278 14304411 236892749 737223774 730822093 276194413 959546552 347348709 916564639 498267162 620368512 997307073 9646133 378393389 319152302 700177743 842597033 16627507 927722982 177425728 12285516 485816953 725646003 249422489 478315104 663578424 143608417 666921498 582050220 650267817 658617787 440036457 279258771 806117962 603141673 274623750 997495895 768620997 420065083 864840499 178229963 404580430 613673369 137244857 907787625 903115123 744505007 220858517 959264681 950582730 577930723 345102352 228851348 99595121 512260638 553004199 156380321 224282274 869947094 746133933 912806500 680108115 168190284 510227383 545440381 65803745 973710300 364661090 582190979 721326677 494833113 657558832 92075804 858613868 832276598 640932112 9952358 344396966 416713023 682965920 823075033 959439473 400879669 19057517 295014401 34371386 130356935 344893155 999501244 178343275 3693926 813192430 385664511 42273518 116722505 78735250 722527692 450137418 980481391 539103711 236397967 529253984 678944138 307927587 553783627 704972728 144417414 738499911 2617282 681526134 959598439 48928709 37683783 606056540 662198389 187684956 436859154 891553616 166008532 629287378 224586913 859153465 918877879 695153914 900803847 136965265 890123625 732638665 138336977 933985296 154660328 932987038 573139325 564833647 452817779 354248856 797444854 825458305 497716270 333461336 98679071 781113444 783943843 460397129 434546667 404012426 865429971 468765537 842399851 51097345 934198067 733637493 710570633 450458501 979855392 603010491 254075674 298194402 934766738 975366105 102865236 787064927 496545234 358587287 808243016 270720420 899208375 55566499 358999647 93881586 273220819 496856076 798293070 618057637 484969835 321270210 929072350 603210014 457937501 520429747 824583004 608312898 751102149 117598551 899853274 547751438 856669134 646213913 754989453 810664759 109808074 561633777 976685318 328622722 450887383 176957159 645378549 964841812 887738176 360981774 736708605 898304203 823439575 371322671 337127011 62910878 292571497 223822118 974521356 301539657 656297116 888345598 731131649 916381370 331574491 489820072 164006318 743539945 85621887 304110209 647522772 19793057 515837491 506977276 852909208 817765943 410241807 113440532 848022797 174143591 62422653 653793841 77901890 945088824 524722216 369220614 977048937 616770379 72074111 99647288 593618508 664487969 72453438 343757966 90074044 273172287 640235018 720877740 380329459 833126785 612476563 58885671 429140457 858252358 998575705 448135463 70760586 493257517 459356548 813839734 634727931 18653971 870385712 190262314 305961585 623971033 296088611 892699539 428866146 739266693 3890755 830940290 125942432 643407960 844053584 477997340 843715814 588332714 858949235 230401282 881389179 497599339 188889083 435485430 451678634 218327804 493188000 247551685 550694898 841339468 67383710 774730772 926819689 579480081 450661297 124478669 816138930 277391486 18551828 499177981 904934188 724281719 294664021 538101425 544053092 657536541 303155597 100095670 838655035 109811313 400094241 827697510 770232735 533860459 727834247 584726370 82969034 644599125 595650788 841189082 181300984 728424992 612132826 781370019 844319817 246702683 459020221 735644976 544057122 45760064 94098030 782380797 406557293 832060006 339340280 21384269 740696807 464576884 110071947 836069119 465007645 876419000 252951454 553940360 528873704 242666008 681904202 81746666 362157677 38121605 466647298 163109265 454516601 128091979 887587467 326321386 865677336 201287417 728225877 698057066 432233638 659631031 249883888 489230674 662681163 797296144 379558883 186122222 21043395 623922527 520791214 412083304 549802715 784810836 91358890 868854413 718421500 982002107 809264710 999073320 878859742 224742032 608344167 687024553 198582098 198837390 119327451 952554533 383581581 409503539 323988543 757427500 80509764 131625773 507487463 710600087 116812780 284502161 284711590 318955503 209672684 958849082 246809117 107158509 776142906 697043502 350705589 248225033 454200162 298844448 435546252 685347267 369108673 311194206 36345414 410289909 502643790 286600171 702891055 462804897 259860628 956876141 166666950 21547875 953500785 857122859 348271453 506219152 193913538 506366985 672209363 85465256 985488512 630327246 257913013 184883381 223335475 201935794 588475173 144090621 402878909 813166428 743156592 612690239 680525485 304538889 667126173 616335681 303756680 888119723 697488365 684378183 913789285 546319113 769607985 707796624 266354577 950126464 545678396 171656054 19620545 598008768 18984548 845141626 428499471 717981202 509441631 183038999 649142737 582871140 463485002 719438462 646706750 516057533 857389861 731657007 906528079 505234968 769459590 77312116 167990526 947663968 524114643 448194390 859544960 386814402 447761584 659352436 541948483 842383084 947874676 732723614 612374943 292757009 95524363 763672459 915109754 31086824 957320489 729419892 719936645 195516915 677273668 399059019 547538607 386508752 723326296 886246192 283356752 30095586 392350924 820296864 737272283 379527607 887281255 949060349 988420256 67206486 902899748 980125338 867007481 298044190 582614727 454343945 928143841 885557376 107290438 499063991 700689994 85277480 592361033 366277627 162948462 236617920 417103835 593901312 584107786 909196511 117267687 40835434 91789823 690469950 910564828 706420171 683396306 443388597 420145215 733053977 182075517 965542178 784616309 703906737 796448250 695221866 725018956 68232740 979006488 813029308 103353320 79985852 478975125 225358562 718160932 407630874 137857087 886430456 914388019 851034188 809658960 815441141 306599205 797957545 155228879 303199894 410243953 889062988 983415976 254035847 96911547 233980980 672226675 312535878 448574441 85877551 39134910 267783699 72052919 262319627 669043855 464434343 721560129 181272876 156766712 652903195 817339872 297493891 75816055 474548510 866106469 257180368 876726882 290538155 753789658 728337781 721002984 863725502 576911843 770438802 106257302 62875332 903244132 661203725 959929070 36972062 887413257 17558162 955339849 623726485 426554865 899493381 384356893 996828737 445906394 16286086 595584736 370264434 472621185 440022215 992151920 505704842 822735389 779789785 133401912 97703887 2851425 937661852 548366387 709132250 464580125 625788468 33340788 329489755 949121728 719672551 997901230 596241527 190478672 527547244 124201717 666211071 270464725 176385636 581956557 376836848 807348415 370373272 913237380 356674382 847064399 454412308 231550757 382717218 502259460 670626691 817431469 517312478 662961622 825003 261526868 75604121 624310822 175688203 997421835 153092757 701599391 326267693 579980277 684562450 906710731 227320546 148221815 213365538 972694323 656296431 421159995 778151671 940984539 266367008 829176956 379695870 731491360 291506091 233490665 819074495 956165794 725357329 948739523 165177206 852126113 826364261 542880381 508584216 72154153 530013575 492054960 32352731 734941317 430881867 221286221 644750322 835973140 270603842 163451779 534374284 919183368 845312082 217735479 529950987 378054748 972047941 852713073 56550377 304281784 879325053 756424035 945671584 731803472 989881633 299507834 225655845 226649928 322921995 372632213 608755604 479205956 130101420 567748549 965553662 844122116 3563542 482447953 161331710 273987242 423974812 430885098 651178642 220061221 201916449 406404466 614709995 913659414 801523087 488423354 176592112 865294001 392899562 532790610 368729023 947879126 690503819 807011251 546902910 799842054 165759745 431243351 620578734 797442065 201505147 924478366 275091151 22544580 7529229 255207490 831258572 3419048 597838857 932567336 678297317 613546795 156519589 781697366 665870031 754628834 600192996 253506018 541497106 812394325 372151827 460243076 591847193 714419083 809372679 295940924 945697514 877576712 34141284 936437279 69153049 174327704 306546943 824851400 368762818 991620093 762812477 233473794 815666460 648166206 229843662 291000732 310894024 229478629 693145559 461156718 275372310 453040976 363613893 652169811 772944333 708245205 576822823 611882923 95223311 228002140 606370909 726098622 750257060 160473136 198068732 946795577 200865756 424499517 167562370 640527117 948821874 177710260 485526079 948966743 190183755 736800757 65921838 847059190 428167299 630198953 967023238 528730894 797570126 243907172 6100521 987562428 862874938 602205693 543858298 29668429 763451629 819711199 982304053 103458119 660024040 395542703 570170820 652578157 225793201 384431334 484734158 393717219 734099838 37378419 189561864 970352135 355309808 211053277 183232142 488200590 336107855 862670305 677702261 311432044 231241373 655538830 922397417 113724376 534683606 407508267 681558596 221066676 763077366 265911327 378713746 811939338 930274281 554493611 924900178 777785389 845925686 507639630 437496915 892095891 809494227 678545837 723776446 604848644 264596214 135627433 226274651 788520274 741013981 619272589 734979104 929380773 899422451 433864081 366243211 927247366 536431400 602057552 649576476 655016915 341396053 673220282 496146129 319249383 988483206 472957817 368251924 641053017 442950022 239557826 125861271 860086553 14789765 527021083 179377471 912599252 708081519 140048168 21211185 608277287 732845685 756640117 489275974 261636178 986992046 793836663 966897461 357219402 920859926 239847150 292783341 155810711 54629938 840407033 809831119 328343474 839667631 621649084 308276468 758974695 795948908 897093266 857431263 691606955 33669777 2091194 960466571 251336464 95762295 79624799 559225197 828602577 438529038 327983237 288451324 786037953 370331187 233726482 176682707 291822738 896075675 580246100 393015754 57833530 656070699 313637008 818924011 342226306 446275496 491911703 971958938 9095307 52016474 328809025 294271488 365026929 289356077 372646126 750133559 94441319 263092300 532251985 957698805 872755932 625713790 88365279 734429971 895211916 418545039 288277989 35964717 716805324 414864546 121698579 255909183 737902600 9626774 653451868 766269350 921818068 225016089 561445081 296707320 815891538 666461518 813061966 479055891 567677298 621547129 243839171 394320347 623632197 771733524 723993023 331277441 627186771 411165777 224403935 736720190 808863806 894977247 532735376 711712879 769200647 361959593 530405185 692788084 423183140 160162749 155288963 93207657 603946294 756098017 223442901 373130859 326648756 299585966 148189187 916281778 693923992 539552283 178547899 582648834 733143252 347383676 486958732 361998826 557143045 357364832 797875848 376859182 760187671 163558721 33065759 743556613 272011766 592679465 34625011 701149582 506987161 730630612 982911207 440723294 600054788 64556468 284378701 404112137 737167385 394412091 62579217 637097951 566487470 577871255 250873160 793916313 438888248 385781436 118540551 671726359 620890368 64209918 864168513 525039575 630129532 297484474 812746855 854954960 787571317 426541661 900029139 503411372 689196781 560862734 563916448 588805059 645721642 325461770 483592599 315330742 694604272 227614599 363506097 616373362 433462148 579524400 687100711 125835476 168661550 744107441 267922198 540889931 135710634 454461464 732480269 58893777 330354647 955077864 505266625 368904889 490624736 473626336 396882535 686304589 238535195 730368021 773582862 966197644 370547500 629095268 587822672 248006631 93783048 920824110 689971521 443083651 210572671 932925201 542810243 807449687 576325500 82358713 622297149 437213556 181728719 987444653 816331001 935708680 208476561 298733190 492373548 158147068 582301298 119017220 310052280 655781405 209555999 169826377 613560404 910241864 865548456 119446215 973399435 564029297 568695622 467616265 667520098 490075 655819917 625752435 328619055 220073991 603779143 609273159 55123003 467075380 467320693 410029609 608562734 224288048 709146419 26802729 159803537 59053846 888391383 933738350 519028235 671413106 141628628 870540149 399951177 258958947 823792155 593021743 664042301 339747526 343018495 147645679 873027593 66212020 443272476 460452110 997207205 14212736 773355268 235489471 882319506 726908490 390937733 587474870 724661966 500262248 715345466 313683565 14139597 259269861 341391527 459044365 312809947 101684062 732066554 833673247 476303602 279480904 648188627 556192229 586147686 47603853 748884480 916330135 444186822 975118198 194754826 132053765 124052432 206844455 945262068 758669115 290610354 902544498 79874770 403900683 320526391 186030120 771432465 220688086 641483478 592746617 523748043 765221862 103198963 313762374 652933535 893059047 537569688 487765496 927336448 779936279 896270441 500969092 753445386 921457829 614470636 44056838 707901059 620682454 861180430 359243617 770354801 589502112 803569115 48756927 726922688 913595139 330932456 479410421 153041252 70005532 97903465 342990472 509399712 820763857 385353134 181062012 210849554 479179927 441638849 339509405 603661491 563591772 202247435 26942184 802334629 437525061 360160916 935292372 749446912 539430189 148520940 454029757 790304117 18962949 848871595 22845946 928659772 578957840 863553018 205149393 694000284 251536772 160217415 651481622 261648425 931757420 882602388 940661916 149651480 243658356 729061354 740916981 542603799 409250561 654247463 393618088 7716945 505634391 401201882 263832869 208042751 21161673 507343253 511769646 857555479 299488407 362906008 520710551 864100775 467930185 234573430 497414511 394581049 488381726 316757700 288087964 715416631 240999609 359932097 802640710 347106367 962160596 213357430 606515273 862488423 675898734 802542264 728162454 471447954 76175153 658443682 121590334 41985853 641260244 71438108 916432808 452226375 830915388 229515441 96432684 905967187 644738453 73964700 281003918 944673869 454637635 615251581 677382309 851796508 376878022 132506210 946563821 612219070 105553286 541810584 412636129 531657699 201024916 491218663 983402341 945474983 438497150 138138035 144738199 125022272 975553463 343939841 98125788 636753547 562638034 344950571 634582652 656444419 898882217 91474019 539281746 130114607 765136136 263264189 969425010 633380195 608344255 875213246 647401000 99654897 379084947 107563193 183994909 30821664 685068247 765566992 277588566 987174255 177913582 332201442 372344332 669281116 165943743 836120136 802327464 879646668 623752652 842644867 552082506 193766790 178840774 802283170 871103867 252983210 493486113 387701601 58932669 370959589 40765758 208798314 84356210 140858793 694522459 94074851 598610334 228412177 631981943 183013982 214133378 470712576 73883429 897561756 542865784 549315752 178799988 636201465 659777402 382539478 766200554 98024547 499243486 742840680 591521827 990525073 253751572 697560825 327579207 120609375 84966504 459953156 960644387 471193433 305548398 536837956 991538654 866258735 920914663 91181999 509014989 710180175 347772424 443315658 171221449 929712131 668755797 724315841 157220896 713384366 296808539 443511753 400745913 542757683 96057192 914546605 81510930 749691819 291992593 535814750 665444115 188554690 860811750 972559039 646632197 809854434 837614410 423938159 266394924 842153412 531253997 701321023 969702962 474554393 990920724 85081342 222680557 687285809 303318832 576254537 124555114 585535603 438153608 643330530 151969281 503290624 245515983 226954932 772875621 740988268 784477663 302403606 70074689 236892590 386482755 516555079 599991690 41376413 788280337 240021247 385395486 10285599 49629242 959600705 391676130 11601463 115109848 740069070 177009154 86369763 170619790 125269299 398334180 94808883 651618396 113739127 54664464 204060294 234209447 420329983 170403676 943070654 267369919 146021773 283754348 47731260 839814411 947025472 94267502 400770922 918717003 330390615 438997303 250534865 602550046 418575845 181253023 717035191 690059835 898473856 979203984 705332255 230681178 47263461 502329169 212404416 85015159 467398026 933858928 575456876 121858405 111033375 781325963 431773672 752574270 924950464 778756551 359871857 674691894 507249258 512166565 233638123 392017302 902065693 460459574 692277869 865708346 899784704 414331051 957386564 700846311 117658133 297967197 42569806 712558431 815714187 972533358 405873024 241389781 578450632 765932828 319232052 565623616 669267210 348626708 491365759 527950651 147506670 957060705 334645242 929586915 276302896 490435542 818085832 302820492 841488151 691490726 699462329 755072725 910639651 812334027 778592401 787492771 931075752 488522686 864975626 37536399 925795649 942203743 270281178 564698847 89562444 659525285 447058538 952657439 911522304 45924818 534312552 51199581 283747582 810367469 829401416 256631980 141493015 515126496 267991428 914235902 749303565 101960160 819387276 662850164 936276851 401873998 684636259 965047024 497749610 458443305 940440372 40074560 999790992 340482648 847191060 814840732 283268732 330446575 118441154 724118084 700476707 389542890 89728024 537372673 65233635 150886533 48668906 516071583 460493695 513411825 123185675 284861842 766178423 906566087 78189909 798544795 751540541 559587273 700714763 324095657 525970883 361002265 457921506 140257904 58973034 173302175 939567459 160211225 863146285 125697175 38186666 791381019 782788418 110726438 437782132 849501846 541440548 91044436 455110321 888464547 841779650 805363429 68400833 329681273 794519132 753112022 187920098 750144970 847177001 675736465 114792849 160967458 31965232 863556216 667365945 9040887 212520767 354171025 290429954 758823795 75579582 48322901 81199007 533344233 368741822 838847359 921922193 556058478 984927892 93094590 245240253 54844077 476396231 99908471 592988141 945508108 304318670 222355074 445417884 232583852 37293135 987294077 209448421 682335893 71473076 560159570 882092960 538331493 473573558 605680192 144079940 618750195 926064939 380834120 601200241 646227088 406598578 394401400 54394973 957698946 831268166 200356347 986312037 720199478 418659381 802216671 235371537 278025429 573155812 485322202 211173573 64734271 540202188 355088848 983286203 572946284 792288660 375871702 515568750 838404975 289112985 34830462 499340974 331428950 922887880 444508186 746253304 896181358 739247205 625919611 770648705 978717885 346756729 346944526 28270384 359123812 790621546 295647885 390248503 261937485 24347471 778092469 690337971 764743797 390599995 629500170 229708709 684949395 314306199 816501213 860620769 942556671 702702040 932152092 239764599 801401347 31142527 470499417 14070789 240691401 783953835 48296730 880085524 204633250 742173095 20194048 398958528 712351686 557800843 625860303 470235799 994811770 5938813 444399064 580316588 811851286 254153704 494194861 549016950 209079621 355321690 965031903 675639591 694235173 706849081 166008050 804477301 612073511 765923675 410246914 123123069 120603413 232327888 736412938 425816067 69369953 387572276 815863278 77868678 707893636 218255939 507730111 891976795 631698307 806463495 850368207 989211088 877488406 87227437 330310199 482686163 343133056 950638150 911972217 340593361 106008337 533005072 274883277 395807184 906763580 402547705 444152727 355504734 504697814 838443413 873095543 49948656 559881750 822807388 831552122 724919254 309326690 738230488 516523211 835462874 28904489 722385615 699735132 476141277 914191595 185327222 342302833 476291609 320834548 958115891 177127330 824350806 539746886 888420268 42087227 276743514 524193078 493199608 906978674 23153238 648740169 850356137 489494255 4149099 677327581 615739690 872085135 933677713 588257648 676361215 601850869 123702355 575533580 114322551 555281125 76261978 52962445 946541821 689123243 872370119 223212079 96316185 238049482 781853518 55751282 85897155 475126391 406957568 890114335 100815339 165671096 957368144 189941812 585886868 658182417 294413650 612620655 78374388 368253797 848035344 831176268 479304646 924509713 560037057 537534634 60200304 951120273 964237372 254706377 55721846 148192912 721158206 76729648 199672221 446483705 415141945 217130346 804994269 158175054 800680788 498767714 493570523 381868997 8714746 207066661 518059397 340119190 118750630 913892244 529557489 75238771 995885755 726183131 12448128 744158140 953316628 815642135 698311408 874320880 539433654 544493297 650168912 221929060 854424760 971427505 296950319 734883166 201576005 588413656 208988622 890057059 258262968 400602583 508145318 889487008 462468551 979634623 655982754 823816746 237183633 63853399 769033911 384680572 510572454 181032139 816726787 119291418 116999865 339948136 618879762 564909143 466368185 290983020 267675797 207415462 441416818 34176910 377748069 430606018 81029532 832801718 407234350 658772490 371557005 657961733 554425929 535080229 673392002 740051974 393037857 244068748 306505097 885669383 936679743 658884435 79733952 218023889 435655660 803519656 252907451 646864053 166981751 262792492 109825941 593024300 927489232 972197580 885913823 579305114 894852985 599258231 14056366 183951558 22845694 101645841 745618096 468914891 991231608 576028233 670155505 244621563 404011648 366106567 675103060 966927050 755324899 866958579 758556643 279816527 772521189 897124294 477751423 725456745 481851686 330146132 753378310 350456623 495253445 719619315 126075159 184795958 736478410 31780324 281309428 229760972 496911325 383141517 859441463 851371766 983025100 126432471 373151818 509357164 565729306 163827537 118598989 665927355 652971899 301596656 228659510 9051273 795876607 383640752 360130867 647785702 463050070 208858012 37117945 600018559 256516071 913623642 225663838 965973843 675250067 933785851 830159304 657312228 694359681 892698745 216160986 167594053 144103968 813821792 159908305 11384229 358111374 849410225 361547962 543280533 389945881 190664950 175810151 545022716 90338824 568447578 218957777 605223537 223481695 405463014 5713812 809372637 574168313 578210623 240203011 945636093 691507789 730766231 88008272 126516522 701108708 653165065 940820569 507153701 85471261 724217956 270159206 975577588 128771181 539233793 802126841 282004958 93745281 867176677 277986043 256868129 242162192 483640433 457369996 392489945 881698520 382642648 235742917 232468523 616428237 569760179 90297727 539681021 625233579 204356281 676022803 13439411 181042359 577906193 296164411 863049599 681181241 728994537 477406903 882836162 934194225 639752184 866096405 284321265 342266196 641210993 25855627 424382181 239365853 16589462 864755016 568914246 176608069 818708992 657674015 832598804 146769842 408822095 888615617 811896150 124565743 979575864 129944768 109439196 666193125 293057829 195376652 337543436 703823493 161140809 801786414 703322754 345943855 411993167 634774149 435471754 386383509 992020760 874654556 375361279 107048932 893498149 344858310 706465556 38033249 598260563 614892848 615002919 341811421 45995084 915767576 410705431 96495492 663266852 850771446 192710384 852370053 151694004 316924395 136468290 99963094 672281561 655052971 263785132 850486018 729237106 769872682 873434581 304537351 220118021 975007623 407498593 563657223 506225833 908712300 394050114 189212423 384080720 755819352 945844102 661894985 140111971 197974336 658632784 599701209 146644110 597588860 778748458 509465566 436162051 749432027 166772351 485768947 905562451 159413139 452451581 679612305 688024654 149314096 231808727 8145298 792515404 66242393 470564901 489674360 52739159 72113039 897481698 273655806 970511723 653457471 184084651 588854235 996154773 972181832 2738370 240897797 269472705 468597678 789667807 467368457 557156384 666249971 10391875 190587805 688760056 593001641 918010362 293160949 413028709 26186209 401972896 180005804 92301449 28211247 344735055 325505910 781436914 456290785 512573597 975103703 824970435 192746836 316157967 253027117 635199959 460256367 871532305 626336846 146266818 222635091 683462497 956648255 447428641 702929187 679948833 167602679 274648435 867400915 163814716 931810354 684021685 124570595 927691957 759722028 993809074 12634677 302122946 792555337 429671055 136992007 938951970 160484142 86798838 304448039 194448225 477122895 467758647 819023569 707612629 938216014 652006695 885148027 162358238 594093601 994593914 429704880 291976182 489927952 636665562 178283569 18793313 62803183 943771138 393783772 579146200 99441096 540613862 3807778 924503136 762222437 490842620 517579673 50356948 255628079 302383736 510056141 461514311 766921709 98816272 384936360 884280900 100216326 725793991 492787126 457947806 596496963 561767902 89704834 22891952 301762774 537697591 973746622 235409157 957113363 297777640 972165661 693256608 395322182 273825949 187976285 244648937 169600208 21434541 24361393 23836495 360570919 948679160 221078815 992217897 235518348 95496230 655733550 112194542 291631109 417742015 279977359 502244432 584055764 787029958 276593013 357718082 259054545 821402631 102347186 902682319 409452960 471241533 366320581 771985149 482223356 424506682 813735131 773163724 810449634 964812238 23248283 177643887 919515217 359417835 855910541 179058961 713826197 472039387 767285622 815619188 748343341 758991331 980080215 170156774 605942140 355858977 398098222 413630138 710009808 543256767 942123597 635779670 560580276 747551036 475313759 91364187 802855659 146484464 423647091 336051581 855652794 696338156 216421590 516065064 711030891 741056731 855524859 844141616 456186486 783412536 760003888 858830008 794625028 86396806 972254510 978814837 224078940 826445508 384413024 370236373 830067373 301091132 141301815 798270876 575445535 710884724 150818733 181505145 122025426 53188511 587000603 668248204 617094792 976578883 16852746 450396248 193782910 996601498 187655861 175312083 926470519 767713586 720252282 52455022 538195169 36837358 788791399 463594965 12355053 978204856 59437276 138890610 911612401 285134544 499138584 55157860 495636014 79492423 101702811 462078267 957385120 35255038 3364589 909592642 702693429 519552545 503718297 917106847 354165178 443449882 57943807 573821335 25153553 942364317 161018436 174987183 285112059 124609322 89001393 513801390 526548746 777907370 160225063 491263558 943639544 185418039 687416762 547996440 240321259 738110466 281663030 761653139 613168570 721662045 198263653 751439044 293467124 238399231 822422010 697345824 958378521 170601455 76316630 260677711 340182479 653779866 14458216 852693185 47865646 119728630 748651728 957024112 508582292 380106351 910276150 689370629 441806147 289915348 41420469 465879894 688401775 795359559 419050083 477226490 281238498 498018640 686937237 360930666 869112452 951104825 440292610 168027288 527367289 152397492 788544342 209294970 920388984 194468572 221633359 143158804 824292885 487087619 984801335 163553325 243675156 980580007 440862303 183141084 965484503 711529793 873137357 77535586 658231380 742746263 159702773 629756910 51664463 967578740 984611415 629824036 196952403 479712608 820210474 703522135 184585590 211377281 478119683 318922051 738641283 16821165 593168523 881434656 480345589 254207469 464567294 664005963 679425057 729847185 720775910 525093538 745352603 425222393 389514835 614592530 334975687 467050900 151485925 84783155 406560785 946691989 458541325 376605281 916387438 935127695 586079793 214216069 687603514 827077782 316380866 474262347 229873482 803115671 642464500 727213570 14030864 756782085 631250185 880215233 72515952 94161486 906359147 193815966 903293257 289654250 810607616 544609228 964491092 54111769 707385193 950760843 393147323 130188467 829256447 517360085 505916067 456102879 968465835 658242262 130685983 299881421 60317724 780782216 770691391 50043043 29431806 123855403 835076804 597245687 402811687 208523417 268194210 919133186 35409532 494453884 776724732 513948253 316331123 362866231 773602933 3926986 25315176 685551153 690237317 546071685 560406796 552070497 548812371 873054218 989463150 508810630 921020602 379438653 261083176 558675113 556235077 636098002 947267598 605081819 194169056 415959387 346645252 749101813 166936060 345869550 41237886 792012764 228927973 845476113 644718528 57427247 503159895 811210942 483769379 588041324 282016081 832836293 300162439 73200512 154644004 382884889 853628501 723031077 14971456 658108639 228721499 149080173 835329175 569044638 150329198 633575627 682036327 877040113 310346548 906170212 729391286 490577162 939008513 511495768 820652339 376375873 684548960 285148795 649681777 870812423 776417742 945282105 704995457 603143873 347218356 30000261 554000011 981493052 465038200 94683267 995225298 346735769 390148836 701257433 499463718 267855619 807428619 398499378 789317574 872886689 326062746 575290045 936419039 143203792 926517943 469954672 240459360 257280179 942646836 670027525 78225417 774830380 562139353 115601847 112843113 384018783 834236321 854330699 768599557 225337379 354883645 712628314 753104676 519902634 970528948 3557451 725136729 267966525 329790959 8882377 74772137 21886452 531777688 800270942 911705477 886917217 712813571 980616937 92647294 677649188 659644267 429659206 891565213 28709367 704191271 476045033 783764192 489533348 160904961 423606677 25280653 734995419 356646438 356794147 103015383 841199990 905890609 435228725 106023056 12006771 722245232 713477096 15786299 324458017 656475240 709538117 924994472 386604883 701097839 224254920 115334559 765436303 996972798 415517692 445237617 644631689 332798254 218452554 70535155 129957335 609857196 336090206 377914529 4644032 521906670 256871410 982079670 609621222 331290568 111479075 169931830 625998265 51053915 391372792 168951455 171478793 855455319 875414502 156676772 602291915 43317347 970529533 636600035 825869975 264956112 959533982 289857685 810352098 121672155 261066541 813845248 46827699 627925767 367235745 624568897 970345676 823986695 159416276 782491003 88304967 853163830 307286005 106220392 101153084 559782563 158584956 844816647 544893180 781195010 229162245 961500677 99115346 822879196 82330256 974723008 154473564 779463715 618627774 78568711 584802877 626971497 640610792 960891345 81240417 526430269 594080657 939514496 98769761 537492708 876474423 67562711 78684129 741513129 315822759 363533812 426430785 125315055 547227155 221901790 249834036 15942706 798423581 516561757 849652623 339798407 54132227 229154793 504673398 936373129 270109729 924274503 107952552 281882139 305379596 97324478 818729883 710331449 439073718 490473159 827845808 911024014 795588609 102133908 602542591 247349184 231062327 797244392 686231132 707794346 11297875 292211056 950963582 966326706 591605313 23144405 950107648 892571989 798346606 76381205 815288609 483226571 428110207 396469102 616671538 764713050 938912743 146931090 963275737 588344721 124423300 818504152 240800453 186953403 417253611 645858235 420210382 444685002 183847332 636539658 813851849 309923335 432040485 910394369 633834128 69922375 25208801 206399252 964715439 568177543 650560534 752470545 732611719 285833603 999084992 323888185 445333760 821572094 972331321 183216016 583886510 27840103 702324243 289434884 934588786 254870223 998882680 693226086 732335141 983757556 17708517 863039137 697748250 282565723 609484246 61735637 232367594 474629826 923048038 980868142 403109046 26804370 558524344 598386653 755747026 101065046 831475686 137224346 505578078 544804474 630278809 685759669 750888248 81186609 735367565 667832193 926521124 243790452 339300339 532512112 193092114 286720210 874471975 564824044 143273887 542612369 848088967 233773874 576551671 906453867 754198117 240532732 35776806 732343942 707794511 753969156 947594420 46121520 271069910 829986193 500226070 928957983 314789390 67537018 85386755 319151843 761470024 536023232 550859933 76439372 153422178 347894432 498400574 68038353 702600271 784313423 595932578 896222029 698016757 257815469 927292071 174573693 771915297 275693721 605336958 218407053 236211719 690566585 139488299 488539588 868199815 322931768 110292878 226823607 358639177 151148087 411308868 164360868 187784175 805848799 98158917 682372365 50759412 980993002 119493771 513786643 970186518 481306628 808567402 162123740 727039608 423598658 24805048 918535929 157898505 82697702 271308325 735651823 269235663 450474644 883452821 90356407 799011209 548879851 324906573 815897385 425996293 848309755 888142844 606199736 702910505 580490172 650921238 374237360 406290384 781492782 293879200 105540873 900343969 749551059 644363994 832383006 510278158 612940630 809805913 541182479 157708442 855183996 631634101 372030151 979374044 683040553 824570816 582036112 51766574 445556533 467990971 330599621 693655357 498375493 92007995 6373162 59601295 735280941 639231645 68027813 644659160 448597668 163817047 921821856 233855841 822079681 419389575 751334074 662091008 359251458 663859868 219296790 872988001 829861921 790756339 584834720 168008118 849485980 823054883 620179617 275246506 921917359 544696207 156921250 687252613 956192521 969453893 429948407 701660508 40900125 202412389 984116482 544020290 291360924 635393969 780046653 773050475 543924564 143396713 171436058 202751661 54860705 72989806 852744420 235028935 984855197 364198941 890248265 282176522 600770277 816525103 958365738 187082673 113315801 369027732 973042062 169696423 344038741 608893140 17827210 254581391 160807707 412816526 343717985 15099123 790100755 49254974 576724828 287586559 663761241 601779141 70222928 482935553 302934351 1918053 38637282 936747562 25881319 190334617 349338997 9094204 43225565 402927392 642191930 125103206 48376826 995713267 89832765 207560971 793037598 185518699 938678003 371984072 128515441 313658392 353518210 951481824 835571929 104063433 819539645 384122483 746174805 333661712 577567609 297451414 813276405 304153481 733312053 375862643 348087801 995898521 940804007 266448202 31329111 333477777 587400557 91790259 705649745 123027031 855255918 413253451 178567139 203136772 351670403 916278671 842817324 321034620 360742952 682889133 524236909 247256451 777513173 260274374 120295967 28612985 56033432 6445286 597399517 381848095 173489461 392974536 390326101 797199266 104287759 603636040 254069895 65297344 719994020 941505055 530495502 762582796 423578454 496875735 457795002 908125212 850567333 781291555 462524301 444275788 693955580 226451686 20497233 554038092 664733247 928099103 307662870 348027128 30898042 148658985 702786958 44949782 804710988 71725079 186009775 308972857 868878956 12715743 465362717 726935253 150732283 917665880 347043235 967212187 937030482 53548725 89097842 914066534 727378793 254173864 44854700 919700117 374516677 550581228 978046947 940062713 544140207 611879777 973796211 161936147 92599103 368278425 250416743 695236351 836977850 521440748 85104717 599458119 892577525 408201997 91329302 91336733 786401506 523292623 778544604 232432164 424553824 617513470 490902311 753872749 926206662 103311051 591192669 128094142 467688055 436328138 630316940 592011350 99325475 512811764 656865635 302135719 388816867 378758031 590964380 758124171 879225793 136855129 498323825 223120212 828662677 380720967 474702897 536290790 878202881 480032174 85117339 115332280 551058427 465974761 12610444 639162242 385926942 543070759 687850296 313967281 468193926 167311557 460196318 515868388 733113415 401902352 672319508 982954368 155389216 300697495 19595850 157800616 30929729 350645689 980091344 100843608 740855659 418608527 979093108 951047016 192181608 951023500 273112132 258036223 272592757 582114135 734750117 573616326 121108375 623120359 330334591 882230161 29966410 726899649 17878274 259255219 996194339 658507175 80009285 532785019 43755207 292020402 211823503 445635336 348319637 460437037 455455286 205571173 568524650 192267959 344001095 214358359 649986136 424493392 130906669 406128045 828951568 109364502 719483038 588730744 372055030 723643068 903632519 950410033 798074057 940960871 554241950 789694835 757884625 241112875 130498359 229915375 520803147 616358087 340816319 938519506 822910545 239880386 82916739 281805213 151725871 351959359 445065522 82272050 466330453 357551484 210430924 929409845 3714030 237559316 933847126 185866155 486481168 239667965 764591074 546805675 988393065 950089916 570870414 441963352 685791600 551548736 235165179 806257050 157746491 66069338 800498519 790506972 947860189 361096531 543879090 519407009 569131615 466056251 24456512 605309114 827891107 883041714 696514367 43008063 185801331 147447998 396380085 961043605 754756407 610724264 139919355 880239592 484768811 924614638 293853610 78231620 599099685 268464608 449253054 270629831 404286790 589836537 415977882 328354794 306150797 551289159 749123183 999311715 275534492 498471823 343812384 213804102 474366507 138836531 830368722 81188153 940481375 705359273 148625565 617177551 221558072 439655877 401260756 954444266 881127218 744372425 975614411 997646232 647793442 67314044 104943604 596512956 357034109 569889656 894320681 363547644 234165172 885341300 234867454 299500272 473313049 456281033 369793317 994144772 929781509 91604613 175559270 911742398 520675309 847191189 607719518 986494047 546817571 976031575 284074032 962827847 496539357 528698433 380286867 812634970 212523588 122377918 610669000 515089884 443836873 8546323 130824242 97416332 778394442 711451395 997713041 732228084 207531625 744450814 412379381 668883441 875925343 724117856 459250580 675243063 541764254 856975215 687201898 756245903 716775327 400375723 80656273 355127425 798777668 990652753 950594867 559160457 806896738 797214750 187425150 581471974 963613353 384731240 625877363 612574131 910370050 751033333 409520361 583090588 909927772 164691252 698966304 242523059 849445758 277655181 136113665 155509641 665093852 648329042 811812335 706775010 859889033 367418624 633607019 999944145 245046881 472284832 548918285 866598098 841873035 145233547 337086433 88495592 73408683 367966281 843664120 387347481 780452167 890312038 570763187 773110454 969336977 486034237 336988475 208281944 377276589 159701844 801912983 518920162 801515076 195166111 70736162 431097779 500193853 427129574 7487154 270059648 716598148 796662328 599532443 913345243 310691662 489711242 324665013 441512541 314951012 739674427 837026544 43941554 417286782 726360500 276364901 917242955 670654680 186780162 701013960 307351280 694351160 108004635 332997905 225427068 17874907 67938954 52587362 287731080 514190894 501572854 68738172 725635318 233683311 300627234 465520834 868778777 974151045 27003156 601021343 93187486 237218832 717058809 292229521 143650981 370375791 670963195 936001131 806037269 15631732 753268416 73615575 495281042 858796009 529026762 684089004 117173072 980737870 733519269 343115861 890737035 521767973 368667925 50271634 415537739 423316239 207677782 98424609 522011175 543617344 494549738 100939361 155246106 629933666 976139310 461346139 859448073 362321817 770523082 516770423 514895349 699934219 53753414 890864824 479956062 152364794 812914749 392457352 131070484 314880964 545784413 463622897 382586123 483913495 67075532 279893653 21042227 760961816 688118789 766264420 706460686 97603324 436897117 643866473 899977888 657032049 163448078 610343387 425609498 818425353 596796870 551278502 167428720 832252695 40599478 244053758 437879497 125502889 179210694 655417982 995382600 825709936 143645646 320328978 863034315 982122082 595617158 14381764 728786718 889653085 997815657 460370946 383151192 343702235 161584408 244020865 718328970 329015668 523252023 429582748 554943263 401670863 905200411 756925057 770407312 999545602 409268133 325174652 272972946 467437825 406717927 67992783 387824961 950372349 577168816 524758350 825549544 559005654 985644025 631584458 687450954 632365584 48658132 925792427 913632406 132479610 530528833 824615866 288225809 317714601 771462831 37088726 791946984 619052944 642120877 915415618 186918142 821507264 445904164 583549451 122995315 429316356 217098169 880749926 68024949 617952789 887943187 683603555 725964371 375713783 813806783 763001707 510614973 277451725 375994184 873898127 206270530 799422619 217938260 470411880 904046262 686443219 259593677 526046131 830264700 959401747 127282462 241871071 568989357 297328360 205649569 236959955 466637059 183814729 119749179 676223904 720454281 999525419 955343956 929083112 638907691 911946010 953957908 438191723 715766225 33128189 706531776 287179133 649079925 221183088 535791228 652642162 580301115 834459048 263324154 744323928 31449092 53197713 971805743 261901187 305022381 845236661 707611628 859827114 447850096 317369601 594766760 353212427 744163357 798807031 188027694 921823939 105999446 844990883 814355544 322333468 554949930 246716001 424440197 468609780 42699991 662113378 187316761 574065191 919912807 209001550 231749991 298411124 892832521 159663125 588839215 339633238 537460456 192232507 838102735 14601617 218867821 680183644 234013403 32405874 438271294 485354014 12479713 265456907 768221005 811506257 274485260 697267560 62964827 521227831 797984190 405473150 203977476 167058069 647077992 557931011 663319137 786541716 196893231 331583673 88713531 873377591 201313176 651086533 945667371 786381482 946100482 635784218 28526176 370889049 794408038 953954011 459287221 150097066 686979399 851367706 124021107 367986504 386352285 634929441 985500189 401852615 990797653 306368023 497876794 341799051 582512074 395977562 869151288 911501173 904517151 350590602 182437402 514654106 796177656 943455429 42710144 825901961 236261416 817106399 606984672 462559319 910733356 37951185 4340352 647401254 487663742 452749836 505608659 930080926 175407075 830637189 376829991 135034953 517785125 584450306 585623171 644870878 843766744 45939954 918956657 234979070 342811683 814909000 511270750 718261153 329454216 822738564 206285903 137805938 730432939 864486395 285396881 154053920 319165153 85505583 437188198 51168207 913703584 712500766 437976972 443893938 629607348 69599677 816603155 271145940 262221969 280325168 457767712 319410704 322987013 1141710 118649728 677034008 97386792 976930684 320539203 320505621 46480085 714095494 432310968 458116815 365047517 667276224 305147838 602893366 382716469 7819800 101953269 280454209 567634061 406974297 313890767 915438500 91964562 704747767 871156323 406114603 691625589 849175895 6734538 763176005 742591336 553123196 892127862 289302730 490723751 492144187 295679599 130959725 736638882 186016869 929533792 523310316 783198998 588529726 647565611 389121002 283028533 248636039 164376855 531355999 307690180 918627743 17332816 915235115 592688033 550529519 361553398 228412668 307320778 583350289 109333333 316451511 927214588 297018705 256458479 875427311 83637366 352817668 406814346 427338041 517550143 139412209 611053048 499835825 287473022 682516720 460878416 529152383 791000991 540545466 480118174 188059999 989959276 686632237 794567202 883745163 272447382 101160394 235675460 869845899 95723635 66069070 188396002 31869877 646680385 386609523 499776029 28732713 988606600 922989363 892693151 813555270 899581536 595527833 148867386 200625433 194003332 992579407 70504372 923531997 530611923 609639285 658285651 474432293 834727206 292912838 557429470 593347594 441666182 290239304 626252720 845093009 506795080 883134979 422037740 397847388 429925935 967958409 683342188 65878869 3156272 825806294 116617673 442874753 708067518 261365417 959239133 438968790 819528306 115307313 969028043 419334154 319514627 613238953 713739043 514564715 960657154 807521939 85936317 773557398 430142546 155855641 240841784 691812383 203630361 81255713 405218391 855665679 666900884 706793045 849247927 933226145 455324856 181014553 666730640 606683120 675055009 782162076 156188152 1463763 641939423 607634670 540271694 361017048 331739432 679730742 925401512 131548655 665987291 674751146 629976105 432418492 622397658 685126272 898504890 451691039 35542084 58310366 134700336 114225672 114329230 75207337 607500004 439759485 829475385 441254727 98237938 877496577 912394094 354415150 55575495 960514886 524206242 102757052 135303443 371653042 985495752 647693078 614697258 224689451 807744598 349920610 113491358 697123621 950570600 941892140 850823796 376525629 434807337 768995100 292836912 1061169 785669804 38489002 483766244 66714626 717133259 579246714 342964635 450624638 94727670 754342712 4478190 453285427 430438085 183050126 691956602 350542972 144304168 703452566 595251599 917946970 755181138 900528340 509871369 159637539 619484661 733599585 507055196 646380903 956605432 106871414 304083353 39309288 220621751 974132250 308233546 254774556 9261827 478672731 989365809 908778808 15440307 112464376 337494001 231551166 926503013 394767564 416154581 654759898 422140006 55509485 76352957 902214794 211999006 570190318 89508842 436298748 606567768 769842414 956709005 466878671 743122786 867161107 579924511 737321172 829675661 372570005 198311624 173630808 333561063 204221062 838373307 306031789 73830737 481767780 518177274 844250281 247557122 112120582 482848597 195535967 613881013 284275190 270579715 66967099 408804980 129741520 763858056 582325059 942536577 841148426 480595788 667277709 758093609 186476389 930251309 924434326 23080754 746887583 577423840 174938376 752274017 310077580 811262988 92621599 297996917 765345697 381039952 630518728 775081656 987603226 952220237 890492965 988641997 674795060 22292399 901439478 685592600 306301031 100496772 266785657 334979278 631973219 70697174 614290787 342011589 134211721 652730242 820503652 120283708 458159096 109282231 583428543 700113021 110840854 581970833 576044427 376313742 397145338 334178237 779752313 633505743 750726575 876407314 200145475 669739217 573868911 603869967 849597455 217143268 501577108 502638777 63226582 967588243 813653561 379952557 547117496 182289287 502027090 76147311 334527109 41936757 261503816 355088571 241711683 717987912 106534371 185015345 597698000 16456099 764991002 783982001 966004899 959459007 796906266 242632044 910028243 341631336 885048095 835904677 760571995 968655575 912739177 909872813 808738834 66410485 619755099 594169265 341118817 856221467 318352186 760542805 350419693 678243942 32148497 779411335 369347399 510092705 382391751 620780732 625729867 292327319 400578266 167959519 97020128 565755799 88647315 888657887 369415546 649276715 444121321 918514850 683217555 645563629 192374373 692935243 854229379 918531246 580692966 723306166 307353824 672539505 277108816 691594891 849485483 817469405 416575677 934341075 618946134 321391623 319326272 187546707 55914682 594354069 288704299 536321124 729775550 204835545 493693444 76286729 810796140 150209110 136350132 286910949 382426919 979139186 705416845 134165124 971186528 737361356 406034630 401099427 238993995 209246936 723856698 125884987 299971167 852227060 163908980 793014058 623995878 259834472 386287550 321851983 655513633 700385919 703989985 991400871 703836521 114921853 666348495 601626041 57998137 732668138 94359093 832491419 683150317 885850814 574867017 148913415 937308554 391901801 603535232 841999363 233055940 851013558 665049306 241481155 94429815 50875908 783261515 827059972 353205604 771277602 818554543 203931694 791845776 680365028 545027042 235074601 642786139 215244992 616942794 192228105 289473980 512765509 671914246 725387330 621684924 79108261 684404398 912868017 581483445 133277806 401041590 306107446 520780627 188347366 258023093 268934418 253155923 230924934 998370401 243658235 193513318 87328273 292958535 229602850 593977906 549929439 846186721 764828581 857302297 880145156 312705983 271304276 545829157 400923210 505634848 736595620 388788477 218351477 993265583 814457507 594756463 515111212 956338303 915551399 574411933 201965962 932819948 340331839 985324726 551657840 743851410 350637803 167278359 952260101 222196187 894226908 69986052 514146748 11290562 215879230 764321346 254139312 458273782 918751427 600145753 556383007 65049663 415330225 352148811 49355639 688500023 608320922 16866961 215876955 450857055 869956113 418166813 877495459 900583802 672727501 561640324 860436441 848600820 531963448 29538296 507957637 249482309 612850715 362561837 241544449 623037233 16885983 765815122 141871384 39342543 999976136 632323266 633736876 351801204 433621746 424025174 597760653 753796272 625557571 391048300 376226758 126784329 766693406 795853566 454460138 351595972 787725867 347000030 35030038 119146336 880956886 757746947 822505409 462843952 220544641 708716070 12926994 828847305 885727105 863088618 777187763 776021135 485027017 357537677 34918392 862784014 729048128 691161922 876715044 212328876 866921819 529164683 658724391 703740423 887145430 634446248 379354547 91991973 84621096 54630732 249960060 147949005 174608956 539437852 726179666 683227886 104032036 208582057 379867199 220145432 497069809 693909480 228861780 849460512 501469501 789536008 494885218 729079542 767290652 836987295 157029266 192357992 790414817 430268345 426327965 517276806 904743620 336596093 622508613 502554702 179061038 208369970 596265362 132391395 647208134 848482614 108552207 884057971 164973833 192109326 195465860 546282434 559218916 90985155 511079439 488366389 384570153 576826915 286144299 575041114 857005774 22036449 272473129 65946541 72555644 142071688 990021958 839365638 747314405 964101314 690422186 978185425 947704523 634269452 70355346 255642553 352007525 825782111 779179524 981448002 714433857 723344900 166938038 10023505 391886610 341796438 615122559 111822992 222174968 571702534 424122980 305724831 521123631 913136376 802603558 41088103 824057539 274391384 591175634 486540537 960501059 856102515 386575351 931946993 158768778 640734774 605672444 507634298 709779825 878182452 333527503 96559823 772008635 137360590 877150922 336638170 237748744 718853405 912460472 241191873 776158167 42899994 485005600 25764297 326173015 938546812 100711361 92619651 264665069 814334136 656385970 884054112 519655068 800194770 49118817 178427772 806043299 364062770 989804497 953394211 220220793 512280467 640706023 982181619 814486469 685059976 15340926 585953500 777709659 399266921 577212832 315539973 794248167 320068733 534614665 650866886 374426833 83776007 833141525 953249385 871096158 278144680 820529551 621975315 573045271 181310926 888374935 711335482 862392327 517260299 223332985 547474073 25202955 440340436 198806853 91248036 153888919 492742071 462538991 918496458 278921064 72764898 205719294 184627878 518417808 116975305 572556741 984835344 606860664 388615940 829659753 412074359 986529138 429336780 728513575 568981453 658834475 757782973 534452675 517684303 640689728 690409929 5087841 716488563 105983394 581487241 368321976 649738021 621087173 176244390 708768664 928632494 815986724 974249473 868002170 355009673 953187525 94069262 345362758 64022050 574431740 425364814 234984043 235683262 380153163 456342643 920675600 877353703 707816778 132945252 542565545 424361282 528966355 476681813 487422404 558940472 185583292 450702390 508419295 480629649 82847587 991073511 541663562 85147437 101795550 173369850 299801867 648078133 665968135 4748399 783887327 800453700 967016502 744264280 743478509 214333966 934880906 977976883 775452283 474582605 264286788 947793708 239203398 811258953 271090608 403694153 755116515 976917207 278752515 960452307 180650748 938620419 123485561 381853317 848116856 442083740 8049041 212025384 618922987 625660824 402324005 764108177 443153044 915572151 40760698 826969999 11481123 369943214 823061060 3959394 346957760 600311264 788883039 956258478 70934015 127979996 576573341 252636424 188045709 50400750 308513817 86589217 775041048 958719743 84148508 745452886 124964271 931584739 887344789 734560598 874830738 861468084 863819450 483763270 961148824 487637192 101305725 806749863 771264152 579759393 524004924 622555499 53283620 611708688 834409893 439244682 120198122 616047997 42513404 835569499 754678763 473354669 284919970 733600115 370026030 106461567 768662843 172574275 910926510 895818716 456285474 280687252 471880315 978850644 824992983 211781331 531040886 34242623 666636750 300651809 183465037 770162967 98606666 989787629 846505273 80839158 388677603 583963133 950939927 770992497 879873936 919765158 160378804 371572724 786712473 862199452 587461503 876846888 128645464 462838451 241925334 312798584 601628835 589427167 740820372 847344171 414721164 988588339 216147038 945887845 696940162 29199547 139739088 735291873 560324905 804739354 131402367 487749394 840820442 348024805 862391787 599711214 137776017 952167652 848908027 224866484 598718774 631214732 173301642 457914586 839004215 521906694 745700826 87931700 326729970 689726469 556542734 358609466 725910081 174843611 734715980 393563528 302962381 638348910 476252702 770859554 67382217 985064620 206015076 741152617 755621878 496028580 381811553 41303046 813458302 359357362 959647695 895196704 226049444 471809172 861327982 743872088 890434460 693128765 258926061 755379081 522358309 866772149 953056953 7880198 287886609 116008251 631888631 799129048 609802264 212561519 459488608 977580268 466184758 949102757 344716206 280564102 960239314 385030134 748462751 845091046 479322395 384156576 935310098 378858157 648238504 715717004 343358612 501365631 642427432 409012467 82017185 300153474 312948847 693980858 527154729 638926207 323468054 127032111 977658076 129196572 662358915 371740817 792805280 167607984 712825949 963016333 583314400 96020958 863832574 63259548 606043658 621625443 499605406 87887290 588645395 359176348 307691389 537076511 772111455 219700520 422244114 227137969 396202781 333670648 835190928 985654005 994309215 930839839 476230529 101545221 834970903 237551873 933805091 159881449 711592314 644593459 270564393 477077723 224431948 829516280 588211483 911695939 50186956 472211765 572486069 739054587 16157955 427573453 344167978 295702338 730722538 212917371 2677196 627831110 325526975 767078620 497303686 328033899 899551373 299858511 434379637 640622622 999102895 977204055 681624986 836362185 64871996 519000828 651008138 517555744 988411037 755381907 273519961 561275149 607893293 276724980 951763292 755634568 497228416 263553201 171803029 302980701 54477516 195007495 274028635 963866868 436228161 323580895 610011820 914938074 635205175 668993777 284379043 403285983 684776362 32267797 229241084 153952747 188391642 447552069 811553413 448884846 426264444 951985399 541301416 215599581 208145322 132375615 925124081 457121854 126016399 738518763 89032262 521392550 480211730 95397304 658592042 298307194 508477874 453061334 79866790 416400772 259092793 641105374 733145272 751864783 561979786 53988328 426358486 6726631 666329244 255723141 984971157 159794181 520661587 491050661 768237353 123766453 449529494 250236130 760168998 419986262 120740469 431299848 2204336 265650413 28154455 534436535 458731555 86882146 163751239 930961096 161192303 781267274 196770085 15022459 821327030 408908647 541943514 484732526 748892416 932542909 892936964 330870092 662591121 727439273 181171277 992679691 513649637 296898783 500383776 974910888 745419854 93415716 81059086 41179465 795403439 386866640 610977515 283420851 940947791 31795945 97443126 622006336 573785774 522125237 767473324 264944078 232966743 673856000 896256329 322837264 556244154 883109505 735926783 103007421 206375506 845350048 372536646 895234965 177853387 4336609 935423805 437697542 375347171 774250574 351557082 523784282 320651866 415017503 654749751 943055017 504836264 834644317 941382320 708627043 732094376 159976640 981410536 855015194 378203146 617056823 546127300 571155298 837896409 609128972 134166322 770943360 72602271 989995811 612771948 466021230 970012436 687174247 761148746 91331408 794447157 293397375 271858292 373631393 716158596 820661115 822414488 453941805 718726242 325758961 633225750 999825463 137527533 965880744 590482279 310856608 647910719 531093871 506762064 714246311 385711188 988077586 64358588 637418220 237508085 781820889 412938058 92657177 576533437 638227850 344302422 97482394 559675405 149445947 915831323 608051965 882151845 499238884 686239805 611549192 620154589 42490492 456827071 981557889 234784725 438832320 698655906 802272450 954033929 84209170 165457241 696127711 917406470 561972748 778916784 771494358 107604825 203843441 482119209 407546186 9279061 158616428 949401039 845803139 430343032 811193735 640287895 912988909 391179344 977484636 541709684 708150272 137336281 142782288 926159789 786923869 591259143 137424645 124449692 606374980 160883313 997187688 297819416 160447391 233610825 573493112 89253041 965040389 621632078 888842318 11972772 802662329 463772598 855768079 970907170 478625913 49667236 690222344 85197800 896947275 846300793 768669709 982941239 401283862 206567721 392749590 813325916 50590598 858025998 784544844 161210532 130660214 207746051 792874001 838651427 172385710 482256730 532250533 184166914 913459099 342197051 184325849 578481043 507976365 318828779 193248046 403196187 55797887 815807287 718870947 579388976 206671013 808980643 397040960 128332665 663346910 788436273 407015516 667338014 466716359 819271959 127003712 435485133 75002297 159630877 167291987 328377891 277827314 156593790 588643294 425240470 139399816 791096349 895042970 809554820 886944271 274067302 221417944 703408991 246140209 168547974 23654511 956773409 494824724 643236599 248740209 619105158 241799903 829179368 344015990 177734547 780901654 482691011 249629352 626319280 428500000 837971376 157410564 268379412 418920904 972484513 539423460 224767208 664947287 918721200 416087366 246548466 461847771 72871387 204623542 63501516 498569373 159971619 249990288 861506725 475296918 217440641 945671293 927842924 579043236 184639724 843873170 918867081 849562047 972803248 160802632 518344630 239060185 484669589 305760541 949947928 147669789 493070119 267110614 60792517 604402008 457759516 250317240 167811426 913171679 34239106 418957051 335769382 131187387 433792447 923627864 538816525 340421275 986263143 313926388 22348708 47093543 592496125 156769518 814722455 705037083 234604274 433682335 904143550 316431819 87612378 189075228 908439215 894967136 347807444 518283347 361242902 314205904 687839869 701813857 733873190 419378424 962854664 606546767 368090652 166749476 61948512 79285144 960266289 354081317 219308413 347814946 527507594 120807073 532423659 541984531 728568455 452226585 325833483 507940504 898174598 934057637 639249151 657629562 477320089 399952473 503072655 991947881 869391233 498985129 13564240 503694381 599894201 761904559 619693966 192993511 447583864 263631277 659358373 256836696 306996624 174011749 294551796 615338580 301156184 158337740 805131296 380763721 511150501 58269267 262473227 273876158 993824888 544400576 286382088 400953145 37527248 196613253 942422634 861179913 775283331 669669633 908723683 65728700 771960424 853497837 79503938 14614600 733316291 580491006 470486302 135563912 20702565 178370394 15389446 378815997 728485602 546616154 385069956 473111142 248694285 670020388 621323030 771695241 98637269 171699206 688713136 776930217 64400836 934523628 706765387 862844789 379411526 470575000 143187789 12673631 26265955 540751973 611466318 89121633 409041200 998824774 819990434 331141211 401833158 975544456 120261228 226908910 230099152 852235829 261867991 542393401 357423219 314455447 424939166 27025710 608722689 410483280 427916222 724737518 45792670 294169895 19182073 520538599 391719037 460555209 348909409 789975449 537510629 380269042 564029111 292428283 928736557 46426019 483053186 452317950 602782941 576100219 217416855 521278300 823784640 674404574 677746480 79724350 841606021 804536568 503649506 620007364 323687781 587045620 887847618 102893084 579896215 35948696 991551339 109045946 786468766 575353165 828974494 37703559 484308167 489730714 240255484 463805549 799771450 687988685 731349378 301883302 286965991 155547658 34858950 989456293 196406372 803723675 719053498 87715242 23392993 362639613 244557594 888457599 982363939 118579842 831473031 268009109 523126946 779941479 266172732 373063053 690345545 175110885 546791024 615745946 388475490 53446195 954537548 828831572 756707299 96032414 467674657 702729385 675729851 782500379 700863943 545743584 266538520 190609984 403522598 195088315 62208691 68562429 339549217 480760233 888495787 835884901 904489670 704339411 477097725 882690669 541836990 494604427 950601014 537146029 842727617 972877155 575644242 971261264 699011305 833214383 937504514 407640226 645229519 479457064 187035547 811750480 890481337 219592447 880947523 481062488 300433642 479168586 781344259 97460340 833568229 730645304 933741344 275927668 49417218 987312175 517932323 75560866 92373570 715274188 334463919 151215510 865262539 740195865 117997828 885596266 807809307 914045937 459110625 755684175 475709367 932329610 417012899 221405880 621492310 155168762 76169978 845980408 203336548 800901687 896893429 889168475 931286882 599088487 968426132 183599358 7854224 878660135 322030182 395666820 959473788 357350286 555634340 921477313 55267046 180487695 668177762 193199377 532098342 130600035 913321229 636922535 414732990 851541349 794146772 832695256 207491467 744814215 525625399 77074991 526490721 105769644 626274564 561801703 628374689 563109402 88074189 435940490 591517312 83483289 328053593 185379715 648699085 961696060 867069719 647866697 399496538 285943046 162344202 761952349 484604913 518173257 551118791 3705328 64376427 282439404 290777565 577810682 272339520 54084238 585400562 541821748 304309619 666283937 44835830 898126597 594593581 956614786 89827463 518155814 405467875 146675229 528968845 450569211 226964621 272869928 911558651 113644596 122189901 17528137 567939032 304838806 606727277 547094166 861383665 412294321 715428274 957440518 308040736 488372835 70555913 772468440 320078855 936565018 583222877 147377985 885614697 400642135 309207393 159709364 130258233 334862099 488876252 202389209 689711451 138358069 786279364 547150780 391095914 847568699 218980397 634352903 83891257 938576065 412711273 310195836 41869240 620099441 423621482 583273576 955272097 246112827 863769387 141403136 631833948 58636115 493699232 187011332 622830405 514770419 127944142 220769426 288593463 106624173 352004644 359151622 328429024 274331620 931974671 999590236 690215833 857831713 89694425 576757193 640395092 773697155 311913451 497414520 294589680 876974098 151899263 182641722 140833692 558436653 125414105 260382038 297834479 262924272 446969955 396003445 639379581 678876249 88839486 833495693 623984999 414007989 896325060 116611147 978591506 985500440 763300066 368298439 282019160 583773119 757060412 9245499 306922815 485489362 862546801 362123379 436668178 973497312 962854081 969969766 664418387 80778688 183793889 467721110 763620116 215184996 905557106 438835799 649500250 542827891 454954765 758701846 814570595 103154464 379345336 661922781 484804089 839969914 898598799 687460356 839008062 9588201 717059163 944055417 410150668 226727477 287227544 514829419 430741404 214267930 968297109 257504612 870153067 925536307 932289405 325841555 490365098 244131339 131216970 889979000 967188512 10909272 16223215 574503383 292740030 466072492 85194187 999699519 108110788 259962807 931681968 127191566 617900353 725039589 351380330 423909162 469821362 214498274 15077086 309728859 754015131 897081616 666853335 621037712 330141373 445445881 95851872 855602638 425600982 372712516 58334984 80293768 38305422 181092545 269949013 818325821 903005771 853012798 143340298 438548357 69268710 233338886 927986523 5127408 856967113 6283165 122446162 643811654 932654891 470690147 310460688 853938690 62647860 906238594 718059819 641618664 649512374 752849546 429041108 135668275 544799110 398179454 672809066 822286605 405376812 991612428 788970570 161069235 934566421 430863817 911830935 177607513 810781498 919282413 316231264 557057719 513152768 772990003 476472769 466632233 508720683 675980546 596292580 541979049 26314100 429779203 61426711 381000594 409666068 30617178 958946527 82196604 411891998 454486022 655837254 137021556 612523292 348565134 938293105 452636714 878468725 334129302 284539102 480275501 177919946 800630300 838035537 57146572 682229263 744012506 898525544 553843842 390472365 111522229 152975368 776424676 229609448 154201115 89516078 758310602 32004583 628936575 544821670 350557211 876093015 220286987 502900265 762270174 478001130 457572606 393459394 552779533 564016930 300401376 79829210 686909849 87480451 435290349 358809474 20078317 988460645 730771628 891560311 659767484 215514409 10121244 525982487 330067387 373652019 728568267 984573317 31740961 131812565 137496879 378441038 124570630 621265111 813884462 435809358 416294578 92805177 394835172 209549886 232685079 13978140 463546634 190952115 425877666 979714669 523053500 660138475 473958076 546246860 777282625 500664374 742597119 342662063 693833824 418127178 688728004 899612620 594255298 540203611 627732915 119114503 316010880 498713586 929839260 455067112 866968668 495265931 935732306 746948184 579287297 735365851 631444937 84301746 853459817 630361997 57529843 202679878 438573970 389884420 479493232 617378731 244690244 609875117 409753215 613491507 361025360 222472544 549375129 499397207 742612965 283768387 237844951 303943725 18356302 671383427 347348186 181082149 504360876 453894526 565806028 139381437 957854021 18006159 550462309 376831913 676062153 961977807 537456234 964912700 619342527 608500979 632946283 883158319 653203048 25456862 920474559 107149762 560512564 912615350 878805319 435273448 848296670 990164107 423893214 703429769 383107647 361034851 656168204 54536966 34615956 936366291 647041601 122240295 141700560 601788406 547769059 210625449 862932770 32274351 353799224 495081406 226314651 158911695 829114341 73099599 139695962 105953012 971538459 260106377 845267065 631744989 672997543 99436299 57859269 969653309 661117286 621329240 218610815 822944563 879213353 126963983 479833240 574656300 503671426 491618224 432962746 823782764 506391342 637628905 227799772 10546166 926704323 783212788 383152925 234876422 55165967 846750184 321249261 81596240 936992318 782066510 321142226 801163972 302583306 316649909 133893470 895053493 413517228 836447705 597625198 712880104 848316929 450588300 624106056 452238463 289346563 652156120 609463793 713554066 670667824 920396166 529422576 201037532 992684537 634840585 398271364 88864921 57106254 950783628 638975980 516727424 290438312 39067065 339737394 711951117 891788915 877758956 90470202 570727842 811937184 725525659 739211530 664246315 830548656 387994710 840983288 22066265 514332725 728371810 517841170 259330035 729221330 278544171 774263421 665107763 449460163 974361905 24965577 689507055 43949089 788868095 945436745 651305185 539164306 404778235 561040860 246157345 274365125 408707901 92481849 643384487 436237132 806784991 509077883 624352748 133295939 142636413 461207815 640113145 51173741 187719310 998849774 728469351 789601123 981348768 415422460 678692528 104609455 401687334 81057856 869262116 557203113 810001912 677092097 439149736 783024228 855306914 20061139 748859601 968770303 830770171 333947747 843108447 405476885 216946837 986847432 22436172 957977389 987209170 88526779 812644456 148338719 139960075 988142345 724907610 324241213 247620628 410531464 953036067 942236432 564090907 581871715 60534969 301055879 831702589 929631018 89142323 70459820 17689031 909926954 21391602 529856851 868407986 481436772 621797250 33552139 210680128 305285600 600884728 579725878 601538962 714551470 33504701 65525229 741774545 27161335 833123736 227552900 615391651 407246765 718008534 865354201 447195939 450235081 718918409 382567724 449050468 843555822 996079487 968239830 96181001 113860184 867451046 432690697 859047253 667177481 314342248 2903324 554973387 229673122 329052169 236792143 357024337 528128893 968463367 539537583 856855227 234541227 730418919 607258026 40437627 326592399 904755714 51987636 113472774 589821604 173549695 94224656 854313868 981905932 790843418 296113229 160793825 760770016 2777273 507258897 385604012 986205050 690350035 416802947 639854981 954278862 262376843 808994282 191628139 82955286 770764139 774423894 693881769 669168084 569579852 382388315 680876287 645145698 711277607 412082731 549540674 778805567 243537577 670767028 721673225 335880731 628487884 72558348 245896913 516985733 276001781 263382662 805385992 153435085 851937179 299657928 461691303 51019640 483709347 788606855 224682001 793142723 655799963 440746580 418522204 323864336 16619649 198337617 290953202 1767146 894084678 51420061 342266843 863409679 868870956 306005417 414955767 309986034 71288557 887063495 614156716 572611895 115380405 28352610 864116275 830466540 620202207 669710155 688840323 865470974 103369304 939232837 547570776 853324286 923120764 347741452 178421698 118134606 769723180 665627885 817507834 56964669 503810992 944246119 441678992 990934161 423664045 103612017 752956243 431692472 979922389 547435792 649416477 536240192 967227864 109336434 712950854 859283699 510254565 813187127 597324707 848330726 672756314 199502693 130651123 929136049 538362259 626629211 836312373 855908916 228236781 294267471 62958145 298826211 801408441 123463592 34446519 190382702 191022038 326355485 831162756 922495344 680516240 734508798 530580614 286947253 997303481 631315237 3416729 384670376 438361481 524001942 271187439 46369373 240400994 157504742 71009901 305897435 679494034 892608702 753452207 380991278 233129171 500411978 197596132 368213826 8289392 802639243 734727631 508804285 56261572 165507354 616355166 991738862 66000941 697490192 922513907 165955675 915245977 297414979 23285816 545216657 812608711 131828800 723859913 318757961 959742269 444342885 469108794 97766025 62037917 786902449 140705734 674752891 41457357 868771476 213698867 341853773 980305663 321873375 360038183 63818140 175248676 796950175 113740189 450955206 465953672 67774199 171615972 348298126 3118994 996813443 56621946 697023795 18795176 692300755 59993950 926692242 477928518 996054830 536510097 100892856 579233323 942788237 701675736 36101176 227550345 227145127 839057422 266918328 683856804 505934714 271572282 175613339 358707578 282640758 961258199 399292163 258618320 408955731 995512703 767801124 141992926 231402569 94570127 802544835 43834865 817407033 349416585 122114440 631277405 363515917 675392577 525367435 60411878 112788758 474673998 843090186 617629508 735025449 167657834 931646228 67584734 576088492 139868825 461583364 533561523 57144836 297480979 378287454 952303837 573619803 99835308 664734146 86369117 590192934 973971962 63236128 162607105 51875752 410486966 31799817 495339365 944320512 133530915 378884266 264673549 868288210 287546295 958930916 128379535 112469373 877373821 580093518 409180856 77835437 505388186 779876781 711797508 965783475 317075491 654528652 482383119 991070165 370475970 855983565 380354996 431467819 542740648 100984771 484680458 46558883 663372922 65033536 602051046 372579130 52215716 977653374 86952293 275826416 953485594 607796500 657426359 261050358 963390526 848021670 841072622 49249972 120400547 422409136 932839980 973296792 930525786 574679802 176205853 240510387 683709411 120507108 18850673 984917222 874960960 779226948 77078297 687367369 38884624 204521195 379583108 952589216 650873013 16092611 602292977 536479393 498380431 7027022 381769231 699042494 800449277 454089411 559945809 383296430 574217926 163979924 376536790 414451898 946564487 762786353 702857923 504325597 838423408 975050625 419629150 845139436 786424941 698519959 515518769 372122032 674587619 419673496 451355710 589449481 753395498 654111538 246979402 150141264 935326014 236947078 384913839 426564750 503571464 163392294 700757928 892837250 877127048 721397403 598891427 835723476 297311400 868584329 219733901 69459684 243900161 989624614 259858554 491131974 510439070 2842407 455990829 414993253 269641466 924812081 347915858 29998935 328771867 426786520 318213349 914037648 574435585 973769336 301654254 297813240 611016202 215349056 542999894 340446531 154278725 389822569 350197894 289347208 556658266 631504364 753646846 166223180 761426653 883891255 159987901 145611909 229531051 991564811 107615622 560210308 727839055 560299694 666838756 238526129 872079318 701651140 655085030 139006243 88191487 921648760 810580977 865739703 647598970 406110560 552060801 834853961 886794665 811233033 432835734 393215430 454835908 21485103 343984358 777554764 566456756 688066197 547466119 331304394 201932154 871586988 563848789 473558562 228067536 759398356 590430358 186412125 136911160 155596284 136637042 471804896 761318176 859604874 515376149 764828621 916377762 352138222 659830738 812531117 526021332 851813562 253537192 802332853 925741131 390541649 204466107 119280001 641197548 973923953 891333164 694372690 447936281 569180610 329715083 194754939 926475782 331661981 895494374 549164445 521222084 551617872 183066874 798202055 37973950 526366424 516941296 162190999 161804165 31282402 525093652 802641706 627215706 671819650 861175738 239372037 40957875 770516879 510192986 991161513 806055852 563675847 446899671 79421051 298364486 245398894 911611251 453275722 421904755 452129587 341634286 534345826 429281438 66761758 314347178 494614916 196926161 50334754 581825653 485663317 397684614 201422867 863690899 263250318 240578456 288877250 552996001 648495781 278791105 564901706 290212450 868082817 511436111 674041013 384849584 166035341 191671577 595477554 382939158 991487976 507034223 92006795 734512346 423029562 134238393 458529720 190116356 776907594 670692079 633503000 278705753 338000494 604425832 159669958 688477484 719645763 740190928 143625190 846142358 31050392 546734952 531458598 678534264 440579607 708939866 833305062 602621920 134670987 238764515 650027047 577461766 589327035 818567091 56858114 103626480 636447571 67169341 382054896 552940044 925833295 583222910 576700455 379056075 301648228 236162331 527863242 273488686 891831760 33658184 590335969 693256808 513647768 477076857 327411215 235121242 894528687 336614897 15979868 755449224 136600789 999994875 460131880 303839036 412594706 592650630 994693967 910281954 525125945 628850549 824813382 438124869 846350224 216144484 709493724 634781698 187662372 76376734 730413500 383535268 493410589 880036504 464930684 10770019 674774244 601101573 177166495 296848289 197152520 354585260 704320272 739539270 649770174 62671982 205095590 472697637 520652459 239381412 535370136 69643249 862838103 823212972 52427229 646219009 810707716 827575247 371759100 527099243 104840931 31450073 895334398 595592446 256125047 21030555 392249710 337544619 29415926 713207466 440829081 839553759 470334164 120231550 767850399 161368195 471314307 933307086 889951643 859007750 786820119 519985481 683233665 845383749 344860977 624368329 847112012 188287401 234223207 404773724 877273393 38393086 391002427 805731840 697632657 722026583 886743408 421340548 663528297 208267565 485138128 634315158 161680966 41284318 491542656 152254124 155658759 518055144 824722784 597566057 7357763 144190815 965184633 185931972 854019253 290502679 781597561 227768629 406625048 37726252 470356734 511964576 454608124 738611767 368504568 426427287 806579291 746986847 763959898 604371888 378345027 969933727 510262872 114858414 492459821 527892575 365046460 930954171 72223269 871006139 362790561 72478803 375876408 834041334 433202386 835439206 908339495 705942033 144436315 634891050 259126115 835962264 376821231 568724038 483517574 648020118 264552233 35655924 534526399 550334785 801352053 95436169 290608403 647631651 256584661 259992399 555363554 770469671 972204847 836614754 994780500 120352394 919124509 143811593 887540570 903723603 500190195 827977650 985506493 572121975 250123890 978308042 102410804 20548292 403084714 335075158 195735121 851418974 201649906 115084111 618894970 843146842 47402350 185648496 958157212 125103017 82225526 592189084 552407814 811172582 869415670 957578920 306734760 932708374 19036404 366727237 970284681 36287368 44196660 71395682 794125920 773479673 249164447 789619053 67233690 142685032 309921129 510862653 457707740 7112878 715160904 860731968 594075401 211457167 133725218 857995379 166108969 68354767 187139103 535691014 521001131 532622941 132553815 206249463 745178799 340010042 868963481 960310436 876717608 850727140 938293538 231736930 742477679 404565775 80157564 712390119 629596940 961544246 460215566 804036861 796296820 558177956 345143774 943727229 542426772 796948397 844696753 655810773 217109986 727608039 561200580 670777521 521716357 704275313 539833594 542557037 231327001 854256484 713169122 502052171 971491811 699442125 375049943 960253261 278742246 460522930 529309314 224876320 179729806 828882101 140939909 138212262 940090255 464894130 306309608 521682420 612920009 938861225 844434626 688764545 5932663 520223888 923651051 361246395 341343132 660022090 764948373 691888854 546706224 100734872 123327665 677987767 440588801 925966504 882201748 554312857 799191469 405506012 832382936 17917142 994087808 324009677 715046682 245655383 428036011 911808632 618010803 825009066 440886265 337302060 646175628 155541072 710957171 34253647 465702297 418978883 565171996 429729815 659921011 533900001 424469537 558364807 350011991 523517651 870031803 446441479 465579263 722234203 62313253 57267727 408652673 413276830 448022924 178077552 151079021 564821461 317639303 735815675 63900158 76991869 32727804 978014318 113971795 295534625 947510668 270434354 850216636 878728162 133317843 855589986 109933863 269328411 89592780 272342269 897109787 180625922 302979709 49958370 783022732 89571076 837906359 361044565 548581030 323817795 454622577 298550060 207678465 688439372 144895819 243895402 379033679 883053184 422666734 402875933 108568616 64773971 52651519 384898143 344665606 161160950 665393957 110750214 224274396 442753273 190534318 301985950 231740262 795875540 617990300 627944427 777718405 262640641 165047567 271664832 377299635 801544444 795724559 44402205 693308007 930858047 234407367 705339828 721543106 705186047 66668587 470106211 313326153 49538992 366734381 593223633 410709748 637110924 653100662 595119655 876023341 391589622 366386842 519104858 149198993 336474188 716835833 374017279 303352029 494223382 895556833 7438296 331769482 929379952 853129580 953508028 212564030 848613928 535118918 576500251 693287643 184978594 529415510 486475093 766674342 943678942 315671978 177210541 578406075 306826694 973680025 336937586 891796156 769087270 858108364 922291016 595304260 698143916 887283757 207846513 660938288 144502782 228478092 607552652 781438086 70359857 253326104 252633425 210921102 883157036 980774570 516792119 409225970 733131754 971003350 491955068 642351097 479731276 460415223 910881722 438124298 451819101 316476951 543370388 937234952 950665906 919129744 481973492 648731942 799085772 735669418 467648297 439870538 304070604 465155317 473922011 311353065 86800709 857119025 214073466 356447620 516412626 329400807 901357804 196075606 268784676 650251558 708715306 775718040 722215212 547260946 295332453 63638375 902897727 856939504 812356779 480480011 115073856 177261593 148954841 22560839 243263724 393956078 54873684 201735968 737649729 952943371 578331623 69785310 699777056 815710979 239111918 615635053 855450100 37096875 117307281 567573034 15748099 895954345 451153711 971564038 913702073 336102777 818566846 908521723 724508652 334432576 578115536 14815216 898237886 829375655 156383378 570724344 383703605 875273441 297086863 840497061 310702827 923952041 767064861 844428310 217115910 807261453 486068106 884048051 824181013 182495697 643028959 411178637 190303054 16536272 374036037 935233383 442539480 332816064 328081882 769884724 513191863 348055823 254903391 340328977 688356941 779193435 478089165 210850907 21505493 132206372 352610265 610088691 173750276 618743026 811164143 354532370 635524929 951726124 600228375 623540580 254641660 52327795 124981355 22803278 744340336 992888695 715023496 947803012 372463499 901591467 959333772 259650232 636072349 229237999 460314026 358514015 537956230 993835641 62170555 122883415 3573575 933586457 125210102 523744434 83981458 746556096 442067934 367353295 134193257 206440743 969586434 26641368 963601195 327007549 70572198 931246013 89791407 606422969 25402625 287229956 928764541 156915476 840625441 12367437 544799685 821214797 164385631 365233382 24054972 972574209 419631966 217823807 574140016 864180652 789223163 555364246 504431554 8463549 925927855 308868314 12266560 308755836 737990176 962704490 953333040 188139132 138922145 239428876 41103381 502359003 277354208 974585962 575615673 216234866 698653093 980451414 791707202 135235812 301829072 489260712 869505636 617127289 91889455 378672069 773183528 298456996 399910232 71021121 118176950 243099955 300761726 455291679 35980205 293970092 965954253 362331246 285919465 613597107 315302753 924075176 425403354 962153711 263689905 898371915 113245441 43097424 344008594 167227445 563097398 765862235 402107568 253907318 2873960 74750426 867103605 467765430 561251952 330701090 707595733 505563909 457930391 270546812 102052000 148322659 638840983 74561485 868813162 299687936 194475210 346729802 472981380 679880819 92768497 19024015 262305064 762011904 975876082 142547189 649020342 40744668 952950467 428162069 273028813 368719905 740871959 986189496 974932806 497043279 162050642 586511083 482132373 245864420 861024758 657799630 891956081 160684526 596784563 625624304 948126624 645935943 526542482 859377218 972484572 2209338 22098385 27370833 966333877 418427025 290606082 922227181 729208399 81724961 991389614 147274992 44597245 553259841 858999339 192255197 990531430 738889343 621735008 420787691 312432175 425098228 602188429 610656608 909745112 511920721 917032487 586533899 478994826 516039737 167970887 917042982 626139526 746475977 46205844 452084296 304878405 731516769 240107323 754499676 973457821 111165389 682590485 664563195 779332452 295184406 656389618 413439358 772568274 79708495 20471253 777241768 703431264 973840117 267847232 111878575 279728645 452557266 522814599 737006368 579925783 641137266 830350653 495423975 206298922 670758985 538357836 756340895 13216705 868996377 26055650 688232547 10800652 66854529 581376358 134664779 468682208 349753109 417095645 67304592 564503786 863136719 368601112 312388409 55972173 960289358 560332376 369334145 485198271 500019454 532535269 449582271 661492847 828418865 462650156 852537846 371548674 733305553 904327214 143335996 7634398 752371761 225066808 499334771 503314775 827688645 514749050 923064842 38782837 125645069 567206210 747400213 212360022 311321556 873812384 174259322 102996194 22342195 374794978 638505549 657607281 193618721 71991577 952925362 512495514 821298947 481549026 411644426 670816784 726567247 525017564 109152751 900547147 820218436 611536186 52920809 345850395 954231050 210886588 489812764 540485838 925820272 504162245 399819901 761571354 335662008 836197525 773176026 701690056 694220706 324627293 694725518 900591443 574821523 744716768 695744176 185857083 744205239 885767998 380164108 25849161 962422542 834078140 236264134 339097988 385773661 877244989 889950271 750580214 644326536 889371521 538351949 569359604 14723142 255275127 68769210 965207734 611169655 334667193 218264216 279997513 838421169 856977820 929510909 411060300 749296615 197272914 991625012 431722361 544350511 574627326 214956154 459278430 821387763 897265045 509491631 197258710 970545100 880021909 278994608 178303852 417892563 572212944 218147985 356072195 906901505 215731092 859718740 29798759 403218619 552993324 615332456 483059043 954829093 234868346 382068193 390479 263363946 559456386 986793815 547438292 697980575 163487089 538835831 217626160 990506712 715825285 65168595 79248746 224866887 167407087 776586631 937654284 553654937 925759711 259341557 57876653 921437204 771858495 27118828 724594400 891673838 718538891 215797259 845782280 767584154 379758493 849586966 48061597 997041276 300267327 791613687 534404917 948470358 913149953 504235269 325521568 375414308 287634410 771994240 106789324 614423790 100635180 850863392 932142146 580138399 794092416 194862939 771685803 223071544 760156743 838088900 781076975 659876995 511968627 351411637 857715563 997136198 790562243 202434476 741167454 498669064 844609825 257253719 55090885 806699300 480258966 361646927 881459786 295806292 537439453 392379416 374772119 279576108 62346166 399001271 715569196 550370440 383668391 412294587 361947637 25686236 226274506 975047082 899219757 292125509 143073105 760485284 626738254 131579022 870754915 240131653 793785808 681873309 156661797 510463636 675269059 245123963 17061700 224675452 490551748 327270516 854066813 714692595 745362449 573030549 916826451 162963069 415836640 312400243 786778965 28116800 236332541 533378206 496169825 941217120 451640626 305675771 430566904 664860653 919004418 617689382 428307765 87737726 5780777 921072350 680231803 971753477 665707431 643337768 448663949 806579233 365026164 581703758 280610638 920064360 415051874 163522620 304848118 49197994 627333781 943901554 902290532 66689507 477045431 575515382 665412420 511728541 516299331 132407756 318006262 503467566 305329817 97659810 89356901 961320215 679890573 683344066 610975550 847527981 667341545 174341595 984238434 696662704 62000584 262817882 175154821 282968861 31635056 82316528 989313771 644087401 202494733 466720204 425519649 91306453 227745235 985321015 870074423 390683657 40033517 91181220 572572726 81972725 554116173 75665197 179443797 781439025 691657749 891924519 191660323 96173329 772136242 134798795 515610160 629914926 286186944 944057831 244485955 158042717 927360884 853685279 330581965 394981492 210613942 551866516 314851990 849590508 971078575 943737519 327271719 133426083 969845607 773673192 278639776 157236081 771161202 833233229 20615559 567580936 95941097 535580803 5845843 624776336 836992070 483443609 255837916 609372921 594626394 701104753 154174652 754105254 186993781 482642661 367101356 81570214 480712247 783400694 861889505 701118986 948451676 638297638 27161845 690730099 230965903 341075729 235772444 384473321 375824703 641378384 772083420 944996002 820591186 427913000 229195026 268455735 812806377 602406279 964961049 587222822 337933642 649205879 1816549 294758086 967596404 868045951 401762827 432908034 564105184 979383948 721200715 857100351 763894392 8653275 879740388 865971665 626142670 561678936 440359491 773530602 858099277 653620523 548085840 54510752 531306820 449274553 65823322 343261263 587065090 900740767 321870260 830948635 807812777 314640948 105169285 773464503 184553839 537230446 144938651 171548282 558400984 614405545 875159830 429433790 640217781 810052610 488958597 757793600 496705519 742139021 68342671 342286543 454886788 650086546 674895819 393765906 547689701 71726205 180790873 481318237 747035834 293513748 949211664 750362424 714166247 547827299 821953293 549207489 755841274 222786845 107340619 973723740 939797166 581942021 784648338 923574579 96360408 250644542 561762036 297160186 584422970 616396031 88674763 521759116 853792446 936608492 747461261 338366249 688031285 160243736 911567688 827991354 995414346 241763051 439847812 15382274 888264542 987521590 987964564 949190238 674410669 821544499 68959170 635586677 305787032 971474098 632424260 917771278 203311802 580536545 515227424 827918196 591716422 217057862 453495877 876661024 692954376 345773688 757283424 590063787 383094089 765396354 544131491 262823800 419332016 77857351 188079962 921399040 179025059 228388564 990869709 879098145 81076771 89226828 919879541 248463520 687415749 124145942 477062174 134049890 153917057 748267941 948801374 376987730 393388196 584157729 574940608 815096206 173002312 786532329 146412770 960322296 736924094 367619746 651559605 612359766 190796780 820440396 440063494 681427768 940734460 435976271 392522064 559316855 694830905 599480183 974296006 197301829 945907434 113430761 310550829 575808718 914438441 538793005 76246502 904513727 671186769 278102579 934497213 428454445 336192829 271509498 123026585 343549174 794012045 782240126 432850016 351274297 928647137 932662871 421668581 302811985 369473457 775070832 639896642 319974616 391694307 733128902 427772466 705108477 523338879 422485309 990028202 773961855 775954054 777461539 982580587 205896675 806320193 15369904 116973813 37982487 659217598 494918438 824485423 819385183 222519456 39517753 426952734 744314462 53751552 156864263 460746457 38793908 769793905 936567249 7008156 293439111 767559673 299796409 737120405 655064538 714674374 439622987 719291889 3080064 902254680 320129322 601667347 982877781 982512235 46389659 502652058 748312294 342705801 198133757 44924740 125447514 111725574 233164851 318686981 771168356 556906622 572145994 514495142 547084821 984702492 661904232 902298439 135143640 457830678 18498896 126401914 517474194 271102375 969399583 406485171 89653605 537746258 385624745 996659405 429702781 864022964 674297500 672176348 914764125 660025227 646123955 846536525 631368624 634962532 284552148 289332207 622039156 914910177 60755547 301228868 832652909 907928102 543733661 31077055 335771322 759225529 694607148 715087555 628274520 605478584 238431418 110454493 937660111 428057622 219781947 661702220 750034323 567457492 872876711 894273936 769875528 786536387 564379361 842970089 119375181 858328908 619764811 764682889 330853381 149371492 879445516 705466127 895489576 442065262 183946969 175525810 796058856 972494964 199660062 226270929 559178081 633475102 650889389 701159142 151640410 5154312 495040630 824745162 590550816 866687279 186508386 877152529 249079931 716672373 926730857 424454903 565152696 349441328 871902648 956623145 241835583 529028447 108023352 705287532 568052664 183518645 799677675 871421095 280541767 49144807 347842011 174753173 289689059 445551165 516291053 397344264 653668059 822645828 732721025 706749044 226460654 468502101 652026570 951820150 355424127 326227587 391023487 250690964 908903695 470493738 794263123 47697821 268985498 349050684 938482666 411688059 271743993 557883339 330916822 33347760 187122993 854887758 462016249 797394607 651631497 893322455 546908086 865186047 312926642 815714314 28616229 610836942 357800323 845710487 983574619 217011015 757699034 882768064 426838169 648295639 216091160 320048778 972075288 815752013 708930089 171319125 495731495 328948548 623307639 660436886 888506132 615715725 53742227 472784226 760013677 904830741 22008973 636529786 194703267 405356862 721241285 802847107 99609417 94771763 178129881 588237417 166291337 440433660 211391202 381743089 82222393 41973700 499579655 812783451 599695797 147292443 902786250 455473599 734326612 95830555 395031324 944904463 680195785 291245725 146590262 59865779 274127611 11867280 820227770 820665667 309219004 233393944 839741604 665521624 766526748 614680246 566193035 67479743 85788828 332721560 767294702 629986957 485859950 199509365 879391709 133175003 514479661 218991481 481153296 281943528 701257286 5982701 990717820 528288687 269020734 223416725 453288562 909412177 412738210 457217121 666859060 370849465 712784813 915639693 107997060 849787797 333951202 126426326 993077085 825909527 75207478 102520853 549304286 752953252 618628241 527802297 705048961 995917831 468731964 260449277 47231308 973892289 375971124 336890000 972879182 619661419 602322921 877025559 728070067 828977087 128750407 323000291 617438981 718431349 916508434 227070479 663262648 633761077 856660523 149670762 23688206 208517427 749401856 509624324 912282887 158475115 660545916 871102522 178864763 109219164 870012147 537560042 149892057 606377528 377783624 760088915 489613502 827186241 904813288 496114243 839990338 446582150 991240542 872359161 447582146 146336235 136403167 151014347 214779511 12219903 984007493 977971269 609016789 53415167 451772001 707046783 145629641 236272459 624013649 950513926 682130479 880338914 947137967 821994791 472895089 537082345 855671652 962378365 485847851 797483966 449143583 17901827 484814068 125343223 212568588 68970977 349918320 124337274 271182909 961465606 850410547 345774578 766281698 54484378 213882646 947145774 727536770 604352196 529571266 284713977 961844421 3355062 410581189 836665403 617508981 788236014 731440216 466631350 135973493 166647211 469149873 728221758 991632418 212163371 745180426 211106192 288631366 519806514 767215534 716504094 171309799 988054975 759722702 802051541 992044264 634192369 770426273 597315993 331106272 484235527 890138063 780219093 214323108 507642295 986764257 991712430 294190812 362450220 362895056 469937592 203770961 824570609 996308217 374512465 758339195 386256777 529821644 871080196 946916102 490053554 253332154 230066910 357688985 518698826 272425636 45485829 171482408 787181385 14649695 958314474 22538503 921533081 697306394 582559454 286118775 94525713 639822971 463311689 471684897 507380501 584499566 888065995 259168944 131461133 82778358 266740409 130484261 519070100 311151720 18471154 774764551 653887631 823085132 742993097 908480754 707688886 880827031 159204235 224298416 689585479 345103752 194754244 600402581 151668001 701015411 417582810 826835203 278121797 493604714 4110862 5371543 294585217 763094950 538791333 173107377 135094497 83408438 814186088 908634495 676646595 556456561 502580049 920352448 933280164 690249460 725457094 552829411 107929830 569056524 974939332 22623624 677463090 690459469 145615970 979456552 267029511 744216548 387628610 901423598 490526502 843923114 535835980 33759591 468961802 111107470 888850810 738962162 700007408 799117830 793472755 517611376 600158222 740762317 160436072 192940013 448751361 672635714 759959604 310394916 752940451 613856842 549428156 840423040 47549196 759986751 390331548 354304430 482512734 621283853 239341220 155711844 44088778 719786236 566096955 594473803 606340283 582486823 461601402 526408815 479601926 257873015 824233429 648355584 295405331 9051232 816594989 912229844 404683771 763016351 421324776 687995756 963333246 660530180 322052714 94160366 683208297 9895583 200678591 698387651 266423211 889355812 326259101 803091336 189632222 669871061 823843657 246700335 888768150 940564064 237522003 395461175 854591017 572792134 696958061 256269785 500657153 740060020 746870233 177276274 427371468 645223114 80436772 323824878 428978857 452006146 407290029 868381707 182451709 237690531 854689377 810854004 826279535 872454353 846851521 804881284 883909983 461462857 115671428 786131805 60904493 639077424 286649528 948428085 142433042 169821389 333127356 714765787 631948324 857671301 406071956 826823899 149079192 351089830 163436352 659519124 554385130 669492540 576911494 759963185 710054502 308312201 582768769 337163529 635292438 654269247 57406484 440383922 70938242 959547624 176820419 207632067 378334151 650961578 361116884 900745527 404409838 628660391 156525386 614666576 730388629 863540869 313472925 434163721 879702354 81048254 630876231 440585603 332083862 69869763 227639436 859097028 804050517 818673446 208486845 801946922 7394418 683075866 511906276 669748332 63110411 189600811 407609668 581058275 504539975 280327223 18158445 140669197 120599039 316428829 364339684 869892165 136229033 136289132 375402387 177001844 778232396 351309479 779161816 506087552 23281205 29611644 458993797 218394991 472948631 37379401 86674002 503916916 346036496 611526158 137053532 672126213 701835395 544309263 536459784 650947293 717284559 217676833 598364401 949462331 587853081 448489853 844937678 536651854 877383971 775172000 541263442 21225610 559455263 214800467 937658978 288766806 645623680 929150854 864054676 769231896 955932524 916641071 356714654 539099510 516391942 669707636 856807253 570186687 315730413 217556097 716513944 229200027 146749021 875299159 905256074 967366394 363469754 66332807 226681854 607468409 842866943 365758964 84055559 818787415 84323182 395471676 212446918 746369974 908774663 478043097 668694224 303607157 278790690 293866342 960354757 421700514 113949384 378516169 466731834 676958940 663017348 451497479 859632192 462197217 881902896 972197078 629200261 379607076 778502430 653513623 644545520 592408066 572403014 880018131 830558697 312000190 796695531 785021321 303846714 282161634 142105891 561693344 461075533 667059343 956679986 472496684 392384327 798345236 574956820 565004998 105062364 238321359 43707868 243075329 461659812 735485723 909428291 501511675 681106537 217817800 409127225 152271310 842699978 492031794 790887453 102783030 253726665 869672885 833249802 713308908 647531026 372928707 731596040 185527081 464403908 462199025 704190968 736410145 49875803 510304076 94691900 415124059 552375354 132389751 769377482 156955599 46310499 902530174 889076422 661236764 943154144 909073055 305188820 944373564 920142296 740931948 936093631 618679641 421901167 852324918 87370062 955844587 583757952 463728863 568907945 345710412 271388654 704627266 42951340 733439192 544398689 31572187 592829918 410310888 782392478 413301161 464312414 433380049 660178508 833098244 402360675 393035215 129815085 492648583 911553421 320044199 134830545 805847768 271220682 717445439 512630430 153839074 95986507 103216966 123093628 840033283 128739564 750706485 772810484 810206316 270050622 937818364 281086529 63322166 199964137 476041513 314946695 853817326 636702137 395813555 430154955 851083546 270552953 736386166 272735368 574562635 237769833 613595286 327573112 439245496 74250013 802408679 345386535 179972014 979319389 493434936 69720183 422203035 423809877 657756190 207959215 802617288 388937502 793187515 411721593 748611263 351478486 987302534 54729441 36777113 203205213 815969969 921452128 758951663 170171056 987753645 608886742 121337190 436635042 269146107 130968291 740881449 387677603 542563440 635745447 333969070 603138318 364510125 37950634 428528417 296599671 90308291 260245563 498521103 175279118 667326757 245392800 551317914 729874522 434449818 821103993 993992785 839396733 422833320 843126938 634741499 527607526 686055736 195033128 192882900 933946847 672296839 283434901 603513817 712171714 835872087 154167400 245488797 593809226 246071692 940163310 592061780 92417059 879396957 153499181 541643570 567354743 925909291 452829965 647873073 543060677 369796292 188756877 228337335 445904180 761227470 566235956 454357622 146907394 488975437 128413808 511703154 406497698 299699111 447586041 467676344 288183894 456000475 489817277 232274911 540415342 182408715 852666282 856649028 112138889 83160743 978401824 692272987 96054382 257863681 596747838 421327852 899094166 420840886 868400369 873065212 35362674 37328433 857757760 481313156 170499942 733946269 626401482 985481695 267454639 541169723 184119078 984821735 25554944 886552014 643796922 583335644 693166812 53494123 50900901 269543195 430776751 222655335 809526342 849106473 364817998 900785700 879313272 690674889 201696834 31069362 623493854 144910023 831017849 600157697 780676727 806866104 299176984 902206178 77882721 183177841 406212903 449461151 643293072 371409074 957022572 461618981 573185764 889822308 997046036 197466668 659355334 200821268 157685446 363391446 84353073 449494562 567521615 2553397 268058204 521737279 314743740 811843678 123112817 877277580 939265660 307715213 296133262 190943831 192932939 744521543 391522556 582550380 151419108 747599113 977996225 132879694 108717728 25907694 174098684 226109360 650924335 675930362 626241651 734205801 568656981 194218830 491585544 395246166 729911514 499251391 67784045 370534933 428779026 604526232 816349201 65335774 572286514 670073298 234510735 377634726 240466543 54313897 848984564 772367981 94538961 369696154 964720913 93236384 414828646 729692347 958519733 814118833 770226251 805551616 150178578 460223831 686922147 675966099 282363336 862765409 799913749 710081644 426239389 779935188 130985476 803947194 914393475 352164880 623716542 900725624 676964435 832808005 676142719 692232451 221758212 829027090 888711028 853081938 263862279 461532290 271655671 860294799 664599645 816927966 449873068 364466543 612222706 80603443 93681098 205269659 120394049 876306846 349997367 918897711 765849192 5856224 366348910 686766041 285490756 719609157 940439111 140291277 521383725 472991990 433946439 151498715 306290090 977440844 205040943 499045394 66552120 627795526 31273620 443529827 676752699 572653942 780472528 577490075 528670551 779124226 940424694 286083417 610028452 232108677 625109470 294562677 97787487 360751760 595899901 270606479 472863696 439524011 544098165 15309849 816548721 947523550 398004911 850462869 160609716 211914072 728656734 848984536 965985851 313583274 998962070 122810251 659835535 210335949 82178302 672800163 101038949 452658891 581262925 620768916 783696963 217163475 349940400 661231643 517099270 329909876 427890355 837616388 177764364 806419176 439858135 427971075 56333900 907865657 10153509 523531640 486846659 549166647 225395948 726232661 380070515 764647998 47472468 694083124 832263510 535068074 46015607 841746580 824470671 996703624 649734464 715179617 401976924 472909648 452981841 11777899 989006972 744017111 729991549 351586586 21718972 892530809 660792244 586296712 907808986 293115257 946381710 586580884 17816866 463669406 366585131 753452871 318655662 432410035 805511445 360705544 826002496 180160938 656921018 274748927 68404396 260778568 2945993 17347856 733289224 675561542 143108227 656137129 373440916 436909479 541504744 59387311 95865577 783511783 706921674 520903793 263409523 777556150 141293649 211520254 681008438 48612452 859160138 642930397 353762576 512782263 627138051 575513147 970518170 831624215 396579641 422065387 863294965 927268324 129075639 582796474 776949132 266935788 198414509 42994440 703320527 332911569 738948430 539559676 102266025 228538543 474672708 719845413 963865199 840983577 436208114 138763233 289874986 126414602 146199842 99983998 169402619 24985223 914091715 918180666 29396803 967273684 124471885 450223395 720752852 333873874 606878399 35142687 16480523 915147950 533754759 927937927 47285382 697204029 693255736 890201551 111068474 224146611 123571621 46623295 175973302 500033198 555964795 124396652 387577020 460401576 782638828 733799979 687436975 678948644 557302391 371672644 2598599 530848727 813509479 765303998 254481048 925493691 352817643 901946619 709947417 203689248 683449750 138098514 190344190 607403157 388645557 168134029 904474740 522462469 829797071 185153288 8112952 224207951 1110700 170368510 784446004 395203201 448132325 233606499 914839774 415023056 262028554 316848895 825728112 709334184 309536895 215562280 450987774 628403244 545336478 667778319 307733923 77336476 744636964 420681982 964046451 917470086 400824968 33358933 486166853 302509845 223411311 599175816 859085008 781084630 786188688 690439693 70851664 545357873 697774252 330007109 302801487 217333225 532896654 351199022 451228941 483681078 256295902 651465597 733070067 158884977 667989617 910917606 845782840 677142647 595960654 312270704 991161686 63577498 293731141 859634669 441015123 383062321 872714016 529686196 455244457 567362593 790491455 289731424 83017974 424096675 16399253 76351545 310419844 951640016 910824734 674007923 266372206 200705396 643276936 19617416 381001074 282463032 15863498 727702250 809462643 447946031 283437882 23474701 253783507 135833751 224998482 587807618 896418440 335852382 583887171 725056991 396681589 688095855 426004346 548913127 958488831 747744202 898486687 46872070 306897847 923655187 69272897 588203935 12844862 137686304 87606059 979236561 127071170 237457674 499377519 942590017 808176965 600753341 907399399 693849942 36933159 930963269 281838008 427995649 425440752 521279100 863908901 757101687 285649971 196448473 777996883 549203232 183933828 405751986 611261018 26016404 162037652 829780028 509133600 428930010 849702384 573466653 22403589 926096188 985930400 794261783 139530239 850250059 13247943 601818541 387022834 530040219 235348219 77934011 654115715 333938603 893299323 606316024 399846713 582439753 437664727 228368094 673228211 157180146 184550453 537033686 620103617 904204687 650832648 464722954 60045469 700322924 911720313 916370717 47428809 884061857 360125484 946741698 406771814 605275895 578335277 691596518 158002315 340486131 498167660 711375075 330275216 200396548 850086695 103073902 163211962 449102334 640049678 478789624 76468647 597158437 39962165 24964771 795982816 35987705 170743450 328845763 415021830 893837355 199003892 952976876 293778561 250865520 151772879 909462087 325576666 504005682 648324605 570136561 583149134 22142595 197273471 762385873 210706601 12973381 89312118 823281421 273142289 396098661 529476580 514598940 522586687 135635223 279002625 343574843 637330195 778222504 980187847 187440575 719059861 531972549 960700690 126925330 601721708 904823801 82466618 562459848 872133430 757850353 78258680 442796885 123969562 86298074 758118236 999041249 820069932 781285354 263735225 231066962 314759558 539840177 365343184 732186605 888715646 473069382 859644476 962974314 713799515 818230394 924954451 713215346 737653843 662766722 275669901 454010513 713667977 330639275 515292489 743101869 906551620 6620380 565446051 205197325 794808650 222101850 391028375 868236473 293789883 749641338 662206595 23432835 870886432 667221371 293105337 737577754 5529756 538262076 940914880 13536807 467616757 510911434 661760922 490059688 95591455 249664324 398520195 30802663 25757827 167198903 210021200 218439389 529601244 611465465 152958155 19118262 293771686 274822145 199899410 72016985 921146848 541020477 527915121 494714251 392216100 593786959 699309400 680207869 16322100 440411828 570623679 981652935 400796015 323503928 906724677 104744061 374196952 146754684 344103547 28846680 678690715 478399651 241508550 298425743 892691134 168149768 528914892 968691082 462736667 254685059 352827910 455772730 141240995 922041082 806534290 101378680 829387522 854280184 658166811 88262317 229788295 220932711 533459354 93955898 269604571 594577936 898340818 774363083 892486909 624140788 114358178 143047847 372836801 213946620 186339717 649306886 581127644 950672904 831015905 263515315 928583616 978410493 668338870 35021799 867681626 397021481 180223714 932700116 414416661 458793629 192830836 844252320 331777413 329311862 307685384 132824286 784378929 955515637 502454014 853611200 925794034 94929149 54804463 224530746 902380332 311130155 50303586 647003192 235105651 26260969 655754115 668279496 25701249 644517413 331181452 483497966 953321142 307290018 688291800 204841612 824586474 202912390 745597264 150121450 962325174 812978897 678238575 445253813 441222804 851123899 228972312 134451790 146172842 386775562 290926510 327703766 703346625 384799769 841579959 520734567 444143644 510050293 932391266 385818774 317755611 580377516 519278887 200082553 428558363 555731609 575009694 381770601 205026268 329951492 560196799 199606272 45550259 2661787 568874663 895330290 174149504 196631793 851954753 386860696 237134126 200230775 499436194 82459870 956132407 515332413 836801869 518047805 900508605 233093070 224846708 953919368 201141148 300197611 946643436 382249050 195361227 127850602 833384409 569296299 891787431 211933792 30480852 838186638 561191654 407154061 993586979 297474744 184461559 311515895 689495168 60636741 23579924 117938287 402275849 476107863 121682525 574410667 287948940 189523701 953065367 604508400 257206815 390919629 100089536 576211356 656736778 503294857 179214053 479421532 245637757 353978762 531950192 691851717 617690812 138085612 180174136 447196752 639692628 872190663 982643677 615716063 572497223 930251965 274161241 744482300 480205034 764746412 681437636 16370889 823141862 692263179 8469607 310222246 483210653 498836871 7069747 483974707 638806514 121215819 535044388 483963244 907585505 657868572 306986316 309894105 391249937 28597973 957535984 866106530 757082089 792872498 161968593 417840477 883369830 768469181 918173597 778596125 920012099 431602938 150313390 378032628 574490520 586674476 205829274 986716558 156974469 105403898 370000619 895322969 665285421 242853989 716850193 762385901 945493968 741335491 581466608 699872151 983580318 714084833 906926365 692098152 716438422 558373575 436996105 358562438 251652743 39320244 734581748 777006875 346413121 983736510 566991003 145193308 263580751 463582543 141447399 129252307 316581380 953424648 529653934 497012289 438252237 620272701 865409564 557954794 495044606 428839962 500400426 458229585 905003775 941911365 5419121 302588326 782526451 375450926 811358189 360549348 879161593 352509329 510524297 219953817 716606193 841825847 334664005 335259365 865133985 817327926 783925240 734050726 801964498 188701244 415666903 760059629 66837328 129460889 636318168 598154812 464725053 709888408 85191898 835008089 792993370 291819679 828484130 798507710 379034279 660388302 451835180 719277977 788929 463339612 994314371 688982395 872051306 467080395 305022137 861597902 991158895 735676215 146917924 876286299 122210964 803851259 287614872 802208357 926511085 954901945 836202606 105739459 490707800 493760200 684790434 700439688 180640240 239611873 145442023 773188139 519417301 934237143 754586951 182728296 617606817 42827282 162580371 648587164 161834720 289713003 800698733 269066914 928840347 996787437 966726024 102664895 42683601 369344229 547381112 978017467 984552630 271853871 459045796 966641665 579680599 889165953 121055398 223331596 709069282 505450930 584651957 900080093 35058218 291338434 736720712 437801622 148851098 440182547 632714371 621341413 182362719 230004384 934112392 865650429 859612759 883595532 694646087 119249269 490978085 531090024 258910855 642066383 153328896 751642760 73139510 422600984 378941520 369125784 131421678 28589746 902759739 819978408 326077769 720938727 424701508 637474123 507268894 505786255 52442431 524939460 280613047 300961965 225811261 309010399 40219007 878604922 517063982 259035882 334464822 689438000 673544762 230250258 395753337 829111853 679142325 561438869 152725373 331321016 880351019 416321711 290135037 315895866 954529252 833955594 346151683 761228277 840634257 831679381 363465530 240649762 188741613 740244610 201603332 728976433 583506965 60617071 393427770 374192237 782402145 877648795 181611930 100473716 697535145 890720756 520221128 507723212 971063006 319595091 670642263 566064173 143307360 392986427 975502171 497814965 254289665 675086935 680480090 511032012 821754376 745352195 96275956 835326210 930777009 687707662 418464275 68072555 45234427 311212097 848100911 713780077 372471186 48038170 57174878 724519273 37485593 424649278 77470840 765015928 886728456 707168058 345198786 865504168 534684530 844300582 967494939 232207176 780044003 394427282 595435845 251622128 255527483 766993817 501202617 224082540 735185043 585157884 563099209 999167028 875742727 799964376 452157340 267547476 963629319 223005310 95217515 433594150 815687655 345765784 943086496 542572858 755210811 223856677 699332845 615060830 928196241 61699662 264517954 930399105 269317695 788418953 489626897 422781139 371599920 766161455 883080781 979475041 899242998 88347946 123334738 941286919 170578691 763314188 320236407 175219553 117295390 804661522 634530541 987617606 137591647 129254121 795118350 736212108 599586614 646872994 324125643 358257322 990837517 819453096 985897470 413320372 664026015 981328555 622766936 914784414 90852149 105973268 826281588 27416896 414604600 138223343 790542540 589887506 96620890 165840261 368985215 966986629 373902611 245798653 425440269 987369005 513254130 399885348 131160842 521307427 37388404 755683150 443251962 265142490 910479963 642356430 227403963 810839952 264573023 195961328 520846789 823616702 539018840 958722517 818717612 113096633 282956062 233062957 356128300 248336664 519669916 937534669 723840860 789175116 160499030 695623085 890113394 668114355 372672656 593448540 328230812 471768691 186813113 484152051 204730498 648640938 43643809 18531031 641179481 244391369 499329728 750162330 49214601 659959857 873483140 178675157 168704197 430761400 195747378 967434245 16036093 531884566 656588890 87897258 109123489 651005861 32538859 919145689 201171039 776579074 665744475 272297081 634552655 114639263 130338493 564519500 108751993 106130915 880657061 507121581 534141344 723944756 610517067 637231415 246438828 892076982 8047468 867179941 615064698 746103225 543926142 380262725 893033359 915910786 669465174 391847879 666257544 475779205 143669436 6143474 951920167 461313746 392235319 775917648 210942765 232662287 749926753 237223734 855465617 253194552 340974427 550192817 705096803 920093504 444592497 809839109 241631848 811258362 588438407 534107414 248812043 433791148 710306114 976795615 348810910 816353649 942929729 180345917 792808225 784419451 660030487 720984169 680033633 250547232 787708534 758021947 763575636 114465621 488548447 502005143 564477899 301654438 174064282 745827507 115980474 401154540 661254516 198908480 997032231 534705863 488411214 922707479 865582071 559001529 178063982 573223667 567699222 261929933 484063151 975246616 463501191 754692320 552572079 405414400 329032451 493795644 895239948 56444519 520621834 561580139 895672626 810847362 969983336 135163862 685100131 937109661 229089886 718171207 971424079 838799434 730317073 397536568 908804784 857852204 120787374 564690251 930862445 7953464 758569838 29150116 714030635 513066764 881722507 164437205 887242466 821237319 196931997 371808864 196374848 884983022 294622214 862128248 134547453 983106382 701296039 110150411 108451086 382347777 540884388 408843899 784300435 464861748 139492232 297206850 427548825 131530655 727364830 677241110 394106247 33020863 709049599 54378891 120044894 801250725 498738035 94167793 919390132 289863329 999517554 378944207 93823658 670667609 448735775 784532476 284869709 853347499 765413039 504786670 31663845 575319954 163049979 365710727 787495522 280567007 587304035 146066786 618196992 959266137 105093927 693431566 882582566 558469018 166479558 669726999 163954605 276218353 439769998 776941146 786801365 125802866 582000899 305210433 308960983 92172860 953135044 545413854 729628665 126894823 131969777 622414860 576190479 19321754 685482223 960823317 965937379 338277161 141269355 568311255 703161514 96691681 263007997 648710319 215969950 877038303 791439381 981090447 629380890 511023187 167604388 3088177 836734003 33909192 535986808 576406900 52696624 994779659 682287617 461830582 669961809 319822808 508874562 289333366 708576467 836745975 230741055 863117005 535668811 842311470 190589912 902090061 999077606 846335123 104731763 829102790 628220046 918202829 54839077 605184242 499562825 579207724 362210133 503075484 344069833 526257411 520887610 642493612 935359375 490958784 260652246 253733789 897680297 974308343 220823664 579875174 651636981 838306841 461369653 604690729 253225001 217187154 399754996 627204213 589957446 482021407 274300551 462375088 100227567 675626179 822846032 345873684 840384302 804191983 383654760 391690061 725905927 765542575 500302432 170362546 611247306 863757033 492582707 1424324 694073079 876442088 658796557 878258583 648966474 443073663 784784421 487780030 268243500 154230694 953306731 937469639 90690083 592229964 772023307 194162614 468559834 151400249 575719895 505281237 200268021 370073576 528437926 148715756 461278740 536213449 539579160 581280723 979464976 693332184 244007592 908805103 268561661 95951510 490760028 67396961 896714850 762959580 428332870 680957550 332554513 473912549 245189127 500211117 449234175 954835144 796941818 962964429 993044765 361424093 175033425 246690507 371702661 998507411 674484963 378308147 794759389 781454749 850655051 468497993 649918567 373193075 629313032 190674792 230734834 980193763 476350480 246992026 300680855 251300957 662058073 218819302 552772445 493900168 713935302 193243772 464906140 44592910 341032637 678551910 776325006 953544266 994903575 748525150 875394927 38199224 603847139 698762638 421400351 98803906 879099693 249681502 467927718 591239649 920467090 358989879 505071451 808833140 299817539 852732409 825594231 613337034 390378578 462130410 154656391 720776391 741762037 15019259 316147347 874990898 859198677 609379318 15931783 258371732 852711775 597744336 254788715 183318807 330539842 568265820 788617480 831944246 834396686 19279798 256844565 944959260 295061284 758159885 968136237 428887557 856479827 423283700 918671931 178668836 860856105 42833690 294511843 736999038 159975528 624926700 956939847 664906940 917959177 707814221 701180728 602607055 432393997 526998084 257638214 623585941 690161677 753217063 18733056 58049900 147967095 474683275 157716979 582918732 460452981 999896923 804419699 124871687 495229935 553500788 641200064 895440573 364540931 772340062 972202622 996070399 217628908 428578362 941698708 958484125 893870171 850767726 329918866 719776747 774260989 161127096 828872368 964669557 394522157 334817583 22738152 908397864 26912125 501038901 77248938 855909883 844767173 233809080 410577783 459997125 640711514 126890201 515040826 834866975 67271688 500116 888317713 434073674 89818092 708836846 306732489 528134739 226353477 51270941 269162057 126756926 527724751 552783236 905340235 279315776 290644360 951008512 469740531 80773416 584595174 121350678 596930775 69804374 563228808 901654500 777229288 65737557 667584428 485365172 785295143 903641599 461771748 846945940 709387322 949298856 109715360 893926727 710381649 661283532 357693093 250661367 893774028 418193362 75176936 579790804 568995596 398754532 552971083 812488413 50144300 278904547 707968265 68295213 115541998 815970683 938993500 112561416 229038229 751093035 394063171 556383416 315712381 330220976 515873563 36898128 839102793 579608133 450298578 839702115 622211668 836804083 895187731 635343071 958515401 870159318 987932853 871978333 95141915 620271093 345658064 869320301 102520628 474394461 581238768 318285025 981074027 13968189 207410900 159209104 561190430 852561314 129819730 509155371 315506523 955064771 239011774 866475264 742946594 554403153 562945651 228743129 678122012 543782353 243074199 123478301 16551673 106740379 146312798 477196344 698899391 914132738 608959527 368788728 320393414 739970938 123037835 446947629 600623005 163873535 707597 894554243 717276634 118939711 336118052 873460815 694991969 774548459 881912862 627255280 429974945 670439274 560160571 655026842 164758663 447350505 583396261 766800342 990657361 66954719 298522291 613753621 398436802 610435696 537270658 262099295 296432349 508563578 228946652 218840738 141480082 204674377 864244819 779658615 139358863 518365770 979817432 585982771 478356107 726181692 958129206 191189502 333971191 822272136 380047402 148015233 640398898 26123455 426948963 284540572 492117283 670125675 905256134 63911514 588137243 582827871 719603534 841526212 556859001 431945943 790476890 620776016 593270785 67542910 849434527 326804385 722268434 492840026 859482784 292414102 2757403 833123114 81249452 955430229 33780879 208047137 704206844 515545215 3153658 73684782 922764935 483386563 535686050 100514171 89822461 312107849 15138417 295272160 971728713 386805254 844278798 554963675 673474119 836135545 962845506 118308889 797779236 276692033 867164489 347534881 43104889 862910570 674453499 297184470 827041339 464011973 963431390 735937422 141978725 768285277 993775454 703202532 653135677 778685206 424105775 41003705 820901661 472240087 995956058 483926494 567731418 187814746 563793972 765645030 973363957 964583450 136701176 587680267 815873145 377226474 241791948 387660904 585661500 198041603 157522014 572712303 150838093 468628630 699880866 102487438 710510399 258653590 296129700 146261548 949736018 366462839 991751885 957724190 914401369 421882723 555571619 626892480 764887832 697720830 21785854 356440308 264234175 711775777 101295771 982491843 37309931 415465367 379226030 134831395 730030354 436972753 394671782 10971232 391716164 847574956 495666102 875706148 405745508 20477099 794396952 63125574 237461937 229221939 783912079 549728828 502809919 792463452 907573902 347444994 512129949 723331747 261869645 357397235 692729359 843365276 360835597 653265317 4084504 84843815 707348792 358199939 859613035 249104364 312230084 300331721 882549792 952201659 260863194 129677335 391875614 548186302 204002727 237203653 795542535 252201386 224827189 206969495 218079685 936180969 131967953 387246626 548434450 813792687 8054789 441843013 278251539 949131110 913846658 35929907 264129475 636616970 866692007 892085747 728086004 898493743 730023208 499329672 384363639 215070751 475051020 8553835 281898266 992440091 547270397 658040306 276863602 777828797 895617721 357029412 187109170 590895718 655969422 817611100 246120273 365313474 403792017 963114744 259356625 771617374 99007142 617620559 922135285 366711009 507026109 846058134 293015314 972930567 151193389 266839781 626288821 8166078 140196652 782464546 103659429 97124658 605743697 71558494 465947928 937501799 153937368 348019760 610779902 786434866 814184515 317600629 736094572 274078756 944634355 178426772 681752850 105560245 431723798 89790624 759146259 658018174 689210016 250792953 595617744 2464261 146997798 921675663 780758111 703807131 122915718 619247327 274653290 730032111 812309263 515175963 437369332 160514202 927089745 786078529 46953059 681135188 748491007 941057271 868006014 210879335 160040911 355721475 49722827 937130056 135118710 935141562 969314093 773082961 751726133 480906673 947383771 952598823 184424325 100023164 901495747 247374332 877842691 900880185 112299169 870201293 814352436 296536983 493005489 234384567 989922903 8801092 271105258 310059593 679520825 770568710 661334439 543404874 343539939 366163225 71287758 647323448 828573903 516628866 170355733 824863537 402036667 445985278 608473159 954965061 839095770 369121570 932156923 533484575 377418384 533346422 123249076 350581904 803185 817333924 299045745 709097337 301966011 222408615 490210124 178150819 432864238 218836673 684023018 343331337 911248545 107508606 419638059 47295352 387541407 579916344 896420324 411159748 207284340 878759610 309110608 388094314 249885685 258360510 732732212 871201459 62133941 719495108 805213943 504508227 306684543 259875990 60051399 804099057 44362314 903461595 590814370 10320213 100107465 234268956 921242893 53315948 561667407 428539143 22644683 499576207 60064007 815464354 108111900 467659670 621259503 634861499 233794839 447745965 526688844 869828788 667924885 54006903 116243579 527642993 321762829 805788068 692787539 302497255 447576577 682714826 119215601 56228413 83390404 669262794 344472897 162834820 171764821 188227160 210848093 514721991 485173037 368677014 155596952 444408085 513733594 541017358 949519474 100750447 496595274 981526755 621101731 67677149 51758656 691362485 452914011 497846662 929054352 558868043 378076298 324406075 968078711 388864662 162847113 992217017 541136739 530106167 56308226 564729263 285245324 449023042 558128557 338169901 875660859 171516060 287723447 47949272 610324281 367081978 440613959 90842523 741254711 39291829 476983602 764384746 344650966 172679291 815556389 229131028 643644607 840558369 595964150 171928163 304149924 395888239 517969645 408750760 386976179 541613123 773879491 344589404 806623961 560986909 141777995 461263352 965697619 762373691 281918874 782241093 475530019 903154131 903329886 247810481 206962969 842264689 216714733 516317811 5375265 867927864 41705300 211993036 413026407 630397585 340007828 48175225 345165117 602022854 771141172 810461717 601970938 448241453 809586455 202399631 901792212 260324990 591983501 337704582 204604543 290485244 802641184 202380584 458882535 411255969 94910541 924749731 213595131 54873130 354633526 705887007 36808422 761239035 377615721 928625820 688504310 506067183 140179151 292812610 358749605 268004743 798553911 637241278 158380662 519737651 738381013 329723124 42001368 59988415 108013680 267799500 490721764 144181446 175142146 11997336 777123546 299160249 214508290 362482107 738234175 960287019 1789163 819188196 516592687 805564925 574036243 743509970 901704671 54825839 337226899 356124041 507727532 637771889 575706059 831154568 296878684 537743521 841861273 636717495 708806290 721595121 121613732 906369992 910191581 484060369 162520340 871752096 24660032 54907861 529219563 256761353 589509959 521729270 369710809 618950774 842794637 15818273 993897507 692115698 139293066 987660247 829499242 55663566 801484651 858748712 829728707 704262178 579839660 769544143 564655031 582004919 550419743 181054898 197565379 124027271 421092115 432660504 907062005 410411915 626035125 2487999 102386139 179935789 355401071 707070951 299924900 246266815 720348186 866910375 361746913 164830677 555765132 382242997 83558127 380912436 74225519 406454117 79346938 354656380 907887967 14662982 852802648 677610344 439651065 650915189 54495487 27727477 112319033 579783088 705399723 273777206 649519115 564807997 879811301 915165449 114209676 606062000 184353012 37332911 413872607 876671142 535797374 249044993 411232312 172734557 625383987 723042602 108461855 194776009 949756694 882917207 38161017 384235867 246036747 134100005 941834023 51018253 249819415 651922507 398109581 990415913 724616238 39587158 566187819 184476860 991902296 955548204 700651056 666613661 718713134 95112503 208015929 626353863 189626972 963821460 350211635 135038182 29648200 667131091 648147212 980331994 681046698 164373399 20265483 679587104 207327989 724764745 933949195 276817502 96335076 469133188 187067582 955714709 977481558 423099327 591956422 469271203 893503372 942711126 79150869 393511908 144188001 232013920 722213829 632387388 989035067 809474557 893104131 990484087 277955359 7177749 5964707 32671440 824707260 169139444 848632547 875455672 861789463 262137105 892635268 506603730 920127825 401870185 549824315 631630540 58152859 473081689 868062917 811738410 895901522 44769736 130541355 753041287 527660539 564105963 573905317 239673188 703452606 26821528 17684457 791425396 552193646 714681807 369505120 780324421 254658240 661906588 536458013 277329895 600593109 899421205 521290069 43438647 77430271 945899640 487463930 398119139 488108281 589693871 813520550 139798020 441132906 871367009 211923979 661408748 884036552 31358234 521580430 725306327 911687208 542875777 942272904 167078762 408700312 717624141 690438562 475495662 137639351 752558407 311129377 698740813 59748942 511274003 916109001 247557212 232980173 316017091 248676788 530667424 443847503 830019635 483610317 860652015 58232788 284282601 392959905 306751267 828086590 936076560 425791650 130926708 998296376 558870886 378241531 827168236 772270196 720294421 388828558 86765521 49502160 63279906 36141823 148322794 376286436 872325778 668888167 901432591 808088287 859696532 168759313 564401376 950132594 574668160 812362051 82319199 872062745 828441514 808758420 491242909 419274940 756889743 562210195 832496491 255665792 161769700 676645916 544928168 116179976 923555124 269632458 951305378 915138765 207136148 120420521 28513470 975108446 881552409 216593385 428123761 565257659 424100186 113666163 652098609 24061184 504937524 719580049 505159130 723817705 906531497 751944433 982136805 141689641 948913835 868820985 114177298 784182475 414773211 995271880 247657299 499284166 287971719 569821386 298494216 930265713 140271794 629173257 49988702 120752164 282696739 554418196 345655107 967741069 982420578 98531610 32698397 531196632 632609410 240659680 93910602 160158529 263828455 911407345 842390900 955608789 766002784 248504212 996147126 58259369 906830484 203716167 703574814 114999314 205837834 541411123 15448555 782608143 955532366 914156857 213805797 686191178 376709075 699469961 223292515 754123932 480137496 316965218 771499660 109421590 358425766 269874880 748966051 166096524 309100316 215476183 176357497 97918464 917528948 51969793 70095510 424676339 536677858 441441796 637203618 959417848 537719770 373677621 143916084 966862968 649625166 73334853 79797650 237646168 488133035 487072791 701854270 572794011 245981866 37014539 888997834 81652705 269245411 891753805 416526902 741008706 788539730 192404969 810855368 323710978 12811215 17149450 574708653 691645390 735147220 261889993 221883572 262292325 109384934 392535266 504501251 439438662 682939654 294584494 677422558 253396597 592367001 328890981 162919968 427152756 395462231 779779416 469154020 596000353 804630653 929625350 605139909 803207423 205503340 934725381 552920697 757766210 69631942 991008378 44797255 315901826 436129227 12399071 756186921 283343968 454875965 87573060 386546950 634923708 921573 523928964 274589936 694360969 242835352 387460814 128682158 208085477 878878227 304413502 441491300 777989832 98807754 401010848 405797198 141139274 738167968 474773971 632025999 644403706 726874333 549737872 243122608 216254173 84984959 557330246 146046694 950020078 913716057 553007572 73545845 48774571 406477096 645633990 605585363 193549232 752127008 600384190 77520304 283080868 54674670 487922786 506135413 84314413 32683253 943984773 517802538 728957616 382049644 105233071 689196797 37872998 801783062 707772936 253284654 83581880 317989293 160226043 945180521 358891056 844972912 399730549 974796127 514824615 39043058 258891666 878993032 684776947 578900297 275466801 677917406 318195625 109383652 971777749 462392030 580060792 480976778 657431985 8323017 265045250 479614841 45376014 906951958 906494783 162426017 775129202 248303415 268059304 320674801 663286070 578688884 353093522 951474931 158616418 600047787 704316951 625152586 98240625 242681777 676642019 101344905 433847803 410196560 8574103 651428003 273196132 165444880 178261521 984703047 450419975 640622 832725155 593549844 564006352 16353889 898648167 91620278 159554868 853709178 785474158 95440653 571361604 896848372 782031163 180745493 847531763 486177614 405198299 23609775 252482001 299455650 257653763 8009768 672692258 795420326 312179598 505337300 520277028 558231694 4572111 53778875 530049905 434754305 827462342 445451265 778124980 893466841 600113893 85834596 579966155 788146937 716444272 308450001 296633604 332340335 144726365 333393798 208923513 568847523 507580823 891608304 438130083 777576837 342675202 349758761 522543814 463210082 150087894 235747761 975614330 234848616 8942977 370228128 857553233 827533306 576210515 7411456 438932973 529409112 818829241 567045311 873397168 494205924 235742752 685876278 766054018 404556410 936572880 341558552 8924187 869834026 468344756 280323492 748308208 264923755 711986674 383022600 704204765 106291413 764592684 715535058 346791749 23534738 929143775 451473943 786090392 513119801 32128043 298038575 924832224 411269986 345165917 555563872 477497734 777564798 132832883 40439165 506510535 994507407 921905470 581163349 462391666 469065950 431308601 205315834 232380132 785650360 731938058 220957591 377291391 294551423 365495952 935153351 377003831 363941847 271619764 147444109 584230184 89872577 570748550 595082684 3893611 878356746 861243888 480185151 805394483 215049516 11423987 338851820 926815305 380155929 8850741 818136343 949548988 512334008 401273935 876337300 243649628 175031164 692457334 553040197 841976835 556140610 625696244 602257660 194868311 467407995 337537899 764634684 21427561 605912593 360213558 902594657 381789208 868330732 367705110 824313683 243755995 47299129 796345522 537802012 276347028 44895316 450937944 6326165 587821244 300829667 578666273 446588982 906713574 21552492 331510861 766790919 510908630 408448550 835743446 822959627 7626096 1167682 459819569 399550860 416243732 92597607 431733176 924698273 149700468 742553254 925143021 338067509 751090798 338723319 464915101 367559774 436286210 75474741 100472429 543089894 705177355 622790081 939258629 117865045 8950531 364044609 41228484 423610645 684652610 230984300 801030720 593298397 375041273 642285347 606041312 427890580 29997640 668740871 773455665 944358835 848573941 870638791 373624728 529546083 596357016 295552482 974573355 677104863 680103162 482232797 741087803 116252467 779177482 884373325 238331062 296926367 411499362 722162 570728786 547823241 212441928 822250878 640887780 885028398 778581473 932599955 755098524 649324958 221013268 682209219 74515959 57950231 365914394 454948152 910932595 421506057 132923494 570249498 716380169 475124885 50035380 83083667 261612027 464708623 162841187 460322164 55370381 94671438 424597600 144226296 266766371 213027229 349095756 307399446 967581806 22687017 716789467 939340115 995988886 451947050 13855137 809115967 65168344 526546901 954663806 255754981 183266818 750733758 757504257 219936892 967269762 164878432 144732603 523565281 410990393 909363724 412039925 758347347 478472229 899316163 230212077 363603466 748155389 378002914 393637842 879824329 134019987 570425662 321278416 839010778 554406098 626564479 468851895 657372052 502885056 824011981 601279155 617087882 949037213 560141624 567727948 409387701 487084548 583346642 9422232 945140125 889626371 119029689 258827747 743500920 56207987 158474573 164035192 602701488 700953024 133446041 113434421 749037505 918665216 271613780 955600382 919961035 264802391 200549566 970085528 57308161 802647543 325443684 758196805 38292646 623945812 486775139 981854315 537040685 226595054 667870975 171935850 907932013 818811622 837824952 444401251 423083274 442003626 367142285 71584218 244177764 743771742 323498289 413844160 676551503 739857790 914611296 394839503 527398521 850848982 443859684 835215534 572304590 318660706 330688283 373873514 472899980 892121944 213439559 989161575 935948571 530126241 803335035 970788379 115514128 756442832 609944586 788145734 401625260 792635526 670802751 590737219 285891395 729541307 437517807 292127195 121613923 895559673 484974069 345115303 223498112 687765296 116532104 86444207 927240266 135996910 318560404 934656906 84502472 138422068 374882500 624379240 215279731 615989078 240586690 761899973 238984460 496409784 686979630 304827985 587679222 396695320 214442165 17179145 374651127 549736801 800635578 875736117 597316763 993725412 500101469 898552319 819686396 975291439 538447740 100962748 849876856 510203189 627048160 630405313 770465741 82164174 941936943 689532527 724682407 212592825 139630205 659283552 144576243 790351596 667113933 585201050 318130025 987818232 742374325 289725911 353867652 119622988 901319747 568724790 54982994 380874188 959216981 714509922 666131290 34280942 153873623 132110195 769912645 194577118 772180351 78450180 450616534 782034478 837440536 423385298 347907938 460505979 780529850 478045034 736573819 23743211 166575654 544896131 122170872 447137347 633990692 23092566 32727264 325332700 849376942 562864417 407719385 546420752 687217076 100787270 96940203 631802064 119216945 166094530 452394508 575152554 69311515 247666238 111946414 980078817 325903761 459320872 169694986 192003247 23662218 592751627 522212719 90799700 401910001 943256917 784749803 744872841 23846236 909351875 342237938 436512986 346560169 288696879 401923766 672563215 719427831 967747695 204914782 202414196 89291037 627271505 806331219 506265885 566509368 698898242 150805949 453317221 197660085 388013742 606839929 785648418 261396208 3740113 867773654 181057912 478443744 551966287 853497573 205989477 443826799 146875286 125909562 681110774 640934499 335180957 949822758 363246672 287463629 703557799 145143209 360306157 94967659 664181514 490243579 733049538 497198240 571188472 629474560 483145364 315059535 213856908 5462049 879733610 883021726 454525139 908154187 451606853 825495436 500580017 887160039 769650851 987262467 789555453 327228478 164743592 738056968 634580548 51413433 924965397 631951185 428278159 100850491 144036457 50082532 636754273 915586514 384357096 100816203 555985683 38293997 712368078 865229247 822636465 967112170 488391501 695799111 976048192 581374328 950137353 668763881 3934547 541934346 152823619 414216088 399110193 613110183 799437333 46163685 141919570 322176660 835589886 286742939 901667980 507147152 552287633 852571263 393627088 585827001 236532830 737353505 895961484 162656289 957835538 978121387 794708606 251136255 744390700 742316692 707507030 486795376 865195610 493962065 668178025 859000491 60599003 583238635 686064332 654589967 629395245 309510324 874824963 143294713 867568713 914278629 903892159 236421833 550044453 435747196 840475576 410551732 182144587 835740433 534274884 679162915 201591980 414883433 870984075 877529463 249599487 491499552 602777706 546218279 357530130 641261567 737823210 783303283 728888325 207870111 604161033 642391058 106527835 441522303 23891346 22173941 79782626 623299733 514384798 327598509 553041555 770441263 807747931 177270366 617127048 569337517 340818862 2765200 48665941 109509663 702588682 458301198 610331025 482495587 298430707 282481788 212981612 492886307 488532166 403891984 379145017 863229686 694747265 997711119 968929010 898807958 214811995 477793486 769031905 710988974 215583800 343059909 316620493 788545993 638798855 420772718 3690404 229999087 330308147 989531303 280701285 129167674 745028963 620468372 720299653 861363333 138231857 865291826 693769556 461174685 577634885 515089828 234401996 477732096 35311106 171554497 596401620 266332136 551335213 23230951 852506860 459009691 743000896 637974595 206247467 960843107 793290871 223325529 754641590 512864293 879933953 233869486 436494481 108592844 259121969 339648856 62548649 521108569 140252487 54412492 508445497 859399498 177224637 992985060 553592596 161027825 55657878 12157377 103661445 912512232 802969027 416779144 569984652 881310889 112910316 305439521 300199482 26956047 393977264 176449609 531428568 216033531 484113692 556374733 276753241 290309577 329843979 911752211 884170723 23960534 755747329 285467108 33864134 982203913 69608932 385501058 970667743 84049713 648917789 580977198 450204627 539722132 869232795 801819341 878113320 384603333 754014650 527526026 911577389 166861190 15044135 653890391 713314827 42029632 125448351 983621551 362624451 489247052 780610074 3943288 77409945 355042776 224758165 607219173 476624887 168380403 784690826 71580623 501337945 231827494 641043675 864396525 374564662 209781144 65115954 55853505 314631648 517949276 277820129 840307299 149923716 78589404 236459155 310393099 766509265 512844380 876838513 857442951 253081024 890676378 936829348 197594039 211413602 300940327 810886098 771335566 265441063 716880179 125905774 282177560 104789737 202104781 814786329 924098195 171142279 489057513 468272091 301733395 468091284 554832419 722095078 671220140 297589329 883481221 882147440 424369722 653177371 383717960 24646441 578631030 672044421 569069688 114789009 123327518 896155826 99466266 104417162 57189125 52635109 138730537 568527281 835477339 850726737 757357426 492203863 754464079 44710945 240859185 742399819 591071189 704196891 332649293 789062019 523726369 902163915 210213878 400483995 145748192 238072383 572796610 75935925 536434016 747333835 297450892 166443326 232387261 331149067 967388764 292340241 313170703 31118227 944346840 979527552 603318375 443258690 865153481 539919956 289702061 382951965 340325010 691789978 30746260 119465039 103869414 199957268 976283312 739440408 833108664 938231417 615693585 884484453 449655244 724087255 590031321 424064315 363088124 902824007 122619184 976866291 540144398 168895512 613006880 399420998 311249626 927139880 389648836 909857992 70898209 132320414 99435775 665208788 568998938 499281088 999247889 490743374 297801814 226550376 380012188 216331734 456320025 198499151 824592746 61639610 414609697 668249296 25581444 138053151 517563178 448903859 893504157 525859453 954446911 814353500 809046877 526211829 439094901 279555693 217062647 600762579 949862249 329123348 966668054 753166645 491186159 775450586 802513596 61422789 462005688 2590970 861814657 662854554 960808024 487515277 117060745 699541357 847892570 984281292 505341646 713769293 616166959 887744890 774509744 229249991 869131285 517044081 269458911 779408715 344695937 591523880 845905172 797717156 217170307 928045700 779527792 910338909 561348559 495765496 612867348 96928336 520866871 471120328 811420039 279703752 109254514 476204728 146858840 226292793 834647423 527001042 18006864 309998376 250376742 730052292 839071261 100156708 766985621 622907625 404168341 660136827 898643598 195701381 109305162 917704457 801218916 353728515 899252265 486256558 203036517 298890055 53243530 483472995 721452102 309248564 170562646 431992742 150877551 116535667 539566849 891027612 906965570 294407393 870189796 948945227 393016560 916712967 542547142 475249500 305898003 850018163 496442188 415600084 584235110 54747927 816475345 638145573 33962232 84018010 724584706 715507112 245407522 420834801 924197824 410915555 864699758 992275400 792347962 803402454 582629764 333307691 848672879 602057175 139746921 781998541 78074124 45764369 862625820 469217119 153129763 693344962 204360136 69165330 700324736 552182306 811671397 593318130 489870604 478393393 498971346 163586792 33696265 888620302 939520804 115856045 102071439 177377833 86726716 305301809 389503644 971385476 920542721 601225235 634334724 429266248 776464049 353218002 981886835 137098326 475850472 252289005 630262272 549441062 831160683 743431878 575629183 23530777 43706907 732736049 236918677 55783650 773773031 160331505 172078133 841835109 452862653 54738379 52689957 300824253 242817856 675322480 320068102 495180353 977872557 186332163 405806488 468585846 118924978 122848982 76464951 161426215 108560430 759442034 277091924 575725472 615399105 967274821 472516796 385959497 90696439 184104065 219273277 582337872 976027436 219960456 167401564 264640393 492168041 578422157 182724040 497261171 468886930 469153365 338867943 290794561 705515463 452123102 984689724 322272739 593396341 431548391 556585387 5785854 584015869 707401249 147521764 817325221 966042076 913663270 553611664 229286184 678140521 845814290 356973951 653744800 836082307 975397768 758122417 750266807 342521766 287906895 955106241 208727309 392537359 959147979 898718049 215536319 977521770 972292975 685445191 345368550 616372175 898028471 655450261 459719789 980371613 686253312 251940114 796701902 399689778 661523359 949896514 957655441 183771765 941012354 403509937 389588429 558911341 412132880 739245303 561612451 517869141 340983571 649419754 665426925 55247960 179068985 833869531 204756490 152075844 342081882 846445093 880781008 680340799 307134873 142275417 132228239 930839569 411953384 508185454 575944371 415219659 83226448 374216918 495799214 173535963 662291400 444118070 657729934 123002102 181219314 565392293 807572201 528244486 106701784 690219341 404573682 792104537 858482201 411765680 484186265 622614632 623312598 31696686 978292274 380886720 126730654 353178012 630522190 297169673 59928603 518852918 58527926 224770059 622014830 135923317 630075952 873725836 630623424 598176449 821310109 93931205 754123390 460085912 451043570 55001666 86875269 821807700 942352682 131390684 527991623 676169058 7810152 52388811 486850942 133564494 195265462 61468991 767537927 867592562 725116968 88615499 800690230 703339375 296259323 462082079 660441858 640348140 218905712 250764114 556751335 171530742 415395831 198863958 41375573 412172586 274921137 138177787 428794401 811564431 167322734 665778678 397365490 390444325 14168655 229828271 610198921 151924662 25969026 434893528 684297935 431909800 450297483 861165400 844865537 1657989 322750595 493117344 216605316 91814235 174276155 931634521 323051710 540849668 3782924 134280018 402630321 929771144 800935622 204328458 923764919 862279654 372431259 581187081 866621412 462113256 167872934 357201663 801958649 414793361 559346295 89164374 176276520 115531205 622510542 406641652 676408797 645608447 968423131 303919285 611178962 327454656 183380612 270398650 916063528 595441672 365865430 496593758 449661294 863751210 496480286 321541360 628292942 42729866 707761030 344193147 258551589 614160037 642732620 866642803 299862267 541246137 790852245 780732300 755447116 729972684 700620335 855332144 560338079 229985270 170611416 123603212 106752436 51018342 933973054 928825553 349679204 938579078 865793945 219282765 987779640 174679101 430664575 364390809 670825666 36483683 374919076 94217927 504457761 328597391 767954947 699539051 766631048 148113779 509130170 178129565 375288476 238887310 355908370 638566184 18594990 213356605 314546576 262856794 351581934 567840496 917962518 629973053 997537913 557861818 945529179 655615037 345102664 752989591 716560455 484986605 498273236 694578827 237979229 492320561 857997670 85848034 69608482 625541222 684968539 125615357 44357197 585699209 459640950 52248127 36632625 626144049 763755788 454139786 396832620 553485980 922235245 670374119 13171814 536397345 828725335 212811129 97439415 910236358 706090287 97954282 620973691 363623249 556987955 479631110 919460032 671190355 653689500 54933138 144905025 565276482 653317804 812160682 380078570 717471680 230086235 767399241 792524141 954809275 47224085 620324359 414419986 17118975 496013730 112942990 145556902 521620792 723781473 847196641 993404061 447221410 460071507 688766576 689899495 302392758 333085755 588607214 155058731 951730075 587968304 743541028 896769055 854628595 426444686 442716080 629222875 970725750 60365527 858021435 54682792 730573627 553152207 160498987 462722434 273396190 657564293 730618435 551087761 18123661 657190751 782899835 962618994 177030248 295493992 21891961 890684847 467277692 629254584 449039155 474213520 176833307 431039924 578789907 136743052 449887472 675815354 591529229 989407686 831676259 191898243 994422469 288544164 410691991 543621817 545893586 993061876 454346481 466840263 720905442 182683623 118888115 100789659 444629835 280594622 527817503 34737863 78296577 29660894 708424607 368710182 912765975 176976196 523642110 39512435 796090037 562015143 41889239 83480620 821771725 375300371 783401932 517608195 836078227 457612952 159416556 788527709 247816907 753722495 836278898 734937679 371773159 898644011 315685416 653331291 125614308 776966045 449704322 434013679 434597115 906856932 222032781 676039166 778551036 286695539 637518555 108961868 564002412 537451952 429915400 352919082 526505968 435925920 894751331 686167734 799440268 495999353 106397709 129359937 942128934 689070380 644435059 73632700 452568599 161111016 395434981 879626648 99731443 561874341 982276986 315673171 454479516 601143772 79778068 937320564 989152331 361638683 890338614 548873554 777043981 304237994 354530266 431851624 170051490 635215712 125412769 768642213 747807695 808474291 377340195 413805517 724811459 221222463 362178294 482942995 10133785 929761886 864375150 581035969 526219541 130452532 931058044 574108373 52190711 589391409 388725887 648054982 630730703 876513214 289916782 255129240 813667686 227883596 357401144 315398543 971531057 271704744 139104797 895161722 274173536 811031873 152265279 532598379 121258279 116689233 762152403 357752102 719432799 636004074 403878632 516381232 839096212 131915019 883737505 205224599 362008326 159739355 13519933 302658100 939757437 859921541 212703577 723081979 791577482 204381 138723441 506262738 49211607 108316080 817911054 68856180 159865507 825252930 837579642 392865549 921527313 249312105 284846123 753343811 888597610 825961856 56342280 431214087 584649254 701340251 138642906 727404698 697513078 57043151 369318627 247119011 781761592 536811814 413015854 963281501 863136994 453447290 642962057 240149403 455733088 180828084 765429662 953192608 754191026 880993682 759786781 789113405 165673056 910154251 66418312 284948922 664999863 987449821 829677985 552267063 741554461 799700088 384159324 545905011 365370344 530664711 107265616 852480535 626104969 186266969 453688391 286899432 750492718 30352270 863087745 671376053 959695290 878157573 459493118 901886907 897480493 128993126 94376119 808833015 829750253 5361088 217399056 892412489 130697248 887026964 540902895 268171694 320643111 322403304 179188165 149089709 804125805 99269419 276737883 904821511 244137005 859972038 354077601 175453313 56629229 11540253 692223255 211024893 838639026 102491939 743326202 711664917 736733357 112438698 77275755 455407875 872255424 243796894 57277435 593188427 214907748 877289361 143781269 135913950 841343117 289581006 133927475 718258102 129270748 894561301 623579676 965901600 609861595 924102534 207537717 33293621 74996030 573468508 527275322 30799551 376655885 421857197 12733414 945003409 456059851 648661372 95773054 658373603 157674618 684484345 422407046 43726783 462983728 92588087 234693828 325178115 409211011 432396559 241673195 72652100 810371688 231768077 686168283 816462479 337570801 713573004 860764239 150835716 721410930 240843369 145140426 413091156 507257718 755666461 234465644 134960746 873107636 559531321 943603619 439675987 157892254 242365512 186187640 405610638 252801556 431822586 335560234 973867387 484551365 431040099 787199786 349053418 265151653 130857795 659020225 136699439 931644959 470627659 175603389 554355851 716659416 623748137 257904957 794985032 315519763 763104973 694370391 995795180 503753929 443412110 355911837 618629837 928102006 983031367 2826696 458028905 186904730 553835330 961299512 955728885 523171506 269661911 631508882 606621467 160337561 481892942 100812513 606309442 47828956 485924953 278420773 404308919 899603296 257445238 833604335 278881149 277371683 436704168 278183394 404417149 463230129 530302882 86878379 514569504 886785602 557327056 768310817 422636129 205587731 770074289 994959259 144918591 364633432 446031716 916833928 297404838 434715137 290048304 608512826 272424935 677341781 286036081 922808596 877914785 70925356 196311801 564082904 878139730 549049479 205313872 136446019 501047128 600051592 249042865 889087464 266409047 299461569 930721417 868824799 977368777 788442518 721700611 816054657 920828152 713352588 451579799 351098550 715734986 715613981 924677880 93658299 272889732 99033490 340329403 175370439 366646021 529407580 116968768 953682518 305617898 193898393 203562763 469064408 864623150 927383794 860607437 15453516 631749965 72014597 256111018 971739933 729306266 893589944 722699752 990942582 908604856 633560869 757983007 282858093 264517205 692178872 16812684 384206811 929295778 386911298 678131169 957427714 533064248 216098823 845824093 312445108 980879588 191742007 150745669 995568316 182845843 599713641 589845784 978114840 920459705 119743170 202943671 286380139 344494872 585042481 878002762 369277199 997450782 322925377 55285761 943801771 516881664 298191772 803970253 886766045 779933235 758118168 869895805 375655430 389408334 829595414 376401978 269271211 69538850 794675883 385607133 279011792 892232257 653985327 581415741 942486898 873322647 406795176 713057182 606666439 175606475 158231971 364142109 158081508 779588131 761455776 506748373 124534589 232829788 31677645 476119176 254681871 944356697 983410242 278533373 430439685 457508273 507995230 640754756 313518274 326045944 226829693 966278151 130906736 746702832 740418682 667151926 313017735 120305058 22313006 335401423 821209160 600736089 713378715 373180617 721457088 74948664 650312207 1223299 539776744 80888938 373286032 588303257 346889245 994673138 106436905 770776346 701090302 646782586 271606366 669534236 590971824 951020370 415593057 75999991 510572011 139391719 367754839 781580667 365991240 372677088 682822555 552406263 894921545 407140010 252340565 582279282 539825642 830080892 812482670 833306127 208209000 86889661 487871569 579560185 169238187 4983335 222175393 125112268 605973431 745473381 905640334 594076735 335769927 236765665 203088452 651218647 587166933 57526532 215886778 374294239 196460481 460013412 275462886 823018191 894308025 829680964 819835658 181537068 167682763 32894230 349452342 754013208 112473201 886382844 839239250 890003224 594812793 305346106 767718914 216308527 906836895 157699337 210148629 925166941 173125668 308729826 37078853 330592990 13490327 406409943 239539044 477647627 2343933 482663259 494796 736219216 59861662 979503763 988769737 40943035 463145115 983402663 818404419 168586894 825110208 302296152 29068406 212910042 779519686 321191110 732415455 920173666 975836163 735870002 840331024 324495187 488337399 977518474 342000522 199525211 891254908 532126312 709338147 471927198 485636904 683581567 773504198 643863798 898355601 673309599 336091986 123347032 224169117 984911386 737996289 553996394 778359567 979354189 343650887 221040613 595701756 850340895 982273733 788649278 683862688 195001073 452938866 641608488 991614938 888172793 833194675 280281897 536799469 976192048 25518748 805591426 672455279 368001338 348234978 538720519 198885378 983856245 996717747 488365776 913686510 298380976 914481572 806704349 860105159 161569706 100404345 402321522 686131789 160171003 964068789 688023921 820079223 823566983 705199674 699261704 301265075 134824238 733381436 252573362 173264902 594324618 302464378 236729131 988947761 151120599 471355293 269596155 421382774 934185411 875360046 30225886 113454134 441865884 242457818 836178298 56439956 40108929 512308551 729326248 98344007 910519092 337429518 108144026 364089371 590449374 531733318 88777981 545971212 185545777 690784586 203822496 646518 101582784 126453402 15693890 329235557 780062001 171790154 259257296 422242886 38375357 116705117 636214179 553827100 177633498 36184856 883389495 12358981 385716173 750586706 540151811 864033545 598217439 980153341 739418755 983429253 680735700 848551335 414762410 791580647 215058192 542618726 133529668 539848969 355307856 419533744 82078956 818161867 467006499 844457199 305807535 279326493 447454467 639620860 604816565 37784660 729667609 58493431 959889825 427810547 442798686 344910668 884524834 566261303 344914115 539309085 919250847 621515670 522165424 804645876 236846572 550401879 12094531 124134710 588131916 924004403 356604031 89065471 908094267 712772383 753997045 867321447 611066786 827758019 802239856 688199811 107390003 370959251 360744154 321778188 697457885 416838445 99787527 30389512 76480593 1536879 515721351 846815183 76921123 333419084 877985124 521132142 17168292 606511944 976127551 457392029 243487259 425076453 38794111 813205328 471671256 340491143 79032330 759085433 129896379 106193068 564884635 929015740 602523649 449455647 41735415 109791192 781220580 817860391 279640131 510416615 120586890 756914849 80142427 364231392 506431717 937832925 897890573 670391451 708171242 68752508 498357454 789207154 493685774 820632674 418162926 545863395 263186466 132549559 594337184 562567729 546680247 492050453 362351827 687782344 984373984 45972353 947978936 948136940 376095832 656323513 445893570 651043707 373081034 830015599 66215825 874584215 707061348 85016291 274568270 495196248 620010746 510747599 382945124 437815867 304340348 790969010 234591502 534112223 171602935 946874076 995104378 549104140 730217167 773380695 529035839 845565055 398588309 939877717 340024717 390957609 701745439 113132202 488782890 322670317 890252437 511153589 203122894 329407583 821660072 740389026 654929016 103086013 692303447 186128456 35814427 836283010 833839822 624255560 813479103 915456031 659306615 980007400 319870718 168133780 736379349 63347021 62885616 989321083 149795745 394969254 666967707 982257825 93036705 915514269 211387637 679255062 58292346 812215485 62191649 121241478 837092654 59152420 120144379 705929056 348692391 483324790 279145897 962331713 420505340 327504971 377872672 861284956 841266598 106539853 36155619 90707910 584508400 899516412 940953996 270205626 9821816 778513772 220930773 886202961 877051938 157340505 798555329 189080839 678119912 493401212 129864869 303830450 680081988 631874250 385583552 219400991 991072 278103715 933205516 547180814 828680550 264445582 814892414 159653300 95706073 296606777 896788881 883833207 585407094 100396658 924309742 612962509 207973244 316138026 908036040 343901060 582178300 499989469 831296668 522960652 465392142 373953137 206358078 426319619 768377662 768460419 601723531 802621635 501543706 926943654 410092337 325252293 75000083 691308437 780039213 19435076 296271734 437297240 390776055 733025974 684427978 682534963 15602138 199333711 157039799 666598782 357612414 943780808 162210892 633905409 369945845 455944011 586747593 243125009 807246735 520390527 41339933 958081819 180269728 352953132 992898633 769312577 320364066 313044690 554499202 7140266 407193677 867944209 389488981 797399336 418023216 117596256 615860060 297005441 68210227 530811367 376816813 332259362 405990170 462014232 927385399 958294276 105457535 880762799 466865039 32077800 984096766 190845035 255456694 519878417 436250789 709049182 928481935 895162594 109078135 466368261 329877442 681000339 896229581 201963460 619038729 448576426 567305115 84705229 568038222 408970357 50328114 480364862 171635886 486957025 947548104 92177316 243185806 878418406 643776623 403805739 824548675 833355324 251884038 447061217 91592842 699569686 149446286 289894308 424043674 610412158 514334870 716770921 965508261 560872592 447139321 377241912 104577043 657912081 351609050 831201970 800380031 739323732 598768916 211724975 94313717 804563244 781278918 793008691 738640009 564094200 948347683 173843103 529716603 778555736 193020290 429830242 269371643 996719284 165241853 310016869 565729661 338385978 802485404 49204785 946641385 997493669 937225190 209765032 679018452 337170081 730022248 274442437 524040393 390049389 647481925 492606167 18475746 233045628 406219073 1522561 65411818 279347207 795626576 596805343 444225104 468404916 128293694 128790905 797501682 707004099 875608365 208182005 144012411 122940025 721174109 224334495 340736688 630904956 36090637 389370937 459041138 106059052 400818789 648921684 318971802 971777536 178312700 941267133 154124896 47971791 428716391 979665494 365309769 854418532 118985589 995652391 212514947 790693921 650121214 505270415 373863884 175045210 832693706 472750085 639500422 77402107 50028721 676198680 479913588 68768775 626266111 256946239 351061814 517432772 690861923 330496715 352813177 879343351 547285728 609852570 571441143 274798106 378257868 35909330 979820079 282172374 28900534 417216365 914628220 995526527 35724408 365296762 196050240 969171512 752136830 392256831 168519467 779018990 529579298 759514962 83706834 285443642 142332692 413899995 197034341 530169451 727917708 67539784 454007884 863601830 459410224 219481442 4350201 203255514 185332841 605560661 442822480 194253611 709661344 942170791 471099126 49283555 231723850 49751126 569039670 403154105 428928853 965006071 145176075 924262331 718182500 606938204 537334065 403671204 543431722 936031180 395578574 171114773 534741336 134853631 312561656 239978243 874883717 999365316 662948698 799549652 974850455 22713606 921702476 408610786 543366112 626469020 759082044 34910232 296761408 852069100 586907033 139734696 426444679 821595961 475624187 596880599 155951944 977646135 184758377 617253354 950667385 238720240 563483938 957411424 625893730 698419527 95134638 196788139 923944413 13306602 182436751 479627249 509901778 951639515 777354520 173809604 699452649 577076329 21911378 105544643 615998928 41081659 649066824 815660579 856353245 112548469 360060740 594119821 574660419 534578645 679171630 388998738 988047455 269662526 385951624 597812071 513870027 837548120 327448314 404687836 517645812 781089311 792338400 419009061 201103877 281629519 995940654 696722854 98188374 849974696 938929862 43343787 26880388 687892465 63056659 871338118 78115656 525551524 117071074 771349017 61715225 862833761 636839471 122831105 337212994 259530712 173723721 666275039 261062762 98497607 790042531 973101211 934709552 749136559 155657186 391718528 823184936 526767051 215489698 438821726 596380662 595577492 825023899 832220470 607323264 601832589 164567678 847231409 369394462 981685408 440475204 135604556 957187232 167731253 393560146 936550103 581873553 54500646 172120612 73179429 290005143 476430642 766352532 392515859 705658294 792478448 148362625 645894197 798314226 645814990 898079517 228795335 174962109 866504991 612714408 470864085 48246729 323406471 482541061 200066293 602887247 555312119 665126796 433428347 389898544 102095484 464641855 279497186 977909795 537158070 244608223 42770292 573496539 139233304 856104138 918060340 737755847 551599987 681146065 538469183 485473106 850417870 235588761 925294025 640751787 973280090 790502933 645663661 639557852 546316306 880520395 56851660 415121435 616167779 155120719 500236225 351331319 176596232 926801202 224016617 221037787 675951508 901626091 290499897 622689744 837952692 819445924 772694214 725151857 173779477 250784908 503462582 233019866 787165379 619618450 215718192 77686318 75593951 587410861 313030633 417195734 65214861 635880711 4466844 133742923 465868166 257324098 507327711 718590787 178946395 219292988 186360033 819040083 442572293 987790265 500906454 284980757 345001629 868412958 592529518 137001155 584294236 863727689 411720787 290038210 25993414 638078841 893787242 557010870 318998848 114082351 346710882 383841820 793201648 908194241 461132492 779520217 648344188 280362963 554004987 557868849 133667206 410498626 694132489 697140234 604474764 767610990 433190310 621779998 146118041 701191789 387536009 436360168 862315450 949296868 958039695 875399939 969971650 380518684 638504597 538712043 80776743 82826243 803614060 905472140 339578512 811101302 817869890 825063255 648331129 304438651 739682977 779681448 872892466 626667795 780059493 440317387 282744819 80343851 396619247 430569929 230170953 748381039 285214286 319107117 901279955 392236490 455225172 530985571 971659164 516855816 63902141 263161724 983462207 362931182 208881488 431733983 666690314 558626158 561979279 544202593 351547424 939055558 18822473 395458830 409012241 366231041 844011254 565711373 820632260 566251075 37959808 621195635 74709637 505784765 778270388 382231858 278904228 351100772 678708490 904577252 608773255 217105485 704746330 671618385 236563902 338560198 630141090 198551442 197878313 819321482 873046353 423844722 774549202 173339345 532074419 550607804 541010483 233444418 973674244 511237884 367002633 909794083 971407979 43946534 321334064 702406228 584477799 126325284 253817006 357992381 533570869 906907747 799402119 784737144 181206773 804951203 125073677 785707922 667081162 550167927 465926944 86216676 825457884 567931379 949784793 398802721 869221364 311312335 728492294 959725588 576764261 767359099 519595823 732182581 142806114 370346105 597258134 382826296 980157840 183704881 623795686 13059122 51973430 9286991 662519598 271586373 643450356 50456399 378777780 32587823 979593450 304656170 879374919 942346870 535546429 825425513 397150451 692535248 326123802 283276421 589111394 438989616 45014042 721165843 273636394 238964819 939024123 767225682 265716527 198600438 1277422 231977107 542220081 168190763 946241543 113870909 845620118 547186481 509924453 767571503 188077807 98578156 955069828 679668323 796634567 235096982 747205568 883647942 818151176 575804400 861079608 447135320 442200373 950583611 217101990 498777238 355614127 450521181 549504191 339916236 307232523 216413345 723282413 320470848 85574704 778146145 499990298 543170840 255268324 607353672 31526251 773818960 93673608 367951332 99639251 874860963 112419542 751273986 79498966 392173160 535785063 641952737 632637792 796044117 680032188 305185292 409057355 216920195 270233771 849210956 811263803 63385576 26529860 940112869 33806216 269554411 132745956 83503501 902699861 74263163 582008175 933176137 908195987 720719301 462646656 591421320 567803468 76605838 727386192 903954117 177087013 489346989 743430128 699885748 784351238 321643740 636543878 69964023 767483535 674469220 393138304 46953601 682672097 608985047 8334649 801058362 225686485 434701224 137329082 41280036 403473971 434429070 760966347 241743227 323313106 675302390 617318553 543603842 338334658 389342787 360537469 618525833 81800472 660765143 517820461 44505652 878078035 470928954 281665015 894595149 904182137 637781171 304775069 295537265 143737550 731195433 324790336 256116979 260667862 360086623 534588279 899911812 51291242 206670835 759260754 692449688 944090702 931970652 471246907 870522675 35023277 975122463 13015847 129040645 62878749 994323525 987900128 314309440 359456510 416386539 51225086 763867313 735005045 45650590 188804061 290731443 775318130 361267476 787574296 560364888 9429982 111988552 666940970 492121809 429278533 578965486 416827917 809870862 670035299 223548380 55486895 200399284 799871405 694589733 622989757 841606058 285490023 856606589 948375089 242071259 567685111 204008030 946147954 667049709 738974421 453677897 795882862 397542234 233862286 806430267 250597038 45753514 369103295 846573647 819503529 612004128 252157158 807719730 896996718 153688105 309805335 145104561 844197348 52964448 132601195 33965058 397549951 907526560 326867680 599787090 16332797 552864737 220916248 685859991 565592544 43570607 182551618 860996073 776195360 34206262 781046134 672909298 920416976 959011857 706244707 888771208 500677891 676918787 399050438 398421402 858084366 465202455 663565550 382696286 224798765 802857936 318209414 522418666 236450726 329477288 903541859 444505465 550034307 13778176 182851831 470304090 85116113 166349400 348685010 619795688 541862397 538590471 12123639 145101155 155022753 370786646 569555266 448021343 668657693 289770177 432536171 66327980 834584774 842929587 994915664 322098222 625341162 505180257 604221951 452437052 945314228 818824959 776422682 256296155 753168774 949162559 325895483 299463906 726920984 651579717 593922893 380705437 756235267 744006058 327473696 505451470 68103627 322765652 643172709 174250385 829497247 832573260 874671383 728731236 903691461 421302784 203963586 849918821 922685075 907665054 445067140 978005900 466934505 15154386 11485791 26380432 839947036 454378115 863595349 222086917 773631511 928572414 313136650 833210082 420453466 116751425 929108404 188643534 707228652 145332468 12452587 719147241 977268039 35951712 449237745 333071684 957188618 905294304 847375797 151766036 971030856 901068196 360345337 163463331 311295023 12306785 426628943 731102006 524038946 372462770 623494400 7812080 478379064 984084815 191025543 645655355 946882042 308064688 332750409 261406787 780980394 313841349 721350215 201367205 356571003 219251351 376378200 328285513 173620861 23099145 988361432 351589544 136324955 499866137 738610164 922259993 119232902 199844164 51146518 558746569 20546343 676945965 345469699 32821088 642740691 813972860 201137103 484565890 815249633 720684745 407773647 58661840 607492342 593077558 583296398 197070221 611223006 776326694 440592404 585913650 173405843 577440912 763951092 398519647 498732077 851397391 198376206 931679661 409892985 218489952 560662699 666404376 262782631 442101496 540361038 296682100 740884954 380487803 138190867 320587141 289587349 929887762 62009842 958512949 651076821 972201355 422629849 646497672 31394592 124087772 86603034 882559595 178660699 532390920 866321257 662962031 422502059 380515238 700543128 871628378 11657367 255102863 715842816 730997008 8926352 334013922 735978836 307381851 131020109 650216961 847868566 12235968 686445267 115399843 728673309 352885634 191140445 984932989 509850870 908398697 47351681 733060918 132949109 212777160 806399683 791550045 178677808 476311296 845789287 88623336 341769074 385567603 817284734 239903087 302648579 903732726 767537525 193898876 153807636 800777656 602182602 755831946 668969391 978209811 486653770 93999985 624588622 609979470 821419131 745134558 784193780 994468669 187820353 237036072 901987500 351649111 641005183 263903061 256318318 84288400 248946205 563982964 816931138 249418382 131010433 590549157 718295968 986371693 732491230 269152720 554771916 782696413 948770987 404175742 726644607 854733358 676841630 384742981 68386512 79034403 915566088 646214079 740845463 332938400 737258839 455482363 432965915 814853790 263659082 630842218 465001454 7609650 805591865 224642622 107460915 469472563 850083874 68440768 623040148 288267644 426763923 310085040 546653594 871037350 412723459 458707647 114568866 251590525 553434599 948181023 357387852 20177837 424539283 325008093 349066982 828091149 473316418 280892744 310913534 339302946 880175356 679966710 247950845 386016470 5939425 736688097 697933751 447380096 672361847 917593745 664052617 681163630 239229460 626878415 234863046 168516334 912146387 104718390 152856295 933010284 723469177 434137554 216892859 575140428 655024976 513132807 584584684 778716423 894338356 853500366 514622882 952882641 980412669 745461975 279284378 703598297 682173254 50140039 906452639 68404273 677780372 657205375 218622126 859357570 666911284 806808063 126342163 438300068 468945364 436629676 847325061 689806449 945164111 883552011 838620261 228546719 738742990 613079636 339596895 953767546 251950466 997043695 323430142 263055284 381653284 73623182 231678603 854811180 139804158 850255886 111073 6227608 561286087 740719214 502550373 82854860 249577769 656061730 874385557 783670681 697959798 190304404 736877025 186861221 921488947 395119141 470396153 85138799 39415380 181179119 651047985 979823233 824986609 758685194 978078044 983463695 94559652 760168735 860154786 630810451 550724040 687545410 21348410 984691668 966278920 42846316 276777159 29415171 133532787 112550074 209132333 162099857 748096558 974878161 988695116 316552379 718108847 576261835 771588566 925388883 91789668 71190624 72064459 314617762 768596383 572044420 535872375 111174099 917009303 266449056 776354825 129758078 5331147 74684166 367689386 405841729 607701265 832072266 334289474 643151512 76993025 377252187 47141706 622418129 301866871 99971885 973449094 304828698 737349295 490143732 668073652 483403355 831950421 764252903 338980720 733199947 590876176 135813270 878519594 681196465 366814805 302196324 66993695 176038918 380593940 172157662 298342321 438492108 184071031 18542127 265543055 323904198 453782217 529378909 804733973 509505469 249195601 758689529 418298090 662481771 188682039 666460214 40898524 189690973 133542587 99615844 176958273 999757485 551859336 438046723 325721520 949838374 908619122 966510761 769042152 113967198 846033237 413155760 515676712 88320870 432812677 438341160 681596830 302761124 145360689 66187005 152477467 342356166 890095542 773607842 208590056 188291500 89880451 873304537 385430280 309964646 318951492 752951482 796254748 124212727 642463551 38930185 396850721 787893460 974754538 883667223 956875122 649374303 80104741 253399264 258699800 20055785 838904499 721294669 759713317 114532985 631097141 498956421 419138746 431807217 997079648 670156425 698408135 154091266 776641549 367412401 854220552 380078028 535678743 22579263 471270027 737328498 819038707 108636827 147606410 353734983 751458558 901484582 336696244 702130250 519899394 164421370 444749459 427557117 747090433 964205943 339403487 187036853 483219701 170616920 353480064 680468143 482151469 414617182 224150410 77287560 902431160 9667809 293754327 452897536 970342547 470630501 988394543 637838693 220381925 82298751 64010462 558458747 40598381 866599314 498262145 391081463 415906524 565650122 928292246 571446226 619102045 791941860 620909104 594961985 881030597 405983923 230355637 931692545 772498892 629028012 414554988 274802479 487480590 534748806 195597937 654507459 6837744 249283166 703228747 832203368 475675708 949292289 949170391 107625357 918583444 10980014 499888631 244403989 805531394 660401534 462664835 883687161 506880472 497229041 413522005 105736448 341422318 627206467 791544324 663857363 442660370 5899384 995832846 204151912 375031206 184703473 266064009 993051436 522358243 375068584 94922938 995947907 246939556 100860135 193334950 448238591 534959252 97130943 647588803 737313599 659281094 650819853 96391290 159938492 281904048 693271067 169978766 424237769 574963968 91235143 830521475 336134480 135378972 542914976 374070307 870504194 101847769 130888312 665946078 408205069 324709463 783281423 843230767 858905242 53375660 409008259 254444782 227623821 216103068 411993774 249140084 66386720 967757772 379044766 77239083 980757678 721999120 376082961 606780770 69995805 233635175 710862112 97534814 661463577 856261859 221093848 10329590 877411172 437964552 20879280 939514091 220483053 505230380 409236837 778673264 992036888 538558521 805826375 515190892 470727048 546037856 638338168 477766611 899033467 11661263 434146367 206431829 219393793 744583307 917517193 889243875 710563931 302904800 422477913 456111557 906415158 864937305 891104617 745097772 842845602 535029778 876725274 506987405 90536849 381902074 92844864 686602974 11465362 478948206 342541628 949910202 256994919 15037494 396989927 103739526 665511070 464135144 541212582 209290504 423020176 641325542 377706159 604200077 580680609 850148740 774228385 448461148 847641845 916282412 970847802 210831411 938801575 25150918 987727577 367849301 477855852 298867466 750223534 547666679 867673694 718447404 803814889 159104890 369880088 644820280 783021005 10686891 83415526 299613656 525385391 357140210 384865980 443216488 816922410 366270942 943922866 734426264 873877310 355508661 102904876 240195669 25348773 620351833 93524159 747697165 694718961 89770414 878714696 739225146 628568412 952620875 656273488 937170865 255360996 412576277 540838176 228341151 23758617 58272537 342742469 239174033 995361270 618301976 171816029 386599678 809996386 284786059 251595136 566765082 996579607 555348623 330575863 337354097 975308990 604231549 925854187 582266 437329549 208244691 690510557 724491299 770329011 205098937 377199556 551060455 92792778 582291037 440372285 556612367 448812093 229455135 205068445 533063264 391182703 18704904 974145764 33711878 864238931 667437865 487925013 224246490 882272735 344756710 155338484 996439814 377053285 461379712 764584510 24122935 310459484 861196670 141168037 635969726 781469887 942292026 760595526 270769485 457580644 858415512 655026499 865541470 829666297 746983188 807510371 575006229 265686093 995721003 929620475 755501183 639952754 660158548 145022600 368161994 82112641 870860599 678255351 883819357 2651477 118534599 246855972 159304248 261302370 376522440 41134862 781328212 90696085 35131754 119032595 680010037 987714201 341323770 391585538 377450875 505377478 551137674 566973941 954401250 556122381 552194358 809274439 955374310 683989424 252782534 50610145 240393217 761192973 578695024 476631873 397179037 367304571 78426470 852102212 582261019 673363485 720112624 736948591 959937500 675263724 369003625 544000117 995827593 303173704 356850439 589769591 174036206 593742895 173051520 697138009 720547735 29352701 328347055 304510968 630458852 298556886 991426894 59472800 385165333 539067534 816299826 957673383 220438966 969066765 797180454 45531767 292613881 737821588 715672790 414877801 36156715 482640517 721319180 987529739 770185498 861426096 651036115 663784685 518773483 527528564 114607446 32641664 991899263 466733906 192869995 142194850 341555713 31098966 385594062 90570303 253703417 245411706 998065159 952591707 143714424 681045574 808610808 530310737 60190535 925143142 493905118 693535271 489641117 873018826 475888681 962728379 999785131 64249755 96641086 361884322 318520551 429184878 813905458 862108929 847228791 687196788 919360796 185741254 640455381 531106329 880465516 85290641 427223813 199874561 238580976 575057794 780083548 195968940 895218017 222404714 947370272 678029902 639314686 90933779 15885064 612028219 554470089 271347212 839933732 757305540 629220993 761107959 672297419 254032875 727180322 708101518 800719724 673829437 259294257 311515011 81204097 547139707 834022089 1962827 216454588 183011606 478855760 947124631 867049660 491249997 201709075 415513046 751220352 319114019 421234362 724339816 230006313 158269454 575586645 925166927 886869323 780359349 346110687 64436363 280903463 975360739 165197335 991929849 198261171 653010032 59092105 77503555 903319078 444849837 519066918 424867468 661068340 177533201 987586005 380460280 503412615 643055709 798422549 13729930 77751561 174212605 251474444 707895596 590583158 29723063 465474463 208541404 483904915 260187295 24353347 855706858 935380034 72404671 815107456 363930805 265841193 260491677 447289998 575619486 408368805 423069870 587875646 772436939 742127407 856914595 107093936 141551793 826484321 655978376 212492863 943332573 962497981 541017865 208131279 20831590 410730575 947759047 252393551 401657170 806466355 541581697 474952262 39835076 604877961 950712692 694993956 430361059 970603225 912307790 843260878 387144268 683183377 69175717 376906603 760613067 728533676 695577347 750883751 962062189 589377562 935710731 138171748 152782051 552043871 401873584 453474534 871806413 165928993 750764075 713495552 888544254 505314195 64829255 161389400 498411635 723327827 10895756 599496918 670165987 175864843 522395325 220694368 390106533 468572156 775602461 497485370 608660386 630402732 521196775 786501109 21085774 167022018 982993148 234358935 9308457 74807507 689607444 895633705 149531914 176530802 33157802 822576173 627947872 548721199 600562034 790104354 553222619 179279795 260458098 203826994 742465613 431385939 697651243 219834328 698324710 512842367 257312043 445282903 973477498 907528367 628884826 247396607 856729188 162729290 283399817 643308253 881493524 982468660 89858161 519869336 151967160 483715495 284979195 982574997 166103355 302789262 562265333 167909473 546518355 763358035 842844891 953097436 54911400 35401295 31343194 30773128 292553065 298217722 483271571 599753874 529739347 962818541 874437119 435620040 107358504 180016947 335852811 331196960 972090409 581170064 948134296 394435494 373596029 640894099 301264414 750958675 535193271 605258247 570107879 803750597 50796283 963943377 102162059 452128109 511851414 233654275 220386390 580833154 44045804 880271765 963003972 302364891 933005 446987604 37960960 78566371 836920345 578615253 211759977 996213698 309840947 610944310 214712806 847144073 144968876 862978707 544275016 50724451 707715946 661082692 475304745 870908903 767419434 951468156 990575739 757604402 171293612 613191695 990186906 358058738 429442073 228814735 153230698 230084326 362939495 164619426 92226550 896566964 454921488 632643954 144655064 586454981 296061805 25278487 621767014 749659346 657810679 437615968 965399480 308089187 396786144 191611073 467980908 932960916 619370685 22497146 166600225 415886621 911674054 817162268 610037882 20526704 708358223 374848115 959411865 764069587 574173862 575342448 878992966 734879917 219433163 812144810 523467247 14469854 272161905 325652876 559392240 676922856 208866600 515333059 996567475 283400792 881068057 436554671 833368540 313969626 771031387 675208212 650393103 946536662 184683034 421503143 93832260 24917412 934417239 229536569 323533391 918595422 509896 872027812 457135867 237473179 577198570 453267397 864416709 805499651 914537509 52423923 387424299 846599630 712634427 699750684 604957787 725989676 632718349 427857204 19990826 881932246 888737412 302953334 475961462 759955901 135292870 95865219 879208286 630583481 281224795 715306821 325154917 712679343 932061387 329145962 254079933 647675421 925348418 893979515 804564971 737552173 463185252 682526558 199022391 898971811 286825734 160619066 874646698 9242854 816295894 499080218 990045192 735379043 500427916 816835459 433382541 487280247 424299333 254126240 272913000 458546808 246816458 412476355 486060632 689522739 904680847 267339200 583747561 638308203 454766743 269796772 756396826 551181756 828576789 268611163 270274973 119218884 244851475 531044776 798199062 444528475 408912287 216828914 447723701 24671714 304866319 32786818 300870836 976361191 207602639 748678497 526598441 758574301 663439506 126154458 531468259 456757186 468600627 722384864 980562567 717577035 690891227 677221752 625526641 828166037 434745462 296335503 484457495 548393629 531712322 33682709 306382983 281905159 613852827 871970957 349606909 612928114 198958483 708683390 760073002 660902204 483845262 373597819 825416945 338856187 359140540 781487462 639318055 940607246 174249600 810561432 863948815 66552822 143152920 812724041 594806402 417641096 505207594 771079177 549950061 654836655 335880876 637814470 919610812 680392100 327538888 291983355 325409377 26392148 309513928 662376412 573987061 846380569 419962221 640944745 163345664 127496835 412204955 945664850 910977434 511870240 548882365 521916636 339068695 528970834 124206834 78897230 521858399 185805673 126504377 290770332 320324145 982065299 668902238 196635615 44933470 217202717 43713738 616411417 117011456 805805884 729228127 977536684 412961184 908928163 485749644 543514109 527493553 176490901 735723659 900281353 700670808 893590159 459644253 972298005 579427151 469387517 965680461 237279568 90124323 19501859 437200248 582918879 16959769 661282336 669190419 581273366 452335671 594943755 380675942 239636848 461929528 782160770 737198049 881836612 147140067 209374257 481772452 272589912 437254061 315943939 534140068 333946860 169597513 832122067 156793424 967125581 989464289 948860489 1974684 699163683 68669531 60493121 432928272 247114787 296925369 248420923 843425828 775724545 736144377 48950566 201178628 17445021 997030435 315596747 814757686 402500257 708580959 803182072 731627096 533306730 434723543 821116752 715970602 900861035 275475585 171038756 498346965 89374155 425273806 541244542 255685025 580995957 103494637 639031316 782413596 772503900 734753954 509295350 538707951 809835611 28955227 626449219 387637271 271510268 997668419 684648109 311726772 110099058 852974123 399896686 901051326 490280622 496550433 882402206 237217955 142672576 188164325 847542833 30424392 333990131 493448183 62224931 519086776 146679779 323071944 243223570 231822000 154342048 707407871 91322430 790587016 286251511 910555693 550574443 517669813 562887358 120875917 80531998 497193081 678958456 533821350 998582516 984295223 369485038 320336453 405771889 738944179 715658692 8048445 524422722 539517310 547144222 472305151 584042462 560029617 99014066 655469086 682369873 426329794 324530239 979431145 660583866 451263185 800653740 982599068 280861292 155573145 81639733 724777056 291646704 430424774 512874608 759588823 228741315 40009365 684458249 758396463 98357768 264838792 674411493 536718347 918006039 518784564 211659789 253844411 539223457 297003223 382832162 941005046 852725628 860792065 723978509 780651836 712559802 24915590 708947952 96115024 825303088 78573152 939788075 641768556 593564580 48337595 367667156 736616735 458315129 927186842 710571139 778419153 270793293 758638097 262371544 746933656 281682252 562511415 999396675 25466304 669568814 412284987 83046584 378090809 450735174 810452890 250297752 265971227 747881059 877976566 83927913 497101043 517069117 846046293 493454781 739781718 597772224 376162135 595657447 658127493 185644132 152478702 645151013 338074134 575622700 646690168 662367423 298652793 802675535 982297053 114081169 439350284 670627971 616231614 306500407 990877514 395440379 257824381 684508850 738770997 841153298 399346763 719224117 585794042 616911230 608002275 410356449 952460980 280157250 735018115 40860801 879706846 967689895 322708644 282677827 874877167 285266134 808063733 197819628 200954142 859209392 323564413 91063430 769283293 41915717 423850111 36185649 230428788 92267739 758487096 23095298 527392973 135462166 65562429 655523142 847360922 460921326 172324192 667302865 494420610 121937619 425152917 669631345 390578524 92171370 85401147 255095836 230032733 441668648 584422247 869095713 57644576 623478482 450577817 793909928 451759078 871945625 317666487 61933409 290145168 861860160 22704554 331492158 758846709 206073387 459954886 787020021 611405972 974199420 542963535 937426780 149695698 873124569 770404224 25427163 127654143 691267818 974967360 883167122 924702508 901016232 690019750 552194082 682859285 409022928 160702918 882962990 247583619 660802697 186244535 740423665 11714402 125918212 391106496 189567710 745075622 229383542 49355564 318039758 843781101 12757737 485329271 869347677 180699367 579768888 896621523 811105523 477223506 309418924 684524999 408845986 167139881 391812725 61521433 661870673 294989746 267983480 25262848 115680619 389300026 489723239 100008319 549725851 109123513 121379856 750412255 455742554 29821096 796412817 589194439 964208077 694042761 905572612 320735230 448754794 240270484 435974802 51184271 428608912 367715440 235128886 66020054 839210874 168819779 102198161 816260681 246889185 532939061 691954340 905505550 33081443 612388960 437008535 255982509 546962062 430927183 233054011 636664228 668109402 749971371 300774023 104549603 599553756 760538507 889970385 298380662 587187297 705458144 222303191 129542576 229169454 584627104 154642752 147897623 377229433 538318123 700791440 904601202 938204805 651456659 98084386 31006863 212032227 1109978 704525390 689728800 768879182 147847391 115736640 161031150 594795561 680010144 925266676 96146744 299296921 945635952 633381532 640025684 731769849 218755984 295365373 399471003 892456726 564703550 503136948 948334656 462312070 379505909 2910116 35393499 704960108 389455641 564545910 8698429 317102834 186657928 204479670 41876201 402844605 585332619 378274137 288990652 31580862 342788309 110800450 646688020 553351274 351445522 736700190 515893235 691763420 850491010 174326979 129110119 838308102 646424254 949180638 343404544 717424559 332636363 258338742 755745468 917591578 697602852 518434275 78728027 4915875 465149440 355950804 418081659 903150082 608623024 304723438 209022475 222059970 34643181 409988833 171088160 939700401 261685860 59511209 908808505 170242877 577355129 309323434 935517271 895411933 384123732 411986093 502324203 920076328 285103953 732498034 195174542 904032632 969362489 770212634 391232425 676441032 526584405 928548752 498893244 335577466 575579385 888725537 90585356 734108571 202273921 382641136 671914030 571668576 472084899 43406710 35375336 444444269 750394707 809725564 438532138 752682088 867621986 882469118 180891957 338557724 802085044 444604488 157422685 569752751 419400281 874927470 608500706 722457159 792130771 222455098 815641080 72998874 667796167 944822735 273954619 484544032 635145653 123165857 730564895 581678039 395299514 758408547 26563471 93158130 691317163 914198620 974992859 377642029 928845217 417598680 799122160 258681652 345413847 43145163 946345011 57776118 691432260 229949460 263748412 258035476 762773524 472375931 766825539 538800520 248587625 84517879 68602043 780704622 171494999 314495838 998584614 648023178 540830020 221452604 100115209 772795243 515503861 927958898 42684602 46377597 403901220 737077194 895927752 180389733 992710868 757937977 335211056 692925777 265283205 306662272 266283976 191984417 200294993 58785107 25240186 739538399 658572305 985046845 738856910 734502237 185322583 846634878 674828343 528686981 821608569 281627446 234032291 554215216 831491880 287704626 694163707 120424689 693702215 171422431 528392501 694958387 589695472 250926258 599985848 917824748 326797620 180681977 585144636 923985484 476894156 626874586 203518623 125796997 188168083 590796171 831817552 711613603 921708385 875119648 457410418 432235050 626747180 956117658 336829328 800395189 626486963 374051072 483464178 322354820 887757011 955790862 720432850 238631346 239716592 934557661 593552746 359939260 784362768 721448427 511939492 873342981 139572938 926014264 940163392 946514657 647020327 832760442 659819260 735863423 751109124 482406953 806497481 722978974 69683889 654710665 27389672 907644577 338427362 983445655 369272182 794754135 722448794 659628316 847749942 148304553 423357383 251850749 164554209 76984733 57341413 77598387 933483045 862805879 313080905 771444156 514496337 347482239 59857047 927227562 613692572 494008646 406423770 952227491 251534279 256132006 464539832 525394241 865632751 457692349 913305200 748354430 587463436 748451392 455219288 754930736 560264091 596523874 953789246 468707757 355040360 87734455 476377802 360363812 322738977 654570625 497171073 600039122 630732184 503554086 430085434 34171534 912814879 904047830 960460012 359065233 970401243 304832086 929378020 397833894 332632574 967469624 87986214 520056496 894048721 811914539 142215572 89134926 525339693 793695217 30775657 700346001 354853721 204812854 411502312 759518314 838070513 604713106 661863092 168382596 659059407 816609847 709522108 190923266 457933489 905863605 21067481 807789815 451306078 565320121 43312335 945388439 311949418 726157402 302905550 886958315 624572384 913797608 886131777 408206973 573432922 336800011 686441167 465133318 97392289 567311216 376851515 74217858 629125389 775327401 966665185 644654341 395248490 33911503 214041582 293147898 759439038 789444865 274393102 487705436 208829755 361672109 886565853 17825093 866683913 348666210 621290973 617558112 449684456 818682496 406008353 223281491 895376957 988219947 171411135 220456597 166348386 385499391 937747110 63237411 782002215 949044249 982054613 296331575 393051487 850765161 645618197 987878700 326605497 326986281 203480143 513615648 671386558 560929572 935491901 620457669 957221059 575267473 556939660 793897988 203411148 362538015 43001898 314835666 333537902 444352037 613540351 613665325 658185320 967921443 341725282 802104847 442506978 635019621 119091095 345051260 51506379 212701470 987361866 308279953 15722594 44549665 528483547 297581949 883812381 50965863 105570094 228599738 267453328 666649855 849373023 467123653 843249650 726153457 196727758 625178974 986113129 832572025 614904375 333566486 985622308 245007376 277347096 498766818 957541741 280338279 966497940 571138579 416770827 318992824 847814896 201732231 410902493 601136259 415863028 967518500 210766242 46114204 983157960 398189124 391747725 577645364 662816531 497201847 564721330 880804188 305968766 722731595 321841216 725339417 768976431 376216275 588417711 920261070 342079795 469966454 994307496 707363924 494513868 29034735 558560972 819638160 640646018 440163918 851457088 615295173 16541185 645864994 220898860 805454568 417734322 309605909 621167087 593833266 783147548 98316460 181371104 455244493 512825257 587558584 674794411 528287791 859943926 764184079 292233116 158365712 968746949 371574747 813497522 86619760 142338236 574964440 682775113 686665551 727965350 295239998 685567396 521621539 526909847 777327270 933057467 407066874 940665925 561455940 736247361 144714823 932507110 631578926 537627137 671236109 174640449 925473230 33893340 574538251 370605215 740059904 650933666 674582156 568269187 266660303 499876461 74270198 450424854 22893344 442736409 776543235 20958671 834295958 703574112 85690582 117112544 843501382 154433317 969074353 909855927 972765416 501146926 443733687 789085119 114058381 34860641 844611921 791378994 530283203 483672402 740136821 922475423 142360470 281630838 198103373 352352683 49231864 895509431 578995310 439678627 260603514 232787320 639538149 257209963 619027071 413297106 101069808 589475226 285222430 997240325 549040220 137623653 458820902 33622795 121712879 276783173 39753973 124354803 342280416 215458509 406542314 899627768 566679339 223817269 300733307 476168298 375371717 3069313 377751 347461914 561381633 293071423 169672069 431264698 972130733 495225596 726569254 248919884 262254229 987187790 769411796 744944506 552337615 938372516 27643818 58813986 930248700 25305399 71502427 458708204 352687810 368303549 893945472 645610648 565286441 126343284 950835082 768528453 65388849 27034347 211818701 449092403 830078541 226165485 81440164 709221896 455514902 797263735 188556777 233881425 945712314 114336173 507115377 866707802 729491197 994196395 822986470 947641801 121814826 623748773 472174054 246247925 562757047 234431325 770668531 147829910 314049642 454130974 637871196 292288003 179836677 494542571 5006128 842544093 803537298 96540916 635995306 728790747 226620255 148983000 506211453 11775928 87912122 771093194 678168492 706151623 517384187 389452705 411214006 625360541 669329798 240458012 937161950 249811640 382128657 627425891 686504203 879475527 341583221 997748345 884499757 915050096 865285645 104204312 437637041 195789557 115486836 554475307 329801489 338911263 858316670 699705521 784464103 139310604 370917080 131539613 714616348 217873761 966658796 406686444 163391324 105649472 43454664 679934361 903765983 729110240 664351129 999094191 783238006 853814981 369323830 345641505 964092436 610711597 532943475 85862372 939392057 638350042 293151883 277410 153304848 643809208 359584904 124487519 617783050 558400163 260013575 322707021 428109734 369237049 443053682 994664162 238164750 37891564 188259246 547832892 957475378 268337209 461331694 990515872 22657950 560732695 548131113 267607542 583989726 935841322 66781863 935015100 834577440 39235527 644479509 447401747 218683048 938636120 820169036 561913308 946743764 112089240 153077807 607591546 488226894 958964070 832364226 405460760 971067875 672948279 28351765 702474974 11256443 339408611 678807019 812844083 283180388 616481525 767839468 87154710 949389437 971009947 640127810 360659588 75230965 81514955 37557371 473282918 293041013 943138996 473884913 652401924 863109553 970462246 395133169 164403939 781857860 937629598 641052771 995679092 875383781 817494228 723431759 782236024 497076691 444039382 389151612 331782495 636557017 284639959 539380095 649858564 323484362 175670962 102676371 400244270 731361363 517621824 380997413 185542176 192772839 11468420 461945905 729243413 881082078 396000462 926406343 789237745 475630512 25862340 54174600 553441107 973822797 590082164 81432576 925095780 363481780 605957423 842084257 520351764 437808175 488914700 142789987 814522796 63495200 848829304 794893250 975756978 548112668 31604028 599246865 108095728 31488754 42825545 675138674 729797192 892804247 346277532 732087275 451893454 607017964 292287518 767750008 578555861 498443530 548592492 544138359 405083807 876893344 60712834 411172704 902254828 870239014 143586688 68082610 698664163 234043262 649739608 501357233 863354047 561820510 999464389 481883552 970454864 383554258 901135762 588879446 500782834 719360812 39526938 401886238 178097602 52262753 678444754 313245825 350225614 137409543 718185697 307671962 891815728 641115910 265422051 193356204 860195010 201772153 199978705 678334503 717596317 497139300 623945005 605074345 583406708 898373880 682608342 78872606 476657344 24312663 828870495 894183075 365260676 681100956 203768991 562608392 820722339 830063477 947150806 267813154 561147731 586915198 376814310 628201303 703681343 186775734 727993302 899633213 937029144 759223342 775501406 205713898 3592247 191759381 123999645 185781583 355349009 36855519 370510980 772082658 592606667 208583627 517635 845039960 497440208 216351246 388226346 836412307 84893608 414255946 120627476 217378081 935930970 539918738 82091435 752329091 991410631 63595276 732749692 715303096 453413557 271435720 402664254 727920791 573893334 486288016 178186355 216386054 385637392 685430198 23514950 703262197 627425000 721247501 112953636 424334391 403250767 538682255 209230910 254579749 969246797 598044717 979757170 708332738 963763402 664458272 108816725 979162122 281676078 787075595 658165288 600843587 447006606 764010822 227644662 100207931 913102036 60328776 594618284 771209621 624014725 92469593 355126738 211943744 19566829 993714081 343439088 820323507 741162637 150383932 984513592 584110943 680113097 348395753 143886295 169548317 180771555 979048610 653002596 220291308 756597740 148479127 570234178 398982369 552545299 383750132 972512712 249937740 948093579 444683407 204810576 211006165 832513807 802660628 290977226 772581891 347416177 939949697 893073191 610532123 914124855 495329690 188318703 471416236 10402538 464972946 744095664 363284860 281577378 464711151 277011618 385164872 628910000 50565971 876177070 839011905 580829948 954946296 693227047 34832239 206732554 965171340 680595694 280617240 436637818 851209588 892114065 333048316 21533967 873978915 6514665 806891275 319365006 165266074 108880007 413164541 534116051 381386629 445073907 970082245 697899756 137374396 612902854 180376016 258033719 235338978 853162876 168247086 388724142 177518682 260177728 177536174 717343867 242795637 355955857 20109034 158757187 911381800 442632295 755034662 765383836 725475936 670795968 606005613 54826156 171918562 95050148 793112954 409237110 696157958 759932628 138596140 541440517 758263730 913342359 40654138 564967964 268948171 180265655 511757495 514785475 575720345 862348987 528306305 705517226 104459519 74321588 262181601 103027735 948081367 759399565 331558945 250839920 555694107 68473110 847797421 796997336 931833286 854970332 726012143 958477319 470904866 341468387 535983479 49146421 847954950 977783002 767804166 496762103 319834980 282566415 732079462 899119498 125342414 630509443 508525043 526257948 142947742 816167442 183737180 133133765 775099593 519632233 80964516 526642927 430599459 91518467 898591904 989346370 6009295 481081672 289407388 624036253 211713693 8725598 713015058 183683140 820815107 321871093 127370346 565646285 839771606 403245039 514774233 659849269 484794512 491333436 520775848 834432238 950031553 870488646 786498052 906257920 447612454 429259746 302681947 287659200 371210510 370487975 566836639 665205705 499821324 162359713 447149781 469155259 410599224 892699875 414919029 163209951 312161191 287913104 861603567 80353649 374819294 35399837 611853580 516177476 940577419 238779973 151425339 458887950 350078963 477932047 415029831 143726603 831844101 200557751 598314383 803101013 498020162 554444413 387414418 800414300 478206618 245587069 252076910 523775445 918883378 82712140 9471593 3512148 398727316 80310163 423399294 143868582 753760099 289270141 503286279 174711849 192281631 225621716 577916442 773457508 331047575 841057987 427790306 714715110 151090657 637347483 871947517 462172146 716015737 309454360 928020872 725892119 444845021 124448636 138712391 544274112 708079587 76643522 681207771 670861558 561008812 920960247 829138132 368813667 315826198 208999124 99193318 605817489 704169988 502248684 869427986 704370763 765560430 927962804 735867725 808503869 329204750 682289597 142054561 339765653 113227927 603064063 29322877 833357455 36764478 423032202 151511364 326694676 955213978 725639406 119754848 572374896 999643450 703910271 239848596 802441689 231218278 131432616 397967765 596926304 404625607 360876225 184177748 283894232 841706714 146912836 337009692 599605709 815668424 257878623 452489500 257692193 477842461 359644539 705781479 218052868 912160232 665810367 505862518 255802962 974396424 327232 223725488 967480766 994959631 980697600 770781660 989619185 351159573 788346359 302423059 35103958 482791059 157053062 820033337 303391966 611011324 480603744 694582992 614504527 467426297 735955338 574106753 684572106 824378004 361418602 614083363 566697085 574942216 884681744 686002252 560938700 794861448 650263178 71616384 232641530 141731886 823983297 741547554 398412642 988720458 803016971 172800181 912714301 888436474 595550254 53521521 512128854 332226582 468191407 469160069 775172157 457256458 258702988 15169011 11301975 255910239 557258206 481079125 303063345 286975823 914991855 546570264 739454177 582984529 149061576 426646391 885020050 133000612 756969182 907249239 163378868 363303553 781025902 979489107 923080903 700138827 524245454 878762152 724514185 241803397 909609993 278086648 693637686 605190630 823513591 772516290 172095145 703152857 617609724 569272844 984616321 882328606 947919638 110051781 908795204 961811629 350271217 633929921 320555343 312757485 348134226 592800465 394129183 376442080 391166468 699791248 688908122 272790992 173602598 126346932 670797640 707424298 747533000 523972574 195560845 570945576 713033435 955632067 629035915 245656055 686482936 228267249 721385889 413095739 33663818 942183312 331691328 963320676 300005114 67139888 34149908 617604138 409081056 15879586 403411925 293263512 828772245 780670890 304550186 801812527 529654653 430727488 327589492 680678617 464061794 382380168 735364541 72182242 108368869 452277140 825765827 584083649 942964774 31073931 398170839 884167260 538967209 900751855 635837780 918652444 738694036 209089742 784182239 165731682 731520237 980807361 88122662 675262642 927204108 727366978 456685501 511450872 722660513 796080903 135400286 719033484 400601696 272553250 885243386 814519377 595072603 415400494 346408502 254911862 733635566 298640506 730457767 272365723 513015958 467109778 145467636 753711144 957880912 784586272 815993250 430342533 83339705 835679682 44957234 261506901 49654611 458656546 41639991 346640852 734064512 566171161 904145076 522106200 165287806 649736941 904313836 156348667 228476412 302618580 439171303 241260362 788398893 324342425 129803027 384217006 23700657 553219588 436724255 198239430 34375020 112230906 165998400 295065983 514354373 644128117 240481849 702175259 85853078 510718751 819086261 615458378 755346002 104253330 279390590 206017928 834893669 527319408 263050578 452964024 41220127 808387566 101226792 573045414 440273100 679710975 490702218 965297421 883391281 54232861 560282360 149433159 885045127 852539082 594430391 484050006 761771101 734309394 2037909 156913461 295377737 357684596 353967438 610989489 610595975 500963506 318530527 118564489 359049076 798465327 392334120 375269547 552135691 936629461 442629638 661806911 123583818 690909226 114978005 654481842 733806451 206553374 505171292 370606927 996425266 11480840 120963710 306634553 929430947 808493837 164268682 455415955 155021513 536423137 441933250 336678852 563557110 172290398 300643936 623284615 953817114 148125697 596509834 889207631 717997747 775691252 445072754 605176975 927117553 171397887 840423539 27756767 971362828 636127621 301457041 364241432 562321386 275545235 310597195 992071225 417753154 460306009 725494022 842612149 144558011 916427522 174965875 375227099 908714373 680499541 825682816 130163817 19283281 519694024 623422411 756149474 446371181 796166199 340885533 703956717 865683359 387405491 388921175 255485318 333627798 742040448 846199812 637813986 36766279 791759936 933559140 786230431 533306217 157552504 19086385 638816228 134600520 95590035 650066057 734490343 68381694 226686235 674916404 113147790 402787489 286657058 442026987 493878346 117968830 898387135 366626190 728663987 397771627 111507778 758549574 737410920 790436267 913544200 595864136 634982435 919888317 420508571 83779356 569556368 185150381 175782492 116397589 367150224 269306268 682998764 282084231 204763256 343338285 45336960 909338830 538083406 707889412 491910801 663943952 24462383 972251127 661637669 62913080 627933654 413768379 314357823 677430794 106374861 425807947 542742144 415864902 260714940 327870901 515374959 698048490 637641651 658586525 118167955 88657002 534505170 771110920 76761697 842235974 169079441 255446920 213037955 803854180 623193862 908125880 57187355 642468962 610827526 615395342 58222807 218091159 405158177 997530575 372386334 394818716 486289742 182616289 45180122 599202201 423128516 335737666 937801791 29678288 599098979 218344038 663437842 153123658 1252628 921707095 610136844 670675368 450978243 634089849 754543421 757781109 504028481 793526218 685279753 891489355 24497638 991962136 374500476 366446153 46059767 639113413 169333682 518933912 543003636 277625872 964214438 983957755 423518434 979318732 368816667 842388540 612630782 282780587 475627906 347956917 792163395 601521869 944696926 614794010 772051967 620071839 470649679 614321791 664785193 518720272 349262283 705101711 160939224 945377029 485889797 926934542 699194795 236110772 700203935 740089119 689406628 589969206 28952775 452521956 72341730 451166801 480785927 469162959 121843689 25832027 841399013 436399751 368649215 931884333 632128449 638218172 771460027 78513416 153146062 565355992 581425772 633143616 684128388 607435483 195715211 388485203 763994061 334822946 699004560 877178167 645170717 358112074 237212837 347042512 644925554 757589378 937490239 685102943 333437400 617207392 460068575 694518138 658912904 900242154 96944340 469225577 313239483 196793709 975323126 598655014 568594829 194727706 341303260 867123542 378364856 53214163 550664922 663089322 82000256 918305519 179819896 108195587 933506280 249418877 95904055 373500385 38973007 846064860 59327824 263762766 433684475 77419994 228418880 237135433 976883346 521861713 559004898 84216883 852348815 765527443 568562782 52038282 39907031 986007034 789071313 117320778 348702679 329440472 660138764 444717841 541107029 497976974 743115318 439959452 164877717 781150612 651592818 285408741 340690311 762437546 396669827 329268450 92183473 187751663 160441261 572899441 170635286 558345774 710642873 568001104 589548914 65325307 470726977 6389801 157191479 912381404 49255318 411172399 134143106 206718006 429107070 236661148 233942491 236309312 910327965 120567368 367075945 232940594 545098429 219434911 311653084 546533454 544308203 361155160 376715419 420177579 1809850 694114919 370355220 81933193 108164612 430050958 596994664 753258258 505670728 791118619 935086665 447424700 312742996 145457836 102304962 893821795 784752554 641756534 130555151 204679443 978887302 568882573 318859564 522262051 975613181 64488112 645398357 934809931 603108554 791133185 766175844 781903828 938650226 822558729 126493395 403389691 57485453 738086754 65832532 54100801 446080882 669382616 975122183 528317159 171126767 475664018 579966872 263498373 345088059 216895139 939671758 504095614 91317728 110990390 638213962 855674741 775520254 940375043 955520479 904107856 710762996 495212156 594783238 583120891 292425101 986602646 712912520 643506275 523236542 63183137 756771645 997779008 258516006 571818113 751044243 256629593 667090388 24369947 949477488 687144685 422129426 781988929 620119938 988750328 558293480 134354546 526480387 166797174 47410826 804560841 255301179 161061365 122309742 353804368 497653405 603934810 902818148 138996650 683040631 3308042 930443957 512140889 695851695 959602427 762351027 121309054 420412649 601429985 756073348 616212772 143734972 749471357 250880584 174458707 41843261 703802490 209591034 133064612 301697386 287294507 858886684 843862240 984610667 144945478 935089233 963573568 445748736 962460119 124668909 687156135 126360766 604996690 838004028 750449422 543373597 978256471 382218120 113742630 941169898 855700288 9791452 278358670 908151584 382418063 71442045 726358826 875622338 698766275 256111162 749748303 575562733 642740389 607738643 362368877 112376533 511743098 825793951 626201825 630483112 268685507 871732147 585172765 114979880 765364897 291763307 716011672 858721689 656018940 824996566 738765667 977439575 15443086 510373695 925314779 483140566 491387361 475372796 980473930 750026463 137094307 399484005 398147548 677876550 63696008 860408244 803645060 749307429 449168565 61090084 86206022 559874364 90500401 94515903 88519054 233361640 523780926 562840039 239788594 467486887 640589161 822616620 501572740 844386255 992001042 703616032 17629596 290054882 696506831 735643790 255844141 110968944 311499928 557218117 584347181 189992037 13106196 113208601 801490073 642500653 208093681 94012088 98444114 327195762 168538928 644570063 422746540 164745865 500127689 539912156 249011176 426791155 731346698 325744636 925154305 12574360 135516400 814232671 507333733 777133917 319040469 828527326 403715111 532777468 760700889 12245503 349289999 919072695 850685101 995580308 576182800 984928637 50441178 292731480 925054942 157334373 177883818 766499705 364420120 312103073 760956294 85092213 621087132 784117863 29049797 780822267 825559847 167062803 446635464 330105552 533637433 422872049 378591742 222730470 598636240 787876601 87101601 836225235 538577257 31980963 547342454 567003265 254988352 802603796 235208855 596758765 728837522 945938127 785348105 91615975 584263031 867774858 637771642 90037663 123518340 624767810 532187833 657915046 550108436 887652357 887562160 784291952 141905913 896000320 712124000 622011533 612712035 676365338 505574084 409700360 726250052 861153818 893736153 139393202 3951387 412320104 91088416 26030376 697059968 642748649 713652286 165702124 788195946 869699676 820578470 726753453 791030874 999570662 666203747 94998207 329513798 984725908 851382788 102603477 272979165 330967150 398774321 808103378 97962692 913673730 319974451 975914 863213495 549311274 327437963 437659285 24457587 17244920 288215433 534170614 528618597 93117578 92699090 234849037 887992350 317514937 916408227 671303619 525529608 530296733 683165017 693634177 194871837 756546185 559438292 939702516 115109973 157230256 643532671 561081792 465278263 524334315 482558738 951613797 945266040 84472657 994303934 694743815 694990210 861073600 38414764 802095709 103397893 96681124 814858618 120097653 942065617 627975749 661049938 580045307 715973347 752569987 943988467 648159686 641390658 98101948 188357337 349951629 240818629 205099767 969753665 211636565 529579752 719316002 757926783 321153097 68684957 240643733 221701591 584898138 657080614 794713034 956572102 516660468 496776328 548755970 671762496 966577418 220017217 719949942 859293269 752601006 621922224 215323131 476473107 914684111 263425715 728431137 476240697 851951168 434955982 63094220 887166646 832454240 723815450 178942953 900828849 1164797 691433546 952743251 407178333 873720578 603285629 990943550 604840965 975416071 177854326 573152626 572404099 857679315 469961364 974008762 64212682 256523141 705898519 106583811 756198528 839875912 661387479 428981499 774736974 787953140 90431422 266024102 476380758 65701771 745175686 695051463 237943148 274236472 472531663 550572049 188919797 110732111 649980259 211789441 900232472 472270396 263063826 658351647 462304135 868903939 305979613 129182168 887261800 439596661 945689493 490017640 535596438 219805408 763398110 498865212 223528926 901579734 407143708 550753236 450459807 188902070 656640565 889392745 998161985 25885967 275384092 937996789 909713437 44251703 602021996 487295018 597301791 819676340 971845285 974682248 449216314 415294526 487095910 371362191 240180381 86608047 138859677 69935162 428280599 528693260 694794320 548290683 901530146 84881660 512303101 879208780 724479564 620912483 279537919 254943915 21912441 127386405 40619901 621868929 605195581 655872701 158203756 269445064 924653199 22095639 82057748 122673407 129941459 588882141 758826302 94895985 807435907 827326248 914260970 589789405 338515716 76533101 483824388 904837622 128001222 563126898 973670293 790887449 31184920 470507091 857510864 503464068 536770814 495092619 335188796 48646334 120224030 569723001 72394151 275111810 310332750 650630414 252418598 282987147 881870673 524311837 498372903 196356725 261812383 145954342 551905876 866451017 767555914 127046573 799425559 599857336 392300161 831684009 351253764 299310560 523139139 96965289 493360023 977057575 876303444 836812514 75947036 447831272 800870997 539733520 403776548 696110430 302178100 469434001 520870215 630351650 931606077 644124984 640719432 240358245 177335621 137046404 451211472 554400849 571631696 221166173 706562900 999226484 826514536 60930182 335560839 947896664 985185113 387599290 219553756 984600349 215590518 753755179 538317636 655494912 670200266 438454595 322184508 668395138 482841214 482085450 540435528 793840929 925036675 713311308 781962495 801348434 821523352 36194851 955611873 443146933 80349750 534736249 990489853 763328664 223439407 535364768 510923913 381365637 773207238 825444156 654172139 219634702 37070115 934665124 927374710 670428614 401964203 955158154 363839704 680626232 241225225 902071998 97210209 20392985 741623090 874383985 23529663 211199614 20274094 744422022 391948785 779527228 273007709 14513230 463191013 313901008 116914828 234341494 448205169 521933563 623420228 241495593 97372795 231501904 471142525 735543014 127887588 239236926 46706101 780392033 852186115 31868810 599175391 778658899 465930121 316389898 614378582 821451389 413557980 18139465 115779936 929839207 959703965 296974545 286151491 905651271 15550146 885326339 953163114 585295182 140832082 682895557 142646619 712363499 915573865 430139586 546390262 649819836 549917042 170491206 661390703 205711070 897498055 243487311 444984507 691927505 587479707 541526625 329020301 488564262 247362188 199402849 779349223 811467896 105156551 478767002 604478619 998802251 799889224 563235567 263165092 902393267 630694126 346331457 49441148 961222149 479386706 815137655 53483810 75639419 558292784 131779996 736386796 784944100 637107775 663501441 905459311 804294412 79509965 861806358 140121321 528795358 722085272 988024771 795530119 284847414 891311439 80891224 718458132 160642416 334787540 650597803 829563812 122330321 773080504 403365085 130990618 907541860 295336443 886222337 347458652 29416251 529530138 278884128 760441166 277750632 689170477 659795376 789738671 847925196 381960654 61906032 933167724 913277929 891316588 161809683 109514405 963489306 768438437 861351729 51359458 792794126 425475323 854573392 54696234 178592570 480705699 356414488 96101594 249461370 405277901 784964434 654473635 474609793 883696282 296536208 613599061 913550063 438547583 116202287 641072494 267809367 986622250 282439801 820857643 1565328 13764418 287213044 589888688 818749815 305517514 77291313 792684792 306322401 668900357 332124080 203694555 101639765 240903453 148487817 554605562 875545200 877300804 466844702 307585995 746222271 679271935 350329503 475968207 421662502 23020674 232924745 881517863 350598002 499676345 245760182 533094050 660877069 516330944 544969398 480417868 768029307 816845471 733776912 797221253 257458326 97994911 768854611 229948200 300674901 17556553 401962253 690760153 181504595 807592749 682214245 250633858 208713960 884801842 981715322 203218950 396988447 102411354 720792244 83401764 163881023 556240551 95902001 549240217 729985236 743191722 49637546 751814022 223131103 557330960 444838939 607639480 21351983 977497874 964592617 71978222 943531961 145145945 642161737 469767901 613164821 961899346 346870942 580602207 776973204 501351022 379855250 60877585 761763715 593296198 55672457 605071265 152364483 402961418 821408786 84167203 110579857 610995885 70987758 552373022 911894524 701744273 171829165 871445676 905482641 879098250 632123223 834032194 953376306 575903789 937557130 958003766 574607912 693918300 106918998 370398545 572726532 791077905 947409494 206596874 229637771 22554388 430466244 840785632 301782384 356926087 394909045 709551231 151853886 986917468 138223537 323475489 86698384 545287288 382889285 594759 177124492 358864827 437515341 927735712 797310561 946098612 787759824 294720112 162900724 766353863 807217195 182379385 201847973 350736620 626204965 515405677 302392530 781638505 868898798 321100357 786874665 142360200 571400116 749890597 999292356 934463859 187909729 428240896 89310797 480766506 59499749 853734077 670128207 27356097 534632910 237063412 201174384 734456121 959145873 720008446 44014213 649099990 406274283 159731226 475810178 794591807 715001578 95008001 765141715 986304125 523179102 208870766 906430913 359011640 94162740 28288208 963854712 506130529 769813007 957820721 654425889 37309165 735627989 119451671 115860540 414273079 390969347 430787583 716497903 286461184 24256011 964899145 426196015 339236320 989908057 219689616 845014090 552169900 289167859 819274935 841886088 608412794 561403376 46227814 730121662 479694127 408651930 588922131 121991165 126448567 746447874 887289498 815925704 705065699 807097027 526130835 621176058 695982956 613563057 493433621 270072428 48548006 859121329 84630229 139179588 246372097 694007200 787258284 718935550 188132646 143976014 719649742 815828009 180610720 480666854 198660627 464490706 821618403 480902775 128800178 566722024 171611734 243377472 862834470 328647007 372554282 319010339 712523730 440938833 572112462 547984347 674661375 987677674 277709607 740764466 722608067 997894030 538634975 676468688 214755718 998629961 572465337 203774503 957458946 892787714 331241524 949562866 546433102 827517717 532765850 520087270 852878733 853621909 347706675 765253343 939773603 379483250 148608435 94523507 57417238 246044290 348800278 510366978 733551478 335453311 776706302 781882875 370960399 317453894 470792796 891241387 441384957 169228586 131900415 288911071 97768743 471609703 127773074 448878352 156467233 375964209 334039159 440697164 399303322 207702474 538578528 124037119 210267775 43093505 451504086 221247417 87796282 680352348 143660796 579019160 356696233 286824080 928316794 498611908 664571290 714884771 82497716 593038723 248102517 64215596 911266794 706608787 94425747 632652677 439727373 522216281 27483430 486742586 153062745 116914185 668508008 134548880 853184509 80719389 804772586 966286718 490570386 60653767 184343234 772259413 927818207 506738602 288142764 26793888 288871460 892831481 191957666 375463064 41757349 552131630 97290955 185872985 839926314 302594640 504293181 940873145 782483569 936096366 181330594 935665850 105642416 992619710 3736396 921156526 52563602 121932296 932087220 400272354 381307914 26543366 285990852 470093380 217391029 916943917 613879341 825195707 129655673 417355984 882397596 22278003 595081292 963676839 136767404 65617976 391860218 520095287 407229736 895238679 881482506 7194041 80637734 445744308 49113531 312024032 113958524 327341896 360937227 623347599 383801667 448907893 196564406 745991767 458498570 102894214 181622338 760416305 325930730 113421586 835675423 175976806 479622859 605070713 219700311 261556598 449286068 555541398 83293866 98660057 567668462 843055449 799600825 205284996 235019851 35483220 323553505 931050939 127940827 840285692 125023825 470007546 935059211 605210779 891640559 918768578 796152242 513247241 101561776 689631205 994765608 942718700 193483076 698798920 249069671 300318756 197790538 14583268 171882163 790966232 23001145 602378660 660742666 492400282 85593770 169768262 858991434 121910302 710481152 751394323 940221144 937151591 783816516 343125258 389495788 280344988 370715996 534848579 865297907 859403909 365063447 783930803 102124871 990564826 12432630 864641001 228427760 421076760 635181821 560724988 704313620 614834045 562102286 27663085 164637660 788581619 970428068 194874120 91352052 614409995 877596842 4574126 749793380 53034393 926808192 62706247 571019836 614876676 118076936 770560245 979788580 714737183 664170392 199475679 624161617 920014898 323609739 753686821 887417292 376592571 865707681 57865261 890923301 732532649 327807129 430304366 431934054 48606265 425488267 211923698 136259135 857814792 660643960 537190314 100385110 927936095 445691639 509480762 839379450 983612309 18351292 442358329 168175382 335789830 99149413 597802515 634211345 99517251 807179665 753587976 231474398 723642913 220427933 560631825 481199066 112015672 339134247 643805615 435492566 125110646 367382492 393843669 257329598 607285305 796377686 803328899 75319509 467224218 104855178 215203266 741541151 328942510 819502887 384962929 850262126 750371424 396585681 778629571 315384946 368839020 362283474 841423943 778785247 709605366 363752789 995075099 857833129 901859225 132592287 639214709 215266139 53846966 842558479 454655549 838367733 851013782 174359687 593247027 911139521 736438490 144382722 958933854 766060434 303882852 788613051 640022303 454899742 490114738 580283765 58349504 86866050 989394810 618788404 261035134 10135143 535737961 36799543 980067299 122433652 527415070 352516591 261348255 931847757 224183717 227168665 426391891 498006195 169306680 710750830 820909622 672506988 32771988 283372270 621435718 332740541 600102785 793763207 327850865 350440045 931474815 260061441 117469183 506185635 742013128 474037145 381263156 396238062 687527407 145364671 478724932 316492564 110132544 627083654 434001202 947524794 49100598 490260063 850041731 982718963 622888968 522765911 629410576 547956371 830189860 125305148 209392269 242697300 936114763 658225831 115292674 201262192 876003797 848809110 469736863 897600063 865795251 102112577 291960328 491627355 606926127 130206504 34933378 638249860 32086880 321554799 622557299 60995461 112106321 374995796 475769610 294219904 234969661 154011034 365507860 827191761 562424452 864096465 618006793 816566746 829842275 897163001 949375462 10039966 443150461 571232402 967337654 368498702 938807157 35564501 602727839 503185940 767546251 480074257 184499449 775929222 166961231 666418665 963579248 745844507 89387299 116344183 779672774 454266645 693008668 323123113 703703314 386085380 238146810 643759559 592622871 788269779 184268363 438886338 81031485 649897636 119638790 367985196 346453003 86856964 692586724 366908891 151110183 859982521 519312059 417138031 725953324 578483512 251629719 143141167 384333587 157625898 452954589 261615520 989819653 65724415 729400562 896433044 534065746 17436950 40549216 509196385 190556916 722947655 346016062 734085987 517215661 452757004 475402190 625326109 727861838 377244006 720857277 994279968 518980218 66423303 635348107 240986922 11746952 716106390 663602790 670549325 839637893 622464235 422373358 944938639 183616461 246108412 517448431 690400822 761289287 335460457 840887655 300898876 268107076 355017980 488571527 971700782 852040141 79470259 904052186 857513139 990919151 396423941 414370196 310251155 798865351 874126497 493851490 91330348 256205731 670649594 199814269 883384121 387931753 248747785 247561346 374476054 532997123 284923953 151945963 188862257 237970038 133803287 616958083 622894960 635853049 694485871 721339397 66619563 636582717 202487507 393513457 476184313 572926473 428844490 636605353 93582023 61330261 280444075 305116426 711518817 416229574 960891332 428524429 581655896 689421701 318260035 773615157 679842411 326705915 149625927 140868873 362748336 240142509 239429488 723577893 471130487 765132614 621593462 289017117 348977483 620837064 773873866 62531734 909965971 834834635 684835542 923898775 633185801 166037872 871357137 755080737 915412082 902844194 453980068 931235194 845940397 707893083 933437962 298535781 86485395 920370511 414364754 436516313 393170254 597820570 871514485 948258981 114950451 436401726 496319336 512885930 329003812 913192012 198384391 503377193 483317638 228921257 761910545 811552908 621959725 13070495 482218985 524220436 256731660 856278997 368669335 902811699 426103610 169709642 983930104 646389352 808578990 183614883 828106115 170469131 859983997 223464600 385126355 598238963 959798527 580045038 53296439 300542062 109551702 21449717 118278118 838889683 830180367 337714762 572774199 925578851 394917593 448399007 492486018 374527582 684503761 861175984 333867709 66394953 251440580 402859510 439243590 193738083 831771037 635139460 21751757 816766922 501817575 540840479 150465037 549981178 260787484 804360316 30815363 106591173 815843343 374601735 310768568 808698035 777234704 968387720 145404553 94062791 200450726 584677552 628603891 350666081 439728773 880879310 565028128 511277832 35784023 548364780 7576886 310835097 450840316 301747090 776683923 793293099 935463253 163270542 759375808 551001325 79696489 153246556 741680556 143706342 714173782 179989458 281360358 159565802 309336124 270130424 567083285 284291633 142084667 781845551 293089943 17453631 968115794 858771558 418333587 827125460 780290688 765196915 98237199 868581685 547570262 916815017 279288054 818859437 970130235 896949585 667653012 605476821 833227304 869181467 465977893 697386632 569963470 957246166 312258274 852418879 552009847 833493606 12229720 278485339 781547963 583703749 852080412 735051659 909544096 915687558 507193713 693333151 734084069 58174629 884873263 912352011 373110003 502988204 546494722 569836284 82229217 564831079 355197368 790756777 234993400 125574679 868469628 698281100 326807600 289638651 999632608 591430046 507614701 362355477 569991284 694255091 973373349 773086461 159502299 783132434 41123826 328444056 558216982 90674853 90482674 551409879 448395007 511079553 34921433 940327260 316346642 157050089 999167213 182670065 276498433 388385892 90635860 547855649 961328710 708981641 505843947 401584477 25854943 580406377 281551691 521159712 287647754 812242773 265920061 950791331 920082948 222709865 616429414 182448640 236109732 775883526 887448974 824889655 814498583 333168037 597682036 640780544 490205880 268497725 389128794 430051793 673965511 14770623 596716090 583900647 899393259 507861304 84920419 223624327 669219689 521486902 765513576 177556702 666977593 544315455 487293500 346043356 462936344 452189050 600875887 655757379 480586550 823255271 37040071 889382366 866276336 723188148 630895532 594876603 170670409 276507711 644555607 725454661 325597394 377670027 94369366 401412044 114069029 532483842 968312053 574778154 404895765 474141959 939061696 221314535 510897117 193281681 318965739 17387395 330719073 834337205 45302580 125417423 712259343 359091222 610197952 193075222 982594245 495444719 927064942 181840814 393785259 559927113 589383195 855558918 789350913 620721686 209563720 415721308 670338768 588764282 423022909 311809159 910562149 573713168 514766380 876881048 258252554 572030178 759639142 808387372 32280409 38075358 827132701 218351595 863002416 396382138 629259075 886148698 287420145 721205806 278714851 272544430 846038624 945079097 463322982 751909108 476622185 356584525 781455663 851155672 595773773 661686057 343508588 780963048 855095204 902717305 437634793 665320657 805262898 944227516 157285197 595927399 517493520 654959235 502347566 688772965 230768402 957614168 364855946 496754506 942498167 996769084 221451370 730353590 386023521 482888157 195254149 760824292 649234995 783837508 332053630 985113614 970296167 148798109 218687412 689674334 784049959 83363198 360535329 685457823 316934008 774413841 540539414 326094285 2472160 851224738 809079014 506041842 248606494 753677030 76359150 787718261 981619661 727289045 619911450 912369614 44090465 925122671 435175387 344906582 554186530 309587184 851664067 898651431 837669677 2423361 137564499 709180981 297065446 88017336 316759526 825178621 240503209 406189084 537586762 83743338 302164370 13486177 828517925 850707946 767040909 992913889 118785037 822636751 391305311 62837750 785733603 17456756 104138672 559909838 622294383 971472837 164036894 545062317 80881192 924535739 676752334 275955278 900904432 81921643 973009616 693426474 103868852 526127456 288572120 141284102 249108703 214777593 228199750 839688265 749829834 63313481 625454815 528819432 664607264 826163337 222068168 588006025 778599684 182021768 437808319 419392525 960771569 445168852 307040313 377410427 579402897 790093938 284479740 746929577 57909290 856095209 60483462 436853456 675779560 573895741 647982306 315906931 458271412 916060651 136794098 206750856 804869414 798534075 196423740 835394211 719998513 174734190 578418237 941038732 590964603 59845367 485010269 532490028 675491354 206851976 214008289 395776810 20730437 235611223 622891042 250584799 89043680 259238812 224678519 607678978 458296787 813559470 484193238 791274694 109658328 438926160 188564594 422515492 825525716 686171013 492817728 693653749 910870124 655174186 423443426 618030010 661105770 648894064 63946675 191337595 182827190 421943438 826531313 943525899 69211664 188626902 458169328 232156640 967929520 687938942 543374790 43732897 117598053 151755743 160089055 959898742 851720963 142234022 466170704 371832618 137183059 346983520 104348907 646398942 739565283 678232988 727780668 162582665 610280065 724695346 4091636 618878914 929158213 986947847 542743326 286583407 628136906 426210067 916749498 998529412 86054886 796813663 112038691 355603920 689606748 794503955 857476401 868891314 41443281 719604618 301831357 774724519 135654530 275231745 209344290 446025639 319643537 154943786 358456309 468247764 977646943 16322349 20420048 54092596 66019585 225368022 437018214 974326607 852475907 899518462 393359146 923919783 261750704 956263394 633089128 884037172 425904804 851748517 253254928 299822321 379596535 995884285 164750448 844451730 196202897 749146073 715777873 446539603 107891086 793327134 362542258 702901928 138533812 853763526 793685492 758922550 113734578 627057914 376332385 272159967 126194135 547010050 158451040 597332904 633826190 54421341 668466865 899018414 478721482 284473435 141946693 330895558 99813129 242561934 475260537 94201546 67997733 118591668 622764293 573194590 211175196 299686168 216888371 38117373 335276038 184588362 509530276 421085026 837591315 882821034 504289647 178748453 289344458 235559959 35216410 895047468 175472635 600026506 116602848 430037914 175417187 500330223 303289070 313503069 769683510 405292343 14508889 531292986 278915248 589829745 306792573 603140381 919976509 735138245 627606261 836539993 887228892 39577370 79096786 383200038 460242580 809158710 412359113 121175150 588327348 691244861 166771164 187499431 142154695 273843718 843913793 190869197 768266209 457351342 882994175 269469980 645752545 787405442 688751768 595161620 652711355 473404266 127196935 179677720 779912356 530146945 688802740 806156519 669581926 598631279 648636206 967983142 288929460 79925450 160909719 696923427 394874932 115397815 265982601 927810769 545836816 671401621 401518948 173591466 904163580 605735127 746011130 633237698 834674829 627414112 507677427 819182190 831865727 636249494 780932 34375528 371355485 471349119 910989445 823451975 833907507 752222139 739878941 212278804 624617952 761742434 404515193 185013459 721854040 671199716 717033801 5810101 162125797 685978544 578229230 237587974 547492587 296559344 416190767 375834683 885917431 52953485 920796182 598664739 892951754 463514519 659731668 89527613 84603604 969584401 375606236 974694895 568112912 669309214 283574135 366053809 666953979 400917611 431441579 986177825 588120709 371452327 935821846 55524686 75591213 884158461 239426653 520181506 3000661 584998690 914698382 103897009 580453150 922007363 497505346 139100228 456724407 484637530 94441640 449166403 387218493 799261760 741470466 187720427 700042111 451722247 542813709 1495401 979639688 368205089 774813244 600347929 449542655 496733629 579671619 180630397 486710444 608804999 944921595 146750898 504050940 994194186 15108196 679973107 134254749 988432269 246227366 336969726 304332211 564069772 37020777 327237584 988729324 45011670 427991118 149740585 147129604 367741956 48776094 168161225 835398245 737713478 644416678 658228602 884433759 661963232 240845554 424853877 673262027 935774466 95311695 655667302 722315905 232207949 46499632 451850480 621803906 141868669 592789461 555080255 735171169 335439949 295774137 843278605 496573548 375813579 684841040 611742183 987685281 513580604 39954061 196563742 786526979 913651964 48960727 478823707 349440876 149912866 576756126 543906950 217849846 416772136 41696632 768263277 732413900 61077797 833219746 117861432 234527776 250942026 776140114 28569134 815879421 205574389 502369251 556425691 769111117 481512254 142094226 327860626 277632252 700826483 540403554 886308401 404351409 150576393 936533083 39666542 887381500 651613513 817189965 538384703 985629499 109113341 726901830 589065822 942071223 842900558 291730976 732292819 605982357 167310583 506958085 946786127 124939621 245787462 254932446 799102281 568530932 994735468 231885068 610391669 898813447 893345790 330599291 29595147 600528217 793144230 497109106 856626817 305198373 987146201 846233210 611640840 889577247 320196718 993568135 776372570 695034433 610074456 459253472 413766226 718175292 308452684 660799355 823088124 929815567 362500965 820231762 620114859 571438355 109963129 97375564 317763741 948741261 864848436 736297090 24568159 193087649 434202530 848224667 664255252 861235714 499147853 503036969 436964774 347832732 342407 179523599 13895868 980758419 657999532 570633403 885217307 655080919 170179678 567611744 877438080 436876384 689657786 790028586 822592528 956210363 703794256 838228069 331278739 107322394 645551961 164176809 904646980 424201391 362885186 237326580 557513068 368155529 276330047 272835376 840197613 578133960 113971683 65388063 345278530 572270391 461300657 358423230 906391624 381525952 796082186 303791206 296585968 504389686 916392975 548701618 185340105 316057275 265421384 951496102 4702064 686715789 774269317 382593508 71883392 856891345 131404343 428195311 234032624 306437182 581087804 782828707 184732643 875080561 570395081 984092897 191127524 360845772 597547022 620737697 671206386 492878033 114331283 62025529 561432659 277329753 221330292 377656684 533015555 276735630 483522657 495090293 495027609 407496890 693072321 776982465 963470252 596797715 193606280 546646749 492933825 900988193 201037755 425599120 361956321 884802047 599535878 774037640 576578326 609265833 736476589 620681378 717081025 868443227 135737812 266786074 549856026 837181327 667036155 392589844 388412479 909913184 895247103 985966539 832222793 97417665 759786769 124533141 406793026 12788659 847733790 231505287 724953742 660474613 587228550 324857424 678912161 223773211 976180044 965079565 732099093 732798078 575154468 941260577 125274784 418838002 313715662 748545979 255892834 746511175 21137033 998572807 224567414 207443293 804805730 921375373 434218265 473038739 767818864 216693677 318847087 26928838 170938705 137400382 292810945 881982471 538817675 933597031 129052656 324485445 229439790 419528136 362755349 967862654 334878183 211639093 492139947 33783541 529548371 580735758 610268617 684560107 140248751 469628125 644721873 205642353 91182475 856098758 721881407 490160587 796686705 186719000 186604871 335255931 877670481 520781804 961494113 367395585 688606785 740792227 219454848 765999301 97952632 931737798 499087246 582391840 737060455 170680934 545821719 437487694 339676971 463914310 300516984 428021261 134129654 570619141 428941312 116375173 284919238 651489842 636157609 632907891 354260699 746742138 544078945 455504624 17836818 621003133 527357985 77937982 715954405 660007825 790430027 938988033 635157618 127236241 960303350 380600036 703535568 448426366 716770617 304008250 329755131 498544390 953059850 92401317 566780088 692843853 371754174 89769032 149245340 309605758 873308818 658080647 604519946 519416192 457751809 156740778 535999716 983920811 505584311 894884160 423151072 190262771 493993949 604849119 785904973 110799317 105347503 432482411 474292864 27845617 577622450 394679634 656155664 514915002 785528717 833144406 791767206 14394931 274085643 73432216 780647957 552121651 248336961 637832460 914349396 906470052 329577813 170137529 597731078 101826811 605809406 657219790 988949002 310521061 260272233 671044010 913078182 359811038 467340495 605769799 292530634 316756778 476744767 855440504 640265613 677443209 514104328 750093089 416276085 249965446 289232750 578159911 955595561 591912810 612175984 699059824 96257926 914615453 112812025 662417032 916628160 267373193 70324513 752131177 490702334 707540507 77642369 485798238 94363650 409197676 542265289 732257573 10887628 621486443 399120567 742391076 373651750 256150959 676256368 393494821 681290846 836867452 785118443 361957626 506089514 311748433 142444656 133756076 349519165 525711539 534114355 224281429 615166348 478437014 579606796 297971231 208526905 189712491 81109722 102291689 308548863 476960265 884076060 131962534 204336972 287331685 895053427 7162350 874330754 416448188 723898640 938237059 964517700 100923578 318917064 958650695 781028642 358572655 741774754 660054033 910161664 303063828 259430230 545369965 150043307 526448554 927005413 566129871 498274778 307218032 994366441 831283567 530668225 839068550 14118275 961729047 702693546 436717791 522908499 464577396 835402332 363965174 747216861 88303981 748153681 165622897 813537954 522541585 115656332 474136147 245912492 112269688 886241486 123335214 782349524 370756202 644481797 182527813 144634459 546355593 522128206 110281005 723362904 518882991 62180917 652324022 503274866 916806660 752248303 366832340 725802926 918888990 474705460 459835054 889978217 851997419 752418815 310997765 164691650 320775669 400193929 931097154 423886860 258341198 113128860 582292302 355813501 231775969 980167247 984714748 832520126 613120822 512543830 752112726 832290131 231397295 988931238 958110601 156812440 110466849 786207140 759936721 980309386 283560848 839752043 666750197 920182956 149252353 699790834 144202477 853306421 817762321 463725670 728934554 505179415 514273457 743736861 16476411 279062477 780887050 542577668 313340282 776617602 310957196 590794730 710692087 92595533 306395273 978797434 857558664 399411619 53756777 6886368 196991189 676889826 116513706 94548300 960797785 554065416 842412946 388530774 510477388 128966907 785651411 273993048 809369541 138396743 549112807 927637590 654110989 772189565 223065450 627230318 687230245 69846618 612010061 808164420 786775234 930727404 502619921 504585506 544461508 309491853 956786125 831086131 903178452 935601991 302166119 782882373 869236201 781022735 13066389 295164757 94670813 812953943 781538355 973287547 541874791 604612049 116000285 173752122 707725562 275829184 891889687 994871960 997313561 908087311 398181366 35450555 94642647 774822884 908629535 272982066 193247529 756538325 436122884 615568112 991845228 152635274 3997813 717422773 628376100 305316868 497172449 933612509 240941887 99359262 447281264 88970915 188429210 740191264 13412000 679353023 451882699 323001755 211488150 119825407 507152917 48893526 334568947 593708181 180729337 269197858 509279531 614072908 514474962 615550935 266146644 883161521 811851539 761571599 105470655 151449345 108328102 486436014 496035816 316725848 749998148 277963962 268581066 102879173 560596113 192006018 966717625 262256969 753435884 963886503 920247966 314901780 969431712 89130632 861474362 832516140 346738692 467004284 830843563 683126795 432330673 647528248 94578549 897657115 752677511 903019003 880511790 697315770 996720752 928389019 796351432 8668074 14174968 247825758 703478082 359489335 904966476 681441512 257227481 134756691 951698148 791671830 753921164 267976161 490762024 304125739 113374541 441966683 802881175 96336404 377419050 335948562 429786474 256019456 498855817 384370236 687393562 209277798 157717139 780273448 862515421 193101573 904798587 761444681 820036598 778633878 274084601 60180073 181193864 59762470 535877854 743163268 848081844 255667433 495902125 147959632 135619373 846717989 442717500 67604125 656857060 475721251 765220255 377673601 409222764 385412983 817168071 130725136 109761877 513243307 79721377 710157286 80932587 24323427 199280296 252560782 37210589 326740179 969716445 412353329 198684682 362204788 66011118 657137309 916421398 744567328 830706623 690630139 602787047 41153214 78590990 499624701 699671613 130761326 170123267 313570069 81066575 867310581 897937499 921567355 292468552 383875691 936500679 80293102 138040970 793101040 872570998 386096230 686484551 566447696 871133675 504126996 967356566 29384462 182184416 916710326 917776245 109927332 519903024 688380409 904479586 398037838 404666096 349864810 9295459 868564506 919116766 258121866 721836465 427755436 55191621 915369041 545714482 506311891 852867939 798125454 345763879 496267509 708548707 17501419 808603607 228780456 500534821 842093963 993874120 695225738 631528572 921866918 404862372 974525873 506703335 560435735 460295797 113097224 63871147 457362476 629121251 27106842 670218738 286626440 957870579 661336661 695860553 51826512 42571269 604849305 946316900 870349074 452440942 561769664 15814395 132652801 635350613 761818079 453176759 156034871 777755342 540200555 257497553 585380889 668832028 188493361 413631287 543373303 396380979 164873408 100417361 229567896 397814847 582068238 31251230 504679024 818505079 748448044 931227292 329424765 282916378 378462551 443835692 355735404 672478047 971518809 583705920 745146504 844137101 233739710 801380308 451524008 280276861 334619804 92612147 442363249 170388374 399546304 922803800 949070141 754764382 497694981 73157383 57305102 399908977 864509712 377944203 987205849 785450986 888140225 703038348 350657680 553182501 30631478 298477640 979499846 347042189 868957463 874492477 834631408 850532056 834755164 348009647 115011047 468696240 718214890 570079754 774957959 628236834 371101857 389724052 573047834 60568474 811939438 194035907 503224324 268197681 672805727 411841965 602912755 623610706 210518413 425604194 381869901 181765219 786000005 438660539 399339486 543434353 421085264 897224545 918490841 651487506 173769911 929353655 854643050 851647215 397790110 26221458 292219502 561978629 739241752 464390054 234068526 102190885 19304237 327059973 439121200 549379904 413169787 463320010 273271538 89010597 888461104 34284957 340958072 189091076 126897255 470114532 807508062 279790983 840931625 565989961 546465965 348593800 470710072 317305201 630167551 269236078 934668570 156859091 84893627 317084933 599506587 197427624 129387341 456345761 751702112 363443378 435416267 468612537 635603398 977292479 448537229 155635151 414378926 152369607 883382048 171377953 259959937 844626298 176211404 134307111 256685337 650201489 373449834 471716289 613858176 984653234 574245551 134411270 746781597 9457369 118291028 109993577 770779801 499740095 461554963 948865083 405392097 595026448 813315105 288622379 475574863 472860044 372232593 564174696 276967093 492656040 771644900 523264069 659418566 18897286 65108311 436538279 958566192 393139065 519987101 343265947 231490242 141980702 522513827 604263477 480564782 735572886 187091716 642918185 931965639 912976234 365083504 725664454 39586559 824408576 892129111 639717531 397981140 563975431 235486258 782232124 149856048 903301436 985558994 808371793 138100737 178317105 732019236 890494685 114653042 336471729 240847680 140352680 260642258 230149149 799092907 559702741 841173229 678201836 733901546 259252617 815648514 328955101 658445444 898478023 33681086 914925017 764827791 502517587 251778454 203666762 736583782 972561929 773628160 88674571 198860176 710141001 687949790 103916588 209817349 825431384 401012373 818858944 189667205 675404065 795626446 761122204 478708229 235528998 655886912 569976168 456656312 250588362 52964417 977049369 669530817 34501950 14000699 620602139 137020583 559586771 374262630 575240688 450965393 477020588 998410015 716098248 988524408 783963303 67622366 291419705 662555178 979817133 19334750 515171600 928007398 443799404 122471062 160772502 249376842 294446485 440752435 390611454 820414341 36012204 250723353 230906554 460870366 760173109 56850929 835180274 267249278 547695144 786795528 209567984 557149660 328598283 377198490 223092284 702028646 110915545 217113238 546496064 507554597 817318596 597134976 369237385 15060037 477800040 451149967 396152300 81856729 200211377 159747705 585493344 502079720 949172530 66551210 822223808 809945676 980962981 42880903 903024756 186618874 810676210 243161405 219870775 77760823 598116334 613059802 931334906 459249071 395585417 700376037 353262888 477107185 969163106 703148210 967441464 43378352 624292397 170053782 323382035 426255856 294966940 586208239 390051394 995666259 635808321 351486050 137357658 625173738 5833400 693955334 609253537 429151841 788933905 196402575 732702691 680647171 577541034 19141749 375061520 81058255 595777016 78235628 333986327 699122192 491721186 290057194 441218278 859728538 90172251 312438839 558074411 735056099 483160545 272042804 994793411 746997953 548117398 689743526 209240481 401799322 629817624 386948962 743082667 670131211 212840266 702754667 960316219 847591278 812802865 208860548 608122514 214093445 638510885 643391055 617020347 246584606 729786591 917551865 354943416 377580195 341574139 826014469 654532524 393640065 321232872 650433143 547322257 893475968 947996682 804724982 128412020 721728039 756768030 880872030 175755378 585770913 671338537 752728671 479784256 963341636 239783036 273382969 643231996 393079393 875798253 109984444 479988759 731588224 269484750 682767647 628350660 987966799 306184208 798989908 33485552 999716427 518048413 496384534 831775233 414347534 71974559 925110245 401867980 673125608 264827578 863106018 343198921 857387215 984448878 157732878 689503270 403345897 533248000 846317396 848411112 363149831 179423455 203878030 970771 32831768 959416414 736224849 543722528 386983768 135199209 567528371 907185570 730733498 360938830 913551990 389594952 420397620 552599816 589627370 26930658 860139267 374336246 681938991 999412531 115101381 509090237 52153951 211262686 759636306 736526263 86381103 134261942 25802457 627366191 636588304 84978872 381298139 176756844 705137657 244307201 235619047 686322351 299928505 409934722 437184919 755074874 639090040 959635802 206270282 923134200 129165548 784249406 126486092 352623236 121801746 724049609 282431974 991169653 141079333 913328372 971261577 408276427 492143675 865797050 675191622 274082942 83780966 96976098 114410333 876991258 976624082 785238856 222147236 307745149 839004978 973067226 860873189 263184779 264021284 723856651 534669870 16338274 712190808 241160196 785102379 369296609 69244189 471194301 496762494 983342355 646517996 693295256 85952008 930918035 563828559 284239721 345097456 588990193 376638697 57874698 570841859 729317443 388107274 860492363 163881301 751858531 52465330 580904448 110898378 304887217 364301358 922217953 325339411 700749814 575439088 515070188 703235816 91626626 558156297 860016469 872004928 261821033 58047564 624225501 859508888 254439885 333252732 519400899 266708232 765471177 705733416 386183378 56335297 327502988 858835844 926623083 600649951 692972230 215691870 451723093 192713690 819108415 709127191 356928516 838036705 892034964 416937722 153782710 319192673 222303987 591986522 399156892 205788427 913487933 379236896 297759238 40759072 84236762 395490891 396378858 782154659 384340404 963095765 809602060 651202832 344543755 326120832 115503988 973922041 819435569 617684146 75392089 437590991 167090261 713146829 236928925 805545189 987406984 906894879 148352396 911589162 983399791 481167544 31903847 164942514 752022061 705868307 514367299 872752464 381202466 484014167 831300417 933339997 863514632 205770868 25332106 522544427 696622845 45477546 294105835 242279784 921736570 212366953 869909861 691525912 437602348 429595942 418177071 894710290 396047644 308095943 400540086 471510912 853726262 296739880 667626875 278510934 271242100 215772966 633734483 309104113 886166334 272289988 351444519 922074198 487968219 761991251 634832548 774937536 612211836 706752163 350901610 934230903 917450491 389345137 939113292 300486792 265649370 298824553 614554378 138276289 244273784 162040792 869920848 259055181 784986709 695361129 435349663 663210301 292218109 784753899 249532998 791318785 750898553 511095735 891611342 229681202 191236969 640284363 712418893 39565948 339318100 387617323 124394105 699978179 795151327 388721318 328082030 27250118 132289232 579899143 680371943 374424282 56289619 523528861 749625795 355079181 617231999 814314739 108835859 402906352 216107073 769191604 936829714 613345079 336242326 193072083 345276448 985129505 173151452 986642428 187063440 126394877 675238461 952309607 711707783 749223356 821059642 464220136 600557328 387957175 856036738 833893791 79344368 604973068 81186765 520240980 966383234 366465034 194521180 598461814 821468350 265107619 463140713 67717275 454808681 360668243 520922253 564026852 656269029 344944663 870858224 809994448 957810806 905341730 870267033 495518100 144516518 708601326 884134172 132071156 857980022 364345041 71748358 93872463 329038854 540059415 778087969 149093733 159805971 990410077 646066166 986972303 980355964 651810288 347451427 205868013 111771169 406630929 612941547 771927401 799296185 208933557 323483760 777328733 148805186 529645816 886400374 25927269 115135197 988852083 25068004 343163997 279697791 837678659 507399461 968363050 908691297 895949972 79179981 656102286 922714967 608328452 720739370 656612574 124471925 338057956 92506208 211355777 329169320 611930565 567024299 896069478 891164616 395399864 558257330 288472347 66849181 536780423 943625141 692812314 69644077 173074870 721476285 378233010 501207990 178335891 120220995 373276179 680767229 438609801 430914052 271025154 195297152 761562914 97367584 273908014 696472202 810891873 130822462 137396218 689869441 169256750 368665809 420600286 397836006 201888573 925223174 4788096 11384729 768583000 700154447 294763338 814750255 898003275 53190220 522047691 91041374 958890042 506840081 168393016 390783658 207098843 946678039 578072414 527071037 289294741 484238616 759290079 655096380 603503445 126958961 415247131 82684202 313977487 87668811 657852277 625212411 256848660 868653598 434488753 394403053 290966312 46742019 345747900 130701797 20265626 992527681 532837086 808350662 434271454 690589686 677977684 663373524 164473961 426480137 817653408 620894031 772405071 262884609 332884538 258315915 948150040 366454061 855235819 590036173 991752902 93861464 850990607 823143880 240306666 325638267 121125849 872950834 594908395 216093841 188095421 733063783 835764827 485182556 179726779 754412261 821648017 421472433 513138653 176497310 805187738 965009308 461850281 120993151 333454660 769697379 876707873 490231767 119824547 822362538 786188118 301849853 585899421 575000695 819826296 264074270 863894099 523913249 616255265 580595347 752593329 830404946 993357444 507461561 595931792 474812414 814444118 123205859 885525879 267377393 497096117 417965519 405750647 864180057 444647139 517456745 783436232 715353913 731449644 462944324 224275025 750052267 818311153 518510282 584252133 60572893 750625757 574014040 651179686 697619710 994431911 548328470 123466228 506957356 902826204 651649554 754983718 88278368 682215371 730284532 291864669 649852432 436960367 798101490 416714268 485619373 679046539 609231761 600019209 113106592 537315662 999927833 994188120 890195733 688653071 496666289 545013961 615422067 213025485 786284891 644387264 87401399 492519645 64028953 784497987 249811710 265790168 678013690 201540940 731116922 220322366 587532833 620346722 187701232 509142149 590394158 831278111 311109278 412392594 218097667 374760177 409151973 788935296 295823528 371638391 266345502 109718853 32003411 575759947 482798960 467622353 516899262 557635615 280397703 582829756 142654522 13502783 446864828 709380989 749961682 720953058 28827210 445929258 918750583 299220414 766214620 244338677 287187769 994026876 491186854 585412575 59729860 450801883 459853492 372812219 871461761 494433113 643393517 981556554 688917883 327630884 611642430 450737429 278057410 120858320 807679571 496504552 335021530 306350619 101469232 503411241 387879054 675561599 335840346 969235911 715670865 258230879 98885370 640657580 717268227 795156230 506673064 588600339 801567149 659724542 437477172 925420605 5819740 697354116 634602197 490861571 385874277 404880531 591030974 123014169 764564204 851888963 415894586 119976700 615614206 222906234 325268672 818761670 287596494 618250067 936919898 675511302 630354748 587616812 322493223 540550764 691067770 599575766 942145793 344817402 446965258 419010548 390429611 587249315 123334934 610337640 978291855 870090690 857928409 594158403 705504648 881635363 451597753 632665018 471322956 315858027 435718992 399658464 861804837 637642554 64195374 166586871 327114119 170722287 764006878 254663634 143137381 495265360 937547013 948427614 845076879 818078996 927265883 420774294 926861696 596241326 858358685 624216684 777556665 37034053 782513288 68325041 841973051 566502457 976342029 617160673 480430847 371836994 5240434 48305861 612956534 981869620 559923082 307509235 606730837 935067234 772138343 62562803 158327872 417649950 541063450 27307652 821558559 926404625 798686716 461248502 103834968 39968509 80555232 183561775 780302425 946781100 646900842 40030225 982891383 912671281 435839038 800369083 642660726 535964479 984165054 807468895 60406558 107946011 938991115 530742095 620891035 886673176 156300730 161334859 309280824 818141648 988976474 870588630 552376045 302569474 368038490 559058577 40957542 994229813 493937708 803892827 533940561 407333580 457655437 564347708 366043776 125826691 126781235 303900651 472662751 509180647 57278364 21174620 805838911 444559210 104798791 585849814 507395701 239425803 760205179 928544882 994896462 408959457 854561119 479838833 907052053 592167039 846106400 491549230 522210827 776375396 178031277 335244756 742980460 28606267 28131920 537143819 118910995 117119971 24353567 94125794 481066016 607996352 945418845 536543528 152966343 203433986 997991734 640835058 800503912 250276396 577757440 901509541 275776415 318741719 913367561 981661715 483009291 491801731 552995765 87186353 311197429 710522951 753881596 622893443 224380632 66174163 756995291 852093158 713625157 12831861 564152375 68807168 700523726 453728341 393936459 29963181 558754080 704093510 603463247 107875004 160108460 533626686 588426385 152538310 232711055 716783227 293911955 251806464 41321815 83481870 947376457 672529838 661992818 981748058 811526565 418361620 758983031 864325509 597482944 944789642 646633366 83318232 203182073 945044356 613221357 315731962 890670248 545616731 852655437 359819472 626342988 999280239 166373280 747871179 604905717 137066163 65166968 336242687 144832271 90654785 963749003 29726276 485558044 725314381 588099763 559567857 8393347 864805923 333231738 409786584 848741024 104944847 419694765 398226767 532940986 771628065 466348375 857050509 233821231 917613319 906545068 865462274 402167065 226726136 710525646 607864765 887527778 142707700 183499324 251905483 958776596 615807734 583774294 443655997 231434777 520222735 276790434 483706664 815448677 705549880 548567688 853535495 472258130 134883358 928592955 888954933 59611121 735801902 969125548 773366832 956130089 484895781 93673654 180631203 995044967 456077651 601355594 366329633 345256010 87148418 86515678 172047484 215804911 475557800 591688587 627642254 470042138 885964056 976747618 814940336 858024041 874731364 859603707 107830532 418386383 959031396 157938439 940049795 652906221 372976846 50921271 388137642 351651502 233727853 170661389 479707104 32347281 248035787 639053477 400427784 844414140 566867827 50965597 505206357 535524229 823265505 839840724 178957707 600025582 534305815 854443758 464290788 223232758 890999637 327492291 450981492 744918495 20421158 396096634 927471092 515688868 771141168 26967485 721321452 43254522 941504188 582158040 134491372 261261418 558804475 740998806 530386050 83145546 446937852 3000882 518720820 275105229 410931060 35775697 532524205 112149718 537131660 477836199 950428245 272144803 904420131 141763842 475725839 171631229 457058878 946386011 385013182 391894014 543401714 132415823 85151473 607466062 424775577 812090251 746561885 87829018 653336576 284700630 235762013 806749373 549052181 827951053 433112272 83019599 810119738 15789840 195949760 916096605 196415502 971636687 837251279 639840330 704916089 74782260
