0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-25 19:52:02 +00:00
OI-codes/S2OJ/912/data/hunter14.in

3 lines
951 KiB (Stored with Git LFS)
Plaintext
Executable File

98464
909163669 65190048 615436028 68381681 707821787 538716302 15378878 382587036 100352059 947312007 334096842 655439817 442640746 553830992 179043745 631747841 779969531 780882778 434741071 887882548 961316646 356638169 43189632 472528403 793696617 148712887 743384817 314785651 21462265 964611629 143587003 82222465 749780225 53925707 170068545 153582802 408305669 445442700 862019610 572933878 200178086 50479866 548985295 79463781 215615166 294604404 87687970 596351905 44542217 510887638 160993500 603527406 740412747 114006605 978586617 462365893 805719606 212310584 935216607 991191976 564619430 144588230 269622932 802595755 883575219 9930680 418758848 379263408 160518143 55389325 784778156 717393493 140523224 992907145 755387574 431593788 465787277 870362076 722210748 996530279 941844454 18779300 206563906 123298766 234585941 742573552 616317033 137439050 128556415 671311424 753881483 622024113 488293670 715932433 22487178 235639364 888000417 825539896 13378145 478026384 586656064 415667158 406816741 523524833 354297283 989850085 78403543 81708374 895545726 931904476 139120161 138680815 680031147 808938090 632344925 177521335 328495859 534463184 511232176 586123065 679303337 942489814 934046708 15245752 186218114 68227653 686664340 306654978 143650057 325825571 247852351 648292457 837365682 831131142 78702768 517908567 437375430 276150675 311745246 997088833 96303803 391149273 334545822 813485702 701709574 31593270 93321576 747537722 498892659 711834631 574219257 404157050 588443614 220728627 747483732 69306032 882349290 892722067 695621683 326310712 596033916 874993300 655693127 992932119 523733548 997191910 17265899 10558254 891004432 377307794 619971195 606587412 452861980 296597093 275310734 40188670 657267348 158751554 425215982 480027053 914081675 186144626 507820623 873268547 992467858 8169434 656714338 888080505 698471620 957129997 28789521 933779323 16095836 41006344 565943493 889004883 869769650 335036567 868192179 483393330 575428626 73770590 843681776 539074287 194614168 750848415 969158859 740678702 603746792 566307221 895227020 188184340 738314823 786762362 276482082 790214870 33642548 306987954 546435860 598251997 820896270 1353366 410303679 682563232 526118079 108279889 23259308 689701659 285627712 551501069 159143058 55818456 269475183 255761346 761982754 467795401 962187469 801507591 843822297 111884531 362094722 587919866 797069447 758539977 799952082 403023814 273872288 458648161 727565529 329103482 733411004 709199614 83051585 94071656 156396342 145289718 345263514 762274185 127761595 148564348 438132696 941592741 293057766 628978053 52149814 765514325 263535959 220336037 34206926 524403196 177280716 580859992 600706062 329265860 434505056 481474390 688015467 849784831 385685038 452534886 874936811 927919300 996485589 158137996 495463883 130210881 953002598 357577876 360912787 974340013 866393382 550748335 772533496 642867040 448899446 356760476 336524846 644467899 764483164 180922378 723517085 51578567 888012687 55890862 296145691 662825996 159447538 366528965 495187357 98791465 570996396 167427323 49413310 257403541 806982251 894583712 857052297 732638101 520172573 303274869 855346897 161871245 333397031 52318626 611405836 328828275 476915181 876500500 162455310 594215626 149384750 172596154 503681391 541466508 655813581 934922937 848132736 284741172 676607668 837642895 31278707 267963812 100755825 63945671 638808517 695327553 288511054 735422253 644783785 679330326 867017553 298200523 836383700 413264275 447414820 224817126 445264251 333575563 831420627 663622895 716706995 679269874 748945344 231908924 556677852 483633936 429257366 772885799 389144841 134072488 421375884 642253548 2288898 872858151 252232408 186290147 97664801 286836157 561904263 908728204 381460343 894919455 601791865 935959852 410268566 92135525 677121815 787428568 966726282 457876996 255400072 456769934 366619963 762660220 314813647 5608765 684477706 549675123 185824943 945622674 133353911 19548475 68282692 460028344 300557180 431144556 512068968 2035790 748012641 727371750 402190206 706379816 272646896 233497786 551342628 226837890 876464436 555463402 567791921 522550221 25313930 228046046 715426867 724249428 82759242 236751161 932594803 592760789 933560194 335630753 636116723 563770729 745973153 349494031 668021313 889717164 205762555 605710616 907646385 783607663 952747750 991853438 851432440 637979700 934364433 676659219 580887008 459704279 620808481 788579115 957569643 329123000 641287144 803246322 489882416 625080883 186951403 342444472 990200041 544442783 154674436 192193933 886827262 266044858 290974469 726885241 747706921 523450932 64875936 191423093 937513341 262103834 491438212 737974940 148091554 691885196 674904172 119171751 390807541 489055277 736350194 942977937 62556394 625324785 560391340 846177126 422612763 408188979 911181630 904439831 447106520 524864746 266260979 42105428 18074147 951947836 66188856 689265133 711059343 738747166 315609605 112853704 922680699 10975153 91545452 593637977 313840085 702223100 66621077 186430371 988958709 305641161 85282623 912936077 762288455 114889302 374816579 731708600 42231972 171903585 912194370 239460869 926335619 782520287 973418632 542445985 775224478 7528450 647531403 541484620 25895326 610521187 752341944 737576075 884162264 258589242 981254165 326794713 489799343 368087388 687385996 274794234 274374642 791731142 188638553 29636336 538833268 258516565 795097388 940428057 366296415 395719645 243908782 934445515 602151026 649390443 755361565 509538877 710065995 695344461 565391717 309265581 131219632 904186586 296743643 930966029 800810691 788333082 630753125 702211862 458805808 7182617 126494005 58610416 56685111 983065379 771546287 859127096 879723440 231226133 219739187 415336729 685479602 544530038 172528185 735223077 576531565 51864637 439170976 495618301 544861027 118680952 454955786 194375718 303401883 89926605 560122649 356440606 426848211 337260454 399202247 473976266 772367947 933314668 291693853 142864812 56318189 327935502 20364054 288993433 878494313 687155672 516635896 233720654 324063435 104054672 227987755 633246733 800795564 257852890 747566395 797103354 479107461 668178456 581896969 707244696 544036750 83449313 937968757 831542237 929323205 981900816 832629314 330754997 426163477 928992396 502286779 650364501 433755017 588489595 226693012 716632352 412499363 849017901 533307169 283146867 923105780 581393874 470652011 701644698 809598541 595861019 76801899 650798302 529305169 31823122 350618178 203961921 802563639 122582980 753550847 952484798 728619876 74223295 308946151 154332107 515178911 200715994 527515289 764897622 922736446 322951061 426396512 558306928 304083282 583248615 420907740 593198312 212558109 563834953 527529030 98461079 99986683 214317915 238766876 469638284 37869555 529514932 111700734 725530913 516213130 679800376 594866839 603316980 582537505 318556049 236220382 655974353 263462387 32915851 383159457 801260424 499834328 515607298 475094044 48060863 711541070 401193112 676722963 968196785 323551234 279372795 469513902 846640489 509090038 664374917 580818508 756272059 399423241 833669100 239892764 386260818 288469788 228273278 120519517 759079467 954628685 352326750 947464661 162276657 585499470 162802374 390218884 659238191 382977686 40729649 407192814 874088774 535001567 550851494 425054332 784134302 208473168 354962001 478662334 136093250 561387587 70249566 499336454 338481826 534052980 646567576 623256519 617827845 329128921 560635572 207997368 318926161 909708408 598526435 376625002 455735226 149314238 620583702 431942244 691930857 272309514 960612246 30535112 38352859 614740379 968421138 634816406 797980786 886150799 831085459 359527958 735881135 798647139 198456820 862904437 932783572 473220411 157238518 964901987 175296814 563294829 704973507 467710990 558887147 645575944 986037235 860950419 676201798 137790416 501835650 314245754 944958623 522866513 75942561 351764733 953929526 156492583 539894138 966637611 659434700 972313545 508674350 286428332 789410378 942218196 494758483 310385324 839152976 344780385 474219534 450948300 256105817 232902999 489513946 874294101 30857108 781787685 31487641 433742102 909145984 560801284 140557304 648829348 294254761 572691683 502935771 174333730 908138132 54917554 36397198 905519641 866169067 643252789 273995051 921205594 890952073 705885102 885474 142811832 446150884 541131257 754120936 840801264 727556389 147186250 680959606 428249442 919904623 76101806 254544955 984279646 431925753 924020595 787749904 202864632 811958693 871799619 24533113 100147672 331836551 133063266 842920489 943773986 976155816 110361792 863583267 463032731 218842218 241980 20640348 147643079 746960208 772301476 966146343 505494935 634091077 497788381 438975196 604582721 99253385 706604185 206353976 123594896 614339641 898972544 436506862 972259341 564186017 39567910 539214239 90380473 296486613 148505402 263368436 405377246 114249942 706105656 691965978 221274205 108451911 992066110 665589314 927050836 30931636 773112602 579801398 777180549 852513120 453069904 524036425 531036008 777765121 990982466 414712012 891009853 182395682 733439148 128869771 17284449 219871505 170385255 412557605 882236107 621185283 211039242 309602812 521081097 432592682 165995972 511923597 557594850 643347845 437645126 506415666 736416068 707314966 6118945 339468882 266716194 456764315 187126354 149387119 861554650 166494744 951710682 272397562 924785660 488040715 932725654 746985036 195899135 226253430 849297288 451892524 781107297 663015508 812507326 911985763 385090012 297510029 480607859 322439574 927997770 952643437 938309506 553033572 130328626 791835273 948063303 570721113 883238441 122460310 267083607 703924116 124986196 474743971 729532601 320926561 629236776 20159162 383766461 320626980 554917993 794818339 130533979 925843182 326619394 91142482 707739229 47949190 721932429 22677179 239307237 538654439 832519993 364477775 537451041 273366818 481338758 144054778 767278126 276758832 406017207 776996716 439791867 778529597 833891661 818832499 695505355 857040775 567784882 866652176 917077182 342780645 388019233 193726258 110941510 444250305 150229120 921222636 198471001 406676475 695556945 885659041 813525835 621093457 682535817 145258462 648766323 543037489 412157538 117110168 61003959 409975089 744887030 431814514 141950281 189578135 966456912 212317733 498011160 651612958 878039781 205738627 529106750 190930629 91079091 388956240 146635140 265316097 759506637 48325334 918084816 468738110 764846672 766940575 254393169 248610486 441612647 476509765 126604434 429913413 286253921 702181803 216851540 164611133 80341220 243057785 697514814 858399179 366939086 845317204 884439298 739122363 27377816 36319902 944026277 278196417 260010186 417796351 132759311 969766974 646337202 373383894 823074089 984184787 461326234 279524028 257819518 905935404 432679148 575410538 195871638 342481932 426354767 57563864 609604685 615331394 983837627 8314524 602459952 87066296 441627501 81470418 276880475 89717858 838717261 841391859 949590224 823766394 248713134 578395849 789377782 317521248 92287864 286258541 219945347 944719498 116131169 329265031 917896221 839120872 902055928 202757484 737593575 528635079 336103071 614393555 129496623 949049925 464633826 119969344 714031781 678367241 182274375 924845051 989755455 560612815 331773443 612386159 794053958 555998185 467031090 408680255 181902020 184133852 600836433 558338305 188975212 633413624 615770211 47803070 765422315 248551694 312006738 228239864 824650101 766028230 628645189 331201394 900812564 909573031 641116298 393391502 448349695 627964572 551774650 716231830 517721491 8709303 799072898 230561473 880931065 857976309 111620211 890713708 257573045 156623804 84379615 86188250 299609378 369137197 359487251 75884467 800874987 609835960 974140167 403325262 130978046 954851907 928665881 525070244 467090162 372682674 463285771 608728023 245786025 292497574 378553888 243457269 660219314 313169524 645552680 817754507 542469410 655073170 751325537 598541453 464935073 342750659 386234096 352682032 733169087 369540740 237839429 576895886 882239212 996385740 696138495 412632279 245159266 476731626 55197037 113194422 684503930 272252964 109996264 288225868 49832171 839304812 832044775 285457695 512966129 864219945 560890182 327392463 98963156 604703025 600529239 983019913 813140276 171404638 211838601 874169988 663321535 637859691 769295746 21276157 978062228 975718485 802244012 295990631 553753897 300774394 328820825 161293715 424723229 392108127 661110874 879751626 828620492 344523011 714799393 371280613 811982164 832047625 117983370 304615899 695721040 376271764 413321592 365924687 601423182 700688683 387336054 565014542 590383161 238823415 676018181 151316998 59122016 633910063 667758929 965890608 675520665 235931225 933675144 265455593 481090627 812170197 401000905 199373757 91241681 76812393 550012712 829145622 159874003 47499572 25964589 691958059 812737357 805521053 441389248 708651774 4802598 219312674 970185368 513656538 266933817 714091387 616957637 663270444 926076221 580500411 318327386 671467510 236454050 581971156 683947035 417636890 503751626 793501875 309419019 625061077 846758981 784357624 244095135 652471958 343821139 616973744 500323194 475332910 14616996 688576679 231940858 151289865 719958179 195669671 647588457 365582451 636142668 742440380 522321730 969251391 522536537 534564773 815572070 282298935 802180359 336802911 491146098 544027280 405270317 703554325 369359875 7369489 427704825 641227587 220646300 973211641 295149639 515119030 706160902 799552479 528009663 382319133 158889141 828210441 221771314 178856992 883548957 271100809 627950054 753799378 176568639 539756010 198027151 491806718 658597463 628487434 836736642 959089936 164281993 139788133 104900811 931801270 217340842 55207581 629279452 448709528 376699042 413815468 938714728 857764199 82659930 762974856 69073664 860928414 747328696 716637930 705487195 162086680 432582674 9118374 808079136 305472893 185563009 947143193 126337403 763172066 79316153 452573739 680273734 664048625 683154027 711662528 6001730 666147102 474480161 856581413 287018441 383949928 117035975 434584887 998188193 754755129 755304977 703342494 40536281 434180492 669654784 821118756 161913235 824806667 948490490 394426583 905466873 592714262 443193564 139383990 257318651 291991921 405036657 775154295 750800246 679895219 40625137 459529672 214482502 297160243 905374089 344936468 895354418 513350590 333169096 94782366 935830510 250286032 509906928 408521916 188762535 984069238 40830927 187221871 186627446 382324588 473686218 499399062 204387592 454516004 492133137 401484284 214664465 70425189 241510079 599049555 202728688 722183697 648597618 266513859 625030346 932776318 851690502 223276613 852558143 581940275 348982027 403585250 855372125 587495600 56177454 590469982 741467479 643825800 113390500 527122810 668176264 77597688 21314601 99750705 449591956 423098940 775335314 486597999 354038070 533610818 886661530 137473118 688367046 31588988 83721335 37292332 161078932 158140914 334785808 274289943 741319943 440627783 928802780 594631010 64337845 438620146 22138388 490528772 836201635 308048026 735520887 350962950 826325672 28453751 904736813 141751349 559682856 380918212 588999757 272032238 349081385 102261077 546862144 328641668 788219034 59379014 810399043 687358092 87523933 624394195 348668287 50108389 676372732 856190461 272111034 84365353 794094174 895473208 975351773 296182527 231741115 901297777 438771449 851420993 69003901 308322739 869058713 700223516 687239144 909294219 225582766 700237977 983685330 854502210 390387363 216099627 503203073 827313182 544907810 991913456 233672091 556080544 434983788 880188232 415414015 711602880 214025856 567321011 348299702 604224658 377785404 447679167 75316995 379424982 830121442 140716335 675692320 713058631 587747589 589493887 472190184 235592346 118538851 177053937 777917663 635579527 385897946 987331846 665206935 723199062 645168020 302736719 193794138 702121715 224739840 92408386 755422336 53106455 305369921 716960247 151760375 864260576 189570118 548901483 172748406 680065325 380853341 975950296 951017816 820165999 454817912 339866281 13435665 667788845 699583256 386111133 846974072 821480182 766775665 77786519 621288824 755298449 831245076 256900092 324693941 65909984 851344834 316380613 268840617 404027185 259637282 40016574 263662333 375009562 845034374 476552996 903488918 926148375 788648357 971809757 756063737 182097406 135625423 335033457 144329789 272051290 348838113 768237875 509675319 692681020 336715083 911530266 174514919 467244870 293923188 868594232 99914690 844975155 940054292 624700775 405945070 626391644 242219143 26905201 915487579 580348699 256675168 293349251 395631766 875663372 366930767 328075938 739060306 524920185 424836438 330371139 134488392 435844613 446820375 414229958 71918511 580325115 254386322 433847551 84104446 455857144 608592910 374282046 805700806 658066124 478470890 36062197 557534314 357540651 508558463 986898215 245667153 717920964 959695530 529302527 671420420 196723613 300843285 126178830 72282522 224506915 54179064 705522924 187289941 415559856 399371277 892974554 41294079 797753799 870850311 858851762 757238074 762735566 706584848 937872460 469969647 684343596 40471747 141855646 16449156 308030210 691724690 277101632 347141369 392151019 12990495 23209372 138524710 464703956 492048208 102645780 616494086 667666338 475485912 858632541 524712041 29252924 411614397 799073888 464909416 897406077 72719054 732263309 897653810 724448583 144659922 748730580 426624902 435383520 118195929 129608706 284403480 664917151 964818838 702180361 295550437 18007170 188498585 131249053 613680170 953918471 465223232 891474419 798112448 56753974 205134406 353941790 454114643 951749520 190790655 889719465 859334873 505265589 699739788 605389518 241500020 903905134 591449829 677146930 568554845 888771740 607495027 456223761 788701489 762474960 804088370 611296920 685864764 217354236 556959057 270564877 461471643 198923204 201768417 649804704 644401763 440178885 976272009 763857789 123189121 880215564 570248733 768593299 558955899 524205387 590878501 991253942 302619331 770300446 490071357 852245313 875312096 103271658 45724460 771902986 150087734 243202867 703824035 667159835 945610709 206369110 993812562 802757219 412729666 179225118 279548264 937190917 191597139 177415372 322025941 957274765 992809965 394795991 153764257 949589460 941832495 629177612 708866660 556802886 576648624 226214193 682369776 272900226 454938416 386142227 297999327 645579018 736313437 124252577 927162755 416884705 37740332 860392999 193572089 132711692 113370506 303114370 754550451 390127397 619574698 731313181 810859810 607522859 565921775 26461447 329800154 362038363 974916102 895213764 865749154 62292710 536388922 905284228 792705522 334075766 324610605 410277102 367844973 902659586 955313299 787669072 61205444 29327987 778559565 919328141 615157132 411016595 51835722 921912193 671874673 84799564 192746846 624724082 465941927 568536372 524742057 886149930 274390333 143786101 427405936 221602807 409230268 892260979 228167206 541341502 89398451 625966949 365466633 958682985 7197586 518966945 73993030 136031294 380543742 647780033 182230428 860127460 872235808 312488475 613707837 561179169 295559880 9202718 535411773 167047707 530911098 234466454 449566876 965976729 878857628 384023342 967740046 561200250 432297505 475865876 102517123 150351415 174886084 972550504 620964586 386704963 134543171 441366662 419477902 340767488 296967954 647974260 93306861 897865985 111979468 510056185 871584273 780181684 736306783 84645890 615983480 151681638 494071602 69686926 134631748 77486035 811008077 385790022 947781646 879137130 18937734 200679560 661102651 542776687 891202408 512994354 474766323 339472720 27091724 378356647 119685366 461361827 573272912 763271367 498325772 560016116 385831855 46444631 259630886 614982067 263476012 77408704 790862365 362328351 196081947 935791904 178145829 647663785 886873802 314667557 173968337 483882207 963663496 723617052 808473141 65629252 221660 235595084 816021724 323654833 419682612 240063212 926637754 614395514 80867687 416479469 741707667 72439715 808462378 241221338 148202106 240009747 922331082 270143287 29870552 8070717 295894237 499540031 628231669 524932833 941250688 192529533 156177536 521743518 395719104 356716043 419928768 424959410 118561697 24243611 979016936 338050881 507590031 441333199 820954219 104861144 612647455 752918610 139643123 17453227 628667429 199223463 966650709 22601951 711748539 799289722 92722929 930532353 712437509 35186012 244059854 289576457 542542420 324538884 887068278 424175099 16730775 631890599 46072948 92744798 751513843 659642894 660816136 916806404 490511127 631005901 759550936 73183552 477198133 76458435 698679476 295978546 419048599 610091221 930244057 622687021 402140677 752333406 479470539 431943970 439941315 351098821 905411888 454711054 441905443 412231950 836706166 726175191 195810423 820235955 922779542 717933622 973709786 929052954 67157949 427465726 73045365 721061205 334242690 181907460 953504223 275199016 307860532 583142646 373203986 827405907 603596472 733849668 472314355 296459946 965014055 487275907 102819625 526773733 223958845 569983254 876717465 699437330 500372654 377362838 227284383 889732893 703678497 244477422 368412452 410502481 895087742 985907424 755391424 689795862 786978874 422468636 517527234 238029387 972336248 61065050 611281908 879115444 876908081 874262522 950216783 973783888 227505900 308216444 238497006 410583568 125821079 216157900 37393570 173249394 237079958 919711812 799521877 833645044 209647736 337728872 941732961 339461816 760980164 949990524 419368788 806355394 383408386 813048615 379575914 751380364 2232558 770502508 74472886 27546517 797270988 426642437 682843757 12400486 918094842 523538251 443662276 415067059 56395774 684554851 375035591 387811528 240283909 8773634 113389979 950676772 228807314 850255746 742138661 419442206 162744708 149284310 138699559 77248878 989744961 884722705 78735595 913488141 352159636 258948688 459041061 112261015 299025477 752518361 966874955 520585706 252826842 749177867 733741500 63442968 184817129 405974846 779411036 672242012 74576672 491942660 64844097 217711877 976623079 606993873 285075614 924837658 558486514 383575644 534211401 889624439 395077754 877110875 133067595 592957279 388211661 995136968 911623356 194333940 199865185 550434931 803641288 362412959 995572367 59751239 649752231 495164229 914231279 270761148 640846305 436298814 515298927 278257385 334685080 978219698 4122304 57803820 742246624 489914437 800843113 440230229 578127761 872909373 759392156 819900469 192474441 186108578 767211471 560135518 967376491 175979878 239719940 291223405 386623509 717167262 96179672 362980661 704161074 8167937 121238773 238467974 430099858 222522855 743937553 235948259 506179370 429268581 447728845 341742154 162270408 739001176 283173600 917996023 365378442 541460195 540599756 704218472 476133870 185256092 485910175 647929891 633409051 136759249 5950099 659522595 533016214 722278887 645591597 151610467 217358208 573981261 980391060 55086325 64862012 240463773 636033780 448710435 409762971 114451455 589583483 435272838 518741725 777639918 909617460 42460577 146500716 507299659 982527591 427019346 187779092 526913883 653057645 187938659 870205737 665044525 60829918 129432988 25173345 700297778 564924274 73077762 851553098 146122295 135142395 616108479 39801939 720960630 101378246 777102047 636373470 503578451 768773151 79789162 967537915 928367516 993122678 115560139 333108777 379762092 283595091 570091044 557398402 131258767 238621455 231519825 422249459 519983784 805428002 512118498 350239561 896391088 39092730 230062999 384514475 204087790 650469927 27159518 304478768 562830882 109024001 254077980 65223926 42435641 24533102 847561227 189647366 748634647 145261872 595886925 615534091 425712228 202307449 809644134 899370025 885341448 822719181 384807357 577459000 443288436 112043805 347200216 859719556 550842822 619515382 118531122 417833250 164475325 177979193 334263173 335036994 287041107 11548808 744142506 94148998 864804193 578251331 924717710 800288375 663295369 941749828 239576854 587340013 826430763 3794856 535589027 64425099 340017563 707704187 479055136 992386781 7162311 764806104 608704397 977932507 87035176 74752493 935876780 83334893 345640701 988387590 4886399 152519365 753113169 904435233 83415501 990905685 373969563 773733996 434766328 852825426 606312306 155870151 291479887 283493466 304834205 411670589 974257883 708035602 703435249 143362852 469459071 609173694 932003854 764119657 735705032 595110535 584093514 82521820 840331322 190870065 791536637 663800140 718802238 886828280 980794534 770051890 106245242 864480052 298247936 472142506 806190339 352514026 114943818 455876546 423639244 411908697 458722978 974571447 171663037 220533215 703716557 399807050 376288340 899231160 707153593 523732452 972634229 59115350 148574979 872097899 654926808 253286000 84548839 610330156 794011831 593323643 761638006 299676148 48193439 18372891 262448644 998019101 597539160 973645286 62180441 625447283 820010994 196719855 765939742 177116368 564797353 573785791 878297138 673471253 746002939 189210258 299128104 79393584 211395913 981853725 252632591 215305888 163356636 48185660 852730882 225630832 15871622 269966335 236190791 762246496 946153749 223773991 636350514 316644314 901441451 522858194 802030932 748825806 781926234 331386382 614038658 50108344 966730219 202004075 785871805 413703919 452487537 160138336 712747988 472022360 904224482 70068526 96753640 178269004 461124869 213767533 742873897 495416018 42390369 495621026 969482123 897398706 182620460 51646565 88793234 35303270 239486857 583715501 16559361 228720432 895226663 992139659 932741611 367229588 321131658 750927218 488911264 174085169 870359320 588328944 239717705 660644363 100518891 606044407 828507984 498110944 877050837 669541235 816282454 239861602 912437360 465317752 296913058 203574752 582462962 695425781 266455865 62682320 757365148 105209131 307297422 14202318 743910243 722248831 146100754 357727407 244752798 832016663 732641099 23923918 183216855 864330157 849170123 117309290 707874560 283540935 109910115 58471463 604780832 265623697 123461874 621139180 226949653 370606845 707772408 79116395 95859855 632765255 603672077 681686690 289490896 864104963 452556901 570110265 380335022 699434408 199979274 30886548 898771559 174744843 790944712 842142784 315901984 564306965 684130907 947041713 97315639 986320424 907085742 85857820 592398288 468636798 574793789 308649341 249749648 547992357 9485974 681290131 907568856 806146484 943109383 471940972 796794460 184707416 603693329 955619870 589737218 373120751 767714828 8925652 816343562 890649390 931913200 906908681 858006632 707588272 441006765 679908341 410921629 866673723 908036895 59264804 598537515 553931767 492630665 864272494 50519829 86618531 411432605 680104817 152845040 130343519 761721599 53054597 540376749 690168630 473985029 976321464 599620786 254382180 175138635 823569068 381051624 70861760 386880633 960572803 809919283 985048494 680310591 699922830 129716221 788166276 364100309 670793414 156993573 468602383 167291180 89400259 80843557 695701841 161483917 763445363 406219396 189979471 484500479 242400307 4501391 23380215 718278702 219061433 348278011 411702745 683446487 172070389 711724694 698154120 198232214 461209695 240537144 827557241 491700484 633677465 662482264 526537096 844124607 110225635 716458247 79409508 358088012 843145267 195816555 72856318 540661979 254597282 884275053 421105215 749408306 862558859 352459811 358389982 967402784 875332412 138929320 374669877 257267551 569194179 137970244 259017153 506287246 892664348 849526376 777359192 636546121 734098088 688546569 976201534 106415986 882630118 848883977 614507288 12099964 921287761 487953827 27230850 140738113 638062395 264445060 722406793 661393507 949876865 600256665 452368997 781647271 64629503 99026490 834594038 558324450 20238804 25534323 737215952 586012368 368830951 275174353 643460552 100126888 802715258 617432608 788317956 180516182 931378288 208240190 392342620 431628977 719775057 281783725 527683212 826504156 192586862 491565665 43419977 959878870 544256484 180030502 198259489 222111417 513824350 772467307 953835994 521882085 920509186 874959401 894202173 742666536 198774694 291237394 227233742 470176471 20942467 600782915 426490978 532493812 936548108 626907907 696817269 691369838 874480615 2759869 607693897 47948503 211914808 535198080 324583083 567994168 58140857 574847366 689632997 495956511 524189440 806654020 11592654 107747508 618831201 753607109 395846329 787752668 390427336 471431335 948138268 336847396 3805687 851501259 719104682 869080383 398627418 264663303 946161866 207313489 96236529 183709182 208374168 781857637 175735886 984228184 136898188 5291518 575295447 991785314 838176244 668984103 775042414 66038364 487114448 893715860 184399801 801337682 92883564 348659532 964568220 313465284 423995532 433452335 116436476 137959376 370386720 164869837 79080831 554617859 492221705 267079165 455441316 118927040 920710175 799477806 333507056 24617910 554570391 334284283 719977258 148553630 161586826 150116194 8808315 109282853 289408879 903864089 212267910 562914158 681933125 702749926 540452760 298664085 66294793 82100072 974519736 764782932 747546732 205319206 839266250 471698159 903832277 458111563 395260791 271367683 768738438 658569131 608395669 441588032 763865391 423586586 528730761 63853513 122874059 936412355 254301183 788160129 920154103 248260956 904966402 804369688 621450599 581838643 478494478 596138952 656340507 972201356 320301551 155681570 425019978 540752853 992546840 204350101 157732794 438261568 840530002 189278250 368967007 437627376 320217849 291435018 440524024 932016183 352019498 64650748 97264114 24225081 670533423 399514903 857973118 829593360 186630035 277405053 333323831 806770928 444566315 826819020 954449143 855738903 282388485 957804588 41464905 916989710 314439344 30031434 816442456 615817713 381302014 990053006 110305937 413384972 309057840 91984780 65238340 655537297 256051707 970528099 954444180 126963750 309333660 52777872 554407959 405392972 532024596 459985824 831565150 707875027 296065890 86258142 437389066 372699385 867445190 971363429 125451667 81320254 401559483 876164962 953451233 370445486 455200539 521631843 55816586 863285912 487492905 858132062 697534549 878580840 418194775 684119847 558858590 744245520 139825797 961823557 693030951 751676798 762879789 398336915 937598760 93636678 139173158 642954879 70087726 386315064 197950066 955924428 968177365 528133182 365071216 641773473 723561845 784177419 835666220 228037242 822415933 715966374 887394243 873416042 750652484 24337625 986582719 587076126 24007294 683192843 234837572 888363679 536409923 86915185 668612429 161442821 747421456 168279338 864828508 440542436 745725009 165474210 813327221 452633178 183411100 952727340 973227436 931590699 709787778 782395403 619322608 924144055 854778589 987417580 311004466 305918869 781133090 329745732 584404508 485389049 68430356 880674253 23114232 6337511 240108353 643664644 469798359 875967466 382081825 621743693 719442956 687622378 119445762 166745188 356321816 35887107 783036211 629896667 633149388 516722846 879345164 64226355 801770550 899158222 440680120 974690182 676783801 178821684 865326405 826952511 116828713 606919623 270812588 123284523 854264792 569495675 417750789 312251452 130896097 33348589 700360022 156828064 656540577 785251647 658318892 681957378 124971509 463655506 653329528 959065049 728854755 671199312 198724309 161802565 608868429 365777872 379108734 909312134 218796797 880185851 526590073 235087718 642088866 493753431 880058519 259754248 957307800 170171094 887523213 141707610 522189188 359220402 296538549 705418509 981720847 398932550 225429767 237453388 143170898 485403450 35325311 599171605 357295776 987254846 199712956 457011385 674667980 110181177 810914910 336080571 37353491 448573450 572053970 384739059 754426914 644233818 724204528 396546205 97449284 328693917 15743805 169462247 831706119 584471377 949896726 639679739 60087705 994946778 969089158 396053847 456029913 87090943 766867194 825342472 157189973 556598466 420624963 392005821 142979834 219264974 491012127 545827707 934741938 425219619 888622346 823766917 698960169 809009084 3988908 225620384 107555197 811302516 328889686 533265590 377993239 618202606 147274970 428609960 651672300 474573465 121577101 263367046 133461901 46078535 579689981 17013122 441855946 638728749 37586156 849508333 768622159 819305804 766431879 121323764 992926227 217061841 156206480 968888661 394326363 470768235 988031289 537506239 515328372 225800267 246210360 671045781 906431234 690787017 636571517 226676187 540039247 974420971 536123472 379779210 450519988 711327383 932336156 406764729 436173730 833624157 333621570 289872355 731567925 559299172 694928397 591568071 779834401 2459213 404790005 964682240 879423943 126580970 605100623 544506497 802556680 752011689 19142085 950734540 440873698 942356357 428488264 281540355 50849198 146940510 217600050 171519648 609019869 152927204 255391609 652979768 5503977 955265198 304785648 122045586 792999792 361868068 458435609 960468303 340430086 731026810 792721289 857923394 132425555 86362968 836967141 693894311 676679346 205608950 874196384 942452032 66294433 888436190 523850485 358221944 208212387 870783375 867458582 778167877 379643505 932173696 193847906 921847657 416803325 743669847 825337958 819022438 154655332 280306381 348297926 951669940 554138167 71424116 69322279 100581805 224711783 837688889 807482389 638562648 672776846 675605316 268467131 321338055 953257911 22475227 156304958 952549014 350501453 719718133 256193925 422326622 680496803 350892393 250730769 713463748 758842419 236471133 362509304 791780308 394115423 112802995 858779877 799155622 271569501 274480760 973151637 541344942 525925741 724919647 876924131 263192465 123804944 69146942 930379830 162577675 526822570 918514326 168736986 684353272 789296383 336243707 664782826 709244343 691890540 252832006 393522979 607996207 677306190 680956911 204811121 936958137 382093277 360488851 691997047 342361817 60934806 607052435 264212825 688634224 484785180 821633443 842061561 199195119 563318256 331513388 588334191 316883978 714662638 506035692 8461156 614161732 491877606 734308469 918390339 780307041 856224713 718595539 231102989 54438399 99264666 429127236 36315127 2196200 659967488 404145891 602757376 484722484 835609993 860027385 783444316 765793557 635313145 359358235 423238056 451916544 86021217 510834021 331199490 768419040 603922626 256821860 889779103 709593395 860795157 632981129 383855979 582768658 763012560 229546442 843216383 369879935 599513068 304557115 555467043 6912726 571717630 954354313 472825070 394123690 712386471 302924103 110933092 873285194 144956414 112683438 786910839 770025722 911551074 333274882 477951741 356166127 236007119 718832870 981042843 372395531 404083961 773229297 312617385 187357717 893940299 824867439 149355584 113029453 458665293 364619339 690560303 588831231 12404351 144845506 938223586 473425596 346104064 672202357 257622510 875540487 475230418 6807163 543517387 339336062 537742366 114831406 615114832 497515757 418729654 914459410 273141827 523016674 627319191 709849093 319049958 606114569 446610167 869436613 302180057 579477093 705945763 333640073 489539437 441612963 920186041 178267236 196357395 244706058 289547103 500038383 919408812 126487666 653228692 692855853 900948320 650183744 213616486 890403681 173321284 933279464 729166088 908446728 785815091 329882299 10838868 641986512 843008063 202573127 963266070 525612280 960040738 543746198 689766336 155145765 989698875 679104207 417131443 75826312 870645736 352924963 932120869 947117215 218446246 371606892 386595906 882856144 391350934 461085678 772436155 536178609 499994626 103679453 373914755 909307114 909928565 455477767 142745813 332412351 955402167 7676337 318021723 550360198 354148272 620538509 901577920 237855200 33448698 977357600 347190777 40252326 84864763 970175901 399255616 462985048 289726756 154037 602317568 189934793 792417403 329262375 276891045 185760746 599766761 918619530 374919795 367321265 442892822 234554787 649998768 650262068 259944795 924545576 797087931 450552093 595499401 243328125 35136825 571957854 22299025 295227796 611653186 382719525 385676044 904559128 391362480 47135125 929078267 623377728 531505481 96729866 681093675 616220768 742510654 986879378 451572703 897904729 980020936 383602569 643788078 114231603 85624996 848047050 798058613 452935964 616024360 676270319 359284603 141193777 297885375 663599493 594125028 455343618 305086642 605957315 286051755 540639832 220761654 589207663 535184085 416036722 984056813 287976224 409849041 131332186 764170418 322857516 942978999 146657067 174443666 411343895 394648874 436162488 419303465 609224843 374099286 966922922 969657300 553839605 955146605 412682714 390512904 970547880 686387940 202746506 751645064 98552364 131297528 610971023 663672043 548545981 360426476 619425802 181025276 641910874 200438700 19377917 111532396 730371763 664964292 791789038 263113575 892653662 105265882 819461339 779115301 653190720 321312231 665436621 824290923 158431237 25153650 702708610 422264417 974404248 104811403 198018512 701100436 24960687 239114723 329311375 844852904 678593890 555753049 247204098 243691703 926300140 856450119 229474966 564456623 674681762 61364468 703204967 179449751 741721997 298014639 752912079 90458901 560181872 840933493 502404853 592971087 738649820 626114624 200318023 824370469 347630697 445972175 174191960 112656253 342920204 762029886 834246468 449985344 399394976 90542202 433654669 743576757 982837600 104700027 720938317 862030321 477145503 924678409 928618825 103287025 453871572 857331659 179866307 80196304 371732332 578859397 296444177 215251900 693710654 875919730 130173016 667024035 431497890 171202039 919674369 390665149 576618155 877223894 245536245 178531221 816396682 265441019 983689360 218746499 276092712 526561109 552785115 635390808 807517860 452186519 905009248 80476398 540495861 363873720 714462658 89227686 674255185 537586700 712351798 128220977 455872464 287629719 817257992 721995331 479334249 377619429 303575542 158411014 107628306 491563977 441569220 276885987 309363314 727166918 307397851 11122950 571067366 492917520 404599762 22066595 108079932 163189393 869302053 770563121 688942029 423824872 413863242 529916996 948200449 824135074 563444157 345946801 939467419 48434274 377797418 2579376 296153024 878262046 822134722 214740990 167180419 210476883 103521229 815466771 982433685 251138382 520366601 313698629 143329501 669434283 682661918 262587972 428923416 567207 351459699 478101172 804224120 820654710 434188711 693130942 430864265 955042425 419204241 374498603 549251847 762166505 393080002 713133617 173602953 56768316 203861159 348853458 7732979 119511481 358267562 646930693 927890650 721728829 405224335 436224263 749298830 221778392 890277822 464327158 278623815 397766221 950944404 322664264 528424810 347976773 488283583 228674506 786311858 704975040 382780703 314584217 402845686 464389937 151556784 256658947 697419220 801391648 47385070 403249392 19425633 766451499 963390149 898970289 350431019 406977694 318088767 250919639 283868882 658149783 751344370 48712643 374539723 88583964 838376021 182179580 237483823 994984555 104342561 543553763 173278481 90730058 208364218 704401338 648783630 108291157 617547259 137796874 647262068 212857375 956179106 761942890 530178181 123489438 290765882 665183764 710598715 479366976 220699361 815228169 28299119 483043081 396676563 717849953 692814252 543950173 555860439 972319590 549400165 220833472 739295416 216511790 50021267 301358843 22737607 406206587 562577021 472133903 639484469 41945398 762622413 172082547 163074808 706210878 431505901 34409557 860402261 227449822 733213399 525636736 385061601 478855647 781759546 928366568 135777592 468871876 747848522 614432428 283404583 888844716 779319977 478332938 203392419 222545027 638652393 946534823 293928588 307937776 686416950 457769445 838874138 951916698 286803980 511695321 737362266 62339225 524120599 806281058 67844099 710257936 60246958 587820700 857486393 146072006 502371795 282361310 555057986 736208909 589745243 689805035 144486855 910563044 734310122 770693602 380861343 871727956 604999377 511788635 967523951 280394235 959244927 741766068 490714915 321827419 509318154 23979615 596226287 746209219 653508369 443487040 279457143 279538658 740741302 320793362 979251663 709094493 797307465 991969804 669336782 926834768 890638315 888064214 942227862 180999925 353945972 227176406 210947371 246547599 185669681 60121887 617752389 753246494 862335920 292832735 3357017 411930499 752997413 607246030 857507278 453962886 34480947 297856303 535400079 281438801 744728526 366518856 844313898 372040076 453273645 450748058 281396007 701755838 868191881 847518996 832388356 35775289 473331478 326530718 549926575 428055803 81026133 376413542 268862906 110609412 975949465 190650104 690537264 824571060 11014564 460900644 753070017 336406928 545709998 843723791 342007648 419716868 493114539 577420057 426523115 532776512 542188304 964242759 890284547 25037166 943659696 640031669 336880781 446435097 222107085 498295619 33630692 802108397 168202144 71515477 315023398 258495030 971472688 656447318 495385344 934888554 457542356 931711679 376414380 606281242 528306826 282545489 110722686 923773148 513052159 803945522 627786888 607589158 708323256 171287698 352270079 782683869 746724019 469986655 345847172 620721308 353957037 953026185 827219573 610184707 405291980 659602278 431988407 532153467 15947527 580505798 224120456 528285486 662672382 142463806 126143344 525687697 377989293 802222275 812265168 568572859 326908049 815393680 672205908 239771930 280369451 840351933 658064067 569719718 933839737 348654551 543139086 748249443 484309749 270245863 741779036 383915507 647014329 220698962 447756025 539957952 769816499 880579106 963368645 65810294 624991293 574444896 211961289 273595804 821072682 759925428 104046791 576871137 772685915 452638626 424617038 973417559 198374977 573575825 673463680 446379339 827574388 629613490 578602265 717972900 522093207 410085310 536504974 430158592 182279405 340464639 753231926 532758344 599698071 873452845 592945099 471965775 929203451 717413294 144998270 468243743 705837398 32056972 226811765 494245139 691907797 515627847 69459893 1247853 540341200 471493022 389055013 650631195 167446052 288827571 462711449 85587918 491322123 671653290 192846427 759578523 31573126 736425907 694524627 843840746 160536282 115068175 852737989 187051264 357512438 276942354 721296129 114522811 689280229 629146831 914292195 334674130 52772548 403040376 847887417 714985744 844154130 688116876 119607123 543608065 956470593 55970811 824254971 128904637 281245176 880567092 570648547 873724890 317956969 561982083 861589457 419800250 195861386 962843598 52788349 625724998 888330620 416508418 464173399 415567718 441828818 414157005 195631731 588126871 918781055 362493175 198938106 254618121 707299139 166935886 392139848 962572854 667179334 968773111 194744601 707474090 148560294 874812423 526706218 494133574 195215102 556585760 831501241 791761293 11460375 490686106 324167242 889055674 941318901 861648955 399213337 449856232 966197737 953332646 653988784 974113409 452854075 698060714 752223536 918285823 554323109 894829194 741133189 988244779 939900571 99893294 987065130 92543860 108781845 969891804 864759544 994561032 213744492 9357466 893230299 680883406 661858365 4573840 46830780 144718616 62279723 83113658 432456958 647559187 654637430 733459607 50137097 482809011 406474809 360623376 359341238 837489326 404609303 651410946 251205038 626116697 794969427 356254279 518223552 766309885 632766565 409263231 300987705 579894144 440719880 734026450 633800082 367376845 952932334 395466505 359592800 322210905 246622969 506178575 411829986 843662225 896960262 542040279 715533888 397418960 272825324 601632933 29554064 683164311 895494176 413772726 245451666 890804078 58261990 564520387 199527060 804071411 588670233 347447176 342198165 356407164 29755830 785932180 656588649 786458131 505594895 890031489 596769969 174116445 774029782 89241178 488435098 91194186 563451087 27843458 884584504 600984830 417749581 356443549 13636726 301029307 897205918 260809084 284203955 779951709 465195889 529616060 613757197 509835870 978690580 66930370 846503117 325769887 346324306 770241801 144108876 716241511 938484695 758392433 926812476 753146676 939708361 27853649 690391807 602490835 821013458 102962917 472054271 867379377 18950850 546574468 116933454 344506080 500076555 939082025 540330240 850418380 195630631 609149150 688408851 923968762 938866096 739796821 867925130 657827215 757193244 688485293 177975344 30026948 689933986 240854023 888363994 454245832 856627782 643392791 942665932 257610226 907410024 613495212 514994609 231750435 789056683 239511292 212703866 212110800 331289552 567673378 204874208 706484741 282159486 662157531 160686374 520624245 778584456 261673224 368960229 958992112 769017920 454124253 752671248 825479479 929276596 839093976 913227766 65564596 452464754 966551259 540953581 592248182 696837045 270236716 901142280 914802078 877398619 626284376 568369193 301788936 718856850 967975903 170157149 285498884 497003416 723194078 461441193 303196765 467622272 806608598 108699717 539038201 473132219 977979058 591074957 776723766 641227136 571021138 332444228 706463464 21212086 395795219 697164724 168402139 479691552 394221003 642791499 771102237 987715113 846382103 26782858 398902160 845555357 493821765 224106759 257999703 726631615 321263898 458404116 783507950 287727585 778705951 961646744 845418666 341627294 689666296 953749089 335893078 706871635 345707972 805216390 97354429 223168779 147038098 112510292 571281316 324656820 545592411 143119787 127023208 240512650 623495744 755454988 312732513 505276601 623437354 822023013 489685954 593356528 13536110 553851837 987489449 37649411 310400682 62457597 125996617 101356273 961949293 678436722 894642954 267274317 950076661 975310896 898826757 520439368 657644182 623253477 35535240 271859260 281459194 842018688 321179205 241420521 444017749 466257136 941069688 278288270 194599856 238370887 100248733 739410058 690967421 106973792 242167863 57819181 21901072 642423130 303257007 464544320 400475984 656619698 753731031 564879940 166577750 388194552 193212187 470190556 606665727 280985451 74412056 997771355 12999487 749633838 774758063 608941118 181757546 405286320 701063861 543241109 412870396 747504236 814605653 217499919 689768580 110051144 536774134 939659297 714230045 37758136 782540008 280510672 677902628 213442936 991682738 647302133 331569679 761094282 75771538 138266282 168943655 252987013 619827982 852768936 568925721 183273686 116419587 510426435 882081725 488940763 601357146 280123452 415105028 869485196 80453752 524745957 156870872 151781438 319750253 839171260 288263040 304427526 410233510 164900084 750664969 645976424 374373085 111810959 886988704 673904222 907850857 573713478 797936911 152497614 913687927 284680019 170289083 554060522 718886126 962244079 767757300 73639118 994032876 778969115 184897658 917108472 555852832 767157679 48243491 119519585 373289355 284070498 644253550 747422896 980992844 697646165 4620656 592059410 205017188 850842895 49904488 865864774 88072605 338198919 540396019 627569577 918917576 819820743 822499743 187823555 801082904 172376211 193082519 253721886 68945217 106691166 993714242 348790780 780092433 746919528 264265915 20203672 564845934 57856830 558886397 584186950 222300246 714692702 298903484 411377669 52996951 742648705 387361511 34103631 15128393 875928928 620321014 420005632 13657561 21473718 31104404 647169085 78075968 647154930 205186582 332334652 931257529 537128203 664591037 940316080 48638667 255364350 703999148 652264622 511990223 31165980 16236255 775684967 684211652 321511122 921961685 271951370 131918313 987253660 202774247 188540059 745834875 120656486 113835818 978023618 626847158 378061595 801120411 43673351 933243847 638471989 307756730 352837920 625576306 23963572 140659870 332285451 70888072 235128868 733127146 649592701 459312915 3317762 980691639 820902899 370228196 908551043 431938711 758004033 13233324 779612860 708616611 684235183 894648684 643736108 899467967 602430747 181220417 971991087 733999382 313162454 524328623 630071022 610950935 564023296 219272478 7174151 45621715 831343205 689383765 698956369 979222757 119454832 28629740 688047410 888594046 608130809 499128632 793830307 246648723 741929912 509204082 190715562 355585433 645535319 514189408 835107370 188021102 27390118 329438301 63086120 418406161 247658893 762531688 667863004 975514454 442631069 379132742 331455578 798611086 828819984 769061447 433972697 219938281 239951982 46282483 447572355 912080704 720498224 477626723 891130831 158228819 731259028 843457225 88871605 437634489 393320607 829299683 272869536 940478615 293753313 411294507 877979483 85301416 21327748 343417527 494879213 193074138 361731427 325293985 903825164 276899475 200005463 224544551 34221682 991865569 209724897 620647695 365014778 232429933 371369757 891608643 859666037 915723045 389925655 972868295 584126513 857090022 485784277 317543778 359629607 350056200 26606807 27964208 57539873 554269587 121389143 315859610 120814625 843132690 501347411 783663834 191399665 444241015 459299595 924366565 760639015 126642422 897096694 108293263 281471230 841983607 519071304 398770793 964181388 239772800 370998196 900399401 125574927 288874297 459057887 208939285 223731133 480313069 561362312 268234190 892424276 457677078 40662358 379812257 830019670 419964575 714811470 110526078 566591840 268271722 806215657 496547367 110625030 115864882 326026298 755894423 534508782 928693935 292081492 318714547 698823619 586538423 980030351 43960709 371026250 470849290 312372753 905065608 672167755 664387382 99281025 878636741 92854262 74682366 766054531 224519902 29206069 18520706 66264419 831564568 313181177 705770605 520091448 44680568 679995003 290365780 685389754 360896385 639969716 519026550 123025793 426157130 250059745 575983977 735334006 117387651 52536541 643437284 181427218 29015038 782688834 307625252 842986423 484779618 372832813 337951217 392815020 777349688 467109249 733846032 93454148 306001637 514133649 622855598 224572187 927869492 109806394 564273803 325864368 663321706 79511292 566312682 776927836 815597572 772318897 626415693 546033853 707317156 768167719 735000136 614182950 93873278 766750463 123693929 51624751 103010243 831503350 5235236 916638567 619706783 489822681 498787897 437814837 721918744 745075633 665931980 11060065 513513450 688302886 255179792 489013802 341764580 136916857 763695924 297231792 995832195 622729107 904338908 403971931 465446746 113936782 996150165 34357386 893453763 152869420 540448585 237136483 628253805 31141177 698833904 102941070 474263117 308684667 399734804 203232291 802897783 989983550 479555882 13260585 364206522 153374385 325895777 524268945 89169108 440329870 397696062 66649239 823456495 956672658 855491320 652883777 766248473 354225162 576477811 527261200 345999243 653877637 629066438 479157454 311493792 947765983 834547506 138574327 234357134 313457792 402102381 732007530 966670642 947087678 654037736 439683505 677074332 139893735 901948612 442578231 759957300 292707045 669256580 697158716 815581764 444275468 121640172 551837903 385933541 454474753 451140949 530894634 202256979 562618730 15899912 7688557 640401514 472740130 4376601 736295062 146435349 636590749 457587293 709671860 831295228 518135782 612699480 135860319 106050308 56321681 118637262 485077941 895635566 251801119 177087412 740428507 333124278 100256120 305080363 697396851 646562307 278314696 43698174 285551883 436064512 361807951 152926479 601585797 519994684 319719753 596573855 351956844 208626647 816150646 397003446 110910060 846611257 721722174 356138320 540175560 479509362 509688278 465302802 407848822 960318372 843552863 627891328 992561692 685583963 4553682 834672996 649138993 472770677 710879680 406934555 360218491 367809889 835626701 269868009 231983650 216404595 696521038 643279880 494073169 714584877 59954397 584916764 496269755 179840056 113640527 187991339 776274087 570839159 634817666 508466218 313725890 194946897 680949791 719116834 275027254 956984674 35298157 384025463 537547903 653773878 875152243 124513341 422810766 18081779 397097388 242111787 454179360 995119762 308367943 681701730 36689167 698890669 204708498 433887556 405878056 938549634 842768480 512212009 52163689 385405289 788540637 380067032 122026607 897863687 529050719 451825870 752867201 43333847 900074439 93019236 64613891 489205819 49457990 819685174 603501742 763019443 549247800 600259769 78379885 8603553 984655826 103121377 819545979 42664598 845637797 689797703 263140284 833605387 845214355 961603165 476740704 885643067 935172769 840170682 734013160 659966017 180270534 879414435 413953080 74227287 742328480 2524298 859010736 314455868 104554115 757203879 350154282 798025904 780332915 428954116 59039978 838494618 982879146 643767471 22927734 284438202 703400091 621745613 156447371 869131582 309432363 223909308 829000176 11638231 888963691 685256988 41802019 452354848 418943267 135363859 368434912 262184735 374899161 639260157 941881492 704996757 273368840 833240372 430236935 42833208 742717287 47851134 154821988 681801996 860695997 847670247 564280307 506501260 370482348 480985055 243583011 937750036 832134099 806887238 625268847 339408473 637603013 160356660 163956568 888999217 771163161 640481939 253192316 950034446 869284005 878382075 825141371 285567614 253290959 297593815 660055887 873798240 73950230 859927770 175824214 440397693 700319717 202363641 609306750 895341319 540007993 910122355 968858570 879173564 356859310 930024477 633496714 224657195 931433278 607737453 972135319 729376259 974307804 187724156 298639598 316787953 369877240 908266074 866990701 457646571 347147878 740240680 71338035 379347951 973896647 847393759 332203544 304261671 264600072 637146056 638995070 845980209 76975233 25369891 4871412 543310680 828129898 207345143 584140880 14910634 434756205 13732491 188660871 660840516 280963450 852646179 221077064 194173617 707404699 980674560 126150387 861516104 80262573 417947273 175582544 566851120 431388337 472412064 930355202 177722183 899065773 172457024 198798616 769648329 980029875 509422884 264084317 978912740 305436437 118339629 603657500 94606078 846324650 822742483 182222254 968214356 381967877 268158162 960048995 490562960 849225598 739047497 100735382 955101049 761789449 795101067 421572700 5077857 627072597 682206594 887877760 377358683 326644007 307959582 886952738 777420991 257094860 195172639 538033348 629157882 261784270 824918403 239592387 960045547 716613995 352385220 913440701 539933230 61122798 949781962 91391006 455999155 194042921 585199132 438706492 53907921 616630377 980845192 12730518 222797999 819181729 567052070 457827978 633439553 606933035 58912315 903430682 146304203 899863041 225237936 518079668 271212171 239165150 338979723 219381742 954422199 690321748 724624282 916131579 145208870 826501600 376803394 825388772 458233306 579222515 441981501 903202536 421516259 369993214 351195499 71263889 106133127 333407364 329369537 403153076 862053384 5347536 993412849 266840563 539856146 185061434 948054430 558482445 454700313 236228168 123629599 692337965 37236632 89645051 627287746 25158560 928883997 760743932 879771120 567719040 981264623 830446156 256174994 589984656 898347895 711842035 467612307 489835462 645125134 522137309 910338684 8037817 884589646 440787863 727903766 154343900 833839776 856227525 573095174 924945646 935841668 214396887 85386794 807070858 39052996 167556425 860276253 735500810 652270178 822906624 80034464 165539733 168730355 509232012 73085401 171860429 401953762 985189183 300674041 362075049 559186106 765514419 900818323 451493140 278066955 920686752 117143310 261682910 600305357 30785554 308103051 661175972 361859859 113324115 633015900 543901751 127634667 792037294 266081037 898402938 232239483 429212538 620388150 75919902 212971980 46060786 903796141 556395319 41242487 301020770 709243607 269149882 861538433 114995551 226961962 611447153 941493449 598732923 980419187 939397086 909925826 47539578 12643493 706789224 89809984 818362522 576098756 699117419 740967426 28587723 319604766 879587877 782239816 534941838 519090997 259193991 617835032 555592932 694968187 957585113 293414458 510093496 217325435 349160292 567824259 526021033 696372976 37804800 889965313 907977867 763587011 242046635 167533576 246204764 730016349 92903407 355010745 385451979 16170390 902160939 709652621 516888992 206617449 522684012 478357534 996250028 344351027 409168674 482643949 232282537 715428165 416123473 831237708 719924795 717972027 129568057 232935358 961571942 879529495 744489392 880408515 34006193 559965667 424648162 169522165 945113519 236721523 551651448 542700206 862036446 801775282 25107458 532141599 603677953 62233679 835543587 34647989 986334768 750130902 480253796 974679684 440894914 108144230 310159017 399234805 101391557 861167552 674971636 81276887 383390772 370695621 159546901 153114205 993735736 466035700 707367601 867497282 205636810 330965152 249837815 821969461 932472343 428895227 436325046 794902555 925257690 192542695 939046145 278565105 648367577 635476539 322685367 80155122 771446732 478626978 701927951 464293747 135564993 400028745 837532566 338928803 575017805 300629110 736575672 604787999 93866261 580498714 76121815 289779584 548888148 717966637 533246482 767503156 624764921 374936723 694015226 946087628 48086741 393962844 712125626 192115258 601385188 838150370 513893474 286757963 467366641 810817553 239304625 687572338 578888213 471661666 75270773 982849899 106660760 484885345 744576918 510889895 884744200 677155216 476310371 440131288 39763344 578406119 200907212 158978264 765174519 817582428 50748988 38588495 49101334 118325188 485956947 32271417 575595557 219060819 495924145 44352841 297889145 215419204 609782353 432573841 888097430 945383083 941884747 544931249 182313035 746564817 44340358 317457267 354809705 628046617 299983963 697628760 775829986 213425209 242112372 116581820 893560000 747089191 656137555 889906223 425849720 401010905 963916973 685293505 648890985 450836200 30529093 864814610 86679636 979803791 581589044 450951599 606028138 284658473 474210774 241189618 802117178 812561879 571396521 514649707 505479987 961615193 623798435 648953142 208326913 242045554 481862272 17437943 85334772 533487787 139697414 94577643 756820904 599956268 432703714 961051189 816162802 249914130 523239112 483726681 193475887 485567003 578795521 557514571 177397395 822109202 43617569 17215934 66484377 478235664 821822204 302562671 784487998 559316128 593957991 982773801 832022510 962525226 709432364 815332521 399995852 203515475 702851825 932469135 116866259 337990201 885652322 974395903 513546540 795529329 973782001 123233515 365522546 143835010 472251802 642395738 505950368 657822934 909566176 628794569 601771317 329262795 252733819 582556836 562093028 244789964 482184147 113314648 918961977 904836294 33047040 40412902 771740712 414321001 919757764 774229379 183631113 517442225 873214332 599809864 385941373 25312452 295448689 803396510 384866636 662148806 517176104 352201158 747385095 407550535 189904684 753067582 847369444 177010816 27628702 128595540 173894846 992898288 970830309 993074650 403332633 913695221 116516683 510497097 105013982 908681626 466484307 162684857 261439193 246986072 516741872 42596750 721236741 991697820 238760363 283606379 852370024 15937745 758933309 349919794 124914364 975218739 234798878 271807546 134261478 401071993 980032204 520216886 523102720 913968063 333146126 886251133 445447244 159536053 945550864 930021561 485820060 390645181 492741637 39577412 561950445 669516093 131844728 865875457 695361150 425875083 978817407 892785892 809454623 940767964 593494183 996496363 546457062 723298838 371455969 751568035 151903922 945723623 173312914 469698140 752396632 967320512 329147391 173998939 428143990 994203957 622730369 305308232 444890244 232625008 372005789 732933166 704317792 22367194 640232757 994741867 11612092 48605506 254590398 170644880 327640133 107665951 555943527 459841024 166096484 418392313 97970626 754753037 584130323 286475132 318732181 459000322 644656160 696609433 557526707 827579887 299055445 63143126 455110361 954562204 296201003 22039389 914282280 867268291 582178246 39519470 788913993 993673441 909184567 605196128 987332469 389034071 165587837 182137288 796961136 145391667 325626420 54997927 596249492 754263841 663551610 899725643 517222252 31542101 509517262 674856634 583711934 68173375 797655283 485932205 302771216 953091314 421712192 804940506 927781073 852199755 125854853 29189376 761878396 713575753 539480884 94615522 237084588 345082106 592218344 743877450 466714618 224997932 655716964 285199161 467411122 810353406 355117769 115277652 135280079 101814841 886141306 972697936 630770549 52249787 643624517 847692818 304470969 307509980 293954218 176088135 110509429 362055916 730465135 399389896 427634924 405836891 440413425 219364848 449202327 606824930 588209582 752000602 430792343 351009190 634549145 971318253 528547430 644615231 295075799 638204967 794128688 139178760 39824533 259230318 860567661 725549121 880355387 5654691 341726506 448424667 851152318 268525273 388478969 802852806 52087757 114492376 34284506 581092925 712483731 495880704 957060397 581779752 332041018 55660287 36032963 724953810 502314084 40264129 318882831 117819515 796408434 249857586 666738085 693308216 958315727 284409743 104304006 19442511 814464345 750857307 13404576 107274972 369606916 576650480 473218001 873842701 816096333 219963076 483109037 166142998 27428868 738094125 100982140 987800270 502588047 114102804 459375880 897915479 63450642 846296315 717464505 168214070 943614204 858888553 100425006 959663046 605704882 975613518 55130357 333410721 93361110 746787371 151792989 222586522 15154360 508177118 47043855 108357045 392006002 167280705 374210613 95889370 373370996 364964860 589903249 706499491 362991863 285760014 42601063 289808951 113518591 821502966 355318217 163225050 330306664 703068378 68803200 867415094 976296513 395433018 625833759 683892952 469749709 100070181 906400435 872358908 745150558 341051507 237962629 887615076 975235555 417443660 738640486 73423738 973324328 734366751 344437150 376332870 11230004 245565584 634950671 739705908 212441361 257520123 108231901 312405747 961419172 220816029 391384919 309058004 691599767 522962943 155408471 307780525 483133884 326608564 803282415 803331454 889857435 37574817 594728966 530757018 144118049 149204696 392434510 397761084 866577430 792665046 508177471 243628637 383189460 129662946 335976367 312561657 410838394 62671587 174591474 38850113 635044850 873833401 327167800 692030844 872323518 57249223 779980732 224430024 98329507 727298846 193920152 142916512 730819561 191525027 371315076 769814119 954540886 824979063 341529129 679046299 714731561 685096735 130359244 271677584 101089795 600254675 696418253 320741394 638741325 354274665 38660615 756279875 174369020 79078079 539132461 720332977 440522154 724419083 510475183 807407969 389841127 157237293 966208550 809725107 478633263 35679480 48658277 60874792 850594587 677463986 116223721 323170579 813860757 661855696 204344351 156351121 896742723 646861534 250089808 616611992 393291757 550568110 220687966 701186640 885111164 280324523 550263797 77706166 831203142 281085505 684156533 858100418 768618038 578712460 277779832 149783401 905645932 580197283 848131601 10103401 223800846 424149323 398980661 624216095 269616833 494775118 365835904 143623780 142552734 880123688 516658392 619561744 949847441 459553559 43909572 939007912 15607692 378253255 857130736 481686272 595607724 768704750 813281417 782189738 964596212 236518762 339451580 121263254 16302436 511546829 127933159 694103441 693559974 965880886 428876207 830261340 243756296 627942273 497305128 36977648 428045913 946312951 739034144 748220327 140336476 980738540 156792638 448581406 20417764 454758507 366410190 664384973 912017431 524736859 162399418 149947538 728948878 307455624 435689863 723359415 128137940 382395508 181669927 941761517 565356484 665830661 244340156 854092930 322327762 321325478 138342795 13656102 281497341 525961443 849721588 410403544 513070338 99619409 680543649 729082267 555438097 944493745 544426218 440000292 106890901 609465734 190154737 952414675 416934393 723548503 843172752 132947174 845199803 714278690 657118721 503163781 816445835 256579420 62167706 849978113 617886321 939453872 170649798 841202516 932796156 616004035 191897171 368786434 521344823 746199851 68719303 420595715 421676784 464079743 945823867 953562219 612991189 986846763 62581686 595413695 718074886 534490527 482726196 834600728 253665934 935894313 869019121 716475950 847265962 629484404 495883992 932709109 979232149 272357885 194380777 365585963 76974535 896512320 159120824 401362430 113386876 984274880 131743406 320097786 587987645 365064119 963827816 624444061 673709089 867212387 184887521 517082386 66708280 193387423 511391215 714209268 690106814 652167118 54800953 246871031 181864231 831504745 509062716 473593372 505997616 762955220 38630864 113426619 375578663 949840638 403474733 403308843 932178693 159271069 693009750 263270873 962602964 574229989 584279381 955762237 87924826 816380820 194825034 444644893 375476859 695243689 976113421 696799220 223111459 320186152 533958941 808823204 482502970 954892110 646685754 163568792 243876587 87961201 119834481 989335726 126204370 81146040 8435312 232930005 37182002 885261207 942226716 918945479 542288502 548720012 297657807 401518993 715482552 392564808 484076162 668779104 599343541 736504858 465766084 93613481 935035184 862003595 262311469 663386223 25687926 526147960 732113792 799117936 742130110 193296254 691220599 940869346 621941778 125012503 79507322 162931244 955072141 343599908 52268294 963292816 270345561 247386802 605769758 990762511 654338759 9799075 473616720 192717659 827752506 727601629 649582045 184168764 72682333 670377378 481230175 272198799 443496505 303001846 653555632 849827110 39602408 554884333 658238180 125312060 906729899 769025348 30776054 188208901 368504916 473589594 437851714 796101651 560859493 73110231 280343504 902361406 776415083 558803328 284764900 486840551 207722310 822772600 448392798 728541498 953955342 823351080 81273549 655537918 975374871 549155979 192851000 944183433 635868348 384030971 502461540 247003890 846162766 585663312 811990806 16883318 226760545 170714164 807165875 209019571 841040046 189636913 821285897 200734914 987241877 698522225 779535510 484499982 452020228 366474758 982979298 65807627 462410812 830485090 450101069 610140591 22525073 613900491 80421342 480416775 718645457 404362542 522231821 781692202 623594702 573369272 81524318 583562971 310871915 747724293 888629500 507867014 430591024 294172856 906525877 824659544 290900872 761540355 957617291 263605241 667688187 577645231 10455605 474927707 882798572 934173580 250768800 398711957 898242080 503939663 555019061 372349788 571160677 718449715 924015795 882099012 55463991 622935138 300782716 903406827 799300088 474272368 930329227 353039577 732069828 231227065 449195043 71275411 641155532 187984766 41153556 83598643 631458597 36862778 993371482 234216994 403748128 585836811 63357354 176756571 605136023 827634935 796106819 118239428 499991479 116815595 393393438 45876945 429155802 245149773 965114404 587283411 501600912 106897768 462776597 390212384 508584657 367413810 827605519 48383707 832463604 265393279 686679933 799149301 688480968 765062486 774623249 318617259 213958961 521935126 476642339 147795532 957925835 871041 952908618 715455066 471036938 261167731 161012947 574801905 324251191 961003828 234528419 526654825 645675375 272936626 44860017 482935905 968277880 161771418 103585644 600636063 22442040 601051967 895523463 510250566 776841688 868165145 972879943 444241918 131341666 375582642 310492396 707480262 401148283 248163406 717098226 38584401 5927233 539089848 203296892 957038797 467459304 336039842 803033610 191230143 611758797 499244199 171682711 400348987 384974829 502398654 561344780 777656179 281434826 900768611 722747170 172147993 117236160 258741120 244595580 916707407 145897767 35031854 38245185 129228432 659129740 235761024 589825030 557476072 979664308 337789284 43463831 494958009 714216577 663245057 882870486 333486699 445055323 221236760 122748100 369099634 679663176 829626028 588594945 171383634 173112903 392408763 222167562 100621162 153192690 751556489 77512620 352341036 559520334 707043381 645021879 684437690 541502451 946989913 515136372 817107081 642072214 519413506 342819551 837980590 177434408 903193 98746443 319134625 44479886 127151939 615726207 382044347 378587697 506186648 370523708 807059933 310853500 89266562 504786201 281242469 575304563 137421541 185327220 270501208 695030644 346199843 650633855 651788873 583305819 555937034 316078695 580256223 405886390 690066843 36276758 485383364 989768373 845121038 930635271 338220864 28210022 246227227 597430979 621735182 110257779 125848149 72902163 11910664 636440615 523800675 900134235 434910209 558789165 844292629 485061298 573217278 839731808 950646815 629309266 394912438 72453304 477603915 313045181 836946608 11047231 134149739 202277761 325506127 469270969 736300814 899935571 925506433 490050867 985204939 507781407 387632202 675273007 855596578 100209394 136402038 17583168 364233092 989752862 813751714 646669345 694627333 298453522 295838462 498024743 375815517 386928740 699170571 569126506 132334834 877822709 114122226 896884414 208806549 918599702 361992722 82949367 143042713 673273953 868811429 466848398 79673644 91321498 808522332 379266777 701211772 943625781 291076400 176084357 768191161 317028201 645452920 943951190 826843028 981069746 815449069 240531819 59972842 873240420 733159863 827493020 473504157 347117159 50536970 373730942 94113476 306622624 436267956 120219236 245201885 523472922 208372390 658052130 436757266 335962859 645408872 672142383 497488302 591282757 566945981 901901227 689030185 779915261 275878447 734575452 599259578 674522109 391082507 437187465 308329574 18698941 170657134 921786771 781941822 176224978 245893128 480590181 655035070 123388226 383956703 974740846 847994747 185525609 197648524 601074881 643907919 364546257 814711247 38513442 796699064 993777460 672323936 824597901 663083326 217422798 829669638 983868346 599740154 256065926 66345432 803185878 161354639 294811768 464123187 623694549 953338684 3259656 770431642 220321372 35574854 796169473 495113922 141500280 737690086 426747128 438774176 657640657 981032085 183161333 47133590 787774512 514282866 660641096 861890292 12746229 662654233 5295287 959256177 601759538 249041341 387914351 80088950 754994459 408107551 535456322 115527649 847051133 284559681 349611011 288647767 190455723 291858605 620406401 461814960 122188798 951807221 250700745 506831793 134246171 579062666 659555202 508072845 991984314 893432583 646164961 611922132 817168918 753151512 975776249 922178254 364357875 879205438 4370248 717974267 261173391 527428840 715798491 581420019 194966810 842463790 866156529 372160436 561218293 933701114 733834455 790043840 548572142 596443964 331372566 638724512 172826682 212334882 143986178 142433755 301377148 129036203 673749190 65538794 403666918 485175818 497312903 521815800 197919194 335504743 960791168 44669616 507407782 216855120 831049183 703891282 58951867 295777039 755833750 400249937 151920395 811774766 910388690 87524985 361536368 238408890 320075095 359193274 871025737 140678735 746665305 615413940 292353394 109433702 323788726 847853900 405327229 293833034 156112637 576662018 643785899 70050416 684399652 918444791 816382672 630359972 432411632 255674004 681645915 402379563 662295236 713702297 844617995 123570395 709430193 466232769 534631785 38596497 417908645 526957488 719159501 62409616 965989069 682993219 501446663 818825052 583104967 774946238 516587854 144653894 957461621 514662979 230552740 860719705 26096265 373482009 809917551 687411786 485025624 539010093 978893723 829454333 854387084 217637657 144925712 707504957 583170590 617238947 424984175 585483575 221588369 189558248 427438126 277844112 607982153 401895519 892234649 287635189 935906444 401539620 959493865 102068460 191422604 164232493 11001695 162793055 45185714 540266378 105767223 938839035 467076315 328651094 13711726 604851198 837151824 118954811 305802457 462615820 255719687 805725026 303505277 801593376 480304574 892959242 891954375 825949923 969694788 336426419 498550134 353080987 750777420 177795309 961704380 46186320 355655506 503871786 66166215 799494198 778664170 610699932 575049788 971402455 131737120 549202153 252681094 234246681 681296995 627668330 844463611 931482264 647301969 900588088 620397224 311792636 301218469 102294817 575653448 856080200 567163220 186763278 370160944 138265060 966492925 717484657 456314459 985083849 412153318 390132444 642784558 981984608 774339851 178714820 100209355 666739547 479991104 936638577 486338712 537093664 34519503 808344443 69128495 916169484 203459669 73018464 838180920 970866562 282949007 745661825 148275802 442683116 67029553 54480440 473181906 197079965 493924804 513457345 103468656 671818185 912910535 307156777 749648683 381937639 985051872 107971069 306011543 821341117 990873283 187166450 65882948 454274251 848416047 830943765 696520087 287055570 453285041 598766901 277959586 635083834 712407653 49909308 978129107 252176719 321765957 464525390 393585707 948854809 98528324 428022597 580654343 667295587 207558666 6603608 873216045 5044217 759441406 340192718 642304396 176169609 499288011 846023966 634064183 671418999 754808459 20061614 315469569 696312008 331073242 290865200 386504462 953559072 56370640 359804947 232009993 800100615 544744590 511438020 489186471 502449195 973025436 827677292 733821423 939382286 164679220 634571755 449220829 265190517 788856366 346435239 469566028 345580507 115369455 745164974 964671663 819555348 964646971 191117823 534354097 269015929 63027242 195233191 425113918 230846842 214847202 428678970 621634427 712144745 825113627 783892194 388558448 616492761 631643804 615706935 454598121 357150385 976461445 480958364 61906684 292214951 275279657 448997270 829844114 368156675 639043821 387542702 475788763 412812847 94397240 931459340 729375639 996879014 827782084 451782226 890396812 694087110 408675916 45445553 980990328 970004583 975028804 91690101 149155258 875054697 281115110 264572037 157637317 473382280 437787480 367821285 177009359 500806096 315716035 394099668 523078242 477216140 816317708 155951163 260278841 808552921 468321913 125929001 273361938 515429025 777244455 350739336 254333602 570460425 481096610 874455396 284078594 41664600 947102414 729865994 618673710 482473842 537493841 819930832 136456595 879182890 81169469 716190770 732618720 853277016 158638291 220060988 504819004 507983365 962225432 266119314 610376426 579190188 336462216 245697608 784793894 245948252 947619975 11075664 827906316 941888307 944133769 963834734 408469783 185821068 490485832 823010796 702565898 572151449 420409151 175837320 129246209 211751381 935603700 733667285 977812887 762137239 849304525 691144851 21399004 231195918 49977981 349811829 649381356 284560322 562521921 40958118 472621035 603397054 684564469 921252841 212294797 410751782 188321139 513259078 529356551 941868797 122028963 259540764 822628240 84033570 779722070 516216351 853072947 394894553 747843032 723734916 966843566 451936160 994821865 632375764 734492021 719208589 86684535 170005752 972741066 347212340 922442402 934914233 832067701 746672759 391491000 686670384 722277584 234846378 310711543 864556074 841125842 92944512 803793793 799638276 750178585 537473456 22987299 971804748 14976797 393161035 667516685 348875857 412636508 796446731 611519628 875833376 155723120 378927672 676635996 573426337 144059101 342989219 628702486 752121267 734096508 460365976 860240364 129974311 140431099 989684172 769609803 900000103 729480117 632038931 757454708 75441291 425005100 881626961 410003134 938424690 366121438 98119003 763160968 870932282 974817370 471265569 824525422 644548928 653655893 275363495 235528815 986872668 770871770 539411848 665415430 580139459 2994097 477901768 845883492 484236844 24595027 604321162 410448663 502859228 993749513 4245526 132867584 234378688 963901618 574976286 878421421 469033229 269356003 81603483 61709077 335958998 247665112 503912578 987801930 772531488 335007907 207314410 356665739 436567779 681898467 220171406 180936562 126417479 985325633 645110012 812708953 947208184 400117554 129155707 187245258 828066691 726000923 925014933 193089890 603373059 24491488 739039278 441840774 57414782 74036324 833549331 49196200 26412400 415916882 346733274 491801281 878347493 740616961 729238756 189729336 421512903 842839309 985598125 406244898 243262135 477016822 821845627 990350391 734878358 718329541 222944795 232895885 788079759 131542913 326286276 530616122 2974834 385886704 625912047 3531619 931904266 108789390 359945930 943753461 720395056 293923043 533834770 568327360 511736136 36436119 634909294 828622551 119654627 335255392 415449333 803855942 44873882 389625673 230400973 217338406 448500839 542930799 423313827 448254730 216594768 708243410 843817726 204086871 372241255 283284541 850356546 591794563 32506423 828093584 957057272 536570988 440481467 740356654 651252443 715481965 412032725 458690903 765828201 433220565 67242585 980416093 150685361 995704797 431353005 868151857 293845602 754510128 319882285 359848221 193032155 887550921 752440208 655066406 800180101 240558669 872600922 429319252 708720628 564456054 106259874 550080354 976214873 855829688 791998739 308890292 425078357 926447940 984279113 480248514 111192983 635860489 403900066 975914966 294575149 206825644 586794453 144497675 895777893 525902477 468632012 430511461 605702419 426126109 819291881 119696892 403637846 54530178 291461299 642111950 186984624 285800054 560863479 338096771 565500742 801261548 113667761 919101030 743699994 605891396 350949633 736838537 681937198 760250676 647898581 778423550 998131625 752248739 312861770 993238192 982232124 323931502 861618056 339896279 152981558 761421102 639755962 496823767 497880712 29242974 94890319 868986131 312776908 797923765 490821496 240354304 883576061 752802742 960289609 940276970 767246466 935706934 834908402 160602558 969396041 294575039 526791366 985442895 616174606 933378360 765869824 958055296 927796461 517185279 539913084 140797983 441533481 468034135 555232365 784033600 211749838 283561284 697520707 483853804 303792926 917990497 140507498 2022133 814654224 635121140 150511128 192176671 136460436 601347371 693917745 671071562 867624524 324305729 769568385 609507570 962360107 870908418 146232839 609518999 130264961 575733590 177976539 136904172 447225851 237067930 115395424 98480212 603021040 636482734 797971961 56530907 148041324 866813227 579058750 565009504 967133476 206390650 114030607 821081892 984381693 872526820 205673796 992708134 656013658 595133484 308836797 62358723 471133139 736983740 77678979 778865941 217962961 23302164 165395777 448551757 305143774 552146243 164766486 808748653 978828286 634693674 966413902 18378796 535360536 520255735 285881748 688774776 158133117 414576615 518953632 949960682 629643068 691296954 11562752 459202859 470994896 811285136 824240659 637117640 239752804 111572096 798837727 190686326 472326732 232342846 783316415 941106118 556829293 975449391 247429129 133586711 390766587 465595235 170162055 391195720 552906858 225803353 392277347 527961407 666799978 169183545 361993234 481280542 213572047 44753792 914285338 828189294 786211581 535343155 556865886 477506555 564301289 551171287 119685725 319887478 812567427 802176650 501088698 908419302 183581615 908998111 292126966 843220172 865345605 55382235 179283704 56082274 893955936 971449664 236713244 144022227 899999926 295731956 758291628 137653097 490197096 539722929 292584699 319561574 853026452 225140134 651196119 440334977 289072377 916986072 462176847 366033286 679055087 263417813 330560295 531452207 804610894 621352813 850694497 923576734 906997704 701756531 840502440 518471644 738841518 70113141 792669995 993032738 271834200 344841871 254758188 135771137 733324943 28726015 47009795 540207719 661728233 413560739 145780116 437678608 685956992 557138302 850243875 188354579 551299742 962864456 859692354 168950206 892620908 657694559 741850724 532430375 580583207 41747186 123671501 583789942 258924270 208428832 549041077 247460117 364715529 796946055 661303864 147988478 608271902 655000294 831178865 391754533 977162080 788149453 266438491 997617305 665396301 691868094 53413696 585458979 378210166 152932806 780193847 58408910 500395228 213987854 37075300 280961604 346280078 940940073 207811299 25741029 267930840 238097365 601017951 299322353 75763993 160699203 676770434 943230856 622914138 128917671 763583837 611196317 242455667 779397817 324595647 946563636 269930445 372709973 388625904 949562581 569121931 421621312 344014709 581030168 422769259 461559184 70571501 17975222 65154056 363326847 613946050 889948757 701399095 275312808 294915074 232211755 699086433 305451627 743196194 231946771 191735215 864590386 799215510 947714492 971629930 969795623 217631107 512244416 820511350 361046952 736811837 460825692 867892199 795250931 272347767 110617653 291817963 125604293 697960539 639559510 713852338 789437675 701417634 653172789 292662466 103736054 229830034 61210856 355550756 636999987 478466426 100142714 357944926 925560150 446756830 307336603 750207758 222738431 560080053 863751990 152621856 184256532 520133407 84047141 634288251 267232020 123567330 573248310 113237838 230354602 173056250 32363800 455889101 554245798 326505741 461266104 549489488 608238070 543085685 114306593 76748450 823716838 39841955 339947378 615617580 789714735 202476396 330151293 365397323 425237165 427898388 982474059 782504935 874729217 556408685 266608899 580044334 6355809 68453071 346604925 671875826 303080143 576315884 817947108 20359035 689685661 717814300 730763281 413080284 48719796 91520432 886756829 727380796 348230323 736668521 795357768 26019052 278374849 326411542 638497650 514193726 559183234 699179596 715397176 613841504 590446641 861429787 45855008 206214005 804235386 586124149 625864660 761063302 868939093 613914710 63386742 268898970 537775697 134678300 93517452 84871807 327047386 711875107 431931701 268778463 178405419 256384551 232914788 786506944 982929234 434969799 60070457 411295071 227314124 311692713 699429184 618615250 951234652 110374040 794539042 803405250 425888965 863563710 648295445 39665632 181342198 10546840 598081970 318754226 656347317 130121495 782764542 61646463 106428775 641352901 389119467 404151641 250921170 502571944 353003292 353859831 428712122 895404947 607598712 363980283 786718980 2357151 82438493 235816723 647318385 49245271 342299800 997905162 362892302 641162259 351251516 913631591 191264790 862866738 398792751 483943327 844838871 771027439 300252787 531019113 749373515 467703612 341438671 676279075 187868316 324072063 43318193 984490971 886925032 193481621 72626604 374886822 568533553 533027191 908312079 453411249 560392004 77459921 526465143 105328709 67991029 557203267 341863331 560864870 643850664 789729207 515665854 58748140 186994607 417826734 960189937 479143613 729353912 796240641 166527625 45227047 179427844 375400363 416832143 869745896 636915088 571080788 602383045 912837357 129003173 976848891 598370925 871659059 784012132 224217377 320818574 83188336 554619995 712562413 391578669 662890218 760390902 475307473 846411874 589481294 479769010 104002221 902285915 188752725 828866976 522670922 917272585 340104669 562312477 710397401 60093298 8133989 258903620 947854458 475828578 321775887 867771055 142763974 784930056 756713955 411000248 520319933 207182125 100846032 397751097 759467806 966099080 422366814 621914248 516588774 604734318 349882728 645332964 776512713 258860370 447995428 153936641 683436371 511193413 52865368 115613535 586718748 790027017 225173544 837714667 478755738 488739389 298826023 36866034 746003954 423746282 633785937 377083056 427578931 94950276 439478661 412723955 811100911 362072265 426072573 480510854 850793039 856959755 157595093 983406321 862944457 348947018 610388203 252185467 483112577 701461220 12289974 230264288 870764149 346271860 588618901 110748282 877531819 264651561 984545609 708037778 338849776 398721227 600915197 829523418 862381564 571822895 269668074 383865799 623947715 877184638 197113561 225943389 614172710 651888482 214659724 628498089 236670713 500176810 979681590 35173136 804498575 268492084 614399539 965941123 815436378 56131272 536790423 51625188 241076376 793636601 990117973 579819030 505036730 49147212 246815670 750825340 753726795 664542480 72983918 422807674 418668358 90841433 747819843 228761260 678854958 641209068 569473677 792373140 709220247 596571752 663493814 971248844 798872276 603053717 467599083 315893847 939879047 363913225 397944357 930690171 475394683 40886829 741096033 243618377 826379918 30797872 201550193 912226075 609241385 963538332 88058816 51220743 626804043 456110046 154988340 553270824 756018360 696607103 442657315 86957748 194357292 809269847 186998111 322924733 125704132 744148884 741688415 71334960 184574015 387609624 786764217 437901245 396835808 228757200 586166132 874404055 123637761 545672493 811499771 30507040 766592134 292809965 24851498 632659955 401976927 532763796 379020797 961809422 313274634 551689019 456809558 48272683 409320891 955873931 757343441 106444964 2247810 824162705 207306689 704237605 703519852 132861790 613757891 228411270 318539616 326858696 68983747 766293676 419214500 551912162 140614768 379132385 674436530 948663910 363543379 803082424 605551109 591814073 651757392 781069560 119203572 370558824 978719883 936944418 264404052 42126652 268466463 642378587 485336882 605330010 496381517 72164470 708586769 48131508 30815824 474904959 351141241 52848556 12441251 707992680 461395168 395862238 760660947 399638698 722463137 458112362 938663083 661841655 827668743 200209223 184398613 84593204 558787250 346506744 404037214 312443645 469941591 248387658 589017239 158615667 332594127 700366085 439194911 795039582 252557092 796502976 264678873 460561103 46226097 811382642 457153324 147879543 466893044 661430413 452292168 595403992 797390873 394405066 828023398 507526632 217752641 824422759 911239511 236920159 199497567 896498988 632159362 727756774 660891687 996157857 83488798 386420406 738550209 745767814 449766694 887021878 918055042 885580770 805507422 779548117 46518829 659728134 629171494 333591168 845265795 525610945 957695571 398084924 175582299 459425802 277329668 661916572 964338815 239450898 159569141 350785936 535443653 179801326 6397439 681390847 30243115 563559423 778679645 956546931 235376407 892490262 524189998 195527786 599715744 228511080 916200414 8025290 343827871 991932135 459010251 872845295 174733515 752848631 957032127 270748650 441231477 263057178 208641629 153523794 409310092 646239030 815797220 553148490 103693387 312080028 910948924 51644628 759300867 484829295 770784458 306353553 329289982 274444102 867580022 466702007 495034948 422955834 885020313 581527902 36989485 658253522 851736399 862529002 671787684 873713002 940915697 563675615 763157334 1011608 707444408 764077935 396382572 517620017 446995212 917114802 497705297 121260509 915633477 736458378 947192049 350788601 8444708 39456570 158350641 943507069 918024823 799775180 405415465 388231491 429666416 572185993 418433883 270612316 139508065 391558387 3109253 603856895 1275035 508745253 458700723 106124871 936356946 731677528 604020233 398458978 198459951 19251906 804583005 525414222 543753731 752897040 867213551 17558739 957442385 930020535 702163238 181061484 906858914 982490765 876140563 789480046 342613764 795773569 893683329 462201177 215851581 635747460 47631007 825532501 668868495 146463652 801764270 21374538 240450225 161852386 105712912 251838270 853745435 916431513 643152675 61003299 317175333 155730436 136660939 692889942 257626487 502019668 605860920 253935193 470286659 363752290 64658788 812512829 614577988 428516195 678196250 10676354 966306116 843914817 915291813 558135418 792900076 779032328 860113787 203844529 223022119 743405385 29078397 477296154 136146423 202080859 815939882 392821393 854133698 573862461 119941439 643638246 651399025 904102466 939963753 92183357 174366351 108559656 69884925 34045130 453039974 39167451 754382006 258192762 896164706 712050528 450493698 283361866 550151568 893502582 728418334 331734033 122054332 147731431 910117522 588515766 169288742 109043774 8182810 720540475 881425422 711774241 54643405 163034371 544455858 912343063 828161899 267621156 256044976 795959844 262634680 504249916 406180840 366691363 101391773 333074188 115793707 133728186 430239847 827733941 911746798 739410486 457182914 702454822 245503415 268237095 733953987 946139618 686254970 623687601 138408171 126282801 605291340 266277114 282806346 43890572 947029233 918103015 751896294 743497950 508855842 635141088 470144474 211513600 493993686 710620395 504512215 332579903 394514886 310461358 195579494 156596870 384112102 632033478 529193155 52918513 981229406 427750690 952257087 940101934 307580445 292950747 377464456 834610510 17306191 960597785 561580737 80450068 471175903 750176436 818192398 386890707 805802152 511950157 14898058 148652642 734336896 590912433 325612308 837595307 118890111 962707355 385401597 794817455 897190119 702733281 551321704 570663655 21838392 698958568 650188951 790215572 897693074 661743511 258398680 545759420 48034718 155146175 750820868 89386531 619587699 523894017 271137642 370011890 66236117 217182964 355597472 507151826 18123225 17354493 906981227 436683110 201505495 32666552 707096382 80354353 72190523 606320000 367849064 513742335 59898044 378946246 719729720 131826670 65310879 793331438 129183781 336569109 418745104 913025443 895700146 973501439 571563125 808359510 18556136 298475912 663494230 329228662 174189520 696347526 383190310 142727763 418490478 872010970 865364836 37067520 112144088 711775145 227667713 594435912 887097765 159941880 419312910 538351384 739161033 265552085 477833450 594673161 318819294 204226597 434558414 834012804 900100415 843594281 121042631 492668922 214185235 110632765 404078219 66200176 297070562 139989435 613128963 226940179 809004012 137356864 526955235 72793623 254278476 232146830 715931644 751096660 419049425 733004020 1321036 165381336 903142519 131246794 851830734 127367513 457734178 712744855 898955645 378822979 261545454 832542639 918901460 592902259 476241603 473050089 701882281 648852073 270537462 100149254 633850792 996400951 608340870 147409923 595316450 585463145 710488413 367011176 281333780 48583116 356869543 406993288 928988591 829902559 708529922 88877509 600239630 941973232 724235242 641850425 990458611 813121815 862449762 997511749 102037324 42215269 934396603 945722445 462323166 258176894 694228729 367411481 858594883 426392621 62413941 394366090 895763016 75145753 61190215 92359468 419931092 520647139 93257522 241660229 853896538 591273298 818260846 191198235 860713506 886424101 394930482 194382649 382151464 727233726 631286215 568997895 885825263 561075914 452856449 631726388 100245724 326171015 936558449 904056849 881699062 591543361 869112860 82330939 613764661 210197775 800867511 802039248 836443610 996014701 350128234 802650504 812176406 785262189 892820795 773978745 772867419 567232123 701746786 225463756 172540073 531966347 734560692 48313007 850581448 812623079 561997525 732656931 538975500 175080085 91625253 660039219 37722424 521721355 563304893 688606530 977452863 663115435 168493441 865619090 303073469 892991782 600287272 809772719 191143175 283065303 284607627 557662890 545424057 36982762 123400423 668203401 388426589 70967546 859537782 408102480 613674131 854953361 593429901 851502917 452622117 310426137 874586599 214622295 36022221 522207206 419780544 680947244 271995246 239179338 413429073 929211419 263419182 516490224 115028417 887456742 104396912 905748504 317656720 334266086 648708513 81634430 583018726 526775771 409527760 868446362 388573648 39204592 744475791 142462691 802258270 214925642 892529154 475661844 171250763 620907821 467979334 323240130 744786764 670064637 11099624 373691235 300673554 298086614 46982853 276897260 426681550 662360107 947969883 3541647 548061134 129210431 183562091 509130986 483249190 880260992 230260628 828696392 792580907 523235305 714723462 272794357 297791014 647667226 725117342 695075423 313766139 260203762 47100261 862584999 494280592 253749070 729356965 228074782 615873657 354111606 108595446 124477163 339081527 289348903 566765697 250904684 101988919 454248610 626224616 60524719 691143050 803580735 60233607 853193764 693880420 933395863 149747121 404328367 852605217 179077469 585132377 691540805 335779808 203302659 535440855 773334506 981225368 132166806 651294934 618557242 599742739 483350398 767661747 492902051 679505392 988594862 757422867 930566175 589140982 893186447 273974512 625203795 799244292 227761965 288092482 750175158 227449095 568482236 694027098 304066648 495051888 594708350 650848002 477799506 475115887 161148705 643572817 594708014 714761302 877381381 723173170 452488949 817913142 63739318 813945038 827745296 281710952 659377618 72573251 722454609 622131599 802036672 891353165 605954566 265566697 347154762 214789037 997811930 332477619 538064290 179307616 482827942 901574124 204096538 700781806 313420210 537142660 219700131 899984807 395499247 640396328 656501571 30294237 816879968 236690538 288423690 749856686 154187316 801317398 218003011 356863439 576636939 436409676 841638271 956310304 68074871 908283252 670023117 900561410 102454574 413861476 303448982 226098567 595278076 325083634 372661771 981715620 79932728 510489564 434339152 31000914 613373630 826791137 266232527 233786072 477452918 140974183 856848944 237434537 804384563 778071811 527536575 942364896 681805358 601414209 537538990 38137361 860240848 335149096 432010129 364811517 929310636 8070334 775420751 520703267 390458127 684459484 761342831 149010520 611797160 113563870 686982901 256223860 987758944 827982290 216041005 589694752 449775715 185661958 204070490 59429802 5061243 129784451 864003184 558715679 140403445 247539959 105862852 787313433 347026489 917575091 330568892 734313190 831614643 919178388 109475553 959492673 916795890 187845672 502467084 529262303 361983871 100892669 197271508 609482388 450839695 891836675 845472264 666808293 133425660 590536289 473880053 323174207 567787605 678028537 730546144 417521612 116479031 810647637 444149538 396905210 647391161 888005133 243080811 539213207 83430466 32600110 783778855 254286600 655443304 383150041 8017841 471078462 977576887 747155468 43017391 436384207 35556470 365629176 709915938 443426380 633038116 410517074 632710998 916181285 654678524 265306932 942952083 715915122 346812792 782927202 164782200 187542258 361578572 800867728 874315191 300218091 55031780 269223236 55504458 159261061 934566178 396257448 683968862 937523071 275182321 122898596 443473947 956825599 710911327 469127595 818042663 779564195 529930806 468214828 647578631 822483870 189044533 624340574 270344755 273991430 734740436 971847914 230335121 661878921 536634071 510934561 255585958 279056106 196022571 435393418 784016476 921811145 861778346 243873121 82699681 54224738 552362964 238299490 630693017 694187169 821287905 501991390 8528613 960850203 511580562 133772869 199794002 700390349 161724188 221588719 402368070 212073168 252159262 502752856 888636191 274660200 327837434 669898494 922599927 979638319 590612953 242678175 385531141 933898992 829366228 508148679 749425029 538180205 539188726 791772123 186954845 849908775 677467731 257832715 641870930 810850474 249055983 402412520 286856368 491681112 162217639 591477937 908409612 461328363 359319329 455510278 954533211 949625075 977880688 827122030 610035760 112781302 10022425 648479306 748086098 762259619 184847009 668394829 56753366 183106017 313351192 327800578 506360652 896291303 607377798 277031840 866600951 421655610 721452669 303340226 942570325 216684965 454024195 168701940 850536929 839026914 921973713 221149585 597015228 272889226 206225796 219343910 14783133 864826501 504838248 408388634 906240707 227763634 847269403 611681903 670308051 124312495 205690901 512073982 665286050 956552668 719261464 215882031 397209695 219442254 255430684 39516819 660153885 592974165 453345414 766716559 924654213 943467389 240464644 355745939 186848315 708086971 456071926 713534194 122200402 52463381 235869764 753381477 503950386 207080546 249539092 908354280 582807639 988266784 464800897 141152109 861701024 257598799 255902250 809779656 932344600 842260720 196712511 488038680 198020537 345077273 860001330 799854763 845078600 698522850 524386609 753084363 538716154 565113529 589991313 989086413 567163173 660321738 35829171 19841387 424247559 95629174 603937143 815152427 295849423 305724223 219993402 650758135 191513685 609216415 673261154 867971185 622284771 38690950 499976884 856462585 267308984 497969451 613424855 595087694 458969289 703857602 747551968 191810945 447348668 648408443 715241146 955475658 296174445 216987929 880974236 142653388 987436862 133935385 541232078 42836131 801967273 630288520 344888570 869709170 923642005 370978612 885408508 958090351 775621657 425432596 31528163 246993751 767384287 196992934 188308667 389843535 747580120 731866882 256738163 630449273 705163946 471209695 162110203 377065575 896737114 780106991 663367325 277045264 145139950 753483796 188681369 579006747 80421526 977290439 451819066 718074885 701023211 134707180 615740604 153234258 572028863 892728251 297098066 590462083 539278437 259104437 143123191 440973976 56551355 832403632 777015079 115278299 322360366 204747602 267717337 425216828 684182694 458595705 782817111 6123307 942315642 128702533 685179315 818664753 557512334 79411463 80271480 520963207 377602787 253664292 18576684 616356153 438983331 533635594 561017469 525962839 610835164 432139920 919069274 355569843 877332839 588767339 895350971 889200987 586189601 237465535 615567883 343886394 967765611 34198792 152922699 968876769 980694504 699997131 283807340 680852910 577102492 995749873 208716392 322460627 680899384 221790049 409800785 837331614 17193313 59598158 742102945 415209476 90078625 890537852 628553786 956342342 316019887 670243988 248098220 680817126 466539399 625528590 659918241 950640097 818457925 312458918 174621967 23688203 581805148 662190662 581667225 802836977 680076718 297693491 676895189 559115040 590080698 10666025 401822671 677591312 522794011 545263683 424332401 173355216 810448756 474475315 88810206 241200256 374038087 647183177 973327458 582082638 306334830 425827513 761477388 946716840 134316529 114873558 712409734 972721103 164532807 151057083 80797167 16564987 358087231 100365928 23099146 763454683 608950781 172713313 107156107 54315676 473529472 244019143 436074705 904729390 496526967 582588608 244794752 877168374 44447571 922341311 355486972 234520768 606565768 314777418 991650340 485448735 213285869 246896562 573401284 720489140 996942599 739124295 14124504 53927696 504842077 260086747 257077161 988764975 494542731 80890118 901181999 579364137 128220685 187916372 562070167 505060692 240073203 330495462 720536108 631174033 180810728 997332247 119058858 751666111 295190789 50952211 277841988 636998298 502633512 489327963 274168052 305352502 281132778 284426959 163336861 944283030 20623121 74782080 208878513 84214399 454996352 903134380 241155410 34966611 542942992 9897526 721766910 998215619 497477663 280483050 336158499 418207692 555667150 996391393 879041042 665018808 602010359 919046957 92841701 959478311 578833097 393399560 772630689 9882163 847332316 515947679 426495378 363644024 134559256 395614738 220507032 365704754 370796824 706942243 142550595 679895081 182628748 633977594 27139756 994123498 571857131 333029682 742940993 79821110 311200828 47369358 483809727 582653166 450256657 538355857 319296268 831472430 554525315 164516264 479731904 616261164 366772372 678216601 271470187 78383333 617787421 558358462 320836613 194262435 411098857 12577822 226863522 681444480 968258374 932387948 100945211 825094085 369617523 173244507 439664722 711118476 715837988 441021939 420293974 554819749 19149153 705386765 858136378 208605695 469494736 458384876 495930125 992826784 398027878 553457865 621298981 973290808 664360062 963506866 251538500 598312637 972427856 621421183 179767523 978933656 166891372 112478662 145405896 504868550 573623147 847826308 100510117 250074990 944728070 887059695 99189807 498179198 852136884 453751859 264977407 302667456 653968734 26687383 6255058 811164593 345446879 336688183 448951816 182156371 992549923 950199244 33738749 826944615 51958366 227588120 455288714 783797366 573814951 107898243 159831064 34710743 55001002 704459003 18358381 412423047 747132197 390760640 752413090 945427416 799817265 657022121 809901377 242653821 658353873 757736078 62974675 88959587 398346120 276292738 914200762 610004720 599462019 336152522 228873727 404407191 669084343 492307216 204940584 619506488 655816740 69955143 548135013 498655823 49334227 294010711 667277802 182656140 161324212 648673772 436544475 819843812 893942781 373969908 790878231 811491922 411800166 684104246 787118627 813770471 594088983 6935946 909845390 854160358 909656934 986725952 12926233 231580236 505859672 502662913 972355285 166645018 215181494 208496258 167988525 28650191 886267455 471217045 505262867 540855246 351872067 928079278 318764015 76080496 29238548 634035766 61045585 737920526 432065238 373118388 985234436 678732097 405568785 332297764 226575403 261140529 201891128 851787490 565599581 278667308 714134309 941515220 797212738 410497154 380170401 338363260 649943212 90567769 63486354 88114051 215259676 171198731 258797992 983859420 68854005 902684795 821520999 380329233 428073924 462415824 564811115 458762688 800003723 785604404 133733680 54338218 310583931 129958792 427033070 468685597 82337714 678638112 796255119 774963440 762070358 503015547 976247210 555561654 931093 486421976 640764159 752216024 515954338 890939158 863467014 480753190 815018432 865506491 36597348 350479876 869510403 500337692 484329843 459144418 669823053 710936479 792465602 810850804 686099951 836047303 512678644 129886151 610863039 308576242 611790197 982044761 211651378 245424535 157744392 413890027 796853982 400853588 689710577 791667617 933349100 921668904 752910229 612891355 992497284 524515304 708895513 301078240 713109238 887888186 461207324 909444918 895721459 304555805 797238646 46925534 275641645 614962392 592408648 427110440 346178113 98809915 155361384 945544902 481626635 698299353 798018891 853717808 979725678 925853701 521467289 618448002 283541206 407195419 409549890 842652083 238660584 736650128 171468480 896844884 709669595 961871960 849224140 489698676 266835835 671197325 955901050 107267608 215634285 72181324 751882160 35108490 954857645 937887616 697746939 119299250 841554518 116740629 899190118 948968361 578049751 332847496 457299705 125833268 823867015 238898401 614538287 318708441 981407158 218537407 586015894 585948886 717265988 682498401 378258805 902893037 149272637 451970291 122125989 379509652 758223918 621297492 205024283 572566054 16540043 995678162 486975143 453998605 698476004 297317538 271489291 822495442 277926072 87673257 889474090 821918201 838796106 655186118 827371982 594923401 390698075 134723114 612473446 262100759 764011728 594796779 703743135 712616694 848257700 167820588 940992728 187850862 770569596 65689941 958979407 518682169 844745564 599994649 358987622 596058500 243000014 88983500 842075312 664032497 139398243 568191597 671539066 448528595 409982588 589297991 368363421 146657222 98498026 304521972 627687894 366087866 408383211 718448707 247995925 755373696 238803746 335262114 439645716 420031447 457545675 669796701 162332875 299721931 138512937 159688178 812101553 88454581 347846995 355789062 706069406 232019762 58270839 287991590 986932607 651364790 243951954 402940443 47188700 129361788 367738238 44065226 264338159 933264098 243751736 609812434 971751710 762417796 298216938 856229600 231534103 31229357 405620427 904730363 11244965 772991425 280980707 761615623 323374262 315558524 693552744 253234058 744392097 426879355 826678103 112937559 926177306 640656613 841925595 549511541 943775292 518073805 386063098 820401104 937166226 268260336 759990025 447028132 708790316 692271806 968112050 790476160 809275088 107495521 446063570 899517189 312519122 589495499 261823817 655475651 788614573 716023714 353602985 103749642 765752669 542432595 325818984 274124664 816650515 592138840 934195918 340078105 496001035 188258915 928106504 688811942 224089711 949867448 976369098 478032056 474051294 360295038 661743191 985631120 26971234 320912846 816041421 707839045 964281310 612844591 408193043 925420095 429244247 940379951 879639434 644412530 63790633 614763623 787611308 904616462 254747146 973411392 555405558 930792268 572715738 792920356 444554690 576274608 485389996 139906881 625897093 94898984 734538599 103106780 697602293 858794941 253921419 900866642 563380520 653352342 476424929 629613952 800695104 561261831 543970243 160874959 469522987 322151356 797635429 934883437 705963650 407879295 732901281 74008009 379663405 41867350 249496923 413169825 367252139 964128957 846711973 352915831 9835723 586141687 207191245 62990100 748021824 569716010 839804856 323526633 653241136 434316615 311381788 490596354 625800759 922876311 12470340 676966296 660556571 549081842 521734342 227682206 520726107 648178190 920316526 809888859 981148403 987208035 636191374 515804702 942565596 980268910 38666082 226119244 930110052 130445730 315792999 373512721 498735158 995692264 244386103 739660737 676829433 315168612 710993986 425360976 649453207 272778628 288738823 199178723 209907993 201645592 832386816 136926355 159988142 819249742 363594007 527132247 649888702 363188247 647060280 586493883 393968394 155865254 23237484 129283808 189688725 167500054 469132861 296308178 91671915 619299320 832901771 958171891 499370948 241303937 392890614 213708177 112848068 384312675 144389000 380745790 562380942 679960375 110439137 147596103 938567245 754007835 289994442 668592668 583612924 820783145 262934966 154641778 238422277 112966032 710245569 66174208 802397048 27032604 697323347 513833108 206348430 144520405 847088236 858895064 515773214 767302326 868518133 272972656 982221781 96021012 865584196 430300888 158686228 217911699 365817411 77172156 291648778 291937478 776318749 419317359 909109859 736871921 362684676 621652978 431139086 851083628 681840814 764366780 813076511 892243460 523647270 365132567 423974829 838607335 19122487 880119639 655088817 932535802 586314924 17954353 889531305 132880502 785743703 507553983 415647537 394319216 859505556 577183157 513972358 77554477 700058993 812371071 430424763 30471257 617496151 768788583 88552918 794179964 269114959 93105299 411914121 965376541 506565280 751439791 863664734 246053324 783145856 75194589 18228977 837037381 841800057 160229479 404208836 865943076 79631193 237322348 531528097 876308651 346896378 688850583 841208275 108414201 319389988 427499692 956782021 158727402 719814253 774423201 776133561 103876791 66098296 306791950 868346643 435318789 285525515 502640755 546086112 843780240 223949844 561908208 608008878 564956881 95856557 700974929 468247265 75997885 832890407 39079902 655086135 534600199 443320136 253899789 447207986 333338593 560461343 489551399 806877867 161159998 407819295 138872485 653858028 787008343 582294864 614425765 952039929 912882118 643186225 775360621 460898613 626375414 119224035 2366132 745216879 29245192 721741725 548477049 197684822 530560359 838409714 564944667 653792735 27630615 529636727 817455832 775616168 825278700 453990500 422974800 475874736 608206142 794957949 327040099 127911332 528608040 545154096 512478822 718580572 192139180 443183596 548680179 132922593 766694260 595172737 519280480 108870170 214160509 747068362 221674096 410194533 754229728 585068339 663347129 345027305 137211588 434664919 969565683 356917222 606412728 818561819 666835828 593564797 332330515 104867350 185433119 977475805 365398128 662340156 277427832 898066553 629002322 149153163 428392577 493217401 974603558 308024022 228291738 527555796 276394666 599860170 960372453 362958522 535142627 540346536 214648377 112688077 531240144 593612163 937911912 310865874 255405431 852970927 319985984 51439943 805047832 121491962 43107598 751194293 348878083 72153967 227038124 263355805 812703011 259799950 529136754 68233258 393457766 150679599 119301550 740001115 402476478 552107497 108782732 59993109 113147215 705914146 266237045 466262012 796389540 721359261 119411507 250985426 420274116 503347598 335852595 103704748 442693263 872360967 576145487 106865117 494282264 852175656 209889959 334042545 963113065 310062851 690029823 737837239 637891963 145798759 625593776 601625373 574541702 75562232 215858887 303727632 290004786 339153426 357797456 785123952 210401239 623044285 522241370 663443794 391772048 504275867 84827921 51146529 688671854 11241736 127425300 571347663 367889458 102248199 601216400 324700363 782048217 800383029 131796002 393084717 757165913 95107317 980278553 286802942 518796276 951312862 804521504 832464966 261194934 590331055 770049259 904067337 828553072 819574056 263739534 380213951 538008750 783461968 845346160 994935870 528013213 655424739 261985044 56150902 162185115 690033432 328171093 65843308 190680481 513345825 570647421 385635033 529052163 954119167 436827265 649033065 470540045 356365261 492723772 520136920 726713763 253643219 958922105 779928191 269762501 877380780 741571066 549835867 172928620 217710851 886550215 914481548 860279172 594664578 408544794 603616015 215538988 299735011 639160246 717143791 985888700 334116016 914883014 851572957 835850574 66780901 756831370 531362694 116498636 397128382 373560247 723826071 744679483 565907303 404803531 614542890 688706301 122476475 345694464 797312998 347800328 149121483 346726111 390770801 339800674 148174231 295066046 607714384 446895948 9773586 116191376 862796353 115602834 425330829 755727499 726319851 264648889 596146443 439305028 62559699 157138126 803877191 472284909 544290107 290917297 113177507 220111746 70160084 522745222 517518015 837804377 285535674 81404991 550625439 242355184 995627692 372590287 103532115 620264303 172777150 696021959 965944631 275015767 438503181 235735978 984645727 3407594 478799217 193825580 760015095 871762717 171823125 303520479 693349312 576301358 625321936 139270314 963252925 709319851 930035723 657045315 395075071 873462367 496284852 158429049 459900885 750254371 986828366 170757379 706519916 898189287 495850827 920729243 836772701 733067476 914948812 444225159 790646004 858492405 704405225 212305899 74926827 551577458 626301993 331505966 473297666 816590488 628023544 118070682 156215955 318961061 195711262 640054821 411545581 804955284 37973146 808543469 276574354 21003459 689356171 1193941 681368270 340388585 708681333 163884239 688801779 144600467 109711888 197201236 603635657 851893786 34801709 235913605 993094616 9784591 539806617 79345328 370172449 916160921 469145198 779033460 940705281 25971582 750039430 596047648 268590849 564134611 522304255 480948060 149321628 906037456 639415951 171545420 674973595 949784276 923957070 285973417 573376854 985640517 560018916 682021608 301246931 55420944 477400341 375669733 848528032 675268511 339420437 78464926 839944662 231955271 270866028 122173949 859280689 180236386 738541492 159259714 366135123 738259980 927123826 384906923 63807657 766857851 157897141 771227655 323092367 884503395 490984352 316171801 81852736 186686126 708802615 815912535 581391418 868045384 782812273 685882171 424520496 792310375 13603599 496856396 926593491 260462797 811370101 57747162 596658915 932182288 291774340 263125218 15169030 856102263 187530637 215359123 586790615 304212361 808328699 692645141 127468266 581592408 901916949 139109161 324597621 918539276 866139239 494188132 268793171 161934951 824540609 279012935 522215435 603098821 437235982 719872180 323186606 813254949 734243642 668184580 973940317 941944246 861937274 534239293 907030332 429945406 201661052 974394995 593773335 378174207 262801 982518577 219155045 270346008 539482872 756108673 86289531 310767805 910585826 618983463 391054639 740752980 661887332 65588451 715448828 318191346 976509828 32624358 641467153 380125516 185578032 475736460 479435636 317171263 15064735 395354256 293141338 619475957 541615346 638047890 517568583 570077343 148482140 888204036 254794055 292272023 284634066 545729814 745375 516113556 281009761 232387702 108157630 776156558 143823453 635695611 386230894 817195911 450848579 474213095 664076470 448892599 61690375 958177716 920871690 308494894 938114095 278968084 314434967 242437350 26878066 61894059 485123757 1838401 727686566 419446840 683960868 674396305 979452871 195684582 787252870 136649083 742568346 5487683 189020036 20518344 94429019 818109963 942804027 843289907 292864923 911686460 548723289 862421374 394976789 898552667 356801109 820348204 378169422 419237694 478754391 552382181 6774991 155470723 832379271 867283840 658087348 514164802 269424548 952345726 62179066 587276336 818325060 500528644 960995010 425210619 564421795 678884881 133362776 417292708 338555131 851539350 255762979 18130383 890430143 893509103 932511894 882551556 86111995 545816320 728714835 429848652 329919485 755020000 707803968 745223481 121251488 37534273 209394943 622195534 387135410 782543253 795093646 159280558 996435402 81379560 888273922 858768204 52708503 83491105 399880768 459114914 736592405 705409092 346300290 24311358 448933528 407775443 969547086 389802645 341752343 729392683 314277938 930462246 296931492 877006566 700835744 633417891 969097569 781316506 590436414 729566437 218344467 603898111 100758427 427014413 374176290 204013641 959975121 497869214 675928432 600534585 395973935 563380886 682660899 992229931 106004979 947897693 201680209 710758934 165015805 76685376 589607475 717932767 20597902 722026933 73812688 906987120 211774403 116431645 62778198 839942736 340567347 383867134 905254753 9789362 395593817 93693065 495947509 400758291 49486336 253351915 589929684 341840827 407299307 267113274 144549484 636851837 660606341 829121302 260041296 749139190 557711125 662214188 980496001 180081623 245856634 76495452 769900510 895940417 852592195 984643892 194228568 35136623 795123004 672003615 461271258 316816247 576207276 462588723 735424819 849397464 760924658 478197880 532052546 649690215 559747022 1241347 609666308 499917484 215649938 689264984 802576874 44323941 47974609 739175353 461828313 412268849 692905630 696293046 285634874 627523034 609001026 104140214 447128988 492338781 374269712 443097398 184495311 155314026 142649424 742679924 402084589 137090749 377485692 421957283 287412377 164263604 814313541 505253152 541258223 842495753 618491987 108928123 954448115 893789953 102808958 444632075 627834088 178116133 26573813 452680448 309636354 992746043 379433460 299047651 304116573 244761834 566031669 755541345 221288598 124380466 96320285 3083945 13981041 721121547 914147345 111175116 41354816 167989813 743015535 543553439 823794006 841814211 186599649 36048392 504435676 30729008 807991735 443082373 567114900 335605734 955119552 466871467 695949775 851176658 818393565 91438669 765787695 154071789 16260621 458525761 468715997 536305438 439802450 172900610 742924396 623332550 371951871 893019978 518499604 369277365 418457294 866093939 724909132 721135880 689332209 983579275 798968793 253064033 514926448 684474356 289901046 832522336 526555628 857194068 165239394 550037555 895922186 790608742 624487672 775050688 58601745 427759315 904984109 456014083 344325321 539899089 910830376 809482957 370321789 657970646 775046623 831674711 269575356 924977397 119581651 828058008 63911073 203637620 661712157 523003215 3125325 839608694 839375593 112461853 751627056 466099493 88539897 593081946 919433971 438496450 238644891 161752498 793491708 280215314 702772950 462858466 826665955 73540350 847564804 882900861 924637734 996140862 223058653 546936678 350106297 611698277 580537097 193070010 27659124 847253135 51157279 997459815 367652557 772184171 569026834 647217870 619878980 517605628 152069135 707377531 516314918 634461572 985531928 329458246 130621534 400277669 966511067 82886865 488695057 765046701 580266483 552962736 272706064 990615078 553619496 329979639 304808263 132270157 249918750 730640358 264467278 761338340 189533199 439868573 58142189 294099832 286687901 115536729 554419145 532113347 642236411 250524677 392246937 642167109 636402058 879961813 706813532 945626755 834693443 899419884 679082461 514804368 35660195 646833032 346826048 647632321 107079223 205159556 889377943 50814670 175554267 724466228 92729654 872434442 479843508 604138641 133315621 255993857 230568100 153206692 586267990 463711444 581901247 99363929 943987519 327023872 615353407 522792562 425493782 584264348 905223727 374141988 627812531 499803633 872327075 479850042 542756582 500757415 357926445 496427722 787511687 192628985 669794386 383230193 270665146 418586389 485996405 193567891 369352400 938415064 755508591 418431224 218801595 96498941 646757694 118900903 675830834 752414857 523775593 793790740 578742861 913654497 794487092 538819477 2515821 455491282 411197317 259049382 286647169 291907909 898552210 40237721 839089855 107749435 56207437 635750990 868238549 816806166 718739545 809145118 11002187 740190302 805692839 673625219 327074421 354958170 594277810 142823108 884141480 275811984 788851903 604083078 756342472 867420137 264454565 463761590 772240886 268950358 108443972 445986821 215653834 102780989 968838062 318627545 594209360 150526250 221085502 101633896 401813078 527671488 172848432 507909757 865484516 988965567 440376212 917127162 254160663 549441244 589816080 390763378 262317471 379154953 889158273 908139478 626419894 746248413 889565922 540390902 736828475 319344351 266552906 827812249 104372422 882871250 750765444 381881273 731824382 225246147 342431825 473623861 907098054 237952077 720735072 822149378 659695836 464307860 33376703 105228940 470378351 99387490 555030691 897562599 918435136 477281728 202338211 888598840 604152987 720935409 534159057 625205312 647235806 434635750 104242494 378808182 396131170 910284898 688169580 891240941 721972376 605789340 548235030 870137709 805968846 486758667 870662853 727680665 466499115 902800523 685699598 618667158 162446370 718427199 369055724 147377569 432588840 960401893 776403184 963674235 187517182 751019748 843299902 623732297 235210101 259752706 154258087 815719885 424078996 50318544 824790825 436707145 598151652 688597499 82132750 768111065 81197420 151988549 165873384 715554234 111139477 2012585 633274153 908154194 544869797 208639327 630779839 303624296 881668336 687449900 840236745 139219631 568592701 12031763 232324557 673859465 52121526 53767038 363253593 92235367 574718941 239446602 830397844 728479822 465305686 254316181 515314679 671582467 977472036 649665052 717499397 839122041 787869491 596877277 864830115 602937853 486715381 996899224 589896031 802248251 343997722 804573054 516143671 177024516 850967987 132741902 331703595 765497825 460077228 82651138 465914578 729287763 41895413 350986379 301859785 334583711 436934356 539988609 864445924 430033621 528316228 833077954 181002418 595200927 195245639 535107043 648946811 622561817 546776539 740483030 819384284 705419626 84481206 690643706 397606692 524122391 448350764 516898471 479950319 570210836 635446197 555578888 625851565 789349612 819884148 477229213 7743990 408893031 684088919 629189456 762411885 741135378 519124721 847912851 406815089 495570621 595177401 147872208 971580707 673381340 576660892 210293040 440615905 447969864 552980157 34456629 558203137 391829266 555899417 336009920 407657566 475038454 20287786 742789307 493217217 787740532 940776095 544501408 29546275 937760097 198228696 40015256 994080485 609844114 459107630 212600219 305818817 150090148 948607108 320311090 829144675 732844595 455727577 677781102 582812086 717788772 806786928 392029879 128149545 821647643 733716992 800077791 393211006 286762279 31943875 979689265 265613884 628962778 671999254 60165385 641355448 138767399 395339408 767836180 382938665 577918102 645474016 226580667 80754886 183076024 462447483 274230902 470156915 535557570 486615723 218896912 324235573 962695296 613223863 48794342 415058233 267389318 170404380 35601349 201115382 282222803 941165174 826007823 639265673 847845908 6153931 152888008 429792638 598690063 795870942 150871563 497970752 165043815 464876887 301525800 443955277 776230391 983079920 637207663 240752757 504625362 964189904 120712879 855105649 255335585 154351872 220180243 941930489 658608473 449978935 368130585 807611717 18571106 792555804 524024865 540828338 944686100 408798563 788442625 868586494 63023418 345046902 888473660 696480673 764713834 433809738 744373219 152654636 198488217 407722750 950291241 241865309 885990948 513729932 333761202 812510127 488569605 49054921 671059730 539489138 848894646 966539221 625924174 944080645 336465215 516487047 423637706 185953636 34419745 900464691 240190888 967508554 141750796 819184276 204891756 155020388 638308674 717087943 67034209 977821204 869044466 554357012 62013019 416624048 133045623 965499190 134327265 61394797 148044149 229218283 806006864 286777558 935446012 578803739 562230687 161053477 972438544 681891311 127094857 610343614 111111026 493556308 470650049 693697222 934915056 132816651 180112735 743871985 280034209 5119904 421885693 583352850 678364841 889108944 353862578 698650191 829024045 211546583 492742653 813311623 131897735 963975593 942541078 759907508 670928486 550045446 57679122 183788568 2759927 391042005 836749722 840579983 620616891 218829304 283979531 730880355 140952092 362163976 809978504 843136213 635535086 412679824 578935694 776203308 332715984 793179799 496526360 482828306 14184269 171436433 941055844 19039209 93354577 340759733 481498122 491181959 304501240 967486455 923561062 7888570 346907662 788917242 490958665 37753545 170838886 560153312 778756544 701738650 453425105 935070631 686020104 955605476 543799866 838230332 742490572 929234683 477315164 751340620 366188258 521965940 486986708 392293717 323687975 762719765 14124910 196622802 275080706 946123384 331805446 887077544 165617858 79883283 906332243 77332623 366720467 85845536 219807973 422502525 515651099 124081217 683881856 642683280 713976394 710180580 593130645 380138324 552125349 667147006 310474922 863817102 91220798 489557672 676604839 987971613 219750829 374992538 278107716 951949612 640196150 19048551 225763982 382014446 799560454 965358040 86709439 198735936 426847409 612210892 2703079 473633742 361707478 243522674 185958239 480776455 216521555 417345998 617450824 690169656 491794326 661254725 565556455 827323223 752108258 800615979 882584056 406781584 998223829 665693163 262543220 873964056 706701291 2860853 489659867 533556497 455182695 125288716 943523626 651441749 942673827 627551380 765300498 65260679 510447039 35315447 660071712 108284581 263685576 367309947 968376396 730125959 394592105 945090535 280991229 252849558 764061398 827694914 883349293 381844182 616128971 57576337 538858746 67825969 690995488 899463179 196097592 843029492 811709963 340103163 789113672 920650854 49234882 901424806 398558588 35353629 319651108 135362713 644474858 445253670 454705597 425867828 798563457 56551288 255499330 363255310 119916778 546756484 3189374 340196799 886575984 753754797 890806927 600369421 113504635 907801807 343621863 426914635 874523333 231224479 253925804 209492346 142649949 580332184 549481430 186950264 645340901 531343311 324692406 671144013 890208852 628029088 571651681 862067789 735896788 491097090 698483482 871166777 509163168 227529862 842255540 54946338 702947567 213016606 535588536 210783581 911078472 310512954 960038026 667108003 628511130 393183061 868183453 337694173 869671601 302353685 5170727 570778434 668029270 140880170 127222466 732485726 61350945 470401824 859179974 114081424 828115530 268519340 31208256 414565824 597954634 553175133 211011246 887431860 676080507 346166804 861493291 388802759 633189971 869722450 78880851 452548290 48376273 943039682 749078917 155504962 917001021 528485979 529545045 167457027 609819891 922221993 524971521 875697015 231762682 91706171 28599909 567805311 779544453 925021092 562330499 167645144 453486742 652399024 156538559 498471277 564007613 115038989 726333181 805085206 482128070 669966975 395056180 362284574 883024848 50125025 684764834 909721557 571800068 105277742 171650831 705737718 668913319 874063719 634672062 186033194 498096795 839625752 694902310 525724326 332522739 390569257 969597306 944752676 709397412 102896876 754899787 191567520 732949317 149882082 113131284 403431008 192141121 327385446 249545514 791980182 81487198 165971257 880273569 139138522 627490999 13808510 596076715 458870053 583080552 230459020 166777113 459628509 302657619 655070452 925827729 501859380 907031348 786142013 594746019 241916909 347022641 741229912 424223012 239389148 906735687 266597804 96079753 33671252 757631285 608392890 825952083 246792784 78992929 635037634 775664035 232623683 282427892 225421169 171745326 582324971 832992959 1556599 522652109 370136199 592035348 699103785 818190525 770433838 307315943 372952820 405566001 358550955 70395177 847177795 544984520 742522079 730612643 829148800 915709211 624779959 779665879 919178724 997611573 546635224 432190669 839495466 714417271 74192210 445367358 378250124 818938445 646710669 586731083 734790326 454123231 361482772 898238013 846695279 805887821 185330435 870035310 673271028 506832033 473170755 77413416 915026042 436802357 436739706 953567962 827528483 915474513 934380961 689116046 770913562 685310534 443624486 355045220 958422523 64267924 32344095 733607203 778015455 623179228 332624871 881406309 822210819 21945 204843268 819588930 925396534 432611321 552776087 643045980 664409599 223776246 633478449 86488610 845077749 612026676 102673996 994608831 118958071 420655663 215219459 853423039 440625056 413416587 748305238 928222159 64012987 841206955 670208076 506697548 616721009 309758703 480217809 77653947 481639254 802855097 541123705 389344108 654998948 985543809 279746401 959274648 380080870 332161900 376574313 996683262 234730007 588764317 454340244 185175506 514946364 3071688 629011068 438599600 472542891 93336841 583102494 281881150 165413888 400336362 969180046 394126014 340066507 768216691 265798036 213489992 745447101 426741538 661227081 345074352 708544911 491195434 377269692 244352636 126174831 573613603 869074087 550533497 514360772 13357303 334420654 60634097 533102758 661306425 20315653 534991290 131787545 302820180 563959239 108686204 889404196 744488281 863123713 265571244 821788810 584417773 40008309 636837463 434071473 861099555 543490119 325800719 720438562 869946409 896865295 832918274 531936760 250986500 932655518 500828126 852557471 860402848 835007588 846835565 524044162 302887151 64440862 676957827 461361208 279565523 656811965 452650213 546090510 55344080 744678519 525251600 294677184 90583445 867278065 266058628 983734512 797034797 620137374 979029359 405941379 819283594 965177562 197132089 169186996 536380418 134289861 651710812 574722720 400052818 540674645 617200686 532096642 934731692 638113753 652135469 930244524 764284431 31727266 942295529 277286827 550716709 514495544 401885685 67204509 895214583 438898907 29047709 240454319 155502561 315920398 770978389 242774490 861232542 842853267 382387769 467578118 512376244 526797925 594598000 588318102 869387182 272563553 764153193 345563854 233605601 263509015 805124882 347659827 29024751 568652293 819450216 616960513 321506227 896788116 485637721 425917366 920099043 307831727 97364012 413447402 113405467 50070135 876905866 318798774 720664251 542916199 350585079 117973038 226294179 13693266 383492705 198056801 468554594 158298441 198830105 66374996 417477937 106219271 441296538 863370193 413251405 20669196 753412073 22892873 163983492 381744907 701455899 596224962 123709238 598047608 403554821 658191957 143258980 705111590 734295335 955027306 990143643 245730827 849113812 436895200 551899429 146532188 108337901 112292581 410235918 734959096 974979376 558754200 826863782 374780534 880316606 730155712 772727951 980539134 382039325 263252347 553448103 523500665 908951086 468413738 701302413 168087873 741816433 991014923 498109978 135664106 148965679 274269735 312103668 168788539 267453481 927172065 301160231 186663016 822045372 443195663 811390969 903955604 722828571 840041924 258476557 955732205 151798133 853522072 913115964 651015345 720746052 616055679 432118817 317849292 152041935 299527264 794094984 19451744 123467226 544347234 348638128 848527400 744586816 232137224 251741565 281980298 590038141 77236272 478252325 851567167 497697757 804280451 508867650 558680957 170459866 27258419 826740625 895124057 133163750 855006707 601602545 41591378 922367992 251420625 344350812 329703002 148615643 971840625 957838881 469261020 529048786 664186558 407630401 17362975 475765056 449560922 132958930 787679308 606657565 241757981 473701008 835252188 796945787 193731693 276430056 534818645 423955625 813428353 890742620 416643952 218936007 729261511 591434924 474964224 96926492 901911902 178574935 921058530 780468388 944151121 962624378 982640423 315822619 545312744 783880302 812696100 826639279 463010669 305047168 602782213 517416902 70377224 143435287 588579439 722598284 123750073 275845911 130788841 775394378 563538220 996147180 514186315 691817880 264752539 892519255 447227960 150309827 354252822 347438729 310697864 947021550 69676581 978469271 402859688 752082397 40159021 877665222 625047786 872510500 706797112 675211317 977227167 538730365 393775965 683722746 425555974 309538400 129600553 901428433 552106879 774651568 627717306 444021841 613331027 52794159 532873295 673597944 11106159 732066772 840546020 291867764 882341799 325940429 125521416 981153676 574312457 651980946 956885856 229878325 900433676 224321238 771774587 602900091 480266355 655770287 839524169 561816660 882898623 288090720 926139552 391805537 730409669 448979192 292676264 832639910 641898138 99714065 561808881 86110413 633605197 340969203 279288405 162026710 546484495 665499415 299590937 897287277 4235599 548938584 891717865 128041328 882848966 937183109 65020057 797238791 229057228 476722549 579589931 198205977 40523583 592125645 371178121 577577845 428788508 616139937 360490027 510345575 596228212 950645107 884327314 882662263 88275347 444230166 3444836 154789416 405521303 141671485 370745040 666743686 52939139 126187619 122384980 882419489 98689515 98970965 884212139 68019512 274704877 88487405 563932059 557659420 929142675 360557635 116073186 621664316 955035883 744214918 762572666 349308388 274803245 153520216 591825701 727516214 326488015 37617303 502625072 822996161 172997508 564567341 269148635 391980952 392467101 395123888 683495787 668927577 668028988 199495837 484509693 275251445 878290088 590485740 759568816 153004456 640578274 691093562 258020301 798946670 742053293 344515702 494026754 43272418 332308382 766584118 371811170 899636593 650728105 992293685 552183045 961506922 265091050 870577161 729343498 975101465 432061389 83571024 566938348 225245934 283801280 346872757 809904850 902823587 511068017 72198648 915461315 434424763 339186333 137969949 276757331 46821588 271154752 608763548 400061757 661696053 152846793 922007988 108657493 821576404 666183222 270368125 191819409 66499382 837651381 63387617 7618805 520942360 321074420 484973363 771961919 581528098 73440946 724425568 638411969 477009033 191762973 404354220 653273359 733047264 172237414 33719723 601365487 417564181 533022327 315766993 287814348 521431389 3441213 606273436 236252362 568957162 93012187 339227811 154074146 276893020 589579236 406080410 541343625 93030823 361007413 273187896 540467248 964187833 276895958 837414008 952934573 736963853 630639584 679325903 198467844 311692805 661190664 616717650 300225494 528089016 654823806 27015803 131032767 820602483 516178195 351342725 112931252 852041525 781525909 628001327 139830070 795252931 175814880 871973555 193088496 907214652 246765624 128800784 812823496 629121934 107522722 966633819 559047631 921759832 359551643 495926360 946173190 15519324 527292715 83723130 646020937 396311499 1526566 42324285 352415708 16691260 206292059 50933692 516001097 883069285 10217343 425069394 332687137 83609308 573770873 725536438 850298982 521858674 615494619 163713697 268417247 958861596 56062674 541061743 371242761 339729500 140203230 518130702 589197468 577160834 337826896 807055128 756101893 461444006 890928049 618410002 655273273 570959467 251212241 335942604 936698427 144944260 372183730 625314961 480614635 183808551 448841441 864538586 154620542 858370119 965459217 767233345 777098513 509323443 313976195 386989455 341685125 880482679 599393195 756541314 453742389 300289579 359271568 107471757 426689687 906790352 767573423 842739310 55868929 608934443 506327826 405845313 100369463 137010946 701986928 648370236 219472480 685716597 984892679 98574723 334307145 584157661 513098495 373134521 28658563 979841561 242755503 386999237 731754173 78606553 949377020 830447033 931982293 18486343 136787144 545068135 740867085 993831861 5192570 527754997 353751041 622668203 497331989 58125199 672921204 482263242 850071681 588065563 299343325 229159101 29327379 971985737 476482876 515918668 707851336 784017347 380662005 432329254 577459323 738347329 894925911 663742284 494694349 978925435 399522460 85858913 305485248 426576806 742388567 755246926 299479846 910781158 36701780 600315583 103753196 894556757 301930791 465822473 743572355 964391759 270689586 595234662 755346935 765954315 468160389 261416494 207884905 459038981 521485914 899889972 867024720 464941478 582600931 755597183 601135072 961238495 834998433 646403156 949572372 914177001 458567350 255536076 817786662 170795269 243194451 281957199 487557444 832958647 201577917 251651671 562120478 708576884 600506761 722095041 463744851 424496455 177846858 806812956 22303313 709558365 475526308 104155017 403115089 585019012 567178282 633078548 106017604 835291069 308387985 307074209 917949603 721572455 443183840 186397368 10177738 368612251 18455590 58463403 229745585 858473156 238385629 472808587 464849933 37040362 750776019 136645943 561211270 750758127 454226750 627032418 714423346 619759998 57147818 798690687 972839947 204537307 157872161 3004975 362349430 343606436 74529182 727129133 237262225 774925470 427192614 317694271 137739586 838888537 270903895 629769164 588070917 66214900 872032696 516873323 85623203 81236858 55282843 162812174 245011122 436582133 565429479 59927081 487879814 463116567 97927389 375304560 699029696 312232589 656273669 652112917 2270184 688380301 18704916 164033050 285753049 150944254 533692971 318171314 182038205 528335464 831509769 326453952 930390733 87557324 349563743 545665394 763074816 143148856 986135148 35187776 583613101 654941167 837042248 156097602 287262094 438551247 653277800 190939835 348197976 915851837 205174623 267951850 319478121 370207713 912305180 420715738 571264794 921387365 90193987 850060518 390157031 87347940 289478120 765478895 112179577 324513871 987329343 839694875 458994137 891750594 429250908 775483908 348480665 993812220 94607622 233539048 725747832 231888294 191894863 289876074 444823052 673608652 740283668 751392219 66619309 712924298 41255502 834529600 70127014 858496995 497514230 504534077 788675266 781610003 980214080 156415391 865964086 25173846 670097329 162915410 860309876 313857001 742366233 767030046 495495073 498950599 893898582 942456870 843504210 748348923 20630047 337673889 643390388 529727555 27015593 414421201 377295314 625544102 432367113 630043003 41667673 833377097 846130537 108804048 817079027 638138376 569730973 357347487 668190053 549873625 218654856 272369825 819508700 823261863 40373202 613316503 720711193 597747884 549835645 599785106 433196198 502331305 551673477 956248376 208871907 37319464 70151590 385183722 977831388 823836207 585739443 261676046 449762754 664209274 229682881 365088419 357341072 659230316 860247470 209916700 525300155 361830887 581219342 566347620 925799169 908597802 34429285 185325469 76088939 260412647 949427861 809120059 584622402 159048788 869054767 726697872 496426873 800807652 89214953 418231540 23722065 805373254 44392809 885477501 338661001 579267007 41578555 259875816 526326975 448776713 965950954 323284295 437463158 783160737 606550844 204846368 77649982 917820333 391875202 427970906 435418048 217443300 310714533 964949388 199857558 868061057 54008582 424780471 683329978 121136629 317081888 443892634 33227039 745697536 946999729 966242917 523612978 469582437 836698254 259867367 382088990 752418260 219719605 793338326 660313683 320583499 434502326 567734404 518081236 734577537 580492545 555726637 471364347 554957712 672808689 219938527 339519992 717524785 100576099 713653625 662347934 275309871 946167594 995037291 910222974 432155438 234172039 36388564 405022067 609869409 830255388 840274557 863821306 714953699 634875592 235999194 579361032 111162886 71692899 598981133 987045458 796060061 160162795 525382421 248435842 778412455 54802737 442152955 550213697 447427616 155892548 409640711 923878409 935641614 940509056 703854713 607674244 746517704 612140369 367660508 939792259 297147939 206602240 362345137 275537203 601705937 625474551 171835705 36446936 272324119 261230294 84965203 189681860 144656220 811299527 754020128 123418636 858014924 883285609 193674587 477819388 705857661 13925774 930016120 103355020 697258898 382903943 746154497 93174134 568494404 955016160 30634689 391219309 947341510 967448379 273821542 86362800 770727415 276735752 964372165 787708953 408090272 1182846 198420662 494326566 14474669 84422871 42823759 373080434 414376784 553505106 695117096 385500103 925474175 150446642 684534573 434002729 611696291 551548864 910837540 217338837 306813152 908350662 126192886 903488210 760102798 449160899 9655546 229277210 937141903 640116437 776178304 198171614 560934556 396694966 660478055 82767051 113457796 346077179 699927593 135046932 335718082 265536000 363739331 412274169 749237925 85714567 120611499 447903761 376134238 98666105 673793441 348483866 525491485 320955279 635004975 579961821 178006470 527981109 989375479 269743146 398433916 897160398 8238302 252058900 412885371 887128202 62134563 363279916 105437654 732834796 621798130 10737671 948420512 607348939 430037866 76228233 482077950 128941819 655065054 337861902 792996429 318389475 442954002 755647684 463140301 667220120 899122039 561950564 421999998 298759405 531096931 860577523 213282750 773386595 556640481 229005491 551231257 274031289 770466854 955116031 578090809 169237863 300038093 385136679 351708267 422503739 729927289 631687987 506683510 181726518 293557863 68885355 925984644 612241386 286138692 667325510 458470672 456185663 766209853 966723343 630473628 53919937 997523514 785502371 628457539 290099075 106736741 543109985 956672027 385988549 180299972 45695445 786185973 195358915 891335553 955589145 369023233 612088451 63863141 907068118 863770917 254955806 937652388 960522586 447495130 928257624 800104575 534811259 535056875 553885829 755381866 433427365 236078032 32192022 280419366 115106336 989670590 803408919 601209669 151846134 293150627 967620980 141973328 909014991 472668087 410888016 759732121 191779190 681744447 878327048 947238041 201973664 301835643 632164659 859574485 613778283 299585199 136014793 910725890 561193204 274840935 361380263 626005256 410945311 191059167 119267412 202742991 846510234 266310443 703075894 294499197 83924589 825590359 932288067 205253660 774457895 883702788 952583424 489739234 201755262 44632541 530856793 447725530 245086017 832576840 920132961 851892306 340289699 345191546 342245637 575877692 241372102 127373212 863217680 518956683 244244044 564817778 788420741 948427277 703393985 440181067 311156312 530123847 598966524 467291326 125355979 813974156 811953943 506851970 622242153 99021209 900264459 771528060 64466738 302953201 550075749 785560017 124406237 345342730 849526905 927444139 581866182 895910516 955380440 485244128 765386902 783025178 320976123 683475873 338435859 453995839 580900022 655311652 177504762 83733122 352859456 285880715 341826927 415839081 951035702 52676543 292298978 745623627 81473128 522062992 15430090 414568848 610939719 340207530 725613126 748633178 527820522 607449209 234585520 420601588 804592062 429250404 344523382 552141798 242446456 145334838 434885629 372085726 522566896 363219436 408958931 930328592 470350066 172515703 675997692 781550255 972939943 505661288 624653327 580592052 553335235 43019653 826684160 447925659 32106244 389728716 492142919 962813558 183956918 706157358 465541987 445597521 860148405 53868681 831721864 927209765 26868505 153418897 265267108 320806209 541869938 863881224 670609888 399919488 350857799 452060330 387506427 409713179 477168252 212600650 655063705 522831784 147382357 814309557 370798669 395570873 264417157 345901535 856412032 186956436 405922620 770336699 185718253 996717237 844530960 645961649 898551295 331036895 745110723 833213541 651368109 771071375 131426272 186603719 318919825 303616135 871394934 680131032 628175432 264287146 988326593 766544102 609593306 788987456 708310278 66723385 952881583 575356882 710431196 678183920 744326045 401646537 796903411 355603266 995153069 172283020 861499987 110285487 371307923 342154955 832291710 204097354 303907638 973154448 180156037 465528741 347419327 922047423 699894837 91585433 720372489 60628096 798048421 709534790 997069556 231096297 652578625 312248143 122069362 403668764 974355590 463496017 697125354 256223543 273890001 184185254 195413265 35928591 900575938 328629078 735161618 750481948 609386239 498735663 141416522 175839708 928657133 289799774 970560701 504380384 100021637 880079347 678311653 7412219 57520295 360038957 602101139 400084441 627466056 844179934 436845149 219998598 99668065 215249278 197736151 67116890 708022293 451761486 208024515 368967798 773625113 772129487 967045394 593834121 589476432 18162671 216283950 548189497 126413435 429161285 731464754 755234632 27047620 74363710 909657660 389970988 483440848 88962856 730148428 223502488 614469528 693008429 380099824 167949726 109122833 397122662 728352995 101884279 181165353 111603163 33536216 787052123 354940796 522033137 378115594 737889990 832642771 872739513 696421329 403771204 145125783 726558232 882732290 179235995 618577889 566203768 237193832 39795465 607984226 537451683 803715864 780643436 15169823 364864843 402921948 217133872 781218968 55116471 625950791 69185915 888405647 169419572 938282650 752773340 422781774 152259727 320039931 759262328 712629220 902627103 947004805 321591010 428940546 871482841 577946755 84800716 860124175 500463510 970608967 83988825 279369360 335836475 248728187 194105601 919617645 116981121 605076774 854451480 390715788 787055290 711209881 108667484 89896688 30263316 961345269 512483808 947111235 283704908 221795616 941573735 803625007 109487884 738301548 37179857 303359310 2803133 356878217 785715470 246612714 895424964 672039527 609880685 783332215 938795282 784400938 191707532 975436608 988952448 258026513 312960705 200495518 221903387 641812189 163817415 107909966 642164899 796932140 645148492 170816451 978278897 651027312 109296235 528863301 52188955 234920440 861004777 485406575 680713972 992069032 927568052 193139179 474249642 767645425 598887364 791323812 532635860 901319072 674944014 95436511 605873048 295172977 533561599 650613574 483739324 863369509 801669351 731518249 732924669 620934645 549200503 21448727 922029050 78118699 190830290 831983468 35742518 736808421 336204567 55179221 658740919 612881478 746092500 709455082 289412093 776787328 367226204 223413081 204954584 55429702 247939102 18134964 487146847 567134057 372502303 448775980 921298819 411918300 389741877 953828523 209917986 948594222 281425170 753778417 645733924 580146605 661076619 33170560 846799458 184543132 949219049 120927821 782958197 808257746 418468763 606991013 32824458 228104589 887974786 466069661 715985354 788809218 741395554 725270107 954508562 279280193 533669585 931095165 648525100 441176170 577280122 754596913 282693664 712642892 219648501 581509837 888165969 116938340 903841942 509302596 537298561 531278746 924549574 527314794 515989310 31003170 319621550 996356844 365719824 894191219 369953726 920015206 913360375 424118119 740227052 781795651 438493688 229608661 939074802 585750030 5910634 826908472 278793658 12516996 567980923 500042045 638415096 936704872 398744515 958273452 554192589 61722208 587575598 176676996 219804969 507049911 800944183 139817612 296448728 934289041 596534859 831631612 830929857 536735678 905116506 938698637 646327281 674929395 828739394 183869667 941481692 928537603 641159194 673353020 674889223 456141847 365055217 475277596 208807336 854273867 101655205 323540543 863605769 321893618 217168176 674132525 180081212 520419618 766710392 610099699 392270741 296039624 512704445 569028747 978547648 736064110 684515684 110513956 802250270 872372919 210807480 413172110 696880804 332279489 198565492 133108047 660690137 997999266 267342074 808823030 889538692 862393015 263433564 470843724 370730615 521997673 441482186 596776183 969900550 204354033 201853328 22308626 640977582 443582702 168442322 211606591 121880974 862916098 570495824 550952688 502141001 518279466 858249854 490119458 143082060 948787601 830806948 530649332 391022419 749851359 154310502 116227206 112715012 887518089 109899081 193005519 849313308 645638285 826234925 762692007 189844804 352524596 52557625 930222766 540263599 691068544 803731763 556494904 92340103 883348583 971635295 780286381 561666888 173808638 179882341 696777314 688837958 952404870 263187952 747228272 130882996 73660895 824671503 217949983 840226025 963111912 368393567 259417681 670681745 783776103 59075568 311847654 459529176 8391170 603898765 343240241 392151828 953822741 234814024 898848828 721284370 535879929 676179876 675062433 512850922 824577148 514974600 984089218 498587908 125753753 133269720 241656292 181201633 519357625 584883313 235560265 746476736 407051659 774220255 837233330 872639319 997547532 962694217 362631165 832974076 669938248 755109703 498779925 102614880 832270300 685752853 824545926 149658455 352504107 637236873 511014998 117889258 720165416 216260811 415313442 84511146 102037275 587326369 90295683 302517021 215819174 660282040 226914389 646141094 473501175 832630852 113845687 706661127 445526503 417243852 407542376 356401273 263527328 295727386 282583497 880215476 827514339 910489716 197334351 484806721 722422803 499927662 273445502 37649919 876061921 12653692 257684511 544149507 912740043 763990127 792009214 452539146 879838813 587576757 912000584 538623295 229716013 451372155 435152291 353228941 513088399 804209004 233312859 78379223 733330136 736154505 569228229 94333431 522972602 26162466 205502088 148945053 755039383 547719198 876027042 284218390 558043907 661297169 635778029 854572241 322710881 494607842 484466232 811315475 74947814 451021700 921856201 561925768 621868276 345598160 913314991 851826500 483875388 988098414 490987605 364236413 796476643 607760464 851032449 385163935 2668781 12725805 123497934 104608533 334359539 231536105 536830447 958366546 673075433 857328408 834049150 229394100 664792492 619690085 247334753 909612325 308889413 582772266 222450 254791503 285735292 954699683 859943431 583692875 652921247 466693316 380573956 682873212 968348331 664617313 954292575 545817330 327525240 662767931 221049148 403056646 467416440 53364768 460857034 140002589 399666570 926433679 857562305 636775887 833653566 64150299 663548347 805203076 819787370 684971939 581646963 284416807 408426290 792816584 802712160 42289843 519308351 679623191 47023716 814850346 391889476 883278894 245306618 598411587 240001990 232261375 340428586 819840983 923174265 420306749 780862173 519272717 312293963 214951175 589032865 250929755 947502094 383565454 327822893 710296562 12718241 197882227 170685417 559148144 657653752 55943737 771747599 324649234 784237491 693436859 277858123 763653720 1944362 466129731 283859903 323230470 833972390 495945988 269602285 826851266 803722948 236626374 333178431 830915210 455346491 115317769 642531672 86417362 667040120 204037746 824552048 716707610 510955191 343744406 871694851 937599913 344541873 582886974 915760026 590944663 649606420 182483505 16334129 950895847 238670716 507844888 459222395 733104677 806686452 559207560 364234125 808361030 343591421 811062417 458568914 956268359 787850213 50802291 188366608 522066776 488382452 385883192 794832459 436900670 820568198 76925387 916228843 548233243 594366265 194987521 129609462 296949947 887306490 505559540 966557862 526380836 564136246 460572472 297286918 134508846 386039934 720928791 876358426 551732402 33343780 146060942 497317601 333963242 894559098 423861978 523981223 878518434 922428330 379806186 523356758 178746020 413984978 697530290 725725474 684009638 903475208 687808746 300768160 795797242 239682529 810951878 597879543 934775072 103980333 888995316 520626740 330639943 223255425 602816999 765636737 976510872 342312666 577394563 133356010 293900414 941126165 81922364 828558506 330058605 665528209 349443710 52412719 940373732 352623213 405957398 871334060 529222625 996234391 882960801 605128372 634176637 636983971 875499198 17330372 187700815 541447061 11707746 514762061 627376471 459554454 441456303 388873656 490965162 942417120 589833040 773159698 44064168 739054811 792076873 805081220 779918997 423430341 214140091 741098306 157457664 159929473 13348184 598464266 731541946 241974684 588980385 846353943 767801616 767066756 793035716 410347813 758863247 668972803 264361048 348453154 300553900 309879343 673652161 952260133 22092678 546001002 120656231 822211146 863976740 964795987 992777772 308126137 600622657 313719950 79671368 634112387 876096943 300874803 462788629 653474839 406175785 654491091 317180750 489682602 836575251 150976818 303961496 41581886 459854006 848165591 771426014 150613179 726269604 377700816 686390875 349990222 917347232 259179747 614418525 381185747 698370961 89912131 681419435 919368093 469222565 515962081 32903666 269214545 246655371 111758619 813883324 860376952 353198418 856652108 815511684 725286081 882970872 90995625 797545077 185607760 179563795 824060504 682787012 154843835 627338535 285093600 304727347 772994801 549569956 452671417 389410074 728300381 813186904 33935989 791664991 281975386 27190730 644422674 772000563 859281917 88401752 394595463 118171123 225791209 499744140 506156051 372654060 50249494 504074824 669255416 163019567 880426890 781236180 7008184 515170411 65066744 514788242 147525490 148125333 510287938 700961853 620231868 750816124 667058487 225374402 360828883 500467667 624622866 131948170 718551462 662586347 182861627 992756780 909076110 913594143 754061693 776299041 536289828 342071832 36184388 494357839 714494924 925218400 698311635 767258323 920049347 438248001 232429368 294741010 552634352 257968665 918469488 590256543 297430095 739841606 709938264 475204398 835064434 20131696 784064440 498267794 724842277 731554081 478227962 330391956 679460136 610348817 689905620 184111782 883272278 700379479 256843149 154902305 925966193 162215423 144545616 385437842 461664025 569853416 821922401 941271767 300766060 305682792 544600688 8457887 478418800 713360369 542474696 727313846 456724608 953502212 488158217 299897303 158881905 203637368 262612453 120686620 105275017 655128017 736055400 516027332 20416749 916783835 616392707 365616686 21994051 155686015 164178496 265091627 503765200 634473626 582801333 782994930 871344191 268837049 82851525 230394577 150814308 99105207 563099390 894287199 99282967 170932357 314221178 401693572 608490644 136982348 133124367 917819897 931709139 14805830 204032031 878215490 163647855 888628911 646658435 957680542 377037958 902840870 97814965 503535743 368675171 763096890 33093622 777132260 38604676 945795135 329700369 41555404 325145637 370807949 379258417 579455826 80215237 73369444 421007514 212680752 273126152 271836265 332327364 401964377 273088478 40397619 340584460 390202360 744405692 374228616 11743743 428469852 452933414 747410576 856252118 195022910 457253175 648191670 505924507 818686051 673278946 362248627 575635722 481230996 549205643 815670596 149331760 504024128 874502791 447170052 409017908 206064058 569304691 108330356 722694621 522648419 500385784 164611967 76751854 275391475 692329555 171494011 422854677 763866032 26917935 438109156 634868526 729615061 185363954 428629085 670942506 505604066 973134015 536787378 120283655 353376957 833066984 433882428 772151544 887400715 654419054 931626076 198616193 871216816 742415293 783776893 976778714 767032967 389644203 477120469 347290977 230725938 135490764 314517450 740852054 909038916 460791899 866480600 261460547 879701982 649051718 712472751 187054545 977649665 818795355 587098222 521974525 968887073 329572981 697464941 931400338 180011999 258374929 918308470 929256881 968596807 335042386 726771789 362833497 696209255 700120821 729319635 53446123 224584856 637750773 427867126 276941733 360197744 433545848 16396816 645243393 228604783 829787139 762403403 662187739 804905721 858606562 461749853 482551342 966365682 560314642 185921962 470853882 837843644 571761131 393535771 62252947 664027035 696715035 239781836 131746722 717492857 527436844 21247719 611175770 121443137 589011924 52192061 252802290 677179068 626079114 628746727 491478548 461966806 909594880 185587540 702648549 230261425 826026467 413920803 28810077 685106030 626271183 688036070 162612684 602305286 845931796 974446210 580322507 303912117 421956455 330572985 76775923 942881095 81322886 748326331 613676422 953411258 448406316 257484483 699713910 718194286 46503831 938314018 933875654 417897128 850682340 819307397 188575939 766541966 229121580 315234562 671939854 385332184 139470498 154780185 645040663 937635571 490424814 356373183 501589620 348447191 899022062 172848218 86412345 718341555 900863382 621534540 729611843 917575978 980178719 43811024 129109903 588545175 646492689 237013909 466074175 786402217 916157408 758924261 79270173 346505152 514861530 756620750 496896268 823542299 141662590 594604023 303568114 971591154 977100423 12359665 484435691 505378604 9287541 563102948 555438273 690346949 280545862 717828026 980170458 837641830 596013495 260819000 432637889 733725578 142755521 372387587 575772809 326153425 116183148 219370020 960070943 81165437 970906690 733600804 845702043 190207187 675606568 24149735 567318572 325311485 23145598 949792187 71605775 788344206 801314987 542210005 143014370 500682363 761993189 190777928 465207359 436699031 575973850 610118859 588680596 321980495 791909595 671660941 863065543 442327179 150075462 760996937 910868415 775726397 14767315 893842948 400351413 33574562 498149422 363888662 559142260 207751639 515942248 668680581 776433475 263840795 148842997 350682252 352481002 30454322 815211682 577117784 477912675 734366910 657019958 738558567 962347069 874910832 959069936 115747748 29539759 17401994 474609693 368509095 622596275 702125907 439398888 171660862 204597285 957457113 215123263 660971134 884882760 404436476 108294614 433030480 2281868 336484556 492384954 762963211 280730182 32765148 341426921 331482036 597004340 878029447 629974499 856003459 920190977 706476316 390302569 941844839 288415915 490276184 75527567 672034574 571697647 206110768 218000076 251760228 285480996 711402321 568760394 767640456 888178026 708699407 417935231 261640058 234483527 214017784 982043652 729432112 673110489 656347919 216023283 342896051 92676797 74958340 278725910 204845609 839565382 860928379 235136154 722987976 448628207 520929536 981713522 92431494 908431424 697038343 626657343 386721752 733259112 233318724 471495636 997893497 277755011 888529232 530241191 831382016 590025063 476641215 986755452 128054067 103260808 59585217 7956883 160277385 394132784 94002304 4841929 7297594 14633535 618956193 160451367 199704673 165588871 463362080 450069349 467408496 38919066 357396254 356777519 928781294 301254924 873509335 725292655 30309232 587681622 709686439 782351388 354266642 90601742 581453112 63306075 374521907 369932425 909939240 485448211 728747972 106738800 120757245 641098669 570353451 903235659 895065413 151219140 226300990 78330822 851579665 941184063 302876802 713399846 70033667 478074161 191752378 189648474 819822355 322946494 712700036 933897809 83766073 946811239 230191271 797332528 427651997 844095628 632932566 134418434 628557002 523610858 460485840 249294722 785531158 56192509 108714650 473766067 413641148 671129028 660588716 447477693 658512898 252346141 486956391 281945811 698979476 525590430 260992628 876095191 270491266 13183053 276437830 887953474 837924509 942300335 305268609 895341273 956879371 39398283 453517347 335442355 633150282 672170439 174630256 268710392 107197493 873731410 620710306 42551549 924150546 385783357 410323855 747693230 378863716 916412769 235341311 197545433 284280563 141838518 442911369 383042405 499730144 961211778 778652129 114644786 723881936 274443953 188986542 781971845 517547116 767616460 411138341 461742490 718837495 603844823 824186440 820483652 262141091 23756997 512810910 834223455 230764795 661144471 43362582 775532497 595749249 504686511 13852126 651476678 185676571 772775133 911332956 426091935 865159820 396455547 273259562 561255515 900565600 5511771 907095659 715888363 847382525 646266234 158325728 918521541 282310463 440532813 639468357 708165398 73589675 532431739 214102383 465598558 924087626 651143936 365206097 442620109 482419067 810494764 577910691 127526682 507808091 934168499 607114641 272182502 422144543 574350611 674898125 441591243 971540381 358386588 381684873 475273068 826501666 524110071 812046100 783348095 599095098 927904152 182289895 671777598 742915057 416571955 490315253 938204274 325693409 847410563 121036652 664468454 11065838 259539022 311498959 136161931 134713570 785263879 22627561 502176705 86414059 913810326 119104448 100020805 512180422 964230868 62207397 988625825 115798199 475957848 644492670 875214786 149938141 503974312 402254437 245316544 116838366 886951218 936727536 883903323 108983637 136682835 320603920 429362298 680383345 271629147 901001999 75339428 372934372 371132372 472795101 121272184 406205670 992592255 338616519 103761901 560303009 960176873 379686799 447358088 950152985 121687497 320554599 964411904 780659087 828371869 3566643 175612153 56748322 471776290 317442568 562777067 269334338 464028478 856130281 503725907 631130687 325026178 174231819 146602667 447878686 965673274 816959142 501586851 782675478 359897970 287651570 442306435 489286053 708923087 763071589 514287880 907188656 146958009 181988221 797993572 788210562 470009997 765342108 370110082 701448556 401365497 833999121 1087423 818864935 189864505 226555878 945120204 285275974 82126079 64611 625619137 364168141 734010753 792150291 519511774 77243907 62906225 90742395 951000277 682852407 191143970 777851056 12831549 480508797 531767661 970093182 840814797 342057171 418328044 685935680 833405869 741597891 474454924 467069822 167529650 606100927 862109483 215724576 732623143 617798341 960482867 79213646 290062323 668099315 878881913 902914523 888477018 737454947 977180997 970646355 398937223 192378251 887746312 674273852 696883629 932088014 466693515 432239256 979391044 442947554 498346272 986965787 547348680 140086379 658474882 455485319 594841927 252970707 480494528 187331511 602676462 148368892 561845900 313227535 884301069 371649419 546571869 594642741 447827086 706016025 531528123 146811684 556976675 139268962 830081210 537149704 546874892 22808663 778979369 87918353 597174334 326149169 579174300 713000791 425385634 508916391 606390713 454203045 938625900 34894989 163351616 391726975 482930782 291321875 504983147 372070033 646181468 42329890 221485348 95601048 575408311 643345806 390397584 81808917 630980250 73050607 574588671 425782271 331033479 86696897 480981519 491170449 604839731 347766492 531390886 810385011 739180022 653116725 633753760 253580923 806915393 159491921 197536898 237936580 177862329 136186723 655629752 70946124 421905108 98736298 396256429 454105606 532677260 309382747 195416301 593452360 137714251 290904721 248504550 848542784 412581918 298394010 294955324 476254193 635420493 946975659 814189542 454709029 5622793 341443412 871143273 451177461 438463797 804452947 554619006 782268626 846595549 349546985 322430882 974398031 17135494 698091986 643685550 937987766 344333799 740688751 348120217 838771192 67258276 712769989 153263349 559619544 615740543 399079101 962310812 726271943 181793048 93088146 640063365 443133109 877528108 135287550 875400838 303338110 394357419 521559463 828890659 454363179 734574786 671600561 98852642 495419648 368224166 197650786 707124796 807647303 986177887 347473671 352002393 71026331 806274164 332401441 152179047 235825206 13076669 991826375 577692196 386008378 569944548 949289141 542693804 622848087 61663056 446647411 156269529 773733300 374498122 614653686 953053067 574310247 150534327 519190677 437954025 464675125 580485035 107075334 557067106 184032135 645689419 242660720 81406786 888793791 564938859 68174920 474713063 919303739 483765538 945240876 204206530 791815702 680200733 429970510 511317463 569010524 26995135 710053024 564201971 603386755 10592022 195789686 213689778 403343277 222141686 582672331 975286155 327672755 810011315 995882544 718700934 397343551 400727433 829715440 985985660 436642799 615586833 837578522 396667439 232504148 800349142 941331064 880120002 944489358 840694027 231265625 179246950 373338880 831048047 408622940 288587599 518340117 752102505 551139855 757495489 788844694 59759790 623836028 767470958 563276530 186122895 316145055 797382324 889850651 634008510 371256292 568776482 357063793 254081176 839625956 113906479 271237475 574545079 816900007 597558277 202472271 784941384 731887041 904012753 787526010 612056198 776513918 251447932 817852532 64845473 473037105 26824286 85603427 324628097 666888965 587807751 361639094 767149543 236397798 665174356 405093276 400620462 484406446 107982914 959207738 564299238 187373450 854660421 702169032 855946787 856412863 569231309 973650925 29589390 89667541 346982758 6062773 290683046 572316812 353413158 79187023 736148080 32271399 748198860 615931175 819798970 778764419 434518099 883798304 351736521 631611658 452950447 15792267 193006409 215667252 615850908 18746868 769207521 873229302 36614995 313709357 810304892 116911543 772108980 33077687 654479321 429772941 931428185 773838448 811786432 675348254 327967262 224702385 547984222 232414002 891332842 669878334 486616175 258860726 754723598 386990319 534722647 58128521 547882784 20698181 734734646 828459815 533457589 203700993 112688292 280494538 548644918 604368809 353140722 331345687 669261854 40050309 708767303 373472162 195500969 236679268 996513527 849699784 168095315 994706037 991179478 867192121 287234516 687732262 853954023 616953264 314980879 125036748 318640398 218672290 132917421 548378410 743132216 93297086 632883788 911160270 973495022 371688990 718594802 305566356 608604155 114684242 116332547 333937240 47072620 116118657 871215939 986707323 21796248 114790739 224218450 929807925 624198675 623892641 697289299 742931776 227069575 732187789 987972884 469975662 781041589 496203122 421543241 292685159 41362898 258686962 221974908 185382806 790090423 498354270 234482283 451732707 681162386 415911437 198008098 422050219 899148412 671681843 1052188 65316980 332896708 795486319 351489636 194082734 292707954 608835199 168926656 553869132 505918772 514527691 341401301 348472656 436805564 875419719 918877586 25813979 875782582 864846740 370549017 653851011 470215239 731531482 929921602 737799362 599482526 435282527 657501175 765601135 139108754 919210082 840270864 565266164 109320738 971312859 487797746 767030240 835145862 831944315 850179938 703341626 624919449 63940641 238230216 774847937 995036245 629726002 911266446 203239855 676912772 124929538 377049433 720158354 847594243 789510187 967135046 340743839 782153334 899723242 537049059 128444974 257075528 602639542 271886569 631463518 535044541 9356765 107601077 146650776 437195818 254934607 353630090 727980783 851937211 608766536 745471629 83340837 707105646 955085470 174928870 480118224 327019826 614762964 77169189 808966400 938810834 949714578 429240777 825787319 280859133 302340197 472129176 57442586 925323693 537636733 213550850 831327338 496558055 836967935 432739756 507113890 61797319 547104645 670197659 991401439 680775347 525602793 126499240 242229641 817974273 927502444 596766624 412397900 909688175 960540391 864753349 275291691 899054317 756255087 159146885 360897727 247475681 491451206 423511093 982080476 269749249 840147280 957103359 352335266 492693684 877438075 31043328 945109057 468750675 931313071 24209754 632990850 897959547 666008523 216682463 910084881 22866942 630706094 436576963 868804307 310287669 991501407 579184691 577065327 464551600 914910954 856985987 350378917 853747612 329605333 228486974 852961520 371127117 201288925 229703170 197373258 518092851 763823543 683377998 686836452 927944228 564338646 544738680 906468540 725654669 978461279 126953991 722762136 381826092 551635195 101137763 735646050 366396096 455500447 553064276 258926934 869160939 860254030 877791968 558428487 964682755 439117153 488159151 492263791 265465515 752883038 488011806 453331844 660369304 513348649 277127362 470682935 709536897 842220303 503380162 556970631 259703505 732665701 962607593 917554932 94116196 549137316 281849097 324559061 332543366 748897003 760192364 218823784 73647308 31213728 191799125 613472709 498805079 873624376 696183445 810419759 517172897 961039267 525748590 689587345 437787602 117612595 263013561 591783544 652388656 863694348 143920090 985481313 55219949 621866109 722263105 993367126 268202552 946692662 521269659 619582274 776029166 84803457 668529427 911227989 985873467 513093288 716342733 263017848 107586810 794269031 61385798 942993857 648024452 959293044 456430731 691830250 288238234 86462145 885873535 581730315 752792741 865095309 349500098 920019429 382500854 263495870 748336365 909308448 472673803 534379076 491594743 513580927 414505822 669052773 230658418 994253437 753763995 751056235 559842934 647371209 793772303 827116442 154382982 974507477 388209896 257927846 412602396 115909224 487138641 323252984 263712596 535602384 480056710 90489930 810772162 762320014 399981090 741465393 22470485 304391453 921918585 64033619 160762644 414215339 200012823 737984796 474269528 572199861 973011362 334884622 685673800 489074420 775621512 821042852 956413604 29260686 317827418 314424317 950688479 172236809 513153971 577718456 318364270 260384912 352129903 494180025 292120595 597238817 855595274 861806892 656572677 812457899 958872698 825422883 112570295 526440505 82478085 463072624 32899343 590317423 611827137 956539932 133283338 219347218 205781455 782220163 575336424 746829468 829926968 444645827 690985304 147650227 246913448 915825491 930301821 427388581 944023371 297463161 774024443 481005923 386257609 302584748 75402918 201025149 21590956 280598384 785440448 497217981 679064653 541516628 831509203 517639368 981273797 686364321 835141558 941917414 146795234 793747732 456829354 428342853 519452252 721421267 201178030 225760400 83576440 70174762 559945849 505312062 677060941 98327722 773896176 396843979 774211240 337185122 28784960 236682065 514093101 836842282 328667067 136832843 513575296 386669470 973936396 194232348 456947816 619271962 149994888 412182947 520070418 920697945 277601383 107870997 437887186 822847577 511141501 699547912 126442623 781353278 560729981 334532024 621607109 596930288 697295836 669055895 903134132 398451086 644136599 113231244 72961585 222951121 249600091 871309125 9823665 135868776 524110274 159772785 108578987 994938586 907548993 140306138 978768645 62338582 875531380 514803850 627807073 417909658 975775104 821358340 142110343 363218983 714310550 211713271 294017114 572378376 389253675 895377045 66235712 765675188 843044336 215717453 975082654 113396554 792285939 278420672 889057127 762777264 377587215 770313260 143706923 364471452 820790574 496159232 871096192 823899232 692023368 45638059 610156667 55601804 559208906 746833050 256851398 303457238 793260691 866877987 546642563 162774162 631435614 62158110 102181486 927333767 907922593 982343890 96495410 192416258 992526848 774069775 411086470 169509817 133529963 872811032 220424572 671853287 972296739 912758659 978878684 449082516 920644071 550418856 795966188 895091044 510731052 987399449 132421278 454167777 625810569 587811171 619375920 169857277 325719918 379440136 908175357 337479191 759664773 71074882 667070012 127031387 290826254 94960704 133350966 574759724 985377165 642265528 221393785 774861801 398198144 350887503 13545286 704976107 140008173 593526834 647206207 262875898 940009029 71827626 342616440 833877620 172118251 521302630 473655537 913606060 807805893 930200856 122363400 257653541 646724302 920235636 774454100 652461842 467238782 199644093 228162555 387029349 685700475 404870283 859974000 660112317 594085278 99954830 554863660 115630640 666719472 914682973 721342771 513464065 179629855 103618916 338828840 978228048 312891413 680730806 167505991 465332360 30943408 668929877 818954897 296264886 25864578 791162272 924679669 406528165 723516763 150542570 860853811 685981172 347004386 438547292 524799382 86922503 65249327 172824541 356153706 230315350 203600037 525895281 424473956 443519605 147076826 494875143 499812780 729467825 344087341 218354842 437105583 432854958 834859583 213992824 531812544 937075042 46672437 684815344 366185563 767306472 755694966 7014784 654281577 345161072 423851345 868180022 429848167 533700641 668973562 503746488 582839470 870350869 289163731 307407962 167950590 915534682 323138589 351070513 788731293 654331659 549958563 451069312 584092153 717039857 654219627 396683362 696412070 402551665 503411455 400995332 348282862 923829135 869686462 946277208 336674357 583548881 86339237 278183868 386161589 356698761 891331560 337600832 156913498 865947337 484958793 320924427 42124021 86526831 255883614 917946875 257947086 135834980 782310603 938922119 53488049 291531626 902590976 380569878 787967793 190079265 288357537 85146603 465524560 38019515 174722068 827144908 285640746 58120309 740946038 977836651 866269492 776568572 32338534 248871035 664474388 523827032 934256789 652929750 7974970 854549942 269577798 813694277 594049449 893466188 286599790 169211330 823021310 58847420 975804502 377939992 836788721 654555272 165594139 240719735 753538286 618628607 945425547 679825044 534231462 745637816 302944190 586115851 465154086 751745301 587257628 277224685 653531726 717575373 695297769 917423226 410299133 632584307 223926330 417851933 645349085 559074287 199839188 488456623 714758062 680621538 861308926 900357895 474683147 91635735 496056807 775569415 210556416 703460825 48653012 767486187 729947660 627890403 494427666 223748502 388692690 591724188 746168808 831968366 906014793 905455240 737597661 338867023 715952304 262213787 129032984 370792206 46226723 311220135 590120447 476098327 378042353 608274266 219910224 445523222 756572165 599102449 74038013 891446011 319038776 216503876 26027656 81453530 242223514 352301631 36383334 377124099 145510929 37654683 133282966 824422878 608261546 13353375 475806980 733820510 398004147 208213765 881189343 189698645 521978238 217769635 416152618 691576236 470846698 402573662 600704879 158892210 717390893 144940496 589427729 152611297 548647931 156842649 252303171 88355309 777035546 540779095 371755676 189481534 5377041 224719133 368941635 683548528 297272389 52052054 621713747 151734826 734218790 239719591 793353279 227874523 491640091 291271314 176911903 582329794 440084534 768400899 807906598 153160628 672612584 256257884 651875341 418643549 581811928 724401990 376427440 217179544 568630493 421457883 759244204 204996175 769246246 8351843 405230696 601933306 950866181 958063315 184745258 803105040 641801211 322259921 137814178 535481931 915569180 481776004 301883872 273256124 453571948 971920663 222093853 475832721 246935532 705803530 208513418 331301168 784142378 161433866 591689291 923959821 503193220 972927956 359229166 636938958 897838774 78589734 586450501 221604438 541441114 795316267 319752557 595332553 153455148 731777243 542219542 105342760 154791275 863859478 789876925 766047699 609366084 213272810 742030767 352726605 533115813 652526757 832492963 976877740 221891514 893584428 154758771 539943606 324363270 674445068 664857386 790214958 348753227 370627686 486645550 516321050 606040019 969848255 698063140 455118134 247893301 185540817 784306623 140248449 794280385 600226256 918692133 651337751 905812505 926447721 610013976 636984949 475098003 731264838 665656496 909229439 319330495 762346920 431936941 167320660 878729514 511637310 554023132 785361421 616633297 122946773 310927766 775796597 266407145 894593201 562723761 151310123 858416981 965210109 795841825 919540702 687153966 421245778 802508850 201895269 762604934 602470033 884380554 659566388 907476541 276226906 153100873 958747989 574092761 34233732 523498898 135447247 256528865 578160919 680864691 390515517 400097910 983817788 148807793 186515954 268391408 322460068 963454979 785751818 568031282 985543515 854341554 87481786 638146446 743167712 804732704 641603161 708725324 983265510 877788805 218470794 338725837 563776653 351472013 710236547 633067448 513538002 133638685 824350404 543820405 83020641 424045592 860102555 140991577 251282975 528688264 736909396 890565824 542993937 182435616 948802509 247531619 507042287 434396658 191861476 289542928 58157571 812377925 174218832 102282956 342412657 83330530 482665375 333907468 43120944 166283231 356057533 750084648 500295216 247960100 14895964 441684609 120195470 367576627 908912623 808988968 873884010 767244472 942336620 521376208 623871181 990835692 269905466 462385914 5222766 517844566 826280117 571192764 901974933 616462951 368649990 820465997 117406638 964785716 74618747 772271625 699956534 86190299 189888031 555465810 74258847 984631268 447227739 533971607 687526316 130750380 213716382 232770783 751239428 310372018 512963910 208970505 564258048 962535569 905254264 488569394 566776977 929544629 163853438 686725806 807771817 416004393 287852315 357552621 830333023 962085909 605392078 693177189 949818131 52863276 159088506 834897881 110882905 975482583 639613338 120610669 643345858 218734777 753741828 415355655 248363374 393550090 832499048 27329099 798278693 683818089 98034730 750393942 483732869 610944739 626114597 460618 104376593 635805611 576601630 386243535 579363738 565420949 127223084 67621589 37210747 368692624 33102175 773566666 787655608 21781465 815821881 841143287 704255216 292048370 771388814 250910733 873930793 691041144 812093437 777669427 355535217 750389338 465162335 476040482 122743449 539472876 441354966 848266953 448922761 265701290 923630221 788955553 614665234 570849902 788844046 653324390 101887035 709931479 386546678 210942161 779615567 161065433 486965451 729295795 361255539 624734458 835038921 57125615 361218974 173090147 579395459 403658995 161367323 312917641 453924728 658970406 673694426 952277666 138564056 144612152 796679835 636863167 789664307 319434088 566710415 469468113 761872383 675819333 250855236 820856593 566348143 93177224 378625680 33660992 905956196 886105348 518006970 179709295 884877325 406578748 963507788 327005014 105476391 772962943 146071529 914216573 820001002 668063833 927569343 40935936 384345216 694604321 207265492 646797840 736762027 836207135 846105095 907060861 876218586 710865979 142526721 441227500 84828674 986634008 994486445 783260455 525643332 802508489 376281113 596398121 298697165 437247353 331279145 925793102 808643646 831989604 881806992 168204654 37113951 369527187 6334713 223124592 366748214 69669077 3092681 597930620 414326235 743966178 262267412 317538057 409820946 276853413 272380835 165871602 856934793 517105943 857428287 351550917 63915168 534881243 703920060 141614511 743630817 316428031 735875419 501739104 724057163 735583812 927018410 156541456 83727948 527873506 680057487 484784808 572736635 192279548 272420194 635048933 49590142 156469981 369508600 525999484 215761432 429835732 229014669 126890882 888589908 365213603 772380135 491671368 198816937 634182053 342787756 294040216 474914433 952168833 449508696 944762664 426463022 765983346 396423370 276625022 869852435 270313430 101182020 843210998 465594265 497210900 9491696 677722684 764110994 528908366 986439175 588400906 97734788 260949335 319880640 143344753 126413311 956745361 742560423 997623816 432716588 211959008 137912169 635276473 764407071 146057664 296552943 163677565 623465674 312329949 740791955 714307355 923923908 515758274 304125463 454112482 988749598 592775181 188786676 216607758 108821497 838733723 157334902 404429165 660617193 172611636 245782565 768241382 664735121 68635523 278481414 323693292 522447890 714206107 874406065 352759848 107965779 446937030 376469183 237299690 327775932 379222314 550181943 584701973 40770213 166803401 437137305 835002441 865126270 908568344 653809218 548563659 187326073 850908611 483337256 664988104 116863000 601320061 402805500 838213272 310458450 905165794 806380281 70454917 973743364 355856858 639722261 301624476 879173075 484305054 686903581 575261796 608759959 492381758 36288424 361975353 766567004 116114453 46519171 579220191 778024375 618442388 623075353 936547137 579747738 939260055 628181769 105082526 532287738 409039415 91479938 630006486 633770261 641446202 997813090 8405083 887501547 346327205 694787956 560335694 627611965 924460032 611888966 357889803 809839 861264174 946912073 436095706 836778905 380444805 155218139 993416188 428350432 997050414 107052881 899766796 419315151 635868881 890881081 740839387 316296241 97820205 627212760 767130982 884614335 474877300 923438437 785027624 377878839 696026467 806810970 336636016 422533864 772299905 729642986 48749749 906799897 177150933 12786762 330932843 832603827 816661763 224319467 766779752 944926716 702074476 355802020 518405247 163182002 27988347 407804115 324618894 826238407 881275632 284292549 77187510 412309098 218715862 26734925 848316896 750382403 703143189 377870789 685174327 39077133 439160234 865852248 899703245 900961870 242919147 980599638 445182752 432468554 280678854 429826691 829205406 567672276 622096845 900692528 873113789 787452415 930063617 204214724 435196241 817922030 227233677 150409155 645453186 712814340 325205209 605407540 691365466 629519537 632498753 13441722 645962306 18425696 961666732 529924188 270204844 103255760 243326690 595331072 433871392 649855786 117594928 367096828 907754905 97429005 690932668 319952098 207576982 594770508 271821710 161316955 230586023 173576316 642765105 489116200 719623776 698087344 312269159 928583327 85091509 721864040 884749712 569096060 119002015 883225165 537042664 193721315 996009501 524194036 18982426 8445251 808314973 868573256 764009741 907637571 757379132 829900700 754031842 523737407 327125149 13244501 460911234 258464368 331916500 72709114 559291122 826252993 819242189 571550699 567671774 906411670 148003408 554226139 468621448 891728129 939994419 681417449 483825357 282415708 26848427 386834450 559348634 629323860 514511115 174525541 284857020 774809023 671213481 415003681 571920624 68241562 706921377 206258133 34276031 385117797 139132756 800243795 478375137 908880616 597481601 813316608 98942939 872720246 313794262 822660092 868184948 40398924 221731338 288946585 170522290 100050117 650909621 474281778 547247439 108116061 280250319 885960042 320893841 921670852 618771230 675724228 459138252 530791191 44003353 22990006 870930045 86822575 242253307 207914548 692732358 766855687 271718413 66662093 878738440 137537220 241626747 799787493 419105581 920102601 896544388 663079386 740294101 132768133 434910896 878464533 678631283 162646090 49580924 390966079 117776745 630354180 633716984 284065175 914244100 633027891 426670355 844719667 108842832 480549031 237094045 946683495 181264271 529789123 961391293 922239403 502865803 857617181 274884744 984110768 470862531 804672651 615222743 968366642 540769342 877075730 398463920 374059279 967709235 63937380 956507476 640699084 409814208 683008168 302841286 543940124 299408011 600239085 823040709 980446426 340921514 99807099 720809462 494037298 796303330 472155581 397936296 683879811 898276569 991167433 628762473 544599861 562097044 576074956 103796440 487447312 36561720 501778251 536524243 60786930 582293401 207183635 800988856 376611420 624980070 790891041 92613475 417192904 945930810 792871673 985680654 877048661 203357964 937393614 568015551 437941095 105331297 293268432 676116321 402116146 1900058 697135396 500203304 396307100 129892627 303173055 557940853 152878576 577428910 517504696 847575515 541140661 119283402 890142867 204095121 662232493 346005259 421861425 914465658 644612960 285346211 345827180 20436950 866762466 333522378 37220922 664704796 783281823 386122050 29016785 654223780 449478775 228691675 834032655 366720281 919046589 363773907 311218213 860645453 218238741 341581404 202801006 552977722 208336927 983264551 776872879 497804969 926751234 955237746 824515035 905573808 286211356 831514483 379273161 723864468 870008077 718809128 873637768 559582750 59274363 197021499 364349406 929595142 174230436 155037845 560348180 984163159 459307474 749318770 348514525 581712126 834820165 420624830 534014565 382675434 272266738 149166054 118323504 526161061 958693626 323178498 888699867 519721217 175614110 75463904 537708605 198291829 701265799 686537464 572986798 953601600 223179978 647204562 172479640 963637059 567987669 116758293 448815971 119795441 511445313 278412367 993283892 918326031 319533541 159885919 71659602 359086043 754087673 951682730 85873684 266638935 870900395 250609158 95046152 326594179 121836818 739658502 137677163 316775290 193158269 326510983 132455898 367735256 319197213 719197060 879484759 818037935 14644274 455185086 855956959 629108959 604841820 332006431 86489580 798781689 951175792 994110836 912580560 810696890 348043317 876684396 753746102 142442721 521558020 851700924 586216626 756928210 149737885 446124338 229158734 659862539 786237997 313640412 616014385 554910755 123954725 189515614 673768506 606550958 30439872 75434581 738989445 127619754 835867056 614317593 425640648 661967431 835393545 764681174 155462695 434316407 409710899 336266356 92524704 771909178 843514769 513734511 192237941 141110745 282058016 279386856 695201379 315779889 818437663 712475537 863290779 673055493 889358671 525823403 579098286 1662378 252652621 565118592 38564216 167740370 454181349 429068556 109697050 621135349 529590749 436743082 249945096 745897371 48862564 996216172 933994562 185254970 932521580 515832202 963349515 717784836 827477966 900626520 745451800 355909068 894476839 594062771 562651063 604775963 671043289 897811799 632334151 610552758 758724945 529520361 214229336 432752877 517602205 905979028 508015975 666346344 614007041 887541640 375773210 236418707 800635568 447861600 624107320 41563498 433943807 348463588 673316642 106672509 858998213 958254316 406362837 597121389 443308558 494829498 327536423 549025446 151504471 395938616 723097147 206865640 130264252 491285259 949365388 539887423 271831557 162167681 358874453 19329663 875380744 115151459 575781407 164876213 412096222 259855618 570199795 335542972 303029877 525481397 478068279 61261284 424172543 635698898 139172941 543067945 759887960 908802830 509657241 418369155 10765231 24878531 934955746 600204222 636153387 11641283 752450149 375356029 662511244 424963456 314101104 884328393 839495381 706430295 278123401 348986222 559886685 802241117 337189857 1665754 175968740 758732980 533752473 91745275 180968461 759953531 187387124 565057205 694778424 457590302 163743536 461398953 869341635 778130946 947237230 489201380 261498707 100722673 522893671 572623833 847691530 103793024 644879515 551413601 1178014 828578523 145651437 260615704 941324804 676746890 339057827 341460178 319612945 185080296 917051743 685873135 507399688 985996171 135405293 170203969 431097906 623233024 108242260 192310804 831731459 869122676 869438371 622253623 870781031 449227650 520146235 214005772 807193940 248536838 590401915 704214785 976270340 209654819 383373188 747051069 604491524 798961995 663031916 890376982 756916655 567204001 373403797 815468705 605942960 75527024 190151344 630882527 441047299 989800365 250422371 618564854 485001107 764321393 329712602 665209716 976445087 212768274 807223006 332616228 600912848 317241814 820251908 292162202 702152235 255010299 742407973 583996334 39661905 96426780 75064378 664523818 764873924 855543900 345903227 77629362 282778329 904344847 155265199 349817951 633010806 586087822 651739778 10708688 231128271 345161017 234806261 752040587 390800449 653784381 596904980 916477060 639738363 896672778 243489729 105212807 135927986 133748494 872658159 696150643 783978797 636706989 676002 631676311 713902042 602533643 721571743 705771410 545623424 605703743 385735670 757723238 157506943 421027600 631031114 43023012 231682706 549795390 874272497 433739225 836700471 743524540 367374408 794398967 932188831 521110130 397924330 76277737 427018841 351703321 878067116 548717914 326282465 423115243 652946516 970126172 104729117 81586496 614216954 167256193 914575723 871816171 570389520 764814271 568511011 56964571 787908000 139559951 853784236 314545226 494309797 176917651 29343382 864462841 200118672 221518600 358166791 265926964 782213759 855842987 862847568 929882356 922609071 14893381 230344353 586152912 707613251 218673624 80632914 279929390 74840815 731070110 464016379 696689002 232777048 253800283 350497344 419159023 735451274 939875476 396426851 339998012 800863310 593194950 333063313 240811601 189308482 442221109 32140605 897396645 941543749 548265818 17891623 906758766 838243295 946734814 819705982 199750162 726282733 259646751 108446518 553442711 331135719 773977689 293260393 501113352 401117665 465948226 498969575 226889803 445517272 637945918 511825330 800670025 339662139 290653782 256370001 777425788 518867370 275279818 406256651 511418898 171740237 806309749 997214159 48766784 474209122 974626670 715929372 677213530 107276414 926440324 786457412 663270000 395033679 697451070 559413191 78999488 509347448 227550521 624584712 422021529 989914090 676306813 781338067 318984550 444115242 715967337 666821311 796533579 471653662 572115813 747758705 657099901 769187281 61481797 369433113 909399436 775070960 790814040 948189259 688666909 597505890 418008806 552135450 576506186 150534392 279787021 437987228 104797813 392161555 286218674 709103835 830602911 443305670 537205457 578528331 638412583 279658004 840633148 558772351 637395403 376391118 692966548 25721698 389043509 836947234 530074303 373374021 884103907 328347274 978381171 137740491 919054293 855594083 465717500 669916035 985837388 972848488 942524138 793418361 301474573 253759592 380032324 882851803 887796651 957228745 537372931 350184238 571008939 427496374 270104263 449202471 147763755 354895089 997031538 5320868 752717210 756219907 589265100 156603057 518566189 560984658 167990526 93446085 751697795 117125820 161729650 890719617 158641308 747049585 700884656 335630203 644360953 986114253 48677181 33843240 129368865 231651564 326649353 618542685 375779971 665938835 374359466 469530981 746177191 551809358 834021692 804843941 388202413 441651601 619164930 189262930 556132423 161403296 573251307 525316296 933041710 203835330 380809970 490584621 35428223 27523600 944141365 715973884 266072243 134103797 64031969 145406242 687051863 760035909 374692328 499958536 359367737 328171366 39844980 53723845 777536128 353503752 254460910 784747976 906135468 96329923 558495312 916723883 517349835 493767424 248577144 446156311 286276868 274782917 553329044 374856806 355494446 748241815 183595477 260466641 254165062 366620911 381821280 910680366 234591414 693167259 892494516 449240134 585320104 316865335 485142140 248181219 14614989 983730361 244691274 883582246 951503556 565803106 997205864 911673022 441828417 951868051 624152637 916462828 87092263 458096683 410390103 958157757 460606221 674418330 30477949 805785027 312081869 488501125 694926243 158021846 1837265 770448670 857640020 184999382 260608835 300405943 578267681 266262704 792787682 490991849 262299946 832201580 584678094 72608462 281256805 123585993 906383882 195024807 748364085 298831006 18682380 207983636 927794225 450885691 526698202 4264635 145229987 217432512 11384387 714638266 54778333 166386558 882300134 871287036 516478840 785391292 414098110 852419750 984860940 551052895 17970307 132939857 65459712 603951430 384511854 184131421 753110470 705838928 313568941 367997800 531132851 156067290 444662843 499758177 12980062 658442859 853655143 746971215 711794491 562895432 182588564 499560025 485055826 425023990 826210757 23354890 353855759 490817135 923343540 93862413 64766994 737538543 703819616 95753284 289265582 107950085 542160093 98498180 577712053 947729028 959426005 995019153 794532849 129223885 539915293 901767185 717713702 954474668 284637868 978208795 533228425 380693143 454426426 132876759 294757921 656706217 365804978 343526571 424151676 78717846 808725065 96478675 846533163 851557731 406358863 349445430 927327490 483354588 417823745 690393950 793781852 915108927 499942981 121005644 510415602 778725871 114613868 779928993 381864027 796894701 704020955 356554961 939370698 609929229 251718784 130007800 464786834 512224042 435868286 388672111 174208458 775306037 724619315 163643280 154664422 198838309 164372246 892973691 197903185 830223148 342618007 834651566 621256286 74301039 760525190 520860401 559104144 900035646 495419249 463043103 482278012 272855762 811676643 966767141 347147660 247875949 309764802 141351500 350562892 335476601 175809090 99491801 301952806 301851664 195652209 985652678 261411124 424291503 372123520 3135490 891321907 575997376 958497309 744891564 239359199 327882266 298374073 529667448 675951359 269736336 351829065 313851243 674520334 20906456 957922959 533011370 876355103 781149079 534708094 918615437 259535046 260233658 275514713 335981663 298603721 747815223 588927393 807578399 156936865 119170530 156128171 277578932 398369498 598912902 790956262 953437546 117512109 365275058 57588064 735860834 938066787 851406518 754185650 783240390 243914940 94299465 417181588 203632557 382153209 649628582 518607443 128647192 250455960 120614692 944831943 623269090 334928222 423056449 43329313 895970205 378756792 79367291 786652752 79615897 745053894 503074137 746144988 564105532 797858579 988408208 772305846 815239749 38111554 344674675 120079636 347622457 82285040 465870485 393978950 490444257 13051836 160881265 886808266 885612535 410285435 653226163 102699671 740617121 649872336 44630673 76399664 38274601 827781676 617252258 49365109 808118792 194550032 350392132 975219085 693575503 414491559 741682971 170995640 148873065 304663685 515679594 596998658 413713902 104382630 972275713 359444452 664229176 751102406 379641121 329961214 915984987 146724347 520096094 719483542 8812613 215325356 368667486 620259002 847277719 860680034 569002194 387522711 48372648 47028560 916812454 47219180 560589122 903260947 157142509 827046173 783966627 869565541 678927966 477615780 68909163 463482417 539299662 213725624 643713478 418074410 168531862 177102098 270907764 924061749 203414446 782386476 318626767 649606550 131376450 529088867 949833897 273733502 84356958 240777892 996256107 72154442 572854125 33962348 593789493 775371360 172714852 632977130 874169878 228654021 572526962 90941514 607952462 23107289 321331639 113067683 57260448 924604620 458665673 206899399 836770802 78411503 665699803 699293500 274508361 903457793 428470985 457708231 805763900 539140344 724903013 452107543 768806787 741184024 176430023 743617594 212100840 166574723 110276448 718793807 168322778 697975682 670729554 732232675 43807000 407255001 879911792 392008358 12859344 100393295 330420117 79752745 141154747 216322508 75496900 458673900 666439574 448610746 214294080 3402778 937989735 782411129 883644645 270701965 448453215 155922475 512720981 803752571 243315936 541944542 112538093 983514371 22826663 559305504 476673196 683748040 219850385 776515507 878767199 567464035 693591184 176171029 607893312 353159697 106918189 511330810 556873683 488256840 665440564 277311724 275486815 839913427 996527233 861636982 75499920 698218353 629613609 668636425 362400334 159571538 214951059 449540762 605378500 863990287 824294354 273424610 970420005 444092368 152280980 502323250 592678191 957940853 489958701 885087431 104719678 47196192 496033628 451422605 516336235 969983711 403626527 692164931 418754298 629175943 437521037 839434215 132571289 544185722 673727256 273976137 465169715 604420506 309397328 126424766 207575526 71752432 680899939 772307470 205343759 445781759 598435490 636259115 651669233 453743953 883930405 527431999 348542112 807946520 589699295 728543589 412019935 630077159 890446333 130337990 760735626 721089692 283455808 862345897 669121010 771612535 486383970 700390058 322234213 893994156 422293855 177050261 950133207 331324213 372012606 837468177 294480033 300089033 465628370 65242845 663298417 745857293 314931260 437614056 576598589 223321646 40989894 601673592 603439031 993857266 611151189 326512231 866480460 611083831 627621586 560068263 367291961 920171394 293025763 30078963 651647030 323057584 886927984 87858666 343599507 50214625 707492759 516989658 752555618 146839273 213460001 618847459 948674204 680010529 868430601 437988098 821842105 226629081 727441501 976546741 70424724 897764697 39813352 909878040 247639117 129334143 227405096 701630179 631274012 755704320 477333977 343324211 203341545 589225635 790653959 222052246 498425690 191939263 230555914 193785065 220303798 484316572 932812719 150395669 782557338 194212332 821385110 910784935 224551445 16502177 653850045 163814176 496022932 84132110 268685421 637237946 414760577 467407410 119001081 876916389 474936093 52265431 286862937 460536285 658353460 487168970 941668132 366565975 934988215 186423382 808143858 164420676 153157568 8947359 506200751 668965840 514407254 889947747 475866444 245461544 882416299 746701670 493836243 148783632 700871322 100102282 785657952 857899375 239184916 235063064 949966386 550667839 837410708 789688985 917632922 349360118 215723622 187545137 393410351 223809376 490164485 396142516 138124570 622594229 259107335 110905082 957985681 795875224 961962890 123319627 677892397 380600773 378807988 609186406 574291604 839253499 297587235 785132702 861447908 151632816 685926205 83180953 829369081 399326407 391512061 189142842 394959309 734219103 39335813 952930626 719692868 777084568 72848936 584316614 810910880 420714478 72217563 622839027 175908767 775723630 277457262 395474000 852812247 843276453 822346255 715070690 90907973 69314520 334077026 798581963 552135150 843088166 820005200 599060363 457503186 544701524 346952245 240250056 125162409 855463972 173694755 918257543 825163166 913091769 573944726 584062800 946423262 172174897 88926349 544529693 887603177 513193620 246158545 279256506 14483907 343744104 899403123 137433598 711456134 600132319 277771501 93528273 32229435 538335008 10687381 691533631 742834260 734299336 7869300 527118360 735473978 215970599 591608944 387450826 273034191 501201819 286262226 852023546 886660042 738143593 292650511 899821971 490698012 748894141 504501641 440311210 285564331 303946168 979797079 774612931 449236883 746087289 344959962 698585879 96945080 805094137 272507363 526930095 896308682 922522890 441692593 967769892 800699921 6550844 483527387 484922307 783973940 482346548 161405772 416275836 816390549 314803507 446798589 817889242 609171520 736475392 908661239 217333690 83727588 651675104 3765310 779772922 916504059 661628972 424423865 348070572 170883829 761107698 753286817 489493945 733149418 316218231 352170476 529935693 300555474 279855369 104363854 884552727 641151803 254862977 593908475 457282121 688439916 648432974 125369036 430210920 231409820 282529586 357722394 842518729 366633357 221520156 848585139 887816047 261678965 960338041 511344331 569199535 879888385 103276732 157398192 141978139 158426131 900481134 991582176 508097723 831726574 950847476 485815457 187103932 725615488 127224933 687072034 480174362 938937018 12781345 217487977 693198377 251527234 695999547 890597123 838626864 416748689 985688236 964737430 313628702 629491067 862087749 288033655 538986370 934483479 384395727 215647942 468536589 996840186 516242345 498383840 749803110 31773109 193841672 926629493 226379031 341903242 565183352 664549816 893689055 313535578 145156380 168733037 966781967 617416252 636077735 645277766 78800873 117888711 504626645 457283355 357331234 338852646 140890826 446700779 291325787 782167130 120015846 490905258 412969076 509269518 788409349 38571200 508113018 793910032 437578527 721719418 588432994 91330165 864883553 677319295 591652163 364211792 653582330 741213003 305689891 226124302 491391103 603397605 855544231 712833108 925936712 150995324 366720728 573686118 462108538 839647715 914277444 914576806 345076383 889989886 60418883 888738945 835286711 452199857 47177070 130159041 349723588 925905062 933354218 863732926 563744530 615055899 914659157 662600358 954172357 123464483 584228349 437273665 601489072 66883193 233364223 700299701 969862718 259905186 286406109 212405776 609496630 915038004 144644522 924596482 103616721 978277358 28554965 905682528 287933944 610465396 797388730 205270603 312035284 772205934 106878624 691682690 528231931 950561645 454478574 501233604 389170642 52601574 238582371 196800840 470953350 836608333 993312247 592955334 763062688 704300581 435924235 124444079 553859910 338011244 227503429 84856712 581213254 210149625 29509997 236737393 782731289 487513107 303099939 641390824 129064980 970564072 42220654 672123270 141585320 669202273 830126342 232732071 975289316 906279429 777772441 401018161 929137113 380141526 547386936 359438217 466964579 723356653 307360427 843453363 458523844 235729445 815019026 940907556 213966888 371263686 416578499 572501019 373362612 914910801 119557441 959380759 82959789 953296361 292781620 217244575 532750740 579468389 773658491 425706221 255690672 605083538 970302704 373189767 690660052 875467701 677053277 23102513 343268752 501754135 42086128 490372798 46684571 397105012 255996697 185457886 476732668 824249645 796862010 707225420 630787266 400912821 165890606 433381150 920527786 912674072 445981311 336908801 862908945 746071252 512163485 673076661 164735739 815419984 574275459 694433254 620041828 728954610 872394299 243577304 887312730 948002811 478779716 925732583 117770056 337246638 350128257 932439278 187701826 567183294 479957391 661454711 340026239 265205893 95306819 500584801 464167245 212257512 2032872 658795963 560806156 782013063 698863668 477009306 953437724 940356742 491887563 536913313 556680736 2810660 748436309 123076849 533929408 254226161 826184665 573430926 294344287 769365217 403309470 148614010 298158381 286192705 216011014 637005747 864294949 678316210 249719590 36250750 85324613 431964106 621732548 883359823 850385793 92588835 81511006 299979417 67816147 681388414 508427667 485423509 834135924 706687649 190952885 41457155 381185670 932101448 169316178 771405420 463906063 692097273 774063638 695610025 252112569 442837309 337858085 568618371 150580383 375788549 355352244 48943391 416140205 949544856 21126552 516659093 788129286 419742508 397107841 235095733 897786232 164946561 511489348 838339231 184865804 30272620 60094866 257576780 912646830 896778994 599915540 391786557 786435148 115255192 123632213 469087281 26353536 137991177 642838696 514070329 294727877 604639936 136970746 244846142 932482554 985310561 443578901 30625436 67611825 56813865 856913858 801521848 988565121 655859642 371267221 490626873 90713447 515377522 91337593 83253478 558002715 348730546 644148037 155361330 103192147 145520262 843859437 695407273 66900751 653481438 874480513 975058906 270125800 365947446 572459654 17837472 212775818 215463563 195445328 191601847 658443022 874141842 856043394 408709843 983268769 690414007 897244259 870746244 890391758 856896579 188082094 489652983 548368129 557144897 375405557 7682433 281546673 87257506 98787264 793717080 871248509 723628810 796374248 73181032 669121679 203014657 274297864 73761513 890347725 287759118 609882099 305295380 687857248 781454003 49469028 731286512 44073835 956959788 257146741 547200077 153345748 393732627 241684443 852074551 801601452 466253625 270069425 25963196 5075577 186681018 331926943 599891786 912305008 594409903 639604982 528365733 802473143 237618928 545110998 580838408 984815072 597676279 305166705 562969799 877370572 735611142 206198737 436351033 885171843 576448040 251978634 655418680 812196168 664506450 540968856 182917907 938501804 508794332 793843983 125059627 197921630 948873591 209256684 600648632 619326920 710723726 631659605 77107486 38873775 947243438 191012826 673353612 870098325 278801554 803701544 177808521 378320030 896686803 255144080 328326387 615430807 295783173 551955778 511718205 54184403 880191414 580033028 799080625 886537342 666621544 398248074 171348055 670094719 794293390 17839989 654827767 889630552 21674928 477075546 168921501 853960755 554185767 29685565 908814676 617223047 916517449 99852253 709476200 426465740 958844562 554496595 30037755 791264948 455102519 896737729 945043029 692699338 56174888 598000141 348494594 963699315 754569923 384360072 459919979 95316772 314758297 200813509 281658268 403473760 651575787 250846835 347487601 619487617 452910102 898711657 78252604 413026546 860227334 31596601 112484199 2342741 333023915 253551233 614238711 878298183 873073808 232228327 889946211 880751980 9700596 421951849 31597218 231992907 288888388 636909272 604700876 297786213 905542784 196775757 705446180 812808576 817084827 451315874 262498857 79800145 150115260 416340402 854288234 669333348 851930466 380550365 602062019 248423014 91284347 758023439 330508238 446830256 386578042 966775255 64864584 276397713 882344735 363655611 755555760 578320835 527905890 326004008 247432086 47238435 955383683 558740851 418425615 233604827 270050767 941311273 673617360 252073450 482296780 408945617 278021819 920598840 212882999 694635530 936022948 561522320 950352835 280523946 529270939 780269019 515868527 487790025 912008569 994294406 652538297 279848936 947366491 936552355 975793536 612792441 291483300 984899096 147739392 988707086 846481129 591939220 589688826 15691050 403250586 202640051 947541196 149727511 530006187 137756441 584529826 826796120 603296322 346879863 236647523 961624971 174967171 350012600 1562677 148194784 15491158 944814535 544035095 279065413 445086531 731226666 112279084 757388079 250487082 499287558 41158912 670429732 364654196 906248955 962425581 410469730 559530092 400472816 732242597 982989093 262102220 160226704 457184237 269886833 521902362 453325040 361185083 570771552 648703808 502957471 92016744 540829307 302171072 632445486 588684228 545914098 590524856 368393603 195730813 687783521 516016382 821266370 664581861 297431259 483497873 866310500 72987516 122910166 864870458 648767540 931970423 696116542 782706482 812629802 716793448 141372608 981718006 709703315 951318221 578601507 671591744 608107694 994759210 9741892 724680183 403229547 982504043 610316685 621397149 91313489 662183385 136080824 487062646 541159725 841379628 844830570 749147187 54442814 188175725 961242394 775667845 194978298 202494443 520788904 576483945 819287867 601153983 330371718 698215410 541039946 70276097 877587320 63993922 891630508 891627830 705190075 843253812 28268905 51733653 652641199 795465447 612843834 889945863 194208943 38351074 467380864 444797488 69849398 320917307 539829279 921241876 566334745 902697360 236176931 976531870 660695201 319408600 88848768 658923125 526957563 985384636 548251749 987450369 610685688 683956325 322546768 33057317 157306487 231208804 144622837 929410331 464888497 439726056 231934899 397150594 792802425 997217008 150308513 326649626 436009275 748928470 320315562 63125725 723622444 948859391 660188346 22613492 124090083 855918685 910905183 389165549 176362703 163513224 84192788 230689156 725038407 538495330 791971412 544042480 770702806 34054267 498215160 587954655 596447028 506006419 682029975 838632408 129355205 935373305 833899695 568028808 536084337 31496801 442245763 607955039 625412232 963009378 188054981 922185101 202337886 855167816 11568928 342859466 226003405 781078617 58580714 408285687 998175173 204936013 629478178 210536610 81989081 922929137 664319767 817661489 971895625 362162211 212348175 847157830 782446678 748025252 296250605 915653987 720143900 844198859 524123294 556162815 338984258 982887478 88613622 683363524 889477283 94574905 217497582 526176311 350881400 835242701 171765047 384884419 739666538 77197333 622154882 283183797 109614449 569109988 241613741 654928178 219351470 266531315 216772871 688749136 337365378 206093192 598414840 114393603 582952237 968214683 944557693 470247107 225984504 526869697 449169973 468887739 643753906 336838131 748619508 244457676 590182676 512848906 127021331 218618149 857812061 387765728 614122472 20601732 328586198 341278669 255870641 519223820 893048854 502882099 22175169 771079504 930114834 579851502 512997469 662484731 723883565 604390944 932725968 894979022 456681043 572009618 33257722 412147141 712715205 468867039 192707625 444658458 826763258 53119112 50101292 399130317 185018684 328709837 319803300 299016498 826909268 879066569 814623356 296955664 883940052 439768745 179158231 236220424 213542040 792329513 155301140 806958403 168669611 205991226 271960893 977830720 45266357 177730401 159820063 297015639 30727361 68315552 238937893 254054889 364606489 180345869 656635633 67182072 570266231 512589678 494465975 611874157 167906975 794965645 775252128 384661110 482593873 909468341 908252423 543702384 495362273 144455345 326449994 771144581 983509632 83219504 186916980 967151491 939054573 192933568 692185043 479931206 659228993 108846877 768595878 621080109 85320861 139589144 1484911 173565650 530356469 368952949 342931474 417411095 231707127 238711586 963058576 95833478 919089181 443587569 394435673 938209195 937790435 908810542 225800683 29605059 539549924 618044734 798862493 146970512 351762640 737266003 942262972 728232226 518231117 860944435 622777960 614591707 173576754 703528314 889660689 948060172 757600833 75137409 352388202 298591356 942014516 30743699 377621851 107894437 740901264 13935518 791040725 498534922 217257673 888306911 311565149 822118235 76578784 849526901 340903970 760679613 188912438 412030383 623226975 924059937 451498562 844026885 511660461 662834266 803310898 939630863 427525183 119700504 587497985 932036430 191277563 503887158 745109299 33943212 448944851 482934394 853662645 152168756 900397034 699656002 189878967 482656911 865361817 485720207 128602701 627996956 267620226 907344697 90517796 291337473 673852856 790112157 679644717 711697434 223764014 837501119 71353098 864973774 666081504 53780791 8887655 643919327 661285658 116672737 838446986 733224259 674032067 117334273 597157649 500072362 715636980 276737610 804414806 610782294 505308601 954678522 510653540 36060868 102398270 869810025 551571271 252784379 207778146 83232948 468256637 570988598 848498448 381334152 538587781 855507456 241466484 473761687 395771347 626468986 383731531 978776367 29962748 567710715 893494564 587380420 195534090 716270906 786950415 126351453 932039001 437857647 290298446 621190996 335410620 143565806 121975930 890788405 299130789 192198349 656370506 722121946 186481205 596115544 112439733 554863837 702722966 201638362 836014437 253110509 87818218 347549612 119381627 833761920 7615847 617761503 212835105 924056359 776918425 870621433 604440601 226728027 859110703 463856668 1217681 727040119 500854216 449234898 545976640 504325718 824652657 899570004 982523282 657656540 388687705 647782177 718437685 301154794 319977587 586043621 623484541 773071533 318950539 530617555 524101740 796720312 401823099 952074561 591496978 867911181 680729663 795926980 244387359 91226291 238098112 939241460 342090527 405447872 534226173 748997274 675783463 600059832 126257283 195913063 815457320 528201895 164584293 615023033 438351534 596885915 468446152 405610128 815880804 56821132 60867917 919663469 195761912 414345184 831542947 162544310 904796056 341965394 334959883 169840129 154731076 17096140 425855346 553861418 954411910 409426437 462479527 753453018 100414010 897828642 793592762 962090424 910952585 218818255 257667409 791215118 678028993 807547517 688786273 389715688 239953758 56820294 584504342 477043580 181370624 669686480 432105661 876184208 29655657 166154142 198733066 539572102 899991597 225990692 647584991 820289795 492038691 908551624 402047648 16221068 325544548 430675621 703796481 332878039 416515009 16083565 764177460 214009917 508946062 460077781 752157939 540753771 392005922 747805866 577155118 5356643 559165179 495129238 28878047 68400851 893116161 892462562 610312987 320489070 84297756 518135653 55020613 644474496 987433637 719108029 389637826 811823110 326051329 495244833 256104540 199679823 847918287 643748268 768152603 422323536 951682664 855278831 248147432 794904232 316244017 837376692 327324199 46134255 891887058 186689192 732507685 292178090 521255562 888232015 874325249 701481437 302585000 491682205 778468652 350563266 633019468 153609628 200093375 877051539 910070019 544457839 182284727 325173213 185151028 809763071 189416922 956842526 618302840 487682904 911716777 740602481 778064368 426680549 651312525 317471176 597543662 649628684 21790319 799779011 546648711 654319357 197507131 91667502 532755785 553681141 897986568 934490756 904418002 358124611 716584017 760977289 926460535 763468093 656644410 755251717 983529786 732783657 551799760 642568488 619019742 647165873 331857521 52174423 135007621 857931755 248053707 120894022 211001282 919089183 493891414 508731208 482074160 614702097 494065127 516138991 768492077 235398060 29733181 349468679 487926470 942016083 547743503 172667378 504510617 622044193 197103444 792841886 394307076 460720539 706001952 378384951 712005904 869301222 72910273 659927166 90530334 992746353 753517477 11040225 330155108 720758534 548783930 223722118 406260387 826732587 5338117 184755451 687356006 774173792 757309799 113364099 803085885 488268194 180249000 371064200 119920543 746272427 505498972 145835210 720504115 540022021 968385701 966686446 988626183 365577150 201849120 183842359 777694849 496866135 790801755 891076788 148832701 713198836 81864651 938319287 212581342 66126169 450553765 161703967 67674202 583593265 54720865 509116295 168120820 704675266 718251924 602951307 361170769 91084403 192957900 102216487 802059727 400474734 949419609 292871205 465014059 977573710 967970299 486761401 929172239 621290430 528093842 848231891 642838517 327940755 801680045 50056043 664560826 142475324 450261734 392076823 323588798 237609061 405001807 158815689 795724090 886281073 41924420 395073970 422410171 528472511 941544756 807260722 307268261 459440316 330676243 543644480 309375851 154640415 540981061 26491585 130234782 89102992 444151769 644687081 820846416 447449340 855507054 923240292 287555734 866307646 667636364 823207780 721315671 334839508 654575588 715629714 179490597 525041703 199814137 573531777 667287566 258522657 942858442 654483899 208549634 429358614 495531026 834645415 653886639 491448852 375730700 410194836 796786049 825835679 714104791 621087677 918948969 397943160 479839934 386194339 94567826 4068135 529364430 911960177 244636093 709052965 293902252 386465822 464770487 654835571 259931995 243003931 818339714 242123373 441893508 135396476 392193765 753604409 7523540 991646813 952873931 415924263 717183440 432783884 894127000 614707208 161116011 890143057 606864149 386915594 25653680 641112871 257675038 206235590 943570236 93660663 120481347 854390503 734769360 386324233 318083325 890480327 110693514 770999735 545917657 923527298 115435610 52804105 446858835 31337876 140285772 198211885 395211090 307414839 411442085 342850305 260147280 798254101 821544821 106100159 802941443 396528546 81777535 736121948 30818293 582339740 698228813 833412088 92789046 599675227 379803331 810602232 323526696 105705100 234018821 846464354 304401570 382577028 657279711 843110520 731223572 952574527 798397782 527981295 240169200 565334105 913104961 119898500 798148019 214247599 898501404 488261983 113081102 385014422 879392551 148940432 611965947 419019207 153903022 707129168 68495188 150365419 625125469 562029251 245450020 745188385 103568001 682847273 533312928 871921858 139192920 984957522 161831446 917273301 899699571 900440890 979874102 77844522 708624664 30860331 331311001 1632554 499198977 150722337 247836674 761994979 992821039 835135161 276725220 892944302 108665258 347165882 428690884 911243153 375831837 553442025 852360840 394458395 821274762 321523483 896311907 506226815 379257345 532461487 776103593 97747513 50365710 528803683 173518237 469732606 594671694 672269046 347575272 100346359 347453178 942258923 878000772 396698842 166803950 985102158 377984491 351277626 807950632 9659038 730264370 217187607 717085764 513540978 843606635 593920821 615706036 578023065 145474058 69567546 569136319 366815458 449931265 302747443 286968029 823627968 393605992 473737702 239581394 609116959 92161993 618168133 132381983 955294235 742996257 445666997 824256044 815565614 300352780 381510429 149509441 757051673 298576386 329207784 668150984 554108686 403419325 72503979 964772473 325739199 43191087 48336298 77270962 190947666 228574227 487029586 708405164 726856590 797629389 128193244 500473721 379469764 179528566 9120669 145263752 220523469 994659579 740601153 383868326 902611264 222483542 95623533 899515079 652960201 518070653 346502006 553477679 299456378 696627986 944338196 406679328 292629776 61561002 798514888 980037152 371917872 287121333 629618697 192935622 913727013 222332472 34205917 363465558 647219480 33251627 997737806 362513908 418266010 786153727 839185860 638516737 924143404 732444618 470173119 967220553 357850198 491141213 652211745 412902481 768038117 965038188 865461947 636407315 156729380 398585503 551615700 733768376 218565126 968469213 847416684 246341392 244071376 103624259 864425616 108679130 474323623 569345906 437351340 389595318 214771199 133042769 514936492 860156930 197746327 178503585 638426720 958294890 401466972 648138312 70121883 696806487 450078152 632168506 228869013 925636454 574841671 321711773 171128411 488842386 610808957 469705287 576421132 371578893 461559595 107495246 76913872 874185894 784224668 365804229 587255743 141903108 99534901 950737420 174842933 71561354 733369157 455261080 911657501 318515691 608182895 463378973 767134873 191223453 48622859 131192193 864554105 884801856 705158228 541814796 22571636 595743688 930109404 202348831 105105692 764384246 758757137 367661101 208463646 859258439 342055693 632952475 547111931 660649788 176583949 47637914 588969106 68492460 835858838 814273040 523063193 48878928 955017945 324184034 481330472 283966964 257467835 72784131 537193716 432909377 265822387 14270854 873037792 795437386 208684247 506294426 732451462 917182107 433672501 596210709 780165619 523342924 293664958 700820161 208646125 339733614 698711309 367446470 580713001 846295264 169547331 374375150 333655430 980909890 634533525 404609729 924030337 500007392 491285791 988634019 745536181 313911520 574071986 719044289 290733793 221751158 287198677 860911453 329161978 263059704 114535953 917874564 544280550 593702793 763167893 829583453 841123442 357058828 297780816 496887802 385264650 946580049 482474247 717905672 446758068 856822940 401592489 493932166 719138119 623061805 769816133 157196989 523574128 973035809 490803665 453784513 965679423 293773382 821828707 963097746 315458859 370423925 373548586 522386932 612223515 824176037 863633852 204608896 385202972 320268210 756262578 570575139 514417269 994920638 595752229 486488253 227936095 977560954 907743971 82185707 180930302 428900595 245510360 619263243 319413193 547174213 229681783 716626574 272705236 292389334 634648901 530826809 736394861 653744647 994063735 172367601 121560105 776745003 93936053 145271659 342144678 755236650 712354945 7182460 523234774 656812359 787834540 72297090 397337388 312193798 114047577 9197634 733015300 511684435 514569781 35993880 404185299 788295140 453664987 291633556 437521251 770408226 48830064 968239200 393850666 539550310 384628204 991970723 198216208 782306380 554123249 947000161 443697143 811753558 414566047 588443318 603682406 169191433 487658433 204968671 934148313 429101274 131252074 162294093 708068529 444904149 249460597 931040402 187030941 503196949 749206403 902446399 372999327 40070633 448118274 508672740 856134180 501241520 919991677 876557715 932229620 593385253 757471183 490616622 394942029 456406527 802947759 397106641 678280549 821021059 873913763 525838471 266252585 766687090 394623208 77560224 282907854 530515876 155018513 204895998 228208587 25153915 878529504 326181878 165224206 755501135 537890939 627482969 210855302 818441585 532960144 490835936 978506735 157620728 933296150 163957828 359954580 699172262 328195301 708800914 194157561 172750265 656791657 576178643 739449443 317534102 844167751 421549900 248041570 419320550 358635949 834055678 859462593 511380548 64571156 702855988 863393072 467829886 204134729 891058191 488747377 9354936 799506433 678086336 522082109 301134037 626381550 35648873 908489694 176041814 491701669 192337712 780922513 844455361 76339153 311821191 677597452 588090128 961705724 544458408 160068188 544990926 98070834 74032940 957428648 260776005 158379978 29731591 532522123 955089486 44338950 892603515 145255352 621372018 724581735 689787550 401048032 332056604 971407334 283825391 577576986 734788760 786407396 625787342 932533448 635653383 691016615 2734790 649539125 531549495 830912142 318701417 343612596 458737551 602202300 850532589 832173114 768540445 972454325 781795513 676788433 69615772 6036224 959817079 305618642 823332767 192441307 865279483 587329795 91608606 624736193 632216936 291755890 485995006 66148883 55570020 349030200 797165052 607423673 361146143 116328846 823991365 214338583 875087865 382788272 529613589 447626227 154955320 644600320 100998092 577621526 334991777 531548063 98922361 354873240 447058615 403398999 269523782 964201364 616767515 701668041 929632198 66775843 449104706 541063674 539016780 512517633 235578262 365928722 270713269 909972956 284664129 656608318 398121626 351834491 477524855 153655386 703421486 776670819 739793077 167068927 267783948 611060070 548009324 732238527 152218779 429817645 213320849 579343016 271491243 293710863 341109892 910579527 252803486 669123608 161981454 907455295 10219859 582956311 452714441 640250585 944618029 206618454 798559369 776770665 557976779 15735931 578415740 73532832 141321325 776903325 147304643 536859393 248777359 449288980 922558596 284752589 880451772 182990589 210293881 217557421 53906553 340046608 590255603 752225649 778707641 691336520 522015297 44126302 983813002 138402936 952473369 128544596 811634622 915066535 995104560 968278304 137545262 450644171 224484005 974878135 323561145 45044664 993928451 296114809 123821933 464257908 120142336 204794471 933468038 567466870 983424008 533219947 776854208 858419058 467235605 253259023 971647468 247912800 663840161 178976489 167939134 928073827 491777298 973679246 493724094 119593669 450698933 374036617 636406086 166499274 47753480 754296138 76178024 584529610 852365558 263982103 537838375 695292150 185143063 833725629 983863714 984083899 803319425 604795725 561244214 242870160 951224798 500875768 748882323 671369868 761545841 685231602 979135585 622004535 719558129 890281577 658859338 778943174 563131022 408104856 780397432 439011318 938950318 496337514 145377555 10976324 505370456 402584518 984931150 803145916 597211785 150933385 528143349 551490062 286245917 282698304 528709352 530673035 98602257 256075623 337328673 824977778 732891627 862209106 626475605 143683837 156813325 486237400 279010814 940705677 596458772 638400093 477532087 10166033 252303227 786804308 624526228 825360301 500907324 186380145 742138503 611010801 138778154 599241612 141768 414753322 986301288 983530675 326386199 190662569 990678853 871791498 448755917 993660421 494582016 883357827 352570317 699498320 950836057 116774918 458081653 997851064 871433966 227976186 274678136 833281256 921010644 100295117 426851823 895605220 374278850 978701025 718680449 389569724 391462720 455733586 742142843 989622306 887954402 997282984 648173961 894948553 185232449 83230139 125547907 455539745 111900921 101211310 501370735 202016411 356834859 933594745 349113733 806057586 133684661 224002125 746359889 990576216 201024288 44826966 82820437 423082047 403419049 875292589 350391952 72234151 212654746 124315686 163565447 184395169 643249158 688513616 104546776 413889510 857094306 661128319 106377539 526785064 983370662 98182802 448284961 707700534 638805873 897730564 726084651 567021756 655816342 126267602 870802566 534449112 130566695 966218804 108434817 902047291 867383704 751499102 46418107 646924177 714313105 320214820 549955110 891545115 727655888 400752605 476425884 866953735 66396134 924417189 315782147 17598302 109232130 302577407 590357980 668500851 702006247 669777709 593599775 248618257 898450747 88181052 792882915 623869651 251662662 299580374 162905324 465622583 355524244 628761630 877129055 809144681 671575672 854408214 383484191 477552862 105882662 819556506 397980754 975913171 404909099 80095894 140389675 441078700 597663829 812176003 17808616 109177448 591698269 977472460 213724369 918277350 372286689 133102337 282549916 615271598 548481353 257761201 992095227 147687632 821320722 858107812 149217884 988874078 251943456 146916542 826626922 112199849 101905900 286275836 207218902 53459925 777848078 21293078 730340910 773406226 196719575 623815897 488106969 915740894 418088279 311541670 366515223 915200050 771690870 174857059 892470631 554079527 233205060 330045818 331977071 218661489 661152626 134634561 27459086 48527431 97284135 608002827 710024808 570385964 756230388 144574998 777346479 988075781 678061024 582817582 314973101 920466567 835061709 247470088 306006267 835529764 562413159 736798669 278780424 55641020 442258721 733872600 124829932 142496103 633670565 256761887 763246232 778959422 290447007 814872696 483867570 915806904 4535224 706234048 302652000 311001187 850529186 569838186 442930352 329471903 85777021 618468367 374367569 538374883 308143613 937701894 444756631 510167675 360143930 849897974 296037916 374630173 797319729 479755767 346446766 960363236 361103502 953901950 102010480 562802017 384516305 548717316 774888860 678052742 520206453 264154759 262597451 365944563 281667904 977510669 94000853 577277916 758320516 791623651 44373304 321244071 648702491 43477315 102338886 70384167 471255334 500953963 952463766 393154696 899446448 161976987 863642399 485685690 601878992 510218005 564754592 494443370 409348186 54726406 217748384 496801082 679582933 667272864 471395043 686521936 747515478 913416884 57003889 704787331 189833114 224358275 97116889 741966595 875909136 727270572 94232197 751154454 545358908 348268280 873603043 74292596 712853026 899109575 616259176 506438441 664077673 12373647 456844568 608997758 102366054 290700186 837689421 129413324 216624037 766560937 702487162 779523713 359023594 222541450 68049508 418230272 762851613 994930681 683192599 943401326 946835939 886696073 968104662 100097720 32957476 818129152 144376583 930827338 178062241 864172067 307846847 199735285 324060729 474311658 964349715 667510784 334849209 446160417 427492076 60895771 79899917 372981432 26741119 720200691 653495354 934253879 307545305 804951581 308762355 327292951 67607258 171914815 331478413 549962779 443822516 533608744 34979175 564359154 743618274 355847942 562374681 428081367 879149050 361140972 983791079 270694692 645666979 142171775 616333187 712176489 386364685 736929351 726075581 202514603 901834369 890406889 874948868 921741183 248771554 832149713 318375450 308055642 946632783 277468897 458896634 175934171 970859263 539881208 621799482 426046558 814410693 339132585 321138554 338150800 573263604 457416665 48899646 403567991 790157545 239317603 530482638 662286743 903007665 135033375 842919220 827249224 549313834 295395629 647345085 580520172 433586462 399917125 191207970 11528785 741983333 905192233 530420666 705851819 241823657 172937025 971354137 661484626 585879973 750268867 554945114 495551729 548960253 320269870 17192822 220723315 535592861 469302971 653169028 250540282 629170756 243661920 597253267 885897157 980608929 511053590 432239909 943537136 282890496 943796031 32020193 724673041 638217748 941481941 435184604 482237096 293516765 6142201 791356248 437506301 911441521 779798128 277689684 668934369 863726832 263217114 427592723 129369197 130490203 368307342 190798468 816151509 346077106 452458876 284487222 807917281 924752216 392345925 374584716 875809099 40042881 202417552 671881900 252751018 28338733 440433313 443179855 227941339 177914466 938337916 717205631 434703625 405162864 765230079 595575008 619547260 978988845 434405181 699785674 875063112 620787885 489809380 723672423 557851667 586672687 813770257 174296766 599027329 161919864 675543462 417745327 259360318 201946996 544394769 229281685 366604774 961995777 129247327 157132020 703314549 767513622 690337032 962947331 527901983 585115778 350958061 116811990 383190685 974229680 24844426 740721862 958431928 330970931 806641092 459018753 474701036 261705355 850321329 713070743 779825204 50984846 625999756 542372049 825294627 466945172 780720110 848393426 220957655 701111175 341338941 753858085 968634986 265396481 643141458 501153883 779053146 319384876 218061576 576333720 83298398 386210253 940250222 708194948 463568383 188662494 818573785 798983209 939468921 386010026 5432998 166350507 168047895 501229187 263760884 165421749 720271911 768152287 52993841 310038597 567228518 83133794 398461440 494684479 750771380 335509704 395006521 450309638 71638956 892563947 623562873 772890122 995373485 885481178 809475449 503640268 907200808 869795884 33807887 627058524 808669519 439660933 722404667 182665523 525924645 796879080 167839467 704652476 992800083 828220757 835811284 260759512 556575595 583857176 964395046 775440770 161899292 244653089 599383923 126992866 173150254 95071705 717977800 105815022 41368061 24249743 475927161 468518925 813187781 332881070 801026699 868630320 96556733 732764412 463967732 793784871 788061543 815230913 143884965 716607456 708060511 155824620 100626678 439435563 270882955 406401724 987046656 50927873 903921596 293043489 293704296 10071068 884229596 99047326 91405433 497907476 182670138 12094844 14717917 442327487 786453943 618788793 605471383 406654021 617163039 410827263 952471868 155961076 111569144 74842538 972757788 11585522 657921773 238786467 311211487 528985357 816404278 96354312 184651294 319481895 137849720 622019971 334503065 311211374 385853351 327142880 515757366 971694533 596939457 752324141 636311299 858520995 703974125 212467932 681977761 676395633 507374618 703484747 699861355 992651602 671957927 122390914 242934127 9899028 604063722 916119021 432961007 937261989 701716921 76468000 822521132 937555288 600397709 708354682 140210066 521655712 384071511 145842200 367339630 935485252 426482113 960205373 551135199 12435242 541491814 834957411 865636782 580742622 350076954 963796117 912233359 982369702 428014689 675268012 674546421 323941884 828877622 789856886 253878943 255324402 936524551 59893190 809845842 14551912 797704088 88012645 842739500 387439068 658162005 934033492 964028114 121130508 250977440 569622581 335174021 715389842 255265690 705269214 267590633 651020539 173308902 690898508 394336009 651952596 165303102 741179188 114827187 821361076 39822252 43402487 817995447 77852307 454363582 169502658 498208625 628574780 353816731 333402308 774510945 793827781 855642977 979670759 699231041 802438861 992251468 807505540 190372740 316436652 359454596 527155996 804514342 225420320 213453052 847775279 584084680 394880736 314244113 150535377 311350620 727699575 403223390 34239102 422941469 989589846 772197730 61453402 238106288 664574853 372946114 831305507 794284462 828399485 880802495 203400631 163715787 641140234 699889844 686875268 494993917 610321731 664801359 62037485 287064617 800311648 159997996 667604340 807437372 868476165 215914987 53204095 930641292 299934416 545802941 257461859 314508888 540257926 133596517 708764399 124945539 548439069 201960185 820010013 528250155 697784664 80869693 365071210 743448559 885445656 766693359 517111040 276819261 160009915 517512768 683917913 687052210 678143878 696353043 977425178 658672229 676890839 146177767 952805160 72204100 296857393 717029667 730371158 125949799 107829556 335736927 897544615 379401141 855662353 248785081 264861668 581422765 474216314 585628749 447821233 153245715 772914309 520143261 748981459 752897880 98583006 902496924 436638278 461914156 830273905 912548459 775906060 955182502 732929540 350419973 543322084 830387485 960156500 670154893 668586003 140023444 375841891 524115435 631100298 242942857 821380956 39026465 981823062 303357108 541692728 489164301 630751706 371206282 423199002 471352731 198954284 874356518 301926705 603494400 944244143 736889854 891769913 40106313 156660821 957494500 673530750 50022664 557202600 455976393 248783802 703662868 975456044 180121972 950139112 940714406 309857457 550440916 298312871 916755980 821542424 164719507 53587341 407768134 156288228 85202229 870561989 701120999 87223635 120474944 681080777 382263499 942068920 947661307 643361599 385431470 6708086 930736955 706180066 393017209 266711787 245552742 243558242 305758389 886420493 717262254 540599366 357847318 705371330 414322362 403247943 257141845 687470805 956850679 44579625 915504031 177885765 75101598 314622134 588879294 90275454 907929172 421227473 167737441 751820989 539419643 670222192 236260552 880751475 688278444 307276217 562086368 144904849 68820035 413677616 45445168 431755474 501664402 240089485 674875840 458972139 968704677 437485142 437376805 588430567 76075653 886809348 487480538 353607795 182328785 298798836 525326239 272841924 224103125 405270004 341481987 8483323 490986209 765869650 705749850 503822491 483747245 809019877 826019648 207382322 180969823 825614218 645724548 557462380 89100928 204988359 386688529 619595574 850081738 657334009 915035508 443132914 695445207 431494083 610782734 37183857 577031663 36515963 53785139 679988486 741716387 573310651 186136422 643594283 734533809 965153265 758819059 869886951 425906072 683212081 73303850 854845593 894246873 833031478 670450175 959103149 805036691 519251126 256664699 651282270 607796140 670083399 270119359 733045036 110784048 658218663 481759208 547396539 475520781 111392353 484141349 585027114 232160283 465663506 739571270 841800999 205915661 819659308 384722871 508841342 499313727 598869758 191496091 774401891 994167332 503519695 351661298 619756847 458838513 348033565 709084721 740355854 147842926 429716047 325462729 644877695 800349127 792786125 421749721 733272446 124699218 849714495 208880643 347575026 940264407 277219336 86305166 934331656 190453918 152842030 393475457 470897429 751520753 974866540 977219838 272210462 900370048 245778838 540371510 481478509 254362777 925913961 155732991 626050464 72774560 909549894 342217344 201025985 972437173 872660481 573298692 63657475 774313031 918377088 301409597 169011693 994012661 965977631 415864118 941127806 293793627 858748371 684004853 347284069 817774378 93510609 329143065 636640757 587099151 928030654 566410863 300828189 196787064 790523187 710897495 454506797 601389540 182522707 195442348 266970054 854711329 534238285 71407338 233580877 994354363 711023408 399370589 280434489 235633534 863639430 369166810 989930798 424584126 252072848 927186054 573847707 439734176 199127862 170160272 885486631 893446578 917608260 538113974 581888629 167365625 890814838 83195008 168497296 401277266 102760944 501809282 632357516 58054675 988845765 650954422 343515216 362522396 126573201 968557134 18017958 848640178 883813354 123393439 300005825 125586797 402874911 959984324 380918894 353946973 662964292 417925152 681398820 52300722 569995351 698932197 69540608 610075898 708669439 481577158 663378195 36541867 526959861 722265387 277806327 916945587 489939980 978870769 525411670 203272002 641082442 880640119 913098195 70781673 775560477 591576047 111105421 144365979 791024344 652577369 512363062 849191780 911734629 283216605 945270758 949930074 360549288 129118194 590147069 823510781 485147840 293742851 362747376 157422641 955071135 392929656 23729830 963922913 170417963 637026963 960618438 875025323 669061751 149220171 612427930 40410708 556434891 199806444 869577584 27918049 712187978 525997224 835334297 895432007 249168026 923605498 146001925 917764668 835394649 352648185 255443934 433506245 509929950 240142974 408646310 183704853 248068471 621031667 906278780 135050010 611355954 901159706 217495111 295957229 971932198 648801216 966794734 821713736 274213850 574486809 721194881 919691990 275527717 977300678 438363765 663713294 481421914 350884664 443026825 663748808 546123396 298492187 295850658 82853031 346425862 859026377 874556760 11039395 568029180 153980179 916151952 704662305 81830765 170455008 902241554 338299055 217067437 854404614 98196290 576167239 187165547 708147117 444693506 161555423 393108642 550130592 441858815 21181829 276268913 333294472 237800714 48296447 385908969 18163135 923611509 433756082 475210373 939892092 445706937 826912265 109292220 228202913 867190905 17430711 324434321 711119138 745978586 401849604 448705203 986918393 829718835 293184633 678607855 706171307 302265549 889397803 109396425 752973990 827162869 442013504 54078030 311465426 308527742 529513410 504643828 737425882 237022699 327373383 372753374 138270377 908700817 744161703 667913247 256034925 315559641 651313427 180778415 256194493 990134530 439045648 236145913 618087256 817402947 795415708 146126478 68142510 250211644 599372134 872926450 638335570 705620202 477748223 175794606 395039068 393802515 424067607 347481442 194917579 136264803 385826197 877220365 689984018 531565904 587583638 837378257 873587051 658823862 221184074 283806139 895560041 897786188 142211600 742074133 634383131 773737159 296007781 793135171 493501355 943319903 926940887 362641562 827482756 316742326 629170203 816504779 959937741 288840372 924712487 758070907 80461919 451004618 311266917 913653982 449286681 690350725 871119187 38990259 48314653 151370069 248012507 245428344 115944440 815239829 444202621 845194242 555050350 549853949 294216959 554203813 830292638 949328502 416108747 445959286 589214896 568739174 392541586 763348719 975477716 963579520 127206505 441669802 107114323 757488689 347478611 894092768 521543365 194277654 18355385 610674564 471369676 683807815 89511341 516110778 768830343 211459153 360846729 754240663 715197251 961759423 425333575 375677925 688597483 244448783 1201187 910713017 419515161 243320563 452639215 534095071 682452719 858659291 111325938 725426281 271923706 379063600 887824107 582073191 210553497 533212563 692987456 637346447 257683735 356074734 901694214 641429516 122403144 558255885 28227100 446020988 984561260 201420667 639404301 309922541 188123403 21009713 485592142 742360898 287079566 619454240 224495243 219909861 602315123 434025652 593693352 835737496 954827099 30496001 701852311 590591676 246177851 573325915 531947282 186519673 470086015 694352634 89418304 160369344 303591896 515069113 981306845 753733354 128246831 216928782 703219475 632485301 535714608 265655381 274117646 144022407 239807097 3460061 171531986 213591307 70878134 399263234 398817234 179245159 19203441 319296844 719968868 96502522 551471852 435281076 731393338 425986820 956370161 782700169 698804672 621610569 996425235 727602926 393519740 521103063 41857869 101076592 397872629 521739790 226423898 981357791 896079655 910635627 935609550 344589333 849499501 128737000 244541496 660739596 64569184 241763348 806782780 470780689 701216969 528379777 242183162 118589405 232027428 27390101 457103333 124558911 412852670 501619777 498668662 188657618 449630569 286376406 979345210 258657321 896301782 418771666 320736679 72691047 913293843 789367775 97926604 501772542 459661488 861310153 825647572 407098365 530496976 764601778 768812691 946680358 901241414 890786137 331296611 707405749 493664924 561044251 709606238 719001203 258852295 851945806 541866138 883823040 374571641 277926439 338502512 430297103 830000374 23934564 482700575 706906673 526845924 979410259 529114726 509704978 187070967 466032895 376615285 245201518 66446613 755808099 979661479 731298075 629720216 588263788 86131424 667073114 842182659 732001653 518372880 115062476 762050134 2054776 647084755 862647935 468804077 346140456 360175425 774256263 995938312 248639065 352774938 363124448 146519338 358867984 201223472 483480292 180407615 428640067 569024535 193745685 785388544 354733262 795988044 755188810 326249096 542354636 513290887 554704645 496997065 472947519 241724976 394841703 336578204 622339024 464768724 516895910 634853065 588624745 883365244 196272184 596413015 158433595 737286527 178654087 728648542 90868172 564729728 241097160 156597554 532095843 725006805 270917022 210513821 187967792 556763243 926614473 477748767 660839503 547199465 507035351 744898068 845336897 63181165 150705720 222981128 25433436 324494755 308272244 271910885 527625238 119705186 86736898 124281719 981291508 609054823 605986555 561481080 255896201 15048625 304421273 327887052 838902971 504872954 802122765 847406985 450385391 374524141 571312267 647444405 279176270 494545966 60030174 297059243 684262660 179209938 116068530 976061765 713474804 835780155 385375289 830633162 237856934 842662995 965960214 727328564 138301965 840429662 985733652 606509007 558186076 911361632 15222778 969481193 611337911 533133489 910933271 537150487 432186207 961230899 778869222 295508499 282572847 234460808 396251871 584261625 140915515 568004801 118906768 405339 667685457 454798026 892716580 892805295 786627444 480744807 755996184 912927856 708577419 151214979 468981469 505296941 771686353 922656470 605883729 785036477 75143258 979655698 163154533 894796003 312109921 950644770 185167105 397131532 239091178 713250684 455490779 868352735 849406666 124072008 912928795 642378573 328811684 14145494 487499441 331623940 591640656 846552501 658903856 747442369 836451904 62918706 398345874 31744852 634068721 888784091 962602346 829362349 558229974 367866132 799775718 294354919 900229480 936160225 711804415 66673713 833481437 704171778 829046229 503627721 649703140 736869113 17033357 160647371 446529956 870201284 466900920 975888547 935649424 631529208 589792487 493389142 403783843 460557324 494346267 292743364 691693638 223119092 669960279 263021140 58328332 740395054 188123047 134662183 581889481 788221055 663205288 226439552 704514401 293362516 5873117 325404447 758118365 188813468 198742264 363990675 266489927 445358457 411003871 13119841 480925075 301958632 761985790 491304675 192857487 813287896 213583505 324861067 563028489 738609349 235460032 670234360 646187672 473205418 827038707 98131770 139789923 672480089 402224375 252854875 988216993 754585210 286774087 925730484 43335671 744274319 23185650 522723159 344210695 322301845 463207242 584201340 613280261 266073410 54876803 319142568 701859159 87452542 952430670 654110598 589835791 142887678 350353562 283839957 409565303 949232427 872223333 120659514 331869352 129231649 187747289 364824690 990562908 572600715 353770637 802989675 924155244 491084920 781456915 250728680 311151074 653966841 360716602 850676801 172437398 870884155 702952180 61097619 369188710 691474004 341523152 912272330 17837550 427246069 361152200 304258445 214087222 143823412 962712346 650827254 708735060 784757911 942259940 927001034 925671998 446591622 414661742 767644739 370692842 274309698 204397304 5855992 116962415 531632474 525612627 800140595 286465421 151368930 243512775 960999073 710784531 2118102 302937092 212859456 594493322 992018378 818543765 133988593 384407397 163107658 905902161 280449072 610106249 875493425 850042730 500797606 1560526 378699306 769990659 230441461 869609470 903653569 889575344 483557439 627763966 24377838 820779462 749984661 428902968 842207397 37436464 775825589 453776140 916822774 75406451 74372353 459438390 326159778 533787492 572866041 640437572 314453169 286045946 56195941 281830531 513159001 354652950 396994327 221533175 754673113 201355124 982018286 774260366 291159643 110382989 634376229 288084505 921321096 679536767 353937280 237301880 963327404 761179684 565883530 875901131 544054179 637924594 457459383 263500528 788776214 315403131 262172322 27356605 394097122 905211840 717572859 766188238 914000630 484605140 892505297 680009771 200558056 178911063 957213355 561282289 255966075 118214180 184733614 768524948 511511555 421058536 24445442 71638578 515001454 375877159 108329312 160998785 386383765 129572042 411489032 385736495 389680791 780754047 126027009 926044056 422297736 506380864 779732209 816296413 95308297 523205603 955441754 810517917 868224891 544747345 927502322 250334831 458946112 225879551 168557085 324366607 250372315 838510507 325507248 49807886 247921056 265813264 362527133 14575193 830320526 718200866 754817866 890966525 554605550 464450124 839223891 354826692 411204960 184592950 318495243 963756186 127353315 419004161 987158617 554399848 402789497 689434321 62086579 385811969 232799103 84099826 539241216 17288015 194036109 174917973 929315377 495796451 219718040 102567826 481236391 819734178 116193999 183535230 174160098 574041086 333713677 968549808 433777270 72294696 883440658 763062119 434188193 197250994 452222376 684763827 317627067 733857900 1308719 940577196 898770473 932633187 810923300 775523642 680629116 605212042 363318065 487546636 720564725 242714560 422061692 882803242 815372725 964734705 38145096 159870572 915682923 138895823 36525453 557801910 197287775 856778224 778259790 994712209 606000588 668276167 78118364 151713720 871909582 66528739 434787480 690647635 75409669 464890186 422355000 11552240 663970283 247241358 228696921 950913620 687655608 635876023 639195206 846596328 192962730 933999192 83874995 384927770 786919461 71477419 174577378 6658014 934944146 934396447 367524869 685920946 645499713 560909937 494779175 257789667 427955670 144407249 161833255 695944194 791229443 273581855 696887063 286061826 210631125 152805703 487597037 185346270 684488572 290948658 14151082 520188093 826724616 666726049 430090526 722920627 138501052 422093415 623868752 472363627 778705786 621824033 722053438 379729348 676477086 485086119 665432894 839839761 352255001 806168168 436297303 274662581 457066148 774148892 45651201 463591967 630455199 484058593 360610471 392040130 211547792 698793306 20251168 797862383 838507142 712041418 7624326 996111043 315250452 536940334 112454921 615650988 528595290 122919963 96351380 553089881 274333399 56754829 450309284 88021542 179083947 587220747 563179339 92098388 975247505 690197135 275284499 98095700 447953038 53265497 407322425 47109566 343352856 736307857 392721059 609598286 864098964 495602521 386048857 634585437 554490541 914537252 918970813 136995409 709380470 85468505 908616174 258042351 715279833 733251521 274499270 780568027 515062628 644128521 13779291 725750162 101631462 272162854 590016625 824250138 524053721 159739442 731305078 568767257 334350833 809015788 130758904 314612707 188432304 442713367 121678801 5528793 805545162 273173121 842791115 54260578 574285601 496081385 207986741 1896993 906110305 635321013 722702594 390383630 710780062 654154119 852857431 20882077 666625330 499252186 764172095 209775327 318237305 562379712 607779136 49041146 60788990 205692418 311689474 572808259 245082290 917745554 620623758 838565218 191017002 657436963 562682636 342038428 510509746 190999556 512200749 30763713 124622859 497529034 812757893 58566593 988799940 307765887 351272456 680148864 364890908 220091792 844768636 622097633 399018644 523426246 43462766 827365588 512748854 934011427 137888060 638609378 218526844 473614782 923442620 305412505 439293537 794403618 550210351 921104126 35677955 809885938 765958257 696042729 1708969 598956508 967792070 670525573 689456130 535129914 28497211 896319239 657522071 507627819 385778262 256649616 421038049 192647295 238220680 982227137 16287910 872700224 614463517 348031216 772522201 544045066 156066725 48862657 574196263 107849248 154933962 435490352 967994061 980003150 937329618 723060315 872221225 241864369 374396753 478890810 120716631 270325024 712920369 78341304 40447630 217238626 456492513 718037802 38637006 654059619 162805281 625340232 277400615 944455459 316314115 740937300 978360278 902322486 42274266 954290244 513073950 41065612 501046045 240257395 910069174 711335925 338728624 199928477 682115516 652578282 881980871 906604899 46742623 953279657 719634934 254251664 517616726 580285692 117605087 448354929 776785111 864569562 145099324 310445635 980711063 147629457 433903098 925845323 437411880 566143857 599676256 750487438 207689072 916194713 311617568 98162171 352019241 708301256 326807726 872679239 430177973 338839526 543279888 342036649 486149381 300428807 680409156 443246382 25824196 568208868 573345810 643642127 191462175 617871781 398653472 731568249 49239361 125177135 808501811 368899259 286915971 141302755 749467670 80447943 252624849 466315650 707903160 316027768 599611147 526495846 141377726 940626581 961202977 695028004 521701744 427617893 709430517 504378041 801751137 539114689 517642715 676618562 420256924 664750678 894624253 84005207 632888872 449224311 63821841 278754915 517237166 49807382 627229487 776454659 471474966 528349830 401484436 545657547 723410000 237756152 723705464 804851422 178073308 187962700 924726735 808233542 867192900 605632007 206996989 895785022 886033112 219825041 99055438 426609123 266799000 433104083 576452845 723337417 86697125 894327644 928374740 842278341 833444679 810702321 592688563 893281316 605419998 792844868 917232978 542020314 514439639 154860173 207054693 418271175 470815573 407107633 710192727 34582891 227490807 382055566 317215543 39977899 625439167 218855976 382039771 712997994 632821114 480047479 648169857 454505476 467449330 245086729 700239680 751744028 567395511 986089784 760009068 198085248 347010798 878521655 9126586 559734541 7999577 167906995 135268643 688431842 649341649 907682909 391601901 412673890 617208000 742601981 24511453 496658433 942339305 739730102 769908048 716877053 150998748 771198532 701517326 409818852 177145436 770311099 328380942 420213307 542858996 322840370 401039302 97595194 395767818 714715552 774344510 516837589 486669655 414871554 41280194 41276942 218500923 947504459 625526658 491633617 768600880 802278943 226058610 412855846 184081911 116420306 307614128 241502168 403724617 39746490 220640181 673284213 836390369 924325737 819965084 74281698 572881615 349941985 347404701 548209393 42038120 615661269 99636604 649525133 624192007 471746369 560747354 83432810 166731524 895771338 917774285 636904895 236075354 299958277 364193451 275537511 905299954 79406823 237653307 153480809 905364691 283512728 899832410 107060188 160895681 423034767 695292278 131236490 411238072 910085300 531976268 247227549 617512664 667618074 95482408 763399197 532334487 232523712 236842858 602954692 29050270 7356180 382194311 668290725 326999055 359247341 12551130 933267762 928154829 206667928 93024759 829954282 518972514 520256509 112275526 276116806 516726029 255944801 459662134 121276411 969498573 940526268 223036004 371705705 905903771 824284051 823062022 966360612 505403607 385395876 382916092 542183264 488815357 601440405 913495753 830899515 74811779 587202800 462674013 858261332 73241141 245959808 901440948 981819942 142132543 365528880 842610930 787426031 802789534 346270590 403642177 212053033 50529542 788058503 773309493 246520153 383354565 25700987 685756926 401330809 23593042 825360742 305543245 29024381 907582338 642446421 623949167 258702589 436536732 472851410 723763479 889544150 475748022 762269022 821318124 929132421 165202879 255772134 656210006 642474069 489112250 132114340 668232155 61773087 600916023 669743817 120879477 440540857 472904885 200135676 359868301 572793997 84574385 156965472 553779989 390495540 416022354 88972956 808264726 66174960 935903112 68157325 309893808 675964469 266121294 867962608 120154531 177077390 167826419 863276725 711361217 551032799 940039020 604740300 789055683 641514238 737949044 802781117 223279877 278686662 756087712 119352803 624712147 320097172 52063047 580709714 340308605 424362389 350096467 10218971 466759662 251607911 7968989 728493908 793879225 98173965 467660264 747955487 828561996 311546186 761955382 126341334 724762538 526769127 400534813 329302362 148127841 846533476 364670465 174591096 323673792 398640546 380509502 751757097 186823668 391610102 556396292 524009490 469511031 630713687 334807473 2835264 698021986 794201216 204230603 268749799 171064158 288207527 423890541 144266589 555455779 977830177 125226514 483521533 35617955 809915808 464280259 506098412 371179537 67699624 527302013 744147884 280410149 63449378 151143509 25107153 368675159 695161563 914162138 335621311 622132506 691315745 723581984 828210620 543189963 702516407 606573857 992802588 456460514 233306907 437679401 294326825 397982874 826798793 591057914 797902186 711016712 1778896 612893173 972832092 469468374 831534068 61545391 985093697 754923210 54931254 519882438 111842279 630839723 140382182 786218171 414305798 971935808 683053957 95021098 528847922 259201547 400792196 425946829 104362685 785809578 616075461 366661287 303103218 344819829 516325029 891882849 25883252 113696212 433116979 134890236 663145057 759374161 941688354 324866783 142096997 463053826 77550170 903737746 282084006 104778472 52736678 205425423 553385334 45165973 11744226 324777076 839478053 122867326 736465556 823854708 859138614 920508812 88120779 958860856 88844191 314946275 931264975 592090716 148672670 788502587 358045264 429357737 390912152 122260463 439483125 516660286 260297901 763302675 259548018 293389696 151935916 903074240 612280251 433614003 346269555 875269392 504114794 819869761 916880807 911913319 727776843 103642435 781696521 852652351 721147078 113808404 868729728 952890911 53391367 595108926 155248093 924987897 86721492 469217892 112300449 298095713 460719191 71602694 968354344 373895868 690692431 388446504 356565249 833776140 585288593 650278434 371155127 743297449 611235909 169161484 874796507 374423485 974020908 681845426 581355834 747327204 364977988 114064514 804013172 138015049 576261752 439922928 519651013 773785246 464217483 919204764 49949839 739281600 511331772 48538445 562677049 31090366 614549187 210054238 114886919 392172369 942092715 287284261 148584276 165538906 780095418 418949296 55447182 794418369 928676175 60567097 730184593 337670362 550952540 148420833 212237935 577848052 362308003 424272545 428616870 206745046 471255819 311146728 452170212 461233935 446706271 345910822 985706761 115697181 836410440 308489870 673944630 707426267 374922466 633583906 296415960 677384664 534332523 497449057 296718739 505318169 907293653 860287580 327549833 659452721 746993338 623104999 126768407 184139735 707574170 23971539 738863009 421105052 432657056 45066244 49084211 535881036 301616809 814486926 31867898 509858622 971148737 330709102 769544605 570432340 645366025 21996780 712067313 969019114 135933139 736880223 257960516 961098162 612804396 581872492 669388713 509939852 496697025 610713841 281255719 439201504 155583282 782171368 277045907 242303576 733358623 215420719 421385490 169998988 417530677 897562731 903411334 167204224 270468841 31629405 931218436 829248948 492468417 209214238 855158468 343729401 709119897 88806679 218655086 711361664 971593569 19560458 548479774 503488769 461414164 261169100 821331692 260867700 98043163 973678201 674876189 242712233 978824139 307167578 866019560 466512890 928739575 557158729 22087854 536616616 674481202 943538528 863756328 70777142 379533361 687087191 464186507 831233849 480216589 105564228 116324168 805170915 213017295 777985471 330858025 50161706 7703408 927614489 435555839 444650252 661243026 597941075 112534787 2050835 355623632 784054072 117522516 301581399 90773582 25801996 542033489 863295748 681973690 838922606 927312179 818018043 659860516 303255162 255040055 331657201 311586606 286256255 602585492 600985449 457648420 462161126 70138934 452687040 665339221 206310919 155992867 441833139 692856033 819610272 285253892 246061162 457298104 242850026 666662146 223327662 61934902 302937833 869378416 867758914 928573288 916319337 512690480 441639162 183311136 655012620 265315751 912655784 2433356 685316091 565337392 464921320 117808288 342231666 469069952 115129917 112713013 216013609 525559593 543251988 938032454 232145554 391329642 790164067 607218260 621718640 160045391 563331766 560152850 505158825 23653181 280642838 490134961 167439644 785982365 965911715 926965308 952624781 392198856 675367062 880639841 149401611 114317544 659059675 560185912 103544400 593138070 28713690 121239124 516900554 692548752 148604966 436653072 446899005 787151844 597295511 496846745 530726387 786439263 319507688 927322727 747753191 493727742 35791718 323625153 596568926 285538359 834149786 891792171 987354160 187897255 122327506 977529099 248904409 497256128 578378144 621828035 738673728 741490320 21319997 936226604 523879186 180574045 898407445 340926247 406246403 144601316 986253055 970669789 601218157 592241795 575351957 108570095 479101249 741912462 103269690 738441901 733597889 19033258 242626625 993476006 150766041 627860 838281355 542938087 235049702 276280149 936707576 597782929 315132926 118761042 53517376 91170099 989150626 328797479 693921811 616138333 868457847 979516420 1850331 862779835 592440168 323497944 915611413 493754675 373368560 499112601 301498920 516709008 526534102 371527528 468126898 693954929 414789533 35000460 251112568 58742525 557715608 535908315 109094297 325732439 245343224 378186874 337529068 193037249 606377515 653076891 513866434 817532775 639860384 269389625 11760515 544179191 370640871 649530192 349404694 517312721 164073134 749989677 829388801 450298920 836147251 168755037 438306971 609867974 83630937 231900535 546018777 947708299 795412358 919335264 233418319 298140014 429165832 19797201 690350683 808788157 176171725 979253602 480083047 673694183 51104076 71239798 2487910 259709774 670737879 125283205 403974757 168883620 721743535 123610672 391609138 194983038 116160984 645718617 936492888 861131292 207496014 320073986 676316031 67510161 120658965 900412193 182361607 295852853 319572696 634786381 971729063 793694873 947807045 909985413 476273574 661746361 392856424 616057547 38814011 518867614 6916725 598282065 43946494 457355198 793106150 262511742 779154623 130264345 319995600 599959389 600300283 812741119 898984339 782698655 314982698 948647558 172877316 935396832 277177124 25245826 515588788 560168645 607894320 39584646 373805315 455762035 593956980 345149366 696097304 66525027 449923713 27688660 104698488 297482501 356299162 133989803 680384719 874926337 641519943 735135131 86402415 837411790 453222265 923140870 52956006 649272524 751545049 274076191 511989412 754548013 199796918 506622022 894597461 587709783 773923542 445524453 943912507 820608112 348880334 285567730 585661483 484731097 37644741 591653217 787441488 844341548 144613057 906127240 229250185 619398170 420426692 863411838 211925954 277030872 312911554 477975647 978904471 429059101 320685614 819625534 92801852 766296061 253141195 504150909 551781574 11066316 797992191 918054423 314658735 646954084 390306276 649854871 158302719 874651278 408880643 940448640 725054723 673773044 349898935 419048842 447804144 804504873 875863410 76175743 235885380 131125743 50829219 752647928 244466463 986727632 286366138 44252908 633047625 130886480 802165223 819209729 365892256 804082820 771473176 226428801 531166581 476578680 109689423 593834187 334404281 260070657 954794133 166520533 889180542 260350963 571932684 190033801 504048310 916116086 341224123 782131476 175834565 299291697 699177124 863698521 363533782 85547481 570647038 711115971 347446413 441785693 48204086 740116669 124993653 903137959 714544025 983975148 255197621 647656684 190830265 846608380 354602628 807016701 66024578 754384104 411003753 825630114 465643987 169868037 368669164 814639562 710889386 531699968 15713140 792384846 428581815 744788474 38625589 621404428 562387890 110987849 613353909 937114082 825265067 199668931 733896417 889688594 237747531 99661722 784753884 239006280 451044184 326452087 538708522 200031642 697473703 604435376 898126223 396703719 745397792 745517730 456811366 120454064 393235352 846118985 831366663 55793112 977111455 258641259 8465549 421536835 405294748 742100321 672606506 732659362 160281539 507493613 676075504 359415502 63809514 789083330 377929481 203314913 115021597 188873726 951425975 627950894 416077520 173650379 930921187 699308861 93409015 854537771 100109678 140559837 161349796 751669309 835502086 924148281 760156868 180139467 359749486 359617280 441503316 479375852 390179689 781446544 33682957 111085737 588467612 789001423 614745027 154920415 830323109 882563195 480763266 226027118 624606156 503877004 468681799 974194408 83442837 394846129 318451954 903036670 124375101 490645629 693570722 878349215 982105666 86581814 866979660 578039871 205404624 368217156 498176711 586463572 751164093 409531789 181285056 171301781 255827928 313430 807714588 795186082 38823761 956608180 220793089 524667640 90263823 888823644 889468049 764574854 628404885 677568195 936163773 848740345 102242215 270663523 56613521 352672468 352481861 491676829 983502658 179556287 307776470 271439400 993026015 858048862 177324608 312725379 875718763 369414423 860338895 87230127 670542424 865993812 155117566 835796868 687064046 141302622 731359504 450692818 360839820 121291561 4626213 822484901 219741956 5721597 146582149 22304847 628343109 201159225 660938817 484247855 763213806 96145384 798026149 326221554 604667597 804507165 476669425 338219506 713466717 349343284 79612221 944844389 481508627 710234707 549066688 275294893 739904971 343593866 249964932 438110256 896414779 252620923 684708423 687185867 521124941 282818045 85406303 194823292 168619132 646607972 314894811 808108174 399635579 844585084 58348301 34227419 151981741 863591530 648715911 895048513 534083295 382302191 694942674 293986219 416986722 132007505 169509641 596462047 215500345 254801818 728372909 803739000 680957715 925865942 876087645 500719005 501598196 699509767 615709666 777844657 231438802 947500557 106225106 285672791 229203924 360147261 639772420 368227591 807631165 259781330 726191660 612862494 56351563 810856474 855471306 190173652 517332367 921518746 594269981 296010917 347833124 653522009 894404696 898935023 465270594 995668328 390837516 922001487 400728366 976188932 17888780 164381165 116308326 968571098 595158772 714824592 23223863 904703424 135686515 49741296 447928137 920686150 397828973 808446376 541156002 348718589 494370226 416887745 408673306 548269285 401301163 249746362 974223396 578592962 312643974 980300492 56026124 599771655 655435377 390768664 328298923 322136355 443138364 329009725 225661363 484916889 441921055 596564435 889535646 237475786 42853833 577299239 294514007 174874587 429599190 698784742 956240906 267697888 734158638 480695523 768575773 257661029 57594163 193113571 261866098 208208939 525440648 392025731 381735749 637632509 508202730 862720137 307935411 573812311 120140627 289150384 785484124 376390748 559311385 922168801 637927957 893636267 506087527 810462059 629566730 265778918 759797040 411746333 841071614 97417755 238269704 124007016 437360892 932257375 737550386 146929298 890474231 729215937 378012730 148003645 733276384 408083048 196210735 715966919 114109762 543414127 681633472 277230908 766148388 323854784 49992626 712057360 193117902 981387821 113576249 362541813 523516677 768672443 490293441 984883242 640312939 583093296 808081555 949529264 402940716 401533354 213717264 252545345 97363458 966749599 673346896 494355354 696361752 951026992 86809472 199283777 248723547 719660580 179606008 602374244 277930582 838061060 901781609 677448511 831911864 329553529 467333958 196709002 194601561 318714958 555179163 973191213 412671084 371338682 512083247 682261098 908152893 57012294 885939729 678657636 927425661 788122232 471108206 337413153 134554939 975764968 328266852 76695714 496214101 534021682 380113255 240880925 162601715 615651021 842526273 519659918 3825560 740665734 416017212 598106047 773960482 254461491 560367062 915740675 450797958 1072362 799851450 634437217 904660174 773502093 327971720 593189625 109627006 19486236 979018230 788569029 301893803 256274495 410573715 168265489 454228610 137656216 196051274 938437856 294981774 499242809 977354963 91678461 966108990 712933159 271969382 284187300 763477689 153300064 564900554 596285775 29317442 535332675 696268015 261143250 492016050 201581572 821740798 280458276 758633153 804692748 368584101 14460929 583178900 231032237 545441242 599743684 487666236 351747868 943907922 866918781 674044456 225082969 435583282 471114997 130839164 364957254 502069690 567301882 358148476 828346475 342283609 941398865 673373199 262165330 530080325 230192139 490140463 545091007 524540970 368166102 876097667 146791470 91902756 196830891 593137881 953761981 515789321 303488295 977797120 123346881 675251138 854226965 505171336 213148905 414283429 585952126 215895584 825526850 554952154 840778804 388072624 420574022 574162678 460928037 398028291 457861191 808566919 32505615 401693934 562037958 228888306 663605776 798090308 643830630 601826845 28965435 977881557 900680909 376658872 737477955 549735567 368359022 482021748 118603115 668812386 467762032 898290643 869320696 191847616 421394922 311418547 782748520 41341491 792382755 647768395 997003737 887689742 451304399 423075214 828338883 778612603 176912871 445289280 137375078 659785216 709379065 96413598 887067150 854349258 975506738 385868451 607986528 433134701 386749949 598896572 19817940 434578008 169642905 515509945 656025382 398367486 306530275 485795213 801873986 551669126 937576264 466185886 848326698 256147648 672027589 214888761 258913301 425750063 63597369 463004413 95541538 220959256 832736191 379607313 903191115 2027098 177066305 576970971 132359195 723219703 73507235 207905213 575059917 979521795 725433638 687687766 290608563 902000755 936063076 216624512 580124504 339140706 135403543 890325624 840102077 531341708 711702670 366594728 278820193 95613229 829690413 344636740 186587061 168195961 906538050 384538543 157032267 486464621 435676446 887956739 540081708 594629099 718707411 238864548 679608649 110991219 871972447 784164379 851666983 118556076 249810011 442152164 259630400 862005594 313981410 74535546 31670921 890507449 629451865 456793428 14070051 963875496 374849886 855142275 660088947 414640547 182331749 765538488 516079743 594094324 958174712 652479713 887384504 420247491 519471072 916898025 386538243 507993244 540447532 651850303 66420147 92544414 438164436 296756723 783071685 945515197 779932404 101138210 295961561 340372613 549162528 849406080 751232038 46080094 712599892 298777492 468326519 219405033 855641550 665493903 757041264 861718136 893068563 27513711 933226645 195457418 636416444 155350813 685087666 37346895 909156376 967988499 804260372 744229831 344135854 842170174 638060640 162965087 134389863 92948374 93312181 591957069 450044264 863300261 325163050 779271697 701141960 675932500 785663733 448774048 426509261 373073082 713226925 57893211 436980997 679174165 9853358 567266027 448927461 791801919 402476090 90688518 418650656 916010731 956044741 282290336 635764794 619554801 74238368 645947984 615182141 318058160 508777171 345089928 964685956 73462872 590636808 707754229 341512422 172571360 859701251 503628575 226180463 996449046 622734483 929086190 926769931 805520819 244268394 918380931 808155608 659575532 405844718 769129069 914528449 45900044 919149 923103114 854224988 467188350 827565211 697712 235769993 298658869 553461363 930485253 251775255 949286543 634466016 203036298 230918196 304863577 371087243 678977923 508708182 277335341 263871075 36191082 294567418 353158616 550898079 911230161 615457660 150707689 775305127 643740182 903352480 664578977 962522607 915159457 320427772 398020953 584605423 354974726 253808066 565666034 654746476 239528135 830948958 563078728 601882111 147187835 419285830 9226873 361980459 137815829 665533812 833842829 302115818 155949187 305924095 771522766 466420376 316507922 499749741 138326760 873769286 693717003 692058412 211443599 553056394 521420238 531278242 306802342 439132541 296535430 878177717 894599882 93782981 173950496 121007678 552648380 269679682 789947158 534965928 950807302 709093085 740497360 702626729 762339353 663100524 24393131 43457094 587710616 495654911 363779151 741212462 84329018 940998610 942472287 600637350 255714777 175749301 504606624 944542869 882543133 331604816 254849403 42446540 239869611 236457752 510026210 622905659 794597909 220011382 459886603 343943753 539914658 495244058 446823943 886535106 598206313 924602664 288727125 51367992 462416102 270840007 236512177 550127751 848312936 862414897 277457348 186019531 103216527 762710797 559454309 101285898 734775055 146723866 682323337 920482664 960751521 181144648 202369448 522806381 823997022 754385490 696614876 871034509 532114341 427032871 47105597 976530652 310434233 192198963 415455618 139211037 312779500 452505306 256969283 928409310 346344975 213122862 365604751 69405264 273411465 762966955 153810688 235291123 304914907 119584045 266507937 65559023 965662864 675254400 35884878 920725515 759669347 339097510 495872555 406057848 547413911 271493308 739643671 179676843 196874293 338781367 418726117 746798854 536095115 943990332 936792210 892820471 511763255 939421543 21292692 863963670 106888753 348235971 976823379 837721202 600623701 276477837 309544526 878775424 873418893 922551148 115013500 382812742 847669458 495461098 403840976 48421783 790230728 374485657 409076316 234520776 912484709 111823496 986258633 70056147 905746312 328823133 92966362 240593760 978168280 133508202 942509361 185016317 128578709 254689754 997773956 191357775 530164876 404318240 400334865 923811313 127829174 825635640 136158411 631221092 955128967 515106062 130172668 348613563 452740263 603750592 252486056 144195934 196553332 881594552 958512745 565945136 889646267 692142802 647317068 366390420 956617196 279709671 9085671 375218411 879812626 549062440 576155983 437540406 606758350 989079891 402485875 84860805 45366629 555294215 859255292 479831254 891303393 796920746 888426830 162611533 563580075 245812477 877322926 93214274 86727711 868384669 719793184 487857309 853803194 778221422 893994769 101376611 210889437 900411628 837536447 951126651 87789788 96737165 134247095 974063007 508163671 520425658 245420833 638135215 496370421 660320141 741399588 238385163 291819885 99367092 767375150 262521345 684218321 933821996 663678794 932919199 722350438 113557949 378852158 384204024 566468216 369180750 869623462 705766529 149266533 47159428 90141207 506351792 743034026 618486826 822024258 301250608 45558338 899310961 553384146 340868851 276159365 189844021 787894145 768715867 295283751 948857934 137942070 438163471 433722906 538881994 49208289 419085833 960231031 845854627 904266737 164743332 357437333 65945253 804947746 217656577 937707090 705739862 425029335 353957762 210462851 757222656 774417588 277487288 174436075 118781659 456372264 327815270 748257979 680259228 410931786 241439420 363061365 160711015 807894790 507707738 815848757 669906560 173771555 716417173 117441004 830168302 131443328 786574852 409090681 259504343 105306218 797463712 699378666 711253723 819161193 778709690 612716905 364527543 677258992 232512137 291640069 126486547 626371416 705207050 984859074 61265402 618861 996240048 990913099 342597134 589049607 497506076 549594270 43031855 908984078 992384280 266716966 283532198 694106786 261405260 306071491 912537702 502913693 177553445 561975732 679756251 702172883 545847177 993713158 740046914 219412730 177915761 18169214 148552803 611504386 904147115 967926594 247655716 897245808 737649491 491627240 924802226 948979775 790161593 646452777 784829407 430149067 167314947 95131010 221847530 917974036 965891756 448064543 829499087 879657460 531215612 759359927 53580100 451027463 33554906 484752184 85330617 118089148 59444705 218569511 838571793 877660104 855105490 690468689 48233098 962431800 423048142 265721325 497437295 751451419 215393622 143548748 983451868 739106904 775472182 976394094 857912009 376828641 114897794 379367816 301539709 765595725 331861122 502914093 668132954 106439517 887396770 909156121 749226755 421827877 90011959 661750143 626137836 668328214 232774922 705437480 988387359 30914862 935169306 610283586 593727863 33442121 913819359 894062657 112709784 119290357 214841377 378674959 700762990 308841654 851378943 435292692 488050408 713025141 663599845 740180644 655597659 880163062 250238923 126196130 151123842 260081726 970650310 560459844 681882698 259008491 103750565 648830144 822253411 379146636 886295323 265524344 512242210 305828305 459406527 293612384 137522082 170853787 758314007 55517765 609725146 326296846 991316717 869495825 296331998 135259083 272553451 814054820 473775496 369760401 599193705 377957642 465294937 968496276 637054451 668609578 721358780 878116571 135571679 594130660 615341963 393281182 821779278 323795434 586929001 258972689 311488095 802807727 574570735 476079948 785944388 266541344 472995232 23744246 288007576 834585900 402158836 4273956 983423346 470764032 614604188 359832589 26080088 576460640 61519403 440230074 858477811 865311056 254068417 617303943 181009617 387740389 394239943 167200305 583011008 101789496 88740605 837207126 752869818 970882689 108519958 616215934 793191772 736773212 734615047 235901007 394046615 252223229 756154443 633677567 706959798 476102769 629944128 875951352 834808172 88163749 242359093 546293633 853038679 862645029 793279807 60821071 200824612 64018340 188525045 984809767 207325343 993093688 187178281 176922995 176353494 809551852 595019482 2818036 654890704 411953205 940958064 318448386 319623556 957506053 608018386 739635124 358198152 377562685 475376241 222421232 133337671 408249436 132213407 74415320 891157792 452134952 90928864 679896418 47932507 390782388 910449473 549980885 553966116 282148547 952457191 121064290 275524499 176493152 867980776 747823067 497381337 340349393 632546477 27468288 875882493 620156473 797361397 931406688 384102793 366661451 125259645 509341420 319149139 595748234 83345427 252191362 406557740 333288902 654383439 658521937 921101254 423362396 114519163 238572179 531781110 666700722 365864833 650291825 495314212 519797076 499705908 629764871 10461936 866954542 463023349 147581469 888702151 93135 810300987 216102828 9127009 421631832 151060289 287947101 800104757 589764808 790121891 776629141 453851064 1805523 830271967 519561269 81603440 986606495 50222258 546948737 88361164 615081386 257393337 705076629 653640656 990840958 376367135 427087593 643162753 978942998 204593344 260880213 376806050 55102352 595299066 211608524 906571405 868401579 912753464 247666874 705743605 90252277 945313361 952607875 323165270 419539565 548319467 391034826 231621728 369305008 407339112 133797280 607946075 961559070 361713111 395510261 900833371 112049960 615895845 411925891 825327768 456230877 284998138 50514964 589287388 258460073 776742730 433229741 676072655 903912130 351113108 852792267 502805741 732608543 671315993 293833784 931256630 948314398 429907581 278756312 333526628 89077221 238072518 386301867 775229361 411040622 790515600 284151087 151986326 408079284 40325393 181414713 270313577 161688717 275496249 99281845 911433315 965088881 755151450 523152213 484136683 994479459 436458710 276272342 372563594 43101964 163517312 35586445 52195272 149805894 428457224 511337262 790649180 730656544 675242299 253998960 831186204 159863299 115172363 76731530 754978193 934862657 586587461 723167636 684035588 212193695 293500044 474082491 81444442 874306382 848954054 708562907 618327008 577110999 367693499 420027143 313066174 541294853 486418643 680023324 815288888 754179755 311850010 784105953 23440130 662947593 415332297 335963935 909128434 991822923 553880399 911595333 731725683 525627714 458181922 628250676 191664752 712231418 57043386 871276160 396943547 101991367 818354538 158655761 325579596 791721515 891893445 937149153 155711975 853793872 550466595 258129893 165968064 397557326 844649918 905997003 221340831 592665322 655569023 706855449 359882406 840834968 893174167 59127996 393269970 877201620 815166224 492823347 760683033 184027662 479377025 579515103 63870596 254384636 53319192 94501996 734367058 834087518 337478204 438879158 350510294 596471165 109773835 605372957 268927291 129941232 517489104 412557289 645930342 384911915 104908795 613655596 564290873 288686241 273808622 591171149 847799253 435538467 602983317 407656796 384485486 408890616 198969823 656452795 695617357 679946699 142271569 352066551 904097829 942092608 159844514 721674950 146640693 201459675 995173852 894660385 995917980 223269318 512799785 766866469 175232239 909826408 94623050 84380648 462941926 962736598 838405873 778117441 794492697 467440301 812402684 797056469 791872679 539762112 47645036 755101866 900990754 405425546 473585556 113327217 501025500 774916826 349211014 303703534 715484706 665469562 604014205 398024167 324580552 457685469 777986328 909185594 395087044 888516455 615356659 767829580 605763756 153581065 889899072 296693724 793718044 570903361 221100915 942911212 478313018 335711338 573088462 202862610 395884682 126560598 835290484 320119284 321150151 304101057 98657794 466711593 71254902 653032523 847482629 368332530 728887316 691405549 893982291 885905770 927144583 595367412 103229213 589321081 646764602 340610345 326329467 131607465 890366987 222900979 4135834 730210184 655948724 914381008 182483041 863714804 378650645 439915840 335692541 532629918 252823701 74671926 745293327 618865305 350371973 865109967 629744602 57583828 568398230 433001704 336991208 118203260 64875139 895519862 330073208 361676559 169955845 455356805 701104490 228450105 517234138 480265768 474305303 935680973 764519510 370287133 763062863 473101526 602590970 696937809 90041788 703106070 112521890 965566750 539347773 303640673 225408856 620987733 348315465 115273848 851708971 372744937 116011810 593865736 698921514 982202391 26445266 910174875 96846043 472213046 250717565 541436278 816296907 128389255 80695537 423911859 75037174 23033887 550451356 169108667 100067488 759117211 613484165 294404226 47338964 249306503 201931684 492508619 491385493 283679935 924547438 705974437 429583854 294174163 767256527 567632143 448085510 729558582 1995676 819447507 612387720 500345965 299410398 387942022 968659817 911567407 431688647 672834410 466074521 965040701 777421832 928941030 493365766 325318735 137572774 208029358 422700797 531176523 650182324 852844268 338689480 588019402 188460450 304507394 779955007 562782331 536258709 220913813 157923592 619229240 769993089 330529706 700255133 402182612 342578950 278798259 154004929 248032919 720008179 773172799 419483280 209187771 568795092 529529447 128409188 810240632 6993054 639221011 304119663 160233096 125916193 498159684 660283583 26691367 788014928 507189018 614993165 371397673 312659714 533311251 379096382 953409524 856545148 71015998 156889314 100442174 393963104 16934692 738964232 846973518 649320228 196227065 846732959 214817473 313666299 969409587 255460325 54999864 824652832 513564822 177981502 505175160 322600180 966538347 844860973 160606976 225981730 358876299 476046426 119476818 557349281 495196065 343731781 914797912 697808164 253937458 757467686 134814963 68818253 756338049 799464900 957642341 562305078 923674507 565500226 283337985 867829335 218031734 787166375 389093139 408150909 675570447 882335046 801203733 919311449 280507405 421476200 767208206 902214434 458241557 456671611 506616976 186248057 117925034 562778495 272852594 678809114 416794477 614154676 567897949 507587568 491983875 140460617 501378044 115759000 289954548 156398726 66192951 409356397 137065860 109987343 236124009 404307710 179748453 608362408 169994050 292040498 618729207 749907617 188943431 414360563 436883899 655310238 605511031 504373020 809873988 745113564 837577838 178244180 16152355 382895639 140971499 9827141 354911620 378647577 772691101 197374649 565604591 18447890 280013976 318086517 384295627 663333563 458000813 764764957 423863473 425822509 67754184 189000673 115776362 34590374 200112944 529525929 865353925 819967570 189034436 257146684 785607486 888241641 885191123 865904987 974519566 773580858 321761978 143036005 14576216 46736273 657199621 50347915 268686597 766000339 248769204 686294926 396024575 797381429 341942841 132350246 342907738 856419758 228140651 629050087 884904788 25817765 643881258 863861612 452348415 775840039 746347868 443873146 656252735 891607005 68287936 839284125 370639552 573252674 652863675 650360147 958276007 60581214 422077704 501003186 301256156 841143845 703772911 111088730 627484859 107002070 731143046 792287625 54805682 931687042 332645672 808280455 969217210 625841514 654304395 376463552 265122928 36416874 679330504 123586557 488286713 190616872 906767279 592092899 280342198 245298046 129278418 14328071 454853213 924212169 423183805 775529443 939043112 214337264 386655766 994270806 748632065 576972827 811465474 840121576 743237094 187905742 561091539 840309996 994614563 427014410 627472936 216352337 22204878 737845320 811186434 166631656 268654017 627460883 471592479 324494084 523365956 605628774 276474164 939073510 184326714 674933552 342074846 902961135 47423464 93440804 920488596 527360191 661510546 39085183 390183416 916242227 128894514 106380195 347812835 703333473 298621014 149417254 616785576 215793322 107930433 948457769 61849805 196621879 516251383 436495251 692499419 722019155 302042902 690892816 194672968 333539397 627337413 725703013 220576868 683322731 557701292 51032028 457236806 274614856 587103126 947259077 477702633 745407844 165805849 890990195 330604445 810285802 196274034 415825897 261625439 546081749 604692109 607444562 336286356 557871440 349440639 601313185 81119739 760580213 671475560 241127851 539386294 174689257 389586622 762041322 581972652 245061818 227139256 324458738 555571726 68792594 413522464 124721569 872890795 250896884 711953727 187847275 188738928 618612713 979614135 848312427 291560060 943409678 387040779 23030488 254211804 83065837 179211558 48991639 110559031 388550302 744232468 167102413 598564576 767972281 599931788 702117664 148670741 292503626 665930251 694590210 533855522 680102154 292793131 194297153 61542169 643934788 741056171 695693687 469949539 469623186 593904333 623489427 344774350 370455287 273440153 157445680 965159970 737084762 434335734 52177444 502267676 205312205 524798323 338584953 381369006 289401668 221950428 563077905 595036531 529173810 530900194 321333946 874189451 35687082 652428975 815764309 375306365 549518663 805144398 804088890 698249520 655968528 656180959 548225535 170133574 85306679 490597496 459260048 868371607 528826331 105423149 985904895 597149482 290466650 155453196 80915721 777474138 878958492 673467333 704089006 354965033 36983329 511762348 586737494 157150346 308878419 507415957 771561998 873595509 654357192 584338495 486146270 932600815 210388474 369504617 12794030 904365014 994231057 640648950 308000513 519323449 469037216 471987425 619112166 50572058 806134757 961979939 107754484 950142292 150687197 44003071 589675142 781406569 338848004 857277352 854861343 405128722 583241850 79045095 532227039 920960132 963338303 302622308 763326938 20409841 56441519 230542805 346806478 739661987 64640572 489892488 427371166 222594884 119964491 150597016 840741221 426687012 726888921 703312184 33965503 649191052 296310994 318120343 715670429 99084441 479793631 120005573 226203562 751991373 715096154 567554806 556893757 927661308 500283353 359193864 710826110 341458766 931581650 364367778 388175016 198028782 848843094 945260418 750509103 113261019 458475999 115863129 424712637 653392358 86986199 27922677 29753464 478504948 806262161 176545318 252370547 346623470 430904490 857697192 604237345 844265920 852922630 266016520 528329324 845378071 2697701 865554004 351479363 662094474 522870685 1056750 429321166 232070069 126561786 50995956 688914248 228120265 523964788 146145100 328508836 691121403 685073924 398528733 971002578 18486227 592514442 820259313 422069364 803306651 594600701 717365891 330863458 516773337 120732398 775554062 858324726 705492156 44072754 278099540 339686167 482606315 175237126 796480799 585064521 186122048 962896561 2245921 524601754 534252164 888692524 976821022 789003776 289998500 460336253 402527241 689969709 469659210 631099644 806685136 362937636 701374764 82703119 960731254 320587345 265902698 836693729 585561317 255319946 752877064 352262397 827766885 488101236 684492369 917284417 329784893 438726294 165850095 31997012 40624428 773041935 673336480 484480545 380173799 281504484 673278779 304270562 805130526 795427625 786864933 325399361 743282871 400312300 651084343 981854820 557736493 525806768 630632254 898464269 782835639 370982564 866860421 565888596 391596051 937607142 261426347 220162237 721725597 838688728 637206299 148545772 432607675 782299304 924604452 373886004 367209662 545205200 775649372 981069928 182295112 822087884 350182492 168943783 203290142 454192456 61856455 475868371 277440506 549156845 536188117 124926809 520281870 707736510 393308385 717575106 910924683 159985386 352331671 730067470 914727279 955479444 419379935 403762425 840972808 754132987 518536457 813325495 233346019 765334999 186328711 153163161 504106622 54008899 688107069 982922709 239775305 571529680 513963984 50962307 264923443 170316628 764754702 425689177 893256848 87208849 140662988 406497341 949688622 402999063 60503118 11222972 69255560 499850503 750183646 723707366 982750306 255914727 804078806 754114057 301867030 319672328 162855167 846609703 511232754 311473813 662610512 144521682 205980129 845897902 458047069 114131371 514952578 350261522 891555918 727759810 471949068 301599937 182062027 870765402 760678485 520123108 248179145 320983081 295011973 216868619 450112154 278595823 844327521 26524494 314934892 548061440 956699931 617535617 335601179 530446884 341443534 320788254 304407366 100027491 907948091 867925709 591085639 166134538 453966928 908888666 776850142 621705057 641905736 203037866 864815185 491244376 432536619 329300816 206692186 606910809 542151904 271689290 817589116 853416839 595513048 360256423 510827153 407602962 783508990 2822748 181314036 76074663 218958555 215773348 80223195 24966728 538028829 925670731 446780566 926822827 750603569 941028669 876850860 237351951 547438890 778822099 385029002 224968823 279706393 416210488 524166793 912860670 113531656 745456661 150554128 527305271 195837640 930428870 987439946 658918613 263614125 251226025 882898501 859966644 57746852 554579723 825662825 6940759 193929391 730449781 55002426 703414016 35300654 723967655 640686394 771761448 198290019 713155739 61554700 972874720 632334788 536699951 482469324 134936409 352236967 448306189 689230730 703331512 922249652 234108957 649934484 914818102 630720925 551558239 4267657 831225115 902489075 545035729 437160027 872674863 802879143 403196959 967212355 945696105 614542512 55840795 457207053 580804046 601587382 789837741 818138244 560817148 759348896 421451851 669310726 405532822 523064935 355117953 546384375 386818073 320454745 166428099 681672879 301768347 780931874 633154927 342863965 331912543 589175980 914314254 443032045 137517322 636284260 300053276 764726377 245829975 708279603 949267225 427732860 276925386 120546120 194085844 875979453 644320789 197014894 522115584 605643859 793562881 71722386 213736015 185357184 261925570 38318081 160862966 442289861 252508956 446869955 533310952 150857651 429132739 919619074 566729972 289513986 51988824 663260614 311420316 655760320 473146153 197177518 794900588 571043875 658468932 76676340 118016978 793301416 254722231 995619059 288737775 209102540 318652343 515566515 831170436 587707649 692870615 311924771 689526166 886142481 571850640 16299336 569180574 789952133 38195555 226392001 284498518 477776442 458459823 808178772 945223793 194695684 965557880 381878961 122192843 529868421 177749678 375767172 650353299 58558961 239301773 960873532 752672657 165950846 379944120 128264099 657034882 447831692 768010902 525478868 335209756 109210177 392447042 512040846 637796799 755738147 63110659 367908216 171361552 701460918 607956800 855310561 413488646 727000086 850671774 76790035 883014542 442788905 960209102 141825403 534497087 850249016 22547784 336355801 548060691 238598989 538658962 881218646 482849852 456852416 542598631 569471115 919314226 176424609 118479761 311822820 855216365 206810979 422352790 498332644 508115574 554186445 939723961 523541984 329660544 68025399 601293097 184227068 932763054 543122020 730030027 222863956 830973982 821469872 268511455 323356507 815898495 86495916 154062418 751814984 58725316 492788318 254016140 928484374 365311610 154571573 139000659 919047405 662631020 369210802 528267990 765399940 188297727 43063614 301324933 799060933 66377192 98407778 132386325 416636852 276801331 364082691 488823271 917205738 300646142 333542829 196453354 520311034 924344035 868234885 359731925 880361510 621026944 682000308 411385559 61332203 765846780 951169459 461302706 299984887 23173511 598715346 341858020 113917918 406308068 715115747 925303719 96887584 30815830 509184448 217023110 531658699 723453584 901525847 897141174 514221092 284028057 819634221 855193975 870978492 673037552 506337647 811046759 719871259 76305225 357341069 642106240 224013846 139575466 620308195 403878833 116120224 587065827 3320597 747911879 578114951 350861907 587280268 596763519 52846648 694448534 289893081 864423430 149448648 46847586 66915992 494439229 705251952 789676355 360697470 75358555 146568679 940236193 987406149 279026251 653814773 229103592 416921167 279747938 579284537 254757091 477123876 752916181 835552633 789300212 20715801 515715598 22669137 590187372 638613753 350388253 517705046 516662806 696323297 679207793 441589435 408900747 929987024 810509717 924565343 616287570 706125663 820167296 615645715 143777706 383090133 402356222 189460476 89837277 676914578 564912928 880723003 768724461 235220523 88277589 492853415 994169510 830330958 676159369 397383932 279798464 597830988 666719942 141067015 709417431 79477801 447430270 36118328 785251826 829253124 798299033 822821159 755273424 562003969 698548220 477809439 902762269 487873694 487379555 902116968 852535102 336691588 758120217 6895186 742329065 968195274 137680163 233173638 968203776 37976409 793646751 969670118 195079431 58909190 501957537 691404233 77986331 273501854 322368562 995802479 153574485 758822749 168587380 247639034 593986138 457054609 545482162 41423331 297432219 920513165 191217806 219196309 286806586 794300204 222933435 141415627 473284559 138644932 884930525 928749829 557241551 582456088 271999405 19751350 239184107 597865983 55323221 209051363 258464907 971585684 427942083 539445419 350219083 543484307 750873808 656249224 424691022 54658387 285890971 501604461 732827059 25565036 840916155 365546640 754350120 759560013 591808263 731797489 773374480 751295848 195084108 89473439 568276822 797170023 867517047 362535825 662387850 829359706 722617575 686635877 586828510 305850023 851889603 533042634 138371559 197884607 181104583 752069111 736618432 616333829 873213614 215687215 563689873 313987499 967151707 477468682 318190896 198906880 894460751 570116557 894461193 818211976 713597113 682523561 484346889 800142692 295789053 972862021 63538034 593915824 518688877 569300596 602543457 734944770 448940033 749066345 511240546 211635090 724773389 190272690 421110449 925446196 833267217 225450308 227831543 260729450 654133065 757448845 879140646 532852185 204971077 351155876 664186856 665336278 243103136 447590567 609457332 854183329 13903089 910288304 243276529 763984998 478513260 728689588 77123549 505718826 604015392 36289870 18410189 237627739 791333146 20320675 859653065 398315481 698996833 600401203 593533164 615666997 263819828 340913684 271109440 140360172 352488932 218780149 234965208 554026474 377688219 67129678 438786256 873994556 408251877 28160197 558540020 38249742 445125674 923382076 75316569 205086379 723083296 713003159 180231168 387368462 816022537 326054922 989186385 441177577 892773942 605764780 535761405 659887242 682337 76017896 104756946 437319832 358711684 25631600 414900386 415452313 930222464 772121806 104568714 770762444 409287934 640596071 140233960 165287375 44137286 249079717 594013386 877217490 749181213 54776446 686964982 501356408 673348142 112085041 846498769 315396631 164510786 813090606 420858021 805990144 357247195 632013701 226859536 92696724 232220940 728882750 902194383 737274674 504109473 212024664 608180831 711421915 573339309 190111202 498455572 851953402 854068666 43775919 452424347 92666194 617538280 319675565 110769827 291178152 407846533 226245869 646336977 736322210 337162541 153230577 331100855 264629085 314187899 917488931 649724532 978600982 914358641 476940295 291078701 231827691 555698808 570036456 704491301 858382218 448335226 97619812 806075762 61847336 20249390 759143762 455398123 573894360 355178119 777899485 607374113 619857827 451068412 578075224 956580855 527609362 78059323 53015716 51060039 446938308 480316275 966174029 967116624 643947766 427481250 842803397 508963900 135910207 829068445 548360797 275535044 775753330 748715555 268286480 224209794 331175799 334116782 53221511 144165001 339631795 861660222 975165090 682577288 561657383 957572415 113046447 395505121 698402194 765302549 413066851 330492084 62004997 849234073 629168463 79682173 299192805 900194080 679032728 222641846 128268383 312035670 36496720 459860911 482129747 450078552 612629922 665906395 398427141 873001846 500251776 398478198 253123018 595737397 308194228 729493164 706667722 264562532 725744177 134863566 168149784 840988696 921979807 678601459 872306502 670778695 34149879 591079497 896502655 662371696 279447005 772876951 757383080 949183953 928190668 231950402 534036788 449937005 481984774 852001170 191593560 946666265 554109190 403641846 449070874 311857803 915531945 539009538 354862416 694558278 741324887 641999911 860763288 954178851 24140288 617200470 938589709 428784524 772704487 37128358 716391101 891477764 726952849 257112804 686753801 323594763 290904148 325696660 137015866 512659042 46684141 208810952 353156928 807686943 570958893 992871819 565211123 211826742 646030161 863546 299060301 181215597 502074420 901422308 118359989 168892381 265788552 539376164 866720210 198724987 947881616 635032956 981296225 455428141 606476118 720478012 31191220 923353658 845708302 405807910 559217262 665980328 761083513 523904652 145209106 954320840 37350900 755640953 306399807 644528264 892743955 895717838 900733580 395432775 374972763 139085917 47581107 86660272 384407884 774808653 472850076 203997646 116968648 615288570 389203286 647770724 319730514 438433340 38405301 345360236 605328666 135181134 955045741 118815726 622298968 971224953 494302198 69022140 373704924 84082626 347253892 207162624 424651420 887828449 365007219 632038715 772374924 975496518 332122869 242658954 56116721 744709732 804043335 404088372 802892071 842937680 240583739 663704171 732988608 816476824 324956749 282081640 990974891 428675680 989609729 48152198 106886262 272768297 620557924 590947402 242364503 867872711 95805936 734936656 988775582 238390678 815957156 877578287 474326186 968685568 587405927 306290961 758845841 936008270 237079547 47227433 907887992 30708633 894147286 910765306 809580607 89473846 423647786 682952952 970389274 565067518 894133561 982501098 647597388 696000600 155462577 679125066 950620832 236215711 755229669 346180442 231189769 451739644 885699812 148544117 857635592 66200648 969258935 615515264 943151994 808148814 127583337 632198341 453755470 897658213 254136224 241613767 650946643 305122237 253128228 929758519 159122073 787022411 313151529 369168801 348462945 383918283 498836880 762813953 563997290 899618587 772267295 880918261 717384918 746638252 407033922 260248206 563199731 212386198 825936372 440359622 290306445 795208175 221232788 44880646 509437275 460769500 699575530 967267020 328278954 251819006 278120316 391339891 707028833 386331711 497467489 684231881 293359255 388243204 156234009 664208000 70183767 622412177 730462843 77824684 398766532 479101154 93609708 317518763 233417361 746766344 692816186 390864434 643246589 16324652 641530601 733563223 692659296 825698096 492235075 836962024 253444939 371123692 496264918 334895315 606128323 495389451 395370434 989885698 19556927 908334621 810474667 563709987 380421920 82674443 751559733 41101091 863973357 8477857 749891886 382733527 96935405 535997080 487901563 649815788 207339796 584208715 555868237 690634506 74543840 254190287 636250866 200937129 836058898 632866731 489830888 504297317 610454736 535778566 615199267 869961667 638615089 185185646 326756677 818713159 747155744 357934420 283272017 505309720 941344190 117860270 23551702 798250949 309435266 498304661 432331287 744080900 606102381 36508450 198853956 214719741 874954559 669227526 216493513 659751418 504750037 314056493 836481639 623017921 198581748 344873077 30853233 774344755 942958876 307140941 231086 90153286 385066313 530166219 453699745 437412362 696558774 786094160 848738517 369341511 791627967 589243013 713778184 419937574 920732277 198639106 291142581 2477752 165135482 156360909 216622691 419282852 270978496 352228239 760068694 426468695 354552401 540661501 288419047 935282481 116848338 510602635 666809287 32425987 340098063 630688076 160119216 22995324 769431256 651345126 46232774 420812723 126827386 954373186 337864765 298824549 961792600 719541004 616805511 860061360 721971509 983928501 683467673 249107058 289205830 765534377 219422434 937422548 281404733 807977975 679195216 647353896 226944337 366770320 374106244 987348567 841657141 727476619 842445512 35643976 48815221 641646423 962947993 72800387 961350817 408493134 827939883 462931375 976742700 351567882 864331761 18708171 948748979 698817887 615188325 550577697 824146501 848236650 42297154 343604470 935396696 645866349 795394355 830215384 153229176 186892281 773588851 587808916 561918596 30401462 588243359 603862517 919001702 507856747 804048796 495480607 847453030 647452555 313977696 452700262 341322504 218445725 115622192 264704935 193393353 549035401 128066184 168715807 632300961 781331672 990299828 65537887 706376948 847632887 995786134 59557759 67514715 265754118 6267629 760687321 912198930 84501909 834703771 555379160 23461168 397296442 306430568 205482569 813008331 473769516 165401027 489921642 499359573 272467956 617871141 459052841 929922447 984867976 564198315 817484157 31724727 667583022 521622800 593990256 411986745 38332267 251956273 511699746 741034647 587679039 103631606 833904976 705074716 53109533 547351630 213940829 666676496 554978416 868892079 279329083 767862610 62942844 142051176 153732267 4759609 504071858 996844939 290651171 876310682 556835001 496162816 52474852 465167366 885250375 103321437 233295875 310260151 62998320 185744857 605314311 437369137 467974660 246327576 420387987 254006964 93546259 464907197 16889276 793226299 241870291 178627605 496791812 388957753 254830697 10339510 445525960 521798849 29147527 421469971 218083297 868346458 523838471 227363469 614835932 458767105 485608088 477847216 808584407 873193719 37706901 299067823 650330832 638593300 973563432 751033168 794226146 775424715 390870437 422928429 769534893 313682102 274738215 527965195 430427448 108477692 610003777 328009049 693488955 437022894 351335534 705194872 942734896 408957385 581296583 833710347 996089620 208445021 11344861 532079603 470866819 257222796 944874893 558737642 208934548 433300359 646649775 503381300 692807752 611261553 128206000 627922474 701251250 893040819 332068519 860513655 542557031 867013964 289073809 517154282 267944239 402084259 197661083 131603272 435840876 275926062 393096178 616920820 204594871 571017701 406993245 162927582 1306747 489926903 719886436 91113476 133141814 913750897 840004045 414328151 208985152 528659592 900776358 542513276 223955624 206821560 793367045 787923323 854111772 332068921 778646722 428630361 914619086 353843762 527738183 155608638 973659135 721555935 445329573 197711421 976790673 480846093 448065693 760459575 627430719 334732450 755647452 817649778 929045334 437760083 559886278 744331727 945161593 229977907 50883659 964322942 198735265 151305147 387861710 944399281 854226123 525809196 896067968 912397779 914083831 842946574 856251741 166513434 957797060 827256318 924586956 759525494 931263295 518771389 855842465 353865146 403568835 135396368 634372046 41638456 363636878 969275263 34023342 646737863 698681041 953896059 739585056 938230886 533533437 954745780 605418934 182396461 220521099 21338973 932978786 798196779 528397732 132691758 283581113 594757176 433518788 419871145 335936339 120667023 226145914 591291471 76197123 813951028 671872941 527245023 996331525 464692442 654522800 676767323 482596353 728111669 925910531 768840633 996538701 952405199 791772086 834431915 733236730 554262586 939558054 582308852 338467015 207427982 35768753 579942180 677329180 8167277 310666306 166864520 466204982 747608156 554559389 926958580 496349408 421660030 113500063 948012214 777501918 106076665 382548733 268931997 691012677 765927384 650337146 832208454 426767193 96380147 634026594 123595177 358915834 937202879 48120185 218868395 247384648 179327926 605958034 698185186 366494531 769469707 801318699 300863003 732957548 217558588 482281087 205764930 87265547 405625454 422932070 638591505 844471663 171143629 595737072 904522200 895834970 595676872 922903026 761835216 489207624 601739972 938683410 8952349 55112466 567052673 448130191 755843274 503163020 779929878 726641175 721928536 105330089 957355685 239302861 517033074 101316398 963066264 532107415 705395103 957239342 919185924 971624045 744957115 329557407 119220389 89175402 621258255 924614667 82503503 663843349 710692202 495108237 781622709 717301943 576484537 631496350 36332652 512886253 469053473 773044608 433180858 869264109 895887481 391978042 68347056 774276275 678155365 650986478 152035428 209619389 148149919 767484867 105642505 762715307 432957657 4379016 251970516 550072863 40637798 158981173 125923253 572371695 344377688 634985617 555433333 379775645 684773347 835933777 109093976 952954062 657385057 135735963 698204095 753805668 414803517 594481796 714596736 859353309 792967532 618934668 628281976 588122434 328441620 634385984 8892243 757558858 594046332 608456967 932505723 840507979 56504035 478490528 106273603 683810075 125583607 74199173 420169887 393967119 135906586 121712163 209766183 579796521 41174954 312977412 424517315 254740557 191841564 920422851 479226052 176967799 812874305 122709093 261351928 624278061 268805700 722176408 155149175 342046431 230135695 702520120 429311553 259285614 432198215 165222831 277101686 148150846 706647165 480572202 140049555 810937290 130717103 590391576 745739112 72958050 178917430 121701755 64017324 231776103 245106506 818863239 105403941 354504901 458477131 712103651 981517796 563931587 412670399 339806859 365944580 52109266 623650659 246582029 407173688 305388613 293846835 563670627 334867517 391767586 827172806 459582683 763706404 79065527 608077827 62540956 189188852 304898386 680131362 547357907 251895157 217764668 51790532 823061621 821091946 140615031 649205166 270900628 776186241 534820783 371109248 176976322 281464361 44085831 862301196 43150747 590173703 562779130 73083124 248665505 814137410 2342595 554348104 510608513 542866704 744237677 435709107 498320974 217775996 941076441 664163495 455722639 380899523 787721509 411863099 678123746 276457481 268680129 595782111 478908323 88075073 707255839 47096482 17381601 200362663 386871045 346920659 593795484 450810233 2851887 630198330 925263888 496886962 641647199 882336011 112808282 279036815 964046379 24313341 580025493 323704218 670089894 144220904 159185902 644151901 52381155 462990417 344107875 434788576 349780805 877383182 537430235 704056899 282220787 862889618 816073358 366518923 378661784 643490229 572619997 75736921 199391372 540237085 308693507 597945162 124010437 537792108 508920803 987948354 521050492 367617139 671424980 737433884 615255158 600074993 314542827 722340003 733584096 215752579 203658709 849218980 521861350 102475222 558149260 628766610 955138811 995729756 293589039 151554000 206449115 661765302 755208005 137630970 460347869 768836614 604458328 330636299 330783311 42488504 1918727 171020523 617935531 560945877 381029475 694567308 753288634 471206534 304680019 46583540 523592220 343047413 246324549 645098319 422283033 177820596 34362349 202929464 848036840 810103669 260569382 74557844 394833003 862781485 475806747 906812434 542016921 565774675 482942559 340290394 951528349 786552104 649581382 63350013 599893235 966133680 470789312 377972756 463528500 731980808 291278488 920954293 932586046 791426347 36122931 326929755 412912079 194302802 576033743 911733304 851163167 804118910 57394406 1247907 653710825 429397534 35292234 859806537 663154947 500250129 266668860 773198248 147161357 335447507 699270908 512853240 732461575 854135566 956163325 11191261 16434643 894465567 361138085 780822374 925337454 639581627 181631020 799646239 498726176 179529668 64807921 324466367 500814230 527572747 414874365 253874287 329590952 85265570 536550358 477075958 92594414 223546220 498723233 941642047 672482013 722590519 617186798 948836798 363123467 104935400 270165086 623752535 633379044 898404013 295001023 523252049 390736882 739544074 893903145 960147345 959073675 327321239 689276087 989867801 318685472 656673954 358759211 163433523 38723262 307276607 837603750 449479844 530557480 367353151 915229374 307534109 42172338 118981257 589935712 404386009 966072120 216196367 459971884 850171593 756585800 834918988 158742688 597536560 819730741 913132615 471467550 330627922 671668894 264230080 307994725 652828482 682933455 306092165 513859147 321383652 782141824 984666906 912175671 757666119 176147643 575803114 78014870 655175784 546371051 172600605 968050357 45061970 686095726 170966467 522580636 208570735 87960550 68589121 181814317 498389647 27050269 174036490 341810738 894044537 484344607 628350145 890163633 5664018 523089361 652022014 236424238 663729046 85520583 193572514 368511097 907723777 241189757 515739401 315486805 497766811 751027569 776528157 134541229 333026337 546387769 78539958 346130949 139275735 362520345 440894974 696814696 122114102 823338562 614300702 40157564 157899163 637381386 485666445 749922171 564241880 392586008 167530582 393691279 538414614 490125748 581734754 942525877 909325276 582648305 384817720 76993648 98191761 582008677 393557942 710197127 373058687 515265314 207478333 342520781 600663954 211438155 630656768 146201485 733509790 795570025 67836569 250248286 262779012 915956747 64824762 879328557 67924212 268255373 272125962 399598227 378342407 435427295 607415911 752670402 306833513 639098754 56051315 156910561 429034953 134216995 130885927 879612356 219552796 399787165 896814213 178324328 453809798 649773840 624059009 878490239 239921889 515730807 425173371 668451479 128040417 991507704 764742182 246788686 19871690 634346351 326158228 629159597 978459244 217594422 628869326 669649078 788982427 875294166 8182790 789442132 43635176 255724788 335440115 410656414 952319704 897745119 544628196 416790777 582843033 53224430 176757712 308325673 984300917 352527399 413923714 792493969 984704223 984761803 314535625 625693025 160252906 410390901 184570925 192735061 126277038 653750098 129069702 91921113 776074905 276377559 85920507 828175697 14069021 866168797 666264854 630548877 192935822 361429245 535579524 631113447 169747769 680976706 937422279 747910594 122996843 858498787 47349677 954118114 471870202 219278013 795177628 68420453 366570556 141566840 978054260 161013831 202022199 574996261 46004250 460402572 123418397 755808140 618230934 173904076 927241797 443408403 199701765 388637024 675492862 562886125 518184747 417521227 453177649 262528500 395931478 663868411 535686273 126298243 857485495 98126832 258575004 84661945 655387302 591394137 251108883 16426011 852666728 979743031 461499162 547415788 152773398 852306295 559006000 99762327 481950667 500864911 489281621 28177761 270853451 647426396 165822579 534018508 104721756 264552032 978007954 821851767 174870167 332910774 383751879 232291071 944778245 144271576 632691475 55783410 100119940 573067586 871482596 58762557 32826132 947563171 745113367 434715385 620283259 793769053 682513848 454753588 261380130 340519286 903909522 464711868 10426360 101928943 956090337 412794309 315366824 252789530 874614697 534224097 630939698 298828102 91997412 455932429 20713684 671952266 584771242 758438283 950564929 53068734 175633895 102500990 125721857 742943519 844682337 487035010 521752839 641346237 209504307 944571072 279738681 643570776 294199330 786734204 802372228 854739394 778270752 984544293 944195253 668589034 440137900 174117555 160213794 916424644 877096928 463746596 221153327 213086401 91488740 122412746 956647823 903352877 793999223 581478302 905774699 691071525 582394399 752657477 982646031 875454329 457952654 220620936 725222283 154423745 253576135 961083152 97672278 508007503 205669901 231176719 585408101 377172164 970408806 389951621 48926943 908679594 172266836 842864365 377969284 900443013 757742933 856421303 582998794 996512022 659249526 474428365 638838387 878721105 585394093 902102723 263647997 569371200 576890062 584426092 974979148 600961491 193408333 330718443 200966695 297686172 765689735 886167613 696255003 800227511 340649309 58905807 53328016 205868296 330163381 961467411 41693279 49776341 809166872 984897756 145912484 429599213 477484134 206389703 666407450 805334820 462750092 455360328 651633856 665804182 929852397 13563430 919894529 339093137 312759310 536309075 76804913 898178362 466474709 521591312 71787690 969804491 664348131 258395155 371583635 503149090 771208777 879803049 900972797 927996258 808738590 514070942 140536411 867067903 44080165 669691475 653900765 722043570 373980692 491518657 932818135 516047191 865995847 879318509 26613870 357710313 631033717 122485688 104859623 800344389 162521721 433960297 965268631 835414893 526684745 780682098 632291263 411298740 931848981 704639116 199351873 318800176 560364958 610326212 723466166 542580608 37509443 682612654 246492716 989851443 417587255 650853302 154618695 103232490 522606473 462315066 247689529 561962678 177848996 482414630 928828085 214832891 447045574 521392451 586761495 67796338 873724740 161664041 925402232 204375312 133007438 530761313 52048608 467319128 726884719 325672209 115933926 419826800 201764225 234756569 651692515 290999362 372559599 888872907 691353615 521781920 352949535 891134799 716847044 977491567 185298025 199375141 118754414 162656132 892115554 962854209 555887251 314262948 672283002 598626010 252049977 255202316 642000947 120458169 478720883 456514627 476759203 598272347 70426838 330222836 609718796 430558064 462827067 842688799 670765973 693501989 907853417 960404240 838195374 202537075 73829457 266914617 986874191 895840640 564560106 792159289 326347353 659428480 450539876 911742972 792485551 78275296 523545099 341475889 750741057 65702513 704210886 392689708 73040248 770092567 99965962 319900118 190336072 934407793 402866374 131986171 586534515 139883918 703747592 820335157 661748169 907478589 608312222 891216231 619282231 645140966 311984722 708153938 927661006 862334886 766051034 65285317 744201562 457374314 226526676 439186573 23735171 159294834 852791851 587038773 812638706 333825160 3757773 724916322 531826315 257046753 592490766 732961028 741690104 572352214 230707178 697493470 973443051 328272403 228965425 742412759 111861828 579930546 679898855 310528755 270799807 347320493 1904242 685085128 286124804 242841634 651020695 792343685 274929313 274774618 821065382 137519760 852066026 25519641 419436256 871427010 912979438 451383428 938545674 518804290 109973429 716829214 174232244 686063889 820345321 161390059 466955946 587323856 842690162 233352379 703123913 614217790 322749142 701113778 389047179 864839010 977269608 892372870 223435534 710311537 117347669 100428874 743502540 248037263 201886149 430720512 849776938 887972039 763246177 227475596 460201662 388526187 574278398 246277437 22739034 454559339 570698172 192490532 351340597 652020596 201321755 281901423 845495383 834104002 587929585 196542227 386845011 276722371 441761123 395831472 221219388 231143795 136427442 422634731 827121349 518815818 947193716 815802048 973551691 803524914 595153507 207204317 897761412 842294260 330608921 349144634 113438188 752267370 965066631 36814780 893730474 747299470 412233577 35446356 895588665 703580709 513273992 801717864 100046159 286092043 928227128 247714229 216539817 460170749 562047740 111284405 826849033 148531813 541391705 526750337 313455483 671833544 686655434 250715965 558713788 692409704 854117796 385708788 158953518 504120056 519559399 16788934 773226752 681125606 875300931 560148768 809841717 87581054 461738670 291132532 378032615 500603690 513276725 748460672 471745259 385887000 710215949 928996705 27283709 912807563 976939044 835843384 972828298 967933003 328389854 673485183 186842867 20819547 506750279 235425049 42502321 562879564 135612526 436311017 148288094 676139844 317769160 726195358 159615466 748689710 610141001 522484686 176316119 969826057 778130485 414650755 771068692 179169640 276241020 468210870 84155459 566225850 446357023 288982598 249452460 165121874 714944792 421097700 324749788 73107300 471638957 226083393 118878016 263195075 960118541 182240421 646567594 1002547 288673057 556284803 501103651 522717 194439966 65719353 214330358 629610840 994034412 544799250 850396080 645304670 590560385 385568376 41970629 763385945 910761435 166750498 154590565 444972394 478323825 314420624 32588184 561455137 726941957 146782493 555120921 480280323 788013805 467121385 99113537 892436426 987751657 2004079 214109768 153562819 313103512 128710393 733334360 21423787 305435913 877528927 994290617 61539814 532295498 272461186 827251135 318415704 549305875 49698518 502138950 917603287 102789395 940282394 43332092 481611401 447490259 555291265 680176282 586827821 47632037 410980160 575438855 568934064 206798912 90717424 422746734 725519875 35528404 789060161 250848858 613462189 116295151 27909593 484474727 701081744 622144985 610465301 911613802 623606833 716473278 309024915 25070795 833977992 599842832 880711103 42640545 834817652 827112248 454783643 217457421 989984562 769528856 949271812 109263596 99458211 409125918 403694657 387539795 757803757 361807351 535902670 397583843 485489306 616220867 699380020 117738714 839864917 415427740 273557612 987088525 45315629 314310425 347725566 853156521 897017911 843626990 488053652 41152110 11636078 536448557 328323968 581186138 850406412 181288973 173012553 958560119 72485885 849266427 419141816 521384290 398774580 687283168 496352162 228740535 660116200 441353450 9200641 238582489 515888957 384482956 922551841 124270482 869183313 852300605 191374432 319247861 271117086 199773589 915108671 638919423 323963202 889323776 473747845 575929848 303010694 492508445 510810922 798050771 924121583 391859697 846758264 706360551 329702242 376106434 773691568 83644118 466296582 327574931 324707710 949550199 841800783 793143527 538928102 706859243 656105629 259499444 721641111 69267978 711442619 216789742 326548011 115977168 115348155 288350405 961084925 897883265 558713795 741983937 688526756 447025696 92836470 663886979 213371878 496402731 587477387 718378720 459195951 668039184 72546283 344725650 738934601 833443244 180171998 352331510 681517048 105059392 273776214 209180090 715432810 905882362 371439313 346482460 565367552 402261130 926227797 791834918 74492449 860618206 552056958 426848376 629062948 393850812 449953234 394805920 823769615 975072530 321445051 580248614 537657375 354502679 700613249 866836188 465955049 104373858 353918861 558286066 599456716 641593560 545039382 124642735 969631744 64225894 459601980 374149716 111984247 294648851 422380504 518566147 340898806 355029495 93700396 86251695 528955946 844206608 581280610 119879889 373316030 498292308 650733552 495460464 179146723 351739219 812657953 63700826 699438281 917465341 469000103 657881894 688220343 450101404 736690837 201110273 331923801 639867740 382740453 908980344 689890625 719176070 416968221 956235330 912498937 399875075 14060153 832132424 602865942 283156955 992658399 809725279 380657599 197937161 664192237 547311520 585670922 148486012 489681384 831539857 524909298 399495676 273028719 151464223 96432353 959900531 450766086 492519655 314593411 679278354 920511930 499936526 272181720 274362336 993945288 617368250 391051247 290889095 112519837 491600204 304612767 985487249 711415530 982984632 952847839 880536720 98662634 831976423 913844166 850367802 520786143 997001499 602478246 767498880 383314947 947974314 982014263 656822753 246732264 788100833 906302606 736214196 504957074 806956179 326664744 975324297 919902096 901379669 753620183 167117581 180088690 275317009 56450579 850609662 677013322 560610933 232874206 658024082 598548083 394110143 36378972 195980687 651679413 340416609 352120233 634194997 532938302 4320081 143743852 491227185 5122678 850275812 917446990 385437353 363752089 609048412 77192878 845234608 731040972 280042329 667394489 359227639 851210666 829093284 942138366 731869644 755746530 200224481 443501329 992695650 279313679 394152311 869730858 438778424 782463521 858744838 414881325 630424861 676577307 116822265 822954336 787759479 723747786 586103790 907200311 292774288 749869525 625861238 539785777 750801895 911459541 129921321 696500065 997619292 3550077 935201789 564406679 870704518 577608449 735284416 21834116 95446539 837810013 132773662 251855304 124928086 77234381 264895868 808763396 132585666 728724495 367798792 330407418 571591513 912531423 790148312 289634704 725072191 538630438 374427128 116258150 44433454 749585231 260909499 990267039 426682891 104033732 545717689 940848504 337589913 136953325 501449540 189068434 941574252 319210371 210461982 111722458 578894641 253328615 972783947 698486219 166763268 875961523 329332530 428965337 440356534 479425064 563156833 166136531 28002380 966099210 701133107 645826040 808897709 238772113 701284406 53210967 490391323 198904362 738312171 514829962 526346286 958144867 805072563 526694145 291646556 627733036 112020899 258298569 370016132 386474017 940165799 520120547 179448019 792796731 475976151 913066951 451311600 211995296 632822146 329302297 772067965 402816958 979203803 503988952 597296723 154037739 505417168 996141954 934145192 946666697 683014876 323425962 56489074 149772513 972007953 48007362 628460131 274401159 234100458 471714171 618246653 308323110 360515719 237103451 96095491 935973481 929171760 654682897 803163323 500004402 320657677 660300544 942497974 321701905 70526023 814325148 216376618 177566468 362189197 162811953 77471899 525371761 930847138 768347600 883027431 528944088 243307972 516468907 578406679 201919040 186851592 919226605 589689535 555982279 640299747 657841978 918582872 938899407 604304790 546943599 817015223 615811562 667768028 48407208 765073797 765425246 316344752 84418629 529892076 855124924 612701615 435779796 319819986 538506227 269830945 408307217 58632767 867059533 147011529 812349320 897110654 161423225 239062349 847511304 760070058 630798002 541976253 264657846 28603584 391579444 355416419 745733181 500662877 738999005 508963739 673570182 419030566 937274552 593908482 951635084 845620664 13968176 44343410 515594087 2437299 781734334 955628202 15642236 419949185 431886426 953103869 424071822 79460369 8211481 553215577 296375359 812991648 587788044 547859692 248188078 910215229 699113829 403646031 34944944 228437307 614904808 577012025 984733246 952468497 629847541 795763921 834795592 486123675 457771476 821518379 262080496 152633513 755148396 115942248 356581659 655386607 609933218 81018487 238956261 908066493 548339505 799321478 924632051 120009351 853466851 85940406 162522519 880137324 364211431 143750468 934778683 253493522 991257900 771171803 669705968 646525193 78948363 308962572 198014102 949967781 614954677 742650847 767887193 552872958 812901661 678942647 942837417 554227819 749864153 655826470 899604086 204888919 50334538 749717239 594449093 160390302 866927875 265863170 994776366 573981647 799276943 97003306 980711162 56201447 978938872 871372378 824516395 424805871 976520816 791286782 474660567 885848797 799162420 246618467 11334106 679147706 620704121 183478337 650079109 680170235 166471964 449008677 621387668 936999248 264412382 665832350 711693536 591158655 568769122 591173908 518042342 591109092 957882477 432178673 55667665 770784912 990720204 105439599 641162186 246155036 474758904 456309196 849881409 946241260 601878455 229303641 619991172 227259908 669907559 528563742 27563062 480757443 489042498 394112501 557608851 890208506 482810862 368032571 802166785 110522219 391044334 958362077 322301121 23587528 266253950 786948635 936612667 226055010 315163544 818885727 275775686 657283382 891222821 263391634 115114583 80888988 927989296 368195412 843383807 166914850 288846689 561220203 327623219 187974884 30964517 942384042 457930030 172999011 16861964 765031927 354797575 212791250 947484108 95403792 688310057 732854351 694265177 498358849 482380791 552877553 296129544 321618505 531235005 574859052 908855663 915734975 982989575 17224438 98206607 527835581 669132832 836250976 803666311 965212309 654459721 485222179 790267413 77074211 261439057 231914865 410176189 856012885 910369454 450553658 106782593 98308537 104507032 569481906 155880965 61401039 788871071 515106818 136292767 360913660 480422979 935264187 365055740 667215831 28440909 242728251 301451923 588931594 812858824 788389414 331375725 187110243 972949492 602158307 958898584 149861938 837135995 490902924 737679995 623037044 860204195 120462679 347735402 551723840 42246294 822497836 63612719 694303896 799991126 124789224 708268971 605287531 500137503 222653403 664642420 96779820 655484406 666451608 921732157 77312135 154455908 858823913 452484722 861733987 785732644 603304333 731494341 677545825 888597650 860208674 712805645 21642643 33262629 601538294 577295075 390869019 647029693 37838434 91969538 733727910 957541088 601390082 962965057 885068397 192912859 253036701 54079801 789298668 231001498 87670646 668970057 257035894 727140937 818681758 619727746 640729428 15506290 992486028 701907987 506921711 734340473 460435041 493859960 599542608 87015100 216506065 556415011 718448247 272972165 130367963 142549973 937104065 972663279 68956935 466327685 981748296 484355593 73553692 975347765 294984291 962252259 350163530 265802915 792717043 90961812 180100697 269825593 399045068 987764243 283220030 808460207 994981553 157797092 160493420 227923352 203963931 410391947 244706642 46445998 310018761 170104807 988185686 901572398 866314127 944475037 849014038 476099230 135105361 5884251 600984131 107146742 28423555 301699719 399556159 522172728 329886562 451914054 358702913 32309069 514778352 730268608 297668999 378048569 213497413 487012515 295111954 573013736 552319579 487437443 332181578 866619708 724078405 961767098 689595723 903398416 555696541 106046259 410977154 316396053 854163243 538695354 403745990 799664337 729836770 699527673 751627827 715765118 981177478 782125246 234820271 565135948 865448180 966636767 371886180 912740783 441421189 930621363 174781913 86979682 216158135 980440077 444229216 134788872 903660281 431993919 194960065 753830990 794540547 498356612 190513762 290080404 393678218 167492424 259151816 703703728 243169901 523641164 274781529 670498089 265080901 1064067 942851023 448399194 957966888 19623881 314595536 393807109 281517957 777842098 294311612 847138827 955206476 66449494 558186713 295119865 330754325 135098732 524091731 834259663 417883025 50491880 224665350 954346525 488277752 639002306 900639356 697650322 380501719 539572884 360681927 809673017 377811717 109000405 325666923 305402597 894110751 937168956 403872380 536422758 480192364 734706992 463501836 374799136 374030222 515701564 173633586 510694181 499216402 657339682 38516413 364928591 863323250 46401404 193413289 793247187 770988448 825261812 250089906 893832540 889634549 814043788 819697869 101867600 424944985 742351146 494439969 407570286 429662644 735972358 47985919 235592457 493491075 455212554 201428388 409289123 386309106 474545073 543255540 448726370 315353227 300118535 889821422 28521082 739754787 744815956 248081154 394710550 93510984 159857682 876600234 809698492 779809066 256014491 533314000 460885530 110001098 536328285 698193519 845231411 80643983 388411378 31449521 45340081 70337163 296553204 26119206 564418679 961752212 698398627 354968761 294298397 122575665 351042435 25765929 366622876 866702325 289804890 18218448 479728576 231758237 340641398 765439012 668460754 751815600 45588404 766118462 960081973 402342904 103272643 133109182 947618121 918635259 802898195 547754017 247591678 699084828 420947164 301989563 322324725 263139483 390360008 370789382 489108483 838979653 970140161 343482256 685241760 841928484 790348953 817114235 156040975 548246509 908212477 110940753 683029117 94282600 274443708 183269266 655691872 309665163 175417528 597967146 319307736 176683445 180470326 86645105 434403100 995635013 937335279 514710008 460824426 292530663 141740717 117537884 436328425 47726070 66286916 151386914 166585647 640861228 90505882 874615914 357925962 152234447 957388336 837861047 763349176 685982131 66278508 568589877 101689803 782543926 690049469 11619564 417753519 375424267 509816718 343352387 710952602 84978933 645128250 923032501 259657456 193196528 339855712 61163190 657670297 370618985 858212105 776573590 248881194 746669243 35102664 761858098 675615174 839190902 21996495 165730733 573692741 210448199 936511333 33088920 951767055 831083297 776067394 536351264 385426495 484101275 466366608 489103875 328043402 788370280 245704089 54858196 18132532 243925038 262820209 629565336 934192844 373153342 642823121 446538766 220166285 200671523 802305079 112333196 12003246 275963362 348932276 494626224 630105412 369402109 17242210 87787597 422712262 822085217 866527246 875138593 318160863 407213673 770325146 202897673 96272553 64768768 920850949 293603839 7883964 454170803 810769247 59898080 866404612 883642120 476519909 550555346 955170086 98956315 219586632 644117329 407381034 648891100 467911965 27176793 594376437 333755623 143132952 113992359 476359971 377999990 653528564 55962792 773301769 560937991 430228365 55732318 980896476 664776832 190048993 73474595 515250691 983454434 614217491 927777193 498076661 812096603 808785265 295853928 665998633 965105799 921178730 855220727 659261854 827506734 835246362 576684769 510211243 569870126 694354740 364263641 556615755 943238039 979199601 476174592 916678640 767713439 883825362 816166190 614504545 799831750 483670820 211164172 206603126 530139512 455741643 523886647 241714919 732232587 264731412 308902720 310194907 657097989 485250599 721646213 901999094 835678225 897538852 359085595 957435662 145977038 320379431 633764781 227310051 963103909 833359688 533244795 6161149 857554347 955510450 770650645 281619972 373579031 429028020 786858683 994405822 475889264 792588405 943747157 415851590 374112578 403926181 314485929 90727750 977562505 230301924 570078374 823018848 521243100 603555242 894681806 372994674 951869056 251216110 163739200 661961716 983659403 77475508 142947504 423685345 930617344 997186954 914873156 971322983 278305779 532193102 474621621 748509674 374774828 948143416 946478518 350008724 532913092 499208970 169544392 286402236 428932816 535572800 983429029 411204416 701326204 35360868 187887189 684326777 494464925 112793399 248569216 664779167 558109040 392957674 541718924 916943565 856679092 31392574 454800407 95261430 987081010 462129476 675176617 517863049 269003377 515456410 471627362 862497900 438722337 830578817 481030309 26768261 295054268 460490197 493797932 171878815 161578718 131246186 729017747 217609512 552455492 158929232 370255007 923983454 1624801 785271972 535640610 609654514 171875536 980778960 617412139 611013936 62006606 564926444 363553342 979708425 799049991 926336191 106278572 949466201 506810672 397451187 736646500 968102372 634668369 546693741 175971032 480169078 503072765 587644376 852547659 342105000 723199956 276477386 437379213 878931407 775292868 312736416 173221277 811163939 236325190 568347209 501391617 481953569 262554989 938746244 413846073 424980787 669903494 65445052 183666275 754553037 205957974 559579693 835372262 187182805 552950834 551317737 976793886 810352550 676706791 16769575 667749533 949884245 629471632 952469628 771147777 259017470 42881687 633057975 672392030 135760573 428627466 980596229 706287943 85433769 502832889 932231749 195720812 967155983 548683895 655898052 68083726 845975209 294244353 78564537 610870149 565521000 653141182 60800573 664275150 75952625 744217731 663837897 234604752 79402482 630515856 347915740 63520276 628494507 60584777 36100258 14753672 403333311 896855770 838035165 965151521 824155622 527271990 496858112 455289809 853090567 882977191 215637213 488115445 100624449 795879609 417503512 198305147 157736943 52324758 726469700 5933373 568383629 211600217 697713709 947534088 38464859 338821175 236715282 704388135 725191158 269507963 930717 858077032 529859940 778182701 577253663 253660303 778246085 810011014 392280529 961955828 672036416 738053591 843865427 733296345 179428112 924424053 103112480 492676553 522946601 793649464 68703990 13869114 33844909 863646432 188744077 753767166 972001722 566937297 527431091 155891772 714154545 482691851 418376519 261891197 243814127 363007492 501356429 116191046 338531786 443368767 152009010 269134725 387007934 858150951 85828299 24124335 275344477 320222431 820971403 975201082 941714138 536418105 460730358 114260925 484682007 938587644 186254475 641432235 230020102 592209973 419181994 525777677 189898129 244345589 878924923 63771132 311989090 111384712 801106722 811850664 75381915 445011864 579726565 473652497 736682170 458631033 567836898 938188498 863664181 7330132 638168014 48345625 243784229 111271637 48137140 723172794 39346698 835755889 620835388 553329493 362554010 945246072 658177989 446626968 319645734 355675995 983675875 844859124 316502661 150074169 962683590 338828622 701470714 764882436 888123571 250519285 277815620 38923366 811699834 166973858 330748040 159599271 411746788 647425376 306417535 612586922 946444202 624726199 119472880 119766673 768683476 16968650 66441536 630006357 752856433 520316581 897739592 388995531 342268715 836648693 589558015 165821993 211369506 255261448 852995825 713882278 423356024 31558190 330782160 824002788 458816890 524210693 363771107 426910951 842988045 784021084 957574957 958026119 915605912 427403397 412220791 598902762 369299103 147288081 546082084 96960649 977789551 987177476 677172293 55631548 420263772 818875949 189217827 538106941 786118706 233326936 88266668 665084455 277692986 750242620 444020130 22375983 830690842 574897659 712752000 491215365 851639084 994379967 114755244 369677563 591566230 357886724 518561856 832461218 487982473 564249284 382254185 189739092 695699786 246596999 195073253 42916189 815847279 900283311 862053363 185462932 694375953 245746260 781766731 439192621 118325312 123371243 958390194 90128566 933512891 989422968 889978585 826344385 119020453 402234516 526897038 657726386 663374079 23209795 923628145 919562796 314362651 290767390 394251570 510111348 567156827 894987015 850724257 532871013 487114632 143048743 271325864 781150387 341051262 10837400 32560885 452502780 50358395 190973860 806751094 821564110 354578430 714842657 608421272 44588272 447012622 346894500 703416735 880754489 611194595 729849178 191460194 362459303 912983554 247308156 931602646 704657784 723284828 541266274 299813328 689055765 26410159 662725450 99976738 149767088 614505683 168113014 333340757 77007838 148791140 346965590 247912163 391911990 144366232 866033438 16529106 315498549 825620455 263488575 502208211 87825308 819792107 968351259 743441748 498246964 963139246 446201944 416590943 563888921 623591788 624097873 761122016 758534288 705811302 306226764 829702106 90062977 379881594 899402676 549065397 182221383 144572873 292547403 336304104 281328403 399376142 881937919 440654621 413342257 953689568 845871326 551975086 59611373 177979627 757375497 224737541 691429342 753652122 965397512 441910263 224280388 898578517 788888986 266400485 419138954 516708465 431387255 129493025 420585724 148654418 697366255 648813584 308676005 209956728 447294820 638675035 773291010 188194775 493314492 664730485 545943883 670383615 485560022 502478464 821927021 841863242 366478090 877311222 639447618 43439027 8919163 704940743 152430880 431428421 910991270 297495379 943152293 430505447 551981462 509361876 209361650 995622909 772289370 571476055 394099954 527242729 340408464 566829414 838008468 459544708 290117436 172930603 717620864 178805588 661955395 542377181 246960074 983410292 591467950 366488644 588292249 854812478 270057043 386059090 448418462 323555500 808460693 161757081 746509122 684969794 547610023 568954001 203105125 373004348 799989411 664107010 727572199 413205858 523110509 27836465 299721453 688339411 249810261 314334156 255549110 511746384 700606952 212290595 627003610 90899093 873971808 781367811 963887192 720366670 434534316 346372691 94394051 899696422 420398250 596779236 97096763 350249361 621215205 566942808 985694236 242696996 762529265 432875529 792904637 751721169 915826490 699991764 168892060 801328510 483088993 428441529 302538232 433735293 291309013 567871470 675328371 646005454 829140498 756848466 232410054 34677804 660329774 403027807 269090431 135838511 243040537 192870682 204369753 786561410 580593147 364015100 499868218 463011749 765175898 404521678 509962287 337393254 876028071 18641576 685297679 527819306 195730155 29190300 295686369 399442957 431721946 306654517 478097421 573026625 918819856 979641050 713708110 61068120 343830189 501242130 415571036 670893978 525375934 710347792 641765991 622593178 430992270 291627437 562697833 453012374 587046848 908231647 152947496 741580687 846596374 506013137 885842523 918055103 471339477 212259103 408792627 382251582 158847496 585698136 944856752 105850512 220297796 264620206 961470152 436228853 117188348 180913861 800996702 500567737 768237631 153901994 817011277 818330326 51272789 393268127 576116512 781552235 969450603 289138909 844754220 392091430 743847680 517364266 152016757 162100399 441857250 841489068 771331053 320891496 938433302 715404360 994626328 762429644 585617528 287482935 837367927 982104391 132880241 494065266 31419567 971193886 611285371 396954552 768361887 859697391 130230172 796329806 547669134 554212767 102918714 595025727 611287726 920278378 723777029 365750453 668769373 939792577 253354368 148563856 718769640 245036883 763611849 863963877 125005144 615917033 629495135 197463743 9388839 298175247 574501600 992733473 661532044 235206255 110312957 536235622 637624567 44218866 564841076 707960652 717839486 121730305 571786570 157644420 141618304 247956565 692436586 662373407 164819158 763727055 81134232 824395120 327340934 681423124 837578169 89066363 650189705 311299442 92645564 696644362 413870810 818722400 332370802 640900648 165877102 331351845 936439229 815533521 31952474 873945877 110750747 279003341 464186748 305467799 144189041 499413432 754800989 618776640 242945307 952284638 87505869 130871345 971911827 247963978 471964310 485688926 952084634 901722067 473464731 777920558 677522861 651537882 521054764 591563165 155135884 417036346 411885496 636227971 843592783 533415909 561228352 468010598 24556360 368277179 109632802 148650976 722027487 373603609 870182581 220138084 255229014 115186408 526890969 292597268 339142580 980911362 793775782 669169853 251916864 955394328 995347058 502124467 561217921 142959037 866518253 116614503 45221391 298227526 897746280 535209741 522741490 632614530 697002824 917987604 689959565 526238588 598598307 728293894 950142901 919000487 246757587 314370327 76010587 176773140 922995084 463718545 24897870 87881023 231407689 966999713 443672801 345355997 845229279 634876402 583031738 488998541 63475950 531368830 104239679 501526982 506996410 88312519 709399460 343365711 883895571 102649709 123560919 15440041 941400620 904620143 393269744 632815083 866612964 354400621 963737366 550324015 917988198 501659158 196052287 35336067 86346077 984299475 589527329 673593797 389207504 189298605 408948090 520653571 973152116 239190835 62011844 621644889 879848004 321593798 102150270 223701694 324915176 650035414 625468623 249301428 719485386 924321692 697979449 799616292 186709306 30215711 975035968 844201037 79569968 417854443 290212119 190261336 751837408 965809905 983919108 940761678 6351557 923371082 410172925 588417933 105363122 30411313 596252228 266418939 248342772 834204442 295575271 197871144 181276346 709683968 876779511 183755660 326231128 351217867 779527578 266723756 953609951 699232006 292152849 727629670 124465856 310910627 966001774 623857485 308056285 925082637 820295816 486162561 210917054 784418334 766384668 73352453 874549876 519190445 53598043 660031246 547171556 341658102 852075658 871168159 864651543 31184521 555866005 202656335 2972594 682233288 303014193 645189884 330856150 327267387 760882487 358281105 772095911 694358579 882695349 880663746 723249501 648290026 68489213 158824726 435534351 276290552 67441492 195700890 422229119 916333198 829974923 762506900 678856691 693363704 217752896 540893908 482915608 848590711 386524432 173364528 116439495 195261698 856905854 983136329 149398597 40352035 679240721 275337268 12738581 245486073 344515247 152169740 893491325 522072696 673484819 339045739 534176715 65354581 804881967 77815690 175594077 275196214 937487306 52916988 234090789 328184453 76269162 224173782 864291457 57366558 921327479 481155360 506316070 631891109 383849887 239239815 88341477 215741333 973213792 940154596 318904223 487162603 67297933 98319297 146517609 495869597 809178689 642467541 196833634 383215364 987100499 164448207 444758099 471140111 132750314 877902351 47766065 258665913 776672555 77987075 635867052 730151699 325218472 905662544 324794833 29130273 673890337 60933770 869894573 271063104 366823876 600710186 498851675 420593556 106250368 627004388 36137263 232059623 563826862 501013069 851650052 827753353 525149847 524477394 101705493 265942528 101469858 890563872 75406726 224019074 441597666 155021417 881769561 909169693 583339448 510274586 702524529 897607019 387896342 515287442 610892910 39958500 935476384 310450900 446352 118359480 878414944 204745727 205364357 565817852 633524126 609158298 224233761 301827436 344204535 148140128 129245449 765120891 366924364 161275515 908879835 669805747 348924535 364547363 691641195 936833779 811180574 762990126 995972750 45267039 430391124 303192688 173615499 371068460 678863172 986244166 642522118 536236796 327116436 364801739 765132832 386059289 889242275 36848318 856059610 991510131 845398978 160749144 793691210 359169118 688242613 45030234 484464814 924539262 827927577 842061822 688460940 474057263 656422452 974779964 38842586 200449321 433273138 230136445 654336783 519909228 172554210 544293589 49299766 631766210 21075290 746444650 969444354 735658926 615298063 943098791 602366568 512530297 743911634 852566349 583906267 423344103 898628232 259585377 920107616 259387456 785778561 958492752 113880766 532114160 262831182 161991870 663506508 575333220 111438076 25150032 808430137 488522640 726794080 179154031 578967152 605506591 510151784 956869454 468385202 969188260 294339748 242670546 396928552 398249665 777140506 678295069 384633818 665788692 841392050 720381213 387141360 783412620 480733845 469906344 360968475 487138484 714537929 334876929 291980500 906584983 886727571 252281450 570608144 528328298 531098539 532410018 734781690 847766221 221812127 10329365 400493504 994190207 774708000 703179989 284068898 835157330 414841281 880480669 169875259 903495205 305475566 574247324 297901262 18499666 920003071 898539388 694933805 752515356 361356622 462053637 750098011 992615243 985872774 699465488 757305983 68033643 96123942 496515881 444817526 789353264 65398231 366023889 918106287 938432651 431391348 555110614 478659961 867958231 290014314 336031957 501366687 397934302 246233832 556218770 69766339 528523320 488889265 914684934 793124588 515908791 832898362 176395728 60846671 621862344 488627719 539111831 141673183 869301949 387219419 502370749 84232896 498124418 102392590 616981240 458533631 41732551 625334609 771622281 210283862 738686240 60613066 53201043 615767685 46546921 490297434 952097957 861488182 264244400 790787408 915510207 97659151 567111806 110229462 931225132 347841354 956199723 554239410 373010743 167422635 631631834 632187714 418420449 689465849 745536957 422499500 76358797 44965741 82884824 602299749 986459281 960694067 950577513 237108841 415008476 977497614 340643623 110477330 202242905 469026036 946441420 942732698 650436784 191103137 532093788 769185181 192380281 135481995 419606389 818513414 425570326 687204478 616537433 8302843 770057894 449859021 599893602 650027223 29065465 493600534 203459772 871682147 415305772 759759615 686764270 785569733 551507232 534103227 520012915 761891790 637508927 268727681 411286088 155743939 821140692 974466217 327281198 848263415 451212713 18435868 73451016 347123077 533314139 95382652 814596397 797914741 750425018 137047209 985215551 286893512 886659198 2470700 132353766 935134690 176785069 105133919 664048590 883710771 61442242 708772012 677354263 262809186 455219122 193695948 961230561 222850293 169451099 371957058 556961048 56224414 913045440 777705198 910835051 280123245 39893310 173214941 301396061 592478008 994278649 609981546 636842167 874588882 548436209 48009296 811650624 604002468 322598462 950013999 744973231 444759899 658103696 604310714 927307616 445820095 722429214 717637547 111776131 823108772 404721256 699821606 122311037 625245285 687362161 585670604 109761258 570445450 107348077 880564120 604341466 5572909 24626192 329835955 750484333 51439452 172962443 169137904 815206010 592999478 821829106 444099466 305249859 359793210 866686614 248357254 128468685 723685362 520075099 171627794 929578532 906130629 965357911 537789793 326958915 878434436 402317751 751248995 517831844 180358240 671180717 867744611 547031794 366903509 870638352 242537016 879696705 105638489 906860568 88838914 430998740 904900027 683272754 420597073 602800601 346536026 588545695 232564707 548870600 744246839 18857149 718968610 863859207 284859573 221698194 555801693 289891551 246168515 939642719 264492925 736145399 147712176 497411654 471481722 93061154 820286157 838640102 10465946 739399519 144568286 757097002 247206247 913507587 850793255 332154457 678887784 104274957 691715430 311333123 57294756 816068849 972060408 647249818 591569555 945726020 433071260 455604453 772910535 178840977 224127437 190450460 148116792 504921959 517520575 556389662 646395659 450978274 903375020 988299395 232558685 674645720 703667442 978225046 995188014 58535589 744038131 69291800 916621939 755600013 778777842 97650441 397885158 926208971 366074356 781287135 523337700 464232169 271152191 662266489 501762530 66875167 583946750 626644963 49883970 403590418 711174606 870318722 966498821 731807407 616376033 421719556 563772471 951690663 117182699 689724966 872970679 145240697 575410770 254717245 638985617 688822139 571226987 919666455 510100357 785548494 577594769 729797002 979324309 897011920 413443973 666065921 550327330 704492105 355778605 131710343 325510142 356957546 605081744 230019516 768919592 466848649 395795439 892458335 139369586 835524119 633011324 854369392 608671498 254724547 194547887 843874102 462068038 735381842 946544921 32997396 880606246 683301037 82414406 52875394 686495680 97045043 466736269 29347556 891921027 503334906 54781473 909077096 576908465 77597556 736538219 855630364 680411981 433597119 305975549 609263033 636498303 589635363 509305127 72870441 449845253 98279970 136454749 688683156 347776832 308043953 607026965 362255354 741171138 284366105 939052216 119026563 370499541 595215485 822265392 68451632 373815596 977535801 651486139 144617467 823545730 288643481 477696663 789462016 218348763 103557410 786614559 928504103 173327839 292019804 949365963 389037756 616247312 286601602 169597941 49393376 930215740 891547598 285875043 711378722 607561826 912508061 635751394 170819873 954485554 104514106 254649843 411313984 70463989 395241393 551597387 200518834 653026997 401177928 978473310 959170943 450126798 4541196 771716156 903278201 959799188 108615324 287683815 706883595 9363228 394650293 276330840 849096692 311988857 203154774 403206084 36202886 589500329 960088867 932651864 923230092 399077365 787275499 453579079 764669931 772527493 157968398 814223159 321832122 379542351 994838114 939514787 978351174 944226866 237471610 81767010 604798907 970103904 503602194 102665215 179585058 859254989 867275431 969631168 869163291 296719803 53935543 319780972 41767974 190998683 761680258 243428393 146130565 361048512 303964437 405455768 226545361 126355073 228760681 824809461 403337352 139528885 969635541 349053781 656071948 632606334 166122455 111901216 583607766 158734129 680361491 279480648 948819103 22060449 814163510 586483614 431740822 148623087 171135506 24514260 703536867 882057409 831292290 701837334 460830578 102544182 808297896 573711174 982092524 931440731 194732060 695195853 820936920 368552780 481578079 195032128 620004416 117426350 782166164 750623451 489156025 151432129 251816945 777177430 86422263 63935322 207429428 532409700 76404331 544865852 888563954 259825086 128651886 905827631 467795365 750909093 773049352 644181891 519228401 493115590 325345951 761739627 245556484 691749850 275848240 100734221 886666635 129457545 956197062 111695168 176615732 181533245 284233635 298038980 461312932 522973984 409333768 272890358 79372675 139805095 276304732 344679931 759826074 117507784 874685050 313348853 991382444 362646926 891799682 657677348 176261418 594688736 771221076 573705469 644937807 149558360 895259142 332020619 208442954 407503634 341742503 993696860 315200933 705963807 17069266 770963256 869619369 951653324 4291203 617216608 52181480 846786576 111767729 341972334 845734428 396776069 943926611 271744812 783831351 725270779 244330368 131666820 519718463 838017833 952800847 768908167 743418307 132951744 850606572 647150179 880455748 355074724 980442455 312338181 369679780 36014968 107679087 68610427 228553209 164269143 785402984 955855752 919272932 905485056 74771349 116256473 105027192 284582773 40396573 805525661 656705161 19898933 272218791 126636688 142190081 248490282 62307525 37223014 561454843 782229114 634500715 294129182 293519005 631839667 808140521 597473470 655518697 613168976 31380290 788569661 846641697 399184581 356516376 79054754 604604616 367106664 180264192 445109237 156008399 254679862 525346175 215669486 796257972 156747996 83196843 89218225 12303155 788339651 84394221 606217657 596738917 203562618 923930531 976636754 324178005 513916976 146451584 783150402 538819833 105581255 927535969 800929183 643753481 718007634 547914631 403343073 44921307 588040940 604014882 609324978 168552090 817663574 852382549 803753842 857121095 232356572 613346783 437414903 604273681 705658904 174924747 427642489 564913831 56408646 601036999 603008984 187199174 668205790 188539562 379223864 450603545 743758267 979085126 714138859 754699144 712457808 378670529 73856763 696824307 887574428 110168727 371901958 685850948 337360511 120213508 393954967 144468095 83616405 937779701 357148119 240016399 404430536 257284749 728535743 245195642 662910143 308944716 710469195 43222067 207053704 628503457 523554389 449642967 470886318 854073236 691658010 587380859 471249441 102657515 193225880 201830435 838262761 82759657 369649291 386304690 830358524 320995686 244246100 172305835 783594384 260136610 380805981 506885978 701905138 465168012 60982204 472235955 739415576 86211338 263891713 823111085 577434004 152460986 800925301 506771350 542021443 408836050 844162090 79826360 743712368 736379099 74776894 752780016 693253180 457436182 206194550 388253293 753135708 153944719 926902219 87423947 730479978 934966117 996861699 549853480 935748216 647946464 199015006 32542890 306181128 238132071 367022566 526232611 617258836 176616327 316179228 856219801 143533806 422638928 129725581 595205123 739980958 218547965 624163698 625589077 268860451 887202410 165773129 223622079 761794049 451435938 889400560 174925645 400676509 616679239 793023395 949172483 523646337 494790049 350926426 808923976 569522587 869748737 231030290 90758594 294464750 139319559 50407749 489119968 833558689 77264751 996334181 797207644 723420688 885658312 968875018 468348077 67533369 112557392 914569564 408237080 984613132 340700939 230601540 633537798 868483150 105469826 530117712 581352664 56662241 881697411 753965174 584101087 34984514 124691721 588959239 842360235 793243624 792930254 10668960 937833347 258352243 276126108 493715714 376507556 18107074 350237052 726787115 964117178 564476429 198785507 482681680 281155113 732941202 961939074 773351392 706092293 774580773 494634546 193344637 19517700 261685530 916025100 10020613 898073637 527765000 88236028 515450199 327249026 76240112 738058191 595430375 756704510 774665719 882144560 287803845 808509044 141793511 339148716 357708089 936569844 410753137 74416399 670577583 876066324 454730975 6034449 894456123 806958988 562820827 265156379 318643648 458068845 704173389 327343049 478156168 887983745 833442538 377726064 782727953 703887904 16567102 778522931 531205498 94502885 420600964 392156326 2998247 517564795 493046968 976476690 864510952 36262901 941502352 954014372 600442643 472991496 264155186 293382978 215003778 755186513 979825077 947680909 821983005 289450101 102516067 82507890 471782192 671420552 948348212 373571217 683415536 754997843 780912616 444956787 951448558 990335736 141905604 727443286 697967183 455502132 69115677 568197942 16673600 654703106 732552063 97641319 634494720 431067691 676780687 685233468 920130068 982833470 634939440 473050137 476738090 511590575 890684830 877561511 566010132 157587646 468840806 744395519 153966178 548959538 491148959 235582605 234712381 618532680 243806790 542608188 249788825 404473551 102909332 72170380 80612224 433773631 286694960 394659341 953692857 290567040 876066231 162568128 702177361 365835011 244335595 444433020 344299186 638313705 691132893 611582712 471386409 618898106 361442254 948008146 161917230 957683015 570347728 464068661 429555207 119178459 473096928 276155579 557239227 180718701 564369478 786909881 466053127 682198748 23513001 170124607 249102085 588099837 129938890 462749776 138581969 899822530 2311313 551202913 703900372 239370010 234499208 670497049 355121509 960103621 828213156 974193154 437667695 74500868 282955602 815385655 309688873 353234780 189561005 401534704 58687119 577799780 465620767 588077355 95189639 555643762 557282354 240730037 567334863 919343610 877079193 971613697 696752055 465718771 492301555 283891311 973559595 949339744 523885832 893164163 623253423 890381375 223600597 61135684 723954322 521209762 674213912 503736723 817301619 830016876 214525864 447179191 984770427 619821183 305375148 750587421 387182330 171683178 173233303 364321464 273396608 713436763 902338143 737629339 451895939 274011653 98952756 175988392 893378310 570637288 340729768 211388420 324662569 380510031 987460677 26372533 702348130 738770998 663236803 148057246 404061539 484256874 779201734 400642983 944205236 903388357 740690490 359590448 701980744 265794594 593184794 237302798 325842427 447398226 700915522 372003402 235688782 842690156 749738869 377485751 35949147 304519836 372181677 324946911 4824938 987084370 333933366 519909014 102862293 189025864 565605928 991229157 390819225 96185702 273942240 66927658 556127776 481330769 334795027 71163338 823201034 843413288 41317666 264231027 354498707 238212689 318631011 661286802 422581122 629610774 912042071 948484978 708349405 255677796 558909739 464726736 925416452 213974667 349940505 535704368 53311372 49609606 759945039 541050944 902357624 800530717 398824325 519588461 486173793 837411542 290573044 669746334 361171473 159322011 679474999 650772429 851933425 234634255 64779573 67493568 857070696 683814683 130419340 37570564 765659820 931013922 742168146 876981096 352683537 762685455 910807470 281095663 958211385 244878976 118555414 74350271 80560391 992247144 708697120 774193298 469246252 22933064 406867004 910334798 795814618 54624912 948156930 285296973 471001213 767047934 108760182 698115649 119275484 116175281 428766024 4331392 347392581 359917114 883567487 295773970 509782236 562534985 956373706 417505427 215392161 122410048 256501082 938872396 179811235 955222939 833242776 570715264 350916862 872602602 155034347 482390128 33019985 259415113 137391366 960660883 403437294 183988128 949144266 242159197 948587853 598299700 150992906 481437411 86386854 561149101 861672620 925522407 775053887 31313713 536998284 393019135 906944804 602779588 336793571 980063890 977080197 630959886 224269881 437435944 269739378 477401059 703357899 446487814 479605999 367249444 755236342 737835804 179931902 815071134 161442146 283225466 806580876 889039459 943613804 436609312 951991759 833312027 756749969 681507615 630662225 264210373 63522464 83548693 736667355 710936289 594641985 582536760 589065437 68330120 294945893 790362340 347325651 217078164 2085280 637710472 241479954 848711388 416717642 643515122 712675435 913747340 306993198 799160301 376420308 545292978 542943934 430272830 647814068 443166279 284793198 190852077 318029608 802029410 918444208 253325644 415238990 897762739 494872730 794887265 722632392 610453213 763953318 216503286 904823301 219150580 259912387 645780855 526565584 59034930 744005018 980554153 271237908 95631754 801669652 343492289 196126184 158230198 947296825 824472587 685956218 343729238 80515388 823910170 733907805 631944689 193236535 177744283 100772442 372346656 172627686 881949061 74932151 316322310 228442998 462339374 113889421 267065832 734693354 188917335 339478942 441769493 360793779 158756605 991627116 354464759 365634672 86790561 578931439 386648107 680309519 659095374 621286663 915344234 373542077 428653497 794519746 313563826 569196934 673685256 471405269 8927940 766562379 195921927 17988001 787859550 961377737 587259136 64485191 147342840 922023216 440296790 281055014 980544568 414258090 340376914 739444343 881006220 791467247 517568096 407396205 567424182 575960756 577276926 91773085 973619273 414932795 74953777 828654006 48948695 529192813 663826304 615088196 325776758 64300614 818977401 262250024 146722985 404685599 365609537 80734307 273007811 485783334 160209264 1619346 806776161 485677700 53597919 109254493 15448527 8027000 340091310 937311165 828298 633065356 196092204 816407768 187235532 101025593 899038071 302020525 555113443 135663272 127157452 277791284 506862534 35954435 760283053 769452859 163478029 638095822 107481864 906547481 335606474 549450287 955284166 764948070 553937294 612358709 577315923 672521721 371813603 864875594 13957639 654289471 296615765 358058714 805670755 779821276 350674978 422520372 801597115 475388557 229675792 360695831 649977841 456788903 506069953 99506128 407965153 118615632 915219305 670636474 666846512 343547045 888036926 49602798 583724622 319438585 901754348 845006950 967096553 190360631 796186507 165116588 533558560 788950077 309400081 871234144 491758119 137768674 258910512 152531306 291344845 776234141 989035445 676331130 481975587 289243032 598882236 40738007 154214439 631663909 890725114 414430283 288699799 226642191 526784341 342424947 604914159 948150052 529343242 25335370 123366138 909151948 394649701 205712438 745830115 124927040 638399437 125463924 112403637 927771263 56425353 4872801 573301076 623153996 511026354 878809834 265186302 238647619 864992707 33667455 827513615 182972011 63893371 49909384 9657784 621578836 218386333 860175705 434234243 860884753 734792742 475562270 512400767 350174018 21727737 73304791 350926602 29210827 845159050 52734829 215644778 809620968 95758527 166970876 688235616 607369814 981419229 810390435 517877046 411395611 136619391 829026418 329882275 104115799 733465379 431753908 352275243 221187480 148210237 41559210 290586293 954649360 572998622 874407538 704223517 192754106 695669252 928605984 473585391 933818049 84478227 772646428 84822094 878721134 427696607 60965010 74511805 823520386 751278768 536220460 175569739 164846710 950159568 296046840 13951778 43830484 196925673 32833131 909713729 47570575 566715515 933773757 641724542 411901003 942687811 401160096 905823982 832038745 866660266 900845935 342385344 620184257 323609946 677023776 809056288 933467783 995434227 284775133 959616922 52394637 196603631 810725245 976598492 474381491 83418660 113232994 259364402 361053036 785165642 347450337 380079475 376752582 299383972 64196573 880915758 535012722 86533448 756908819 642287435 992697030 69845434 610719201 76445023 652630220 375964557 304276071 846242493 463895082 929826737 322593052 765409817 875353159 629229328 461615498 526473727 116907489 777246950 647897486 20565263 679758362 589440866 284742181 480749968 362255978 679523174 868934515 335401048 306518280 756948737 106373924 40707273 876710540 439715016 102171945 609905890 923990940 585106243 212839744 464171172 35378917 385067391 950010287 109058961 180517850 536551961 247625594 74692895 883041606 725580061 413566016 205372592 211113912 439113517 89246605 160278928 592599158 126731682 842878533 422236840 887360559 461975942 995455088 158944901 6423330 936669518 393065403 725351718 985023789 799908205 698227669 285655236 865621974 731748329 464465134 390455983 114358038 17916483 713077702 129447924 4389516 930732157 264347450 20380616 512472609 312023468 801745152 476003355 997990653 882609588 831089355 671476901 221647659 65036372 551502658 438804669 95716419 675086878 396413789 737170145 272826822 193388321 612185126 551497485 89747725 977557120 269675235 327304257 454846513 49010651 874419161 777749882 598877932 101052747 413945649 792628428 449980018 731316106 287831190 896815111 490019469 690534888 536359189 627456184 962855249 953309605 350615895 849358077 261971948 774886871 106958473 715703094 614527828 593955369 474238449 356547253 602307244 763865946 238514179 703365443 992364577 635502811 23285597 618467746 56239229 484842411 86494234 280220791 289229490 736122915 869509915 64041362 939467949 285138663 46942757 494328515 601002113 743643510 474983298 118354990 239047591 822062473 893096707 554582411 339823442 672366090 359943535 368146362 8068718 475016833 921934790 407118716 48523773 420728668 900464496 29360506 713412563 52733660 225515584 52491140 818036161 948610809 468685131 926243534 866662132 184852542 135851465 466576157 370148899 671828888 760725997 833357950 847640474 796231960 222885076 550373112 897695404 868319586 252037296 778772480 284316963 145552125 529490858 948070669 990707611 733924279 902541289 606916764 282694238 69328270 50535247 892843370 516481107 585705859 653478940 634980665 924878610 571969943 548142240 448641040 722675196 313922703 177209536 546460980 583547761 494120682 440753052 911188325 144965606 851027079 665289771 926263904 265089972 763206437 544039277 215494838 338651575 305323601 874073424 82338728 230751673 972039385 327781294 596439149 19006578 34199386 136316140 359476126 730170184 722405379 119634020 665445137 629755462 399573010 714952800 858134486 620016272 70600869 219280808 141733886 909571023 378213792 475176230 500115735 734036552 221141169 507372114 612381493 290294294 564669821 853366254 640167367 301536521 493141342 548009849 915395347 687279661 266115386 709763962 16169922 199415197 536662417 553390451 303753182 822860748 212748886 665389137 236537233 722898554 247183043 251803342 821817506 654131865 80707039 490343564 195978738 732323073 188622341 958042610 902630481 479076298 50730146 43504427 596256442 407449811 381303130 227518061 257254332 557244700 829411213 200612406 512708985 865399393 959151084 959324743 17844021 570325235 37415882 472926085 263974492 50442384 565642948 879808937 246536872 799608993 517228972 117985054 167757816 72648972 612783352 624302971 386097087 853684304 279924730 410819831 603339915 962470916 853498000 29905451 699319367 255613910 561916466 256325865 747683390 606628075 67797260 808741756 943625703 395879423 483382864 214313404 193827522 783572755 391381441 368739521 329488050 426098652 297632379 600911036 916125045 71173229 417477381 456420779 740130039 569995290 864938840 889680927 853634323 767094230 144060337 2332798 482208306 403001718 663925024 279613303 344551521 953108718 276479030 515288811 885546324 174418862 852645709 302834199 465991237 683567179 681035233 336892498 867752530 800269621 837831389 95220944 690819380 231164640 268469597 815248900 276552940 251403331 289351194 156965093 962556945 778828232 885735855 381103926 387972294 511643066 45882865 728587029 602914437 377834153 191602259 87831216 887064059 408814434 875623834 546434548 868145850 254139916 758126864 874649267 54403832 22387537 353069398 634199632 283998053 95531675 281273206 201970886 807176834 199122549 13270535 837963245 652081852 704409639 569720668 46909631 553378579 589062874 541150482 13413304 404869449 922645787 169672029 327873974 465917133 370996253 412948926 685561429 461497391 377795567 837072531 417509501 365643009 442935340 788537051 728756570 529452914 45420422 767220168 338947568 877206352 262368824 790970004 748005464 486573351 505154762 193523817 193903703 201526334 650975459 62424325 741044812 601642909 917266329 266160270 693485933 511672697 898792929 65252995 968088628 626169548 468170518 127891627 350803791 993868480 158276499 540241390 534446982 813239882 624301713 250017622 344147027 93065367 333751858 444707077 525243177 366720302 731578030 643142895 830114831 780401457 898001107 331771263 730826982 630794682 969176546 150861156 58783965 991709601 945836755 180207271 97312979 554481074 689946203 375996347 704299580 137081481 559580268 748895523 787863113 84708759 223125377 417916409 463186832 614141320 80053527 503234021 821841126 881624324 885209864 399288095 705073469 171071185 465384649 840715167 187597406 702796364 62216405 576193045 415946353 342236982 56793180 423634695 981991580 566061309 912678201 386885049 648393267 289578146 612815486 723291848 114040136 28701603 157278571 341243920 886016686 703606083 695085193 719500376 460510308 614426464 565519591 377880318 924289235 653693056 201784945 232482743 207030262 64279479 361038886 471742589 975600224 821325159 597877929 872707676 362781682 459679734 404662968 3783744 733152777 889575252 562547696 604469540 416727370 986347399 398123273 326388483 845121774 868627920 197503587 346182429 26902768 396734305 485537540 414677598 408865281 667859084 29783485 106237884 985179428 471510258 389562787 753251788 298589078 286378235 538612978 730066656 515698115 907336070 489634817 758196300 681603518 625121006 926326932 203580002 279393989 606419719 557791348 762410855 581028252 678500269 99131677 487913754 347285897 451041612 324813387 541507305 283906353 778011098 624457043 249445895 987377048 631806791 93963540 410173526 663586736 662976468 340361594 908979787 675293117 97711724 511356835 200215173 226733993 688970102 649839358 400278659 70409972 405346013 211070883 224289625 289948726 914877897 332306240 443120040 255438717 410720395 788699658 419289334 744741397 726190915 133105093 448576569 606260202 146748351 387245266 182608287 880797210 676744114 959485376 691383595 443430594 360051280 273833213 413441348 177286752 612811582 13708535 44682947 134615113 207453846 193407279 212610612 524315826 699618728 564905072 848707231 96925191 42103029 388132664 797820001 364398650 910707179 563199144 416453763 131383436 459911567 10153571 773741817 468062115 397688421 503390954 26467227 502523147 63758977 605243151 81058047 59572945 734647101 534676467 497068668 381336660 26932807 239014023 230995421 945457733 29274371 921794396 80939140 300515684 561741188 564751469 768139654 859275267 1583314 217100485 763034650 149826823 161832358 731033346 551618554 335232088 705513070 567874894 934564857 787956398 643094029 498192712 102623719 494199011 100876426 89649997 841201192 33146443 873782746 269923636 13736542 852069106 454145508 205682422 199720688 986958126 26150017 697640933 494607883 50819878 808854965 621764752 746539741 57229507 752068162 314698014 357051781 723452404 329199571 148023695 136317320 137228213 598584241 335645146 129882804 397697634 508051169 126128460 747306619 696303872 653606459 38741919 883522678 753601998 304445486 471634101 911946996 802248278 924879574 833175335 227745445 910386538 223553741 512687122 152400235 568707380 276882391 326963344 996892266 649373122 380635119 734148150 455626755 682773821 497050067 765147157 6643551 645343581 430535643 818763804 991443893 921556937 15008756 44205287 990957828 625240138 911082110 301993653 411935584 394325086 166660364 781191267 367992226 117837736 825719401 212471429 327599827 731367149 752445162 909786906 827888036 307886598 524306043 547117352 242476331 415505478 384509878 401511596 676806304 452320079 521454263 340129125 557390390 629152248 860417211 970438917 357942674 763682155 945697735 215196889 386877626 407699536 255162130 875502255 153445821 376257232 127198875 847519265 497298284 564723786 621467731 553462940 268891149 318784399 848376647 496084737 260679682 76731124 510439097 30857079 990245587 854988488 35758112 881648966 671683845 225190759 945022229 358725644 472049450 875007317 683277004 950066259 673033390 397266706 88628805 346101515 995426122 626306011 872521374 135755565 395206242 496536627 548909121 730209488 146266459 327235771 660047075 608279119 163231058 115771044 756023957 267634051 779859096 201716266 804116175 732950998 142246622 574694264 692789982 372393177 617355900 287154302 570887915 856283879 809060547 414216378 709656765 143914127 769182182 908345832 158236794 552375693 432994292 98928561 376359584 307393897 1807130 595612820 979507236 167532813 77591481 590330344 477097950 357156552 851246039 892101992 412238172 759079079 757628854 557920705 527177524 780575417 462792455 777864101 381693458 934063266 453977594 970513363 929465813 171039546 163786073 265924030 139306683 920824970 584649416 620788530 277783437 882901213 610993997 30859311 895014168 686867194 251631781 893266941 374565090 513892169 303449991 410041798 932075728 102193038 408147685 627861983 446638856 625381974 960954121 584984979 662243018 721580043 150592652 854392452 2473204 129312278 598821314 729557797 494349799 562633614 828360881 903931831 644889834 489865238 823238478 319039705 42682817 606775682 519164178 538212212 763627785 605557598 215006838 866122356 50110302 237903814 18841906 744474478 276022473 630199576 445747854 519589862 60683896 600936045 986262930 90908007 69425030 46787807 230607307 226336361 615008216 687710490 370999429 997836429 295609554 559390288 929203936 515798313 810152027 260108774 585931657 80936200 448655752 547596601 422579970 211174277 656794423 700414055 684152643 606723936 2678953 578095877 419670828 120092800 777668580 809081615 388008352 35323571 951932831 269196238 980536295 389817745 634349486 60485338 184277716 528157980 946428743 346289920 252123331 159345075 682177735 815288776 280238737 354805199 822253753 682526764 670748833 227979697 913056974 892588446 184011513 764925311 417503833 118117572 562103320 263822097 33656201 534979191 746950054 690502276 143820952 290614032 965929278 977514986 540550978 357769397 114310273 728988049 368416075 753707445 386033747 381195665 988399350 757604475 617245697 823376349 901088335 170058617 850619757 470503393 861806951 823179940 312121937 184997110 927294831 157618496 528850813 776288680 688251992 598108596 459574246 672930093 893096982 381194264 756293651 56025794 344814801 819154730 931345664 440466330 144104092 850870000 674003164 224794329 131386464 272810593 372071640 444524362 511972586 158211931 716109321 949387622 40044209 770519242 811307858 66260855 650460299 170114580 499646282 822452732 31392531 120666945 587629337 794970706 506418807 798168117 13486838 498094169 565473421 537932524 207377214 400845283 738672083 313133503 799201294 632267396 726759568 546208211 822293197 916711721 670844961 464655592 967443477 664190191 726049700 320325376 330974894 910362050 316877616 621078887 471425577 814156183 230310837 758809268 97674005 298629111 265046974 730807797 428663973 54045888 434923443 479594368 445459370 805981492 468927440 716402452 803352698 244625752 188359550 706063136 850984888 815745712 262334117 153853642 363308327 107555423 69179075 443162173 892162859 40921893 692915409 583236926 477917828 592260005 874928992 789791101 131096037 493904983 598849179 73028985 638395079 505203701 248287825 512872005 995044972 740304195 30683208 463432682 641894647 125784431 112866382 690129800 507441948 747821841 209290633 245772670 780459412 449308954 838373309 705418593 843783493 543028522 724346472 195023511 845183193 602513327 188452301 928812973 394217917 75070738 873161986 418413140 475274903 684220936 144812343 394304667 339757833 389443654 67597815 502464367 226851040 905645013 50334910 270531489 546205961 260833946 523061830 638335616 923446423 527016283 553108343 705411342 908065094 216882893 392779415 343590168 311005699 952559769 744363279 765980955 554331845 995738202 652666905 685437229 291228292 858982005 875738694 815138973 997538087 654930522 817846827 576765763 105151444 565927139 337796019 666717878 22236569 852841461 397154855 945385157 491366597 912894231 772317603 276841663 616812624 902481690 785941499 761081287 625788553 878263966 896885752 300244344 526312797 988241568 734776721 265336670 195953503 818417132 466674826 547481967 581455491 804656254 976842148 386774992 113820897 715774483 604112554 580390139 849702228 129069619 732016988 144278077 172475335 397543391 171855084 788519511 678388847 559182853 160930151 386815842 401238095 38138660 783933128 827808998 417339662 308004320 2396215 413803546 835317707 357752557 441686777 420953829 156824910 632527452 233088143 362941558 822806612 404005138 930614733 594076092 489886104 310864671 137010497 506898931 877933933 248693933 172949725 153992493 55435328 237345402 9077239 368089511 509143173 573996202 438569206 548104413 959717768 709266304 212737385 837631824 830285541 658053187 542297252 379576153 142393600 181788642 555440586 924125488 764388210 509975025 222564852 729710859 474507776 948864107 488789722 192166773 579533796 447937068 925639482 367558268 874820901 988553112 793156340 317157905 611904549 296421106 476714832 689806847 588236986 763922666 328089254 589822069 352798940 512585207 990259677 752786180 731796459 440833361 816038711 516161720 37388040 942788223 132317151 229432256 123327432 637274946 651261958 767063484 18151425 682106732 963303572 507526823 35032278 83782791 175964938 552635912 563669830 306477812 781477083 513288100 973188284 820363401 628216997 438022315 46698561 365284905 648337922 477399316 788159431 81662254 580331712 92358940 537593435 586555105 306417952 554519001 300307754 724450655 567313903 273711430 499873517 817259684 495564033 239414448 751057699 356190528 794090893 687994432 911245265 759669774 682096982 318212319 906022112 931276956 140833919 368239830 28938538 486713126 16306497 147170848 371765404 410386250 296287309 877956820 69047740 521255577 895934843 492338892 850108269 257594901 508909116 870381202 608171392 208206404 894992964 460007562 460589988 581507114 722698625 201107473 424395248 701463922 564921215 323837903 601356367 748500912 500499516 256290840 510602224 950179299 640037169 160471254 700684944 789817968 107529351 816066817 314170646 662966422 472023468 183542535 451349600 164924588 210211939 732367317 827999314 316206959 150477660 696959412 127464689 908945491 502303510 955592128 994919207 312508580 275162330 747092865 858442090 136761393 297026229 668437233 219300596 964308991 136502988 278265393 444258559 479149889 572076988 159685481 537116608 517902207 502026179 499904021 46909297 985996201 167617633 544194568 911700125 571376704 722714843 115340044 103912667 707412778 703635190 247638392 299528208 178803142 268166658 38951602 472392512 392029929 196485434 620666415 682589848 621715318 927963229 189774768 435181421 566579718 794568652 101152468 762890185 774286681 266901658 507698313 229951761 842725425 208603214 311348262 990730771 167496756 111224187 579793542 653210439 755176329 391620865 956782835 95365422 846992842 731263332 55482636 237507120 793035989 178386859 555833774 975921344 339025069 312118871 914355526 984436377 494093044 259892559 847217168 291717468 333368125 775482759 50251141 197160288 503607512 269331841 703086428 679891502 241649446 688065724 590352000 453474980 794136246 464850312 901484952 273333657 782194615 760392503 703177522 317042758 321621842 364681987 416356229 269422750 482057881 189525722 207340108 282796956 717315845 50412374 454245439 655673685 291951510 279331467 746843189 862332177 126162628 685289111 801878837 883011561 289044106 785426173 363465758 931817851 775802554 655733368 578653601 497121726 378740359 764906391 714275702 358834629 536400813 434557742 9457968 137117360 383349247 666810564 63491653 997669799 884074582 442854494 381861755 761339612 648548561 844148546 736010878 878814760 84154886 417365047 137611307 147302483 967199383 606003393 346852162 547725269 838001372 345546488 47075453 594233313 799537073 748644124 988242591 981597570 659801573 740957947 463662868 176425600 516672363 839614303 444892357 27398144 745873944 560956251 773075745 809450978 475897020 298831067 516375689 447611939 291450364 894978759 147537856 191530996 538785148 686050406 705112458 902376 166542700 163636103 817428507 567393409 497524653 856110824 853907898 220099096 307922974 825652004 645495729 820400722 553022304 272420291 324169181 298944701 526184812 806384986 306722890 84176184 730518841 398594066 535606126 136297893 825379603 727379689 526329428 172321828 737343137 757772422 493824730 232117323 477462149 440911026 450490763 923741534 516519815 610816469 465866072 315337707 669139391 829793904 970051881 356649207 733321121 174270273 210879357 187519360 691672588 517902877 882928762 524264302 909772435 310292028 308584791 210189049 767045838 540565369 624257334 572336002 821525709 920089675 267479309 99886216 37740082 877095392 958188277 512530983 988406081 871331185 430489585 628253122 318717045 937748171 445462413 859251081 255437776 750628461 605969827 337963831 742362182 233486164 209958576 700179247 394183549 830054193 737563746 855888756 926062612 717103764 517435906 100499836 451273280 230062694 388823744 854590970 429527828 166006477 895515820 230349669 42729986 46815285 825578023 262082713 711015363 937097837 776547866 232090828 448267312 151582184 197495804 791027548 311594861 952490480 824209744 324980954 877607131 128508919 921133021 758845435 314409683 29241339 323614085 760743586 473086835 608339403 736557337 298260007 705601924 888932244 324202494 646352959 426147254 339049199 38342215 136831970 7105925 605954002 994105701 966009156 679230603 426415248 407987089 212735734 60164301 586144231 927197208 505190089 242980426 665973242 519484632 950351494 615804263 479281134 848741138 626762333 784121462 20706383 586676871 442297460 622752707 802966664 907588936 408737814 473829279 931751316 489617976 351646370 757670718 1031332 831689678 558539960 295625241 137034765 49810896 38481643 210519750 80402872 118036268 842755747 750229066 466199002 254537844 771476257 888704605 650729266 318557082 739712874 608652339 334989084 344619657 472084938 589438371 660026799 688183501 356784075 247742413 293905873 83543946 813142241 598017696 869172708 188059123 572111283 785131778 354947252 555964786 674002905 759316968 868393316 367820596 841676243 334692788 263323496 841068686 955880568 267644484 688411622 90181053 396114166 961635509 849868277 235109906 324719424 473872080 578114367 69695168 694286580 979896241 728599817 624990581 679940115 21522561 710367602 411125642 144313779 671480448 287394878 584072132 821214773 632905149 526241924 852527004 533837761 25780515 38520617 745542001 14940629 726524774 247963281 391053512 221346854 387591065 90461814 893457320 577259806 152716106 47015415 186488220 921493487 301370195 17438185 346600487 96324859 39445938 753694115 970310552 710215200 439959864 271647533 872712571 376729143 832452433 872428721 815570494 103224593 14345983 778476936 543223353 43752559 480261462 788514720 897073464 947275695 278701210 331928829 65071385 135204086 738133008 939447272 196953221 953440646 908052155 921713559 821956299 250878609 92829546 664816225 191068580 318997274 537662218 684646169 455960412 626138639 291104910 466477650 12637225 911613423 380323098 116894990 96194657 671038545 349730785 589154482 503002250 399122506 96881593 133177786 39862635 851391132 679888420 41280492 227286497 521091728 850111068 357894146 139837784 497725605 164871219 300545103 753830962 860003532 911958727 26537853 625449832 746942659 782907707 729996566 367417286 678625037 263377311 495213381 570706623 577684049 175371859 778636193 390834207 228032170 62682824 850418764 699905652 760972665 53712679 897888401 828725118 689162218 54645061 550337473 27324504 958567153 118225369 319454144 229799371 368912254 777116708 153457087 215050724 538623495 972609095 438478129 741685502 785419084 772808519 7554401 968760705 918287565 571427699 997830022 274081925 85228801 195951581 212819149 680362943 755441631 406577342 633916330 852510619 421637540 976161222 274250708 587462102 144770206 992202357 99054688 212782450 291778286 166389133 708959189 118799303 949468385 25371909 553028955 4325862 951046407 846773280 395172924 965202978 802029993 57706575 56880513 547125335 46562171 120058260 716752594 567591241 582105005 474992586 860327029 287228644 632144005 951289492 592518383 835218388 881189901 134567043 610107072 231268500 559650628 520676108 602177456 419495980 381806328 273992581 794472350 706866556 253602586 132972353 407568061 633171510 808183485 80491695 171894773 235868705 9014570 517131346 543572227 106731428 268056957 878644179 206720023 418828301 629453069 237622972 852762663 179693572 306376297 387067143 915170508 211739627 414058054 745301398 741650431 14120987 469310678 107977404 638399241 74596665 407657357 75128603 115452053 360188304 834377776 143440291 77279173 508482406 77036909 526979445 416946664 321331837 42504286 653541213 177701519 396668105 726815808 23493720 381267590 848660400 856545068 248633760 410752099 55520118 657594676 140316145 146479679 312523675 708508184 706060161 212922556 799666110 380832473 694318991 228663687 791672270 353553712 793850662 728701904 384171661 987713782 620248198 875976105 948905744 115752675 599198966 858077959 630054770 391006249 139537779 770519532 863029736 382967570 41979458 122218738 749159177 387238981 525595178 66837080 670934908 953459726 563584921 891081300 959453969 637439185 598217110 764034079 22644058 221277415 25730417 373170573 554377507 344400609 76660255 865502492 610756973 855482799 439603515 714230920 624760581 660892146 191030758 262058407 165515369 350257548 387692282 408301487 487316432 613249854 356326679 105204112 12518999 101048886 40902223 133729952 546596487 86931315 648794277 220022739 489091957 527656833 717102895 977808164 553683724 752647304 145890852 481377288 771487091 997675312 244538430 837293280 266209710 100360737 636434491 451648366 482180673 185192714 422990862 94987689 842161981 179399427 327604900 332765300 644290116 20403625 180717094 416288892 514557595 479115667 889899746 897741746 45583023 743548299 723118871 464895039 520586626 139860731 918685403 365659513 485647674 734392597 579589244 945463830 625440839 82248177 418664067 352035255 105639641 38945034 635234622 664176886 642030070 940646332 21990203 194211890 280720958 871991571 527954785 251668335 491447772 213240877 695868124 804942845 673527229 756393848 844081926 558950588 187847412 757719958 450210713 720159606 654762442 44180607 730857346 669020886 106036097 868198292 598967269 776965934 894551199 701321294 9592729 834557291 916655012 496319187 102731824 243535255 155787549 57387861 143918611 505753505 229384111 679367568 357123723 380574477 921185361 605696136 115503977 728864405 279624585 354038086 652752072 324433572 86267519 262654646 824676773 122056437 44415539 193606523 916780041 75902381 484523155 540204890 567512124 850165024 162121957 209963887 41496308 864941576 45853795 921949888 12902113 161326894 897051982 13623575 129435772 426496153 396341614 100684982 508428714 150776784 327628775 63880520 719663607 510671818 89804983 849105710 705252961 733158600 767764058 35787724 415809284 689825216 549560755 303033239 438107729 364954971 275871448 574202829 831181418 168261717 563359067 940295291 495946027 758402600 709520875 936734723 29206485 407093790 515483611 381575912 178289045 418728832 870932032 264685222 175917461 274461342 83287386 332503793 482626420 498979509 284202454 564837203 787913985 378114173 689183530 443837492 663922114 78588798 132902236 441763988 8630898 59250889 464563338 193313498 275261868 131831697 616432549 361366454 412267642 294769807 305416584 820820531 466291485 657353785 5213178 826785631 240340917 990967551 415088020 813264322 311344803 582364392 942086100 647346931 178629007 189928424 415854645 973097114 81646905 606661212 759954380 761730735 408341 6257099 131415680 408274423 430928149 821967081 56646601 770361983 82274968 817558138 478546987 968201213 167146619 63299196 23381977 908452617 548811226 752386210 827055270 345830435 719061520 171132401 478127820 869092369 861374992 953092391 488537431 819290920 112204287 595047462 956404684 33023753 904243220 313209515 714097184 773574211 518403122 110162151 908877782 754904893 228892729 301513080 486758954 873024957 575876636 253296739 92382272 262807942 820235051 612177249 570918199 290514433 576948857 671541846 339869882 973957751 953154443 81007712 434205387 64649613 19953 602102585 821379936 800069690 269015126 211750650 400037403 447953668 799547043 878380688 354663280 343797412 952252099 21108394 792682031 630954377 510820146 37351160 94675155 762697985 876394417 71933285 138098030 293994920 878229101 505635178 343451436 584284798 104392782 177726083 717889869 560716885 512541845 313352164 594309343 565463943 386770962 497348835 496125239 335509440 323162407 65514918 985462401 312241968 181046310 824492130 163371944 696454114 51544246 320595155 614863914 949969180 451378828 539529541 268861618 347458791 163923019 704718289 12609776 621143286 787292227 455476338 697850770 971662481 973252579 548677563 315292800 928462074 515940576 101736807 560593803 232321218 837208605 370281767 445471023 990416771 799669957 459887819 599756533 116526616 2574768 409150561 885777005 962618544 494720073 617822633 562609942 244819682 880430928 755403689 842171059 649923480 393571531 245244153 715271867 60975048 629553799 438533933 250164231 860252006 477156006 804100884 222851881 637186019 621502422 780650460 666398698 851758546 618661273 934345070 485248282 148015848 962113539 665534413 235588716 568072113 777889424 841204160 542635173 744350654 70960779 451229512 567411989 893486688 384709842 60471643 271117362 735976645 891370857 213582714 193615055 383236975 955101689 61670445 393194564 80880031 965970656 48479214 956619655 63179314 401811057 198155615 214681390 784236794 27629037 519563254 169922127 808398448 369861178 158691318 205642219 683347114 220110835 981596103 897389005 505507504 237529736 255104052 573913004 526042822 634781986 407512107 893542504 36753838 874881803 73327197 558988338 832967233 396719653 37300259 421284460 228588537 481674387 612872488 36987586 287112324 316455157 893876026 115577400 751725094 909937072 722140082 566432473 414517583 486426824 941259556 739160029 913971431 908240067 363211016 539498533 408965194 715310059 66949433 413928860 754424000 602911272 88691113 434184712 856289569 727150420 143150032 521450657 514039751 275181047 31113201 159911453 975570248 263953156 506496175 963089876 712573801 237133836 32250593 740530728 113110962 56269931 634113259 624232758 701766806 951916042 229090788 329818980 927116616 394857899 866477363 721194737 855844794 531738593 455971629 594635905 785301300 74028222 439439153 163587284 474205935 661293969 806220490 926143907 175992193 244494135 288225172 4987139 830405833 286305523 749467495 967579968 949294096 343184805 199170421 175340761 260221550 601710810 18605733 811725107 408855661 957280450 823836936 975860498 672999122 590069674 231884108 826445415 796100632 117636372 153473752 933090062 429869230 93611132 321684965 68842395 122487412 909391505 308790497 754541111 389978260 884418602 293186812 230518503 417217450 239724700 452534445 435797452 563377430 356247913 872014504 278104955 613371083 570328358 296197340 607109799 371932072 786201728 762655217 401273503 579178034 301217147 414573108 8728334 427710325 224340554 635004155 701642780 159911487 733899513 761776385 905874440 206042652 810788287 739990638 498442469 363720221 967792103 587023679 933422476 261043432 783893196 890265088 654037800 207103826 420024034 177354823 960731779 201743663 251548832 998094566 571432994 848416322 109550931 93527487 300385920 567894029 933175483 90915605 16938149 673711966 97088493 729156651 332370740 419175562 64050312 250867987 168104040 182577111 422901405 883857181 273500194 350089360 369455173 388282389 168735529 26048337 287541259 271515578 811787232 456423971 9091280 926047047 590333728 420464749 230629425 440120015 116868008 812767936 294203572 828357252 539151851 570423843 901367256 725773396 816162083 989470546 781775702 128594444 772353447 939553916 371577841 118978341 165700216 949189037 838834817 753059014 347906474 485609326 25344202 890057560 42050649 456706146 961368777 343786869 457722832 388815133 28770763 144753509 853970753 30442282 450584439 560795492 975774004 568472736 863700191 919406073 972315391 674347353 183165184 280363364 737330197 166019410 109837684 306802838 414702400 770873688 986293020 313515904 940257897 582692514 591078172 410235082 730042385 32919556 438621385 119706281 233103624 153964163 885434212 747406951 362568544 981908279 696380223 24372146 682504852 157251259 93857727 321059702 36731218 124751093 802098788 211051333 56775400 130845819 69937812 379041122 747928121 404562233 134716658 982480497 100001821 987873151 788250836 69093577 690414600 524855195 45492098 801559701 137471775 564525918 583063192 208507615 61276623 101791946 724509377 600029297 973801601 371749768 6001276 196671877 126904183 432248817 519819089 914157119 227419813 221730503 980381406 519823780 864262383 479202489 41670931 714236690 209033576 387405483 970829907 319008651 84630451 475052907 460543861 213351908 121520469 671290147 500984017 176266949 686350251 710198570 438359602 208373366 564136472 747293797 993907060 12479526 383860804 304337754 892820319 451751412 2985761 379140660 942664611 153981091 741239714 734742292 662643529 595682902 15569032 858167706 430524648 786202984 445032459 339266163 752944930 469881672 458531297 512833517 875059267 863220412 233119033 303813700 575150204 157009680 818756499 236634650 475523715 505173166 652182021 403144379 561641382 311486897 533282243 144096709 574066310 480820489 555895991 187295195 97817538 157923320 919242430 421234003 481419647 534705356 69230276 738335013 758879918 769117362 532279873 533105825 558275007 337255658 892787181 506736667 214406428 506464912 504294533 564634758 379149301 11775561 575306990 612395020 505550039 494727740 384286522 688181968 264281958 221600212 776773277 434840793 666229236 351976324 619373735 345766058 75425684 372797612 802688181 481705171 639655173 827014633 965097146 725331793 464774752 289271819 257417788 497007882 882704536 910001732 653946442 261075745 410994801 630459363 168887162 665188558 581428616 446140070 613978330 196197555 692046439 222038039 331599248 605159491 611398905 234975853 238611608 550429834 74767585 211547709 864684554 168532974 366218761 975719947 28282229 458827908 990247337 633463579 239480170 118675572 823406257 133682368 320621879 788103079 450593328 621669177 398534372 119102440 233773744 499170298 582046394 200680641 145808876 651340961 598637945 621336846 51362891 227498096 655694652 41639057 575197630 222962000 251401968 743132465 448563038 137213892 147169859 246639826 516669553 922314765 378765237 908405300 913439355 470423278 307860045 244683825 308727990 613696174 510642288 562957639 662195251 882404862 323183485 988258762 304243512 807636359 17618034 68937 167331830 139630667 576404661 754635127 516993527 316906717 482606304 632528226 527540284 384758149 787136570 784036830 913628491 330116417 24936735 554594971 688192148 740764602 196331281 819019911 807969886 372403737 139279206 704474705 776619902 783825477 434418564 327003547 550519694 773786098 273893560 350063334 852987288 976568628 460396991 957782829 349645399 847319104 777974945 828669818 549638061 467329770 974716925 412176666 726541527 355169872 98739099 322744569 92926878 436149944 731041150 282032389 203944477 906406154 169407287 137366688 20439501 515075205 710131520 51731374 385622234 86247874 45761659 158065578 744550435 858543861 942109207 215301029 880062919 893796232 207466556 899820388 74780331 107110388 235696451 287144572 273761650 796115033 384578957 715378716 804498073 245992152 62145091 176734855 306615475 689145000 868873072 163292585 361777590 668644933 856546713 266332575 909080983 303921285 975830532 826545278 206015310 391694917 103595973 82518964 310135747 965060170 834171884 315649952 829986529 363257746 466526026 789673539 750425036 247790777 892880640 929692481 819968420 948248511 238680775 139163222 749204086 784061278 894867240 775877576 904771078 34743030 13055972 876561637 800811620 489735717 40629507 539585100 702475165 57976189 471208931 851102879 793752371 975447498 370861816 936203541 398029555 675971295 377944355 426955020 539956939 246787579 49740856 18920548 702200497 547923017 978214259 244432745 17233405 434099107 699528498 844723863 4272011 800720267 705739917 990790893 790489727 660605710 375399904 195785553 586505416 790361757 752558799 758982223 830099463 112481634 278999002 384608294 801394321 530804119 339816449 450181036 45819883 164987716 889619861 838838480 630680661 789241334 748123360 905301635 901276598 297003356 320455769 66941554 855223301 107077908 609880944 890393581 961892446 263631989 45120754 70828959 533851446 667246982 86630054 284890768 46913987 604785819 790022391 209351799 378711231 841511269 100261806 98042895 575439767 705456403 345407040 570606854 514000587 196330455 157424654 65397214 617139361 96838740 328756825 282385339 81619361 932253960 947919146 595768343 176570003 535158837 182185301 154841500 607701836 791470003 758049848 324359425 111797532 516928077 54956587 982630343 984626139 518132146 298396031 807046570 711220281 581905709 183100397 654906661 641482566 880969463 215590791 870826188 415360808 275763269 948416546 263422526 191010349 808191334 934467222 476759870 291927417 355463264 373350218 698347484 587625035 830583816 261700939 429514747 121805133 226805860 216149471 200893217 838529769 37595002 917793717 123266072 152732906 660770945 447702143 170396910 125864013 98194318 805930490 158103083 320197319 382286673 797712894 995201784 163605512 262530163 108401721 474040133 832026267 528679558 717927026 238952030 517986030 128035076 236756169 158739200 775496931 552620121 120030456 817070636 932090171 324715078 675148973 385938277 988795112 172955010 280550071 889190343 716248178 437362050 957230330 193885015 945049510 830870028 493783019 921092741 984352518 568842360 640871695 962375481 884370240 846229426 822394220 714963544 407148971 818864850 979474520 418788498 582733627 578793027 789779570 644565699 57062808 175371966 52464072 634002481 187387313 282062684 481437501 329567115 287485771 537361007 477813916 349318985 734760862 270533878 272882112 216141337 173568537 166667335 246983978 61695347 120638522 455240394 104690342 362652281 636609052 735026863 293273287 7099020 794340023 251126506 405511792 56214446 285991083 129097496 515881687 232920253 167637763 581087263 118854711 427636971 871872086 480353408 849931535 334017207 717977040 705048508 522836034 49470924 39435243 768389147 794003539 599527961 963804832 634544448 279870938 192580898 748022934 972669531 216736560 475052944 271523479 751188721 645460669 562064881 602807528 80416550 793082265 148914671 780343112 942446926 366359772 293824517 60674767 346729858 315360451 574510771 424236873 452988144 400211661 278312816 830815726 43572744 759113241 163808792 902678448 995839527 284049195 616594251 865329091 288007899 447298828 142839784 600384288 559282070 180160528 48524491 480600935 33304086 629830545 750849497 231278043 181013622 277548227 896852273 17902148 504823155 894281643 677867489 41560763 241483312 334064782 38406632 607449560 734915447 908717030 868135340 18287293 271749888 225907966 594763197 681761362 872072452 795187310 755084225 727247150 995799152 893528891 155451243 150645902 178238013 267701833 68011129 896598980 915736360 819469535 736487865 236408430 412305796 991661617 804697535 795871366 141808195 774935036 329049313 503488298 262067627 548175867 753081819 485926967 285418429 446207328 185477779 119992688 678810547 445756950 340529562 79008608 852736365 687541695 346826681 377056046 39188641 467852800 997092945 253798247 808256426 706522720 405981394 751120561 156443056 22589638 596651293 772825275 76474353 19068494 518363365 595777426 881998320 545965612 720588980 942006089 293355843 273000651 114176563 632730385 632943406 623939751 212679072 461059680 952872046 341406203 273175619 928877410 91595798 618255174 881918011 873685764 223235903 766561711 569293521 93533961 626690138 203758762 789710311 506418864 89321979 143594561 949828669 646555142 211566169 590067655 971694586 945916537 231788287 738000663 334047971 913824892 471601761 705992133 179733224 589459103 823239886 946106804 176967212 248746994 662497173 579799251 152516183 972369414 483972463 463009910 136403384 947098910 687729648 400119184 327347795 543439017 793286118 654574138 35717973 129016020 589694773 93737934 425227111 995897809 621811354 292091348 469130422 36772580 187683248 266719658 119096930 749096737 514150814 95726740 414525474 317229595 545771241 382018029 140607268 767747436 473367973 375586425 836843091 615927206 685787572 165562484 471755488 622547991 652385976 50831533 203995000 475511571 727593084 779349289 880444118 637113786 624137494 551877050 912313951 1061731 254934152 628787732 163364993 100394629 947619451 505144597 749516929 399765102 694432828 877792486 245264753 426215014 563886617 112005508 629937916 548098939 579889989 722907644 979110976 265795135 482207700 277865203 257126616 161809987 359812949 133087375 530126674 811917691 300795450 832060683 391107069 977506499 893115872 304751935 253165399 462918503 325109161 83548328 140157118 89419056 343596116 148178865 690131895 969192819 151813690 894085527 453332721 710533472 490449332 227732791 612314566 554796407 612189937 312307094 813005865 356164755 168605866 387693653 382764466 409039885 996371698 858749005 116043680 680080198 217992956 839234904 585183819 753160125 675820888 176092035 403896375 825128406 546345271 600323630 191046780 86990301 532329588 148287199 358230030 430482079 430300517 69092879 844603308 603303263 264294620 671440466 714376475 277417002 60644506 160944999 73330436 715399362 262444470 226212573 587582076 61361624 779392880 951728713 508613731 921775505 216642942 884232770 953784805 840576341 5929114 22055991 297837026 572400219 432567004 268811296 666199291 940499957 412844635 329596994 897990394 155174867 167397003 109987548 417149865 263623068 79012078 357415922 918787415 868573465 123066696 293775878 177277724 451172934 568950955 490560091 499517588 626349435 274906632 800671510 444169421 433966789 681576464 223387014 392924256 924130885 740518698 886332969 824991594 898592566 815717856 979097195 386234057 756969132 893322142 491433048 169703585 420837134 865541802 370538164 574617227 301357872 648132733 114962433 986121481 265464183 743706041 512588368 488001303 233910669 257266287 948197828 391560808 336266037 128238715 504761767 581030973 343498885 945996129 997377149 821205634 476391910 362966198 616261900 676377278 309823100 748999848 231544409 399970718 772447633 314496308 360771363 667295756 297911047 970293013 832770698 286167581 410179260 207429384 357897478 502360326 35910047 284120952 681445459 402995082 566601153 816502606 42959380 275298248 802423477 500273339 733865278 128848271 802020671 396912099 795345395 496435234 579201397 915535158 648164392 151608768 425992097 536637695 702125629 888383304 428372660 485570136 309484805 183578403 230573456 862192647 537944659 245628393 646554686 352609970 519205031 220163534 399240975 706322703 860669632 934304685 694023401 803673517 532256581 845262900 690091440 632360269 244399578 558121798 148583320 864794300 461317538 280979192 857871208 529574911 212878028 206248231 559351853 818155702 595842979 115195478 612614722 988776535 16260383 432461146 725713650 576291176 74999955 554142343 544778657 939448242 445205400 446501388 913143309 456020534 564385892 353672912 7937189 475803912 415637676 556382152 625661112 977888694 395478321 953628462 562313384 234608891 979482323 882185960 848440924 795805929 470320438 129317436 658502800 186103126 723797699 147699261 542689231 629179122 480246420 25761463 166948343 332277786 148479164 558682430 798537092 302326233 89163927 915669922 24979458 137260557 751761039 445263825 660539228 192091937 609883987 715292951 978770846 289115789 705978658 277538616 40614981 995528433 85032867 406723961 264689060 78549433 180118245 834101242 257802341 513730092 419826058 836490356 984516813 745327356 279474216 45381648 600875379 978955163 604227830 649984994 933466831 503119052 539998376 540243501 519661254 330638191 208165709 204251535 73398912 454734638 347327563 82261970 938733743 131121631 505184527 649594390 472290968 407332102 562190524 10102773 544322349 138433717 425151163 289703254 51634798 906789338 911458108 4250709 697018466 835361479 553965055 223625905 975723632 736075606 925166392 644674845 255702204 417438336 879415309 470307703 839253900 386212901 499611405 617769465 125126910 382117811 115107706 531940577 741625649 710094304 154784647 636539805 346973867 106584894 405491483 319485117 592538353 474876061 482247792 650841375 406022236 134277792 625772227 883799245 453525786 797116314 99752081 341266164 351463379 114852296 827713769 45214384 422284802 95952120 600682703 876916657 808462675 979575397 401354241 359098925 267603671 6729117 349084508 884106733 579078302 743332088 779928160 513881580 224607703 671165192 296151613 799297157 260452999 201209785 594632501 884492880 193027457 909553491 997548724 593300086 68554331 755918592 312276164 137566166 87652421 241736372 424832731 87727737 987399813 681909420 279623462 705824306 57109087 237431004 758922159 402588827 55059626 75669613 188483044 633907090 401139219 647125248 478005731 576447915 884010315 862519378 327333383 799820832 481555156 905804957 707369478 18345437 838432078 674143289 138521833 619996995 166733610 189143078 873389168 278891121 114651548 148001333 210279957 692893001 64916689 302359363 149786117 338213401 703125387 170561460 386984939 506036591 86288498 691726921 26151092 888459153 22127496 209989090 490321140 842892608 682218056 90011656 216258032 570376447 707962046 707141431 772233498 575864133 139813946 995834583 514097387 288181110 92785142 264989837 856393312 276047257 898338669 257827855 105082083 370051509 969069749 754108570 769091184 696752387 18673609 33354791 198783204 754235940 5663977 719853047 54753257 619770508 447761383 558049663 754044781 877010671 196912938 142796333 447364207 857998955 921032712 449407774 972200690 451461031 409094418 709243970 782726262 913684428 255895526 127000203 725085159 228335525 707651922 807972597 916012280 826748579 660183837 433457704 525956569 825509307 869665838 365293879 207302890 446933619 981576871 507060529 170857428 659395515 170429250 198981884 34933863 864652895 204285881 404340309 705992307 333259644 43711476 686153548 117409612 260630543 77689157 830728987 744647746 278887722 791697048 374052382 852826839 428728377 193801873 256731383 779600958 980518195 127865744 575296331 832073741 654886018 964034808 684310898 817983649 285694360 657945201 45684416 82406197 584381325 938645128 817243538 199154642 267581180 617601902 915988686 814319232 437956315 38512494 996738226 471618955 50601335 395158454 754242896 305287374 727182481 561861125 590605917 956958356 797922077 301913578 749029791 434097176 415791182 11780287 352977724 902187148 353099623 664915612 439803315 810021014 302255669 919376785 841725905 232931131 744058684 592489991 460521336 134072334 597153955 519256040 683951354 478701666 770306496 409771971 38393722 943702392 233295440 701933021 443005378 764937779 637750269 711367054 613757497 320767278 908923640 685185639 80859889 771292761 553505963 813352587 848660752 77618667 698711002 527480292 318180102 750041155 976236333 934083176 830128444 855654117 224616817 371748961 610866557 497421027 286097879 767080494 421602257 123557342 318845175 150702801 640768522 542341225 554710327 460772217 861063848 513678841 923423843 232677455 696115742 595382936 955105301 372939437 404730373 816684862 759439134 182756210 186606873 716245319 852499190 495467097 913578993 52637187 881683596 400557041 71836061 541704611 874872858 641413293 359187457 429645303 564620141 223428703 225883893 332234001 550348545 798273826 242741489 295467645 327484857 588300711 154480981 3102631 909979664 538949418 785761423 87580616 355663641 696366470 193521047 436565946 729167493 215551640 34869922 485493756 385459368 124404396 811666336 128687578 749836164 264373800 933106909 140451752 538075676 864122672 608359665 824845932 416387786 738298508 158510453 689968387 179689643 157136239 787864734 14065276 63718658 360379399 212901486 773960901 182557084 670285649 28987094 311317302 770043380 562927648 360744663 430526293 346039623 408659810 434052703 46863023 445793084 157713782 42185822 818546897 15782038 546898461 961228982 273967461 835951691 691369527 859505797 564868185 517099655 672618143 946265546 647013928 503701894 917012108 555108502 10089526 500449773 29461974 126394298 312254775 684468989 763736944 414243920 785975050 760724821 840108877 150139215 848461482 726744669 382345920 195677711 227399088 12792646 902514107 102829959 913113976 335955623 632436222 163864448 252469889 128602080 673629323 1833259 104664902 42661297 361638498 188624451 342205181 500738044 849483187 943644617 786261863 544120009 169868501 137012100 822735909 343110896 132104593 885908340 894523377 176366369 284900012 329522201 602026263 451324967 399432890 502194476 95573934 614019381 207347755 857714169 886538477 457875331 9536861 511191406 332572212 80430746 676465046 242562942 158500421 25366949 693405909 738047729 599895987 741584807 993877076 779145448 465374365 376058378 11143289 226750407 370279342 943920468 450885621 121033055 335695186 631111662 385523121 896213020 499699246 256280407 191547127 762319731 161089570 192231101 928208717 92929385 936686273 374440965 668350595 662701658 445257528 467229615 265165223 166285952 273898987 351304042 680549636 11204934 690296018 374263065 376078164 572852538 594776159 268851790 809765646 826134207 779983689 483729834 909592963 791197571 226302279 822514517 149819994 480604523 174904985 678615516 174344054 643949340 862254404 451505943 194305981 942117289 357660152 379311645 367582946 970938459 66411114 742413563 860130065 361955107 113641212 809526012 263207496 18904301 93464280 402433749 95827257 20345559 792171015 737712658 802270942 275785799 246462775 832425260 435064850 78487534 802720509 178387969 956231618 391981265 737719794 454018556 193771093 308377796 53119387 776710978 949321189 513135719 969623196 491351140 126864954 827603824 110831086 30781644 701194679 688703517 561871649 98849586 62645813 798244584 882383544 228047723 793532670 519868155 667232522 195191011 761328755 418271203 530231275 78724121 804795781 984439235 157141460 258137071 658727155 685471692 376096692 706952993 150285507 298478855 259689907 553999074 95560448 964947231 183977662 521764617 915412625 420256706 225281259 268417976 592553406 986840243 829849088 114829909 990843690 681495969 497583177 791365525 484640224 511708852 559970086 844591825 146975708 948818144 5402799 63063294 940177901 224214567 369831892 40578733 955665403 102268272 529985913 15265181 698053626 222274286 788460816 617577231 375463856 2883328 651251630 366443724 509206491 692624313 348412272 584236020 760970572 663930153 984495862 65613275 103892926 814408875 708087930 665230951 571732181 988744307 689787048 464048776 590451077 847481065 826074267 899063867 645241948 562503244 465228828 605165442 188525784 751656515 346007456 174926273 330372208 879745686 92673961 536973781 836228522 186931154 401527377 583613965 533726974 94763244 197686086 98288635 991513829 981303085 937174970 268585153 270227431 738317404 310349452 442085511 117033791 315811526 778303392 280783013 315818754 223320338 495783006 668918973 211221258 595703790 395925405 862528418 870934285 641730947 272253202 940599519 393481426 658781345 810677807 676312007 27882565 175805184 576657849 469766668 525379910 207014450 446312512 308068389 576873691 372994397 330744120 487033439 248657160 645224289 848157613 707151187 907797507 908938146 770274679 246484077 956534299 341858241 576930931 874794143 273845144 774268370 692887949 101212361 971229910 659632320 316560610 13193948 303491778 137451894 858141044 57832770 224502504 898133559 860376160 597912838 587331227 771850252 260630423 396214352 123369171 728253298 933138182 856980349 651875535 97914913 657164118 651284442 356977241 320604237 594507877 471755658 310465251 679733302 530152620 805987389 320348335 556754063 642632215 523250337 994383682 566538245 682540312 642565250 21361485 944630071 534766038 617074577 739094205 725042050 7186528 403314454 233710124 61095332 558786189 274998840 174692395 1516679 998017916 439615517 158554 289374904 126638391 862011472 919673620 90497799 121679291 906745302 444692535 934752174 849492618 540109927 835327322 85683439 843388135 72337954 951626177 518678500 783147330 423347221 895602892 870239654 304578254 880909534 2475955 239518472 319163082 621211250 230067593 626368894 267192553 145553928 160023257 516840732 567792318 283332234 941325471 761985328 884441392 310044851 50228896 865950612 967234171 329249207 508899748 438710928 279417069 610193533 345381363 713413769 40318250 135445238 12245489 273663176 491180631 450767378 122728759 388629462 734815866 514645974 383259057 542709798 605649692 472649614 166672737 267203692 421521727 784353120 84535116 597449174 799435017 543604690 173947685 634993830 363032844 360319229 989378310 929472857 98531221 683664061 620188107 986200381 494206004 529013670 875726252 876533398 235833263 896329748 6117787 247905122 844272993 776773185 671320681 835660511 670002094 540821698 279745420 824883782 878049131 931231684 712962826 12448026 992940549 190754037 541392340 123859562 482966146 747503412 459780246 974470410 271323634 801154335 320425318 395495408 361261724 988882209 466370430 280477786 376073217 539188940 925477720 426409988 940091044 731936654 317921062 618744116 264665068 775484296 110710040 486459661 179038373 911675717 265108434 310920475 126278156 514819856 704707269 377384644 203140106 142315134 379163028 537851578 724665669 31644077 609367760 862951657 985797767 161169534 449228963 460190068 220128944 114094932 323695161 406995726 642442354 621567732 237591843 620260547 322408574 480632907 373319538 813652044 403869353 692026641 985775162 534839398 242118951 276332771 419961925 906369136 289498442 750217906 567061518 390578322 496153405 45246176 565888760 371199955 708952791 739056856 342476350 414797076 82045880 191491639 64345693 169646954 488054614 787819797 431729793 704806704 278224811 186780562 403761524 227586139 799811026 425261877 611177652 548003393 614029056 719105916 799827732 448813495 752654133 916219950 839092143 505976865 366951216 73888571 761626753 116020476 979080613 744125673 680958950 790233409 898479715 213374520 713886050 485385904 616801973 23313117 939601313 295709851 897249926 200310145 57601568 516204265 106172089 437048249 902398422 343313027 859829861 479207912 972409777 631880650 804906735 368635144 263978930 416783237 512270141 404883400 415791934 126094532 567168868 985727970 227873253 220237291 46379890 905365547 911888355 14815778 304982672 332211474 421107468 893848261 863279658 169616751 488351596 875579614 688040226 842560282 148399472 507297029 829002655 677289076 906640271 319867589 319276595 224561040 770210360 724277166 204337718 676157182 725827094 531908326 706846915 663232306 295310180 298284357 190417599 675359672 237373313 357702057 217387074 518794461 922147343 52307966 692685125 806123547 828868887 564547891 71951859 611630518 949736648 388187019 835495990 127669579 34702133 530962292 93291400 818121633 103501181 501061018 888866222 426322777 500354019 160846746 224293845 400874543 815413825 589058515 620072457 597961559 221646306 844970605 142391408 143752222 914029005 870592594 904287084 493329751 136794630 731439730 591604201 149880001 441560745 298384812 461688057 194927412 837239960 950405667 182470539 236734141 210879808 341837654 906343704 520537291 487491848 317153268 889327604 112116488 393604840 574995107 907407754 906192693 629892963 447566944 269517239 793245034 737401524 491229302 817116383 584235743 159497062 118291170 594405182 429600215 919018624 424303155 141874843 459823299 569414326 206382133 440698025 556311971 575566089 280926643 84065118 387312344 795458397 54395782 493609551 802739113 123273289 206571537 969741295 921271051 531268684 523104580 357361063 317896920 390669867 843783756 165350803 631558685 487152828 31499765 744211610 829212531 941672644 283694477 203786377 488215504 759104451 936689041 275129149 582398730 17902303 354372972 831596826 206660787 915616028 570773625 891919383 647286739 363740294 513837537 987355142 491337815 417368106 157798833 633398707 74467397 831507441 503289 926337891 124262457 430644594 798402397 796970784 564507955 531204847 560798958 482432778 112988761 411099327 503606182 805316924 546463114 436173145 4048737 804806353 273118889 331846441 206882644 508569371 483372950 116788328 489391429 855741349 695912957 89562445 573390529 24380371 180986740 308626725 985268348 15872333 1154071 266399710 149662508 645689852 672750006 298692740 170590448 772201601 886945451 671517985 613770404 740636127 601573610 684793486 61087307 843516632 384965647 427959842 446417253 239464635 679685301 384408214 816408326 11631646 127318284 68084297 498608114 495322489 302310913 508877393 660530055 233468925 368468751 412012112 778617923 901977155 908639257 863401880 790905842 256051257 887617679 337933608 471385197 283776791 825159108 653974010 351021867 353520518 966683031 438198548 795069468 737137418 408578538 213446227 177297305 610394566 25459061 512347484 790600047 121471030 238367018 676474862 959355658 41835559 822125781 932926136 333940663 457816055 60275519 76955009 727781444 493150682 48743520 252343564 116043542 850800508 975708292 254782156 733124009 633120486 12848478 367097682 293407059 722290521 68475824 496134136 498287028 813047503 369573729 452215972 628889091 403190370 462228974 39955884 808369452 741606404 343644883 428315187 30456004 49869749 611031772 378671095 335050431 459540727 86622939 720969805 449533980 651051554 694862542 609557761 705136102 42454973 785162272 788133435 194360655 482652589 803208540 297743139 292898442 346763376 899009158 818330719 529257789 816415046 772806379 812112456 382020305 209236317 311856336 4657016 398149655 161507228 254327220 366680120 25198642 254841557 170030990 634783210 161097344 794384467 564600682 795301298 664694129 524980810 403399355 269006986 862109489 26281321 8100526 887214329 798622979 34010567 68547274 350753586 202535008 613395226 933605210 847050738 344306396 976623420 829288294 115095427 200669387 511667883 4831386 366515056 876823266 552284257 611636217 811728285 947786231 346493994 38085588 239355811 946941150 848111040 245716765 280252978 115585254 94598876 118414963 738297586 677733385 223289578 515886016 922736492 113793673 380032012 366709475 325143599 324400139 355878274 787007601 46272319 101243332 153887770 85620298 981197363 350659550 737868542 936946486 155276456 258160442 59441633 275080029 645162113 70814448 369234472 914261622 157391566 946893123 157461238 930202334 114730589 488964398 532241773 946751014 814173456 138715330 976460459 535128258 85767812 820714445 447314122 34053240 638627486 122902373 721362753 798722212 513481493 596419676 842235990 843832794 161472011 628193279 777107585 850433590 917788689 202370918 842885112 418142080 260493409 619388417 40369466 258114475 879124211 929972031 73095187 439332320 781160775 913410548 712118408 663336668 987618813 144245701 355731041 201183457 271639955 944845765 235308333 602672978 455638473 772234947 579370866 211082805 240782480 937211468 989669134 354568746 201925604 4731379 774244647 317528390 855722075 260935895 838962072 927641586 302409681 350818838 52358672 491803915 193437750 52772884 450162004 560813694 276972623 79543916 852545809 545085073 370454948 628504357 428283316 69483286 896605219 362051098 821991871 955881575 183075499 413025217 540287461 336934550 109482816 52647557 914400712 623463699 588264539 149331982 272713601 238982976 78984515 627361952 521605227 27301928 386183246 860800735 654706701 274236315 521353022 786887741 184233812 692636325 205652448 350134913 569467014 973990692 939659817 505908320 897955540 101519956 740590922 509625502 897068757 51937525 723769359 541865617 725270141 847359845 605752636 705657930 14285179 232242089 989392695 826742626 555830671 281861021 238512441 675378746 949259915 916337187 500257164 195018025 43912736 145956795 756381293 487236153 296714028 268215652 670287678 844510696 900464294 532063814 597405415 269549888 913016144 181246222 148737131 245596134 356437881 634204097 582953105 678590718 547339059 955715251 758466597 215685048 29489549 445288510 560747036 611057184 736082567 514078980 361328417 779780349 900214332 662773544 264364912 958816844 752411770 787874190 504997378 194487678 606587491 805519642 140508978 36157542 897729163 144637406 540649065 248095268 747650891 158012108 82059038 87348979 885727371 8398059 364722169 904478579 224703376 345182379 535425217 400686099 806059281 337033748 827953220 634765439 57287343 795164766 31796513 310943262 511118997 960279605 339096082 340606528 980366268 261324093 279373039 166185270 565343462 812627162 527703992 58096884 875588016 354234113 923917961 966590762 697299961 987813356 675469631 103803068 979631918 178725390 362246797 125790204 468521850 467526862 10569909 718582738 961000414 433024628 934531649 633624164 161622625 24266919 817691156 379795765 814821200 668330120 167839504 375197258 931289087 948762139 661813687 986169081 440740227 421384421 283184199 150957140 674367092 483093038 669102941 359927630 576140126 694096783 548480373 395107452 18741224 126328438 260553004 899663683 68320689 439178509 439644567 309454352 136772338 459519981 636380634 553124498 277206407 924568297 347509066 20709118 90039242 578581959 583060674 76316634 809253273 680129849 88023880 889709262 252869106 336603542 162722447 515816986 15405655 308063478 363895514 916301753 476119357 632776864 985989341 631498444 665195757 306248987 856484528 697118044 220623687 191514951 270225283 982816838 959531001 175698421 662901647 904685779 86565900 244641282 788020262 764541600 415605208 36703442 759142746 531511129 280224183 235127301 10803221 222397800 714257467 385892174 134359647 916151433 435762732 938048513 265657004 14637295 328693761 173448357 541850100 353660584 396713048 845610189 179121066 975666630 689997334 643526726 548265671 942795650 625144401 842401884 141306885 761992024 591204436 177836296 173007294 560341025 349201610 711728380 936272638 205036858 81939703 926670729 402418468 884068484 53815322 77664380 706011576 242554177 243469937 85386656 450065248 136324514 869645646 314439779 567621330 352663839 495061048 153782610 797214608 664257355 386476834 839921763 807962721 46216997 596821514 775480870 463486314 450987970 274845956 308695279 225653297 454044030 210314381 123833004 484054467 732774556 743939929 49012108 104838404 991506472 807055797 78035333 632418750 703269271 530842042 256825096 901809862 376639848 8111038 685945580 352859093 699977556 417943422 593381652 592584865 685622447 836924716 43614140 106357365 315179584 114683889 887070188 194848253 179602137 631355020 987688397 737347186 397884267 813177689 709817011 500634652 888492685 917336395 196240408 937591830 221801533 647648384 944031721 634242180 208995432 550273736 524743126 172280616 959550233 428739017 548601019 135776381 591303549 291138781 285906149 952799359 402338487 783558636 399106061 367439151 68819072 554153351 245934509 343423334 337754358 189720684 592054690 854010959 738446442 626309036 11308553 264991338 434451700 611739210 952136245 372458670 340845527 725572973 418363075 177005485 103724524 58854252 937101845 601351813 558490493 450510875 769196623 345395627 432402035 657004022 474734459 908466542 781956238 380559431 25365677 935782998 521932626 734684018 898885115 107850457 992035813 516541435 563939764 336550255 907434742 872419741 885350303 689777750 201282148 979412747 35910842 274966394 254826901 462324199 687129526 372974172 470259806 974257060 392735417 407158895 484816099 241680788 348669888 815896939 86367936 914674953 320178480 730508863 405605544 195539057 571236929 713692671 971500643 727713631 224203453 980786553 267161068 566154655 276380737 371999668 444264584 320617636 348670193 729179108 726966810 884678078 963573506 404253612 556087034 581252461 451274033 881337873 318210930 400781857 133926600 63577608 317130291 290824793 645074575 30075913 305749257 439767289 398882078 494099723 82983696 134887101 205773673 514118662 129297608 166581562 392632461 537498513 67849465 668513420 367123579 801722911 296020376 879863530 352034613 83042319 563307387 531521770 44146093 867691655 313188753 207722504 317354366 718365150 118827677 563749106 814514958 621741194 447294326 714279175 357558265 54647424 305922818 456133395 434751063 618344064 403581786 477487382 969736196 146095861 929558176 533004470 970376284 137248916 31534935 931437569 133374152 942018844 923773489 337072666 956838957 211264710 12233779 470494519 479844539 850780103 770950665 437681765 368459556 929402901 594736228 522211871 510020569 442706924 975950320 182041955 233310591 883264348 152733198 558680154 352917252 14571671 662437120 251316427 289428155 525667580 963237701 700052762 473181382 302868055 264565579 798166070 393263969 904337112 393842777 658959616 271632059 596608469 418290417 553960580 182734843 334073333 621534357 148552548 791858531 989180823 360661883 61325608 415480837 418731733 14153634 773926962 298229978 360215434 348379050 843754598 976850023 808916514 46069205 766323545 723923456 976730107 519468371 327571863 554686951 955635404 166834354 305394493 19354031 887968121 700481155 716153993 848494916 234293980 71697911 447870348 791626785 468939387 844742914 434260555 861852275 184851589 629052869 654208868 803014775 498645502 287383180 291367182 63231134 542131212 981998899 336136278 64237132 691078459 540578686 405414801 583036192 527468269 877711689 311780343 801226677 468478603 498067400 487700355 899903369 219622207 270934948 846000101 236778465 446332896 501867020 48584078 666012983 207986955 465173989 659999995 421485981 148709041 675195968 404980955 621371980 510661081 940669866 719938052 749341450 920154762 692136409 563896391 191601021 724231 611356372 596048636 574704353 260558166 60455428 574580536 116648505 242829317 69981929 492122973 70791111 439560161 846818275 245798755 731749291 119782455 321909975 231365855 249630520 335312457 468057472 49353622 187376990 50649252 898044517 745056231 496357170 707176005 559618081 93062720 789749179 191513530 328098225 49694762 404564141 515225261 646041047 994120854 464683768 887961754 185911393 786502560 436351478 921600148 848816312 790395235 70825885 346596769 449471719 880073650 871031275 716104643 49708355 963033985 545060007 619218725 417882066 866860652 339603858 990518297 391218474 29799599 620056278 142068914 643195681 489115833 48632093 552679696 931311183 6581118 713638078 902467775 167932475 144549853 273015380 287251804 908617110 488157549 679410273 630884968 915661622 391168877 753700510 265367455 343054498 816882013 498354518 739481470 885706627 381940770 63608735 732205705 891574155 52962051 774755386 742121973 33621747 507661307 614961884 521120219 180974864 424400460 285718562 278783201 473009426 350127561 523983669 719051519 691487674 834703900 291364707 180230718 181928177 658081237 237241560 915635060 415397843 163531332 333699000 324468805 79812807 938906126 253588878 429851717 835289616 789768913 919107421 199280675 713237769 24102586 344608996 777102873 145466497 341380392 36149547 423126405 68981153 705305277 893430161 18971629 715143046 222830817 343817389 756688800 621303730 26446532 787345497 298477240 989343068 415181065 680164471 243607466 46880009 866801847 329257566 772485904 270162245 98767204 840487837 869633553 909337868 68822923 532714008 593161305 807976870 98635855 808513247 737163186 848629421 712982098 947161636 911917832 681740884 940425284 158117378 499102417 497991629 602975703 804944469 199307009 189134532 257649093 897107773 171835449 775832582 887360093 80171390 741649116 660666294 242556577 73885904 716725394 15066966 469536788 603536587 794723437 717877348 327399220 625276295 689718102 372443461 902222627 166940287 216729415 713060788 903586088 288576353 974106612 157129096 970005020 144313981 705048639 141570782 976816678 943286787 69106909 799225086 950052996 876498005 671550881 691346303 240031722 402033429 799242379 52343285 826218810 583984719 495728832 835841359 358855610 303003146 675297570 835785419 287598929 419038537 897933135 877150239 592832574 921181756 846738104 478407402 167142327 952631577 641380487 974937227 944337907 857021986 145441442 932852557 538758223 295478970 966526692 939504912 654250765 973574672 143460903 608138786 65481895 615990257 957491772 876860335 24383540 4548108 706524888 2929096 241919538 950672754 367950858 399731466 513627734 817847362 433624594 784568237 670576276 215997789 535806977 894518806 575555280 282180634 889319752 826823217 601120924 220997916 35381521 66685058 775245812 405777503 58091999 731003035 368676844 713474821 139027335 799536198 579520794 391887071 45515361 194480025 571040947 635160031 591697690 120907412 18880406 176103561 458781368 286936004 228428737 553452685 548815027 329006127 405185611 992086778 32748357 464121203 420354495 729829590 403290882 674058956 931706135 237642936 537595557 730698217 424264933 91767986 39275488 24102999 318643692 62257342 372871623 659657141 736462987 16878465 216707118 640841539 732127145 973478802 701623617 985151795 587005755 875066433 453859917 879280802 625755571 232149369 568212576 889073120 506094496 468013194 995727742 230885542 919417678 364329060 680683416 449997752 786235608 19164558 456368833 198472180 145606190 628578684 889619578 724069963 40681132 178755905 61219225 442591217 614449215 880686458 473263117 467856109 892200820 563957160 333570012 273552628 585238883 938011218 972086168 50799456 242524348 119987929 874384573 205444641 821789794 180928268 472312603 405513483 339152235 197980783 149727393 644310169 268024470 986610052 141346279 693357193 10424063 753925223 535128137 105447438 257327991 487068422 857224073 712422917 138348143 535758163 443084476 330047846 690146221 513331348 851801355 553748006 682418458 244676389 402729311 399505839 246741209 678258441 835117230 680198388 75315108 885793080 5987690 673929671 171492196 994325768 105896336 760432161 164642812 319686896 1701935 570433095 987909252 7292301 200317883 641652125 954471477 15811019 765886639 408882205 56513682 69789521 693527462 223106120 425729468 456047113 605607696 479986688 170891222 990707697 513648389 650085701 631214702 329971016 228163048 797741729 634417068 159470082 131088872 382328548 577408414 870558613 963577770 347199509 158915165 203219778 919416393 115311510 918665771 666629518 396556116 40637902 230655962 574877530 797313288 846508031 496093883 258633680 760298441 324019556 447610978 977457419 644795997 522591062 909516966 462124130 135515494 45439517 505671527 835865496 799205873 623820019 634641106 726369937 346290006 652977525 145483397 64961736 129283605 979197391 446245503 741198245 902679602 872901579 538195013 479125352 818778960 74046202 214428266 965495358 8696669 558748067 179517518 962049663 968466957 644035948 22702237 983298097 333562187 305039858 473208061 71438635 522153939 741570193 727270993 202922123 48108406 325096405 108704933 142544414 928138004 408004788 924401194 668684606 178670478 748326489 123278072 601671270 903329181 481261851 65357792 994898868 287862448 776690595 901366337 630368279 435854067 11545496 658640376 177244240 398925388 23945781 677103783 984890588 405283445 842367767 485480016 74295726 702156438 51099900 334204008 200607516 417059587 735442472 360770906 705869275 300957956 849623637 383389628 279344026 490901091 85530192 803188759 328288285 144891457 666974574 882518973 588782721 7746990 886288191 423113334 365140288 434331359 141551011 734630451 699788456 900049302 848675807 319378140 208075841 911314391 297160910 863823409 196058028 286140021 36989334 951187154 820139937 134255241 855136282 939578968 916045965 742658201 292319278 110187632 615100523 496304276 549576263 547275008 109401874 103778789 144827865 607946753 47481128 756220390 493226049 5017750 927753270 972353315 848366381 179233259 635833824 927607489 66113702 564223941 721129230 812000255 524622921 167409561 719396413 293516814 174635865 265415281 346243220 898983191 710057179 932848957 812684680 20924437 15081822 805048725 125590455 608361857 692942652 512508140 795971804 168267115 205957674 872813563 383004050 12245672 612277623 810913565 220876757 379323547 690047426 176652157 100515985 957363813 408763261 303153124 226198001 366062211 66294360 846273149 444891750 314593895 201581737 58212122 468344918 227793381 138209510 932273180 657326945 401244870 966335294 188959465 759105218 664194472 698228529 530034667 163501721 399907822 122275661 375831637 311728464 347510363 200692534 294873384 945842902 71397228 862117402 112457075 126117794 236626883 635312921 265010906 741585299 455452758 746635993 875901025 694362096 715184744 879922144 833608520 448656425 496358323 110786864 346857669 434301662 492721555 763372186 455956394 223897519 371901144 157385734 483344388 734898200 514439235 98075585 420796968 455331384 545396889 985168822 135997319 601538651 173930717 812496383 533129000 734134196 663567600 630888300 471765549 691916586 925396259 234935268 835447965 266477838 528786063 380892860 588334649 660855481 769923162 779458460 454564239 3305192 967996644 687437196 131905447 566235071 311417396 957830792 565807949 973218979 767815092 459008007 376227613 886460337 45106328 915133657 493383558 366443880 182859792 428523217 726040308 826952881 107639746 796215167 825516984 332558424 130194356 560499798 823609942 775901050 80874642 636202288 141637094 472736424 16057127 82872185 512338394 433705966 131660433 34132950 291343348 623825578 268739751 809296073 624105652 262741330 591683037 213111161 96406171 542210692 176384954 94444042 236184666 33329903 33335023 412199508 378451037 385760592 138290750 756998502 175725694 559958452 316142753 784709522 492915150 65711522 709493589 79179083 128893765 943434768 731378764 70257086 685625968 897651907 584895890 485469839 630813484 436247827 198701061 519785471 773586416 213370134 581351374 892283340 205684197 98977496 360325638 719116721 848180289 950385489 101672901 571236899 239039014 327603861 391283779 932699981 21739002 115262596 226877274 63570319 840897625 653612389 665761139 912685552 547333680 137385241 42321910 101727074 343980056 858261947 575330420 655592425 748436513 970996253 82117045 307281460 891825659 143285443 290625071 646675825 319830142 28475041 454968488 4568127 532904589 658940877 537784646 568770693 13467025 555086484 50881113 700614838 575084299 525724733 137096697 716092672 504828520 225387668 441895422 785191653 12951940 527252343 314760323 351785180 123224851 932652532 167591839 819053620 359233701 669545907 917950676 498519762 20641799 162665873 713888724 43540074 24892720 348096611 310190336 742158456 900871146 393981236 530277908 972668596 403943278 130786386 283491746 386541521 971274705 195913937 113036282 107142762 536279641 62363776 505085882 656248060 358153173 621255225 825774981 713234675 656060184 409090792 689267665 281955281 251717848 955710124 562807589 794743581 58398743 143336740 898064300 346094269 597687082 825888884 314710364 856910865 327306102 531621656 738530504 517914186 902076628 437123085 408061427 331847958 398015609 61703629 867647532 961296554 526654883 662957962 551063242 691271358 458374868 223645942 516613471 638401693 158604905 809091002 653246469 83610173 303674605 255823862 671192081 913887995 853134689 753693455 122512086 697200515 909949890 92330688 41416395 946398998 484820003 330882898 171211229 308932293 913534389 783580593 202330630 336827613 774824577 103082450 801136875 494636568 638519740 332260649 829692831 872633048 920637852 845926584 823807986 274469226 116552247 301866304 109071160 514074065 425417937 476689409 427578515 189370698 492799023 428207360 335668241 478225930 511109302 412989179 155642111 566094888 518887640 111288509 626124833 952713153 990748758 757675172 333258964 458719714 395638412 505165424 697433487 858011197 17363904 927558120 3312351 947846833 71869640 926168236 269630796 864880751 848772386 101717069 40935561 556169435 123425144 484173875 19480115 162081814 215673645 305628409 528610715 626507464 994951179 989048589 324327616 581771602 506122601 574041339 299404593 268619722 642202066 731549013 435863384 583043086 31141830 233756159 755704496 340537967 989370115 322009593 521581501 195369774 727165702 914441487 376022744 652421082 463800456 384647169 984141813 569344860 953852377 904727016 779450741 286402943 486227646 668661253 105260017 594992013 213117657 194362948 752478701 151900217 169420973 811337043 774820183 563949806 68562784 614831690 774403201 625247828 133313300 113208877 201001273 203683152 408398265 129063044 846754822 965455404 316229180 436418558 350156435 874479403 686648674 893140544 852150575 225394747 369586051 664969509 505595099 325370644 192013246 288687504 269361893 839023590 359904633 586294886 281810591 743870828 252953614 814368148 353112276 986766492 165013197 537433265 515215472 404528457 492464253 25747511 647461677 140601645 490756376 529262651 775848312 980456753 374803215 953729756 49770586 325767336 569255295 985420882 655662898 151796626 966543954 79732967 274223130 367760749 256446776 791237451 529005391 682150627 856367186 758440731 702556154 988003623 930828751 194771855 646753703 363124105 47976034 568843950 648443871 454107624 814536066 154330490 544784636 888746867 413134660 307355488 782493284 360682111 625969206 238997719 829113450 292648698 423355389 530257018 115889916 299151585 490007030 351548494 877326742 829067305 61087290 311198325 175124375 42715721 433804363 671392758 886361898 446559701 557550582 921198789 848776287 264181175 685376472 656652030 911486332 76312130 651350245 9494798 611501556 977793392 4180187 592302213 213531750 239737443 979083405 148744732 891568853 544563969 291283366 472935241 84662008 180350735 650122337 81919829 230157892 648433571 404661946 353463210 317506905 927120905 441640572 49328921 816931204 233458635 515505508 159153134 5427734 927822790 764909372 171626998 166888913 461562126 628599230 667783139 507032903 918809231 44249804 721802669 106383558 652635008 812887984 126176734 645044810 392523840 305543533 862389433 457912920 741534311 269639906 457748281 986229169 455077404 450184636 609145523 335114798 896026294 776167469 916644775 989269752 826387399 839590568 93621357 67341022 85290794 886672657 287096780 906794837 777251712 849290216 337438141 30986489 871519982 143485305 536249053 588254778 195957308 305277008 590013310 496617092 801797455 749820244 135391667 751274540 865134964 615021475 107188117 994055401 990105410 227196445 477978782 293537329 502496925 330756424 440095077 316305020 889134621 321813408 46151255 990925924 351535278 332130797 713468615 607237730 37161574 330671563 630823878 375184191 801736923 3047237 570724112 553002822 225066182 740964890 327726919 552492816 518063346 880030383 229462810 802931709 615198590 386002337 982838434 536707542 688694221 729277808 665266168 619418547 516663805 425917526 546104572 18688703 808209643 806857363 906549347 277446391 633919644 73726915 730739848 907978223 83349801 465081147 318012635 57213459 321952038 40836915 362177261 930994447 608729733 839988211 366324513 168994192 188456462 581429465 380419136 725498433 436867425 186386349 100653297 712877019 639018229 309782802 292034244 730495824 245936103 85546351 509724050 785699278 346478674 676108125 130906611 569210495 644220578 725787980 142797467 377998653 219405940 303162788 950119107 853119961 337538568 256849904 259792668 904764233 798430169 626727486 965627074 681423265 89959723 351255767 490940257 938773790 752689696 563681769 635698733 231574659 800705271 260413071 824712733 84259137 482013727 423067685 91260262 144397568 550313970 576974236 804532543 894670886 672635555 822826941 849801990 842036909 300247125 292976334 549272316 905561764 129776412 204167642 789280594 567312058 700017525 845202178 442221629 260486776 203402916 409168111 290920163 320906315 27347773 496652716 259882329 782278642 17176271 13725879 774699528 521647931 787066118 61374945 180694204 369178041 568235887 667216505 596098017 658191217 130520834 846368091 69408952 91727416 957181556 342894909 855977883 91850058 267789369 23964919 181737665 740245299 615838921 520820719 792860968 150163283 411602861 216412529 58648211 79360579 463094909 375670969 485192039 10274537 706785292 700242788 683680124 767516536 147731727 791797970 243602611 666632810 28541232 210106723 354784682 594914702 931003954 253742482 645140659 350064879 378896463 709249458 806731837 93478297 752580957 302174433 676195533 378418978 90779166 885243842 573458587 707910923 624141295 4597557 358608708 18153102 140723168 333664706 619174672 98343022 103677743 209363356 137339578 570094668 863451705 62310990 906366705 563764780 735116268 211778335 702271188 435338099 378179706 598750333 421055274 95086440 935927757 834140239 671343343 48269423 610327076 901607592 631906600 659615682 449710481 232701482 554556187 718826202 686100446 591199039 808632010 806332644 352422970 900851105 968653778 27780551 692018883 12789804 520900240 574332974 145636642 323573783 347956546 615880390 8305537 694356525 741752323 531936762 557662252 148016246 104120132 293875842 154614808 848705311 935791112 444168042 15161214 403670143 451258563 240489052 921916217 328112813 747396470 165196648 435163004 138213452 374223514 482721774 964644655 827784291 530517151 869890898 497508385 439911537 413252176 241172917 681017481 861219916 149226691 169883038 401074488 982643561 593007870 207342476 905837729 813773944 909762137 191860855 667258376 341584077 137097235 867887974 843352958 433947888 753895025 17364964 688538854 837352708 774551678 79703955 980674500 908180780 365579142 668326342 355252618 460641491 396439808 125267843 846224558 38198509 780613878 970067219 452971837 889028065 486883530 80084909 449728283 543429098 326901903 77139452 146585429 939408450 497039151 792899845 320735444 290338182 401885691 652447592 781458956 135540887 275147187 52233676 549618715 345263877 261477264 305092837 34186365 873932530 946760013 227878888 587754256 477191908 208638701 306319794 167302220 694089497 271690685 457686655 491868499 52340378 640840523 898680639 872262006 645859092 36427505 528638858 363595853 675121013 506133910 454958491 618216777 47372626 983787026 859518487 89430542 994480151 722190321 505272347 825152700 770060695 683534168 946408066 501205651 477639994 774234770 956037726 607783728 46901671 374887612 489980811 90541995 990879043 819103650 148620340 980221559 471008435 390643873 116997184 189170678 666835188 818221942 360063037 591503998 312518159 384346683 378086923 582235935 305054528 652966316 350520925 812821438 432374777 868579448 744217187 521269873 267209782 786936640 362059646 838327564 859082534 12636375 747075907 333566516 176396270 661555198 988548837 347457255 353501218 98700139 243329808 982115566 327556153 539800532 935774090 907162033 581968040 672752324 196476839 885987311 881598169 78365566 544094736 296960211 613308062 223327432 123512145 812434647 678533589 511132224 147306520 128019654 783227794 524277028 652531719 375873579 518563750 151391140 716564909 932637587 244100260 194992670 645637085 345084148 36397126 914663414 40409933 565883603 435861960 696101557 564652512 735208635 525708514 588524963 115994799 743873494 405238532 86956352 522185944 87032120 231494444 719792331 25207708 124010523 596340538 975437726 116789801 27036770 671902412 724256694 730772655 730722349 578594956 279581815 660416247 81453810 424279674 559864966 439331656 104752657 653805633 644061694 86489252 738979919 891132009 355467480 323091710 155581038 530041989 706546068 84730359 484714873 939703494 436463297 165959970 316943436 749624825 587085291 427772883 54887975 279640588 930842640 953441321 222385725 420119064 707263687 588942824 48008949 788374019 460406275 612048832 462222237 49795794 508273426 653237390 924351971 914643854 46420230 234676038 362943508 861174285 947136922 411880771 297815325 110340624 685545929 278159028 306162572 346175531 49392456 804956456 876990861 317188301 398719073 487630974 646283820 477917988 504935612 184596424 3158638 986853297 157796338 720165414 393222619 889051161 618966087 776887948 302281832 628252770 351437353 987622342 840623855 367591875 910334505 207613747 210321008 233732613 247186232 966226840 280056892 5783215 840502464 886672876 405766167 576372133 189315674 135884636 761705127 658495282 858793369 139907805 442040841 834409813 528983373 303768289 309777006 797977100 534876022 646372128 749798324 244851164 990088486 221391626 167950315 850118229 916707547 222642342 702672335 810075169 426605280 749444490 862219789 660336493 910943233 808795780 2399696 381307422 595403779 804187534 955058941 991720543 42844047 760208585 753836320 254343211 289674152 152759611 685096984 345281114 768369508 59015943 330130489 52659270 520599992 577030425 453013251 189767377 279649147 560576800 545016838 647725743 247209634 149906651 667046220 36070037 78872978 448387952 780115585 922187663 665492459 506816584 747483748 460836659 349897052 922568422 507169787 518856297 491498085 295584991 759873075 686153862 183237866 976659605 51927573 653668240 905689820 502849693 528335404 90521900 54423332 866638444 882140176 859451808 911270716 240754861 170834889 328391593 907345978 67634396 606041606 364778933 481048552 385730083 364634463 314072052 584944522 954933142 928154567 451115407 900803501 110213562 711009432 838348748 611558989 651507074 574066145 835760782 880147811 901596773 569003998 430811670 953471366 155624731 297561076 114868225 409802091 29963060 622646975 956054772 30369356 201055195 769285773 489463139 728299412 303529977 156248124 512607361 198160214 543990015 341403951 714274556 969938858 459918976 896058758 602389569 190969058 80170999 733768470 409186114 479471206 82535915 102372688 596369566 267859044 997992688 971915931 950678162 757438112 990130777 960897535 497901090 870546497 965289668 405746121 504559191 234211460 795852270 805182407 666629943 627274271 318429380 847168643 679717705 881456041 178816019 638649929 577889471 943213155 290288541 788124544 290295369 684805895 840865905 164748175 560910200 987924045 719240976 22752187 714896512 184777679 520532924 881726489 517966286 242297989 232742799 196082344 850016272 453961386 294488644 294021691 136475730 311902372 650908527 232388450 625943695 185889783 748846271 366226020 856778951 677655868 918241508 531619738 703555226 186599143 59038429 393928578 464502808 407637982 281816253 594134778 866379696 730268511 36212282 993432594 496451248 434182721 65588548 522834796 274382585 997102882 102331057 446374559 213290941 357987728 576744353 925794799 132937321 534548059 435859557 253952863 100404491 303190806 86179912 160207290 747625876 971789180 707954047 213350754 406611512 438305225 965138668 245059226 797300160 287554341 95349104 331524422 741359903 966294454 912691899 797413397 654360565 648010886 389868587 705340951 527051821 549812468 843606378 150675495 638482585 672946677 318834159 797207076 276318554 947934976 732117734 676889456 253308543 537150563 986456566 468306524 637188132 527078465 33381103 929957864 750404568 181457409 218985744 171130531 393818863 289964767 970195773 320973230 507906268 864816040 686689053 63831455 355338843 540440260 866151076 459522363 390850074 88876579 775509843 374480986 652733503 61690987 759153139 99350252 563624250 468113644 126844388 462110853 959142886 3735591 918559885 32756840 339004266 326686109 426830903 854832588 534494034 728173806 622084363 739702732 800062116 922293014 719258253 132182394 856997032 947999477 318065210 845635742 903666142 269308898 849539366 63184589 358204728 30028617 505954415 30706687 930902982 406640720 105044114 250748883 10207488 840941914 668285433 383785696 651742181 50067173 211505620 936676144 975507822 450628200 356573417 202049047 111569626 288595091 864866472 247808694 383114213 992641791 919827189 935542626 213470414 446556264 821015287 943274458 645484485 112678502 273942610 588544290 63571971 888791977 961757091 278362594 666084970 583075652 981272380 340118892 266400495 982461175 513599481 750907334 134561278 645327909 721348976 401402957 189198148 152852918 435576916 90070463 61594817 732957501 650536786 489107295 147676248 162279096 132923038 317346423 571278975 33857930 366176143 717907298 997521725 443839632 166507922 898023961 390036776 820280990 55186691 919046410 570861392 410823942 621444907 17624838 213460222 751853483 723838954 137512112 861095783 387690488 263356519 481920143 463004446 802646299 866640340 559021181 527080203 721632657 390321764 307242192 462835382 289726685 499789077 308359449 835791928 724938285 619540710 349255031 282618900 909108184 19584832 376673123 768013372 634258599 561009437 80298402 573316979 309486318 200825081 796164872 137693966 798628346 116902735 484371137 815828792 144690558 889391890 605053720 932989494 573361689 920722614 530135716 567899405 227948610 832358201 785380981 313406547 850729187 707922699 408315941 885979578 696065549 520914661 836746787 723927046 145116767 255922414 445135685 43595237 283085297 935703873 39852898 404682774 927072499 144819148 559235235 349100781 308930782 698910463 109794944 582680083 824027787 362619460 403277026 50332434 472230236 660389117 517574924 268427784 711917178 133711007 472513828 957168525 648086068 622019201 923575513 453722387 905098637 565694237 146280493 863119705 16904093 351989512 668282623 22541199 16044572 549675347 233249956 829816579 620164830 659352897 546964191 405169315 791496850 37573974 964206850 366898913 26492503 525039318 449432791 539893041 327837910 125059516 138012442 2268970 245232504 100876263 967329084 907485421 604581904 997887191 849459370 975761547 709071778 608148771 201027565 503728112 783141929 533937897 809848000 404634024 774984282 418609168 405539223 246152961 742087163 737460241 372468529 902884031 393865985 37674935 531967719 459032232 233828903 698474941 703490992 80921053 310300830 101427673 589120047 804185284 119438704 821126484 202905673 582093060 681761494 990646560 152115059 349229477 221896108 526694864 860354585 410974744 972215007 586724376 36881144 215463591 839844180 512299359 228706585 544191163 118399665 242615710 289265384 53960141 98230244 635506553 29972950 396599520 212083365 371744848 314612162 556706459 116154435 706224513 984661235 421489814 800281348 219602343 372442843 636505970 604490075 792623832 968281553 842700038 163984901 366635337 39373141 992047009 296697183 976468091 738439741 387747745 398263249 899519668 166365868 201105494 816754449 385429162 153298975 799189219 729001374 420179417 87264634 536765224 144189298 363209600 238451546 48027284 170084836 137044088 220849404 729576622 653565816 298688572 329358428 723299263 299810142 980866916 702721758 750385232 725784584 619992815 195080702 918692210 11443873 94124971 170997261 920028750 452647335 714327948 540973688 796647712 100143610 442333294 638730422 755231535 286520716 882133389 859839664 912538250 830945654 596995413 378367083 774485012 202993216 332776685 488710500 615791247 914798539 454909460 976873971 693575758 739067358 675169881 916728186 794500087 879676045 362380073 787433864 652482373 553702502 308140181 52660885 901819373 480797079 870899339 817248610 52178352 19687192 892147515 887590903 9227030 329479733 887475755 381148380 20809849 950585375 567740178 131650804 414419161 63018039 639001633 689374352 54058983 704015161 696886908 291765141 811754285 859182978 316848231 379484228 63233059 939490283 541530695 435391381 535624481 361295565 554885709 939238828 527018031 899266553 463334835 391704694 57919717 537917591 600669256 947653148 258520315 779581034 366110973 728650399 875919771 984889977 705216352 479325244 662657015 887227928 863361183 592906190 462658474 830807759 958874130 960643333 562779592 907538647 97226095 522016703 557185195 480841239 653247846 423072201 691361363 152547383 846538442 795542374 977020001 212072210 201894791 830741617 540177295 740831068 861256243 199753963 134819112 977024449 328081298 739940447 426401757 370176080 285443636 646811270 679021295 605169587 348392801 556521471 317295968 285557406 832812647 235200908 818617456 293899219 122406918 785324028 522089011 772399182 869107575 437479455 304910326 666210085 720750128 668055572 499201534 933564679 688486909 823258715 634089005 581327671 785447654 475332806 818730571 268212685 89281565 171797697 846987281 289101666 558096757 54560171 51537551 930219203 38560958 20157860 110489430 908914731 937429570 726233645 826862898 766567842 164793845 62232786 203936615 985386242 659910219 167587609 375414170 283183291 713525752 569687013 483898164 791204455 303796886 370931575 23479361 249780509 363026514 237674521 284112258 770431182 652434853 618896761 862134630 6477931 487752201 909792123 629648238 358035527 530986206 444880930 975425400 393817768 404170769 944376307 930066627 853637116 983532529 913087411 402821123 530210269 604199505 115919746 776504335 557846184 344704640 269941460 981899414 371699109 997361686 225423146 948325179 911014586 388680861 880033645 219741837 184578092 82279124 855956233 246809487 756112463 552525032 364031336 449135173 904008470 981396972 349001352 356937695 838614049 931436723 64434236 535475258 582960330 435368628 692456265 42805225 492696335 59862151 680517920 620739428 428240847 743350092 533665022 927296250 822867466 582042300 709963108 634145763 308049906 787813279 380533867 830351605 301947533 446642110 552848491 340797105 880456609 134289862 179706755 563449238 949830548 682742202 367413769 435190935 866057057 736168130 81238802 120219770 238458362 574410245 711919715 75732222 952489764 276158204 403878093 70750769 911729004 300796146 374544209 431515641 346855369 876593442 912176042 269531360 201376675 938891406 58481882 370050306 879437621 109965552 110587841 282810924 788968387 845310550 16231482 368014336 442034430 768071285 221365354 581429179 655066213 63416942 288331016 852263690 48941070 585623752 469795828 247654058 758373227 463717248 113216732 644386300 507128981 154104102 565800854 260788904 587403139 798802426 222925642 207916233 745734355 411908261 237409617 786536068 725459440 708864537 579816702 406588757 173416947 296423332 962039239 86654432 982034063 440029499 324851803 514807319 120365766 668098407 433081317 37671537 707861402 445950106 769993663 259008527 455589042 686226850 370889717 255618306 153483446 531369509 527761459 596327381 174846230 72049469 943914003 929764830 458142000 801003465 708538843 666334828 792071472 834789280 857400385 442990603 553229571 825978461 449458618 579839619 536928415 986359921 74610106 317229735 553550666 880662524 142880451 872831884 295942399 163661195 653610460 159621325 345286475 850975199 797209672 29046056 688553559 833423643 622654069 534405687 648723536 234542745 223161143 529630816 980349215 150099804 225828086 928238744 97015171 890309968 878796624 917070378 346711381 961883965 636993997 875033759 532880341 656930242 871517015 497984902 570936345 650953718 490545270 790626443 86862558 307135979 170559255 477809192 779182717 637339987 14859074 332810656 128977714 366679088 471183082 275573871 562149698 690433819 346053570 13787779 43419646 331638630 426649951 812018580 169139695 377896696 17610922 970940412 82616090 869456718 844502192 389994791 784592090 877782901 224333040 410149861 109701638 476957723 689422305 439897716 660054503 465326601 394670190 488375731 432958452 833695477 839824494 416563067 548152639 29348009 286379582 730400145 296049554 91638684 159248392 266194587 675932921 325820074 11157805 984826249 289170628 375772201 880047241 254578520 119696508 811437675 277045838 729440341 564354816 681430752 569531248 880880148 543628019 709499514 679340440 705906161 272278376 983167182 936727687 910447402 636160872 688897173 780588008 923955808 405334482 198998881 965740293 680132245 818145609 857155760 92981703 836950994 672957911 883565909 376989195 644442665 799954383 538158150 533590867 335749805 252731147 484804277 910609 632394334 821596131 847212519 705339330 778322002 607785210 824133130 836696903 786199213 112010260 359841265 876276235 151946067 109009499 307506635 253815492 475120197 358326611 671883887 844234904 437306537 883715550 342998351 588451184 44040221 167248233 473374813 637222544 613355101 228546101 900794965 143633693 989304399 632607878 870304879 477165622 80982195 891370792 824489238 421110839 635595989 973441858 746240043 522451604 342930072 146487511 150044345 559874373 487875271 465143455 195727013 86959950 756234916 298592181 89302779 940630443 427672252 164725156 577850244 731458631 553968097 334119435 855865885 497982904 233599575 956810208 971368841 63900422 132455845 970482542 13379795 792443199 685357486 116066400 317379287 963390314 82426853 128759970 223649626 213284866 989058318 938860822 551834079 76256691 849580854 258569527 947487653 445863260 592835645 121800179 765459186 324659402 685149414 288120692 491065113 285690591 312092101 359148618 437662433 263059145 629848537 131550158 786423816 625925460 738071899 724414352 669060708 85779339 158690623 521204936 435658772 411605362 487016609 448955502 874143353 87335300 16227953 828869997 446548894 305769252 332213077 802131883 58041601 894896422 50711149 299371206 317606717 670509122 829800496 894588833 59634388 308589940 525321151 218499441 582737736 938031888 682184778 693215805 987101054 545735436 46183824 574338889 40892216 104516346 131438492 46622512 997913990 470202246 880632624 549784838 109681744 912065878 303135284 221219864 310841335 611192152 858591075 527158931 304809918 205666750 223347426 135697728 84623439 412977709 908307236 208769956 29961350 32161967 884464992 846345708 341731706 595268143 201455112 338784857 14140456 635703822 632523487 157333661 473795103 961828206 851487627 415139006 966513498 770375962 353789079 997837138 459513528 964560625 754192216 800940663 855269186 479512854 562789278 961142134 949903614 995305912 631851432 956488310 297808880 833304454 953314205 339890592 227619559 232134858 316612466 519932860 129580787 112751072 992307708 474990329 733510518 721475598 804021163 114003905 409748662 10968792 208545352 107008734 411594898 148826767 221239999 15887876 523009613 482454483 388693317 537766860 466552263 800533730 963806982 161625040 701223427 942076371 69703131 81895627 195647791 261867802 711057044 596981087 832478174 286242020 793596485 958059806 292528212 814277045 100064175 841250593 281332916 463578219 831155929 653167850 946675013 258573129 624743072 374155068 278328605 539569931 128042860 370319471 76636810 564506719 95994735 255494578 428300639 757920907 887320661 22711804 859188663 445716044 902869847 856901636 582990367 430121374 660416541 814640626 113151191 39825286 32289046 607078991 76430930 596102221 520926555 719139283 845769940 592314414 627187784 621836915 318112480 971454176 460316796 536704813 125855599 584533406 623678852 846053483 317614731 475146975 24728193 656717650 967795457 283231959 707022729 395136417 758898414 818687382 993441257 621549948 104573482 753630726 514471520 483814809 324939397 817144119 780820036 730648856 436309440 323287457 860909671 190543495 396989875 172530738 921531291 303812424 525706899 941356707 31164435 642411560 767088765 743342537 4579553 109797896 349037765 372858878 122357003 243161332 253973708 949938206 640237135 844956381 723645117 794141326 814946124 655597866 600975770 387396144 29836970 560475867 688944459 942909018 414031747 450201190 3117576 340676550 838215664 469783361 465016580 568546852 380145574 581666595 689564920 67553289 616292782 450509319 107226704 956781848 230699284 39658623 694677003 265598999 646652895 733931917 224848796 446757677 563735107 670225364 691630711 279784393 460870913 482198570 138450480 689847586 50799131 436643293 839209741 130396273 98591076 58589031 125538413 876558899 537508309 858129187 481516017 627872417 335032077 756279242 636057268 112332391 571355739 823041259 548617866 224240800 652814567 53970683 534803411 295846743 244713273 143601557 54206230 396585066 432729607 980596971 621959236 304138908 35825516 491124634 244559163 944849456 705674401 853043564 661980279 674520383 891876638 354283246 331866554 773333560 513814815 87563351 800056236 908947843 21658113 267413516 456265512 531773084 570225308 577783869 806707169 282419965 862442297 610861157 611523426 416221223 603103903 109023393 812381573 737984081 862803155 807734955 869431011 282991796 77413525 574180022 101366599 329391016 494462802 254943528 640727719 643474957 476657960 975314160 301583795 109532359 764342265 205173459 606451153 495593236 84690167 864043847 618352436 266782595 666083453 227614859 434460294 592176518 847379600 726726257 870542853 868899883 691819999 744602045 19641564 15521418 851915828 23615594 240684606 405855638 750991087 808744064 741632947 941555503 494998592 604719515 950658802 500592303 301219880 972424210 976610420 386498808 6712435 326272589 922627442 889488645 558771483 526531244 813257961 109708152 91900499 327972366 739550462 956328637 358139980 609307610 658695660 956292696 856680437 301823324 198996731 817818949 9810078 541678248 441014548 273268737 111803507 213237169 30661801 356832618 211978228 938208401 18586538 419258630 351736440 941280281 32652411 870161091 962032183 172801428 126657571 260633462 964188035 710223659 814565516 682298758 877625033 956085596 21545135 702837234 691497651 789811542 917133000 892789853 491519622 435814155 176463852 619944384 494438324 940587449 823777689 950881409 338875545 852387688 974401055 243793135 210218908 763837270 272697402 132878151 322810227 659905305 729922061 622587360 447529201 553836218 905374784 809243892 373458226 247781716 666000681 698619518 851715589 817225970 433429731 64614559 813510572 571523180 552106615 852749298 209673968 560858430 968132058 795297255 815096173 58711199 431575429 894094876 407584437 875703104 53403413 164752229 913292470 118050556 366390103 311221611 333393762 440565725 853254661 956488099 269641604 612063825 462476607 14652756 905590112 132345631 830654131 217439293 839424955 830627186 294313425 750020744 9574774 792257314 791274217 935900332 342623294 236792410 303964841 29708400 53574175 569543580 40374820 537724718 417501720 427515599 509803762 26706942 121627586 259272493 598095451 488209430 470772962 89338257 959760483 494802673 628762368 721999262 753962378 894569271 652463283 158879192 916794239 385004144 760090713 260542908 35436252 518043680 896816900 346993976 491411528 257888880 602821296 844107127 870467234 541459659 701866119 833204336 78032886 22082693 293714227 55602285 322531427 544336528 38781163 746789973 364300521 29101794 667166715 163714460 448710651 445967038 405063865 197520884 274165385 626802970 362235970 115336091 142900412 907213402 779225983 792341211 888859206 935445141 732355739 160960587 204992238 569386575 793273506 643789107 26135466 533198283 269991137 652375948 532886774 107642180 946309049 569504671 805807486 951665925 329241603 38940129 396460603 986872435 917725101 102863050 936555205 336754553 134832740 211045231 833429113 89567943 429160820 528305302 54662225 639375371 996817159 868755260 503289702 618002658 578697115 492141038 687714284 793311075 239681079 800830115 329877678 495747400 24840561 349463816 488098198 608030043 936096235 677439740 941335574 555365190 401228109 806342456 47806091 643737644 57461028 588174918 872474417 407445728 356600285 381281355 131605080 664856413 82496923 512018660 120023801 225041135 879243284 153242654 693927648 763478168 732191604 414303948 497191303 854735451 621197630 959755916 568761915 941655720 117332749 776180959 747616403 856544611 287500730 933571245 114621720 52776828 691184038 756950942 641607295 114620394 308500530 900567758 191902427 116235087 956946421 821657736 293606417 761178530 843921361 285893335 737611368 828027681 580103563 834948765 684368474 383202220 709235239 362605218 270636133 152973193 927918492 413096754 792973888 930802407 954290216 943471827 726623502 433462997 84001198 143067782 393329323 509612867 466985664 36547772 892423940 514971258 548967449 721036772 403355785 346829136 468334432 373307644 927515306 303344957 251979116 944614906 805671550 410826025 704169876 325125741 42085601 159622424 383805437 900093826 645982802 334439184 51007589 648785232 193314834 754948039 362285032 255171330 653729838 6146581 542492402 776213238 892773603 753497529 418531651 768052989 769007687 130157093 419687744 314300779 245912628 252335700 773874784 84125244 260110166 972805340 732521866 154906169 69284099 116574921 740234724 211657074 863758309 778688989 977419568 700548593 73881683 246164007 9361468 577784586 958431612 251728527 452082319 458700309 878265924 75615215 847027266 238985275 441589486 731080389 392362778 733740178 878070616 619270302 581769034 68456681 308660940 732564242 189252475 588001547 446798676 422476183 469645634 64609403 253868667 726915044 331501321 616757551 969205268 717494 909243335 245730780 481414009 227444739 357690180 763231599 591303078 22126026 31780976 541640393 391671961 604134686 544597698 36883149 767835874 401563541 943627709 279768671 113534886 771513537 973084685 969118550 327746022 802913542 873102101 322603807 1682701 975089698 331439328 827374965 785532181 536837572 19197753 366503873 505948398 751549066 947504232 267992880 604063087 536597847 807915563 627758579 219302347 950697932 422697149 784504054 271606789 815085649 533712634 823469819 436716381 111168241 482497783 749647212 313291076 354286552 261640402 905733959 718308246 18296492 538677620 604342540 562782518 893825320 608322165 766147732 831101820 464414681 246161146 72305394 418161505 173788738 376569103 202961138 457893627 84043182 156985983 384831822 389701866 934058711 885468192 945867456 374910153 938216078 65248351 117112261 826171101 721068184 897315827 955052055 69597744 178272704 70013741 313877105 738440830 276319926 909649341 938149585 99628050 901447569 714955444 822560423 917333518 253042954 920443662 49135063 655419071 202274672 452405845 97696104 408241867 696552732 675370386 155798862 129754626 857049091 154732626 403267692 73801028 912242438 935696771 740770097 311664192 625265242 147435423 106004900 839681326 311411161 775285518 567461537 214555817 540836433 91707701 773175672 560045481 962988841 106929157 402839291 459164149 604756629 843927560 583884539 380757497 704405923 756651449 941933672 382071494 208380841 725966600 867030707 280796677 21534381 383947059 686269693 315407654 915654653 359871674 175647823 548938811 297442297 53065625 658008660 905971522 619530729 837412992 676334220 71750902 159684711 556140122 795198019 553454954 310798316 177456387 560642460 543291511 459788296 985815808 967508055 447550265 286045526 364046303 630106289 91201285 861070194 588176552 884012593 13035601 59768214 464309516 104572740 245079469 587266526 227146359 878490711 113250024 776153821 467392022 443233303 327697405 618501069 554670477 811684146 896680278 721022993 211575733 140474157 329673503 156707474 996813013 885100141 682868031 653447878 398770705 610063274 936524467 756240087 702210428 973615473 902234149 369805028 78332357 403444713 830613318 468213049 397633827 297226630 276763567 762163708 553112731 275216512 708793639 256038357 236690736 231462777 768282041 183963968 103805161 313000755 24141663 711781300 827062851 179528306 804378102 478736261 122629501 932215132 686646513 910543029 814318629 689573017 505484649 339373372 159230864 458855822 178851405 856716162 392015062 554981206 275961525 941762514 927495215 936282747 975697154 80120425 305803150 448865811 996285297 143366316 56650083 152444474 332442904 155347422 966701477 9576720 81874111 209021766 680502166 414267034 831610633 991542295 225389492 841493998 368685378 240934512 52934775 312555219 436594723 654069693 212165048 741816376 737485278 165491055 74947754 495403146 478991983 679281649 530053170 213675143 620917356 166399216 346788705 379979027 188734372 760581242 328095073 513486241 234318073 134021303 205824228 270046975 545002811 891936790 299068299 26048879 343901993 466279000 318554113 305563175 50948270 319843882 971548306 33778161 538710569 128569589 145926105 196847510 696894212 128396452 167676566 549012927 86759961 284551948 607601760 978504370 832638891 846714082 250599140 633393244 644511620 586327831 322331915 855925415 451041152 954863952 673336313 680503585 190392576 560791284 165494852 614013538 478043670 330187756 545813623 30635027 149819285 428238230 415241535 77256909 93323640 549427179 988801547 837987766 260152159 179845887 184708683 186639981 820540195 259618297 390018217 932329110 161495055 920227318 190006390 387433926 778127816 891913288 928468918 214540155 461454205 472268715 204073269 61362312 89932254 502195359 263741472 70710875 14344072 411117851 573555896 787290338 711992548 770418373 800885731 695099878 193016250 348133897 61022733 199875037 324368122 365873611 91480926 9617125 692077935 178427572 444666440 510206061 407067925 269203010 167512584 812637255 796154677 305994456 654087662 964217982 404864671 22666365 441677835 635896095 954593823 989585753 257460427 433684372 879314294 326645812 924270298 414845835 520664300 638591687 344909023 507585492 145124870 555227830 635257875 969626682 216296741 957603607 103088115 519314588 228795830 980467661 823290711 223673245 736898402 865401307 154504933 851660861 518868682 795451156 901425162 128605712 524710581 353073132 110638827 613445498 497678567 570470641 430851275 592825732 689375722 6715755 527635902 237535683 813043906 706005111 191250993 917841860 599574128 311889634 61028877 346230493 294438915 578534344 602948651 109564085 549727991 307629331 482021250 306316142 582842955 452723561 994903419 468838375 305096550 481083138 712507385 651902669 91586613 744719072 664978201 463627404 234734392 356481350 715818331 620676072 700149997 563304607 812218294 163137736 242498470 118977352 799022569 8405984 872246054 912632107 801344109 412354598 857180311 726879306 593513562 176461970 519579777 588639795 740192764 461857695 697622318 602941485 894771096 468290532 715597559 42681705 121298972 746606901 285327848 375278089 47744865 354545708 945970261 201761118 108190719 197871370 985173116 42423383 953581887 158272502 899075765 403846033 142599294 453532405 630572495 297956873 442575225 935741247 852824791 218086740 601586440 997244693 212814664 984687809 322905734 647143148 248115042 685712282 337880071 727118680 546788346 481795988 407386590 69642611 710560657 108922132 796558693 359320756 901482233 229523467 879113709 787758626 427485685 795508424 270937001 445809915 717985057 944123500 802302732 291585275 912184953 805000214 460824203 77009283 82974981 738823581 720320492 665445575 449973646 548026066 494626137 341080824 289545054 747273277 377085457 371827961 57439184 993536244 748140660 270602033 315613861 25388578 189554356 210103677 443589647 99046814 146931381 406879411 10236399 111305694 317232584 533466997 604050649 706577188 156276644 988536631 870042241 793319832 602795286 150763268 918576790 663284338 927260143 265050612 963722288 804008103 120326281 914478228 18362704 273418915 783907571 294194445 150480735 463156198 105104954 805561300 648469625 585070333 660389727 634940507 875939148 779929189 198265543 847948567 564448041 975713171 658605521 543962377 836647420 563772737 83368940 889041941 398474643 864823011 302869925 22274438 605411099 551615521 262516860 96537033 98622936 608434912 602155394 964968826 309025972 432543016 475698260 505203932 831874059 896328242 687581829 517321880 595309299 942924654 872708369 503984852 75216479 83108660 710271381 713934629 632625642 99014811 564466114 432383352 668375956 911939237 302948899 206686936 921692938 107864797 106971786 816656084 279274738 761601157 376302126 532129225 129016393 357924636 454330189 274586647 199496545 656917321 464787220 639479603 228355647 345859851 535933600 426390336 385767985 596674355 509775801 489019434 462705699 689716177 64671807 817815221 424460920 354369420 982552120 948661347 476740584 43933422 916457062 723021815 525715368 890821468 45303495 97568736 251513904 561179198 316289916 311741518 229960831 276574921 343338508 78902743 781883481 350364717 589547953 967905417 95748912 14584079 492991454 252806533 568505013 945323931 705587347 629023540 42430088 207258373 629971993 644361979 533833245 483115034 184777008 63313175 224993598 899929834 233405508 215622396 920754762 66638847 72448281 764929039 306029188 859997017 472411646 666913823 645532131 69031239 860538374 330588240 385739362 878171056 761616385 33817584 769978195 53432590 444659912 694444311 486722978 875864193 577262926 588709778 24740889 256842391 477701370 472318084 691365269 573037965 704217545 747411637 971036300 635812999 289549521 635465511 713466302 261084181 237055072 682357453 509826878 649975460 521700922 383998325 78171645 244281320 339399542 275227177 788535694 108195403 76755655 291296748 800672307 183947916 81518505 530949243 740285128 793180531 194583403 195630465 863178199 788976480 892086916 572195887 697194733 477018886 11106131 27543207 807150740 870040067 739293185 900305683 539369054 853089600 69847416 66364469 994500200 148140454 292670047 265949225 16737376 606021043 847198851 195019738 161128263 302448991 480644539 861157891 269267206 651525032 925577952 784986867 389571213 31608077 569440925 931098639 321309344 929033089 234575201 270272964 801174066 728923300 428944844 345329277 454360832 570926123 979207737 366981003 52353251 913631333 24303282 107095459 550368560 877352738 634391887 931554980 774968738 819195731 410656526 533287970 250086685 639162074 23403701 457585520 509515671 674719300 609023214 632273064 454930268 120600122 222277733 336590190 428446704 54294578 577023774 237043016 364756270 727802842 607735767 465343340 117562063 403943245 934649622 595526221 954509381 563596171 375277009 831296848 281502831 253355577 612859062 80962220 802453859 376298613 183123431 13253584 115226863 225980731 364411655 186311723 979200303 205717504 723332888 782660350 655762713 246215918 342954559 457932171 575016003 444964085 924938884 957620781 821619914 251458774 698606874 318499988 269473596 607338153 491054946 273989414 741999779 449212693 891001568 535069097 802030683 882499237 643954312 975528365 474650364 856890674 171569777 731759556 553077369 786788314 958906442 416174863 343926901 224863323 311542904 546374383 725980049 389886511 927154007 707906114 938007299 412862039 284323914 7196069 845704478 851687236 723635161 719991304 418157121 142070255 357032858 23534515 417398973 319031984 402774890 497153178 824481981 150798096 426096526 112282298 212273156 70845212 934790764 7832546 288314620 511028020 63879141 144331634 559959315 982681130 185305388 542210605 784663646 685535994 864817942 76058774 312754754 46203142 384248956 990530655 288584988 378478050 9180694 45417107 39679786 480372685 616648454 596202787 658449157 287569238 736233027 16363220 63360305 793833187 344621888 757906554 526291994 374826639 385333872 676230171 446582560 393220523 58119572 411291218 942363069 192185787 386594817 494377380 888584542 162451080 143008907 716428032 951647491 265864403 301472835 793487295 278680471 634603719 218871394 204900216 953151752 340712957 706431960 490398137 208044584 327093445 468629712 640899742 712076219 668511049 392104927 827699338 517892683 20883494 679375709 902599331 711403151 557869526 863172626 37823782 36935802 400653332 41101244 317121945 995037595 691526738 528281649 225527875 736641992 317086082 332605578 907877060 542285279 560811820 830154178 78190386 334683941 834718821 232932253 863039241 904170024 222771802 125329899 689438278 991547892 331503562 444522375 85139946 767589986 486802178 404733552 565875768 987331482 952791841 121932817 982521036 387427147 558617474 142064666 515451092 596909400 869153795 943344462 256291205 940642187 499983191 46672928 724099768 166150177 107262015 232301465 461729166 276312328 866635668 303807239 110063435 660956599 29984509 756123005 17869684 746425809 905349152 474120733 561910005 197546025 948803434 305798588 180311359 993727227 786046342 341717263 382522887 87586940 304884172 229478473 288799308 841542406 895930927 266553628 44701196 819965201 709832984 708757711 844983340 504455941 274800890 359844931 913873963 746143507 627612307 810025607 759216043 51647046 163709635 608426455 744028629 510427841 952944351 466654995 67505358 190968884 353268908 95610707 869496580 728182801 559596437 118491895 998079118 268583262 698020723 349484490 637563014 473281221 558105164 314360687 279706466 227978699 130329515 214366410 273224799 184482650 204781587 84226163 518712198 316055838 712527856 943182345 374745903 298789219 332974898 96634197 237315018 41022796 991432229 842154470 19104482 27264071 198944591 712523659 63218776 86314771 187840332 915418607 492618242 415819796 705685594 906881154 385672016 246296207 352006864 431015085 494654363 814463095 104161694 30529095 16109048 551578735 29373619 565531053 300583216 902005796 972623527 930029970 226259534 372774114 111707027 753444561 587174438 881911289 94091710 413821976 927207687 58754165 444393090 282516174 718198798 261193993 763017352 631071475 130861972 715356382 779862252 832000665 55504496 917671283 740578764 39041107 579508046 638969096 345973306 530732557 376659546 290683890 822609588 83527854 795262760 337291935 686241152 946856442 198703321 640295619 263501497 756941033 689970868 450690512 782002340 631929668 480715875 763048438 977383140 117392660 487610411 308834672 191452818 328601062 805418778 172202497 568864712 541305268 73704301 377998632 925740691 199649807 896586581 419802519 573771451 58830746 130723227 322242098 639519779 445009293 59377803 143616325 803670256 941093988 413827426 318589419 88900169 890565503 879475666 696316442 274993184 406432595 421122669 436476028 566155661 206122928 946104867 444963656 283824641 977250709 934842297 459591077 733360023 919846524 134691477 510482830 944899399 920867520 685929910 891298660 191073814 240903852 78684633 654181046 522548686 640029493 639480466 809326127 153704646 507562545 857310041 214490580 412104218 741353482 58577412 66195026 583837303 181330453 431211264 246869564 842592142 918133889 487005159 985432049 736642733 627579059 905341458 157061032 193890768 236506093 501134926 965782481 14504175 221258574 637569811 611111857 638002470 31205838 111678636 992931574 282813440 182767100 238896031 606416249 461072595 730473564 483102517 613867803 254397262 831952048 41727997 970740317 910754273 773163741 494010518 946662444 176560758 457351537 840807832 518243376 194829537 641072204 15919165 383708483 815328453 35235785 920665472 444016180 265592087 47237140 591722599 984808185 612826702 412821153 234264726 520303686 191975119 468538123 724850017 119630403 528787034 124967340 534965078 351111890 442789393 47043335 242258313 232036636 872778620 627596253 340477654 627533376 990002172 121959325 852425909 368617165 978174127 7070727 150800040 463277187 268602216 772571037 664323663 124438059 155357562 763911359 505166112 26452927 974084352 293183747 558098969 196009 936415402 90139772 941742776 456186091 623254701 227574528 220639012 397009089 985394486 355902636 996196987 867276625 27147159 347833103 395695974 690000092 899010069 510897227 47834097 224093490 366677980 378528655 396205414 72903922 738694335 739461778 838713293 523853967 260080604 480163337 316872109 928542563 854282121 597218235 445245434 549733317 170998961 527639831 329942228 301157410 41062291 413742023 988426963 779404800 8475256 184219633 579480801 267959296 507617179 266856569 144015593 800005206 800715283 768405056 671027615 455402903 816765727 856516930 610318182 981069448 942079239 647262445 667057245 661418603 223559501 302035489 207856655 895503829 495374840 475907900 834134628 310273647 135815197 361910871 370433048 213494734 260981391 284502025 816649203 374708474 90666414 65973590 403117868 143122031 402410361 922638707 133482725 317543649 609115290 204783283 830102451 251187967 859191655 219571379 818429205 389571411 701039843 772616192 39621286 458776605 440304145 62581659 849349844 288508179 979639335 931063268 61586425 273757156 566121464 244934728 922999179 425209765 717277213 108159287 131727717 832355157 160859949 459327849 24937835 110977579 201978303 619075070 75464753 68190893 242682754 470487158 139329981 63757294 14100306 597106169 892458992 379508201 942632568 919347845 840461507 476127230 22793575 274397082 952398986 86249919 902288333 743375324 517391206 996639991 419007978 581102409 956963430 114913171 865697645 443464819 859272518 951200344 772470046 117067343 314622669 229590575 138928205 268100175 918735644 935543354 806090975 11583401 132789054 621570842 59616233 525838478 716247192 439717750 169524151 377279281 419783663 972090516 726626875 604777882 352273373 463770575 431431336 749622083 415094474 986080774 659713387 703610244 469046925 76030482 294221449 599189604 582963365 484387867 903437597 436689546 332132559 913336326 425695115 172621151 514820900 690672395 519287520 884568035 864310817 714121358 119169424 178875272 102112635 605377300 665958343 961091063 377613667 988385005 484491942 7074052 410885602 308212800 961314168 498642724 356104893 167899425 550302753 608166678 949943299 358339641 229600732 194591828 18635748 185247115 555852257 938105447 963521539 441295183 432650005 68311991 483487640 580197469 633881945 801557100 502039666 406072053 423781368 775847024 429281525 718895160 978142132 392524162 411732641 741327392 813342229 996266533 84642452 531527009 984446648 399657742 599199505 618377370 917249081 460456640 375208800 930393300 552441236 218030460 814857499 843335526 535752782 429106417 945146250 304382525 631664324 600461629 17386636 461152960 131369312 777520557 757018468 60160142 527166878 465972060 355582142 635475430 287641681 732186794 885456508 770568046 445358543 7355379 146280596 962114181 547476134 931850284 563663272 840276501 947203010 852178038 132207140 866112408 553794471 431854756 391741284 335584438 800598302 102464478 243613891 740889405 455288641 11420864 835542943 553136160 123740319 642056281 756366658 912905241 469254520 887739405 920712962 552806883 982680217 709954935 288523679 951523369 808555084 573941712 104122238 656653964 832101604 455597705 566163921 319898740 278678999 168320786 702146841 153751981 234167571 345728043 633455 15227367 305703727 633643802 853876409 974058806 276146558 414890130 189879938 118784587 970945235 335886901 263427944 523053887 489958248 546654696 16464020 916012706 913270538 339504161 68723003 552830420 979279034 509044313 460285489 521949481 566980829 410348163 40154268 851618398 108109561 349668846 482767603 415383267 5505664 40932646 926166447 506639819 852433535 246346226 315622782 726249320 654099028 995898321 132640139 753077122 487072222 59039880 931214501 4495416 176078345 911871663 118473570 317401946 829977293 430066564 126678663 56317159 141933007 725944047 152098567 400152788 333238542 14273216 802347036 316864021 849948368 250000446 918617324 591303625 880464979 865151086 799047641 228481015 12338239 965196309 333943704 263895737 485418083 902108982 136037812 675835685 137585449 358413172 662864422 933046571 344058508 749463436 390653182 99116022 437303891 468597259 21872764 451135011 505739777 32449344 925518821 339381440 816456570 694651106 699142972 336978116 260926896 747976560 392273554 669568007 484988227 122544832 486622693 897200497 880983258 476587982 800001868 694710263 824957366 468532412 325055843 690709149 540840416 39476507 351492239 992654838 759847718 310370715 347978013 533209065 436920518 975672346 499625474 986735713 691765233 656408033 840547045 418138194 944978928 1517150 921084665 181847369 762617634 265011618 968688936 859636463 281540996 503194191 419581423 131925325 931939879 685724354 244907906 27974786 950783070 820846388 478459063 285655960 167218246 581424495 498744812 518826270 690026238 519640370 808659255 86374492 108038414 31151522 190815087 745340887 1869864 726562921 462014124 874530888 707046403 457468044 673056295 109237647 388540222 400021622 297798280 288473377 550058154 618872181 930056460 440673739 525816412 487559911 979239569 969935693 77607073 554236028 485459673 779285333 165900410 40852234 660453921 751821970 960026665 96698617 283183992 423088749 400995909 25329404 510431819 755130321 435967881 131993071 546607596 519440302 104006015 111593294 68076213 805425671 40437421 392671281 943022407 700107458 733837964 15665028 476725857 220464760 35668335 971411220 478345436 416724194 554527396 532158468 232786712 704375423 384919324 438607484 600347871 406166717 322541306 305988801 220334967 121159028 94684149 481662404 420981539 794669653 557336899 16394896 594220754 313454950 114762178 483282684 614434970 885313813 695513971 20851094 209474080 655438531 360827160 762656959 877247003 671426265 162442957 844931362 136067034 925453165 648887923 109322433 630736213 653782212 632701831 773615275 868370089 314903163 207789374 354780717 432356540 67552661 189831006 979153682 431983329 168572031 717375335 698269021 647763271 320306986 394198804 44769871 156189708 563540448 99738024 503803402 781039675 715834988 480736479 266528090 609749853 894121153 112550616 471833982 480311402 8136919 687936235 228288223 368015490 55876890 663761592 774382348 953745468 246218370 660596313 343089800 72942013 935647036 665626985 370508842 493543003 771841364 248800814 737027978 70094743 285344960 464455572 235839556 798983670 635672717 236428371 670178168 306425457 211432838 832951078 223535837 72298225 38766504 834082517 671172747 638322100 18909293 503311977 612364782 779248669 292223085 321387249 157717769 47730105 170350005 595638164 582055107 845692033 424772324 777186628 792040052 199765193 637913913 716378532 800507721 899882011 108721063 803573381 476511245 461498476 375369289 377742445 689790264 374815316 842383637 861141210 418755762 3372844 368419467 383315644 382550944 875250726 690824856 315793913 958416217 390648075 381025499 119004839 601549654 593658701 484705429 429084382 419978716 251428006 760200662 681636782 820275146 440103989 654087516 662089275 639473585 111166164 890359633 753384053 738884998 842664973 782373510 951153096 868905592 857577699 856053070 700893981 521808945 685927593 90235063 686321906 276283911 99466078 958755254 842057818 350229240 281794436 745147142 708974861 697160358 636246992 437880916 861408165 379249261 257359257 940996251 254118332 387093537 265724114 488471583 591836176 112544307 298330178 359375850 77828616 883439585 861626278 509887480 593443034 373893946 762937990 299190989 341732127 819515127 774194924 870265650 202014780 61709585 73383439 584417599 41707179 96372158 650823559 705681881 317731338 430532980 564693500 81748950 571878797 228981294 513128857 268178369 31683132 376353867 959522119 281590166 227590855 847953621 7593466 205697865 441753097 588317131 824736120 503122700 707257670 417569428 121455247 268470098 991513595 298753570 496818737 383029835 282640264 565185515 252328687 625414985 609427245 790085436 684558669 707098799 470498228 355172431 452852137 394440485 62008033 95143858 884465895 788445748 516938969 65043701 432053867 267674531 468474216 325007279 225491262 385602143 425310940 712783028 809927021 98107779 728329510 127273331 940974653 539457425 461588878 237464375 937985412 844248512 472879158 226585205 783956012 459853362 392874736 131539446 597656273 314676940 884031812 44243410 779257327 537419353 619899907 64786446 421205491 712637150 944489428 33457108 26606631 235706844 560379455 242848081 52115397 811362453 402621664 858646860 210770961 850900170 219541318 380984095 841876831 3319741 995696864 614169483 545431247 29913754 439123239 903085785 467440210 506812540 291050461 91621764 826984993 496371260 108513313 839856088 524888646 42287630 815669667 355197503 919028364 209532688 346478132 718066400 985814746 306952437 554894023 929296563 442346778 810575470 714856034 325481380 195232142 656193691 402632329 690089118 300341484 536391589 904474333 973323706 15583431 515304857 913022871 370411790 690395965 783930308 103784638 793983536 995162720 356429358 865157165 14180797 548170212 320932248 751853763 801499282 198606823 953012275 421187000 82352644 378088423 376619302 139106699 657183838 389880768 876523120 257117325 650172315 330967678 177396564 57992559 503991338 845087497 869493040 31482915 436736992 312461340 52801184 668644353 618262776 910011169 807068066 815271557 41314646 689416898 625965364 418575350 669197973 509072077 372986439 494830887 4070006 419088929 182188393 336345612 504815998 751181715 46224172 687147097 787985013 502172451 44515323 19759162 820937710 646310012 760180322 908108855 659070711 120093130 725321444 969746073 426153681 643411697 257729551 49287456 932818019 217069389 239726306 948741101 566293588 109842265 894910241 211969947 907912830 988062871 115985006 848578894 842138832 401265875 142353195 177277489 18838215 826697653 767444474 537575216 9840258 407091317 342266401 313454227 303814607 285970556 478172570 824826479 280512939 546789775 520521879 694069080 234433743 233521954 290785721 934253440 874050471 150804117 512467094 776265558 694333865 606668244 231477759 860236041 926304599 93510986 603322813 758371608 328151096 808282612 33343646 309050482 362805283 281565399 523976071 725182173 934617882 173005024 863029334 628831146 735675993 463118113 431634375 30079357 50210936 199275391 39895550 488775591 311548223 398025590 930871405 607561543 976798793 641218972 971399910 264233304 54777269 242315613 668799925 729687537 722812685 838115549 352130368 148411917 677315760 738756592 521681898 471148389 972994359 634489882 477280272 905184015 937595379 792756139 921756390 742758042 690789130 774351802 263411457 370851352 433609442 147688992 168816667 358932112 671060821 98055897 884286339 107154849 9163496 244105478 635382631 692800202 746128225 643176094 885494406 199092544 262712183 838794082 377046566 716546962 523730558 638937510 224003456 554943935 677638196 849426763 686357828 698466882 205173814 949908771 75686288 915116696 885707775 794338688 74217277 970770231 100017644 11057382 634744116 510031582 554865748 625053053 80021700 876086039 293861639 682112526 891039748 879076341 239632058 828998552 541145920 642632167 338019389 439445371 525739739 560319230 685517863 45333375 562350866 711038105 239521313 697852152 91560963 211962901 204452963 970228484 278753524 319795110 669153531 86023192 871551564 76637902 136765029 25395641 733039467 972123053 372799400 211080615 994525932 482992233 672519510 495095626 811459259 384606663 447474155 744737091 835845414 867928937 810991967 614760588 171459827 924588279 642253526 179706986 88922362 48457133 138591082 154404935 899295944 498367753 541892816 35512810 498845934 228727164 929835254 727695239 466542770 455019428 69995840 400781734 850457418 611999115 72442841 996929611 211503586 969140822 881062968 387053712 708437767 469484183 376548321 974023879 21189407 687935915 433356945 176208195 681708431 469642405 8133383 95559382 978510298 65935358 260690078 931961728 426646775 575222853 237165413 467327686 497395631 356606544 654505836 935654816 942317559 358492271 820623646 414097804 892339573 72534791 887203833 907507545 983400019 513265162 86331399 899756808 149000581 181157899 507867013 98727693 240743478 355133150 977684785 597995695 616239444 520429747 888744847 826582253 920450473 814498232 74485830 449534888 313147591 718499870 389004121 670804922 22932321 86234806 964631877 353349129 425068992 133495792 322047571 43959905 656931244 522349052 842129036 615502876 582472459 212739126 789422327 160991854 293254711 829400658 149595357 159531823 71991962 254121346 133207402 983163670 289537394 176757835 402732979 6042940 159755220 92127156 81197363 622032753 776872829 869794808 474902142 747496457 638262779 344788679 583337503 583994660 950676002 197343785 524598170 965226429 196740744 608539699 72493142 186465389 40707844 789325582 921864903 465596583 722925207 72765117 8793905 701358234 168803971 763927909 393695673 752373391 118472168 333664253 480378147 42897724 684060515 606514124 75278980 895015478 116617071 600060832 500790571 146963516 752741279 390731505 247965824 660832870 208250093 645754671 912518215 933935298 82025438 425219420 472451593 44082707 39821726 142760330 173313791 254039125 645427539 611305358 469742965 332135850 752301047 934887936 479442638 446813940 548081860 162518596 268873213 7934886 88085022 14025342 646374156 873617360 748184413 271202178 830814997 752520159 282162093 687065865 858194898 635563117 306135361 283914216 439449532 723080147 810958306 711489243 411715783 233634358 801346750 594956711 682427337 558877545 74255865 604267744 195998242 748359175 471523962 809582443 790558399 832415135 33768159 53770807 259072138 144360544 740902896 455392468 185269194 903462895 906430614 844034294 192695192 282695288 223028287 743092461 857191184 232817165 832570358 38180609 422720445 410575871 744551567 348596739 116008899 283923528 650073479 659973610 677985662 556643420 897006062 472715515 790274439 292923225 931102043 116042471 40521652 836245285 178843129 148568583 36301532 932578423 926856505 393783919 323306937 796188421 349081438 656778693 727629324 705057916 790673477 405689618 10450478 901551639 328605143 347629626 70430830 199688726 85654268 602114766 431950546 182472870 344370470 643053250 639001015 904998926 495695379 679497879 491522034 446712574 860435218 43886284 582015644 25775811 4523800 830627404 135775649 700537824 219518083 390327915 809476531 122428817 494417602 559101885 778352415 354349538 857437738 699172806 295403537 252787516 80069272 169146416 428074950 5148497 399867000 71778126 603625769 272530415 945946814 245264657 48673339 6519115 92130801 63295861 105433093 1478303 46618479 720186625 362895506 801485031 691332500 420403066 383285903 838897116 483819365 403099188 463290385 930178086 281964636 928883471 625198272 162085536 617963354 437892584 934976685 201938385 343117530 782664410 499660999 912318263 764206677 889344960 620884107 307246814 911413246 944117798 15152289 76851253 48383830 425379005 894697103 646577127 937545301 161276841 436831385 781850073 315884279 548990425 649965551 659147852 401788508 349208197 833548982 254282080 614897168 682522876 792739945 867571913 819885972 820218728 484850523 170859683 102874705 249680491 219714283 183309222 350756114 417471050 773671111 555763348 865957687 812167519 787935918 168052158 10990303 471808507 29179698 451004734 626474257 530237182 249965772 86243103 946201960 911483066 539831837 617972772 942944173 938218750 678297973 889912081 242413952 436722201 346809717 738947075 978546659 950523090 265427219 562606953 354032498 478746661 657342626 105498287 431043341 110457992 216565290 198916544 669265897 337388682 816840416 305329034 60013881 483566647 475096926 5187048 57583615 497666897 281789469 379473864 939931454 567561749 445909183 455934597 416951668 5972266 130793706 341210682 327881733 620370541 821647414 48095706 292324564 410093645 521359107 564108701 225739373 223178216 105633267 140182834 397514494 689859087 904293913 6034349 683396736 19064252 643690920 410062475 124799810 502387029 89356907 457910476 549958492 274549312 148971847 723397013 963079719 941268914 828441580 100242641 202893867 288583025 582670834 116984894 783373371 137124324 828574230 157303105 595301748 145340976 52592497 964250947 623826830 960741340 167695856 635513474 793571703 290279501 722701522 297263198 212182486 130892905 945574014 565674362 984572674 888930341 567573725 947504027 351681431 903431370 877354794 753890730 314371035 636816959 268687563 938526573 771232062 541313668 911651550 764696029 657219473 403544040 706197456 233476178 241145094 227628373 358862005 603878739 469891233 747828274 264426785 792326959 913452161 644845988 277707363 515914259 133187370 346941822 418104709 76608611 891460745 325034350 138185495 784184260 568122350 969257697 656739008 785750064 627364618 965853637 236472680 212003703 600662030 640480678 388857869 625120336 803085828 510739112 678865875 369345850 500512796 99783875 244708411 882287347 490376054 651695971 468603215 116594301 628123231 404813058 68160123 566628185 188147929 612281363 229351779 872022590 858733513 173418845 767343562 330106031 374754147 147166211 790349350 821870284 356202289 47181830 709556766 243946821 386089650 997863427 763526736 371940732 824283682 249344326 222493722 652497488 956112089 501939814 486900550 464362417 624020658 401780334 485484315 82767387 670462683 7560751 869840116 717562813 749951804 820630802 967585796 506782189 235315335 453038833 301636697 931948021 336121022 159680278 882698486 47976111 958547287 975836220 163844382 467208219 979070468 944904066 832249903 960397708 642429796 912158017 338855932 444466654 651033286 606013965 542569057 592318948 10331926 583051396 254654825 330669264 86631289 117045857 336658095 400361106 920346062 992093180 26709308 465296355 907439712 234511720 522227143 646701628 238292322 644389867 637562466 4325415 958414362 603150936 389367573 267931657 664024335 407807200 62880601 416303385 984202903 6438887 568976568 207379523 200990395 58619394 705395419 418837160 948625232 681885141 680136034 541185865 815193703 425328392 933728724 96528038 996845780 500507153 223540519 172787781 105849444 742524473 323097530 936482320 377477879 98297657 878235249 587407778 472772790 386448547 2284127 484245137 333419354 125689355 277990229 145843023 636850860 81991571 961728220 967384403 983478833 826396648 573861575 834087097 842461976 414924400 949675365 399680969 174124332 796373368 197889312 234205296 112850596 584058246 459112036 944784808 852200830 365613631 503637448 26220379 722267859 264536660 419328640 883529435 116063717 597032310 818242929 480428245 405645849 432482485 375956608 922437329 370900786 593601780 353819537 915261444 239263802 529658175 228628210 971369017 30573757 737059978 941405623 186575271 436535396 570834641 10332293 75437518 752935778 480378184 36956412 940680050 760676893 597591176 789172411 459150346 124942853 378623231 479079301 481236036 854144600 892596109 218635776 643638176 557882977 426098252 366249239 823333724 493160627 261860135 939320603 626766124 714921850 651379761 781670105 786505988 58214506 454905874 309460470 835074632 526308746 37144504 136640440 481826050 655357720 167478395 726475411 674321707 378363588 914075776 279043955 622122511 385229588 387697482 847599201 246025887 891282027 713159968 216173429 887201559 868975686 42178604 351403223 979914254 470010667 223450224 730511981 946538561 262207254 194943023 641501614 501105349 557403933 141079178 877782727 276161710 419174283 268286512 35528061 194824977 135865582 785238125 335139054 367350369 656594213 555268559 207131137 936608030 603566441 757580929 158982419 680478177 799801260 533876568 81028457 931645193 725598370 210764158 747711387 533990233 768525627 423050281 31863310 585437367 313921364 295681163 415971724 53502123 645944765 198840917 731029839 791578214 204517381 23910704 361212513 955598692 905483003 867440958 28392061 601233629 848131277 816514018 155524080 453587133 129936968 982426912 102044246 415185433 905271707 968182739 214019356 442754727 716697734 219331569 364320592 124465124 228375139 410518051 700957760 963327927 264399509 40802853 492304240 492945493 914232624 851974970 158811532 990097666 358911921 79175397 682546033 405314713 487044220 954625500 712621222 250516542 511160918 412512439 300293883 893053364 851324502 247982830 895453045 411481946 823822329 350392278 588575596 314150768 801619318 74843612 444568109 158743973 822944462 33886269 215205001 679558050 605441941 253138049 298516994 77523718 90971245 921591039 290126205 969041220 414484219 300472018 897818997 413743169 384174720 389028204 977370200 328359958 387125687 443873212 107993094 92742181 523706802 424781030 863276750 971750466 142791400 135264809 188410575 248241543 761208469 301480693 779090756 782905009 465414192 293455737 184965297 541838715 687519924 59246705 614717219 339128241 484442194 504532834 591760876 83031000 510878383 529792481 206733194 519635895 988548866 594903642 517860401 180997159 528506390 47907460 502229561 143391678 593115236 974177159 865796528 931209776 46686246 754562841 975883003 741606976 342760768 804351319 830524390 317660509 661716142 666244142 731015587 610229702 168606380 916997048 452586324 657733145 96277972 610483212 476114339 100030159 160100424 792523408 441958922 361908113 273452317 188062163 612095372 944305706 718573443 387181081 916359485 674200355 771738507 10911343 499191259 209944505 396748231 132396501 906855598 73541088 143517163 620415097 644075103 44376348 952292556 286545028 219677476 694397101 211416447 919821361 663361730 155054563 485566134 76184957 632565205 762590737 860397624 921474214 506718608 898826231 849984278 9403635 726022685 611178943 739146762 826442847 307825284 973684789 709204565 827497429 764544069 207007190 739346801 138934450 526291347 965985087 141718435 812223970 173541150 102618906 706270930 797112001 244850272 618982602 356107281 70802707 289245516 615456903 423939472 954461862 765523461 880312984 546053018 169658032 706828000 41655389 579451469 948365653 943567563 259308274 468240432 860674908 695705286 947492035 371924894 854323537 624759312 776573702 944339441 734078997 99468879 806895711 227663547 662045447 345947 983115948 574274842 648999734 714061850 842756822 835366441 351803568 254303535 672552729 160350181 45722940 447298675 693100629 355104994 300014749 297153276 469183941 531704256 200131750 904350578 117059541 117924880 546972535 870606527 517947382 578158442 751560468 740472303 897554389 422300917 119848566 191948493 922904837 551890499 258256388 398259562 910474462 987947627 58594374 111535553 671844550 916549351 848107071 21973702 304640004 758220101 510442633 309514248 515045227 591290272 276957888 138965671 736433732 887030712 576936939 458835687 723403287 823341711 484022994 90645939 346043790 905662794 191207231 628237772 192616383 174540108 755642786 464358141 125315069 126664235 974862821 166384138 665807133 475473743 542719057 830646897 708279911 639114745 874892331 555318042 466571258 291260288 690520400 890974379 506405136 950763546 958534757 96789711 54613931 729760317 883280138 857117383 111580696 562297459 156709499 341304011 947694022 835615407 342646688 858234034 25372158 91921372 220858906 29428215 761098459 255830536 388299900 279561732 926206881 528384795 200433287 309232355 314755803 102191798 552992957 966915270 857825124 742775781 784703767 807255132 292953914 510177761 618925768 971217869 309599549 79800743 37955060 169223758 452650329 260393997 366927589 456500871 255942631 889536373 267903264 685079162 16866688 302799394 314853422 891169422 536266669 530834582 799032552 52009781 621960323 691781580 118238561 903064611 2368532 91103851 495693920 105643131 521172524 77757094 418412296 255654817 951457908 115236301 484559188 92547480 405061650 596044014 145749721 402479502 733747109 795131969 27430853 704443516 546747095 20327417 307279277 41592164 981309042 976999922 626725346 215381897 616080602 789567335 912647473 212268997 950672082 984922404 475656738 104889839 575380360 458942239 888986469 93811731 472516524 199235370 388085979 735880302 724451785 81782786 574189461 511263384 146343251 780346498 678133114 982819548 161469028 525774009 23650684 756057241 149189278 56551706 662015498 191651823 106365722 833544062 414832380 799254526 377488353 924921116 966584398 666297766 578753677 557686095 122430694 565173452 795140357 703499064 770411537 290082255 825283464 857567542 935726365 490490045 645012434 897740511 607736920 545963164 758491455 317895678 717878957 538382860 123129975 635784196 408761132 747786076 63476861 665401513 708039821 814040030 142290182 114462127 932859595 21315040 563976610 782927803 528820482 9093409 195008626 779952191 230865211 670429629 263690508 494334091 948907994 449818909 30838740 275800228 189044361 434721652 496704684 518907183 931063539 881206205 85994436 250511922 324939759 356062262 508447973 788191575 72639618 515833678 966526712 596284881 907588765 346426125 235716364 465074123 617970934 262245344 874798194 778639403 121518596 554673229 422265952 182549439 160542752 493299238 493639979 879024952 590087155 707400277 189204629 601280315 273290891 769593410 974508273 387312232 726302604 529319039 697628639 570108443 621042947 629055575 168208945 509657684 442307066 919731022 340397379 425275096 523715335 178173084 822950021 938843040 432430670 321694332 227454300 341857130 404654047 395570839 439865779 199644141 423406105 190848223 233289389 188593153 160683510 975180059 28624232 866983743 927502753 596635398 766059912 562514330 859903233 655750449 338552955 706087201 50724056 536540077 743906917 411021453 797396736 256216819 230035177 457583401 169814294 736668966 854169027 942829245 911480603 649983771 147677958 632760831 601992718 954182480 655898641 524505482 39410569 918978523 155600466 677183231 461662384 459629253 900761278 376834194 692878811 267898180 972238203 466207687 176243425 525072910 174639807 322212663 649391637 707288584 513208685 564423561 682986004 380703267 554701732 59706608 943033231 660532506 864605346 42044213 987326065 286656669 983145505 210626851 570235366 482475571 986629162 226303062 189239874 489091874 420839183 885562997 681341406 60808347 852185270 160654321 568318681 442550861 952202049 245768481 235953026 300411476 746221557 547945418 254067000 323987825 908287773 493094434 73149951 428949145 803372618 21600431 288118741 395239973 144781606 314871845 483601797 909915479 862295263 92951612 666494917 435807142 119271570 540221478 201154028 52226551 773960167 75921050 92370295 47343672 689791769 208219530 291599469 753233073 319534619 477138215 299567237 370639113 946470007 832775814 716008566 962048401 447785742 315044054 868706453 688601964 427201567 773030855 849667595 192272922 25668531 722812888 102876533 878112693 133490356 104795898 563578353 153153014 790689659 787466234 781190175 674128046 986499106 436494815 878054415 140930605 187264647 431584258 758498006 30860070 975784804 343805909 838159047 794030052 180285637 783024780 612004810 665439579 527888993 228648293 736686560 592363148 280588711 775833352 745208112 700735727 616960818 141964886 403289426 867819623 427589507 468743184 638916742 252709702 772816670 311431368 650836161 429139494 973964830 154967379 285504389 174894375 106663199 789492412 864942720 15251091 703111285 660978337 865910742 829084261 664679353 189659684 901746018 884013082 388491439 910570043 608982515 580649181 334248166 36482633 866316755 601265457 673073469 442163587 192251415 340341257 230661887 495911195 802301927 664046321 550880067 706735133 773818766 642411509 449541488 846727086 954834478 202166222 154821883 623687469 510509624 972832057 329717990 825304334 109618752 473850778 782788126 179516387 605346158 150047031 152577233 953665623 250399100 32905886 158118401 764261039 743379615 117112102 690623020 97246274 216204573 985745423 452198592 749759742 508380968 835628305 198801625 701355091 840566483 949185951 632733843 848610957 228856949 3762687 803873972 255292468 536421976 851348169 940590379 872717585 355840609 158957885 276377540 679881886 612336853 993555984 202013064 835877562 886708720 979446614 473329162 879911481 174437061 289701116 950085858 697995614 437667040 756127496 283904153 997741773 714544394 494275539 988246643 430491286 614632351 87500860 133735507 694226140 868612976 805596860 831276210 608071981 271796043 490110461 425793248 65670512 255322133 40376235 710214194 162228785 459759319 248980452 465891260 839965895 911781276 647734518 924558070 789560925 299357387 798109843 551607265 609641243 822498491 51403598 258683295 613332257 793990159 805059181 569371651 851867798 418346102 684931444 332674674 875256044 899322386 207330954 123014350 684085198 688128204 425553050 530697038 919860295 108556012 99468270 968666854 201215130 124162460 368462756 939669230 346112169 157157178 572749278 794738688 504077607 549051050 447737415 19100563 908685163 374882728 399429959 145547837 180942143 966179196 405089198 551499032 103275861 221579507 817764701 413593457 379534523 597946180 516408183 89138212 441429168 354011254 364195299 208063388 245977874 566149127 237172118 779168228 993680156 655848797 37377525 958922895 664295197 976674157 959771643 905913448 735011335 746804188 144746526 766650586 556778285 834594698 911016217 972527225 652485344 385719722 92829212 833062554 121600126 282923951 169930566 911403033 288017476 407269201 818095326 450101038 287582789 377011125 951520675 943998195 181504769 83648555 315757647 467132694 119358360 876480296 438169931 76113268 986390811 211987655 641168226 2772938 341254673 864662495 359058955 545774744 380184663 708395965 349097788 371334596 104318713 491835107 212466988 637231998 417767321 84667075 985179482 342358038 562866981 331208770 331817033 530549708 834895859 400512085 417264109 359696132 485802325 538969765 362162034 522258823 71066979 863704994 668932007 391358469 770042771 207658400 535566187 110810957 480721552 789656741 155698007 566912637 745005094 628474869 600870367 916399541 486336977 523030860 59660887 1200414 311372534 846620971 473872689 798468285 954753717 101211567 359186968 400646601 193867622 348228123 131150267 562376508 459419516 651463922 980229121 104814284 245246933 452529942 673350723 127775956 4322171 964219321 725917646 587978250 258607166 570023867 537258270 367484316 815101286 603373710 283893259 841133193 60759991 334168350 774639982 80353801 772994270 194379551 515102574 435716622 436544771 157244460 73832684 584292547 830892745 512437012 12219830 695988031 791612771 229630566 864572239 688652864 607660716 377976808 269412854 921725904 920917381 339023333 600318930 776444667 714117352 45956984 917583761 981730666 189915847 493644690 516319815 101787950 964090026 654113079 140232745 209442842 640025498 476580766 722159388 495916137 258537993 207975555 468255140 27271096 376294399 423064669 920201825 921679413 702700819 228342393 211331654 934484881 435434383 612141355 270191184 355040345 532363300 868623172 611145710 171805990 320561574 175166303 624412727 256248118 500083711 467425895 626593757 840832926 768473013 87979230 306899971 4557393 255118450 133276345 55780675 410567467 771486012 441823373 990328528 133930254 46748101 863704350 389886713 936165442 158356161 282454549 574727464 15332245 188838290 401715393 962627651 19222000 931021273 137530305 950905299 645352200 883211115 926528604 249937220 13101621 708394093 172235781 29960547 86807949 531122142 110018352 580961073 242276358 136973364 556210805 749838640 280914795 717992102 882804806 57540994 634647664 558368793 706607352 380937771 97052360 655755415 870073265 211294533 939909290 154933707 393229836 190812087 519685163 624927126 754005149 368649532 847182551 141864943 902063960 132934932 26433336 876212017 316993275 155762587 507382341 315321278 171527015 996553176 606557175 374809173 584464172 646859298 904641050 533943023 704102239 898935106 43776391 716857747 439033843 35770049 326267543 801328208 293076771 1271705 757904788 894808544 255714501 301756845 296663207 87988497 496340294 668323309 19618730 297672788 290424473 465749661 299014526 736335350 523082859 975755602 727290259 995787046 574542741 847945848 262760150 932191756 824928030 719491273 755915605 292275779 368039118 650953903 31629630 298269040 380068257 878537040 818749462 473256614 54803945 23952861 443076447 634663566 794507032 932795862 494957058 991799135 886788636 169414617 43252229 440684598 132519647 362777831 987909086 376722040 78476154 602298358 314962951 110997635 66811348 783209761 781705989 796229385 3219409 787638293 377095511 779222418 696269932 127649286 329338510 871528799 130774805 977013587 852397193 259796605 766189272 902664867 268980310 580264467 748152268 222589046 14158980 21207089 778869256 302617039 654450816 751025787 678958099 78934325 125205170 383285232 202876423 888892721 199051071 292319432 703893945 620818275 444142107 661483601 122161086 920648470 556035570 794011137 500637346 889603134 796375646 329579350 638426301 549580845 921812535 731484905 451802629 903717256 841204161 299391654 218151607 732949248 180321099 845695653 289147150 338918210 400287945 997224580 316559877 137007332 375613891 160087604 939789365 84317993 809396893 76265846 493529167 102378596 210896802 985533708 888084268 556483661 60871167 739349340 21728293 699586016 474729338 177009437 663369846 132643922 612418282 131134971 866977513 441279873 877392502 229414900 365184986 445721992 704628290 503763813 90834269 968958169 401030136 310405938 172509740 407095140 702634750 392777712 102061606 570776036 495295015 509734835 869713665 289816504 895178555 900581000 6157835 686891134 830200961 591880257 699776801 68687564 385668045 942288777 450660270 858088897 161756679 174414090 615898491 209444916 271185015 446350815 50703792 957646230 694807436 298292324 427872871 471135226 266175986 230517741 287663798 678396473 129773572 695498750 762868450 345314029 649966123 925701575 722097093 389781222 133510311 288679659 114408537 928483469 27315032 266015335 871779039 185479438 178140186 710841380 716734520 781537461 99527239 754650077 666900024 902952773 900437533 655044881 346967278 128559753 933646161 261491838 997206149 538108599 269256904 287637286 815210443 348814654 960355922 485854631 741087447 84046935 337221299 750821257 886938551 340495787 814417792 558795522 746181891 702721829 82747315 859697789 963665544 154929849 365694613 869250849 142795486 132291132 21018811 385847861 858652424 622599468 626940937 879314902 925191941 299298834 685380959 898174158 663801970 114163845 667907611 413806141 352840231 313339524 277847159 709562824 944046803 932785519 723830672 252514732 42494699 117415009 139817075 168289152 663314093 353121884 691180887 983219304 250427060 862878458 373771112 961351345 404141592 296926376 398663349 535404521 415570708 78894935 672747558 626245838 271495615 935991414 722514864 985044111 348857828 887532816 968840252 402392895 361901669 789166336 395091413 749777853 24977071 201413017 121361584 369629011 421310302 448752246 811713647 828227880 302729884 432629709 541162653 154785183 504485424 148206561 708156926 599618769 469658805 703843921 591201221 787773580 935885559 830626476 820443662 254844166 354116193 706038601 600925790 698030488 274945716 924000853 584089965 51263835 491116557 857246107 344059538 936296269 674096531 172660112 984800943 604909669 226352842 42539088 364251569 905719659 82384371 967437298 739165757 942672116 184272738 863705903 706177142 812975140 771405888 175315539 961992920 516305062 961228223 747609587 978222173 314428018 327256142 547784526 850903022 838140270 861293549 614996219 369046997 682919916 59971892 55985644 353350701 654433320 796601665 149013483 731133521 447844107 225070103 513787115 716596721 745687833 942446177 435835944 735865517 25545571 425801654 854614240 217336072 300634712 210061021 342642457 531825493 590155935 132531389 399259960 182171741 273724296 556203797 500878591 63593829 144686185 11989741 997602814 151634820 298525728 845258284 13707212 260459469 712072434 400712317 26055603 469355161 441331469 892996491 245188250 723446874 51805818 306041131 162740236 568513331 496222315 451672065 447641774 526320484 751290111 955743731 972306884 73608729 135724950 566579381 319430640 370874673 369888796 950614474 350808598 779086589 253179984 972436165 228285403 103828344 311079546 991195345 768802790 310701636 422483077 690797239 702415392 188000516 65009089 762263772 514845604 579285681 503793834 240879968 984015924 916332608 678890820 301642031 111554546 642343313 514014454 738419574 28720701 145427024 103939606 394665034 705512640 196155333 625061316 604505560 829251723 675591056 766428487 229889375 641826925 433200680 693774981 73600511 621638994 832532337 493464365 493944145 477682210 22539078 470563896 372298402 351427781 972919467 80794725 891235424 751576456 392288865 499001974 776973412 538816262 937468673 591501109 651373504 904590713 439325028 352111307 321962518 936997438 59519755 540674966 875506486 185059710 497877467 375459254 633444666 505739807 700819724 972573198 454432589 726622779 952865264 647336966 912576188 932734105 184013150 282371695 91050746 551506154 799989177 632676222 574898236 284662638 802820898 987576605 475776361 840073333 45313225 969752234 544125934 655491557 728623528 673967534 179443616 750494148 952985146 780192348 630762350 369960860 268645658 544062980 755485668 302778886 840577370 463124395 89146242 900810793 720086131 650033879 921169964 511918383 178476148 549961102 547337565 607614862 724148439 748717895 399948534 623814970 817410576 965766982 330126635 310433907 827904775 904492419 487636485 689446114 514734757 313925926 818704014 994661948 95913700 615135237 198480282 238506745 126645931 213173187 852136460 835759586 409539099 317675920 227025613 710356246 201062527 697351327 223331529 967416294 240580109 656919809 332150882 184011020 544981016 690277964 355971978 865063777 208700426 521464441 654582529 207890000 693812638 897668458 22170331 569414977 647520987 57542018 562541808 389120720 183062293 173930501 817770874 355990847 1419372 920968969 682806726 13108044 392227658 719915435 680819851 117295272 912716002 878011660 193149180 251895090 170222793 187585592 283440696 978048418 987936317 25065800 38417863 540029113 823100884 924768298 22306994 195378049 107197226 785584637 192767973 870252707 612286298 517132135 315646533 925767578 604024930 743724944 500348154 691008857 327952464 583470483 128172313 259889548 518755118 262513582 48229870 523686626 911095684 266807820 545447274 796644639 583046412 561963897 696098914 20716332 688096295 565429018 846406573 988117778 581208186 217237221 476205942 722630333 181495818 350286145 223581964 184204377 170126976 753829762 895978083 197483438 164487312 314668433 859601268 267418089 409287153 857027496 193049650 897712770 125400196 575004292 100918127 599505729 470294612 3485367 776435210 563993778 189736453 658526953 388567745 95957730 20341176 848466846 19996141 243160816 185822718 767270861 797810133 52103154 829703847 668002443 991380290 914502699 74566437 69130465 960939931 428854819 586319475 501840474 491384753 738416411 19575807 557282860 749155344 148060279 449361281 251265953 209505163 710387719 987752202 883803161 47071159 209963077 808938694 263675488 637889730 542834274 580995206 600806819 894830771 911031254 817542798 748415556 222492710 853310597 114338815 484335220 372018744 638526970 828239474 995453286 131277354 797388423 152814472 292240743 766283562 294449455 404470481 580552268 936631834 49604409 131105078 519244688 779961255 638316398 767738796 815362193 602177473 904030155 678013596 887371443 643896468 917648489 895828158 270725944 383434826 278718897 844452908 237718401 790549339 90617985 847168227 679596338 380564 385703602 666405665 423313918 282814894 709393292 563165759 511067241 625485308 990532871 331269089 492988195 399762909 778190118 442017640 862834777 48981279 821348404 265542674 620423644 902152940 408561297 958994442 244091750 792680367 995988361 36472338 532320269 951032908 625706756 823066872 861518994 649584499 136606864 655464803 920488404 40757349 475812780 413743318 14542852 854872883 97799190 173442691 790545522 660690543 233377385 725865795 534207108 509902733 672855567 393306847 81745247 928190790 617191050 878147421 990116445 182373276 372060943 759069658 836984205 376340687 659957560 685018261 713927499 109235156 876617003 541503485 785375532 309203577 157083379 758743245 883248535 148295923 369215531 184186082 237376781 369496909 260772551 709649833 707599220 641600999 845826043 124226237 458613946 297534316 696361819 552963291 411451660 473224539 131647592 865296212 741401451 798436310 965650461 879459305 424725981 199795909 921292195 911924869 347987329 137600785 81739712 227089884 437507449 322881893 873626472 22568819 568167430 345048446 402951612 779651686 865685955 818311581 990742423 586660026 943960805 572242543 628988588 134304159 410266117 700450442 949571130 961329040 997827355 327747621 828583619 517266448 402103050 764958600 857187276 877671385 783661369 175128933 178539578 80421817 3497719 744714819 614228765 323285831 683550299 11586557 419671206 320464211 690256300 693489342 345628917 200838002 219943737 454789923 15906386 209001398 251732155 594494916 942397315 304754657 600913786 257805640 988603876 603626217 235243024 500639091 183017873 955943904 392039322 796395480 521286888 887182640 954985175 880118799 645354226 172328749 786451620 528101285 366914276 477059236 974593668 810296551 801928969 255187083 988471568 328109255 690705928 863382956 568314745 223800989 923734558 643202529 199363922 123473891 363909063 745874469 883615826 749340213 391170609 851290571 197499048 22609044 358923661 731553151 172865074 367240127 294923972 752487418 605767263 503915189 113908638 648294299 637205593 920266914 584711399 302972356 599467201 805119560 719706693 610875915 762375160 516478999 234347941 117484257 27594001 15030738 994598224 480036273 938169308 340471844 331993389 40643451 512904028 872092563 22493176 625271920 72698364 428400006 681641391 261496839 902045838 252275962 481619877 443021090 384212447 93580824 42825229 642033100 491177413 582903131 520155295 272003608 55374603 742095091 875458280 243128306 611175157 986302024 608191306 349679181 334718916 486571058 47177061 937654958 778949401 926252165 613401405 859063385 262038594 498550204 341790829 522185996 98225181 583952410 776301228 741531181 739992468 849898858 215137578 761254076 712028657 246829573 478798118 241430410 801111179 397963151 792229616 698059544 652843599 474033169 989398660 289418756 865843825 184142566 200067851 547490881 146572436 663570793 231690570 519095349 88451338 507048849 791048456 174384728 50166452 679283819 432274312 947203204 944597443 599979852 36681405 952924732 8555264 995696040 266571652 725494224 632761284 655251349 225705666 118698335 305086937 879218660 602250182 528917941 992410548 744385434 824052578 849476916 203947084 310386149 881198204 855826003 676599342 419254827 929171895 233998331 892104185 167954148 178315308 926046997 124357382 927009227 970823727 285023448 589219308 411844640 187123965 813156559 886381547 975317737 857208947 701708223 732714930 352145966 580949444 601237140 147057609 465626147 530330819 734516639 756823092 756779602 203624418 462245235 383700869 763491121 400665763 342201194 253791401 994278682 267768566 30351426 52194206 158326450 111787522 372408470 676732047 9114381 80780957 575563287 110124700 79801681 131404673 643615435 71042807 922325519 490386082 492210619 587278098 767126866 812440071 923923335 929465196 664363207 445594599 774770162 685811927 547065016 455999920 577969037 824619983 122948237 698330077 88357315 183054254 582041828 64145383 35334907 53481260 60045808 804556710 920028173 495389756 496932654 267512834 972611036 182836254 698724799 127761307 198735155 190763474 310728873 799808610 753653118 324210594 802417968 499089149 803669949 483212680 181694159 573190589 58864221 249566865 676584959 602165863 16549069 695117352 8870564 946790014 267501747 196436650 208284074 41983041 425903906 749275176 149109903 40051605 763810911 681613124 877396478 873015703 317284245 183879870 857690213 634006532 764792990 382222967 444962522 53033949 494000358 684745215 554318668 327483826 706879008 728281354 733431589 191596427 513423441 35168116 832826060 272979197 114128631 670075487 963894675 665629454 863907321 635776139 113448128 608866568 149831825 939102262 822556861 331596111 140266939 77612125 365077081 222219376 552175778 837983218 906404564 505362353 517958236 99876415 402026024 491750152 254114714 363249553 487163087 181960833 164254739 125867588 943403698 751809604 596996750 900585557 47195612 325477244 722374467 399000261 400872264 114120237 232010383 926624978 2805685 952474366 252596827 382862786 594400606 829053080 811008779 66816658 696919277 947518711 90044338 953467983 514986109 289846524 933419274 367838357 726242174 496038583 578333633 217713248 887665218 116088491 309040373 839129852 265281326 879369571 488573226 536324981 675456218 724658290 541355893 322478534 854938406 840932601 944029807 416226386 429665764 393925095 506426343 226053459 408821803 809634705 75954826 493978388 671485689 318810106 49661949 335218306 112796641 923759214 434349367 128763390 295958433 37092399 626001188 496419328 724531513 136096386 356193896 669910193 523042361 234300993 874583883 728075807 680492235 756791279 128772390 337388332 695118222 86189943 859603990 975395994 149163181 859982000 941312040 710430081 77265652 367808898 296906575 132660092 199562327 932117543 949471008 828301201 777020895 910282240 295987999 557057862 673768118 602546889 844175002 987455619 161296110 693634847 249313865 896769966 57302955 533811617 390197467 557750686 965226123 199269789 76711993 282138645 833583227 892787383 387022034 627855500 433659114 888617760 109564109 76882074 863161810 637496626 168498880 154952435 395042244 134963613 233240665 714855208 531857379 812749408 639749747 597073540 373686871 298187730 239840892 684142317 653914796 674423404 409555606 731623253 163101309 982171096 150016958 310304191 355148573 777276890 267151768 109302618 251797437 197398009 949184058 868518302 462956238 58865729 533162184 978784997 669502745 151960510 190171028 849828518 575398154 193313578 555731481 631604780 774949402 56345020 100587016 704370663 315181658 719915998 303335544 508139260 30970656 67532249 477462824 59587745 573271142 360017565 255440719 167566642 776306778 145385696 623927889 52203860 466293168 6191460 360710590 222010729 207671757 348871054 813452676 260491948 656443318 264581508 637801201 301554768 602722962 137348002 741363538 386652560 248389425 291688455 235547538 131701154 567987175 76971521 629401009 441395928 389926592 587317845 960491069 385049214 335691627 63785731 334117564 214082021 793667524 186141162 568646006 476947111 281596655 73193422 478747412 383057125 800091051 930298045 49923377 659577698 683331967 455776972 513379728 4691803 745770605 27483182 745307200 950421521 790563981 243856393 906128044 793635599 218007894 617906916 810715672 293982450 821203041 864145953 523638675 664334505 953678834 954073362 704367926 708888840 945550032 375498406 806995677 132587874 269350812 14249800 298298235 213786316 515492860 672545147 98967719 212569922 357257498 820510943 541915713 846159639 327398364 256990532 730653463 262453453 658018918 750619501 651215832 731061605 8074340 866222772 207859960 4485180 935213392 609638524 107306653 268686308 908143308 764646672 317480802 241287065 962568707 989319887 169594952 578305706 315682141 4975032 88314162 453276536 342247359 801025233 432388047 683935157 435936820 637295187 437321038 436497684 305915512 509807551 545110561 907050379 862228732 740398554 637772633 344033784 992997745 14193227 641190213 918760134 351656186 356033538 187661855 390300500 7008248 776376909 931639523 583986494 558199787 772987696 580521599 735126227 990842188 937551724 480635930 804966214 729296778 653492897 484855866 969618696 44085148 853345933 249465837 841860688 926117720 164863672 400615560 888193274 720784625 974713292 423530154 31207893 579589079 333935182 680733431 67211096 452483070 397151406 344343952 906984059 236742956 709125155 6044881 519610211 940185654 841940307 367342597 741232710 192304710 309286852 605199175 806160286 25912310 606524881 250433238 315994144 441541039 394677949 607852531 787528157 691933806 666720879 334665538 323303839 498040954 101799852 812919438 970367580 752681755 417104596 826231477 774792540 790385593 385789714 270230364 271028556 847590220 199251638 103214776 671241907 243329572 41821122 18940444 961306059 525756777 231089071 277333964 411426831 248823039 196556003 187795510 259059153 62731249 890003501 525701803 599357413 382451534 593259167 37190186 912044328 51878634 60793386 276932393 390872606 731959233 861277534 211401139 987851172 138788075 463360489 449821857 686429607 985727151 180674749 642817840 645692694 393851293 872459419 674131693 468852514 67188572 692363915 992614170 637867214 909119215 745864312 778210563 521768147 287505655 714879210 368745576 144181781 7097458 369241951 219100047 163644269 522244189 479849987 414364074 681290884 580224389 144813809 502423618 970995526 287484078 476620630 733526259 477668599 485350033 832018542 371212651 649966470 866185945 289407217 532642601 189104521 626276493 717493552 150614869 573558494 439016442 121133831 686470567 958684850 94897384 620249391 355393606 490650491 660351459 278946427 845473429 558292543 592062995 455344240 170244738 483648530 945118003 927478954 964069490 965886236 222149874 123944753 528682998 808924326 153073348 814406067 831242395 183399843 182596452 195063565 23666687 229778091 651530764 182650502 368934767 260392595 260749339 804108240 486460499 599133076 193862563 959589178 741301651 512689124 44464234 876944484 22415885 689721135 700955460 308991177 871825223 564432683 698073284 704199073 786238606 729094533 506639804 183772469 835334032 803095789 274252592 577425218 297421421 510973767 909114774 761931624 137994086 489342176 169735421 316388137 446240090 740575675 865854165 600215019 722800684 836605133 652152780 676739401 786358285 311399504 534719709 188291334 944078190 536284984 909141897 63195822 382416113 643165159 711425293 304703578 797204798 559620419 985379420 646342124 911596735 79670474 959053906 135044582 198459559 194941490 485484669 819756531 261850138 522791025 800848792 209447730 807985501 72768093 183372074 563936671 664394388 638945186 935709042 412212151 106472242 611898474 442341371 528466909 425258500 820826865 149777616 964211064 214833465 761848920 369280752 808809016 223041456 608475263 866921742 237257700 774076547 651155510 689673676 565722241 767627735 512852148 659754325 206281651 640343890 493887850 323364603 437168253 289086775 639069274 489504483 429920019 461322959 484435938 184650752 517590771 741503920 809204012 146288600 765014978 610978247 777485065 94116065 402668617 113702063 939592976 766116328 418604612 724848592 714472747 966808533 470276700 427872666 359190653 30747186 865010472 279672962 235397880 498348920 876573257 14608129 470488380 625092449 892834882 254360188 526808405 4475929 588430724 942118532 997707455 951644200 675918766 101741334 702178887 262735657 223104782 73337235 912748333 371328751 762085731 778878566 522545359 668588798 425804903 935498725 438530795 23857764 324042965 741215679 569917945 349318443 990089214 374785137 737951378 296190976 479020902 722523326 497950029 582698697 218363178 363578734 676399116 362939910 621228509 864080490 188746036 876092843 386801379 79781071 839886438 610763375 146953414 788068874 615217701 715822056 637418462 885824842 614863009 490198476 216939790 408770308 826079022 485166699 975415681 860083245 759937136 365906671 445031358 318594994 610544085 364212584 734855909 429453035 395611854 892400926 100399750 75695203 623539787 550092714 346635250 583377418 627922796 203834016 830583451 75993126 499423469 644598184 24857617 704413490 422895955 11241507 763169964 241889312 270882265 347794288 499257663 421917816 242164798 135583739 854174982 303053386 506103165 535857056 215207851 579837246 901713473 164863707 11312203 749529129 196868765 639083235 248518106 263703654 579328149 902079711 843757093 253555170 858576570 776221367 774827459 280147802 916132693 562275366 974924536 337998360 925584834 116838971 813264498 287585273 938600270 378830073 9144737 333130528 564509318 180022497 88266300 570739053 338654351 243140654 231866482 657923142 582300847 879176285 136115445 831601804 371625532 471508151 655034470 556981015 697126448 898099482 596966501 503372502 788578851 294356072 209044437 66709196 471522986 568131475 10827854 531558744 880770977 905375209 9468959 93264495 161357180 11025891 996877228 474951286 730467426 130174647 303058538 853932120 265016796 702330575 613948309 361164154 105068854 672082727 978967433 714647558 523736760 730988523 822701326 836301407 274465576 29598267 222294387 661971539 738510416 894247431 661058079 226281625 450450987 302360556 28669038 837788279 257225678 835708285 214115502 869730703 916001495 279835454 217225943 572729300 148814431 897595036 358646085 223338347 974397150 533776816 224202277 21841662 567868241 485883347 823006679 503590502 533159450 851886759 834872962 546770097 806875766 800688010 504119651 654989880 811449055 839134559 393524678 676688725 173380249 741877182 499858440 24761758 505418571 606851542 751958642 219695982 281062779 814329138 764651080 266126551 450633656 131871690 509448746 228424541 180483233 466600089 598902772 893793168 293198781 997999983 754696976 953737827 485221867 932700163 185440905 453994368 169708880 610746906 837939393 192831795 405623902 414915935 320986003 18143586 967800307 288701828 223544803 65271230 883769605 811590849 482156622 541515181 376433076 409430206 871123053 718419029 654374183 498551548 688259398 705212213 483654992 384798167 17597671 518050720 658224634 816529759 563809470 430125250 950148575 560809581 183303996 373023574 621104473 400596208 465373849 457251584 204996617 615420292 379882704 295416098 882219080 709905233 249460726 531774056 342635122 802272850 527039217 24701878 629828850 961419586 389118333 937630460 437543298 356437144 63295568 14161289 7134544 641988411 920437628 677085559 394801717 90844148 393975171 325528301 530593028 877935804 481676625 853695913 654809407 881145573 589932918 343957855 451541550 15318564 984831858 79484608 331028682 141686984 598544520 449103387 543542159 832270460 218460534 647488776 571310911 269235693 917078821 273211252 306010502 409375510 895183438 505482681 829228459 259502942 478758653 110549696 91400444 602418609 17328108 220995622 447614740 713858766 322580718 920902070 693861549 113552209 3010419 129921019 16801387 21158899 254693830 63002737 750677043 30565901 288584627 331404242 806935127 62087035 702434545 86680093 460242329 694102793 189254934 675843066 200772864 104477054 690913916 153971856 389047077 635047166 722739821 129928992 936075950 106470098 65024081 702624869 941999643 92011538 716109517 978249597 944907370 190526048 211765312 65295057 972542765 617498587 118943215 301717979 667147956 19241777 990830307 295103631 679312846 556714767 16744542 43189948 866712773 348148603 83743313 311290303 34028817 427729667 581480770 513196079 728571620 870219935 400841030 65532647 272188906 607305902 558341999 182488461 338003041 765573238 579266716 86863139 790286730 484622036 525481051 141383513 141273252 897827069 275771207 413387201 588513253 960842227 106487603 729939787 663217961 471125787 685465400 447794863 669165392 866404892 783087111 746535854 59988106 55774939 859414080 216742055 308088845 331856366 800684643 711153067 977256120 60734676 381202226 260782242 886821683 495672558 324895183 981408997 716469114 580083717 930586559 11707570 275027994 174044816 801010211 803851837 248683702 192309397 109618705 110411097 567614944 754087175 300433842 352552659 813605282 655631184 228924179 257090631 53698794 541061957 165755632 683748259 946890003 943577744 698240654 345887403 350455521 109012972 699092549 593395328 989028087 361816033 28961033 757440599 261572861 417338287 221225604 240619275 66053956 619003759 829337402 581975361 721764905 446198358 539310653 704205608 409949964 622499017 74080786 627871324 451981090 450404827 921537079 795527805 144283398 522244921 867541640 379565265 476082555 476539398 613702935 782227613 759251801 833149762 430099959 529097175 297363180 787910628 238330694 833186888 101070281 835282062 934842914 342354156 456775486 816525906 608681160 180033991 579902384 769239504 868127029 192035847 304544250 45484288 545637501 392232808 842520957 778378800 422266454 595518921 986969019 747200687 785496757 305335050 239191419 312009332 136831322 553412325 764344607 664738270 490922424 181451852 111086852 572243745 769856278 395665153 601157634 749810463 709777915 877677918 20738928 799145522 317703599 7236901 407680570 896165913 772576653 692901205 798938122 265551672 22641951 970575772 804658801 662619173 524255679 701230402 954969236 843753289 928876837 581649907 82183318 812246101 364374436 277477798 212317810 843121505 324365739 761088089 964016387 886555147 693618294 824425264 601977204 899827528 376693805 831757653 312151618 181938927 997188957 972093548 341885505 142054484 192526048 650787448 114283350 87155419 633159664 582349443 878003050 945244149 597693138 671171346 588135979 149132031 891586070 359062837 488016445 501557344 486598683 755601727 698222408 316038960 822854566 492463556 43127142 807331471 745270541 824932094 727401798 865788068 343480376 591797909 219866281 551945455 608002151 522384103 520236507 409835384 582662634 72088794 39475664 631974283 23521576 567633514 192770611 692425739 773633912 178315700 638399360 967940529 848958623 527837253 666620595 533527116 290192226 254472999 704612220 240450504 165618297 763347285 184242065 946808566 952099152 51542643 175792789 127010691 230995787 657907401 900160126 82396806 101590131 320884970 947228274 200270362 1574818 385564672 168538808 18977165 317647155 475826229 67967244 626777843 166977099 1520103 423388213 661200147 788029221 178920357 891183122 146686427 842182715 307523928 652000709 598634582 899330004 896004498 84723936 565795561 266747227 983586332 269262011 31306445 777494475 797403884 738985801 660174196 987103967 644611938 900369531 375760003 421136531 575974978 880471305 245008199 622352510 105627001 766061429 231594048 327205948 230028418 248400998 647092111 882554222 832177164 236105409 278683658 466326336 969658101 5318298 938801610 254679440 75936525 172591971 249526208 630051436 651701700 993662491 955501507 808414904 82636969 569370563 986341116 276198199 478199765 907650027 610019689 481167200 692225451 128678849 122209540 397698748 848718997 874773168 810924244 63719775 93718163 841068830 187311381 405367714 706856368 541645777 810354594 232681034 584179871 498079829 577879171 679002712 788038376 368072736 469570934 481946732 579988080 782913027 244491202 210780694 594463789 997335142 237626554 537863290 217276394 952930378 852510202 310199331 738790610 909539646 969524892 34385860 510565501 746745670 241529370 974067938 239285715 248424937 887443161 837258947 856930247 131670088 420440609 357683180 478330334 843045022 742392273 797669555 431489641 571130579 781346968 762674118 872984510 876131119 799444279 373268842 820226120 227598247 21356949 685566241 198451534 140313352 164232588 863301499 521586023 778446795 634166709 421546508 730694145 807808623 742993341 772320086 539153163 397726950 421463667 755004515 93505760 727150314 982311045 776384762 303285601 910459268 581088302 5616071 496353348 769947722 426467032 54606628 103152599 947795523 426403760 341489686 733340994 856770764 790572644 847950232 85841199 721864103 559502928 703658547 690936437 464908191 611816600 15722615 1879594 230504807 863336434 94329775 838245174 499713253 461745355 140573110 619935480 589787291 468317512 782068906 953427304 997330676 991333615 393813599 658602692 922267778 101744228 534457212 246113892 150015410 629602901 662256696 970899886 352098691 404555981 925213939 341500121 255837067 867278114 51130604 631229211 680822711 127807295 590247805 807635457 495208467 554561295 16093233 442189985 704034536 419606785 142682921 10594340 194332905 857502799 888706825 581179837 851975301 896682910 179557163 729529213 905718823 713384172 632940021 785907180 516522613 323342880 804584072 6029991 413512815 523228976 670310688 579036262 241044582 362166261 546088889 231188855 789457637 708688745 464628654 109018455 909457202 395350628 970449977 781988460 284017143 227513769 337432733 892419314 263864436 990427116 474231833 938569616 614902968 433787033 491141612 601207252 116502578 533494193 505111054 295381264 465583389 952405418 356138838 41217462 895623884 27009785 122230531 627068298 702502251 14034343 118928895 293826114 17806669 3784142 888597461 925730707 501768221 303814750 46270065 53373299 794904820 472105164 625127067 352556078 796035035 212840919 490807605 421509274 82716759 985114981 158320507 480735690 890914380 342426843 902511886 19912905 1902545 690084613 238889733 742685525 901081771 333416193 171322807 754063922 805637789 353315311 506861195 460952477 282722611 176382279 510946562 826815540 154656003 364276149 945205393 768848171 813573233 940385678 734706106 884950485 75102108 456496060 439136491 404067963 756692545 695889259 73830892 938917277 521436665 304634844 708407339 922552130 982139200 689604157 962424021 542133494 1151456 886142279 567035437 599033490 671989535 984612537 344436345 410289705 733622608 383906756 800896950 796829098 893213102 49597364 771609748 48987815 275795315 924396950 440047629 640941854 620391528 233170285 754740696 335071209 378886513 665285902 355052145 312980756 706948552 628838655 515084842 877871143 68984385 561148318 653331950 813066850 479779170 898712493 817765341 182825291 293659353 338274087 48456171 167652592 662092641 407133487 873435406 821466353 672461941 895353863 564209258 532642092 906676430 935883107 603463241 817038518 953871871 960391773 326044033 625144139 158043623 835967028 493973129 709226445 761813403 454941138 799934282 413788822 1266641 624357445 22893200 739886440 820407338 746681197 543697257 971841360 775830238 277532429 833932057 285902043 352256149 789009116 124276928 355810145 431244750 758954878 841283531 389820988 439855650 30873001 213054839 110766668 630409073 518711499 476800521 729050407 26542677 570505635 78085450 218163570 224189838 914382196 307339936 103839313 943141689 666766057 671947133 433638675 572688291 883590041 417289693 386627648 499263714 154859283 542440721 320668939 868886708 502444398 725665651 898185421 150211107 790248447 39834794 165713365 451878129 288947124 84905663 840018729 925210511 524023639 206566997 477420865 819327095 655854339 313883492 91078982 723022796 801683877 545532387 933183636 650848195 491467086 906320173 549143650 564408074 517582955 484279106 172085711 791575133 54520112 582424891 642138682 496902921 754898747 19899343 125368888 290424779 949765366 260058500 434270520 653149881 565016571 463789118 934710542 956846038 274120279 824707168 994204722 407661283 987024722 317598777 144229431 112324551 111051510 911202027 461905961 332357032 975796568 474908155 221534215 711887744 309896555 830112659 45631453 572339254 423774855 299404814 403677861 413141283 868590298 7757316 209455063 573675717 711779802 916026336 761646118 329101894 584969814 37179633 292965859 499723738 20690034 30093730 290274154 212486353 772596224 664091659 668155921 313249280 201402049 90774504 422324865 710238798 299620602 811341380 930020257 811453487 834500646 150216291 859330813 415456450 147165139 768468954 420251177 805148613 878221081 412792148 176777634 50824880 355252880 245277786 873369004 193832274 250090269 244343478 453606851 802017302 468879194 254074296 158799989 337073784 776380813 361538450 794683703 439713670 77167224 573545304 988841380 33814192 713843269 625241839 802076815 920189315 103602697 129360209 573277712 268881013 886902707 450523317 242356247 774015209 600517911 427690112 944398890 186633725 575710925 868652943 877193322 824768547 898404354 741394683 44534664 919524220 825045451 812030215 234357334 456906277 963089805 888823294 782742426 932383195 662238843 398765566 424179776 470825925 761930396 53240421 447641855 76547713 173656259 887373074 807017872 505279978 345043588 905442229 23853735 139656795 385767198 807005273 334465228 686316721 607346884 506988115 549846389 168323880 435371992 931915101 751820740 909409814 194529342 102497752 296646632 689426403 318599494 281820596 805034392 894019867 352033451 727678557 201345788 473356101 33607961 681774738 519645692 725921726 117332129 321723857 840178076 452317958 507182074 660169924 747903056 238590450 464712856 672972709 238071888 857417895 140987896 127780774 676715333 211138495 809808159 968802323 100180391 39060691 420536339 118347920 244085950 24771338 644718794 736151004 829237496 258108695 50579299 665440337 3002210 234146581 148051448 955845831 165757942 463308524 797453686 726584633 833586935 239979781 178312480 195976066 599138428 791892360 327693233 799332056 323574636 338973663 251132990 19866522 176056161 915696421 508047429 639863415 846393663 28100268 943183295 833674407 522789964 768182157 385857270 754883254 137301597 70509927 804994835 287129915 870404900 296667015 456475994 617217830 934118594 858959645 422104489 701985264 312849856 264385809 691225220 722959083 524189393 472150938 29923492 489852199 968033854 326601588 530986148 363106019 92856357 222489871 985079253 593816846 67985758 497454968 410283560 379251150 988826500 948951076 977313255 326078114 307888468 373982500 521072083 131017171 260924797 632899841 325040874 151354316 582851692 81704262 276255945 54529279 356924639 418335566 510203707 422183366 861436790 736867329 308480802 455873679 231722295 731995743 546965476 616207689 689576621 619675494 19996479 409202347 599499881 750224650 257188419 381771412 477473300 333046832 509123263 133493311 525342304 437960852 957952602 257452254 739042966 884453298 122908291 317572324 198670655 203151476 183871177 428928404 227873097 93124453 59671511 4197047 679149614 743987296 87974739 233106004 67235593 344905147 447285282 461825406 63902273 324060784 602498233 482566076 468089636 666675864 25329570 989283345 608713634 348333897 94241912 955312853 501126478 396534939 795483591 852967097 46104999 5680565 713659694 489124861 348938485 12061121 781030899 225106957 652502247 782560103 636852012 665349987 776658694 963533063 720642212 749592814 434603317 289667194 24615470 490931954 848864551 9309146 775084177 302940962 210119916 360982265 286186251 6523302 114182283 527379582 674497327 489310321 951874372 417379973 64709327 5712626 95941253 364551687 111207171 968666039 475218318 72824668 957923451 318608715 658222005 337004301 640655232 881842083 976860464 877701940 33953551 868910866 754149682 809725358 765466533 934501349 173157921 656864256 135229971 319332755 441298041 208292176 908092768 749054999 270025675 688903934 599029763 737173876 30878891 982038621 310138318 387459130 460375685 331118598 895690473 167023201 741371341 944208287 881867230 526787511 205557030 932484496 294862526 36942426 702634758 797756334 680351163 157080027 343801425 883000984 626950518 38145324 219604296 491292334 915641867 538961797 422549404 874617364 159556597 995638583 503501554 520238280 628225260 604761075 485443555 754399014 185959864 630716598 113939438 755192662 518651516 67399252 664388252 431234260 951378768 476332433 570022745 500740421 918402918 702932667 195333372 456006354 845396209 810335172 844258577 417992715 720141629 716712899 406475816 248546239 46806655 230468958 480990364 761974957 118812367 382668806 118978262 234595303 600182531 204192354 174603643 978672411 794750655 481903890 925998522 620155265 503402381 316453449 641545714 762611678 767424985 679426413 714944055 675677819 430217470 617795484 213332078 124655001 359990220 307618365 154859786 788637549 934222404 106317573 990276418 608499904 604153485 517540765 508118668 17249331 258844844 449175729 738205636 75639313 49119246 893553087 343907162 561539874 238336825 259238058 722863504 379255451 849603082 29140627 456227646 586197571 44810112 855905900 711012905 269483807 308289871 586629638 767871783 719799474 846558292 23936507 969090776 654466483 244365372 733779795 969777605 602960281 833898529 442749043 568356097 140891901 291326987 227619152 337174215 790529842 744354950 984925822 439837622 354864744 267193942 803724936 358644738 512682944 145158088 974414196 748552940 347400463 987778148 479825936 817557555 493950653 372487586 668565326 466451383 787129646 140863852 821788756 674718034 616540097 912546835 211057254 313852435 331679713 569031240 956849706 598246660 195733205 360974067 964440102 167216509 976954935 668207111 808242006 656365714 433953315 53939157 671699554 669801801 269034805 69379073 5723074 651021099 293047578 441239615 853025010 684728879 147280951 590204091 545516190 701603406 279570233 854448413 708444180 205840748 598328684 358576221 260090782 31869162 733546144 651835769 652917607 358106327 785448726 243025376 324049818 85125330 436789660 121472974 62729008 686979969 102545312 60126381 820208864 848822356 418153862 449257017 150319267 705083171 19437596 593492275 697856511 267839316 188342201 535494720 271050729 311491964 583729592 556507266 210017579 293868835 644627446 708903919 636251137 358970590 327381771 662305585 812518071 440401275 141331328 953017714 583448696 256012429 843671357 44588429 221022013 512406934 284557286 395076899 409558628 929552979 842237134 139573283 55355498 8765738 60366750 425350540 141903217 411833356 628527048 472658358 254011758 514872538 423582084 963520049 640023023 135063617 591907199 686652776 215658725 303773572 408203361 463897875 367269429 418515418 309551992 875314949 494213160 518590631 741956012 898428200 233897644 935839971 387403225 614505661 933260762 578159524 423262881 408993560 623397377 37483404 494551901 244150864 391595026 507807290 823690451 940977572 351652349 364474101 792587140 479321313 491474155 192971360 382355538 797403809 944004739 877078573 541428622 573951726 923568672 549046611 761584369 828663389 938208497 269071256 282406972 451396804 936926432 629890987 793442797 151903859 92310754 168921985 790310821 974418008 218572701 849581131 242281608 663600039 962975665 128619004 881102358 874010209 585284177 351141381 92935551 671362951 144459669 110028257 554247297 798121599 126123751 407540655 750920152 84849056 419899547 964127106 995789830 648817871 442035716 697246090 66682277 77167916 650998219 207063567 703649804 449599869 189717176 211264665 714411018 848322352 779138610 236232956 943907953 515152772 698337838 153212413 142435504 708221672 48384073 827918932 82542621 458985739 402074431 143961448 944636249 551789024 451700920 654230726 685378509 935689143 680492290 130007172 474481702 529223549 51214768 662767668 749965009 230397120 479993273 308312422 730144158 851620414 617083337 510948231 164825818 577694649 591095044 568522735 424795204 348819897 337567225 470814505 725122658 150725170 756074737 437846131 683630937 758406102 816392765 936895844 312020992 958411072 419921976 626208440 769424390 910670825 9535704 831770636 480079817 465416237 134505743 327409717 696648087 447751073 836799762 474406686 105389332 441218484 594776898 12467442 737880473 261597712 623194487 130758191 698691242 334775586 576527949 710413069 301128118 18110170 53604230 350564757 928269783 400610430 462641745 773303107 249615288 127642881 27892604 995114220 529706124 935431878 453779516 624672180 390733527 475791067 420687041 229733858 817515579 282726162 778279048 391567704 372899118 923926103 314436626 563402034 993321613 157142967 284224206 181529484 415102234 260938591 477437487 7409858 801550145 546993203 306729723 221909487 698401004 660534605 323434358 795350772 704056448 614102052 964339049 317893717 958255022 871089712 409217996 739328852 81623608 739327050 337247081 615865319 314198226 32884585 929008670 992439448 449297194 668813558 515336778 684371078 181968193 490845232 905964857 238135328 691463702 551248831 509369617 718975846 771869759 820871995 583721536 106854355 640411111 311317399 443754236 736165410 523753634 14524649 871392687 52557576 565924883 920208718 25973918 460377990 403418531 498345095 238936854 540215836 763747530 123372202 645903155 821298140 514172640 877801439 542350411 141063536 307774359 732155470 781120363 477741832 190036727 776381619 63255476 678496267 696204148 764268039 69929876 474653941 475286786 136396509 785607126 571978814 696007619 934038797 92221103 995700643 681084865 645736899 120616209 691682684 411514624 832611487 665054097 713914688 295912557 117544917 917790997 850055986 570736529 855487886 970959480 848446885 678370241 90204906 880876713 53805874 997131509 634383507 620126512 994965637 679488296 666475100 371720940 348979975 113107475 670368441 691522938 494170259 179162533 35973460 841943763 449426718 887148580 13729846 463503534 980697545 847968448 246950427 28174066 872646605 16700792 972933600 895641774 927537406 993726078 270750070 812659444 112066077 157929102 582701377 28630908 51302915 676185982 225407651 236127843 54573405 991542546 321601783 701197895 492915224 866799359 562788836 924454202 201527734 985811681 736926497 73528299 723143429 153967188 730362094 898366214 355762455 348292812 131280813 669468559 460200470 564626078 466149749 357122314 106144421 239969273 871878545 436116681 655451538 855804782 920508165 857710548 442138922 108885432 850029989 933261863 982117918 933523317 33656267 157067058 777702119 134925109 110795726 650304261 349047760 29837339 572650629 549634845 440686579 484420973 214486804 472836801 350509136 230987340 804526573 611073212 687324458 939477476 413319047 39376127 608403962 79317841 50337050 790632512 396809456 603918599 98138445 16669729 592229014 694671424 869335439 224064249 336791112 140359367 53502949 662834172 349609182 522737036 919409240 21555508 353297059 620134107 282226562 523086313 448457996 728016700 330908630 574296378 857371630 570041316 147898973 520610937 77710979 516857492 164357296 403064706 566705871 772462333 889657230 489551307 969998469 239873480 710534660 156696148 287453154 793324197 463556188 368322744 95488374 5354851 528411085 149707979 34034169 665030820 242583605 177053923 483767627 709350600 322564555 997729842 128813786 234697572 945697393 776335785 363635199 880066449 825274617 211879761 964927594 153141272 522006429 899361869 45872079 567157696 54489586 883989502 928085860 452509632 282933344 66280280 360426159 54594871 915573669 843576414 243176185 386507171 126946869 886502673 949299405 13827397 745210315 529139778 86951409 497250526 155471290 811220533 498875854 594950990 20672646 204309842 444227577 759878860 594915545 717165005 494800307 975309306 639346759 264863855 917388351 894921048 766605501 634536935 468034400 131019155 518733524 760381484 472444893 462668490 634832433 324107191 549184843 25645463 857939727 853976492 388559430 481617415 103906483 784691978 468976876 204139427 946067683 234311331 262867852 141246689 242680606 863018751 57280671 100048980 138553619 520161241 722806708 792014132 812530893 265374317 299022006 230110320 495954542 927951112 222044075 569250948 524276437 268461017 29375994 779482167 75544013 252691873 135250861 824209414 636767366 476359173 646364439 504238689 369619177 884208689 265921332 672351287 560104353 169426938 159482164 387341768 64605329 722719353 693926673 320487491 721603892 980286511 682207441 697451947 91282779 640861476 615791030 775930843 820900050 871187015 97646513 187392219 466336891 677157019 593368613 566824067 65135616 412694444 271478606 240406414 38665441 545823152 720208582 548997527 64592193 889863602 409927045 263905049 432948696 586997988 693084358 573103614 980524959 273522310 948313286 193047478 797687331 622605851 358476531 763046110 862060250 59446446 204135321 679548017 695602299 663859009 604212514 576189595 112511469 457884136 698004110 59317773 654437141 413641871 266212637 937970662 467676301 389834905 582218442 415936870 416526659 708437631 870559716 603974391 68904191 343702762 450345833 313649601 370936298 950269093 52466393 273307620 781180397 262705983 852023582 745801133 912620528 874141984 898059719 820328190 403667366 363196727 165141701 394084361 768831260 918121859 346378141 671029159 475357463 448924066 17021979 188587397 990314381 759778924 492019457 207556663 456130620 910282314 774010997 501045950 423265606 440249100 67276852 902370608 987451072 193380133 894944650 209901074 478779369 306714695 549171536 186672920 334913718 107638343 872193352 230352937 46134146 88115104 475123046 581397204 817095049 422837832 762761688 873233600 966881088 279215243 112771604 802603010 464202243 819700272 98152373 27928178 828274822 955505579 355400041 957745433 151020347 973936912 993923281 162097629 482522423 232894702 89814186 842253807 661490324 360558133 515748078 16294460 351833910 676935321 206471907 623698115 120440134 916123989 505191720 538742490 855678599 702257470 939179640 287089577 133921714 734641723 106260036 291854630 4446977 526745187 639956690 440800631 285847280 894437531 981362467 950811835 932617792 392441489 277750731 236890449 193111199 66029054 133277721 736218065 72341701 926269746 667023890 49174025 825750443 268610805 940207924 537883906 409017845 122218739 65409825 828288439 30216001 901035910 800342381 631534780 908031909 390440815 970635082 139562795 661123337 858743154 27352745 461061281 945158837 194546256 295077464 278059824 274370885 583562253 811283535 376072099 154419957 608592020 65325286 5069965 725507301 97549306 602881818 320525545 838945064 842294649 29575698 454381030 625451636 540243249 566944565 441357929 679931723 244192060 906758481 748205245 486599388 257727193 887443734 313454789 591307050 243928793 719171405 869438036 658836969 54570061 776605889 399874063 546600076 411732034 957146810 952364479 58705955 153635798 633072106 36428584 544911176 513564757 825672005 283713536 838681647 557081218 149353106 868922849 758356955 844958146 200229808 680330151 403096493 954986592 909770505 850798853 826864189 968108717 40633392 454067744 284224572 902913096 119123150 530046490 328872562 602634645 205922882 773236376 339732029 467998337 418668009 351256882 870011741 775740373 347733016 539565433 113496906 218886683 255729706 187432850 154689265 42575376 812390447 557108640 22280097 374891257 667703890 691157126 685199354 547824962 975550725 824625046 453125589 277341091 679541805 314981990 72996685 419374772 63607529 725841287 453476604 904096561 678599756 35714834 207425200 761816965 113677330 8898440 42842245 435515292 733861023 441029000 306159820 11761195 809951477 348224489 688320367 666917226 121591569 263332466 617410965 181998652 657017550 606395222 509790445 417780302 593284593 199934412 971583837 569164020 323417590 935929667 484323179 161386398 923420396 58986266 965075949 255321427 828559924 35721460 956037522 210288024 395325258 239068607 758552792 49546488 601076900 477067792 782721182 755279955 591366195 346254265 98424991 996452946 851930339 279606970 596365101 575609246 134839856 684598744 195764729 675060539 371669464 960839855 450828130 300328613 917125480 253736152 997987166 250561474 628453472 364255054 118115073 564509575 34194369 487879687 515878448 226307266 797071253 551898337 305976268 796040071 721962187 722440734 889818066 383329855 886815685 106777139 22126300 487794480 739589313 364528945 360914503 599758582 185603734 767730064 24234083 953823381 335727629 146216879 194671747 887370083 511041350 596872854 609843631 372491059 276440834 860913591 285068743 338416133 805708729 685306195 520780428 699073300 280483341 962634666 72981523 444878894 838116447 984604986 827249733 11049784 915695174 424936459 15399372 175702733 15770072 843515857 301440768 167526613 612056278 433645457 742242091 967379859 992781944 353352529 163621362 698182189 352412415 918726281 52433643 142175433 2147458 76618539 542528155 510242222 920146550 74838676 590076722 987021843 993866673 496422575 916302305 20315071 345893058 2238970 88590023 672344484 946308506 338117922 243514779 370778690 30380572 665707391 352538477 225723290 119386854 222676198 752772235 733410106 44405659 669141626 208540376 113276452 805429909 318061718 382691089 22071115 872272593 184931021 298925982 166991698 692435466 409968553 684870878 614341195 233668835 42078759 99587381 242219497 859671977 178625179 445962774 67615128 378430388 575834562 362618114 772840670 156263796 375353123 868482056 890757061 856869231 605363424 351976650 280213674 283099674 659275879 969440240 211557526 240880237 44854136 156440701 460826255 576917544 541928461 144979329 875106146 205329281 177908404 36773799 952193996 145662030 643232863 930449329 965543306 975298501 892534821 100475752 57763275 395023684 873937116 964548717 941132890 197819483 306923702 226352112 352841697 562063235 538167195 255881747 86549323 720703755 628644355 712686734 527596718 80916174 731639773 490490322 826764251 75268951 958084358 365703467 823238891 935378812 448582329 346351408 962039408 786452666 579820175 443269803 480148189 956600610 241921814 6118217 16172804 849792830 434823399 18443306 602287372 156083325 959671717 706678062 178133249 457777945 852600918 80272481 316070222 637707525 604323392 432448635 86603873 951353727 300445537 313465816 992291458 466527446 534050046 789970520 67213722 608496177 471014589 436013278 340985079 228623834 263359190 905345836 35988288 671857212 557760097 811672211 630283455 409420746 826841054 498144822 496420584 210203841 750833925 668127377 439619303 420371708 563297091 914668588 74766710 670864297 952282004 727276054 240651678 114573074 149778790 644407883 530313186 23724892 985539974 935845503 417286018 997832961 183270410 768980346 207746004 610029727 839350795 167021033 44987555 430557154 160888720 91712900 142174082 908408612 292908914 42727010 329519326 809863564 474261334 569636021 726362624 939078575 751481204 940019337 311780920 895254269 863691187 592351114 769087529 887778750 779313876 50023382 85511378 234200070 915649249 877385051 851917703 471734939 965638909 973541730 967338228 785428454 121394874 832039267 863441060 261491577 24620498 581787542 994853386 250913351 973295459 183422730 621755134 578327465 161255536 328871336 322967976 908059700 323363366 634246294 953636508 890167656 205819245 861045043 400687179 705022984 17935433 318125422 644148352 458371817 454783836 858951284 416992865 841443564 901962966 679917507 876466674 890859958 428649342 176678603 838769049 694584754 989580 948508600 196293476 941387494 718425249 26362504 249315705 866290758 314987661 547193351 223992158 516378943 280542420 572638070 980965208 255161301 47219001 367646957 965530120 81955459 107352225 886381656 736578655 431781753 973971802 586812235 306869401 682380058 288088151 471999641 896532153 756580650 789656155 266052038 639917507 410953856 599461281 667336709 951830681 386695032 272224677 688655906 107482115 694138453 826414671 70600474 677102966 571718771 466321939 640602576 30052050 239672017 269800250 570908254 777602805 505515826 980530653 485432701 368966715 129909725 843544454 99712356 698570884 699809862 797465325 696067344 329478857 72322975 593973937 92586028 748944301 267649231 868306265 577082948 868950724 367152823 682006728 686820091 246213935 609038238 96820004 370099845 265239977 932169982 996689045 167213205 786289263 593349497 344162252 726005443 412405183 442772638 706281130 859842989 742986838 96078068 957983665 606320855 579355348 132863922 615151896 853935116 995640228 100476520 120671906 292215197 672429120 801998198 766199764 725925893 457753752 112843870 409367760 81233095 792419002 50683706 139014780 167639024 39887108 480552394 852608891 802276956 258859947 778367768 415624027 214865491 644883986 135425204 211521718 911654183 594538478 509292050 464607592 351047607 906794985 157753505 349447516 184447169 282667655 536153854 515517449 241920685 756904896 957618443 644925065 566506926 218670475 181213601 874355296 381282953 980815890 544433092 748654650 576023913 386913626 92402033 761694464 777179404 663510819 435039137 869875292 51388584 590385193 654235428 745859301 578604959 394618213 44532800 13393142 77561522 347073608 404294938 318425262 753502512 106906101 639053014 599964238 319296156 515714239 129805437 753415764 226298762 691677664 673949517 688431690 732559852 468602133 866524123 253381967 270344359 57953986 151534273 347301966 952615916 47142406 123428079 859117263 466531248 710202713 922542853 984937873 898200361 548915665 672871512 874129722 77960500 876793754 668822949 413030202 190990675 561823537 412840151 554747896 541062059 303191754 31742588 757281606 996865972 573149086 699394654 906444769 627262820 787389031 486472887 54746213 333063625 339084242 890466703 508253431 797428285 418805024 784953031 991664858 85132048 944299219 677490842 214070151 756134361 763403330 903580376 873151037 431562197 107520287 16109734 250102812 169532217 991046333 943984368 774883653 615175663 382993976 732123502 289335323 410044238 586595571 649057581 431685812 276165355 656768109 11604542 543961433 350281256 161272265 573446011 627510240 468080295 422936106 305761646 817878233 700272297 38415310 20899724 242006992 91965209 764645993 717297920 451501785 678954165 68451060 722164686 791778571 912097934 600852994 357809915 417465431 541121606 52187732 247544144 861203837 92652766 169848119 996139683 793625444 642526201 601225730 983360897 807016343 869005941 438538436 298708508 122952031 589780507 521181929 946224318 917317818 882829659 611991356 573503680 495261583 716630091 682526436 357106869 397134743 135265679 395814586 829649344 927585347 659762055 438505146 8998703 19693072 434374822 797734177 271544668 309245131 583130489 69755205 521302176 551664967 960347235 635187306 285550928 796838687 223505987 68073003 995659892 693163025 738210716 534134953 765437027 128915455 177692758 994100634 98769292 199652035 754667787 451223441 511201344 911154559 817564656 245154296 883829583 835430908 144847337 624625629 813900354 620925647 386899678 673791979 69331621 753726465 746737573 925779075 240027305 170204726 427558284 103828505 640925654 34227497 554064483 128570219 151972494 356153082 150484358 723232019 946600818 688331238 914082878 55680649 896037103 860415839 635576756 82464382 178345668 969987971 768577444 236207602 717090827 544538332 878054954 331278370 258747856 603365493 829058115 461331287 493885068 519783114 245324404 634648788 479349445 615768499 472258809 301122694 561831988 478935619 128559501 163585488 369736107 564178287 818325465 770633429 656245376 859859716 312872923 428789857 272913649 111161905 955520716 911314887 620229976 962325814 342392590 326873063 341170984 700740950 948690252 371708441 186569161 974291988 13788739 339316267 163629460 872459188 929361803 523737086 725474056 702972657 3899472 512929920 938418721 435303927 435904616 551532781 382381532 229820722 332127813 593714106 804190926 728288957 619949548 297903192 966083358 702897888 439533834 316278044 653788206 305587976 288046338 546972188 270568871 844370851 362291134 660000742 4402319 125915744 838860061 554782905 794009577 398494094 902212694 364011871 317901415 736535030 428955381 451969678 290422675 212594430 144164747 619627375 3777410 653832240 45292421 16080633 747386249 775863523 148427043 764567752 219638323 957764122 566013615 440074457 315838580 103372742 362750231 671900299 792788243 477952081 640910047 129127229 282107311 26412497 989037662 434395643 145716698 408531671 136542542 412118513 923304081 365241598 97044395 149443524 335699138 519926810 319633608 169697647 119028972 179402697 284595959 706027626 914782957 381774273 589031014 466778870 856171488 952605734 973812216 789644462 351173580 111504762 281087848 362340820 546556573 656611235 22864922 806653915 688624373 67846762 569482846 827371409 10023256 586140061 641163558 85027477 825754942 573232732 541361492 318567939 199717774 185371290 346881308 387975355 895319117 628955113 687061665 777940480 514141576 299706690 205261662 981311056 391702483 150940321 479943446 693282614 2287335 25288836 395490398 76828503 518899094 494406567 613826973 576838701 583447657 225055550 601777654 7354498 982090371 340034694 316800586 996013857 663805018 533178209 760611178 473325643 616751767 841212495 651299518 605709209 652653522 904302690 503643731 627095257 775662939 445663658 546866685 326013870 811110628 618824350 381984931 341360617 289172354 594824269 966143200 212726316 783303018 240695237 383463005 355579028 875854254 735936536 694778740 318515909 256288100 976836281 12393883 535281087 989073871 791534833 747777054 353943920 555772163 306587206 695270176 870300005 776426116 717590158 514964452 510515201 722634702 498032852 519451950 175134696 385859149 982412448 792825939 681039915 625935715 253392812 79101212 591059018 47298836 281046641 781252565 854767067 428713201 758632854 51327512 763622696 667714372 679492735 577808329 429807022 332698941 861973330 453146799 819753112 227066841 127896264 708785559 634446883 447768061 172329226 731214328 29411171 948566324 514723267 728542223 746899130 14223372 619856136 660831022 411049605 842905485 604807152 612888024 93958099 184513893 636830766 641919307 26407931 461104022 798153928 916659871 213969907 84293578 367949334 620500664 554564657 917500121 160344695 892778596 729485349 783253910 595386714 257281608 912214828 201100763 799276950 965016369 58874663 138687066 135702868 163828836 854761047 506462953 102548515 348532438 663401983 566774115 833339129 749684646 249731649 793169604 360573658 570039151 480554975 43959202 161992032 161703848 892736886 544660310 706887728 90435320 183131449 61522532 186351028 111592745 858294160 737039163 897927662 441646514 740218635 593045294 408002054 132073200 343725024 990672704 61362548 559173377 730347897 331098059 255311730 356014674 834644131 369962000 586710082 469239480 407781190 460382413 10652833 765159754 352194227 614541505 980229118 915746870 798418823 402335815 925710969 210803001 439538826 446384302 517901385 116360050 332839876 914357634 446359455 356590634 266606539 626658529 247358355 888588643 272331088 928455816 193520142 22980478 68905973 638430925 629173860 498953890 505476678 603750810 193048102 525565443 885452824 342640588 533193237 227076598 196685160 847032714 858721373 230514602 115215213 925427125 319248362 799077600 783756699 335089430 341984472 449133064 383660478 276790267 367546244 548841706 56528838 857415101 327021172 118413010 845407220 287893042 456908335 860802479 467279277 534471691 829316571 571730488 991602089 120141246 618674911 146628513 812175744 649914643 918331252 409298794 948772054 81863520 472757975 886796056 855413515 277692326 153516457 975172295 809364141 45824147 712194456 246132986 58312358 261024627 612642787 255989049 697563910 362844176 569023220 594655298 138015336 635252246 558573112 423205822 529326706 127537784 169919118 627784206 966911004 199420169 152643942 387285395 584901753 144657236 281575562 33852942 584955742 753759650 255134785 677561318 500279768 244905224 337852762 433078337 966863645 850564101 282488085 967704088 605200674 85649045 627754668 380286515 612863076 820832838 965138870 986098718 251703435 932236165 777141464 995326817 736307059 546782807 129341458 686784431 972095692 715904088 761997964 253322849 851364776 690568153 188686227 963769731 427111901 353363956 373119576 707900183 282217265 862522703 683616606 289801651 183107296 825505201 732458298 907728078 693051590 620256286 552932000 185152494 200461335 532951202 302779175 718994414 694757544 580291726 192299460 684059357 473132671 417252393 331980363 318867115 715359667 839774198 808628235 376905448 72090314 723177432 436683896 511364066 810933193 822530703 676411154 770173055 813486090 83784300 768300902 965886276 8531406 115921405 761125769 436742818 959970354 693662487 3876455 989904712 932481171 818970657 945949576 792714314 661674252 429250769 883300613 42400499 908129029 749607246 109082348 566153163 698345841 235013042 263146191 531859020 704375511 768280854 834947598 942968634 33040858 120434140 389096177 709188941 663862583 310825969 826739117 329190179 344217028 59346953 463678508 850195011 150450585 965740902 84010614 57999152 944559806 194287635 671548336 605753919 481609576 528166967 924627930 713992845 471947648 620749616 207937664 454264360 441283723 22054839 108011723 481515220 524508808 927953895 706155102 735036977 328467819 425744919 477793088 289087177 325090509 597785650 846729505 91547358 645173284 30809754 901709288 626310006 136682894 570663783 695186493 379079894 524052459 339582422 441771387 356416230 573821491 219854841 580695329 628874187 864599431 495690242 563989398 292511036 844719209 18629216 485578395 499234794 535198617 85045327 676801914 32375281 468210511 81254175 871260398 30051198 176367832 250431467 866707795 176940296 244132949 93048096 815623605 610196539 383211096 166555939 624922270 495640490 719977872 729674933 584333943 12038171 831024981 271662824 234721260 582389158 55573035 30972114 210023067 765065418 822948053 971391495 535738371 409646763 364552779 611948965 527172038 780702026 547757948 655717861 630325098 567524003 453887721 11275691 571679405 909439332 829246160 88177008 829242674 690075965 142129907 73840537 256488424 891862979 45787196 402201735 247216578 414378141 139065250 498284872 198934832 502552027 658666188 500731805 538618596 173167085 254004445 207515549 168379788 292919774 961597571 892367243 802883533 425337536 694173638 423994293 889325508 246955786 776607416 289881892 911698603 114232014 462157435 53564469 299459545 637106619 292593319 803465120 427717107 841028153 810539060 74960671 216438650 144293518 735705136 245919062 510142161 630453542 665814426 239626708 457140140 394030466 674292085 706555649 542060412 881344805 575417500 675156528 233209240 214099478 884483768 641014212 349458007 308178848 20957991 834170029 112424396 725317108 472567317 526960179 517537157 453973760 492198655 942013572 359240910 677339040 905101161 750856567 373981165 632107261 832979115 186526424 108315417 762377465 64024569 768950163 420855133 462902885 864802201 684596079 444281139 565092279 923365392 670008508 246430951 374950054 667835341 336812919 841003535 329256169 194390267 218341851 90537723 668732891 143356139 648293524 842381282 415287067 661071975 979390343 429233519 843001232 630811780 206650026 534399943 582557592 751510422 279756351 3476370 913580676 103062267 542484812 399738460 182008293 323412794 633676944 283847878 640804462 555805069 49370351 844704581 4304294 87847932 909086133 179510047 588627828 159914063 346764385 215090068 735811131 390686069 705107165 973022346 526742351 940015244 860739057 575254977 11610080 270199107 259238124 343957038 11347534 587547815 549053531 906558458 570286947 700736905 55109146 924660812 215702997 765124162 608386189 482297751 612788386 127080602 738787707 867112778 370246365 135595484 979678496 751885723 372381069 704110310 274666994 536655077 307103725 673504264 926046387 918879575 777299095 346289278 912658023 772743705 250311097 833886065 435998252 222996493 679317500 589260343 947484230 60518451 604964103 32445173 86072685 98073934 746471159 519739598 233486661 966867164 851308900 695044172 776899217 58493944 335467538 354283069 642533328 887313842 67985174 75962033 626168724 74279444 195858128 217135264 138511975 352441514 421388201 884102216 469217889 951433471 966241725 913217946 344898443 280913976 76229620 521864670 921173625 386992223 231710845 355912715 759310798 254768416 39373217 969754935 742990520 512519402 78492995 715759015 131521838 352390582 846975437 602695933 350618 9550392 808271571 488085331 730839228 842298161 19689336 820646963 450891451 308201122 754194735 980764597 661657555 917149354 125563132 239939000 550019487 855029994 424619365 608925358 493793416 191244018 978149389 756408616 596452263 726322598 23376777 204303403 485625812 853620178 639598527 782112116 879462773 732548161 771090264 646800146 763892976 280242890 743305842 962607622 955007992 206750771 22897040 390043581 451921089 919644924 304712237 517117458 286203475 264837872 810845365 141584277 166507818 593633811 549138476 30321749 99350689 822433662 961214749 19124367 155178987 641480525 864283237 274679670 958188988 940659542 475208727 595829583 43210575 363887959 257124911 690518196 827535288 368926319 235587843 340585809 579438901 637915819 104741685 963402158 107689685 349392533 106678681 192961325 542359598 342026844 269873887 914854556 421828999 198562538 902397801 150586601 34150864 653197055 947654578 360619316 777958386 25653432 327710219 880204578 151102452 782730679 803154285 726891362 433074204 395029637 202706478 460855788 579104949 708450004 297844046 711225147 901554624 69161632 181606720 527185899 467004537 240365032 857313334 928459482 549455150 125860062 183705574 368157353 453466347 255201194 985472798 831889827 324169912 61324722 724237661 869616294 132226192 783953322 80151055 157550681 602930591 657433278 275134662 488558364 437814071 705016343 951679189 235859144 564896666 340406287 433121907 540092368 769898426 202147370 996190112 40358627 135804926 208088922 329005192 457239446 204125143 331721255 850342011 308307640 734121283 68488178 579286645 586054082 956293138 297496153 230833911 675308102 38129326 914008404 783925914 250073949 357338106 488749513 340017510 814485416 853601457 257602065 284677960 759034271 86379154 326790678 199252933 71915263 105901058 256893764 121463819 223675392 863656677 22513949 821076206 40902765 143442578 333081576 74068043 810109840 398815858 606949069 656145577 162093122 65275605 396390969 724949625 113878095 262642709 744892626 315811460 293605329 508511745 825330982 783232621 212923161 284049685 752119682 262827732 515089265 884278880 756771932 813373428 180493711 634079013 41830850 844791385 481896558 140383886 337430818 806387404 484082350 680271677 408610081 465541720 27427008 703901890 716675703 208235044 158058962 65539929 194374209 518913559 226122599 845548800 630692258 61503433 92795072 827193376 769358327 688240383 486414348 130299381 120158272 180449127 108093009 935861252 334779892 769903787 216771323 939410053 987918347 413873289 682731455 295662347 888467139 235593408 293295373 592861824 590593387 91318949 747064659 285141694 26618159 741058259 928257335 882081471 315138884 521231057 506136636 435895956 884135367 591948419 138086914 101333312 930469658 231197284 611794535 380202761 686574578 480487915 211505843 369464422 277940669 211457468 325856278 314352354 654409692 600456464 192303706 949065368 114248738 662253384 515593769 412571887 751776083 89076206 307139697 923713557 326979531 342086009 136490571 730774697 520664579 710869392 235320252 104458414 926627732 859288666 740184449 307541287 554679085 387522066 892337347 870533736 12275004 920375801 602268612 80229455 577871568 567343728 154487837 306215153 98374174 94538633 817454507 113351328 973321198 471878046 804951516 642568605 831116687 23117160 806000704 163634078 79126653 328111341 848717453 589484956 308131580 971070843 608522091 119633713 858060694 504877401 365034905 75349934 270204823 510204002 962887679 961520019 394659469 455797083 892347773 375897655 687397942 323952577 328244447 629539241 504752856 856039861 715321247 487821765 945453586 571566899 581549016 873390123 395262009 311246024 527508600 86849358 701951135 179123250 111202078 88150629 991000900 925898580 231894971 807689505 108003518 457261225 747582730 928424917 807630894 451118104 123314925 258077517 991662706 521428603 817392087 802378002 358270931 498151232 407538791 695030447 936960257 141370359 411401823 136156917 155997378 914587649 123549812 301494456 233344420 197959723 532203176 167515030 754952274 429491547 458504393 775882797 217702579 377118045 757880974 229763905 966137355 329933791 698979286 989565972 639689813 246643172 791746511 292113438 507057687 82161124 38607778 927150680 551143981 921284988 353460241 571971076 129162746 564931863 612647883 997362188 387420277 508086325 598272801 168460384 337040562 825494792 164803968 172082512 658955801 626344829 528907015 693527324 450238828 268654717 945120721 85962462 128114927 337973701 785015947 970113304 485525301 575695720 156252772 219830412 187695348 855375985 18582101 655745577 253515298 390931014 607833047 146543022 288279521 346222090 997725767 433230755 115319418 722333193 490199074 382882135 842060331 630896880 980768360 643606868 882506996 52545489 576813021 571523037 93352960 201481004 463148414 705247277 86963614 16764068 860921306 816843194 966682249 533008973 112289513 468663772 790930765 739694605 686031179 567161796 276271764 420717442 944775414 292114704 45458611 38997949 209500895 34365017 987156617 265969626 522062058 547756802 476926300 832695704 221811665 698495468 890609529 759223014 749308450 268819119 644893404 312380367 870937629 707972706 407087261 948110857 31159420 321740044 903893972 878525430 666181113 546244211 754431775 661641586 978331838 179117127 26551985 106303107 933444944 256061711 36651594 257095938 364697594 492318408 99884608 899781190 980116623 980771048 252176680 739118643 730960519 526394982 62719457 159677479 686933609 106843794 756856003 44343212 3640835 918746591 573159869 847282238 825873436 201032918 281106131 691116292 691645363 762947668 867850092 913840283 817622696 247861648 70019101 392611064 410807122 993842984 10537805 188925862 652118350 513922886 347507772 384100180 363189047 560074474 805717345 111100694 906323463 501203203 145947620 222685217 529686047 914671109 784880066 52286380 604906112 774721134 175651434 525911777 949037191 784907988 198552919 907846327 71227583 237173819 914127680 725703748 41009910 589661131 527394424 115288536 979675447 361206208 360915392 807047729 554788680 674209140 92891331 220012890 258109825 45879512 956549422 188693994 391384389 624494334 769511440 310863513 646042932 514144984 511707309 46297100 797003140 349602414 606593237 801624621 939663458 419902549 786312079 318922485 674504358 874365540 384801111 81754482 347647750 857327104 702820689 510959140 550491763 555785390 373929059 52361161 38978732 836564273 229569681 126596692 649903668 64763914 288459970 812787654 939144740 906084882 984224588 983950914 910046851 111730489 443867789 915610914 325985826 523464649 48730875 389291510 583466552 993308551 806031746 488170656 287434747 554235852 438316211 918567635 416538066 903481183 551841677 220867675 219017216 600373240 593778807 10624691 764938063 114623784 592390352 820721292 477807440 166990435 211985623 628177418 276224667 142687238 265975731 365193649 233558229 940973042 167015706 225774020 53496703 576329395 258518741 100509889 442027707 23198801 854307925 120256267 140984182 132246663 48093787 501273682 839618406 51920339 810102360 239031534 693974183 989647042 377715766 29731227 458433527 494820168 997301122 207155883 173908170 131066029 615459821 455254050 265818112 856918423 987937007 295237570 761487687 973406621 494330316 906869100 394912818 31450459 370841847 81205889 832773627 274520415 759254695 742401040 302763334 396500962 824874720 460849931 891107894 408735016 25475944 851157430 744093390 302283946 357083826 13916920 255498749 298190086 93025093 184797934 521946605 929759982 635125339 448273537 989318244 88522686 547672583 649976501 231649186 886506732 383639821 461647329 918505829 606172838 428483924 333803192 142113934 944009757 434170263 259538581 795643621 822664704 979824631 352016534 45133819 919230933 895959457 813617764 610837547 79635769 983863252 15089994 654001315 23056565 951153391 737623384 724680397 613009026 735304860 194098008 639309934 10734663 301540863 64816159 132396717 38501923 93714618 336813061 142140381 384945825 711662607 872388 298137264 912439354 903404824 982481864 195332419 315334620 449590152 220726307 842797091 574578191 887723726 122365514 308585581 38405400 337371867 743850145 831135620 397505298 513943179 960891784 445127651 700850564 808615848 24104860 940992097 616752673 215071650 849000010 960845877 355231275 409955031 885483153 781151172 329554807 787966434 296969196 642236033 411634278 652570969 150553974 943028027 42036847 979948495 978944568 554250475 970750044 443656004 239152522 874958631 740675066 787223458 103414100 173539845 192963768 591532640 258034769 684569884 252952097 382951945 672631899 442342742 172259824 150599641 515500958 302910542 548036714 858487343 840843619 56303849 582049264 43261363 877965451 378640563 563286815 533790186 29550204 263090376 904728132 450368928 371938004 489767630 375505995 800620373 420667799 317263778 224428310 336451060 362077696 774664376 553544553 658697304 410314283 569847838 364701243 703865482 98528066 70033922 702548181 745622361 700617704 15983103 278678949 516268897 362279664 324397416 517583936 471926413 609650049 475749677 461372804 831300152 714845246 385079863 181723581 293649752 703923831 566153047 322139758 626390018 149772579 318506538 278242246 569345343 171645128 889521978 580339904 952659245 369287541 412115539 853481286 906218265 937505096 775402347 294067501 931122028 951194407 621507629 241293221 502239767 426821770 750518251 860438824 263661565 552510963 242763594 193436767 914953010 860809640 804454100 657277804 317090730 658208333 893453887 226245744 373079426 254514228 957700156 734169531 752266946 564037726 659650266 568976514 139192036 385498040 654580727 638580439 736151757 127679028 963389071 970135550 491504197 970705408 155210166 737552519 274352040 418045832 196338814 136401736 9392314 274491474 695847351 54563814 613891750 758072520 2116645 455042954 23782210 676003245 480384741 496117200 351662148 166405483 702621895 198682619 105863649 541462826 198738486 590340715 828843625 633821107 601171664 665488738 938108899 450661627 163501688 165653728 468226474 146415796 696369174 204446205 880255729 933916665 682561565 725667732 994240069 828184003 478054911 11825973 803209301 325341862 538307658 106995835 492350229 666158777 337127855 682825104 55921956 32884572 386964984 835382663 98565302 412532684 50543833 958565229 409013027 718048035 957012246 814317750 619950395 112598706 534674399 245641926 230780054 951065296 316791258 586440268 248403627 702934594 84858387 913914252 147913036 280380160 929276586 16801908 905839806 148830860 595454894 606921700 859987848 789417025 769534500 63131602 917424038 865404066 916281610 84194575 448706213 88809084 975996300 64576740 185604836 94236449 832295764 320029159 343186292 716210317 233360789 894692896 181309105 553753254 297418641 166211829 130297963 290954242 979231498 438882166 850539479 896046968 153644992 590775892 319991513 592784043 816849783 251037346 618468875 256382218 979915597 9161362 215419755 873177124 310963677 664023889 704381858 240308701 610352214 697412074 534521100 724691856 863442102 807869837 341104681 626654997 506074128 918754637 621351456 816419148 932081285 570917979 515939533 83918308 265615029 678568652 307503853 397503332 151056823 725959415 847532289 486441845 112421728 181459044 252168284 140852262 425057257 532652187 171137356 141033462 358432148 269506297 841102063 245902173 876494972 248391058 862205956 625719571 101572668 181432209 181935107 368889424 284986543 59096511 882748328 70773762 387016470 641909958 722645267 284531552 118018781 266415139 391095718 113359387 901267474 703507848 178241552 508094360 766186422 306038527 562544687 44295109 777945422 115248173 230682539 105827793 567009849 402817866 717718238 272381309 916930351 771392333 21266768 163519031 940772515 636653747 251073937 870161641 541013885 911718328 667353910 660869030 532248347 171539735 796366090 124597756 567723624 771473466 381513500 460095666 824614603 943565464 545007822 211843829 585601450 372347570 309786071 697474220 372064748 466126438 229204524 7190317 570560051 898255200 534260098 298367391 669772467 275820983 464149842 671649913 718794176 523811051 939656273 927823962 404537599 108095812 402648629 935247297 538368867 974149126 656056713 796345992 392479250 170505608 447629745 311494860 504556095 672270140 813149837 559296526 28109643 467416501 955256959 485836541 516699908 32872027 379452134 367989709 138152381 331760238 249461330 303592612 31802446 905914667 669944670 412329819 388390668 487157028 953266954 416924434 387777643 504849420 932633727 13851288 557603812 218874659 876904922 73281688 842949013 181433377 948803719 879201152 852626878 115158632 632280663 455503429 379311593 2517660 342847381 304716764 84589234 525601892 799881767 219804501 888698731 886212819 439607435 192121400 946266602 507272873 5959581 270184376 626717109 287344037 583515904 536114761 163718098 613112102 298346582 774803800 426634845 326224159 594418928 328804156 982972411 782271888 111484340 85114068 727460672 562353644 547125308 792845042 744910035 702609474 10044483 825633475 668428429 281936802 359603064 664913984 746706068 415743601 855846833 976072175 650691915 49188687 584849178 743153498 760270343 363427738 49363139 432611879 541793825 554443694 624839027 459880253 634061099 530162182 341727695 427359090 409360730 749809941 556830292 578329246 56949599 289520817 869861366 515283365 113459963 543674281 944922942 726505731 495597752 520483217 116624128 4030988 814232537 833503094 393797608 638573385 542077385 933213799 167400488 829057202 654639623 159827505 679886233 69337505 300186359 641781847 938178740 225982481 966699390 676974406 783493324 904418458 547418944 687999699 959765830 520357860 82674960 111563271 846192812 203506932 226266477 975906170 801305670 695871951 749363331 383517285 903097552 481245586 225052109 470104034 918435799 920777785 585328275 123430469 392811031 608561290 976236046 457668039 537734089 213331678 457029940 622028056 33421798 103349884 612477763 962478814 710606158 375189206 448524194 342224487 381355431 626740794 333200386 700114535 853516234 384616429 954515985 135543373 208063527 24366717 717955676 978848393 760195390 329173279 562931246 391259980 548581774 460364141 152388483 58287975 399681251 103027930 263485081 274659790 923764556 235860102 290694935 234230184 218035 643762175 385528569 487739377 878261745 541200955 22680965 839175476 167337960 657742228 33122788 730619776 883627176 980066916 114314769 79885595 756514910 84494274 358626481 285226952 669810581 381447663 707152609 74483056 746522187 655013366 901122590 694939421 317630933 692709011 788190478 195561711 247936970 402307358 116845449 58976174 880514367 956928365 429943008 232287983 233068516 529178907 748250129 407621113 273945096 379532198 505300518 948569792 722503280 38855534 679717707 495666325 922168760 428696616 805603072 412920344 338217936 794016539 950485959 256588962 952509016 971591893 599969275 848153787 465548232 413656229 979870994 991527101 256448388 960108944 107917196 889564903 806555607 994146921 949706111 164390312 913751198 959238376 582754264 576668831 417446419 632170663 324852632 268126150 984404709 457922126 826675983 677089189 943290801 326711021 763290611 278290811 251582277 458286031 123935894 542556608 302722745 346970990 799078334 886241895 125571951 148351587 604401656 759099051 990873456 240258693 127172992 714787755 716448636 853949152 844264480 168101192 725884117 946734629 669069317 913824980 875379524 214036136 664382691 888433319 644950527 252113703 560505492 57728975 232225192 564549308 533294268 223297217 335905974 942463832 178468149 821695904 394862418 537887874 615508924 542054418 31563577 656923810 537580162 497279923 453853422 357578504 722425316 969552521 11014943 133895975 793437517 842873057 832883495 963588573 814920561 405433228 598961173 615677681 15425241 510471787 600862712 59613625 328860170 734224379 528079703 358202114 649920426 819123527 15772224 855894481 649552534 210832987 518786050 537415743 38980413 978741569 111897569 941317765 430761868 103412588 605712212 349968986 600716967 473450175 894608192 824969148 741000527 385294747 383084450 380636698 347985231 794047272 796276742 76858241 138370750 496647387 223713914 233031623 839601660 958147821 255722233 25671251 448163160 203008271 953070366 895966555 481339769 489607292 809095542 982065572 375481307 346942343 157388622 290065499 811619855 424330250 991385879 986691415 254884455 454396677 33149545 680813620 492315592 646257449 840514225 1300935 101220214 773948270 603599643 602539704 768929665 247527103 324492164 800055065 258565519 379906681 921411107 515153651 739186573 779254372 154653616 34455403 844602202 391017362 223977319 963220296 51870868 930535233 472952487 358560460 983633735 29588343 343668908 340688502 519005666 499979877 699014707 941773090 189009118 152703811 916101389 966558495 900417816 370157404 782314879 977921530 591804614 975701437 122828378 466188165 617970949 677586890 183962754 553997674 124990500 719527756 988749704 270251906 712757764 669266171 127693336 987133706 372556612 940828778 46484540 779785638 76896880 963126291 267681726 880145274 265491013 319382609 734746768 31518426 304660988 738334086 130648305 962717096 112023994 701241806 534441339 276317816 366240905 991349430 348932268 355471656 996994706 726669426 710004090 720351335 164843851 358989496 861420512 162099836 218200394 45946609 584683889 431115252 877801660 362130802 719980573 779221006 35341920 726390634 327080354 232884660 237818987 972141146 448308801 377844935 33822454 587797637 347597393 15887547 234453511 355963854 329118218 730935948 594432959 210895778 529143926 673134131 531717142 519336279 297521765 458443685 474936037 577438635 525854063 317819130 742774631 935457184 485737508 247664696 802029626 192723975 229286456 209449021 348528928 61650737 271972653 719299725 272666271 569282114 893030399 984336634 797858084 619416903 544649619 710739351 722395325 300693667 365293588 614422307 670937572 761521059 338226434 866594208 724826393 571551997 449076148 329354842 272290896 641087513 451501085 377849133 293356520 217957313 60532183 785617734 15979266 603356990 183340488 882726381 590592574 293334590 200162253 897836474 290606451 498414302 168590309 232991611 849692589 469796494 750023132 838153684 713673150 319144856 507943765 968337059 215019829 783022499 884532620 458370986 584669987 508745231 488821942 151446454 708763312 916027344 212330009 412765723 254804377 534614475 864142535 995275488 839438485 414632515 222945914 303517601 59686994 804360729 828216839 325739085 972211136 923728182 964569225 556676558 189086343 527563738 882922002 633414340 210448230 418994881 739868394 715059107 273546063 769893658 628113522 510419604 775384340 364772567 812955317 949739662 187562792 805840021 974957579 986865941 287104208 576336563 883161431 128320088 188190485 930419012 648878709 123635846 239572019 369476340 144601687 900906948 442831013 906335371 119472714 95103594 496128315 85374368 950593068 445464901 412581136 62717912 370753027 967351318 15422663 451772871 386853977 169084505 721201136 954298147 171870910 476377117 939465075 861850571 314154917 914050011 967643840 638878351 857561035 758135642 830860039 217080811 197522168 639439067 738650310 777591337 913050893 222294244 788779786 631970184 991629832 690713435 923406859 633983426 250083524 863725782 705535304 301934138 85755381 627324993 795365929 42736099 925693163 814337007 290555074 973848364 109294885 420377411 626834744 667667769 184666708 566922214 894011136 414315592 28109390 776794622 868487307 51532691 728246531 378831639 715225696 391586991 174596020 671397636 104801860 558224447 787686092 822004624 471440267 793136673 591201171 188801587 78984050 241088835 756830213 2498726 584002580 968969313 970799904 520825710 84936521 881252977 801801322 768678060 405875065 551005435 820979874 532987047 323339225 369806243 455254587 286050936 5632764 546864981 462610807 590551657 914853048 513898718 753345204 123318630 698083091 261756996 479840963 949434566 343862045 151263601 314546426 66738844 432809616 819717336 801736354 916903066 850485004 772485367 188911123 967324387 206125756 396543503 908361736 775114428 11391047 655728275 426517753 573449219 23738116 807634122 185960226 364100098 75680151 76781056 800367146 407812338 202496832 597528218 860474721 612170437 211950662 984004364 276460456 21652857 726362402 706022235 23183039 797472508 217958266 61246619 849602452 819241199 799576463 529238584 448169679 823657121 455145991 773659422 161931207 652770796 829763373 84350201 237569885 732782564 407775609 97048183 958259581 443462165 151591220 215522385 916849298 27322759 489412338 208240722 223452564 241352095 595267310 55864155 505619403 708045616 423529772 989435008 719766527 274074146 211941108 920717118 716344683 40791496 59074968 664200050 856104685 228100262 899955560 74703250 12966519 419984041 936197982 560050739 217131369 30192610 426857660 344838087 425267664 470925506 217371174 553564426 188811804 961872004 961672233 798029996 675702105 136477409 725911752 852080912 284686615 309739561 509051686 27121642 85185558 763813868 868486610 177707619 365371345 721937963 260694947 736529432 688729421 929668924 304532637 832743145 704202414 288451794 812075882 5722665 279401617 259894656 146753386 297940855 957947079 181082398 932823185 779396707 171146439 616944432 282473044 937626092 15811640 382613524 961539556 253658598 142152535 73384292 892545741 537779544 657684490 859494599 10608282 722024482 308455550 246067764 746831735 194704148 302410683 732367057 24512521 552981167 773105763 730060696 671553786 159176677 336399295 133377995 953968599 725081248 152823149 226873051 517883993 354276035 556054690 974537417 219329735 241963791 485111184 932799146 479898350 795560850 712395765 919926206 173965216 729738766 21966450 955315747 298579219 305774400 105042630 195820311 63516640 596762278 323911756 265362171 424500117 964229771 871463970 386531809 496411411 836852596 278004186 584985165 28628351 742818399 678187754 354146171 370050521 686595690 127059191 887433791 148889802 407722579 719222547 910711343 128388690 816076988 494379706 921309202 659192340 449485890 696097275 456739403 336316951 163299071 26589157 892846061 949812953 320266693 62714250 729527698 385612185 931665421 388971177 567695403 738401821 881227106 336563919 158189150 180442352 616318994 658607913 583697414 678625767 425246824 537248221 408593535 393370263 802284811 635831503 741652968 82805470 130766430 175730214 718049863 661490444 79508865 607315271 966815441 213488354 887741222 262483262 590611041 668765801 249704922 759256304 272975300 247742823 91412614 699045123 343451267 201994100 592709576 47385714 607358793 874507614 131423016 691461021 756711311 225061958 287736329 326448684 292360249 478498867 523271003 68204855 842839277 733418952 328958065 842439257 369375788 531216999 478030873 262595327 702331453 968616766 680715526 615471299 930723177 372660589 878749764 804020859 393601749 992251813 95605344 361052395 979750284 713735929 997710383 283266243 580381063 816233125 873034945 442430454 116462893 707404403 357291323 37736873 265010067 257204587 169131138 728774070 399653213 890822830 258952374 24141899 204210461 687918979 385061124 381319346 859886951 507566885 88653995 574786973 245560375 857697114 652305623 445379720 634580149 495331937 168556276 585494220 925278775 483330303 483739865 489738560 922642355 38620907 249562954 424090031 35859249 199864876 884407011 194757446 149137314 793321656 14890944 433880019 700625446 566779327 314583913 887620991 202950154 208707728 619036232 327633757 407652090 454984812 872364131 874863980 296924934 601565424 322292202 34150856 486575371 970095807 173144814 162838933 960048816 745588584 825381833 129862160 343434353 105914988 261561302 706256891 925972809 692252876 590325570 792979454 867897052 441222551 667869817 45029757 655886332 985826259 958517244 894619369 566368687 905488911 93200595 456207238 159703471 735798156 419512335 138721411 332299952 621590567 956643636 39487438 36787533 691006474 424039705 760119545 897904587 725182818 1988833 875901699 533896725 645295401 926543750 741797916 939557017 423037557 278164178 246263527 437543778 910551871 215301261 631239011 307986590 247916924 494581022 33069509 216454022 414479417 450386860 339509975 668836246 471497933 451853397 380632117 196695892 419857168 924598463 44435379 963442601 913097598 916500422 889829605 89112306 122910543 69191773 996445369 642598701 742090848 833492731 289362041 500514316 17482539 833130275 162319517 123283918 428869971 758277223 9640459 341858035 891836445 732371415 88502076 994277501 365456076 620018352 637749022 22722023 642541994 905950498 402611118 110635085 301702572 79724485 647329995 194398064 848972685 297978414 553101272 225155231 385511586 671206416 181804937 520415113 158222859 467958877 696649737 875996715 862145945 820560079 503006174 592878068 319886799 290489272 227656751 172438924 952566611 130599832 142936803 575505751 637121301 465319100 637252864 503515572 3119826 365739224 339834786 43449517 194296098 618082390 386288535 686777538 95250411 538640858 32339103 559915135 87267656 672190729 888665649 989716202 208642063 250280265 507115620 353940980 774942766 264274532 954982315 248536835 102024354 503197352 866116073 199673064 967117512 988544287 322806208 897513443 805802532 493104348 540545660 399667687 433226932 868384460 948428509 168295576 834135655 702484117 161582853 637028367 622622812 659786351 264612702 464135049 963441065 36250976 976041288 355161862 589744673 866742746 236715052 657406405 447978999 738665448 677195310 862135658 641097884 888751542 963590231 987343063 840365520 429923020 47783562 230417994 272921720 190438445 84372466 860610468 363744522 40160377 249629310 965524669 55399832 664911549 858314018 362390668 913836870 756791882 633240219 896294567 765489990 32318687 537098882 342996732 562465430 783040390 962601320 721622013 15534191 583662894 696712967 456493608 125771677 58308187 744783315 764813614 912282938 545129036 467618154 196206263 22046725 565680915 220851510 585103302 526567228 435918245 144870307 669383284 361946079 472443329 444586657 416667057 539059318 965748857 623326696 413298477 408530814 143201814 898952320 704674586 282227923 21092245 530910133 543311794 772906098 548827646 577776323 522372547 824799371 350330513 709851390 837716653 284282209 542599918 730344568 623857940 258981942 554374460 200872152 391041632 94753727 339543398 286610212 233332627 393814427 189601865 669091895 568914727 690753320 262180109 590202107 90236077 839515757 932058418 397426589 713348167 229574224 567756287 133700754 624839220 708800958 228777037 534246450 171523510 780012349 144801731 662336046 544331116 245749100 141242212 632597246 391332944 159571590 250730830 244879318 301617157 830270529 664889509 754788625 375813756 686141904 511740039 980930255 753478080 950173744 786966144 558674346 393200398 530343565 729739371 320549802 964637862 858286354 500579195 390324237 679298935 600492410 513225166 284561951 818510560 22624935 330959098 404171025 166726680 806936717 579580816 548384096 316664657 594466763 658699014 976907643 697596436 474197691 72798259 584677613 471932224 373176733 404550691 459046266 404918488 141043037 31583735 324805318 731116112 201894569 497511194 529400892 52780447 579406332 230805394 418707494 664301120 889739116 704295223 295904838 868936477 580837630 692724982 336658402 863426185 226552316 799746384 252838339 796376463 152247815 299316988 475100874 748982846 662509791 188377961 907740495 405576954 160558282 507494230 460396383 255959334 986648292 901664705 120397916 572031704 395802510 866882195 75197584 282875969 345978619 789256763 616035192 348199541 671754851 826930204 688414964 222083198 206928710 201980341 487030792 577505474 873242668 731639992 149535257 408070170 931187102 939723661 764946254 152920370 814365240 226372287 333337403 981689430 954238905 283595968 277795076 95167580 557960566 886649837 170376347 647452279 829277190 544636027 610984557 677940219 696766650 134754039 475195167 29055078 478358498 368417948 803225932 996662347 53109338 11513296 186342141 210913515 24223674 351912067 891324313 808638719 539634360 382093949 930665817 585535973 139134769 655937562 760306798 768584129 69534134 830142632 558902988 270796843 360639860 872989935 435575913 359975570 897276212 783820196 737302027 95268824 245190384 761596244 161093812 243210606 742351247 903108665 919409152 598032321 136865326 144349646 965551444 465016149 782563935 586517487 586911555 299299710 283407313 922937838 755064436 520746484 21140469 266804901 927965221 367757367 427165661 83822106 856427605 618266405 164470839 888222730 928491359 540908262 562906653 709855288 950294262 933569474 545661585 217955979 281840878 480640399 764925789 996915498 458993901 393474175 311813177 416133592 665543909 534321895 657789766 723077839 589943604 490496624 570877297 185709667 131785789 905560133 540228559 437203472 37689062 877733557 789945803 496363648 665820184 783939743 231371129 930702856 495733024 498016444 274779730 366503093 831854341 909286553 355587483 942579732 884659059 114339817 606778510 749696686 572486015 396081685 762961459 486852819 4763749 529874072 768457866 812797749 693632126 726746535 711052760 826406188 258356961 641557791 774640807 759884712 707547558 755253932 747603713 646626067 459451239 552256996 56529153 140000743 96831608 8683883 799730845 298794213 951724414 485364912 442677192 574708836 568704503 371811114 247905567 538355649 410738803 298935335 291487102 759548218 852431140 599502854 657858768 587836189 305676552 149858154 88563277 465013380 577184610 814012545 284969666 610312720 210568395 971074467 100747456 895731900 53409540 485201909 172170743 89227407 735661081 399263853 82227124 896494886 796657883 432995284 342796023 264801759 351874631 223699095 956751622 334437095 590261971 364518709 566082015 734119878 353190940 254981011 218448945 692341045 674981969 852928029 939569742 169253242 557002815 505677855 235923627 221970989 986543991 33423444 930866484 76803241 61065712 734796143 251845909 605019961 122764010 961236443 348618964 499031645 864536412 774859300 298196044 587971014 522617043 857257442 409815941 586214046 352414130 229776899 569538662 313950299 722677587 758212423 212110894 292723238 7522583 352006251 413804106 849771292 533319008 898420664 839182626 849296302 485941733 281808995 815307475 80601055 76468347 879128962 164393114 244008351 865602539 648622398 372495028 375104480 425148100 1710800 15940199 892228548 453767730 704323862 41133445 737513016 365250648 610203028 48960712 366968473 857566868 90911639 322793599 485522253 184523343 603531582 971415343 920270546 286605107 331591549 121219320 329224738 590962269 552591207 951320080 918656700 322301910 757613069 744447373 737945908 361631159 377895249 815125127 784791641 737289296 718287768 350998907 566386236 708812975 410591865 532345450 386978531 887810498 587662276 136995194 515721895 560765638 133525662 81988202 801111897 229658418 600094372 918817512 209039194 563714454 61410101 397764126 96696492 192696138 682177122 312679364 764975075 344000817 48539697 802289401 647647000 464308269 23285943 900000258 660069875 39057918 891880561 702962631 272505394 670217169 528365369 254120148 878065744 561022093 103685373 148958800 694209588 779968939 218867931 597984067 914957529 928930233 621511194 468578750 244428747 373837931 49749251 323000668 737936084 815761392 382492856 82311394 214344903 904652585 926417624 102806206 762170507 482533060 433801729 64083693 841286582 986222322 939151372 218979437 410773193 334372159 443640626 975973693 568084766 647767694 180673023 737726386 676643891 634247851 627264323 174186892 833593188 301695004 750652244 993319106 921451029 151343557 970075307 958281083 714264801 873044166 448227211 82192216 885158869 277112067 822170062 41663832 908743024 843710110 455037991 855026776 812105191 763087488 218158502 873271790 281988755 525210777 195107859 61821315 826125981 973546134 234905121 696619478 344430020 642954868 767518236 627284408 468233280 292772276 239713399 771041244 111498962 491664080 417954205 314714385 408820077 247497196 198649270 240240674 903980955 624512595 894034428 61061947 889912842 857859592 434120263 79929401 859801735 767069860 53874206 309011415 937814215 738293109 107672933 173680582 271067014 398055269 99744565 221125617 869902252 224333231 460887039 697796455 343400346 626553246 934587398 363031026 777741285 307307138 32514937 800714354 720449521 680400292 289999927 782377180 896360390 981322284 201988869 353811393 39309786 924312829 600354865 235619446 829753148 363621934 27328052 152193508 787739563 691606002 906133590 313550793 125988804 129625106 95253391 369830954 704553901 305395008 890140443 473545374 404078736 4919083 632884460 904845144 777675324 267775440 944495455 276530191 591160470 845282663 584558125 128501658 628835981 881253133 954695932 603848183 226481980 314663743 241081680 707942015 588881464 6916063 946516744 501996451 936882034 375240441 945124021 805919605 544830266 798030606 581877045 666235589 331977219 711171701 797822387 284430871 951428587 88379769 16027433 180863491 751191528 241706518 950063748 453002805 724677285 550888822 481489116 395660019 220510160 466058707 983121247 774488314 271377419 466075816 411144172 551769534 931760085 50701737 527372671 865900748 757655639 262939462 804000119 499619966 689142067 263137105 567426337 103947337 491505113 275426616 574696880 977076466 222000778 646644001 967815766 169218616 36417400 698142089 848921294 913464739 832930551 201902132 47802028 485129252 424182773 647389561 475989846 12566242 460357146 420335343 593433401 621756631 843804698 571084688 769006458 89228370 732304676 706728323 622738452 284539612 643877331 646333546 80762584 40743753 677308996 419332401 132873140 106482862 222695325 742821192 19609030 339946103 550762314 968072177 620867462 718435238 62600592 27427468 925974750 507420253 787012677 344664340 976855258 179029780 765567322 205799570 408821296 185241251 836754416 169186945 229521806 614370402 519562000 749643084 112108080 941317772 875265749 796758682 297159389 312033527 716703747 868783469 370278422 391317157 898531188 380578175 400421396 565793817 418180656 949764265 27703469 691021092 280452098 680419477 725742513 373692368 219089293 748748082 954327555 730622649 926115661 531450397 334416602 702411990 301163209 590634590 821447954 688940947 246193810 297425097 988861509 995763557 301927394 237761459 5666452 349250821 643908280 681823673 374969666 167121999 135400898 940034003 759933554 559975986 656878965 725831457 503757240 348561220 231431681 278247879 523195235 611538119 708142126 176673914 79525977 281479864 133739141 500815714 175657143 638711394 591726484 600838857 529245416 948764243 568944333 587270619 309658851 869798459 450635492 792492287 420819453 725228618 976235149 716181448 379570997 51456931 165834969 647230512 566288598 783627073 419083048 481287860 777986079 166535979 240912035 257026225 987219234 882672660 708070021 255381009 332957502 133446336 965634724 788501436 71061399 165011045 764826077 645037633 826151822 171281618 740990835 418634371 578171248 347955000 533140068 253840436 38314571 519711827 666585958 211543937 320426281 270208425 792002538 36096254 619049459 239366916 724328937 798897658 324509216 486443936 435162299 404908502 678169889 678356175 41530628 328903299 125627098 329781878 211292691 113624440 751776528 483644567 726464054 157611828 881401357 279251035 266665076 476904691 268830784 976124439 873439401 489287381 469193255 961295233 409822111 51734827 841198134 503284632 221297310 611779124 233710503 604216691 543955675 356819617 269789271 82789177 145417552 478244828 597678167 545928229 914409742 19365150 49525549 927242936 748766691 732282656 731742661 855184839 280096420 587591322 68758294 539170647 9169601 939433289 575645088 365233062 485931184 996350600 710818902 194344432 832611521 583940116 838560591 548585981 949367176 508185718 575113076 400459193 698764548 627653706 637132344 421695805 459391192 54229829 593477009 84775240 552279214 541960613 357514390 591475081 147544684 420806604 326487116 496878044 109906760 684132965 848099982 290388416 575124028 498032036 548963250 290201109 894557861 699681018 900625695 400887462 589003667 185450318 669506161 818540332 174593028 126329779 279578217 21368545 668497102 197538440 450332840 226282608 942107234 141300022 365990712 729464581 161030892 350886706 899393330 929633154 890892287 633930555 260490425 901178188 755002850 583859611 303793971 61914796 540558644 23540979 81029870 354213817 166839821 950165308 259257871 415270684 351612312 307079490 898548997 451981150 310293327 441006208 67734757 104092103 564562737 848246416 479937901 818700136 314446672 303341292 367707333 857775410 194369484 786350442 246158408 511750557 592387623 580789028 380708968 115640667 580238613 537409622 523887840 723896802 892966085 849261196 244898276 420097877 144669954 116295346 850902128 86897730 885922764 346360898 863793049 514730176 441614592 75915264 641778080 658888020 600395375 211168400 335099393 928890855 193793342 313842001 403767416 229747486 604273493 886482425 83021887 891841019 619451385 183023422 827821664 387882246 140128014 367004923 295095186 499571010 739026060 89025294 686278243 497688318 912742750 812164361 145168103 505081401 375672767 80806641 461140853 173842827 625925843 705022618 930394208 237123915 976772750 483054752 777566957 721619393 402407094 573080655 168082795 187964766 49229596 478109819 876216760 451779971 823502437 871793559 53155494 986809919 195299703 693147017 183114773 611927585 27078769 216979655 867841813 499504108 513109378 911141507 467018127 492071757 319256649 836273512 396058721 506853431 620153692 262936818 322208421 354770699 10045626 690257865 250017532 61409536 619410029 94323649 186743952 589942655 698139280 503003818 88545772 597295744 169258473 899072778 708324926 258273037 577285564 816472270 2988281 157860994 277239766 778016842 47892021 317078672 35204892 800317447 14045913 368400675 127221149 516382058 848044205 742347065 321034637 501584612 182937817 455950290 521257233 738457447 287011990 154912237 656505563 677036867 953221943 31166664 473394722 320106989 403713097 832139895 359890876 172006623 730545880 494817926 470176466 861841023 702423019 429322165 514748072 428865013 316014362 207237261 112109157 826286908 228547147 91694565 411525702 41545742 325630156 682489273 734923427 455975398 54321317 382985064 331645531 600273753 827946529 83968459 555121167 534406508 935572482 11605586 233241413 528625476 265327589 699561711 629930637 518975897 546418357 648087650 644907860 806730520 38227343 949620792 428665198 283345000 287531489 571480047 143254109 837906199 600706338 108048029 528048762 945234866 497023704 316130838 856590556 696535937 111670462 316863934 49254311 915313494 653462613 516231844 842234877 296178074 281500742 853677002 390840560 244147549 529289224 219508115 518739824 427811301 207698377 546641612 131177158 344875690 489036226 529618265 40322442 352760761 131699077 809942514 173218891 580799921 565027333 527298169 536449589 747566043 702513082 626237693 789383936 12246846 172348220 684039966 354524577 261132126 496629616 596548179 116795822 80795995 429842180 621351291 863365092 349303553 266615323 43286244 928338117 226137026 158677881 970477018 594208613 102883478 135465219 682120447 278358782 438723638 765370849 132420495 614350560 515099349 647469946 258931655 164539059 557476267 276623013 970288154 847654418 206098807 845708972 474081903 825054350 868677646 412237832 516801963 3816760 725066982 582475396 139667946 994992288 515790193 556766022 292677694 262210727 600287819 271908805 280957613 496660376 808118035 209059755 221027193 415761457 150385388 317483789 921979614 943498508 408576660 365681812 934583670 915322102 184347594 461923745 611218932 1806951 613894111 759408594 367427212 357179733 972757388 120453626 884749695 528687752 739903575 462995614 785771392 119055161 166120504 967996036 55306550 536769393 876852467 679816852 35795893 882115967 885275495 172963811 181696640 506133661 651074608 376743180 495280630 841191872 218311380 284050253 677450704 323796276 153123636 43223619 235702838 835940864 481897744 285265823 260873801 372609882 458479319 480272233 634215475 633825198 791089988 197921305 307911749 501841576 880242077 867629131 105267442 972017051 916649440 501437748 875114535 229251990 96525666 140909181 892179130 968741307 100791783 858975055 222779539 443788595 813109542 58279363 367501341 40321351 855966769 741627187 516590799 542993274 875926427 405605217 626437874 429964208 694142317 650921276 978546478 922832028 380952721 506156777 187734449 4367065 618914973 995937439 436197084 161903024 660955528 247077517 264872534 239034840 472101978 980017368 719105885 722413335 397508085 624495021 75364147 720803927 333921190 620605288 76735995 483129097 492741376 91306679 637229057 268411869 622075954 715057705 536155063 995373650 12022412 492221104 28800527 85552618 150714931 105528004 447291339 843872346 605937680 59169142 579521816 224452550 614678711 599585557 587590655 900367321 179125150 147794890 778011005 880560768 291343515 661514363 622595212 231442931 257354153 40402129 561555340 71179248 944308471 369857723 386670415 680905481 195165186 735312621 730803901 471020957 159095706 899349746 260938254 27253867 990470504 98642847 19335813 455283429 180735162 462555958 455314154 378398695 842056339 365482703 735727547 99811949 278222458 563328210 359647512 58341583 374523811 27559232 357783317 439269830 559155943 473505067 913902881 601608138 503926882 734039384 260255974 264516063 49004464 268334294 833407442 13125263 590404284 319188847 332981955 488223007 799120486 967851474 832787853 217240698 349437082 4919521 16537761 81770716 668514025 707018626 373445766 642921527 5134984 836668839 272007324 84845024 784344122 841471757 875881253 234496212 308420910 400307733 652413334 134022868 639014014 506020001 331433855 275789850 273015281 146443296 137241227 312076421 169171499 236037311 653876174 927445192 82819452 594864666 69885249 597353794 916236255 780766621 624956829 123697811 618363134 409731966 321420397 443563457 771063912 495099427 518741161 48437140 607662842 867322606 448470343 866808747 812968132 436933502 554567285 736206603 747160107 676885404 349296951 843463776 560812151 867312561 817123949 864075805 351963259 711444394 371546735 348844994 124700803 714205205 955549798 992802954 113311227 750599002 622635775 684410325 705648203 418188746 220042262 3800387 57264442 621596161 898981470 670381213 334990391 876037854 476675566 519348592 629427604 638076785 304833008 815105541 619107456 418909393 274945595 176481930 633171131 817486356 943157536 510295803 981271699 294551184 910150135 580052357 675086009 9299052 746154552 389161470 67960442 553049471 688647417 206438540 606866825 5323562 195883511 846270355 344535403 812235475 142345141 129156003 532385020 682825607 920591912 279206463 874865981 458303701 962268915 993625698 586206345 504811036 956224159 316094822 687871357 140102347 518785140 675055821 962313144 59382796 839555503 108574267 177353387 746787048 791823858 244303653 540825071 342910955 735485898 714469982 83545630 833676967 760542579 703112579 279671555 430926509 742267551 433327082 169968473 714124799 715537367 98705400 766051816 441450021 95380317 850687172 7900919 749174619 394131691 829155619 125652264 903704505 314004288 290406236 779671758 156411757 912113664 397867633 246135802 827027186 749917196 852082332 887207481 896433535 888412867 761298614 269817719 237587368 939946959 275236642 356764821 20326207 743416709 279134229 460157985 413718888 194864648 874611893 380143107 991885090 328810 400356736 168751755 253708397 770227468 943073055 877549904 169298612 629999496 474503196 564197289 594264505 680028426 774364286 461894346 267931197 157614579 305194242 510959487 650019648 427186975 23334607 529856171 180861698 115686595 24508391 53581372 655052136 708134598 692853038 328166931 950361720 198598203 347305020 729512456 991916688 507814210 359060275 116616040 393275028 461974173 699382419 65124222 185581699 399207132 973889601 655743027 308684355 808894905 192139440 606909080 66531687 700448375 304925647 945424531 133384449 68016579 1007059 458380296 798553260 298850241 444626330 51292983 97976410 314520597 744952183 696097350 82724118 964148867 533943860 691982188 333414063 270260098 301004729 776842587 87620489 489763998 767401575 861454816 918033830 104103034 958516235 555541754 391442218 243731099 741628662 613745909 290866355 745342346 612128810 255583356 799066605 537941510 94450553 872312338 744806733 433870689 55293019 741051097 897224440 476760986 337550608 236331487 953432475 588906215 578476326 302619886 830033553 930945879 65368181 871439487 795138042 122400762 776054703 313009697 974946743 223915428 918061368 788332273 555052652 9246591 99472596 509546034 728620942 330534171 393593042 304250333 609724000 981213734 791753080 862793872 553447874 978422312 518267054 313063593 888445032 881300638 208391880 817492351 179798338 959198984 906271477 734911704 33760893 789520004 367524035 214643506 19154222 459571386 631468325 456586334 393073612 423483563 584821988 807049742 639910475 952265116 478649549 976054398 771574484 587809592 554820930 813991634 53543684 948172830 80261672 381341670 618198526 561904272 622209926 822943790 498857233 2335763 407394868 350247618 557118360 332996695 552263205 836527947 412392470 239196264 527872458 639796425 236369090 935648294 90005165 482345836 35334511 608428747 767192485 279412165 538177942 690040472 623469221 49736477 145810647 319781043 244088639 279981435 903409733 195462928 305366989 922814440 105532972 456330324 646531905 380467899 96178083 629231225 178798220 373246695 645766003 642663560 147291766 393190959 142808023 680622607 434511073 801933290 282937150 254606588 870068240 197607545 434057081 225051225 86075439 649281793 496623183 484407603 537507612 661672739 366741318 270030402 158181049 648218836 300217409 125583893 405746058 554373648 386063238 244809657 122726811 424514766 96189852 76657968 931702148 860234775 319074895 659211621 556188015 900037718 717351313 951680580 557326605 552387107 806087641 175491036 688941573 780511687 971936531 207835786 271431003 658368637 898362487 565452215 591247195 100863365 323455939 660515270 438582034 250534035 823008266 623997435 199333108 502219701 904469038 476901898 234841224 77657699 820207030 951583353 848652943 290650049 791354739 153024205 535432325 969180399 422769728 597354378 424311112 312179135 773763928 802533329 905240926 167947601 61039789 517231875 71280969 757744713 263866242 746995461 177672681 251853524 937984911 884200717 384982834 329019182 339820391 217298882 85895874 719060552 42405339 320077902 443288710 328675485 116235890 438767067 286176515 850128300 866548603 791273215 203208916 412316240 431007172 900548904 857140762 73645221 846974542 575913880 207110046 565600077 14595935 759733894 647871534 868607560 855906076 779371646 37908075 326215167 224896878 185800276 479715217 36746520 718996314 582407159 820564581 744130933 405374107 661810584 540160709 12010743 353996715 701184494 349774113 306526059 325718249 244690564 257683515 61142407 714145396 358434236 126502127 180841331 358975508 900731527 31248143 472871688 507864967 210087136 707098882 267425048 705028946 951667768 361810492 851758552 761809904 661999963 945611361 997644550 538013202 721373760 31125876 296366019 991728360 830014421 41909905 601197147 377415557 285980729 821060169 995181700 552665151 195797583 281630689 722922096 80502213 280015948 271317900 366433975 590103532 479495362 741979189 661403665 103623325 915504882 315860700 737140575 450355434 491928975 960977814 927475214 900540037 448884773 15564354 644199005 254843542 661293546 67300401 764668979 385970743 389439943 188133885 971661525 400786344 909374301 153713070 943059002 709395770 273668264 469984436 414282553 234158554 720262032 838080810 191265478 93298291 265681993 624880897 106864735 308499901 552827874 190234444 442554934 513300986 166695999 695055832 468193098 393388471 864968027 143004184 362338224 876653554 476809806 893297349 696538721 141837101 22985988 52695299 436145963 88636465 130190654 260971981 428727918 256323244 53133186 162433560 496711637 554621118 952967335 540282524 964966384 168333330 34281558 596694157 512448011 157335589 959337580 543780835 532090342 602606252 558371141 203581809 417417535 73753312 375486873 801401721 414157432 644943758 996014431 438390949 948317572 614719038 271827762 136830760 736223885 745659794 449954423 824698877 375102377 449542042 675749509 847691061 79147066 446907646 489747448 516687113 59723431 992758120 752883313 756386265 787025718 424037932 580275964 170336228 781274647 552736841 685453322 158718947 458004975 765967797 293563087 660278172 868753235 54310061 143402877 147142144 629163465 711461508 54882710 524935189 338076036 903276948 53040278 219365806 686279931 687162577 654682047 492682454 460680042 572715134 537114008 206593338 663334823 598557132 44755924 931299885 583957464 625384040 362675769 536467009 589152567 97307859 424724715 268550679 236290839 35647262 439502357 284272888 455130235 931949300 74719079 763945819 502293708 98837222 751097845 880296670 41271318 726455231 313446028 404203934 194391012 353228611 495164298 733892164 199037255 967892582 640081532 186097349 519851293 104553886 113401827 210120514 109116393 562163211 966535934 25777480 705615334 351592342 416962894 388189113 470926661 989567188 211740965 192980154 274338000 60822270 913260198 338984702 299303485 850233682 795737999 904456712 154370248 564014503 375813209 503375602 849711144 11982156 371204236 464727166 624255459 726482336 481989635 57190580 986345077 439454967 59124037 859788317 467234701 673778761 714300721 336082620 572635011 104794480 996076135 383430663 87493525 285149484 598516125 318874826 800060519 677485309 884537356 723568774 622436945 473129670 867000077 295456999 996269016 279787251 173425268 849609025 979986801 292674544 978549867 457976366 788865568 409865868 904299194 383577983 592609726 536405593 450653389 114250602 222706161 53203095 196622084 697097860 848440757 661079378 548795513 855386763 222322578 320016505 379419229 35898827 556125283 838729723 984925494 326873603 116370061 778726535 567158343 731906602 655654917 529098669 14951082 349487316 922909777 971357334 671787798 555694396 669297496 240944040 666246770 828574026 29590232 736291651 954213038 510748617 883238521 688125046 233502747 795569785 879492850 502175347 726868105 59075646 409218752 419060437 181001628 263644424 936320409 87342568 826855258 138458724 352709694 135051397 975661911 854117608 794296262 662593013 391963086 432479629 170363705 616087740 836734886 598602872 827367717 492534145 846267919 836147795 238527656 582203229 474949752 637622312 230209732 341481078 376711617 440062131 184624559 240198551 863003568 98630266 174745361 468039482 953128017 258512421 590141511 41018538 660250828 336924928 777318031 96414409 337378325 570049009 594291191 585316690 629940271 622341145 609514254 598228645 79523666 134815364 201129898 934610735 963430731 170217737 758767539 553464912 646380542 567195772 749789303 564433763 115335785 214436374 101400726 151523940 823834950 351563245 820101690 345766526 111146558 126011619 499525661 769243072 953437126 94415595 114731675 933717466 363869018 437559926 791377251 490503264 928701829 934695825 779163041 953706806 575166219 886005376 266614094 340794183 338186987 608449758 81756293 534605245 323967833 439427829 616383463 407153500 963618798 253506168 555469025 241927541 338847826 598354324 717151312 46356478 227377922 921752364 159774919 283515832 170474323 639921032 234246568 474316081 310514541 950342379 407721522 585608728 327645143 607507714 402037259 876455043 923675567 347984290 644524663 113621724 885342419 165055378 237316113 618046943 480293504 505056833 867387118 308434243 832480757 714799008 749012416 581362389 262971567 903448890 486098196 139929375 197749573 127941626 243133095 851656122 467172247 789753400 311721347 296651215 682149467 493987865 77692914 871182913 434966694 631664936 100551489 860714405 774779978 111234624 681949543 240201714 210842882 60965985 146293121 763484925 669325533 464399807 490318609 23014025 111246873 730683835 606425164 378128196 186622390 113788652 608153243 182396148 626539674 15706652 761682139 181981586 55026965 685641696 667342150 17785528 268495948 737913843 105631324 633072850 485032877 596072477 76145545 760382555 399000362 402043315 310676656 351899849 755536116 694812309 420549295 255415269 284419419 119643591 4906336 579877333 29472067 514529798 967788897 287076890 723584995 367354293 53351190 989085688 538407589 904659005 404961257 712381010 817156694 316521718 84210500 174500318 407661831 830420438 568961004 590234734 813970535 699205276 750583201 755759832 265298720 822909401 39428731 124033158 552668412 256968271 301234898 607127930 840133299 235253783 722146659 199930870 562223400 519754068 447672524 583231494 428580369 870963996 1586410 93566420 249262369 379497746 557208138 445999072 656737184 275997036 225454784 995893758 214825454 847076108 19584327 653594874 497295622 998240655 984658691 654113762 706673453 854676842 959595344 412342393 946801267 157127513 450805917 955308628 22449586 835969268 270154152 842965577 675268146 374383157 481914436 906491997 60449383 244730055 997996924 145947711 950702678 501489572 594521076 155082608 799185631 409041218 516446219 825608666 246561644 960425084 19382842 814489179 299095038 583591011 184907809 703547233 312775475 452683544 298637731 852354724 170711730 804714027 928272519 141071487 603126913 482511321 10203072 975268162 628587749 274250873 698544569 241717749 905283603 537213351 607869502 132883360 963018645 486476702 736646412 282867793 357865866 830635563 612027578 833733795 705751082 42099317 604057873 344290647 259787572 361737499 292754566 747194314 306692629 878262339 164184305 246337552 281668480 664861480 126855496 272945363 843022710 897221716 894111584 766331859 181576334 87547249 476616074 547236361 852573967 339232556 539319707 474997155 99355257 76176778 581009139 821140221 422205606 708357573 850182606 540387792 709792495 101903107 394113050 352554678 245406369 837992605 267875614 946318688 856749441 565404980 38150138 923462928 392943575 939953161 516252806 362261841 492921472 953222043 894769673 676712938 401960476 101688920 460683991 80320355 362697435 164388639 745143482 829589605 67838630 270786130 924325913 522420897 822052283 165039721 186674350 142344872 673480339 38892246 693845898 987988423 208142098 178036527 241776809 992328896 387064540 101677188 451838261 171280926 252628875 946566521 703391404 918055730 406507747 68826582 703969598 338838003 17427179 201759184 807965205 404732895 780362370 68815937 411165800 471747262 626162558 899279134 470075905 535284693 665082344 147916146 60819164 918678570 21562008 476489293 113309007 625674001 81823224 98526604 891706036 678673060 567849335 680506160 753046217 692036356 757908792 563703219 855637216 30964374 87945257 157927911 814863114 614250082 39689574 645880005 648636567 603575652 952426852 505752286 300114465 303310768 434339151 612223706 875082052 147293112 597573832 986250260 218476089 924187839 694963235 201182953 152071088 107352707 327462293 849697314 784152267 977352621 796795461 736382364 276042653 194372454 678365876 518889000 261519193 36310456 292255239 835442534 458011632 928902724 202266006 103530913 726940945 68240522 217510714 808227002 336288202 157940843 910080771 481721526 794361265 771126447 16273348 334507577 277964527 926827797 182273953 577292326 543235234 532094547 208093206 403616098 764609977 849930198 454336627 591656272 640311925 391950594 901643592 668343872 477760872 101561030 81238580 815373043 63861379 500378005 515594157 498647960 546366691 383963530 153926839 939908009 983208001 332003418 181225350 835369895 413534788 732449332 671634948 572725381 388548476 327969339 754864030 179983244 950638748 842294123 927390040 912749685 988139844 51926516 325528095 213929708 551662936 134634412 225511705 488548736 273238536 758368060 253242027 274341131 274701764 278756934 42133459 349025449 917054781 240866810 150484369 333139803 411931933 172037985 780831550 515165062 28425342 162118118 743546414 220139133 155965024 51493929 588751098 90675273 599975121 144683668 115565022 150192350 804233289 702037132 477964449 675224636 353457404 800967919 10696257 918529258 434803667 170111384 495510756 202198787 71106108 217440855 78212740 49751431 783107588 124820777 485484119 684246235 863951364 365573074 610025396 821616510 518200380 328218964 78853445 729758743 330196009 312963185 8998629 209862156 433552921 217740380 69663357 319777090 956667966 90745318 6175167 120368098 980477339 987677762 382723848 521921139 763392833 232055977 393932824 804840758 267478639 89909428 351220466 456981054 965643043 414393779 526631565 212129407 311253980 257524157 65419376 527367061 709130844 487508668 605966362 19811962 342699182 119043381 560860159 192705514 105840952 213774023 427659339 960012977 680378133 238918097 458583605 210549318 955514857 787651497 935252014 331710821 322912646 333701521 204411480 357327613 292007557 995107977 707502803 596496691 440130099 732709829 338055985 908315269 204695607 504470779 151426478 978070827 235475584 307267261 283656300 777101951 427627615 341985999 806852959 656740630 924513204 585622419 458833664 845346604 723923114 77496046 534619095 106257601 122577226 748569248 499775646 250036155 904120722 280836529 722314488 871938809 922488033 290640346 812791410 883539642 251003666 405433191 447279703 904010944 128692144 220806484 833262741 172115466 303726474 41357603 335204418 851621806 945947899 827004124 691737468 628870354 236776338 966764969 769267618 42794221 451245600 505355096 576061336 55187758 903168853 418824353 346066806 841804987 766580291 553270699 135854206 856328431 603091787 112131572 527459022 335522873 289387250 676611395 652977873 711702587 281875586 555058708 136610575 524156321 907332268 592901899 507014161 284254918 523542194 210351354 533255108 173519759 279684701 250271692 208397876 668352504 464237960 661778983 940676925 291728904 880891177 43967799 542860192 174755605 3177286 613217258 921913602 231130996 748907186 343333078 285529070 470400537 449638059 750277079 37724449 498707669 429042199 585020080 830743665 907959315 716819928 736873215 104059276 961774895 877892235 380612615 560945963 395575241 821332981 556697941 939414903 257173882 608610092 973052690 227741282 34234255 389927600 618323428 226858587 589003950 198433605 415892560 21743347 654640917 707130105 159479252 708031383 74636215 907777065 377462230 333321100 165834427 276592006 890456673 501684476 545942635 673466722 749073652 861981880 486034372 867142922 963068046 210828144 872548354 148237434 365202965 703335030 946410917 137812675 633772304 971140761 390049838 246981807 826972457 880299776 136326300 548819187 725690044 320084705 467401417 154488706 976560458 407925409 582943010 46000808 668648006 212445720 777880824 471857778 701929072 250953736 864784292 422615346 699672266 722692272 376616520 757791906 481109568 216626732 607552695 124757191 701585404 459618988 901904722 861026118 525821009 111167832 285305019 630736421 353864972 912967112 522564290 6570185 577444245 88702063 673087293 258273557 540391347 158818434 79934542 215704025 299731078 130482900 872089897 651206746 732771194 59617379 627846695 848971107 266836199 590483117 402137730 712412705 165539372 863206002 123310054 926078756 384270774 919188985 872503593 548480600 823956084 559225311 986248303 266385961 595574421 788514141 680317809 216591510 676426436 435468663 100528664 745293117 161450323 323190610 603504129 318667014 840887547 250543439 679334708 547724286 116191624 150264183 889696705 435875563 783993169 743138063 289975109 546472311 681916567 562761457 610555733 114794326 929334559 798832112 828352184 359625813 73286852 922685970 582810231 8906952 46199994 906840097 268867165 623014128 283121899 365511592 218842313 499009170 496330174 660469015 954976197 471043095 682070440 147207121 281446195 741031958 851718007 180143535 844385969 929971127 680378678 804120440 761771760 967457071 232240301 799415497 834743346 485603725 625995925 376449090 475256768 47030845 747479869 138638366 178982972 384497182 110214496 880906012 24586341 730928946 217247058 76167727 501204092 18848385 650651778 59482875 468404314 393320376 32794886 458321361 373941079 270044198 812994819 472566359 793807971 686157765 82739993 795557405 939968255 265796841 810307287 94159718 747156443 293784660 636193451 375394028 592102690 143520586 425757198 987989393 602281943 536927940 405317901 353200783 700951623 38958894 149162571 551548177 314815059 628894697 587289703 496620488 15133169 45068998 418854917 287565880 569177527 407832350 972411922 699946201 811141418 113097179 876156349 58473039 44689341 895939779 500781307 312227000 367777397 207224492 379049517 322400719 371666569 242754664 787550556 746560871 265666086 252405809 403764314 955308613 17530981 777445186 845183754 443958807 673182806 619167239 644403371 465848693 219675196 572981811 897361095 869112186 831873943 824596942 512968363 549175785 524492769 467796164 270811255 835174168 259551512 74072265 319375620 816277447 81370751 383682474 527840198 148304084 562981872 5647345 483631477 948405968 294256812 692911654 252806395 381800603 338114203 28519907 45948631 983634185 370992413 545802702 79613083 974870350 367511158 989351445 173584491 262938729 235491996 29432303 101226181 598402967 259584915 534885798 371881287 496989939 737255183 919028096 370372143 761282446 220712442 48193760 547167229 713201357 841229779 847605323 814572800 889007213 568032719 407088009 543418370 15563603 910183258 51169812 603313845 226177526 809314944 922380595 557322273 136783293 697044895 633512587 205948650 708521952 911266408 257494731 381823048 970486939 739761997 470412227 391864894 535943851 963577041 53728842 184263234 834655014 496934024 108947722 566525162 216161295 272825908 70082166 769345450 859998498 898685958 104067808 490424957 301313599 740879594 781334737 416447839 304461215 478848415 17742518 267484832 789957875 791627971 305798289 21474376 268741647 728043421 982685466 502255061 511556286 443438088 241091588 853900674 550158990 398766335 961346517 493697750 763383248 781981262 11623683 66388885 553705751 655747714 929806287 617328598 24672418 562989808 227415432 118959448 385186500 733839519 687823994 345960761 46068908 193502223 176444759 733742363 433298175 968612368 32960839 519266711 746713445 136634601 708424382 314074479 634904746 975920452 242573439 359138780 690307425 287215191 398545964 845613736 611880061 378360788 163755579 121877658 586255202 467888634 571324553 529079905 910710943 525434913 157938032 96784896 803091591 465683929 45755545 4793654 1403843 784366547 960824145 815196280 503286338 221235242 386020211 729486663 692739935 540352297 938133555 959391871 890870223 936832365 824708155 93087465 546555901 440222738 297777369 103435366 81352185 186160129 153691460 702709848 808678802 280159033 138460570 285744058 187228262 865377265 314123018 882402393 292646217 838963899 750168138 357902512 21493304 635715624 107716624 329890198 131380944 313518284 638812569 743724174 962479195 323741385 507653687 601435401 160149861 924295606 368853579 190190102 483110492 160875462 518609039 936284034 791860376 110130320 537240242 78335040 408687442 370518799 587111906 147933435 117720821 142903264 915088436 526925505 703278424 202378465 402160279 788984737 346152953 673950260 952881721 373502972 70443514 585741636 349641595 66126108 551408659 951661750 305416577 945403578 410136365 32563219 350761120 446343059 972748607 830961317 337157939 593933072 334279510 642046667 550507734 204004700 211367370 363321506 953760595 362542418 5327932 788984336 229422370 551939159 560954 865395417 50116757 837666511 732705358 702420760 94832390 653843989 955951744 564236915 934085392 242622580 768333814 793464084 955427385 71997096 747895792 645745782 714981033 385892979 334138735 207563679 394144963 656270207 946025931 461342981 670225895 701749040 3441204 47991457 746165066 528646487 449282070 848681463 929392474 979151251 532657918 679135911 992393209 287837125 554652270 871912098 462203557 973728500 508344294 166995089 982813046 566435603 925258628 324134157 27758423 432875488 192187235 855265032 420692386 198765292 549734286 9557416 615747351 381166333 82236151 105878211 618431705 963824174 570505954 767087997 363373935 802116466 313820144 796180071 92424364 645137744 788220756 151739316 68679341 384434182 924984022 765533146 512059762 735589892 286091767 333737327 491130315 981050029 995851078 561078524 114287980 602539650 138642753 151845737 845836705 966640384 919674804 716455396 244215568 325284591 481813890 732752422 809518355 874109450 911488882 483796350 434731077 368601590 284867753 635328234 378116772 474840624 274830229 135928254 570600156 996701907 602548735 895442785 114537580 599514476 401610429 338062045 780943156 534952008 499749847 529793235 665583760 722942895 788415418 690156377 451458346 374688349 522159560 382138166 719784090 69949171 955219226 692352631 730577073 581513735 96906779 832363315 552823566 480183965 66380961 868741182 168352864 826400153 108774350 464740359 667441125 804937022 588018824 690372618 3709055 403110179 658541262 570059873 58196279 729242845 225145568 467999380 766362134 410362468 382087827 622320972 55815673 130186938 716740132 5358211 929025836 502067531 878761581 246019335 138150450 569141446 176023989 125185910 535904014 770050081 984283321 459159797 995248964 989183487 996288773 410765295 336190559 625317471 765002280 82033865 210176742 27429111 643517677 495313712 564511443 772822772 727018178 972969134 184670097 176036904 910880008 190900678 925154252 844147214 397313453 25784000 413174572 905404411 208397935 991779084 974250220 73495875 137701659 462416840 347691605 613167564 456290489 730908658 623829871 169475443 736382084 823236937 710576807 601145481 478901742 240875234 396662933 129693118 699857658 735215694 839438237 842241247 193707753 925093229 444535992 363463441 827460019 735437180 30752730 206594246 187409122 377119347 525474129 103622004 828783066 260728248 270990159 235558793 356604382 106249476 305156791 761825180 13665235 580555362 63201965 458116123 656448610 363198297 962961552 346626543 458232687 388766398 606221259 524671762 988821003 332956649 703286610 566080973 644906310 952814493 929927749 99543164 194964034 525316285 715720474 198767090 837193510 804750368 134528215 937033437 68437553 744582737 403085113 319249322 605017149 255689286 254674769 789084599 609785210 596766061 285025894 359993425 819670362 258602133 1871753 241970149 103822208 576399664 100973742 187803162 942396933 519418670 45384081 351562750 739439336 556721455 198077876 499880950 713535154 918883399 831314099 341893068 744712083 561455669 464815531 853906204 423412089 756702277 43430855 573772105 248186614 780571020 472476798 712941149 91941784 960218183 996486672 854808137 351253058 348207789 104012105 639375505 70869943 207453173 946884483 72809610 738163393 168798460 1098042 653356607 175032675 840727197 730758423 135830032 4897103 626778593 81077415 854819542 395208016 318901867 438147845 833233691 351417380 21352827 661209486 515509966 102223428 62343527 232920867 643656248 175462133 849002617 853667906 254276943 601110109 260490654 745814216 516869425 758366111 2209709 8597974 279867865 228858682 124908999 730658201 71840058 903093584 227981663 736613961 16107807 7826256 128923907 66478081 768636007 719353892 995484732 326914334 634358174 1738884 666571190 869463072 438078164 91907454 252730252 151171534 639806802 343295955 571443520 906112752 904907231 503455012 950510197 461044955 637185335 594379526 29202192 629307018 55567945 849971305 510769779 294241161 808959685 556728664 939594669 877397707 863716271 554059066 228570930 389757716 322815414 601744808 611954288 55327908 684706200 854109501 589816661 371199582 857610084 23834948 773633950 255651723 29192679 183326466 265722126 105865266 489083635 786081553 795301356 851175357 43671161 840710574 53664045 654327318 153325086 361417039 820864718 65113166 969663540 547781265 663852013 15577067 530999936 135459499 814625371 229526263 581513703 559648852 129878134 817064228 212351894 254907979 766324811 691711616 23565604 597549493 588248670 820512468 978262643 963928270 849387922 627500257 278022928 527390506 255022272 191738110 17615374 156445850 49291441 132042200 929082854 760977459 802905586 308905694 694965762 601000903 276190508 288171898 732586029 320989413 335964101 238467054 881192721 837718345 91714198 195684210 790950124 412986818 96466423 438881731 63474160 732552103 245784499 572998655 318440892 748695217 596676199 441692021 480461103 176047596 162960036 62158308 42919036 115136088 509137221 536131718 508554841 359315976 731081068 207668154 828460579 383784979 554612204 537387281 937189370 713226588 360178170 340520606 848698089 438019988 236528306 200580834 904534006 654183296 178357681 385256053 687018455 450020069 136634267 659306870 855036078 255402247 447486862 41600356 153201331 226552944 694889410 678282604 158458217 243425293 701384781 975084070 232411796 510944490 411148436 301230342 105462800 61395479 552815887 435163024 383563906 563482721 492800991 402888344 703518382 372767366 574835810 292260119 253661732 118379153 462787087 864671230 134185619 625184555 928671721 227123714 399731330 891049949 770711394 750645483 87155298 843870702 225582333 465895950 437813109 614039602 591031887 675687898 952219987 670028936 125467377 966102770 885870062 958155297 670659802 357951717 458655242 412390086 982489453 866579073 573527866 525089091 633577352 151099645 855117254 851472906 47765457 852832670 78133855 462494525 754395592 170658188 422677367 327048024 691041022 425725108 787026113 910773505 918579948 100853848 805288813 485303999 855803661 455159305 979746826 478743574 932448798 426780248 855321722 521172021 158929232 142131610 591946686 574994923 254265110 14247717 102670845 400662510 257365296 248852163 424210308 181598904 328992750 984188649 437207400 113682937 363673266 787340417 733032186 326835709 889053387 168959990 413127987 521157350 927710436 703752759 889739843 907804633 198648245 424644274 952264935 310027817 450962284 652208263 470651376 930815146 753762603 20751300 309465985 74101875 841862512 703717920 13580216 919673177 689572034 220839005 51236582 314544473 462496972 468879059 509660507 709763176 877475427 132324880 180150214 423192395 404905471 701534551 579787182 464424923 444171369 808701739 227456844 449307938 505708081 199521199 145155662 898237841 549297308 790305550 518702348 964532649 743229496 619194900 615967066 82151200 802393012 474407020 503844977 657027708 857897826 900686028 987399921 522111686 451909365 417523460 60885334 206789209 730243846 350801049 163496415 682928682 592577730 223293436 632047448 944204579 995375025 22217242 736201825 810682798 19356284 194272688 212526600 564370031 163645150 480184421 390349188 419278268 947515355 126148993 421126350 270822338 32745760 452461737 78857511 615539543 585752075 873856223 268776215 484564878 330037650 503836290 276024260 566385850 610166730 994035892 408607473 6825470 166115251 704229845 542350911 502453551 223047171 730479939 19358367 995939870 688045760 359987032 192398200 866627947 202394465 11881423 672516410 724942303 966451661 552841014 959866330 480887587 345241163 200707336 978415560 117243879 405119634 456551268 742240390 581805959 356534115 949554941 421331169 91778579 133159877 42574180 122053169 685070954 991062354 856382419 978290829 386567939 260703370 353215580 910979470 467199996 513483056 169125631 273594271 631742525 808354396 220745395 609852593 94991851 127754302 213819204 337505598 240194129 326842712 749111906 540998963 255608215 382306837 760975668 878345595 37269817 199718057 941567964 718022656 360334225 902411914 469952314 154318198 329458196 428390036 844099824 187054330 891840878 709830480 508688391 562769605 362768183 359326156 184933398 606312980 276350391 79937763 59399512 953161479 66817143 280323204 475071062 873137 120906917 801508960 825026768 22358071 424787359 50832618 761878464 413821337 183134039 35236772 870519770 149659972 806936180 523532430 871403748 981494862 994933613 978468337 87097470 51859053 663364461 444588068 681137798 347847888 671533519 465403770 373013141 408013953 101743175 885196791 136773308 125692521 80010591 988324506 908978993 128221185 346622991 387487389 779018372 914638407 566648875 406811013 868695327 921399892 994891484 966338368 449101954 432386682 224293769 647715256 513744858 30055004 294812746 213408500 250024956 905414682 504215538 13158862 793183025 777606331 506522948 316200628 287694035 854019445 261566536 469549320 261514793 704976169 389574560 897507605 463558943 214900803 660171232 753962394 494751187 893757637 301460356 136903013 986617158 352061656 213717116 232444737 641006191 603300306 540151388 408969606 335136645 474850494 630114925 341396054 641838514 975420565 323406632 70551827 455892917 397727586 146098274 376266468 967878012 885635875 927048437 261623412 817078830 675001299 334110046 790422016 632953377 180980323 507289886 136558376 901915819 379107147 504567408 38207130 671597031 919615390 508041084 445077739 974255130 803257797 400301543 798299897 496331080 35786245 920492087 416439046 309759762 305958330 315038430 716795344 392405141 942493222 631120605 694340294 408944582 630398526 150968518 307035052 790357364 174233735 87724638 546183387 866223615 165465878 736259912 546138012 347262530 202001175 769106130 122921454 169844333 12390798 66013044 38607593 210967530 710454415 398238343 64649037 721883298 751601138 400401378 225258195 345412855 754721508 993261688 727426761 956735478 993572300 675849010 857221521 923026211 953334354 304372407 801443890 900141427 718690544 394045926 676194092 365230740 190015807 959926165 197660682 838959679 91818876 669326896 871212404 895343282 663136323 940776868 582852774 364401948 59020739 127380221 989512118 647098196 348968749 654444385 85381226 915815884 894838359 579284710 784376580 985223362 479034719 716154556 939465623 655499922 372687051 707457363 13117330 658493624 682592672 972892914 503184662 869833153 400368176 453013844 893189901 18942155 241678174 886807582 594117294 560082112 896476374 379865788 216769335 368626199 280377632 623553437 559211592 779321582 246662274 46588432 86038302 863029411 266827196 150605100 883815951 374469989 74166464 620486562 522699054 996117654 796473058 210518027 478416419 259215819 905143568 739924114 938010768 788885935 388916355 190245205 84150297 890204693 614364593 474330108 464062136 668901712 363359209 185763209 198571347 747316741 478114147 748837171 886387098 434963435 217083436 272931735 653110496 651197370 435471176 315993587 263384073 634997183 480866995 98099198 170884562 556408557 815552006 185449206 16753611 637491292 466844672 309652406 653607467 315459102 799929175 54173097 295154803 327611005 7575915 241788523 182911187 135188908 121505311 430402217 255515587 997055568 925466392 469162903 738154289 935059411 67010698 815851458 843467500 92038846 348066680 824741738 652739391 481521788 917115998 721742250 820587290 6211183 922743337 158633884 154819427 491577185 991293751 177058789 840598837 585976173 787352084 136653479 227423886 644686608 745849778 128600795 53716080 635019426 822485898 197065679 696312965 270296685 119355265 190830772 672740802 766008698 310022264 379901273 698940777 323557927 425410689 233357378 414686801 239375140 329049682 170073561 879654129 693426784 366978228 365703668 203601801 368382237 463645220 375471130 849974216 847125416 322626607 55266571 299568216 34852629 696128822 403047922 608316971 645131341 207607948 449742078 364087835 641220904 864265878 958870938 392655952 581782662 940669136 296529160 21554665 317134615 486390651 372054055 894348131 769911471 245405673 151420993 773833518 363354376 186641755 14597580 691159826 887141161 3882142 870750097 612621310 791360244 469712526 572024073 741952779 264647928 545675750 351106766 459229178 72156962 992474566 437945498 90116081 231146816 5707695 643100606 428110812 211759548 479588050 646560731 180248867 30685540 815920622 167356597 466256432 76457233 985924078 404676297 299911161 805138851 675224604 996697157 214013692 103592372 67598173 168310596 861546572 708740574 509423132 753368667 808849196 869186145 462963678 766734858 446231137 382329923 957164109 329808176 560323243 461962987 992328794 813807325 235261085 681870618 141334820 159777303 65719604 320373450 205430272 777576312 57830274 800531228 880686654 354068794 107613955 143209420 556986027 539487058 736006152 783532798 143757854 167923780 100089553 976358149 583056380 977445818 288567394 888792558 351134894 440669882 372491275 846674928 6339332 39973318 312725329 802580522 698456970 189727260 374450823 209737791 69351216 641484058 154292258 782435062 563678454 995004549 562377185 997512017 789608003 418455103 10006558 291960259 439610099 9177916 379936112 272282825 520196333 393352039 450366837 208243925 239983959 908806267 814523740 614783355 170170993 621455746 227230491 778904539 218981930 732607555 582477305 33499186 815315093 882414266 560786230 932665948 623379029 110422018 873081610 556035718 856375612 830794744 990734910 537848643 80355790 356728676 832280183 107109070 119566259 93713718 321475056 795230222 41410201 229305439 395239019 219616922 754031066 441283741 724605461 953489932 24881276 669969251 41094436 212317317 975966168 741800261 732798764 465818908 182877366 568240708 349470566 50426501 764372068 203976696 798598758 915040349 739439957 583029358 686226 255247698 415055924 924147666 525338682 656514650 356493491 615074011 254287784 955493847 689478414 610962181 714495607 665406077 62062755 754497833 77610220 31903553 658445300 70039807 12142548 972102728 26261975 228949641 945370446 240631320 737038174 53488755 856352023 427833267 502960479 147330621 655704395 568762421 608061038 101214987 212007953 69668370 879599145 184522890 882259439 262879775 729922065 600746406 831115777 557437063 104567882 519225859 703313664 146912646 896377734 702145876 589047610 467331425 369329382 481025369 248240350 228826610 776927569 49282028 77974450 194297542 117178102 874104996 381248357 713630896 353351548 897305818 299263246 957094993 886922446 147873072 357135450 340162198 614547013 173999037 200587713 145604248 405295851 728756063 508148765 139318582 622335801 730539688 129785605 415820039 364103105 193820585 446807534 841043031 502355077 460549400 893193708 780503541 725983551 986783538 557429365 750292492 184813308 33716010 228042029 146322005 637032264 92666366 888658996 924052039 747659924 191430213 457402421 35719588 494788744 594621758 284070091 277808691 438059986 780918085 892284515 536947640 928243711 928683724 960082973 120266035 533741111 860099611 816363246 41099623 842050703 766126699 310512167 219756244 775388570 53943522 329070383 738853043 152252916 117354560 703544237 783882195 203381896 777603505 870464048 831768935 633585523 817665304 758156428 855042694 861758912 850093457 312561025 671965248 72569075 490786281 931011627 322649905 946110486 875075359 677871883 688369756 433031230 915155149 170087913 440039994 872908290 149518084 876286307 177838933 973004972 455820881 961836131 482344269 726648224 224734655 516662404 443784346 998130678 434157125 921765656 907403931 574034778 286909183 405372225 408366389 554694192 347694397 763182242 383508861 575804243 618112132 995282036 736295841 194052636 404315355 581633608 195012696 225438390 231785491 349188090 531132799 604207811 774877997 345810385 586264738 258398778 514649707 975928752 992643370 888227649 921551082 662039607 861520595 973816843 326700654 548095187 333829393 792843296 620103489 917081876 528197380 176733003 498372450 765457436 829547479 446415894 84334426 110023654 730456465 443612054 923466025 776139345 567175704 837633145 876261006 121822328 856482662 131890488 463716007 837074503 815423924 575599108 219947717 454667434 254532739 707922265 850432233 155017250 773331814 764266529 288091489 450719756 475390587 937310015 164886973 10083408 897781074 563191486 969728618 214077422 658662457 88879607 70450900 71811754 861960040 675286643 78658027 670302919 588629650 431715421 982113196 774805165 949574425 107410780 503032538 233068870 355406011 858527714 420569310 698143855 257375235 893543946 666319928 197321464 196356919 799207926 935023287 197670932 700697239 935213025 160196676 676861430 551411493 530078996 793081607 186820323 848534574 147131582 806732429 78463957 174860180 20160353 383564930 173404384 890278491 12847188 407853363 570893243 931514841 875819345 20022419 529729985 521907771 205741217 457124372 435831780 342188748 231884304 520643883 826491975 757954486 752756155 882246669 680720269 414274109 197741215 444562178 986724773 542512937 134689733 522739039 789101411 8701150 878391481 207483244 482025822 733909437 272776046 840763093 360239614 451580450 113510399 549962275 596989077 230102695 664817783 721529033 656366852 415055381 605112390 58184980 129675293 544625693 377190386 409095406 802193494 630675519 446329545 474922237 59249996 550597147 213222672 31424277 400964987 635685857 957122739 60823605 724181645 672656045 801181364 267862333 701388652 816773909 756701188 955601769 274821203 877131520 953291646 603806014 660385317 513867187 64844711 955700096 843191897 16258182 309615742 907412536 38407275 539734073 390744437 904677210 331893483 393443118 140467820 81868147 556837603 923159641 520953314 816961539 781291323 775372923 533928154 627804546 387748568 801003418 336891221 715427396 515583629 308735141 373930156 593119325 869443067 836880773 233726778 46378571 546906793 53534959 505137853 386653553 240782546 806480274 329598608 308845149 764313095 770444415 260048182 531002412 893924674 151414769 718474030 492190791 256553653 864478666 957561936 635969099 720834109 506355111 318432690 523795545 612009987 575211220 84062872 447191695 7224404 502606625 33756354 373520492 92323854 799926494 443918705 418657410 549057573 610790170 109606405 688574218 161973284 106122301 508283966 684386387 595935192 881400830 523556926 548421743 678184830 726502463 201785812 249616578 973449801 454948210 411898909 40687101 200012468 957860606 113342260 376893924 888760737 846030694 480503463 66735712 585079775 96077891 35267743 466798422 17194412 890210103 148456984 513765776 846180724 200535070 618165436 346909079 648035955 960118289 779816537 149461007 17721051 42241973 589195899 83702082 69443124 983505818 828682305 241108811 660824151 750547878 573128920 62244049 242174212 229812909 882972302 464424379 686671348 359979793 811514242 90755863 516441131 82142358 42416046 467519908 349484288 591240571 32327112 5254378 517212487 335596808 480231269 578072086 711492072 671623964 88606666 869464027 626356778 910075519 704337384 132862092 718152054 331714900 703219310 632523406 928322820 121932610 682706834 245678333 525881542 182677594 654890399 724788425 924440161 745402803 610241004 746292448 549198049 523466022 262704284 590379434 191418043 299155040 818010050 646277095 558969161 429061609 519270209 17392316 299148397 564471981 839285369 503529596 311715 65524704 789532850 68436471 761483990 898847054 331045523 907909642 989606068 607394715 883658019 789425485 74127205 818466464 621245999 37057597 609450695 680546050 882599092 804384503 620105419 352993760 800287305 920118155 33068526 46253324 40334499 21811490 570819441 38266316 223329822 383303495 50854877 752543078 251173456 473320228 491122792 900545755 26736780 837599499 775810812 64038166 614479263 143382731 298053433 16019410 66416106 397143614 998229145 581337278 44031356 976806763 686293611 486079684 334616955 301265036 912271474 148231442 693902370 884298629 95177061 499781803 421076892 753490835 729224405 729378835 613336660 994277581 749717068 40275750 251064347 908503361 183635026 101362538 729211210 193520981 724647876 7967490 223167360 987520712 231831494 131979492 897531255 800562815 762445817 728238560 889877086 891079932 148169918 285802352 451106349 321453521 480991014 629276688 782790576 97179987 457870450 272260098 497076246 75016532 585171011 54249621 24863378 704560441 62221066 76107839 956167048 400966279 382509327 908206146 702392980 897577536 492693871 930309061 223025784 800601113 739876371 160925147 757172633 82973562 323576178 298738817 199535128 983539462 851514203 103293762 180818436 374648956 969327938 286009792 901311550 462782020 244511976 267311886 771335369 304860488 935242575 296150797 724820649 803265757 468748708 10109770 298695298 297117021 780599647 422970414 746882565 633289803 495368510 687161983 906832259 421466361 412642462 811645663 584832297 641820753 8171924 359970982 906129785 741083005 460178900 43257240 458130711 19507135 647743882 614811227 512767024 258228070 47650474 441778537 860764940 335746954 322407440 543304410 55823227 682606273 630401869 3046594 602130038 779502244 337161127 125212928 286408102 829447226 296405854 243828071 731241033 800755896 711174450 564409960 694319360 126985870 207692924 633045206 215101607 157449381 132643744 152891330 346128940 497785850 317751853 474482650 270868297 705004850 722475822 11089121 360068813 929150821 567748466 656783639 153947785 339106222 503260161 957488810 464922659 265280509 525238809 807198668 957873945 338672943 955700199 376272667 361958239 11862308 592497649 258836607 914174788 681506183 499800689 442683071 649985063 720059516 21049137 363922708 850542993 326215821 876558658 544370657 109068324 850906827 807829815 366138619 980032633 928051147 41910126 17124178 757351639 623106063 410125769 994467937 880985662 761161980 146746325 904723717 620394022 680335951 416488525 387711324 728845180 664985993 435347066 221243207 439279785 748733045 979721396 322967123 294806069 138711949 575137873 589939427 191994342 608615413 89625863 509135305 93961468 964430619 293019398 852942852 221419236 851327983 153335738 18267952 679458987 947234877 763190552 2468700 116669558 411930471 58767403 341513172 348581114 841059743 348791206 163287506 136520896 407235134 419021786 120638606 417727340 969003179 189037854 464682047 490454034 21204838 531148752 831394662 560513337 522394910 260575426 604258699 168198491 988280656 523592755 648541215 300978129 410135498 693356336 942930813 178068994 701075539 70213367 267983020 558200336 633306962 934776427 111100007 533700458 754622397 901331314 110505814 710988006 95278943 496299553 199225668 288498377 810966883 412007265 245488597 253263755 488673601 136284890 979813928 987627070 866938464 423906764 972351107 256005077 668889001 68672886 242203319 817297689 544443247 902589194 542810014 480597057 558287061 531705444 431673472 648657210 193179109 352384234 942354378 584182997 398421996 595207261 190564528 168626846 4145873 87012192 175461143 531191514 446425664 770756307 190765495 80393729 89892556 507583385 984399446 756402328 678334900 394886024 197781658 907835040 894338968 328313278 937889329 541264939 842945613 880246665 994659213 379987586 54323795 4631876 343198056 41860565 724925363 139987131 54671001 64162402 344544805 805752729 375314362 327882424 729199719 453254545 641782828 331150298 79948633 838928378 884883715 414354241 215924334 110439736 603952746 336191054 869587333 214312360 799767126 858760582 225705313 882332854 765670337 25320733 170211629 363549481 573610793 942706960 863127151 490021479 332165158 355221902 426385746 7790658 472264062 684589944 952587452 553180887 385678952 681059943 624653837 362644129 205289794 270316388 386856729 550513250 152411987 210635432 724325383 190898557 450285752 775466525 44081942 870281391 68201690 274267655 802686540 164045918 775461912 345221294 648628999 640596760 453620473 942979234 491999874 444728602 176112103 655049907 425335710 50941495 657099471 345213409 768563311 417509751 782831931 82315459 313480794 426811141 988700507 785677794 463373795 506811973 115491755 870659390 194400277 853824854 691910477 21317391 824865459 366702500 21898690 473785403 384465207 126409668 706724976 332853334 265017217 159425323 267229052 865841571 231223141 353485054 754595103 896415285 882609996 615389125 386827953 794233307 25252439 953812476 18997961 136210792 83688969 346467412 557440680 420624334 922571373 846003681 562360097 990148514 135166299 652757068 613885969 419701985 441620850 534055878 649534534 934088932 957125261 148448485 598854319 535210550 241985338 707270242 146294729 575888152 17463391 497392803 983422784 990048860 796615444 366726159 625690203 426748357 132526154 938417991 170663309 391217789 897968551 162661291 508042887 789173677 342663497 178681381 264427417 444574625 427079407 469469384 427043863 159291054 752041594 47709243 960248733 359296544 49044655 186556427 133433578 268979856 603256782 704238610 420916966 867063325 388713270 90954075 879657476 850746771 480845056 30856585 817311298 728795474 857809243 560876429 394792208 154337261 773088610 80271205 460820522 74899218 306799929 531723578 749369589 298223986 480878600 651611967 659951333 757467781 628980310 217126056 112466972 787514320 974771830 343296782 491825930 555697623 183947780 551906124 491093319 466156830 981086242 251699035 441542213 867906331 564056181 524837661 965534825 604918000 552197346 724252908 714094371 140971609 332236221 392242786 320548205 141100251 756939885 341515720 865981276 758587869 80711658 531808918 560888066 985884095 437597683 190037101 440207116 484857108 630339410 480839513 604088449 724513848 671042022 260585126 797467074 96179300 601665286 363218774 745792876 677059787 937103903 730905380 349152000 276429747 181368447 693688061 114982960 336621686 521473573 683791252 287720726 621877798 524285935 693272499 987652307 436193066 453203345 64064687 198452660 110769137 293688935 405327014 278264273 579958108 195631443 618494173 947383015 349750464 51458588 636349341 281416263 66769190 307915522 433679073 409420320 635362147 715743425 417716151 715668944 705016970 692491196 743840941 99319623 976255933 460602954 843026996 859415831 243541450 716815201 489586914 579929142 499948836 784449782 571523871 964104407 281704897 751740124 179353442 227875004 959878987 891455430 224166744 290881519 839954056 789575779 45801163 664132292 410813180 988751409 174186027 193352708 475887518 436840023 855895562 613944681 727790765 967901796 909982942 889543550 261226627 895118067 981414234 65445210 52433005 201213311 939683693 693296135 425519411 856648971 606273160 514602600 489805101 257099134 56987044 113094432 878561262 149332561 540048998 939035985 155456181 504043243 731718107 86621075 768730815 383869607 214458753 691686196 126901705 397706776 126264006 339426214 286042570 258301678 263800473 711549661 846297130 172981427 990370139 784906581 365645468 294444422 15369043 43920137 59432930 790672409 964923973 443379317 592181959 1909730 279489847 329546423 808549516 335587382 4749008 802281526 251056432 821912075 953260753 953224708 480346167 184607409 214298781 707302220 885203178 552853898 782178902 242149010 670626811 426168164 857324177 251569623 994615759 399813682 491250786 201128862 379882549 39481001 818908546 521840774 619671569 290902184 394158354 418003175 725590791 696260679 340826004 342753238 488792263 129473259 587973733 523079386 759625185 46446504 285742799 834835529 23352022 489853116 640303796 322900644 405326789 16686419 894930679 485074383 367822397 474318839 946340964 955657492 244155972 634064112 214944984 341970567 673715379 647596086 474349056 233584337 259016810 305507201 643949512 764845883 116870602 734935022 362033341 116097531 54250070 161533116 191442493 545430520 562332813 204991836 271360623 632783026 59007039 147268651 633408147 163143052 175610998 135640113 330134771 274509854 150261186 933896858 16749177 482469499 605596768 411570294 908136551 753509633 741373615 161679204 411997922 710110470 904373793 753114553 902100543 171444452 869007914 339349301 135950143 344988118 223924946 109032259 906549797 478760351 47058428 448088232 486673786 607259588 569172459 95346138 173250181 393226564 653380998 716950792 575332839 305089497 639740618 554286144 349060389 857184140 373922662 640323794 602696811 143981446 584266335 774299334 237956789 500440160 605984261 495511795 340503380 926436257 739972757 607368510 828619428 172467341 71395782 496012939 486742298 332726132 194042491 286192390 997407126 431787506 523088039 92924459 101589335 730866582 366711884 117063739 195812037 61268267 101360326 103229105 268251233 720016854 244027236 322321916 273219953 969453074 436180699 768826248 997566194 17839398 348772636 924512033 627013046 364092921 656983166 221910093 253442500 565150228 386043763 608400842 693432377 511325502 424071374 977945598 985327538 4783109 218182361 770054618 774845102 287456347 200071077 287377147 888862444 482177386 584034240 978906193 949873881 38715547 279734457 955948373 793903556 598948639 2165740 521797268 730670616 740084400 400579644 374805342 946776000 901841393 221961665 591463324 793992260 266408596 632103473 871576030 925771393 786916776 979867478 673202916 524738286 213164351 322721353 780221776 384623037 15852162 251213749 655693129 342258409 910370285 938321404 829137613 786559380 425559458 809510329 863568524 652838378 989643461 138004528 463296176 472445921 293519039 533617038 223620836 190673048 211537577 40751678 291103493 331410590 270781826 746432505 420974781 277760348 382804153 432852989 737140984 444951184 797990137 935991347 985365311 421473238 301624816 581209953 338236195 178873530 691996453 885890015 554630266 980639011 617229793 176285793 858926454 759358035 858111909 56659451 353774619 875598193 862160923 166446593 73083986 299345371 847301627 177667853 919746838 151359694 251986274 856387024 228933269 110751980 468654618 819660619 472514167 143892468 874113466 881971155 809510766 826436225 863121791 170724724 370446215 793308370 17470297 124954607 436318001 445787209 560766098 876388069 702058079 372859592 655991474 430404543 319456975 661389282 689786414 590335618 673260639 262666521 40007475 989307176 821044910 218275935 452781815 78818596 876828395 758213095 73394419 408711249 792838874 316275831 371520090 274659986 644135643 891968024 801664547 6050372 858019236 33700031 537294289 821142804 672385239 344480489 213054303 843002724 871571844 60307287 391368903 901183826 126706813 51003269 387993205 911169334 611668658 640971600 339873646 683413298 594314400 427981671 249402556 880759270 525568151 124497741 846772928 933962216 730882039 959377257 164666899 60675908 966876765 830161529 611424156 785800235 315961593 737395404 794449309 289473278 45783179 25556249 833694067 833380977 160480952 521509656 792975727 656180565 702209327 723814736 449569251 545368637 690691250 297442125 481446874 754329352 457669209 391456615 134747242 796899145 738778316 597839677 484539439 500545016 70928123 960617085 457028939 785315166 237004829 680453338 464303287 603713745 488150044 223011110 177389065 87627662 941939163 37620548 668907269 86735655 368605201 449146519 957996459 106593401 945079672 667775082 19412934 369365873 224079889 594045562 105143211 675302005 563138416 467223337 801597773 840189050 216304438 908873921 879519883 226774994 799537395 145558002 356905505 956810444 838741272 490110893 386547748 125895956 96348362 811466242 671140684 840004339 862451373 319149161 197746874 219811073 877068469 295833563 194288569 357005171 602281368 939137427 854346380 63787396 326606780 32396483 671383480 692339534 724356172 976205606 968329390 819882525 109170330 893521179 719776 241183862 405213599 103130462 234713373 161414195 808020132 129520750 321292109 97766240 568234852 291836302 626494932 269703217 705148665 628641322 639695650 287234107 3616382 788851028 611843146 247475634 614370355 536954380 344446727 173930846 432177986 491233779 589772873 215413890 113324358 855372774 496414922 662282800 993341182 527631509 480264113 549593993 485236766 16565650 222002517 459583332 746015110 979230842 962776345 803027526 807113288 722909522 682053058 496993978 854921236 848950176 740594474 731063113 687344406 152481035 470185796 627305533 117687875 636833340 919916699 557412795 840248987 880812397 995738675 578222991 224359826 226748050 339190287 147725759 793142979 727666672 587248815 986847353 287320464 3135205 458404834 206141943 22540851 681610745 740572594 222027574 902212382 982659393 475567012 728950917 87988928 476200757 399399470 612815916 232746325 995939731 519892499 997571323 926739181 417915177 434202444 283870735 655225385 904304278 246177044 552623051 373153195 503683798 607093685 505183969 221327117 827321912 242445866 717622650 574892651 385636060 236572264 831313168 655866435 581908705 731757864 710201324 980494372 279428734 245185675 88611139 377335722 833466627 186466245 284317110 759654419 230616021 782592494 114416427 255780108 553421342 970333361 588399954 193769751 699676912 125394796 737294700 440072172 605004627 137240911 958499763 591984446 357858091 660055931 709642196 403541653 643937818 414345385 828190911 956402464 110566140 128350348 891160861 75832098 816562681 858340046 532477767 576758896 646843386 52044494 55282731 845864556 1152535 768923666 824705048 510404035 333901516 573278965 824964667 712785126 146315575 47818841 813144868 835868198 896386616 417593738 862114032 245700580 953492691 278010599 12496435 321131283 671557936 352514838 547120570 680807640 85340525 775831656 596973967 653153473 815837191 654549865 974652693 577967101 822517422 712013343 631917514 545120370 183156684 945030025 664718392 118704681 792836521 852268252 386530349 361070618 243761509 35970635 501701747 75991870 580630775 924606234 150185514 549504349 288434473 395639153 534643229 457307002 232380878 751961347 825884620 714479305 695707505 814186633 455843585 40244123 305619562 501248764 367267385 878824111 84723445 532167143 251200219 450973288 866789513 583801997 445208886 969287485 431128908 276998218 572946823 324976785 371952350 615460565 541793404 462897774 737529155 471691880 558682573 383408951 489229930 340784301 351067651 368515490 96767861 912475026 929169858 133581367 165126084 686011396 277391944 680210111 104597395 783270037 768558013 124909257 790733938 628889226 417685050 11435970 932904731 91465456 434154269 181154538 303756586 801158278 408049082 972826135 534631505 565607325 391925294 430996040 117039921 946937696 842841487 577541762 651845003 958959562 203606215 945741842 247807710 983848935 158172928 304315818 924162654 298877716 626563842 74438388 395657015 796577254 882723313 664851867 94382930 948312874 168838926 684155597 836032692 364906265 49011304 698260304 335228513 800925542 129943222 278415264 946767521 18607296 806509387 283492267 674545052 545846186 529220923 120210005 156570057 147033171 524992784 593097491 658063984 338046979 409118107 351496250 729352148 101907413 300965126 157533121 13445172 213199696 834855085 954966873 5514179 911115531 559764072 985717471 552399878 638453936 251213850 441061725 29194638 4365084 125482222 509437515 553544468 784098498 235406760 489631878 478669946 807153577 587270398 21065311 685410662 589166314 644682230 779127338 533111992 243114337 910124543 473770644 921963319 771063854 566522910 125332369 971363150 545876556 960724929 583101709 162108655 857560583 611420121 690456836 419593740 627958741 711295384 564845738 461487890 418208292 974366905 41853363 908830013 788798814 781019078 381964461 908063365 850774296 234432832 922994981 376639192 866691410 894520154 117245187 519496456 37114801 465809306 956056056 25989609 716977650 960804584 134024563 731276490 225990418 305431067 550146230 278114537 396507728 724857452 824392537 971039080 764254152 755822982 876505150 904096941 195928733 341350605 792011320 874770809 123885362 710054567 79907525 36771759 590427988 842866188 541244980 938048009 158919019 118787569 20200754 963683673 683196335 971587237 757224608 663419310 612756505 118158730 753337002 138505417 717939094 833539194 908394095 246046525 695033734 224686209 592281361 125579673 553841315 693920622 118731250 721715552 516934449 77860977 416302747 30589245 347138743 431325901 883106719 66110030 725138669 481865049 55992347 281368620 822779352 58829740 232993967 492600206 418389438 497294738 9156163 796170084 807855104 18784098 206228106 769835497 811372525 952713530 44587016 237187996 921636342 296227348 874488736 166957224 848916727 334916224 591056492 3804871 765929165 430733691 235411167 236892352 341199191 327169700 793935983 859519629 63626086 698112148 685444424 656595058 750828977 835969271 417227824 545561361 322337615 355996587 131049874 536474270 748972418 235477249 202457555 786519353 149705687 994542541 212616444 616286189 187766203 973352523 904217216 524184815 759423198 764880318 219850085 830419094 792476502 555915753 614848310 987317328 733978606 624639781 979801637 515584802 636936822 43199577 930788255 831963264 533268734 795501625 800602733 305608658 348031871 307345891 77735093 909907219 362290133 802679147 795033023 952054139 122023257 650125569 423360876 561441201 231702101 212399883 816106639 288316884 155071329 635513437 955253889 739684268 602009168 334696712 436190595 414325159 980677875 822443445 648379795 451662877 61224842 736704126 63716116 168847426 275019961 513209883 888206399 464973570 888657565 603999975 94750461 295851023 503074409 212454186 715421280 283050779 810488358 327973192 99305237 560195995 951928731 153222249 672999472 438167948 1468934 460694777 60118315 140971614 344083285 321674765 357144357 412083179 57229237 839377338 401963079 728518527 240830978 566507621 804479628 516852575 768718967 569637038 666163318 315265988 239340141 307807341 73776772 614639338 524436858 418196467 318096043 342430728 588783767 296209151 608349281 493101665 466478743 121283765 946964200 517417742 691780707 277983874 148696322 792849000 387868211 850072439 281442531 765068923 203232479 145236888 369104625 538177620 581142558 922913928 302278665 518614159 707699983 345485208 95172019 500133314 265987652 674477018 316542828 957588161 409740630 605365168 550823497 319781928 614560918 494097984 924708697 492406605 154521084 74521479 817317441 778345034 280891717 229020520 47501789 69035559 423265959 419026451 260939445 59490441 66250417 975194579 527331414 117846313 583393908 754676296 790114093 194364111 889184411 290904039 790141490 382966065 899480180 604358243 542595922 931702585 377456010 353101166 868319828 593233422 834651365 411034472 103214798 599907822 379333440 742550546 499490422 364305827 593700835 857434173 649826566 845064776 660227348 61083183 70436086 313516473 929307970 115184248 460094626 384557881 356519681 455405059 225260663 938574957 89193808 256857324 498190596 414522639 417247481 663073098 725765168 557169144 109554820 815434181 326904544 596000904 298495130 948483297 649806653 164047258 48015647 588487488 356648927 315779966 592950423 837642406 695216711 962890329 784504558 1939589 18621460 561324251 142664288 994079121 197306047 173146404 852528646 706904276 722585552 252742923 234622377 853111149 320953978 210403069 872525554 373300010 410723293 98012749 138983229 385725959 562741890 240769058 900483140 623505592 321558484 502113687 391582442 870287214 620878215 974851855 491237082 350425179 494750190 861929145 514278773 939104325 293498172 77855955 508817312 990064247 684134758 225622270 610620470 450411674 377720405 439265453 115329508 782157514 367172423 986521394 534546963 162944439 411991656 158082256 147729122 496378272 249194065 244092029 975084024 209861874 966200848 78565981 504463030 832617369 966475771 640480000 620075134 629154757 374189148 242183855 898979970 724315605 196118279 796222503 806778331 17941349 899875567 36055624 411480043 81533538 938531203 343438903 654090082 163070963 164387213 896005153 770116461 775686035 466326313 710391331 863126682 136931863 65914028 987728669 758443408 794622704 515428837 528292459 991618577 354444538 216482460 156865483 592711101 51643578 428717472 185850851 968027423 510994280 785275849 480368123 270631880 83269229 249115080 420954736 837061318 421009935 505403713 738767103 658788081 921483487 597069136 152818119 83209497 997797414 260300650 761489572 246151628 736053579 396798027 227021244 797943133 543137308 209911047 997407298 368570158 673914192 719818018 577477214 423030322 787006939 951126128 793639336 825035829 801439731 450944408 587303620 36776588 70849668 612554822 565537123 942416636 209440019 381182345 896163508 725593703 582519140 819958688 748027631 61684964 565803458 217322845 182003100 886642621 626558883 235660844 492519598 397773797 698737074 630838962 631292095 797181562 469045832 324318735 106460347 467589967 950391973 53386488 794420651 930529983 368775826 932623061 217084892 290981639 868034847 660419298 926853138 312829058 779076868 470167750 268575762 798515690 589853754 844792124 368664127 350546001 464955817 985520623 895330343 240415173 719603205 991743320 957169205 64663403 884019917 398182126 136483662 51261459 168014989 767217350 130208802 16308944 221620092 225344959 91732632 863817657 356039004 211151357 652423215 415756619 33563384 86612080 780705467 852153135 473498569 712308528 248442594 476224297 740751694 791451180 850358481 112165689 260347634 147860031 391936849 739753404 413086591 910020196 414627703 683372241 19671594 363968090 920931126 43738183 40644409 117871688 980241675 594361315 938842548 436427564 804746530 167528283 894162810 708063311 946843782 637876044 429455062 633747876 441948684 827675463 431977313 524357415 397376203 548990832 557326407 781101433 658382777 669644278 573713815 253832777 477273639 98392619 250267163 816328132 263070216 539581053 613550649 423748300 814577600 376062149 650289096 972330745 357174351 697762385 907934866 253937296 908035553 333177819 996445323 261155124 167636815 387560821 489776249 372786588 284423000 950805488 879250930 993215636 604055628 632618140 779123932 297275913 384354315 634164104 187594728 280499025 894291267 760070794 256931017 622651743 102444418 522707266 678790389 594518814 645081459 407088490 836415020 84143205 364567646 623099292 720078543 274269640 490390547 507445282 134590626 270872521 979994343 408225821 254925361 114788538 296677485 84298054 811903957 932538157 132905474 594732912 326396726 67884955 173375144 953232584 260002613 192049102 560224636 404512433 319214309 342594006 636653691 411372544 958053254 621697073 885896026 327790934 609065674 36196133 141374083 177227390 214137672 626649793 900548112 307622186 285183679 143584209 281669042 847309275 761803224 223643066 787018433 237886989 40258877 544445255 324170079 743677843 869476361 909952516 924059735 42345635 133451470 114580724 93568976 216855587 946828036 395808359 293264684 756005780 704640106 540371367 609466090 243546167 333864208 220640162 460902664 427249954 168061725 265799953 731351258 344149961 629859776 814004547 676478169 620028323 856543922 966715592 530358393 798135496 297377676 902216133 316391096 208646224 40794717 847023138 31789254 477814735 14402977 407729750 246983774 809349151 441710504 844003250 290227834 799847024 884264296 114806456 387285368 165133739 231143596 378970606 299166587 11529964 1534065 135584496 692415688 225949902 600682139 705699456 369667408 985109317 501141640 273172433 161961113 317335712 865307071 622909986 46764887 217728183 701174580 312226255 103329321 287648137 148404987 172912781 545156499 410865080 196585652 97064933 164766645 700457433 8459673 250065510 268790699 636082191 654558189 403174850 506142109 9480322 987890760 434943103 684942612 483822740 527144359 945328822 220565509 234766705 823459431 864266296 640115015 143227357 715741777 967626448 809246002 187986664 474078181 636459308 361083865 79473327 58372221 682785718 994710243 413053404 457394743 171669449 390118028 985039723 770905383 531709354 851053262 592318360 316068646 840415427 863953808 975302036 783113875 887050564 624718330 524080877 634551307 454156441 981087529 982830108 218951394 64339130 582250330 683309074 699216853 27294584 604112704 637041074 169164081 147621220 941581904 135222659 827359697 382240333 721415569 813757320 147007075 367178984 508480427 476709206 564510815 282814526 427383434 703402575 946987281 647662893 191676587 284620736 83919194 670831947 677326889 848783980 675821494 641832694 938463926 785534779 523712960 560028130 595526480 48295013 548452845 354889139 793516842 261418005 26255942 353559367 391407273 14146117 467863942 792967568 318879243 494154736 146422379 718835497 780173838 261141835 249163806 667497571 450541131 388320027 551949088 5271311 55828273 94144660 613845505 175311944 328420117 789693311 171893977 477494763 642562378 449348860 350059344 587697543 525365311 637895882 821931219 699256574 287431881 950340934 33521536 883750910 666372897 181285154 57669836 196088371 852916502 86271487 571483290 518011789 594160510 992862706 140749589 643725380 367699217 612737780 718147399 420488591 301408901 408507251 626173403 324507934 646848492 504710293 217733777 637278348 227104018 303945834 271424496 573492137 855514702 35360924 966108072 917173035 292752477 93311323 289983042 903141902 67949884 305390854 766513293 564340709 368517791 852926599 153059280 636996374 387857923 558356923 983958391 575622629 536691056 99116934 378521149 745899688 188773367 280779391 111849742 663159739 66037459 835250064 764746210 6737577 124960715 973067686 671471013 293126878 965542432 612116743 363075324 521010324 930929334 838232543 523287836 21549086 635009288 111916148 246346898 417248756 159449513 627035303 718295961 792022428 766531621 600013977 349921713 14758446 42139266 144390831 342712688 455798687 431262468 575783238 417198164 962881845 113704966 643688618 175298980 554340371 724109035 622600295 657940791 344703262 810750522 163498652 707733810 746522621 937728406 484735364 123135239 339131446 796876243 285166234 597087298 432920519 837353980 41635632 692996450 900185909 166446493 647597505 628272730 120361663 858467155 618229543 124939454 990486713 342102714 636385428 636623521 444075172 887694487 631118151 606724347 100078532 627059447 923948620 283289958 900899368 955712042 834046137 514469238 942680214 358432369 301158658 146981391 501858716 769057641 201377732 438696041 743403028 638666302 783412801 636607741 509356587 757944577 948695417 300232996 155367125 622622983 858056194 614870594 331230142 992999281 903991369 632226328 397643824 488097003 453977298 149103445 694302808 357596162 382386546 632989251 132710348 809787778 742612203 587812271 619240055 189716724 298779452 791200684 687986099 490761865 633123479 12900778 878175944 28857077 369360513 112987802 830256315 707365514 804759910 274288833 13763500 669440099 105961200 864592889 633883644 476013055 680709617 73911852 37606911 410081604 342969247 592374869 487726282 66503438 265531968 525940056 280498401 603575391 855858172 979316249 623367629 626270543 547699081 216638558 582113747 338725056 930017024 490116748 146996379 608455311 461180468 398955986 501269239 820684670 86962603 460432043 436903759 647475500 219220728 981373563 31738593 387681309 691290106 345027324 451884699 694393978 597297154 336724601 618735280 851194956 812562385 656809422 896658024 365709800 508159078 616493017 124507955 68762559 191394760 427665439 292205838 60529847 821848674 353698801 859666094 477409025 909427339 834340743 641080361 950308664 577567417 40957028 931226257 182686346 497835137 848956844 637829689 271010185 955197935 709808063 356372582 557379978 884859832 75796417 935429671 509194472 952240791 636409345 848060942 66197884 920907218 748120668 150205157 293681348 376080736 6617712 376126286 263279164 918567322 599581454 516338542 895551212 340879259 290429108 459903044 859259582 963700125 155414563 644119537 599570667 307401664 997580319 190976915 88703028 16385791 92861913 983099477 599188155 428489110 913428133 986370222 653175147 905499811 681351062 745450157 812039070 450993924 769097393 480707566 671240996 883648400 642750686 913703013 240218152 568413258 891096356 265519388 596607987 902287533 577071927 47648685 868087463 833175100 314232498 503484343 269055836 51024534 823475546 635419454 280579948 116112133 312623536 414070748 277718772 114642452 722873906 821665768 429720304 528188972 101649398 483223626 109654389 439795110 187210346 1275998 417550794 752378453 98530187 73244282 234172460 466985095 95404941 478148952 855471041 189495410 601848737 872702202 480699767 300516573 833159235 127175016 687942673 847125246 689807997 353434409 469619522 684010645 119385552 597852452 326395426 367453658 947929976 794060496 551710538 824693718 85884725 723998719 115550425 413832686 278353514 116008988 98949305 69351890 946970440 445667663 714579043 676959209 926363408 551230670 370647953 853352173 90969915 721349625 58406167 127765951 689979282 575502594 778737855 753586802 209609386 43932190 430740634 626971076 81894145 840152124 873163679 810173447 59811864 885811504 736928103 492546167 612136457 462883859 554694906 296921214 159796343 176831113 439444038 970191048 318106892 844426976 393941493 814348953 749034190 405667860 170576811 201155037 334649304 246428801 27363675 471358629 338416390 629897182 573939384 978267795 234667195 715504109 331866205 986783236 753015086 811664536 288954600 666960232 41982271 473302782 395635125 600273858 33886463 926458929 864536299 35175931 469495392 824947057 151941410 969005314 976736301 71186755 311542691 873377766 355477474 726107214 795811286 656376537 823602517 234589173 609841132 581603738 792082526 346226681 540357068 942520725 503896189 596008581 633826743 182181582 963397709 622133859 858918471 664117102 932489646 317346441 306824799 471510287 453833481 253221681 682595204 744971304 867417477 809789302 428957314 989197026 248696999 978545546 115672121 951623302 720149029 55095222 993893344 640368619 630466036 292428617 7489592 190509046 505120699 383758331 519847116 148912687 579676941 515512616 716403838 639269176 986989715 81969708 685619964 772437359 828906353 489643905 254661206 15060974 801893484 364221514 278574096 205290304 462405779 805546886 495496648 797186043 105957593 157513297 701065600 804489346 848310787 57775406 215553840 910525567 127127658 339212526 838218308 880100669 437184669 645055899 208203108 561405401 537610110 260578956 107595948 264980462 659187604 156314105 301096866 744736670 332709554 850876285 746391443 794399078 45576827 632701117 463085510 850944756 632656955 540820729 492337048 846953639 302387711 99808605 113009457 449441649 129982631 590939370 996535232 256839423 244752864 298156032 624252959 725669708 23680066 958719265 656620089 762327552 830615467 661878519 471353826 805421035 218503387 69371531 623233202 363127256 657501944 365263363 811498504 583249185 112241553 972463975 421239476 976758049 945463525 547813384 168215650 66551467 111693886 578319386 607438550 617876099 352894981 900328779 758783624 973943585 696007271 235609146 865295608 510742373 690831073 602030366 178687882 343762919 549632877 565361085 283821594 247312743 645656899 450299668 243411694 697555641 362057267 138048976 814608785 82785206 69621072 271762428 447774885 273386557 459792501 966365370 154439271 69412262 727501515 378939614 105311775 907520788 731968775 591685462 902424649 954925794 316911951 43569243 961592198 348102238 437775675 411304501 460425544 346847 961314253 704094728 47471079 153722302 48591346 648900852 943644804 752887718 874398545 8762677 896803460 497839347 948263265 664093708 235795200 979368398 231830239 708968115 113998712 727614440 483337133 108556324 168391348 218097126 348730720 517740217 296711571 159297848 896403503 774029921 234882668 511247987 915321813 216896214 944259855 337105704 910080885 270620616 143396106 963980009 148538189 1820611 134500565 27262376 272579042 207206062 291585094 228168834 896613880 85894123 263033860 860040339 56326065 682411524 122257130 269595702 462315426 88225610 656012132 458858766 117706429 113251929 512502418 678664294 59154977 581571705 715643990 771150586 703108785 880321671 11829852 49024902 370552439 359376700 430613306 903264913 329892012 633670066 751088679 780899033 518785505 807347113 193719451 518206039 394720544 866094832 681148176 146511684 544315237 746085314 960837036 10316894 118195770 53851590 725483562 894869938 28403597 498310414 548010860 168654032 470274988 945049416 73942511 36896554 886446909 199436927 836375622 481799456 831587323 172910626 458151296 503974098 897539485 694961878 442092477 716630226 240997922 441155875 381997621 906652534 349562774 245241425 752183972 182217150 669942812 65262254 745225158 527897086 258655661 747512519 561309641 14498470 627220924 548697716 601819256 52614469 291290868 784826255 741142780 767602007 209277286 69500312 849600677 860175712 739752317 665050883 360844003 507152139 149919729 816443574 30638311 943942379 237170856 161744893 993314948 501557670 615436685 165462552 135332971 601816027 662241342 335317825 676037896 815419369 368406910 397881602 396476225 665710220 608431217 185577816 254929009 672479973 735380396 668993323 22340766 703944903 647832133 761059167 518255436 832965865 563221051 150575952 860384842 258955452 829857001 25287702 904536580 507818283 924718336 576641123 73143601 18980341 41500009 720540263 660042042 814187326 893104157 381138982 568732055 583168055 207226392 253054246 659389450 330192092 367252293 100377465 115816428 699947926 607304590 159304974 131557318 783633021 971721207 129396372 113797529 79390312 400122905 576233735 939150371 851437082 442886941 368757724 584030310 187969147 741279332 447083249 777823264 745237853 909011390 399615768 2190432 340274064 401570517 392173793 989777998 527204282 357270033 580480315 909991102 859793820 64354243 501253810 973669396 180441784 8615853 989385999 264196177 584437215 633160393 138655327 266200116 972248483 905538324 430474972 713847728 772828789 832123785 90178313 476993194 135357733 53582145 149171027 523234935 255985719 213498828 829256895 424355732 178813805 753698797 452420878 188570118 849597740 923608983 252493297 623925404 770377242 452712406 553663328 696821142 380940263 568796350 941664049 140891965 540217426 748940846 886617403 89987498 602308921 996896129 864391157 986970156 818373977 915306295 40895065 760237473 318384590 490663862 684646426 491418911 516512213 107211935 905358 92991677 110030737 670711606 698107063 716304540 10927449 876372133 261155340 183134072 653820728 890714981 79135437 150375800 458688890 11434114 975679509 637011327 857840794 544176721 619715911 920881719 356493224 974975101 587507563 626704298 617753824 409958277 377760809 32152762 744078421 507544138 706539005 121853684 49955103 873999329 17706512 458572842 215956139 159756539 455103488 646570842 445657168 532391965 954973263 708900314 652456442 147316005 465159059 332634279 526102427 656029469 189153247 968647722 570372182 785373020 56094809 562355445 202190966 625597576 419869680 716036584 138177423 322896309 154386521 436154998 145739741 278874772 405790875 847209009 401501294 724939288 548908012 767454857 182932293 810892099 112391079 540696451 808772674 382774620 614985089 951918686 493979526 520711000 781328861 174855874 462019958 355618228 483778591 271999730 537943339 14927133 625275559 516183097 981663392 712443529 696896014 836262847 346841154 911783601 214784054 100130489 830932488 391501175 715380370 343868373 862702211 584056310 769266120 777432431 889610114 765601517 351664872 640711272 430205328 571765292 132667119 56940438 494385968 611223210 750503137 627551722 370361953 625720500 942010277 414492832 824022365 535789613 787309043 864926242 287538022 525148764 481711189 972207378 767655888 8817508 834063362 944991272 610283499 789493168 954044003 950402130 847732419 151816361 283117537 670296802 724756290 352242017 728964113 319239150 800148561 840521195 173162995 529575883 580140558 953989169 356881175 836188308 654605543 890181667 938873494 862097625 706130485 553635097 407435848 191436035 622327060 985411613 842824657 76691947 239080880 768097669 341337301 288632097 885733079 628961340 581122511 141031831 390653361 36093825 633329289 441379697 81067034 849653771 405236881 3880144 503096901 488139235 875212342 6831989 79198071 192878298 93611571 218075310 284173466 976481266 820527793 549794660 605196846 643285586 550491529 566897243 79721098 845553117 35824069 845709040 475169005 624259811 444411170 247143505 935847299 757627583 740407132 795742268 5512740 190734577 769846490 215276044 839256776 442715796 974573563 114478273 390669660 705534770 453543321 5968648 832005104 473195731 276634016 791129378 410062733 683800693 713820578 541963315 700796302 146571471 748120949 997245992 98422950 49472458 535224378 635575440 281569993 188240552 721829375 486399403 266667381 606193674 946257266 682841644 396188252 399333285 751198876 360689886 179743708 349592591 331410255 270924934 989199896 61400306 835813125 729665524 148256023 814883367 858083676 699757923 917792458 694974889 932056703 597309700 724043312 505464237 804366392 95209960 335054979 190675093 636263806 240490236 729314715 563590476 331457982 706919392 323370385 747280083 327094378 389633124 981726382 751098372 525191961 433158861 679469157 919428048 472634202 1041609 453649104 206373127 257122321 326688356 855956498 535047061 28891144 310492963 663484929 533288590 676123165 819637389 784225167 559656590 748626903 341198555 469736536 471452260 633631105 227562290 287418163 997086862 393840305 299007667 118091626 83050808 35313586 571296985 956967639 304255139 61636346 610863545 501754913 962602032 29163747 817375547 647559146 207660525 930387437 578330151 247691026 876745811 677019929 711385593 628715967 949528457 113183441 593246007 687388029 259678466 205053330 928064783 817176818 977738455 749396359 922479302 398217138 282296299 442786139 109823052 368274343 186224195 88684115 758113068 513587375 633842212 700826667 480037991 397346218 721683671 525065570 652229426 481969368 767918314 603343044 876540569 596657265 881861079 550619509 682934600 126349243 495163483 653004269 40706543 881162296 248881410 582024206 469855765 365138688 963917815 839943324 87758904 787008868 883532757 942791865 597179649 611706343 94219870 691829691 514681300 960765393 303810737 280512779 439502979 758000265 607739282 392221995 555928891 791682868 742054975 99400084 165529375 602352401 60062092 747318540 329654814 374316167 959921030 864051094 421952735 81815086 430634984 659253570 476268271 341225709 145274398 58465906 166783891 191851929 42724725 677992844 893036661 808283195 609993514 661723353 840270416 246576177 644929843 601058427 361977472 858299018 759461085 154983255 930886029 661794748 530468825 870451493 31673568 191696075 241026334 299684323 318181245 260062942 953061427 309634978 985148908 968396660 261524844 65927992 420231464 302675485 468073859 617273002 405218463 64191672 20457770 816169175 298161198 677208515 961580615 87469314 577049472 998201900 413649468 79489406 514356909 507934302 449317831 419480933 163183780 498969271 257144978 595845625 440472477 346244573 565463744 72233320 504529396 160023718 852183171 39391153 5511636 438365931 594206681 913597409 468850766 698215428 453231075 459944616 412698513 831551678 240774957 156495987 325056708 9748325 71811573 118297198 108117277 914793230 121003029 357803157 508764094 748813102 888425931 494973606 172815195 329723120 255927599 883868659 179047323 380458072 674216230 653070344 512273813 492897022 623543762 332331522 158983194 481629755 944707473 114345001 131165688 490049627 562041102 795196579 680109886 796483929 834672698 257906090 440786780 346547804 432677068 740562259 401834661 656553709 560336380 796470639 939158826 474156750 33607024 529098465 483711426 665702816 417075976 502242092 899323433 729231216 525220916 176056693 929272255 905989577 625083147 140440466 734026903 515701173 662204252 77683449 344114194 27889865 847696711 875819416 724699191 224759825 60309537 498153483 219964274 865630170 349154971 54430753 902356000 944387308 950612584 596909429 222712904 5712541 722053130 216973947 354234149 164429716 821879454 802851651 623066523 843603808 265647047 407432726 529210002 741125211 287897496 613722504 673861804 218643731 120353391 472762398 506626468 588347744 161208377 425799166 281257215 810854373 920913982 797568016 892519104 261604497 827555619 556840216 705105713 25735652 978814129 178931733 655585270 730932825 783239132 24136192 67997980 628339477 395204479 339036686 927668927 536921207 583580912 704624760 679081716 730785566 510671154 782944588 445023791 775649164 212033541 499561077 919770841 590272884 66281600 909296235 818824679 874069490 761709877 766940953 605646896 25574992 265324934 231880193 730235817 622322208 395520592 513454171 251533369 452506321 530973669 144471037 172982240 149697334 847219415 23413566 335023604 216363248 573440882 495799057 145067044 959918312 929166622 155362089 326531116 637382921 18431667 268568077 830933790 813820385 602890315 200167514 610237130 66216827 327213908 153057170 314100858 535908996 60175156 797758709 966438393 748089657 92191075 961701477 382227368 596083484 165132045 115576343 888889834 982360490 333862415 729750187 58963926 221205871 409766626 723883011 400040989 798238329 574470987 339249433 635570788 658134739 723048140 80773824 723867250 533815766 842831542 681518692 125915265 682004244 123678418 171239340 373565478 171164720 231358141 132808555 299898123 515715961 638629125 892711622 293900902 68931335 48003094 72033561 948084042 283056629 587950478 960244018 775707263 35307824 285756003 853700926 354592758 384756926 576154140 749484977 771805283 536917947 240549506 133539317 789708107 491339667 172833444 778144664 757599604 857764436 182097422 265176569 308727173 586607630 723755230 73789403 11110490 705954562 386489710 932443062 981942488 258575219 885856044 256344458 832668150 680506940 620521031 801514563 135113847 844556580 695252808 822837403 423940034 367556420 256987707 654969506 419447210 55830688 939567699 51210764 135126429 208137015 511218282 822806724 348400532 389412306 706215387 333971161 833037548 390619270 522235420 19439619 332657718 863721933 710199804 577246932 883270601 600457241 395360107 490563985 636995115 79140824 119025031 143528492 908681967 867838292 56821968 145324331 660473601 459705062 659681759 637055011 35526653 38194206 165764511 986684976 585547313 391583458 294359610 940057224 652138505 356520279 950769207 976048615 594343698 645059457 435259937 358578130 129675071 889145484 251080909 672961342 530618938 175594571 254913864 260919138 674347553 520287291 915614038 658368393 341496612 454564659 239379574 603127026 369744345 124429954 831228530 458745844 152605793 281761085 202112332 279612406 696794232 249991811 891669921 831790129 589470145 717558748 864332985 867372979 534438859 271799374 673376941 427449362 506298465 91784913 515062424 624307914 383300580 766013110 356289824 669412446 427016592 765600595 282251746 737105258 904304452 644480621 926960477 32440615 21614721 274526267 67822199 482455315 679644279 821079195 496720292 174586025 551282524 151309219 562677021 770523862 215343500 674712226 335560529 150003966 69408488 87396909 880458242 190851423 356601267 654690507 992965280 713371703 445448600 644333431 532175075 519232444 519937798 629387553 96003807 238264513 363803200 441834254 401259546 412825719 970224334 192577346 556526120 232374095 851965355 64832331 372630086 848301301 765211733 301147486 146328284 156507380 401630848 284459797 219180064 494034645 354870764 226148551 376790753 925740727 548072305 831084636 815323109 227217742 260327796 483708366 794198495 843870711 900193502 723118472 296820032 810507676 188513239 413884673 443385152 397060239 492364991 731963097 809087945 102534040 199225968 872382811 43367607 904446232 721114632 777189342 489572796 544217458 927390358 209468815 282998854 235127634 627077999 514067819 860174362 697219143 642689242 463616760 767245858 320125021 51366213 96403856 507124872 769118833 6390489 61101808 400602296 782016967 834987 634159848 373484389 762902166 415025022 289473348 515139137 708340350 370219567 339428348 172422063 542586220 358745373 447225723 149727533 942040819 744712758 639762545 587812645 481169968 656018900 171917340 416220653 673693859 784867265 522075298 532924522 93122348 251579992 227434963 490532175 146961373 295816497 256579932 663365298 313829518 557918174 212369524 926979619 378929893 263632066 865187208 401448210 656764282 529065386 13169207 809531919 429649233 27916111 858339547 642827568 582824056 806247067 854798312 925112338 730691636 633665575 641148911 560818602 883643262 932017831 51407594 251935925 574822256 106743180 667097294 834401791 449653306 936582710 191448545 843581961 199339424 330949887 976369264 86361335 308802016 824674220 558920902 731896448 666983464 920649537 33335634 919613148 927509685 28874954 354032851 355010925 259574160 106088415 902755768 273740094 15796102 24985705 991348404 747925626 416038340 243445323 941229265 233693357 215187878 282901582 208852867 226376427 707044688 175389680 714641592 386984230 237439656 450601984 35351175 211246956 729135404 652554799 319950364 376570505 713452432 369558530 721769439 438385091 479389232 808475113 474062578 318182758 636189564 872202637 733034324 383940482 107479924 324217493 256869537 290548069 159890358 548371532 964903776 603478043 152483604 720372841 567978565 798458118 222077607 710261516 350109842 529624794 850727417 711654523 172908088 783209715 973878886 818420911 698138171 704985854 574361769 400703723 394266402 805269257 149866039 339581863 882342302 201336533 239993044 187365436 270384740 474480528 711451966 331271352 594599659 86398850 443996104 276947793 127898364 634854556 347646764 467240823 693303596 875247743 563094297 253446136 908855051 60649508 296655833 684774036 442835349 868520000 383108983 966512632 67053886 180397282 505658457 181803816 777391217 385817614 269550590 415774775 373814521 114605812 800588799 760384902 112839211 773359423 820090779 144844297 142898664 778475172 46418269 883907051 451783727 110643127 423596785 46956398 611184883 619022418 88676762 403114705 583154170 828871160 247292714 684678638 754355583 824483678 937499149 497176829 673692724 608999263 632937100 125825248 853663039 767296159 972153920 214899150 812194142 398101476 448982861 204337977 224015322 729216894 812524680 145816827 537665025 910854355 42014910 588308908 761360839 174834158 242301671 888836861 97711334 72540116 659353769 219972704 593712536 568034232 870599520 286373127 126621644 320976446 748396822 951629115 738944499 759427958 100664601 144900134 188985472 443325572 631560942 793948967 354543810 785872045 246718633 502488815 192188914 763036612 300175041 233632546 505603874 109291744 284821520 980256107 784258587 164958401 590572962 814927509 449963779 238002147 716871871 757903945 172422992 187194737 28154233 188862413 558021703 791781684 618703192 133613347 818760347 88159966 214518887 903645352 334683141 169290648 335083122 362981786 478296395 319285940 666691538 435121219 521055574 445600674 110050883 265494839 544029546 871339388 683849408 790307322 961703483 195712466 414226422 626841074 672962847 965321277 52665978 974799467 398662007 433883063 149562856 72655146 203810558 622457661 528371442 943354762 38979120 872742669 60121708 488580380 101612267 101605399 811464850 947876210 394699090 72471235 188165302 471118689 425894840 647059776 51162180 304815560 307417424 832159794 627003217 111098902 483521728 983544643 723733282 570063762 154516280 352960958 220383922 731201122 467924974 784613655 333089812 731290398 764794980 542352035 972158249 403178122 956305 132756157 137625364 546283363 721197080 208824890 247911930 158943966 985316720 760015076 253361913 665693223 646958860 576705896 788199605 268103038 350233623 535441130 286734497 821312258 169734484 37756769 28893407 979610508 103675427 553771537 703793253 740568829 231321164 521198813 546436826 294112511 134081666 951980702 545864211 830287111 42853595 684438194 139413236 67984674 711474044 109238496 209931797 19109891 451684751 548672434 145881956 481856678 588941903 771975013 34666325 797382071 126175759 42685803 56321651 597090409 357475474 743247550 940423732 567153388 73741154 549487056 437320638 725930920 510315831 188302808 411674558 716109226 120038578 533698964 747586593 877308997 625167876 432682011 709063917 71517450 939894528 247137273 589732552 703294513 19247799 759441493 419025229 98226093 53015384 342906241 10028544 429604852 691749659 631368025 901420191 399536148 945080724 941111876 583935285 714191295 886252086 934312284 464000228 847434300 83271187 44639468 231229759 293864647 535414802 223369528 925448927 629302422 522839675 286113853 231288001 552759254 164757634 377713619 425402677 586520780 209491873 586518421 462394824 900037358 985830344 215872103 61722901 451101566 414768671 188263015 639864175 479030165 403812180 359603824 244984820 558793900 695637153 50271456 943178082 555985827 599862065 118408339 285972938 267693580 964740371 63913072 308180522 507136870 505681769 98199233 378553419 20805835 535393157 646907875 663733364 143614707 767345358 163032762 854647833 94866317 564941631 784345901 584858719 908795701 881545200 293489388 726427201 518417437 860863745 298055865 117704335 986408629 25563284 979062426 772796429 40552107 122452602 502755211 443016814 938001273 210333788 690692941 648968716 1063195 528036465 667749946 955708951 79153760 55493518 847446809 40737094 178450626 847589095 463442931 196105076 656710577 935797347 210818634 726500545 337431239 45856342 511718586 782833535 47804873 364781965 401569606 399550232 557638008 707497408 869645160 431544146 748688791 359773042 207542958 978578434 216980846 310164262 128987809 339367538 97548366 744519892 577296490 653358490 376815262 145513256 41813826 805486960 526606185 500885753 56155086 589743006 495843240 591218868 86082768 49374653 739932368 324867297 452449669 568967197 204040422 566672738 368110373 47694059 420492199 533508201 216017895 280883463 41920623 994180016 188643433 725761703 505300363 603198937 231160866 480547506 138374771 952905414 80228490 242642851 553869959 995714776 634135669 243651741 652219605 469895547 160354261 177892494 358732898 319011842 426091999 859178587 684785577 934546915 208824624 187809637 244199152 472210346 221610347 345192815 961119028 17606389 501513949 419441132 13442889 561591000 79347989 782644048 109752504 814359903 11690716 543942203 879724237 781299393 527855245 6015897 454249748 168246564 157471437 314484942 443167833 568442869 266865580 733223414 266758046 151599407 572264140 156066857 868767007 612133997 572179547 794656306 726196005 270515912 693019218 746508001 462559403 167464166 390944587 551250428 274357828 197232175 776967061 157604323 530215992 631043290 527907785 139816891 921351627 486394927 694041396 81229651 598341585 651623846 41752399 844033467 627227474 754445852 766365975 560577089 528911737 808634666 406664689 945857286 878571782 397956013 540250041 211926402 925102145 963947130 719809441 651160067 379825277 489291679 789329137 393312973 422177863 782103646 354904923 233604001 787849606 55576683 998008699 602790013 550729471 237971288 60693447 655528684 212146546 903889629 893962901 235944094 212653737 939729920 213858441 155981204 719112053 665387534 855459494 583223144 791106818 171319874 259373209 748135094 990711399 917423286 640505180 281395026 982813151 904865121 403688702 890236492 690059015 752489691 336509544 675019543 839068814 246895515 428588531 261081370 792899564 222841786 879861042 10924 828583987 213363716 77402722 297156065 712125073 163192656 629040949 154785787 454993685 468273635 29090618 168581835 234665328 338511797 845932848 815207634 843041423 110788927 850017922 930874111 972672354 473437137 193041368 356028542 452797130 859740300 808265514 916203812 991112938 216006992 465806545 590766566 443738135 659635888 137397122 849014342 476850136 724476344 80614483 928375111 573810765 284981765 19465469 606569097 847738162 458528101 402494084 228875707 864122890 387521577 819507067 916461198 235421977 829736722 646790487 944203976 900233548 135868629 562952207 669819065 597157382 833387135 688856110 871857672 461880658 278505305 782736553 873754789 875130394 530582085 255267938 359438628 562102083 925186698 876550195 775599008 773233309 855644276 644092218 810112733 526435532 978420822 533399362 147154588 717238237 825746379 199925354 388874063 578184501 800424338 356434425 660899310 368832658 173556036 651524876 422663076 216003732 315959881 387383122 788377155 741213053 132253567 879609277 340581139 37666261 428996282 512408970 882924331 101034906 877468709 553086783 191918302 806816541 619774055 347908005 105943985 71302136 182276089 702286481 538730352 415188710 779583211 623200928 515649131 567299233 933888093 203898150 987720372 481502317 814461748 941691860 617033054 394958555 597340989 772057935 632695203 842704892 859698533 140886351 432933946 832282479 632857592 243170829 192791051 832710686 223697690 486249174 470850159 374637629 859991753 183109093 810303688 330110599 136607439 275278711 734175537 504898060 425696033 458562421 148002566 844164928 204499552 279028959 191121017 229832596 325646353 65720339 463076573 950497386 985996460 619496191 898898710 430732155 54516553 475722110 949068241 554198075 674191794 38107164 871740651 508199251 779721704 349407333 740838481 288071875 216169162 973811129 751656040 690367098 359400805 819345810 210913949 612076197 172045035 719204652 428040502 324477136 842932046 136441583 338856217 944058448 372269694 2429361 923481326 602160062 155311787 110005460 57002349 446518518 364807053 380145028 789313178 267090329 323897849 358361096 751096871 720110243 840739889 414091922 375702826 741804824 373167463 374376556 688264759 173555194 237726963 743336678 550892107 971375189 17782115 839721045 650456324 503746699 967039738 84321809 770370620 266204926 765088253 580988858 984407982 113815614 186407732 698114053 529260240 788326190 170588491 351047270 291037052 922912639 563884457 344085995 625603710 218834891 97939097 844767999 896275603 342312467 702984184 636396865 171481516 5090697 696423111 258872332 168552430 9297776 537561100 948396222 480951109 78328910 890417612 686874122 155652964 598942188 403746580 417847974 560850864 104648260 597074304 426236707 262747168 529780198 161612240 23780290 920676458 69994730 538969955 28890009 150124887 467642474 59349676 890502420 507711563 196648890 184504226 530066142 561950930 27451157 997336625 815905579 4803880 11204308 577055839 656484701 648248040 734239128 168694631 798011038 255106406 156915906 751656183 534507897 925729033 875703018 103357708 347336067 358480667 349751673 729123988 228239724 171851869 672820793 890726996 559701921 60560089 633869888 434259256 5882833 574635368 846480850 63117833 290159179 840134400 818063397 703403777 586979856 217177027 830673906 630677212 759477054 110006084 147286704 163088729 599858900 308557836 7710083 990248682 438648172 300626783 857921637 49332644 716456147 808320573 510011700 508157233 783198627 102858577 997283814 985213151 992175874 373736416 457313752 494686662 412826638 473674626 242934213 391233758 120256090 153482230 333456480 588326179 44492196 615038096 433486532 694596221 237747623 838162140 208703436 882397547 616417277 847804648 187500413 598479285 180902820 816090625 260136982 891149868 426934595 207835903 186462379 647455449 61614828 600418352 287176038 61725885 129761709 317711692 856590045 99248016 841535405 604600952 657944460 774661769 210195832 191063369 393412346 868661647 568005039 283881153 714775049 247676487 385075922 574604268 55691036 87325092 176437885 140610074 123546425 819379486 881578556 700172894 203377869 390355901 527121103 345887148 902048273 490189363 405779726 261949990 740303862 414336255 547932982 271958485 645693992 893178863 537598378 41995453 922290856 930648819 15694407 418487076 804341956 438545756 251137338 156314519 631630789 852404295 139455590 385649269 419200320 551265184 947160270 730931741 252488020 965104617 74150617 976146711 789648065 364618677 421891166 868488266 659257540 968505648 78590604 555108217 969486946 134469397 294333041 448071331 433402874 935553231 544984660 789238329 769071995 708704443 81767728 639577343 545312049 10841088 735693203 619867436 296336412 266540865 912870762 491491259 87021652 65818924 119933406 532397433 731472731 748938536 659923890 240212308 352133830 137104821 58301217 382725755 73647558 510415277 64547976 676544 844376492 583203826 59788044 892107367 555909115 408777525 979783692 281858031 704605337 38380026 311434962 417452263 718957634 996078011 399519004 491561901 582602037 298997070 112170677 856956067 512402939 816180487 964848856 287996012 553633663 773176499 108237280 172030866 467357563 908137509 787953867 626691719 247502050 316266012 195510095 946785375 90041547 746311530 882303807 834957245 535877670 634652093 727355476 978694688 837894308 625453877 964830374 273789083 851571379 7385757 744412374 588046459 330323430 556167532 315006007 806568320 120083377 154167992 773460285 129798749 349779472 91153274 665646088 252394524 113373794 141980029 406786145 362001747 957325872 905488505 587481952 717274554 14263029 960806155 677294889 663672221 435485729 77997051 878310941 996420508 206964570 143872423 957729030 418504071 38643016 688126094 361420663 751465173 933769732 752550406 111455810 147220147 674742052 902011365 421373134 382535810 189976484 86081815 909154084 841107005 417337954 778747037 183071147 787835063 339737611 837968037 793683326 188410105 322012486 604491478 464796656 332939392 223100886 825809781 544249403 967470550 33520690 419478425 584574950 805301148 355572055 839962035 599337903 426093316 807515745 229376519 485564481 277141609 952594452 215355190 854177482 307185170 5507197 385301577 819282588 709483402 3367206 492675600 235892178 197215219 310594670 919488754 25588574 128636814 310463752 871510866 181528389 354171619 836600612 885289361 637360570 731531069 274476862 512011498 768874738 405518586 395693932 674468748 65478321 229413182 124721351 838490018 737150146 118434030 117995571 558775500 335311059 978496973 229204141 342394704 643256745 787108529 686654835 793747190 599053782 628050188 404918412 781044272 233321 38618263 465852590 98210469 795386672 989546065 609080524 217033627 370099649 186725486 928663241 373753988 969094005 324728930 18437066 660921107 814583114 763940377 860070826 413858509 133928065 510592783 910393178 811718618 818923618 598830456 839458934 664888044 369003126 834234019 446335137 974861 604805852 977638335 859847507 861604195 81409789 252653963 664789092 319381387 372165308 969778573 920540573 110185414 340569581 981705660 3063430 428715557 843277728 673748519 818204372 578724979 556901523 445556066 998062397 910436854 77383833 537925158 425192460 662581232 95766627 59474856 65090138 73940903 41600671 343273479 103829644 134147482 736584154 528831989 553643109 147399417 70366787 100857932 62089020 853848551 123011267 657287187 463522822 314651113 493532830 914715384 527634581 796843215 859814745 257573134 415410317 584180605 360216128 687658237 136170561 101191131 714738206 112403560 69349935 364118248 895499801 119136761 199913914 905479795 165788638 819600811 503682757 119486401 558479595 794487121 640409109 568280755 634353624 347818112 850039639 155426067 80238352 271865180 781453876 610478726 884837887 218873899 773582895 975155177 872867270 657834899 755165332 649815374 327561275 242497794 525457381 674031580 980063584 993419234 283536932 367649924 707674411 383507252 502427596 675390852 876669975 40451815 751755237 13963220 516137413 465858532 882440828 676137230 351993536 753464056 566772064 414832759 688069417 359310450 610192522 408308356 268813751 256177183 109613396 79442435 981872410 712102277 458058957 677462410 31580094 572616735 852407429 667485464 756562802 444930709 190118975 278470367 665339096 214022146 348377476 952876436 479699615 193438531 351066082 225150113 856653946 916389102 505904799 849923131 460524681 988405554 714993133 429998672 345298283 618229212 920234944 687241613 753290570 760057081 181405779 562231841 184058246 432259325 300408456 278837752 202546644 275570193 259823842 269628679 30751795 879202980 501495488 777706067 724073149 322537253 112696179 515785479 119988167 768222261 665806968 822759825 932469320 88709305 819244283 185927426 640409488 834457572 822114914 706031933 513672437 400815365 995433030 633126009 781551720 319958265 49482840 653099883 216914640 180010636 547936343 737251672 580007827 597151902 534922524 345231577 790779221 182982502 505687317 669823875 69945404 553923621 97430325 196267964 591466485 60493474 947950666 344911688 762598898 420617171 987501949 660446087 359701609 537935192 74371914 214224377 171602860 609510308 33508069 497924018 541421176 923609510 292180129 3448131 104206083 208824171 317620953 605662413 934545796 154713479 314807578 324055606 515560937 114114980 885211946 103034466 82905382 481689439 685361716 504990432 300654108 551559689 942887371 441770453 534596020 354572815 208859458 820758356 295802024 523231735 307131723 440402036 602728450 307786669 681805196 493084091 266080044 795995157 923536739 272825505 913468173 534265998 972824442 314998281 34092579 554570321 392132466 679739176 41704514 766205292 620741706 347994251 638744966 358456588 844934486 880140560 379913086 397123183 984756763 617705821 278632062 739189917 868600168 594811886 163579431 224355321 523054625 407480918 806302399 498268963 510290446 651473860 124427836 382058264 160301020 324172652 265550182 273330997 265681833 942779277 856191900 420423146 420810727 139341731 894763393 245700236 994149203 316582786 722950213 539385331 590446228 654852889 965758743 518370784 591348830 355418196 656902539 806628130 800038095 319282398 907876727 770855095 132912553 595802705 473806674 188085721 857741238 954827592 593960160 114373349 48939164 889149321 952961209 898888539 861675063 769132846 883324490 449956698 714728078 308204671 950441579 648529641 451754789 668217566 878793188 485898449 367572602 1616079 623054327 194539409 770685706 464325610 774166456 411074605 316838162 968976507 657372516 715976506 207451004 971944981 911125348 468076204 563697003 380673977 703224847 188810808 255829466 400084087 163415219 300966314 31744058 588327510 814092340 977990066 845029045 828188221 481061609 459877142 375496469 790486829 490773468 310058219 741501039 662614695 499414352 390076649 734976137 342841745 849795082 436644012 792552217 69725133 355832918 939264347 550539859 387201876 335179339 73713644 877894839 242462765 136198588 910585839 640049274 145635543 608877063 589625735 875449270 185065328 682530950 881545676 665186852 382023068 449604513 313277038 32151602 585672506 285491141 959931462 653386442 67834780 628678896 877427385 701340374 598546228 696962235 681589545 682188753 834691805 792665565 46504053 715638075 581331532 284855457 265698817 394824540 7390483 848506313 195000024 304057965 675722526 719647823 746739811 185724105 161172293 344378994 442156622 286375204 247254109 182175994 782428836 888922329 264083555 118612750 85300056 835609682 559311589 646407408 621062266 28620016 932986102 470779751 235067940 136730791 516147388 798471206 436337351 604333586 336125153 809552622 200915074 442666126 435585048 114527448 957677569 208966698 873461121 887952598 749460668 383815994 315625607 793494330 996485790 770119364 143236063 651585787 400010996 500565928 183520710 525821661 599448395 345314433 644069823 804965907 401515243 323420992 666346045 63475297 300281024 424696476 233478604 441611010 643174799 325016205 811538559 590519307 705339478 819320758 668220062 400215 581539501 483098184 449974448 938010176 440914295 628493961 692292529 199377452 392213902 303200475 339926452 415064662 320232882 351865194 576055326 520439158 762688122 301986769 213551410 146541449 629928018 125578368 54674414 347103235 498574663 142372092 596454273 712842581 774319530 780465334 723343924 205194492 86109705 384288088 816401234 762476859 60234256 463914998 177670835 55139099 396138342 490689062 626652195 441942459 574391807 888831532 167295953 680322946 679917917 452438093 321648612 886832012 559982209 777464701 122351404 983138936 501972543 543332343 900764508 757296477 619801525 534156541 887602612 700722305 661364461 200201814 221987628 573623590 183724026 156346563 763019896 262465543 147613192 346922763 163173993 289798496 317063236 807146441 169270508 89795994 120053997 908747743 441021589 379339531 371872564 324806893 956269642 735177847 367342655 289811806 451969437 231207239 711342036 447246100 64547939 924727901 930209286 81616467 199231360 117570179 252961132 305278019 11448589 50386811 190530980 918311418 835040939 639317299 331438465 102342493 270657353 955295285 816633179 240899931 421776109 930585812 71006861 635743382 420537792 263355662 675609248 538512052 341857731 27665114 283746048 293545863 477810804 193614986 640430207 525587359 391180823 16491328 34844632 401186181 571415008 763784440 635066788 223857499 575454807 827908572 225574806 915503513 485425941 17424163 242769108 794906376 646273472 911078233 333406430 468097213 177920668 683070832 785598222 20472804 787648752 555145385 289713588 977158656 854429147 660154187 524488115 577220860 867903463 530659407 557705130 628240933 631606021 895239979 639363248 529153148 8133283 275769291 497933976 433127299 464962275 392307830 467851883 545569765 70105498 563570856 6573357 377781896 674991778 666364542 728594007 85761129 725546560 454495032 286923890 434138931 627649627 464047142 646656584 966727289 475329778 494013769 883828040 889744195 837138001 337959121 848365713 78627162 478743827 512132426 865240357 74546099 423731649 345671782 596282383 477755919 686026878 11283779 227464706 17804758 149615692 709704131 276789690 638389825 703209526 222936000 624458842 890493397 905617786 322689028 328489868 379898679 828620825 98664273 35693273 790113852 475194376 327039456 335700191 106646779 665123098 426924559 850436089 729137525 906605959 177315185 863845135 22302952 997306106 894823679 566385830 840401557 111013928 56592648 273802921 849826935 730953361 319505797 366537954 874518324 220323545 121341112 637865259 295853939 650993849 459377704 364336884 855088690 87113975 815318303 529139448 152432812 720612601 321157437 980919601 939521992 917336750 546579507 995629524 310288527 349725168 988538964 567231669 347753619 534658892 474934065 258524553 44582697 482898628 986013414 416323504 378116057 453808788 788167201 631338411 886956119 406782196 278947375 894656366 520330580 848596528 181828408 144984098 668945269 433519073 184942147 653940565 537786722 621739574 457219987 782133992 504563490 3629660 420742204 728344080 879324837 525330268 92702613 636362583 544086749 223092618 32115967 98242093 664571081 743395779 459499479 307306125 682195589 407794955 17515069 561078558 453821911 53273781 300129255 29833500 438883708 261996613 47794218 505896957 478880802 148401104 296334532 696065132 358771569 409172333 111994015 62714381 53735896 482743203 813748996 445100196 659378303 748907462 976141671 236089916 879187430 232802530 15408893 819667094 143465606 939351832 511357627 77065268 167298899 728962264 280175518 490566191 739684689 826094430 810965714 372181353 372538482 190164634 932362780 78166340 617063816 645495103 381015328 421044923 903463146 532367299 311289026 500888281 978223632 264712308 714430493 463692025 345602011 672044481 509002459 971644824 814522168 755570990 205632253 599344863 139153000 384478053 657735825 761975934 5823268 178530247 192582442 58860624 862696448 729069679 715220919 85275679 173049342 664201520 70608085 849060039 955114045 259153494 755497261 630889308 246380731 566645594 920662283 802626977 591546942 456021813 638069847 62769246 442717980 496549441 454951265 790342078 578220367 438827687 287258523 915322261 668214059 94827774 736900330 255627169 344153066 443549725 270502212 704276978 607042550 781174060 476596227 569895013 798340825 613324492 871534235 503083228 690312402 453184731 320678708 217361086 785252307 416274891 494326259 720075270 605438690 744823325 366307175 278963194 639888720 608705835 826241220 719868581 706732190 434506712 118276661 429937997 455260810 133143635 142462130 91120251 828390207 570981791 842444679 72628848 689287421 287624249 876088223 851716651 288162490 387315233 402586564 514869008 869614580 431457738 902172916 846669424 715958617 335458879 113950257 972963654 471557948 615577986 399093655 80414803 875708422 699419833 351110043 835885121 343443453 785702671 720224319 676362680 868112272 70956185 394799253 118346414 734619833 142006191 693611596 592924052 296423987 255837444 809427017 783991423 413362352 469538882 194830976 51859170 514559475 980080917 928796677 957939179 840111072 50740762 637931601 84453394 815579647 621852449 905353670 621091374 179611485 838522843 791142940 922835362 403647552 118229945 19761938 585607637 292908050 859807239 842520431 109105365 833672108 10216314 951678489 866243927 316362608 707898926 892151368 877690632 28543088 926832607 867433767 940869623 353848566 419728984 397351814 169952879 964264198 220426838 156149984 420452078 642434699 704338118 88753624 258032848 901583904 735589366 430908446 368807606 253440631 488404394 756471455 605165192 793909887 510039964 460179866 388152259 804661924 690269157 960290911 675953123 827286607 571345445 978449936 306857091 103034610 953881427 370323617 520356606 884933768 35993675 350541942 990842867 139230019 743129249 196609052 329280292 564466044 825569666 399915741 143204856 456682586 376287712 396459653 716077938 815910843 598102420 741696498 649649619 488358012 464824949 552174367 732531156 344047721 70066177 453423067 140459596 254757370 611707619 814852324 34930795 409308752 400302883 289541441 738756179 481128928 889744202 54595848 235505352 363771731 818460148 487581535 965258642 15445567 102790693 538853479 46513039 566422586 375206256 559107600 198374690 718839311 490818923 197868136 337643769 731412155 299602666 836266799 783833951 866961431 410261727 234877307 8500587 223874326 626750840 19030945 957350456 203571139 586387757 422341739 954343001 110416836 150202734 458929514 716871205 37076368 743719953 591505464 101495094 292316159 823699362 997019859 56493921 271750859 146032584 426308959 992440432 625610117 735523821 613778136 124886976 595413657 121976101 795871789 115271273 851137683 67718368 778954855 453657097 103093064 384226220 135785986 120976766 502688629 533205022 230910628 447467370 289833814 52095587 245126962 169017857 56086764 295483593 416501752 580463444 786775991 300738558 530873874 822611261 830591268 82819182 56675651 990449405 397960302 179113016 110573590 654963328 652646298 253848180 12317801 74697648 164025524 14819816 423182299 703255994 303691355 759487977 903436155 514151010 960612766 271300038 62865793 827405100 375873398 868572029 289599308 17615784 222932613 397607187 433042018 80570759 114834447 446634512 152703283 784468839 202029114 203646025 654965984 585307107 748291132 412345336 430972834 126379924 349608666 988099291 347898088 219679736 285640218 855603301 88154355 288239154 795134495 60659615 167932126 116754454 821281993 98188902 416133803 911804940 714925062 587483075 678460559 489390207 240818225 162876154 578104462 384104286 241051100 642543481 820246958 668458386 879825445 691129446 309855223 256507536 825958502 759290631 910582202 466062688 273787576 188151213 129079501 114399083 683905176 697274863 513824911 321418937 254182709 610649728 344847189 36553089 574875678 860594391 645040376 979032932 359376796 60982519 475998887 283894344 466936346 776778632 165738365 941194774 693656501 105013164 106914648 950967787 217484896 733041281 192941830 990089782 421326333 738632309 552414543 846131844 50912569 96941819 566538435 571194442 429149839 433944567 975340420 379633067 870504437 739840347 116802868 434472595 251543126 286974683 976609039 598168617 1287130 608387359 549856705 340821771 818916028 812618392 416006401 188390825 706219368 17387055 176117775 114103283 839385408 644352086 837615944 5447312 321824967 175130875 402572533 538546194 119515084 10592137 115285345 795416498 181615543 946516107 774058179 529508836 140256167 936650984 910185088 976583197 879825008 612288730 900332053 324197713 843769683 575520316 886641017 714444207 44817183 342078125 95149302 48714478 676856559 722643545 498251632 711565398 962285064 512178448 171204318 235850548 380153687 261691909 202806035 58202887 141412533 765687508 504906194 61099126 657031415 179505966 627332678 423261018 826160938 389824239 650136694 927473121 834713692 114798527 38661440 973852709 636806133 671554135 818116440 590235389 603010029 970925316 764089306 559606545 137158804 718657110 669855352 32047049 930076086 522068928 562891755 135642411 62265221 636357404 722415583 552389853 72263352 816679191 560006295 544108842 427859164 706711634 392117526 876121842 13612190 975086479 222813145 429101636 639775289 162088779 352786677 137835908 529980554 41761108 902797155 473703246 147923784 849772268 341825648 490850278 979457487 713660917 451627189 479280247 887420611 56380145 64221876 518946217 190741766 960787220 961252497 74685560 553938159 73995708 893023254 854264375 613231711 828351467 363598601 950349468 59517123 428658839 150186907 111736211 321131510 615455562 645057192 876305635 330507903 897674496 152597823 534303865 455216364 506975304 340125585 243058293 44497562 435686093 846684557 608578456 239365175 263352161 936314827 889289644 62067230 862392373 652964973 536328459 713997967 180742425 615944854 572014766 800433755 469644199 299063726 970987679 517543955 684999034 360254614 426148237 258313435 241603021 271201347 714547207 803453522 110478059 967704544 614910094 186317535 234552935 376793938 499768456 326393811 198453653 287968329 104341985 67586601 552903117 973760960 343482677 879015938 686584389 254420197 641256137 166947058 797488802 887082816 965478515 725684214 449591498 426556124 693116909 22485821 753577317 136519721 843993372 633526871 979448021 992610729 641793062 828138935 849782846 160870585 607050678 718775366 769584993 915760817 730919651 168209987 909026707 1891548 953800327 965595696 293462854 714925641 658431837 101226323 405758166 502322120 543113498 377292456 388097810 873011936 701018479 870341936 808846925 229319774 632882125 741400081 639415838 917101783 86082545 100661035 511721204 36280097 668864385 580875994 804451598 31858766 690789858 363185044 434118651 925609824 170285981 324628994 75160113 930131269 751423485 218297657 175050734 514189607 11383790 384387046 295049141 725369668 148296639 458507984 921122405 273282574 681420245 483345132 495694738 759500235 886221923 267828050 288856111 875212044 657736980 641334460 948331062 684288222 342555557 247422426 783064132 231952336 96199721 17656780 722257932 343372305 212840127 492467840 571098074 594180604 65057251 195732395 734845991 387991935 573995985 532673458 417166568 739782317 387908947 298477903 151995512 946175113 372798031 975720547 793239361 100146769 270553029 855570287 505050054 588470770 612693975 681075237 252821001 598173419 657191526 350248625 662768007 754317797 955581447 24813482 9131476 789728904 375161638 71360253 492782609 718863079 812409399 311257139 164159193 175761431 744665894 656138235 168757278 700953589 642877542 219391542 658669400 796393621 430967959 212123258 433754380 72218075 342161142 209546769 783230117 135543121 531312353 988332970 201871943 202863424 29771701 204697700 625315985 137477113 749475913 50491974 290747389 456283213 10935791 544517002 569673832 424327129 724960827 462095054 618395603 571754909 539054266 82044543 992503363 361207045 911362641 159401573 956499580 218890018 135108535 256690741 448132285 503739536 112606594 535538189 770739497 932063627 201508804 879519531 576335473 765543397 656280177 57478176 726464395 589821788 670198380 497531361 634743704 12881328 890125699 490311248 157843998 417642403 479470740 635517088 942583742 451282867 695371698 236090924 32319797 48448908 363391425 371729826 368145167 415881683 356130114 80000920 25074913 657284668 556926163 431658722 88178828 891298132 913960422 974649665 981822555 74589343 887538285 439997770 75079242 808201781 172500740 798865796 612749379 323132471 830140418 527858625 526114762 867701215 255645551 501384048 325105270 602989180 471956816 564836878 953250361 836939523 395210185 358596948 912795186 635514678 857147795 184435226 205532709 546944161 765680726 954879375 986756921 461063472 675000709 190347169 682021323 760337458 392785637 938205037 620312160 488249581 865303428 451223133 129252395 922752776 464978368 867232805 176395578 80663326 986405255 666077665 729978271 211576692 26083542 91608192 860306945 88735099 991173804 10181518 920791688 589719551 913214907 329765659 134490905 383744683 442651450 294347191 44440291 395990699 624498559 460504688 342127760 334789617 973926398 854375675 404616349 782311410 179733702 51059753 533685314 986584230 450476698 282515100 832937799 728400833 157181169 597070566 136180129 481255548 248402890 642576376 339365611 288589554 687070949 670752663 982283931 878292154 900898880 733526558 70250804 759106762 89100966 323493774 27972690 901600250 867120704 360679113 500224983 527673507 109987325 52190239 74743437 736405518 629421067 140842766 552058637 695910178 772128565 459523196 726787129 126627307 658262561 389393212 917189328 139818942 619027610 350982881 527356052 135633264 520100164 485022260 271014433 285895813 250617981 381036243 792272490 634110780 106123348 231972819 54375649 296549461 677498539 563579803 280884142 130693457 657544847 486863695 846619509 929714981 349911282 136043317 511856731 864014647 400378462 975567283 438936995 431536675 448100426 597388091 847859699 63768509 337652826 954557828 315711666 340038326 906508688 698392356 952776630 47286526 29532615 748291301 435850782 843267816 688194782 229590772 773035985 659526245 604318610 345939283 957744314 33946190 835203934 199059937 297108138 219094042 750913153 402398278 309121235 837566304 350578059 643874908 787197746 961053275 795614895 419054010 950825866 35687652 421064881 604796535 358850106 216909604 224544810 26122395 403616160 745309140 716533606 914623321 347343017 309350202 481304399 309160115 685655772 574084515 249993113 78114579 967184703 840577904 14395537 309547245 843408182 339787610 987139639 638657213 649533272 831133197 709584266 639579295 374970009 59026405 608919731 662474321 415400729 435591084 315079211 810366392 471253312 223026072 561780223 732608918 65613708 455297809 234037238 901033853 398812570 608359378 289707896 927419269 282589287 224371871 871043010 682302808 428063293 544362462 470092150 73495089 944052212 228656508 442675183 896766854 383909532 365983195 562402528 65509427 889557468 425203863 801835549 939928657 489421155 814895422 767814019 930287168 386994753 640733027 140291618 363977495 466914386 619221573 854880608 192190033 279333066 904294581 802927094 139645745 261422615 806271247 108691296 892160063 53634693 253893824 239594739 981252952 947051445 482027981 66229003 277191306 250958786 818379091 375465314 734686148 562403690 425472508 668340374 350334170 628222124 80767103 934227545 344571871 45118763 897983330 459781505 985368613 992898929 55465704 893515488 653105335 577393205 665011993 856899891 487007284 282936296 249232277 501985892 160183943 524876308 841457869 564127142 864395480 1996457 492817655 672325322 849169260 493318658 35739250 68382610 782778438 380012996 129347508 13721236 54786567 194288443 487529832 611190616 837507785 705431462 574754938 634498591 457401602 469584620 507787829 930418915 271241184 583679011 282969150 253680808 211656398 159369997 475402127 657722861 160913892 691247703 502214839 100855669 852750665 416989808 689795540 761884158 586730600 383622044 149755284 656626613 958605750 984764355 260108783 381873353 55211250 881639950 901522846 476094757 243974143 157838451 492229085 728560589 164905916 799799599 698157804 358444435 870879653 368303289 452292443 978849981 163262894 536452038 364198066 990069964 738427250 568493863 384648992 910719171 718225280 540117930 637898280 935717862 435380268 907013552 156817263 210975652 780660448 245212327 594928723 553491926 675265268 588742189 484147278 501852809 717193620 622387335 850097414 964129772 506106617 958087157 25097836 326516491 269237420 509065513 308582275 693893477 672062653 468377247 147989761 755212540 961168113 875554961 929371187 884097106 342735715 248016436 401468159 534555798 443493196 370706622 6266708 590148284 53502283 271351609 38124870 685941007 453933593 257556907 651901084 134168261 595872602 609580802 556027917 199862594 231925714 847379961 15180592 135789460 564097275 159913402 856904463 468620279 89945471 272430405 916424908 424023046 463614189 706320231 926334996 701807168 88447090 212881313 548653453 173029573 431207221 857403178 595699357 951530852 430994638 51326498 759897309 774392718 227722487 695855975 52397208 287713767 788085159 463526430 468171932 462720374 64460002 198045239 971173298 680632521 79318065 450775570 158441046 232863886 266433097 201445873 415436376 176138755 796872730 17647365 942496054 392220902 991756670 156839958 586392477 321438260 742612123 55698670 359673619 145844663 365933777 673529673 54123938 713994777 410338630 536730394 345237958 498360575 50738453 586626020 28045320 305972006 362153833 458608582 116369252 925685709 319361493 482354401 990728754 77659026 895510992 822475498 49894207 148036182 592602345 714395294 671470775 173413780 364210666 898876731 603033927 19537403 212725758 187428420 949074856 585354439 585586046 735828205 260041210 704505041 488053790 636650446 893304005 737716054 597220927 369391380 329100714 201512861 458135790 536572332 222735751 576138273 203550975 707650778 713194181 927138836 203275285 510687384 819762452 624840327 892921351 40535892 360010755 159724198 987992964 822054171 860420994 683246511 548773540 202677783 253103407 887446048 907573331 969474731 371746424 282917299 815492646 812108284 121610085 441467191 851861077 91170585 967438419 590132427 995337839 709377353 906760498 875487643 854300619 209104120 206634269 854313930 978647510 837864279 513374206 707143958 35693051 745194731 392164148 735084330 610811494 321996873 941123386 13939390 639182414 67593151 161139027 12049685 216420176 479194511 540131512 457956264 462375259 573201340 688609949 738091201 172948918 88721439 478812752 120779379 219975688 723891945 533066153 772554638 768841225 128133051 37080180 508110006 139148151 231742727 707741623 396615503 793123367 614997094 465732438 846331223 713887077 733069364 704406354 81008159 973703512 3332696 480945245 169073615 202818023 955198826 729475832 574969518 353797703 721570077 580723496 638548050 32826881 139371507 594628262 669545633 487804828 962797825 828151992 822496151 398766744 281993769 964215475 175397881 696127798 347195917 142219505 864987081 13780966 5922894 41045887 60583501 202794147 18993131 151553622 209270795 181373404 420432625 729898466 908998884 873249422 715067448 934918311 951217991 842878080 936458906 808170424 519246631 461945832 634814967 403282833 385746518 879760187 417526800 990381207 111726614 349690939 837276256 53958448 847209236 909998766 86367801 720599234 601989448 628374891 627901898 186685117 419574027 312633652 701334112 308472028 361264628 414207465 746570110 665181612 980937844 256016239 27014755 611845980 28894842 714603424 920396444 893619218 82895590 293223597 463379194 958064917 639136979 896461541 76263810 533226731 202021200 411502539 278552322 825188072 172968439 418364749 365051048 869883696 816133006 207760104 140957573 563398758 155697766 261217773 844444506 702932588 698196669 76010534 403059946 350269813 300332591 15193243 712248742 549972953 12434490 551672841 914587790 359886754 605801913 275784842 571253309 127212248 793511821 195675357 329501184 894826339 646474480 44504787 459709919 85105915 593930335 283494094 805231187 868223002 495708827 941433325 347971051 166284863 924478742 532899131 578201849 110581756 756656995 296569059 913882265 386217409 492848491 907312736 128670962 556348927 102958083 442195011 139774649 78935898 229221927 420428015 268482374 886686073 274312351 118697298 256585931 117880428 368460426 377001840 481532713 798845011 958805403 773025562 975954203 209930905 671205736 798650680 682196985 990580728 670308690 90924740 868045730 118311408 820409178 336492508 593300349 584169192 547162547 389163802 924951818 822318249 983907388 45015631 139715615 222953456 843458034 121934089 599413732 65855225 346775701 433192739 793059068 14400475 897667462 864781063 584334132 644081550 835184406 559275457 541471364 494445579 914029923 482621111 525312171 575439263 711426371 888632298 371301276 675495788 918987856 972262257 750642774 697286088 305122164 435348983 226877623 522011515 48923465 954687694 506249544 238219859 766274695 17183441 880336136 195281987 183496634 917117605 174234444 58607136 722306162 616865478 640336215 796306709 132784447 331146533 35695399 73516349 272851205 49326094 756078361 265632909 518304839 844611283 332796754 196595270 658642420 104208998 670316818 91026715 977823986 212507240 507011839 88668780 887390819 20923676 522400404 63954981 1441851 835405426 114537389 59546103 997375801 209132758 156884812 119979708 103517300 270560296 850516201 270428082 751572183 441975860 384996172 994886591 368170225 550073087 513772874 78103774 764527373 225378273 567964967 243795554 577753387 766392132 299574604 6483844 594793144 528797234 730636959 436845536 137473492 732286606 26521190 53289325 888242816 36668825 628802461 227570058 249766704 565916655 725946708 923666129 557440807 101154400 601683894 958873059 289321118 129120324 762808176 18600068 973250800 569738099 36793540 86889773 709931238 525183720 394367595 332590013 627045245 233795784 292874039 963708380 78506070 105975075 184366344 742765179 150831346 21234607 321621683 853274326 497843307 531184292 874838563 448572447 372393953 689984391 779808720 377546634 871784348 713939404 878266215 435205422 475307193 408781561 748320178 996968798 844617296 97266309 75823225 700892857 362729961 993810711 233444667 635305929 657106102 905914779 916907844 69535200 295563833 560511920 683945398 862796460 445180742 205467226 197095127 520608398 149000300 169791517 501824457 901641459 705643890 655871712 295398668 741758363 339646462 784883002 822926539 590861286 752257040 156310693 286149414 544126100 686422093 173649914 802958505 933713325 483160063 791197454 921562253 152342401 325069502 901838545 123204206 20805115 188408103 769359316 439475788 623664354 886167414 192571442 362021287 924943556 529770116 209345574 492983941 62364559 117761916 928834761 592246108 603393164 854939606 755794401 860951998 199581450 979785556 590213708 675468442 306606145 626993332 355117128 333221874 735476977 894256411 640536223 898155356 208190217 296432572 631230290 432438690 13706984 973490006 95925827 794011806 35727179 909005329 59410740 655773082 179347306 818816602 551275042 829089050 821025587 339718849 901233221 459997369 429886412 629805550 556232775 541374660 628738620 434959160 247945804 844936981 810785794 703448338 213063671 933233 736384389 897385837 636531542 257396494 651347200 391363520 366088113 502730785 257421925 125547974 411779350 473440762 771478936 950625762 284627014 548121845 624559552 717582380 892978624 464820280 241652840 486573161 538136901 443066042 400484647 722161035 773230776 26280114 418963891 812818608 523726094 227301170 807018503 992883186 815451596 790523753 239017393 923217935 643258866 993349968 571882651 368845390 598164864 138147510 845007843 310537569 294627608 747986483 898101852 890453552 737019594 667968280 213125022 183051670 732419831 725603258 688900571 717747475 620215533 100560496 707092370 528047771 986363830 872296745 413407116 817346075 94555707 607695609 299929366 118884593 196852752 92410209 548885134 859503762 581274550 296431392 394367371 753468736 580394656 346356761 796077574 818691757 682388278 941135278 710326156 977147225 826094862 593271921 958864251 853087217 679508624 503464375 512248927 507287275 243680989 259409440 180702726 967586055 682003058 438805998 445824861 464909573 123593130 770042701 313533049 683194848 179141015 587056012 168966862 415850320 288780767 661913923 256618417 711363309 611840001 489805117 979102214 453941181 943115740 613988348 949047501 982964170 857143490 2459854 665775824 285413775 750851644 616728413 120569795 955591965 454390307 196139365 121368748 863938409 710930265 444775705 620116455 846745230 881574054 238284541 644656881 644873940 400219826 912780784 112165388 641692643 313702871 558020980 75944124 229642760 732238750 845622904 808154270 222590678 886336039 95584452 950098044 688604887 281233746 233072308 464874384 387324654 116918746 725982033 795546301 168040009 571923851 277835601 446485890 16169641 686660856 770225339 733854218 241661961 768844304 810111365 949215598 59749724 439525297 376177341 71999893 754784169 945775011 529858559 103678535 741810184 602155129 759548880 102123127 749250044 617113167 743776444 312858719 114666087 747278276 745372575 941226033 847934719 170420400 808372861 588525848 61286459 676558574 800822711 798785689 867149514 676313169 494160296 214875088 732678657 585884463 681869525 17977822 95931963 97837457 331207317 146346147 665489106 753989228 35735195 340481982 295458225 668487992 75852717 550509255 572951599 15994595 771456866 137604673 201319544 405436121 781337338 174981825 49116758 321828681 22301305 289908874 635600302 397670391 785097820 406078924 713126878 356010536 631877911 971909932 251071650 819613060 195071065 8188668 798106198 750464713 663636603 950884358 445430101 614887556 680762208 916046216 162680350 513147663 785803630 337695099 780061766 767083661 191120685 145513369 328467061 308488560 150477286 986947619 50838393 829236468 179480288 336224850 973804846 111868631 473403822 344095929 319942148 94508814 891239939 274150205 76140732 32614339 771850248 941401761 329420114 281892329 871033816 961722021 241844066 926144034 820462363 84189595 769079257 399958586 30556574 250250272 181050717 514776835 76143695 694877942 456238380 481280831 842466390 848414722 890711471 615552889 379499848 961590545 840699203 636001417 64591239 829496350 458941705 517082041 308653313 337742808 363005646 724308836 908313022 91502340 795357039 734331763 774299168 386726638 123291522 935644543 362711574 815983694 766109395 327392429 952194437 77393952 818734513 222050843 294712402 454776148 651795910 816130621 676652144 565263219 516021936 744393439 851562276 621684429 61589169 741132688 872359060 763340846 386198004 985532577 586299419 64968125 42441874 65044313 229420786 344286861 699966734 796683760 487482026 865692852 803907105 159734611 634547687 86714425 106357437 24547322 134775636 242645381 552164201 468228162 269561713 63279723 620616648 950673582 758556162 990714845 839821305 877131563 904969180 995542736 596548639 43223922 801339689 905218356 698610027 62507114 450507919 32407443 482253468 206926424 813730943 252216427 993363998 402174541 99064103 756281386 460452397 494040413 478965526 576017219 377648304 737419615 488894146 182735845 494078580 76312874 150554283 775498425 729753027 254785614 884268220 601792041 931682177 341288452 552517626 889997204 124225243 275563876 81912110 638251254 465838844 223799768 504128002 575873609 648200922 273000336 457175266 981202223 50812615 809703615 913385570 601427076 508739252 835822098 354903115 983351936 681396423 673908132 418277413 755851583 753426348 408647115 183510582 209808925 904862827 259748614 869101717 391473423 507602110 228920377 958274417 401143990 836728495 820971316 534925011 177014520 660534516 39502683 956738073 669471831 979327158 572379658 780117915 386887880 367593406 692301555 113515039 406881064 623389911 940347768 3586574 903220195 762666126 521252677 536905132 827330029 851284975 787234784 288602318 502002996 528733547 720366771 831882372 925208081 330027648 47353177 547639473 603454724 338450320 422626626 147632837 178410599 729432941 216889573 184448853 107428110 77072179 297154987 133034092 899069995 620598453 155419048 300561671 154975336 822055922 627067798 225628436 924486162 530306878 507332249 368833116 88069243 93959984 442172599 147760569 572072898 608604469 479864016 377247965 196322395 214437926 714533733 297253925 803526933 986451407 425736776 814186404 996292259 766799394 206000192 758382549 319039221 481006903 880528598 821378843 464952853 582085111 458911586 352714016 771205804 172619949 32491267 848731309 869967083 939392904 815565803 126436862 886872437 896521776 808377635 728090451 598420436 143622595 622508701 445175727 192343555 345094840 886144053 551071976 237460958 200964248 944880231 779050272 650108449 724854974 788993841 847406418 488756976 215070447 516095620 510765973 41902946 767365271 803749121 592282165 189503994 274069673 995032572 257600921 815977366 218282406 929628475 887443965 497730863 527572415 818489645 552270666 628907461 889841955 919803411 288995342 321955319 497156561 677835222 255125689 52934334 131225557 663538738 953589291 684304291 381792131 119649268 642031228 63149324 609151080 23863036 500183280 546959758 471112231 826934347 924291916 162473542 976688001 786264490 774067161 233891072 907548604 322399365 426385294 234265660 873951637 114592062 127234274 481897714 22263200 771007661 866223508 568299993 196392694 190177223 387835646 635736110 855704563 777013289 829549104 572726549 172834598 138214884 301692307 642660609 112404822 533351732 536618263 49448393 86564010 445587595 4214539 120252012 820531145 295049221 710366808 982567307 409223502 411039198 766954348 887639007 9467527 751377719 935641878 222665290 636123510 954012773 909463110 83488201 94456361 114229079 871981897 542411022 555545167 388708445 613435712 960332106 132304104 763909623 561109657 616416230 588366589 774943819 170248926 358744841 112151309 613133601 441965274 602998660 66876125 993238846 644450651 124055130 629667020 90292198 250240988 40855888 160836047 666227732 497898016 320185198 101417203 397184788 31760862 335210435 762745746 751866172 698061569 117926100 734931136 465665587 788976376 530045986 658390579 358407021 481847683 35152475 131163550 471258391 519130439 198783553 834458860 102159375 735019558 711117276 156163618 398122491 545313475 443587936 641947856 250485532 39046783 321375226 579237307 19619136 604460755 694938563 460228460 793910879 99880737 843484652 41563289 337247895 632275796 629421139 10425048 278268008 457314090 996081483 482520889 728853666 630876644 928217905 830586023 822397666 540640759 541343155 783632020 617028718 678346040 434004331 626872844 783223370 802959386 70017507 681259827 27030544 447889007 70875293 189791018 74484984 178628729 587425990 814811207 574122641 497855902 806708690 435103682 903510490 38307898 53880825 15836191 380545267 349034401 846027821 430325653 319157981 863243721 896978079 622169658 369158001 133844000 481393492 989229444 567220301 170755997 64245873 688164099 607200130 886868317 495641222 576952759 677880639 142030034 690192609 503169092 14041085 571529814 854806515 940717333 292325789 340771795 460435396 386748998 263190811 770282788 923591574 66616037 536671955 672571755 135590392 197943730 600785224 705420504 766993524 142476024 978187163 952147967 597987101 458539608 908127512 281482048 778317154 619970339 306079558 985350450 834652078 880367363 4328358 857382891 273370801 872910855 500053680 267722086 719794735 46479085 546380077 745902700 803126097 517600127 307145435 384564076 534481987 392413401 959031016 317004603 354641268 863595393 902501502 161904365 879767695 684184567 420563602 448289242 834704215 363834773 269239675 929355376 456402478 220020536 51969239 622728422 888039814 260814729 79642168 401519366 738882579 730702379 327245914 879703262 746241394 92331010 795183998 371029467 31047313 359093562 43813036 456846860 341122960 903624476 401221809 904629661 214693573 425062329 319803789 200460763 716323857 767290341 588672420 624362117 323237141 969006386 538154972 50155857 88848289 770334075 940610196 598938589 678608407 405069948 638863746 802131825 300318140 583940667 682392387 849392994 350553761 932610987 311650679 221140332 762013814 921548078 929759705 828818226 192307655 322284570 995237904 352942815 520473296 363311679 885154493 467799797 719221852 614217730 252575770 292838534 139776996 51664580 16844905 330310231 708866470 816748934 432789661 165733195 552526237 832096224 586397238 945111681 659142154 552156566 617849934 207311897 712312132 486415320 218681478 49436021 849951367 212804151 853219357 463885244 468747143 504048364 593848918 50628018 952137392 962507042 714579715 646641105 225539815 189207841 226942712 442097536 750648947 140578556 178109665 599893220 66341954 261847217 458856468 118712003 887581961 984181266 222153982 223542642 923794575 683829928 869156769 565386671 490063798 818250478 749628665 987621365 413868555 172153322 942506653 399909730 516691588 477926718 889783075 387218838 414014724 839312094 895027471 501152996 976126374 33754321 304847282 471245407 494614529 117801961 126948547 230299487 874632464 184449480 378933164 791988685 478588596 908085318 840114659 538173625 678264855 659713060 84626844 602923052 459108500 742105007 34462756 444677096 200793624 121912561 769002098 325534015 862531335 10902701 829133187 240584466 446764551 833861252 13625730 624275456 142104868 745697139 558157087 252699565 515569276 496012291 23552031 307761781 380658938 696220234 101476916 412159199 983841777 634591537 112122815 51757305 728796645 823872295 197930084 595125011 915774137 994037776 291401022 397810614 769393487 697467562 357203445 51198606 847333900 837208236 315682432 858661538 497468906 959212010 634070647 332455010 540367931 314328066 640177802 553268326 818856624 255975303 237920510 536469579 88154860 352770755 267614108 627464844 906460384 651111452 785274717 522609265 471859277 950215155 173513528 795444797 822132634 781598417 56428285 564961829 444180003 371758714 719233596 565986328 834846789 798457825 539686187 532639847 395106692 784318678 644753577 62053961 367390656 878685092 984362043 926655399 470079899 679791296 754707835 182535451 718025781 655282335 910798074 897313145 874570301 132032244 131834950 470428355 2858117 383546957 47946534 897815355 529347571 768483855 18229936 200527249 81219206 886743509 530502872 287104057 734060050 727949845 258204284 139815016 79438662 657422502 913719364 148513470 855952486 653435086 621833348 485309791 534865866 531887981 123309150 99659707 793028631 178821359 968909130 732141659 69538736 368723925 952518441 315340380 931996939 63000070 526040446 550281374 395114261 876256176 86704865 271506192 779560263 171343084 196393374 125290039 497201961 545528682 49730438 658330224 861836391 406564053 142073594 110056651 546131026 325491013 291968106 916086854 516029162 777094853 726878493 237171961 899551314 209789914 29605617 332094811 846671570 402925780 208439797 214799659 806104198 59871820 161610286 580955353 791710140 965953057 346939982 242127923 214021598 486955952 786420541 647575669 236709680 130534505 761754293 132308289 570101978 797660183 824520183 852095793 581032352 431619581 962378377 669411348 206381170 843001592 576554475 262265758 846416291 743464577 687803390 357037464 699734880 98736015 165325394 114000434 643184074 447841245 500107379 143490673 928051170 184560659 918645330 123061219 527967559 716374116 988706041 704441236 710076399 200258854 387864814 678997376 496389276 957253224 106145435 417784494 433142753 375386855 84574189 149088590 580593119 772088478 694817376 518415935 603955949 878228420 550900435 878900937 994288786 551253058 712048619 877606969 753017262 888255294 968864840 932039438 667509056 173678740 308116932 198140620 989944402 553167413 344617242 691368684 345567020 824729262 426632344 608325050 124641501 814057568 954811134 333100744 324885183 510300901 582757357 663233766 979828922 654728242 354596663 327881787 248895394 954112459 188971838 341678341 376964712 788837521 346076636 884159634 309116150 776282365 69506819 646900233 630580634 348896985 909727801 535428639 71673663 521875294 193329835 551560476 391466790 797160558 961055900 75777452 151448814 257303043 815011602 556236760 306628903 534222044 201798636 906725529 660293525 346699971 691902558 66048258 129634409 351625173 729527655 261295546 211261008 404162932 66177655 371914800 182421225 850194634 757683558 696083715 563827185 988894991 462707742 287420869 535124272 381196137 55158850 775923965 642987961 672187675 951866010 697143668 198789104 530136518 873957505 114875544 519320981 944559702 852258642 553916813 831408930 586089878 99374220 776685664 615717896 715152369 653208441 334432459 231461896 595125145 855725540 975880948 608616616 447738098 865174595 693688434 793203222 85562659 19513582 926619186 803860135 109385543 958611485 634028494 257175130 456251393 161115255 595943911 261685984 737982375 460775690 838440894 329401648 83950959 1096467 718691131 832339034 545814966 152327144 113723477 647788023 442994276 592353990 241982798 64165026 897839401 694623729 210287694 515085717 778470339 488055417 455550812 579901988 341293235 414152797 243731226 630999605 566369878 513424946 329931119 917006383 20334185 81474889 470108647 909364328 245599261 100594545 644854500 222079091 586116201 554508597 356166845 225634701 603228835 739124630 766305587 504449730 668540605 436377600 948325187 990693637 480116201 768937227 618827160 758606472 585032403 805263992 945219215 926343425 353295465 395655750 171724172 77464614 951255921 899318662 199364905 971362911 847770629 602462930 339281083 638065070 892518628 193941911 383753952 342609232 716938503 169266152 391389665 895858474 598483577 127091823 370464325 828620204 741091266 535605505 655379889 15831464 78081282 854994419 893117434 707881848 934846050 761783796 882304309 909105793 200115237 795612445 995684711 91812330 456752028 374342604 24485178 116875417 271371717 160864704 173567594 750866195 25385468 818674419 686899160 602094602 124933098 679822383 729770704 9784817 880693282 382127093 858084896 791363745 765300237 607130504 29214561 355225536 212534056 402250892 145791109 339249458 728366005 921853538 536778684 463480404 14483043 689947038 897255005 534760300 833694210 393381768 38995589 922446937 322516391 277197771 127449553 246439202 609034416 749327594 436529072 924271038 558144870 214397020 251701252 797005868 394773043 835832783 66125741 486919371 216922926 452720119 966803324 870780866 752946547 45201706 577832031 553222002 701570292 250506671 221588816 626639929 774653918 150952950 183157792 192356427 777215741 815089299 956919487 242399054 231058347 816688629 56244837 765527580 389508752 127059671 355915365 391003522 148097618 553173825 636997721 817650054 463402262 102283478 532331172 132960467 459236109 667533787 532081157 981109961 815600162 438484237 514531121 917765751 482249668 899187556 454760785 282329873 508139394 851712114 644262069 448687425 448767745 659967102 474591015 429496331 91125843 565978905 877373505 334347934 87520195 481550549 732644964 52121295 234953458 943742658 146217972 350989852 671414087 65312386 139549834 608182829 426837756 31918091 691520486 909247595 563271706 62637734 963891310 685095798 759147717 875734442 631043258 200160612 400983633 626790026 109848927 373809119 375162574 484734741 707224071 790706650 80756935 656576368 122480806 182824285 786396465 4105651 700571697 836277802 339049763 790956058 366289219 459612271 880218460 843210251 101874430 80238185 424559336 744547787 506742748 108024640 743609964 664789363 518316489 360889798 870740656 174874330 168282624 97543012 644338288 51977796 855975893 486051180 729356495 369397528 679890456 452371988 114832395 868679088 883930999 483701622 233787469 944294107 377641103 455417490 347814629 559034271 808444760 251219742 899294315 376928398 572031359 821366725 654750112 12174838 732136381 136310467 315162059 717558280 462225036 862727887 626071515 459027777 532754859 898596747 124545368 387947798 27149814 245223925 150551580 283169896 850057635 972584421 628174152 741644038 996837304 731523043 293499791 107867173 464316808 659172676 713561870 467778157 42866877 933792578 530900278 809546623 309227302 750611275 268593889 616073252 518093380 76704249 525394530 400162622 277182433 664797882 875193044 576958812 143031853 954479472 95938548 463644838 394323277 806618500 42345193 485409545 257187477 305667000 994013403 186099285 563858543 310525144 160874019 403036398 891500482 958400107 664681129 50817877 534252333 190735253 988975942 336552383 109716833 88749309 543271784 952416072 64287471 130698740 296335584 194216031 458123969 924472832 58850837 159788387 683366073 322425612 805119835 876982045 346579865 298251693 177933172 308277303 72826432 375530996 321569581 947732012 594199982 247873627 72194510 974574629 470047090 840110227 289513059 696698052 492115956 99439866 867799369 677961976 885451082 399801838 922711814 606014442 882882595 740893289 719774695 302277576 417045786 423704256 436199756 215653013 954473416 13664162 419225411 41372508 642487959 978894920 645484284 851124138 362119512 152420133 278210808 149559337 925871821 945789802 24391896 423734735 318509389 827766863 898640974 615999377 921678892 645275158 794394256 135226557 461734412 665554126 22747810 420424708 976378520 933453996 382055544 76764830 684474830 23357311 228203481 851740203 7119396 266430373 321083878 611532108 574058995 474329042 812541027 435035374 627665746 900055715 165627693 879602683 159559795 798844958 215263013 831425050 422697932 746386213 849249709 678332593 450983431 614355754 562901056 687541518 719033341 90599025 98393730 905347746 961841677 217526237 267822109 343449615 959106082 560322624 838672850 818482819 281122546 319265515 563611310 266051050 265764514 451302705 656923616 576386701 505377175 169334530 55497015 114483384 441871321 392072698 695669873 128217118 709964552 170852256 630763756 732486227 63421563 690693000 521604601 227974217 182329121 908995295 515331080 600878542 281023151 257625013 113457306 911152539 20485172 975508521 574876309 542180736 947316111 700788909 13212116 776380155 76689902 963336913 123076781 368793321 351325522 856837131 464309424 450458404 214785547 354041055 42058478 119325609 530170216 298045730 583273532 126436050 171053287 372432271 450088114 601048685 489207524 725451190 123644344 916110470 799954807 967536780 298280816 674283394 750192563 542257123 99513814 97941908 299361463 501891800 647150061 792285122 756788441 790441820 632245595 379647878 82696023 476218132 711124081 656158098 33128550 344646661 129118025 78167325 572542942 343341775 693709249 135699331 582867893 504468511 970037133 719028684 774859468 146034339 330103955 53955902 951018812 572170453 42143940 199980550 581687788 897618045 131866801 186206382 989509991 941577945 558565332 292768584 570998401 334998931 977913816 625278003 971677355 540451124 510500499 246225641 641242951 461013671 296113099 250221989 988282004 610369218 286980950 181648200 881082211 570234524 440673788 352340796 358499701 55285863 768767165 391605571 694757740 593940035 216082659 804574120 702606156 853985950 491324298 209622063 458373911 929590091 709366130 127674277 928478012 963364671 863898746 17457866 898075528 969451172 286921513 871745086 601298673 974455089 555994902 758841649 382424986 743322121 163788753 106483062 807245572 251759513 429921100 482345982 119367961 64815004 463664311 576971575 581967575 604821390 732876814 246280912 189720974 995565951 653040640 737005586 684653004 811738102 201551579 244926987 140311037 709694562 41968674 838399663 851138414 200777350 59284446 842049905 497130817 286419601 476273296 444288869 540520310 390686325 128579179 800437426 787826794 275296863 639131054 59916368 995561247 95402431 636540936 295594955 364557767 991304173 700334995 332012117 180979093 747825965 416389867 234495223 77330316 206600819 582576172 927224361 97241441 935762672 887695312 952244565 461694878 490657220 20215900 580807473 442919490 689258056 677052502 306777084 257957025 585565852 141360841 928335110 394553234 234265700 975591352 872772778 929818706 903533083 856535834 934393295 263620930 292030025 226685450 487879689 51147599 84358328 191621766 225966189 491872976 907074590 416833497 400230835 357181305 370414558 861495222 195426736 316411887 975466240 690695125 641524771 937774522 631330413 711627514 59424860 504003014 534329880 499124114 93442475 580325532 904939935 726234954 768315366 476175684 839522420 582513895 627140371 335715238 752270191 22862703 230700378 300979959 297488413 868825115 669205079 56334639 864893395 366772736 135446616 736817693 764786850 687881432 734134257 539296196 792576318 149974990 582151747 546662293 456588800 298750990 542184264 299861313 791091191 151608653 754665621 794320809 72944131 24477892 829535701 713046568 836082354 535058394 332415016 388072933 143492877 747431235 260840338 687556428 271174554 367964066 976974699 87058647 376298545 314603130 705857659 813741259 232139361 567304587 74774868 783886629 844104019 776711358 223958700 541435559 812834236 381753804 618550024 120878318 724905944 292734448 895446449 511509881 429631682 983105049 859178028 203024034 90212726 506922630 908224619 492551104 835023703 935266065 798128222 650724094 208015834 229747015 46475569 596345552 593188686 414806648 554866411 171432877 699880851 877243611 315229610 320513343 636720012 23889082 359382760 746155412 739090775 516168098 330816977 967968646 704610394 835823110 901144431 598934729 647761856 330095411 211062758 494985662 423450885 713472218 905768777 952043398 781544437 794608464 421366530 111327616 790272151 565294109 734531855 965517061 536961788 98700254 461447275 477474268 728086345 209805409 257177696 867130600 478954733 895058811 641957156 216991556 541873403 979014035 476380875 904032180 467864011 30564174 950460491 227145563 963825396 260228904 226624302 579454146 42991476 328298006 550870064 11590098 320651030 704348849 180335192 48299460 724867879 585022991 198927030 894604260 677728097 658589701 242086071 722072635 796693788 433756781 487841348 708180919 354609834 976546930 606098518 109446674 916604359 107861400 200944278 550767925 338571317 635750050 147813658 344057912 188185655 139561549 107199115 64504248 887508307 90512070 333408199 401619047 813098500 230004076 328703192 71113455 948934982 771338847 364077093 37542935 119703727 984235924 47831364 161699625 82568910 311561758 882118527 206343932 308430146 533165401 191252513 383304919 690608034 506317284 291361391 471889420 609381340 548198577 346214342 6784590 730897711 460340110 969427928 961446630 653605046 373060696 227938270 464599665 73937253 906556981 432699058 926710547 812494026 194753399 424976659 688743044 812186172 663850054 122569199 458667813 932846020 235418587 430266471 594093974 890446952 609991759 749337527 80057795 125187404 643029907 230827981 153996217 538845187 1240738 767730484 303515084 579310590 731154557 185202037 9975004 118072389 728761912 326695025 448477125 740417396 964220628 305881125 370623794 213543493 501042283 357945364 95261346 198470843 479344918 75616721 690936636 477891719 716977903 675722207 196837396 862764476 252855443 103267620 312770650 153981274 777190038 631507648 567395721 505940153 920608534 290514503 536494660 475128077 481998615 696651372 77644409 651217391 497178502 761991000 777955609 859167353 653699922 467048686 75948748 396843737 745572217 289675575 562338540 80471336 844966832 79823321 734488606 644234812 977861119 138185072 723315937 176404819 623761434 647136248 981482889 731274410 58917653 892111226 954584945 622771238 615918148 900383414 497431728 857693350 632861153 426882694 365944849 923010640 954489915 347241155 650894223 841250355 140618172 503394102 356811571 856462782 248735907 837586598 520373623 3092853 767137350 663467241 130391391 492092288 5383376 813584367 172406698 62578042 776496451 717836699 892529924 563564100 983521538 528029401 802680901 416038154 615135580 436894174 618885789 685107647 430641152 60140332 473565471 476120933 263127034 360371617 226622065 236501364 599757241 157505833 242899301 661497007 969155048 685013949 517060510 235721470 539231778 645832158 60783839 716277448 359926081 269252924 899388548 569279027 694079899 708206409 641670810 18615065 515323491 346839491 659800136 922831862 381572345 691356990 685858170 408969586 710107308 208014121 980587888 75688071 572636310 7438228 442394229 957992972 362037389 555089577 185616435 828063588 122475896 394568878 487066010 517281104 663956170 801259560 637282022 81204004 300757332 44365245 257279470 176276095 267973137 481634778 109569739 635636849 527366416 183171265 944793044 25943434 38934971 496049079 28481710 838607288 547170269 643366002 9928617 127621351 751534214 785477788 529577591 661560359 756499369 573949852 415737788 736073975 373899767 658839739 188630678 28720073 128790010 821761977 966774135 121880201 934204441 187163793 831995395 10129435 953743815 635440443 315367349 623028345 864990873 731034561 373923559 547876726 577926921 742755533 436789647 30814273 834674942 425040303 164784596 735539874 888268631 494038546 363524702 619367445 216882812 994850580 964069099 469768089 584493962 530042401 514522433 690802684 421698389 606725498 249451169 122773448 577682323 860282911 615521519 638036143 751632514 906922652 215715767 765843620 512734691 496453034 732241760 335562073 989683180 381789208 966919871 400898337 476924666 639007764 915879641 649672247 201409219 711996698 921557824 382119253 280751649 156766004 606555274 330669943 184161864 634562515 530294665 991118843 790542453 844084950 847330953 259412045 651738779 661272706 635550423 332791687 762409039 792645426 69681517 382592560 110963369 625970475 531633438 907366705 165676892 221322101 154721866 602989199 957881651 809268262 308069122 307198872 83538699 186417066 427191631 891054483 920835388 764037416 902580684 346475176 264902762 729578771 234336644 6483487 803858942 845091237 376129429 872193916 460519199 182009834 254421045 583273952 985777179 891853008 726624404 62985573 148433455 621243303 335592108 954218719 313867479 375394381 180974099 935576109 771747153 666755154 609492828 527019755 99698943 685698366 367302939 532850088 322514577 79028357 181349683 171207667 605991482 385241842 473239417 321796966 71281763 491699520 866236109 521998330 817347392 741036992 236272779 20220737 390506482 195411200 288708802 359328788 365566683 386906487 381762474 337590527 558893 623570336 358348015 963168935 844054943 955463643 140396982 672878195 10420430 859996517 398128010 122993565 868217822 682233640 862233891 557527701 816795936 3770592 889299774 27784165 135664327 140118454 740711702 88139836 12366980 945799109 904930170 862535978 811827920 753149951 230436996 607064055 785584050 661035461 186304600 231673116 607528072 926210889 799176521 878725470 475521160 902140027 97811868 926709388 321477125 688566828 615663768 175432428 588793118 315639703 470326494 46963531 777668934 207402973 402668222 252687040 45082221 156328317 43489286 826127257 839198845 267617794 351326357 813829686 563992817 703619710 386822060 528433041 575222453 279822267 231937674 266603110 953239457 715472209 343804665 465767918 1495337 5910279 821251475 56738962 351030228 676001907 939410622 277428725 275871208 124850710 454276257 964719886 476547486 947869960 28611503 14537603 380403702 388493928 895629833 382746455 176332014 62600560 486100605 796028240 385885612 397917022 502284530 65673097 139829466 892122 62358446 73030666 129273600 791165743 582147650 942974500 916873248 593306240 194150679 798741196 118120418 182186360 801829810 187725598 914908986 743138689 85098194 608462294 945844739 354869999 655640770 648378067 270050842 115165062 798575781 716457013 618118548 740905963 703501405 611538944 993361938 961986996 907376113 701234926 679489404 593395535 387504060 21547026 484728510 696135579 108642967 877757928 788297053 801388599 824905333 726481001 230735290 243824603 291520238 206882955 767582282 301098622 501183045 138098811 610470562 309925015 660893858 299240569 288139957 497004680 8216109 350491061 138379590 475782951 160981038 174836212 937090605 190098914 71878578 690396409 597854478 448490034 720540807 338298559 254686988 532519281 934716821 880607888 283127135 633508061 848466768 727086258 946897479 137653000 293750450 657588105 565567113 575679851 799547342 513252709 470410035 500784902 518836716 718323648 705236742 523183515 601440560 330957547 638670418 157736921 987294115 641735439 123494959 525828690 447169511 845842555 509163396 817866980 885013388 573423854 960705987 623912715 102814328 77848556 910860747 942915184 357750163 987870144 790984516 226099171 225422801 73029254 788518955 937181687 778048403 608568892 356198250 2775165 819325085 74757876 866745793 500782665 642510087 608605816 504187753 837988893 240639672 137770960 633152438 975256687 556409147 838497524 708803265 319376635 960317046 575352019 778542198 440661784 895442031 74596435 122304776 567551354 282926945 244026140 230746011 639709833 762536256 596272693 792657321 703185096 465631056 117327924 243744711 603764558 721631590 954957345 798523973 962051606 748381455 877976832 821620822 821667167 417218835 586601043 770266643 277877466 783106999 195282900 958957902 796412897 663671668 533424612 919558000 576143569 448810704 357475268 521282362 702574516 765092462 243544172 227476677 676364796 884014104 489917130 873266431 343196888 947238882 854640007 284565716 190054374 537771595 726386869 800080646 775717581 896657252 514974167 778917739 122249576 770807825 813336726 748794821 280769854 203780695 866595572 153236734 398055272 700826303 764148449 746518479 690707330 819107721 184487557 31686244 111431197 185531873 308615519 201117538 750340582 889069084 170694534 424387962 41459948 697611355 894753301 843051934 357398011 437174477 334564601 488087697 865419200 912644897 943492173 4715161 760163644 464584563 26291220 28122308 712904006 797274699 745439508 434142432 131969694 920730829 110133577 377095102 830832972 233316113 116113428 78033621 734862500 839325348 830227218 809825319 355474822 26512305 126286848 713191581 994535844 910911610 832170065 746750697 617074688 889551782 849947150 432749274 333545507 347140456 371421190 22678194 737327782 637574630 398617595 199749556 219475686 764258964 253335581 874704993 284012073 986327288 315842018 138471003 30309859 837435692 624256523 176656169 468449423 677295050 663405935 132768844 664523403 234305949 798961427 535000377 124469545 881167140 221153410 903914574 485925708 904286457 581716676 941803196 652570518 212112627 138032297 775579975 126895228 376837225 743620788 149676725 740721364 729287142 347011924 739077598 448485670 779143516 716541468 346411082 321881705 947188855 345225776 680067500 835605142 581718748 568427068 508541707 144800498 868660225 994911067 472704182 490666337 113112037 323532403 310628506 772001133 679873304 87978874 200159645 852890321 580596040 822135747 229632283 218181250 20270949 456786679 926557197 282129120 552248105 872163371 154981509 808695688 678844907 774893074 717946519 715976452 212444819 685097177 144417915 294286215 36604099 50322347 506936666 768252701 123142517 341657824 363875255 991627982 285091387 377298249 772181741 902126517 174407769 4481806 215551259 734614073 239328776 453044590 553598170 463897937 427957863 981295903 966325687 668859825 177082264 564504906 6952047 819908256 902067209 854994136 686649165 241971056 171561754 45327314 878480957 75941764 448533925 664744259 672164768 291666279 876882365 270301821 361082219 832519854 691134622 584582938 275168117 274302382 393946490 6630344 271351026 891757012 248312592 252693979 178413176 987023301 187696356 639157315 356650199 615295612 542205739 883816875 240924481 586856361 614174580 497941171 311154841 689018159 570577944 24538973 794325369 225623793 972370926 407803409 382825162 432563388 379593365 422746703 899380149 121362636 934261668 407603352 216167504 944812361 938692720 693889484 507186590 579435999 195373733 897312681 483813833 884301463 56089855 545360070 560177441 853721004 855741790 176712410 586324761 130317724 952215224 759967301 982429828 263904987 434927578 155717743 223387636 171388581 721777462 586488143 286301260 800169253 557207227 621215678 956924289 577060083 464122851 857978877 19514056 448458909 482402821 574216176 558946254 373582742 477311414 961279295 198420161 302937400 9734773 182919736 725796283 995196079 556556034 130012394 933428361 785613413 40521782 71536383 848219970 690467763 809580331 958408829 895648688 93696168 468305929 325519441 16385810 913996991 50656600 470848433 331134338 405118984 405278014 23916350 290100054 202371925 566174479 293084609 842123082 252691693 449659506 384806855 315812767 147600358 77942245 930981799 81706105 286251327 599719082 457607373 214298174 822668862 791922339 371629879 513242357 467970156 464259708 673933936 498558048 322021838 823238916 462700697 603098256 863808222 841734469 38344740 921227438 226205664 464396221 904041544 629706649 88203607 782547053 538201580 197986154 699754505 11308940 708576809 237280633 288332717 239664057 429582226 438468789 715184993 377662517 589187707 773300221 128783344 557705119 478851428 877900789 136428117 496740177 832104541 293173985 323018743 899093978 3421084 793632506 110732147 896437787 126638174 986260019 407045365 852861017 595562266 985978795 193764067 447886298 120348362 953747874 58513280 812285742 749314306 488735698 468385879 137289459 623319060 416188675 580083187 125846812 145818741 290220678 369374542 687040165 767290623 411862503 6781142 784978363 372726586 838287365 938722867 601509856 477970486 199684257 415899583 183567124 887323330 310733475 674913168 592721627 183379107 475052501 681236226 915767352 263953835 119698241 446308178 729670709 22461562 258434818 971999930 864856995 836416093 397833461 823605875 909205521 339897269 214171456 803478241 745598388 559115778 224684962 43982367 192057201 860600690 186135819 424896734 7500515 372626913 274185901 80029663 620752528 168541361 206510807 531937275 23424201 786169738 320619637 12391867 232782110 481196046 514277170 830219563 377281401 413118241 316965730 418726789 908202571 387948788 488994727 499973557 745179754 696051263 491622701 961657617 911313174 244514084 565055046 612049703 907286206 143145979 843881746 853206475 459272895 253297687 123405941 65105742 234694144 249813531 300559453 31444224 973651865 964519647 911638486 689630421 527846535 199127305 141020401 43064886 200004818 268141480 310375043 888130359 768521770 530336607 162852961 721584996 795827197 254147346 565827002 699932379 61760672 892502374 195027956 475434247 539172640 12042712 660851889 717365235 254856685 101166174 450167042 878139162 731352008 520276227 766967592 199748129 950565066 486837144 702630051 598050579 245825272 537100396 947805430 78696768 385727057 533919065 560965986 204115843 160469596 641531539 34672594 526197849 160449981 176324843 846800774 693528623 458834076 225052965 872843578 128293146 392930841 672196659 683039178 608369611 377702630 742220956 808873221 404213739 471038060 687647621 126556606 184682257 487823864 347020740 766472216 837874011 776487556 798670596 678975907 952648936 80793548 443817101 126788380 318613715 446386854 718896315 877739849 588287676 552877778 329718707 302186683 336454935 755049868 309554504 744453567 584937093 402481072 115972068 692704667 318568090 76836092 233602542 166738004 623265885 168668843 631995676 103345813 571343145 735644369 438883807 903475117 464157620 576997887 950162027 93375235 802110387 826798130 606661213 35150054 230003057 910809173 677150852 779958487 110580852 600587508 557894020 642659797 118284543 379510215 204766689 419370242 560352820 323191746 824611275 408841510 252176104 729877893 989232785 293284405 273798767 34029358 49237029 274981589 700403491 173065936 843429754 599998374 423470059 714762213 839411398 187150056 981527772 165833113 511537786 633227350 279966136 677155433 674417608 459364235 575058088 257313392 475997011 212979932 860509516 559450963 997047988 168640465 867912711 420890186 845049764 256761852 163753168 309393269 775094074 987581473 13615941 416308898 281358658 6726446 327845940 717777143 467470278 696078321 73854314 107582838 795136368 444996844 942066749 684795134 108030887 961075900 209472510 321699723 126036687 654822858 481828223 951191660 77240932 953426596 232128371 943806288 579587795 750122622 187829344 935046374 550665396 704066425 925526649 942628379 650638235 6412706 593599148 601060971 132817038 983266674 674819330 620827725 39021305 378602233 310134386 257945280 336226569 892464570 795040028 891094916 271174849 740976317 909301333 563604545 523175373 124563894 399225370 797926097 93252716 956663972 918823251 190355276 397941024 59942879 553876795 608688309 488855072 967077013 253067124 205881780 718436631 728187072 718634300 204642877 280149975 682417723 679505393 951673919 437419096 296657427 267934950 90912198 555161249 750326633 627743670 46980711 458602026 182058029 746927265 988749883 47838126 695319405 308834813 585495512 416283241 393698361 314731497 28031160 392895247 829609590 393977477 635460783 483507165 514259898 895600947 324358970 655910169 126600561 760101137 136577986 2144129 82849765 512677730 42512213 620080674 78493064 414684189 411594082 813347593 161180362 8025340 187534490 421769476 551984278 270399764 310739497 207069324 991515272 16342862 390269027 874750476 868802863 437384659 136482016 430129016 405051887 98773617 977906418 480659760 208133931 355198276 143307667 519573854 11737379 104776926 352818139 897357208 59223208 224676079 195301512 444783206 632916459 987565950 254045986 503463905 961310744 200459511 424476644 285182798 558708225 855960377 633326015 115183995 436177818 737023218 43109210 441410839 151818484 661268520 611952535 783070082 976701391 15055993 965047749 227659425 880022788 338841678 553275178 550402071 468977533 296279791 257751726 590854414 531038373 353554406 443029458 28500372 241212034 655713397 865378039 394905763 381942130 878411342 870711909 124585520 748416156 266099752 374176456 961369231 435973689 928518567 156380505 619843362 934536146 550714792 974381990 560088454 650307213 546178109 366566284 2689951 902826373 110836061 562911775 182128627 684277579 691919494 750137537 115060478 28026379 336214454 399667436 60396414 16461546 449935824 54706198 938418103 337113597 69353967 552307641 280482588 987067094 573358190 920257719 826486049 847102065 951117014 540146510 674590535 818029938 742215399 247907520 154929818 227648393 705648192 981137447 848536844 996454931 119411222 462683784 394575961 282812047 571872682 543106740 37450358 62781882 916733639 124883576 156774465 583965909 444755417 188336750 792584406 472413687 387251715 176179961 727622645 511157707 58685947 679856087 557840179 931320914 502495485 528871847 500694963 248512426 539382155 32480045 391712357 754214188 766922389 348629271 992195328 677038069 45070376 933206715 516747587 141830033 863662602 598161516 431357656 958011979 965208186 372656978 34413523 412702220 204458820 892179167 334676604 953824253 690248563 889395213 934072937 530730572 208999837 385272627 134672334 50006079 141998544 254994585 132140050 896784103 107323748 357432807 39330811 700120192 255578761 19900184 335346025 823618558 657356070 497763010 841246898 813558196 86263974 17496811 739025388 300799361 439070369 367958731 157136340 893446265 40462292 622704150 359470040 738999900 880539939 858402234 87841435 440881568 810710300 709255532 495126066 277396197 355859414 312815923 36199337 721083720 402985134 843103349 980046625 620916775 181847854 574196439 356088745 642580958 302951443 552578131 659194445 327950944 189594706 430278756 414647479 865185311 587419269 642382995 793608832 774583408 667975585 626224189 239215018 111309491 630773006 109846289 815006662 712426791 136502009 842919281 418635693 633032949 378261653 855704605 781904726 577476453 11193876 765668181 139193607 473996240 672161920 389259932 232615796 223906190 125677008 8639543 496693101 822281687 631380240 138906882 8097124 837187836 17917019 328201745 565582553 25074241 275063722 658747183 110910771 371553355 111964434 100758952 448458585 653655972 804529573 164082134 193863456 767526956 985333108 100295475 773253739 471922168 332207820 876494875 922311476 823385356 455238500 499884260 776892305 320138404 188567136 128516540 824303090 452181678 37011027 615499372 393867807 170969176 268077773 646408893 151745668 377087270 780126678 656961844 890075420 855677801 800297912 915141068 553560089 460649711 149544846 385242460 156951870 463721422 172483463 245721412 212669529 397572056 854065771 873266760 633106148 646475037 274220625 739046800 343259863 746652883 884311599 555478525 433090934 287484569 194446049 185025498 24423098 488535859 498894563 21083124 826751227 212204759 411526473 169702853 862763611 930907876 830984664 59400916 52000955 605274154 127349610 844752705 255446399 978752592 920066830 515829307 269679780 117732713 780952481 740305972 809797561 923808944 354574448 607693907 116681428 107345008 683241282 309718402 563820765 878751951 249583974 826935760 494706560 384438881 270541492 465275729 851096638 430807357 813304523 572346230 52775112 114665225 18165469 216905320 620732424 661751020 260754213 952588343 617713119 460906519 879670037 142454735 864274459 422040588 767701414 195391443 537044942 604781682 619612264 84023367 492417865 905371956 552789688 874073645 233635181 465640219 696084861 45507416 19751662 263869774 545280899 787669020 257351082 557401479 713691792 279019770 660147818 71616403 863361341 664512144 674754926 670534580 485877604 893098881 707643079 158754083 679123476 914316778 823843443 265981344 395022584 947265187 923883847 668850285 47798347 244381061 533688422 651395751 880461248 210909778 990067780 954291593 358911327 792886181 223157554 979825151 740510267 58348062 541523629 122423549 309149258 22032444 167344561 468262845 92079261 59620377 638574226 30345728 743828612 52643882 93923017 62014201 745635950 583689322 809126691 679989731 202369560 304702386 135451179 332450898 839634493 74289874 906621109 754374384 373126811 401111517 900111755 913592493 658954015 949329247 909491775 911416869 436902984 803526008 40210714 480617896 730800203 207694545 532749335 183346651 488709647 125921015 577284678 802829864 934746562 842026672 528980364 684359280 335845014 774095506 947230571 506617727 179046910 333964972 429802939 840567052 175080873 749254606 932461514 116921864 399955240 47949357 140690925 545137375 700929767 420953441 503133863 638519330 863585000 928821758 336882818 369749126 329572274 504818248 167158771 986230678 33473543 933047655 464271636 742136990 785480582 636524054 302556205 53704329 818470029 25476522 970964809 604739030 940191412 256504371 420952462 147691412 515275657 414117292 332714072 721465780 569939274 524062301 246641344 348708150 521410476 343428268 239003440 167057989 883395950 301118688 161333184 708897507 969091032 935844405 219816561 775700642 642016008 202347224 744700261 600123639 60574945 963041609 101607388 769223717 909588098 355977337 163515183 704063093 899803789 928958780 514428938 830602545 624054376 502823179 600117817 813648747 587011305 12574694 551767169 971137886 775701120 220871612 941072482 473568216 155684195 834576209 160879017 424589628 137521866 394256061 978451476 71910125 135927036 388964676 861240201 656851856 973205055 588327877 200052454 224758129 373273944 995762530 399352527 433935906 469728067 630432792 953103695 462983195 491138250 347325186 385648258 877341088 664813399 93142497 489008412 566042864 27369342 921381909 83079818 119707256 435984680 925594392 749241626 769115810 826554306 781200511 362037308 772256497 907556422 881421736 375104321 985041916 447352021 675876265 259204640 448417015 867428858 816499865 279595459 511548979 778002302 998000899 823305505 784679482 932450629 98256911 352648357 792511253 84492534 882064825 612279107 559071111 271545611 207473758 825500251 934736991 270953266 516398561 499070745 733044 747011342 86585088 626516060 381028413 248512614 106514907 295324160 818398572 49546668 156070962 642522314 97952571 919594804 748596195 896557979 916763405 560621296 485798113 217315343 571219938 269888949 45178551 97580391 238655567 446874413 71799845 791343363 550273588 680161992 481837203 259168536 196722326 438289539 149196002 26807555 469879529 55336807 261950660 376041668 169820644 841486063 777185632 178397667 656379119 108929821 755354023 49563500 790101909 929838242 438109543 645903180 905379075 169002 770250239 251377896 452120117 212306859 155320 805591575 770191681 321083799 365261086 834158892 880567965 300821580 855135816 189076869 770519440 670043272 608943997 167945211 803723558 103825219 809997859 729197826 494328791 307660265 282898432 355785612 510514592 778616433 591788780 812599375 807163759 29500339 854512794 673675566 628969870 423004566 346654198 600241607 802679882 402384599 720658076 739622935 698175920 95981020 619382886 22795721 245561867 478818371 922074982 897494382 22780853 360970345 523133956 968594509 585718804 59718778 806526785 189985041 760577009 631322954 503774991 973613784 854896561 739587940 935967431 366116498 488109460 123360777 186196767 87126060 253990961 792743765 188506250 746213329 157623839 762746627 173927080 864910145 381418695 928041485 112230362 889413354 619545039 412225534 181457861 190201894 508560232 186667897 522787185 456947281 407566033 153377064 890600750 357577000 176843100 402529854 732992427 959414314 760019593 642911330 940175757 719793279 155530865 900516217 341856380 367417117 755466004 319396609 188503041 639509550 215601116 200536858 205260734 18724966 510552848 889978213 712066951 419065836 893484377 962678079 943288626 684477099 203595585 237832449 629269387 983557135 390602493 571807513 913885484 288610958 226977594 991432473 467265199 364052741 326045931 546700806 356980613 486022276 189997143 173271109 442784519 624163629 768625486 101992707 373145629 592581831 487940728 101910170 595305092 303302312 108139491 903758481 35210264 876398607 573206407 344691411 26907526 106478715 312853123 965266302 72409250 960300770 62810855 391979700 972554039 509089969 596003275 873292280 652098519 714743746 953362473 611357077 516838971 275911026 252136523 72269724 47662146 354244235 549224683 901409838 785704859 527233175 367225284 631272557 556945008 843345339 98929465 218936476 537223232 693711211 849232548 649780880 165205905 83481837 803889792 572422525 801511256 834707441 292543393 530003634 165540980 570397801 810724050 339224083 534406397 21617103 16329517 273858723 174108428 864233336 47070861 543115677 587243773 293414943 625744306 201963418 557049327 839721771 682600582 145195102 497800421 851160403 607203346 814176666 261485012 259277463 549333949 447186861 51715015 797386039 257128031 321505343 974053403 964737237 308086905 775656463 407783669 943885111 761992455 497164117 740959995 583508819 996062343 483545352 363445469 730590256 900662322 531927361 491856967 630542573 952808694 5068115 994267627 265125800 911156370 362604052 914910522 179318000 660479251 496764362 687924588 939848805 986986451 770222348 261832973 30775583 877275862 254145858 44027095 846820314 33919813 728721922 517075691 138775752 17125332 528421307 51224627 102611271 158914109 239689372 531785437 133107021 414462211 784400362 377447014 667862062 212949014 163421801 65427154 758083130 751255312 783471368 506030691 839851843 747230028 40064076 758957502 689940784 714412085 285541567 724509545 331887843 433641906 122613284 968488209 974607921 178276428 709630323 862332820 515017333 887100677 366636568 864264731 663374392 86057697 84695653 633198781 782727663 749009389 420362754 718625592 990925568 718245233 274613291 396309733 970111647 4067655 995778694 270820386 145881317 799185907 135589845 588296060 603960270 573302300 957187425 595796076 522001787 446591925 880369510 548472925 901065012 794830323 845640181 776913550 98876279 692816095 374605176 401868112 258510413 980017047 116495391 168271834 443715641 863285252 822782776 665461918 894860363 536845763 829924469 198352243 829868826 247138913 634105849 109396384 9025235 455171056 235447453 31451351 426458796 393020869 714603866 597777573 153703358 567324626 864438259 236027742 211868192 89950084 685193119 770015763 630023351 519228098 607271482 796724609 642630319 311160002 434058356 157497624 342203676 347920403 291443695 798021357 432223060 188178509 656429308 139897949 96911836 531534374 451453622 507431027 858773554 590534036 539633922 326713401 550333152 895842374 132769803 21831125 498460476 634711873 207314942 884159107 23792552 925475089 438321102 887914671 34762974 26398864 427152840 416352721 431392529 953090676 355440250 431486314 409567818 755468414 462575813 99435878 134630066 755476781 43898131 182832311 741102360 17045023 677636095 933234534 191548067 704175001 384451567 67950403 110231353 723464775 427941859 613049975 965823355 412217488 225612125 361702346 419925550 936960166 10710667 949254090 421622072 518270572 682524681 80738152 556600093 75987823 157990508 506585705 124078377 824745816 165442213 42754090 738764530 602103448 237277869 313152178 781509194 845256139 752040220 362849734 444967834 369198259 399831877 910624939 252238782 12805472 399627568 744623491 916408271 574682391 43549636 713237950 95045697 596086653 442442668 303071739 364564645 916279598 778507717 96906619 604150068 227194109 705192471 834379595 195335597 749658943 943378610 491468052 744507340 986386741 912296404 841273746 126386702 831579078 406621956 423266437 240049790 352903223 740051097 599607252 754771540 462754262 568821379 126126880 725257719 127511452 241978169 391293811 868931494 178326443 849260742 366842118 758547939 685008081 545651309 117191219 324642734 912552628 112040646 28262228 569882989 45268341 344830474 769265238 451240426 595952582 596515859 832205319 983560577 759325742 495608489 624287631 550551104 801349288 11287865 573915361 598984077 988104678 853902974 248174181 446299063 649549027 577335190 476184884 226222851 103609774 386656203 180193692 237076041 988130202 545255480 785433464 768268690 269350998 278145236 454973163 747898229 699572072 879795193 437959233 779253548 543339260 20233946 91596651 562197360 89507872 466720782 519368774 147399131 555326277 547535674 307604436 42302925 925154775 721542530 890206630 747358886 554317260 801282021 687881823 379633324 917899948 322893407 410944960 532417809 777780855 702467932 4392291 527890952 549366290 576937968 724945029 997720277 525425762 287908819 570317207 732737432 552004459 754562474 574025242 81810686 968112432 371151219 637674199 79196995 32839252 596755549 406246997 910022655 175081670 529520076 926165991 624479160 715532894 601937955 304010667 198032154 323394123 911873813 308207846 369110049 150698447 718145670 200236745 905687398 912205326 348320200 411091542 11558699 76867063 995399255 661128688 958093112 483126281 597296790 473109248 977374088 879048518 226162841 51071987 766391422 826316521 491761111 127802631 693765761 95505327 693819559 842754088 264296507 851564040 287845606 108657827 622106449 531018282 48224493 755167497 412218687 431335700 430435164 302435547 826278897 621317315 942751218 446879462 547744100 182595893 904285953 596441894 502529430 723022804 638575560 181844633 913932432 593310890 257651360 950011596 3382901 307050302 673738829 891058054 460053289 39370862 92529070 610929130 770524640 815526379 463820674 659634121 693507129 853904420 756422693 556192708 61323415 789830898 780150303 920612050 371517413 667463659 129096054 859495228 179513252 139434623 549054349 688538434 361133144 400283000 683922814 5522369 444470199 593151447 329042680 161446484 244001023 218212222 772322691 814369981 601031730 88624549 317976359 414059481 236467614 82462347 285421185 264329586 411024102 97277261 728271377 57555297 120409395 91017904 995552550 188120232 721264942 237276566 642550437 186372147 802724165 657346209 160245138 421484385 522956020 660670749 461437927 23652546 56738040 775585105 860875956 954024691 940118298 993996923 668706792 405149156 388414594 495724440 916718491 724728325 562931262 453459690 273159970 536033110 336082167 89479074 367078221 692487683 368379609 288676975 812164721 350721350 196401014 619619623 306710365 821339982 785241359 298923202 949237646 807469864 589251848 824660470 283348265 931791837 370206589 404308633 923461664 418339938 906387659 556222924 186587493 544609481 476926148 734986612 471338766 277328851 157351650 345456538 17685703 593222980 246474716 382015855 238038170 338034702 893801485 532557287 168568673 226145290 992330613 582827689 666572393 239241964 24518877 507862425 183643961 719379215 393390960 351225182 170678931 671694546 285234527 11488565 436370137 971223699 201146946 135438086 890337741 766419172 946139649 360049661 148843473 471627137 96133726 83031803 161362104 654006358 858960844 49899557 898945644 239392928 501245884 254574064 481886449 292998101 190829584 472453435 764794223 697249981 818652555 397219873 314962499 525396559 13609549 551018489 667549782 327140531 888437286 567841224 10134937 279782032 197573706 558554992 378444303 14159053 760942709 508185100 849290551 381500701 838140022 938198515 758961536 939850071 449736115 835573521 295174381 517307749 494188991 647669759 979388872 693661103 902097173 532422420 806886409 620304170 798566570 441477071 926706051 698106498 724321600 744388740 42350487 971138887 910682079 236009523 518825537 170596338 314921203 234026272 417753654 170935615 156355159 277901599 639582491 954491919 132493963 465121879 270058617 265595039 357760873 835672913 981021390 744615111 279594220 650957074 408489579 223674876 377383832 833725663 721830747 179998945 104116156 174194474 215452036 955402198 549128229 458301436 728501566 671308678 971752478 266573128 45250534 815367103 682026887 900676357 466353773 449294086 71364123 414362920 346016654 39335888 831367975 120618037 888581067 483485578 585899764 338015796 239276213 270922856 585454792 377485222 462626307 316530032 496428693 245941659 663487699 56529336 990063309 476667944 986186759 901320644 809502167 799528785 240008320 844985822 661294173 24972999 406911259 360569233 885845422 608737703 432889705 473686563 602402642 823354097 197599645 267241883 274253968 523258879 671338806 5495585 621061353 961299654 826983507 152057044 220176986 912607855 142632663 42930763 517667415 8601885 228037804 621725376 357892866 82483413 54557021 927118210 696306753 375634554 886208955 65709106 732952077 698519816 982105358 662808503 803810849 666659931 528534723 660528086 234196412 118155737 408355873 187289955 61616350 21412616 728068934 716317295 593474404 997509949 646530364 465118753 68638318 415681692 465602962 551178919 815876269 153003994 771394016 80189461 93246080 266968046 465486250 611641892 308263962 938269362 634494876 189913737 696392802 599197375 473675940 421518731 880659932 455825454 419875688 515375944 402090551 557600512 817155124 564084558 415310084 939625620 766515448 25936771 67173990 682793973 568022725 607536597 273191753 396729660 261994020 509300088 548444096 460958291 203700708 357902035 526102296 612573362 293796357 889315869 193227764 106600202 778443919 45073990 472046150 108583622 85188009 773512690 239072074 945958693 686623429 983564681 432343890 737100777 142998642 441056865 583823603 955604788 626763788 982562409 488385422 385170271 770708590 405316498 969048651 884867717 125461070 265670265 794848391 205586551 646390846 447636479 503033314 303102808 648933275 976316693 981303938 461491529 400118847 219311485 562540900 852593275 530526354 88250880 636729458 67433833 931547573 926125268 885513285 630444733 755262641 82916451 156518851 533914440 556579969 857259866 502693661 224791662 168378467 471796574 857574620 837487741 69315743 548797430 769819948 30579787 623520133 36964483 257533093 190237542 220030081 963217943 677293594 229989785 18182864 66090779 303279374 574049889 847754991 52166880 788097735 939068185 798676953 272165104 665563699 810947175 798394493 154931087 10195330 441732084 277963993 30210630 446245252 450201498 854057445 653739788 911336596 540296364 156403192 272706133 178319760 338451543 431276256 387920164 45123409 24427782 671212149 980650175 149465717 542825727 181008179 348918829 577413479 180157642 46433962 158151831 694539202 237426925 794444441 36949412 548036191 587775472 666324455 833056568 53626104 576334123 982145362 156251648 934388917 462072597 571159873 51525389 529679186 343225235 585780645 991730356 401799824 272012376 696326874 113493209 207259845 551140701 537337917 72349062 47280232 346573357 574389062 291866614 840495814 599579336 463441240 568076890 817741597 332045986 378228555 966327697 669947548 454168334 60629555 137310496 226072805 245360899 824521803 889343247 553984100 488963152 632430399 850348079 312246886 337921252 440820187 832078118 354017414 26453340 255393086 222976129 861408074 846179752 170437965 632266326 831527563 453605730 219730262 28637882 926257385 629148195 203772640 883365342 602431888 292953350 340146839 755839829 729617786 533741277 491041292 165365364 870528525 158513555 421547283 865197019 594128535 599137642 403899196 40502703 321031482 811762856 941258954 408009625 89470943 738001386 635889704 368457221 179160872 986334456 911999726 332082454 248485949 310949631 210225981 666509901 697081811 458153700 592650908 902011730 684276300 927499982 47262301 501713691 516158584 680509376 503074470 164299183 751532365 450825228 125839926 443742524 924338357 780300474 981046101 238715322 926310352 201320643 302949829 532538291 848860723 219743553 866486915 281973746 300048019 587180521 604771175 275960800 882491246 586005448 555184363 763671288 34999576 740205925 21190478 322573829 534472038 711272778 209410805 790081431 349662455 945315801 803807542 959739916 375238595 957321100 586686175 785291751 445269511 896563674 388446501 48213129 909833549 685098744 497314036 300064737 748282505 822892235 678856269 817546278 153229268 215948913 393749497 979483127 40557679 129887134 850536731 830448505 639789996 807964088 252963623 122057467 256359720 756637723 532837019 283935724 105614982 847270157 610372890 332702512 890255639 104397486 901026098 846207868 144820227 926194763 320747605 494446774 71107090 415157887 66575287 914870862 204116951 295930697 273181021 217901303 308363264 372531303 978948443 16196202 839808947 358344606 753424461 522779971 557155273 957338615 170460915 156709615 873800626 899287596 516070520 227233357 667613233 633372080 475638723 727601876 845587954 612163733 778705938 191288221 31017096 46991804 664391697 526328647 910032516 971420649 107997704 959028958 795220697 298092732 360029555 671703041 132897507 429938525 640180662 704119146 978634865 100832780 199045650 416110899 889860053 636855064 589437277 603858860 691643573 509327863 282148521 557334812 304373666 769013022 614997963 807632253 279279581 307375223 442167037 801722054 104093806 818173711 786043687 993580914 326477869 916150816 14179257 11604075 237880206 5046752 917872176 421832256 207207087 693495658 375901111 717901929 772522448 406379553 54051639 247409078 781971042 874487663 574392532 33169105 7329535 107646698 729032089 340286406 422217619 96568851 813790132 434105658 83249387 770143373 143153239 725119449 458192527 602747507 640677611 76386 370691789 52773186 565274684 692156646 699468796 14505218 483727506 15671261 200979043 979001349 121382231 79738493 927671078 450076274 220089391 337541215 818542814 293731572 996692013 610272084 575687111 283486495 18668851 903920526 565357192 793065208 76845138 563129184 864778636 98119966 93387443 478807534 905695097 52696421 496055712 276843843 264423536 332788855 245428080 330420658 536859150 873890092 829320451 122233816 927899742 757627931 206080239 822989184 57653462 843756463 626852719 573293187 492263574 263260170 362367765 525719787 491343994 78344572 499367724 180722917 822035274 784074624 610000754 476985839 337936219 715278891 158959196 240912121 991903712 754578744 939601017 749651475 88902324 816368008 243587836 495148767 890965709 105482393 509130266 641714532 275942277 734837877 301430286 216199576 79359643 485389735 668604758 955170437 423657388 206205696 23854749 478795915 419877805 102784720 281562001 923022087 401771266 678485255 213809516 109926062 238688502 595319476 405721658 338231090 608289527 971280240 526376028 234724823 55911172 991695602 650304453 612566710 583135101 200371330 259292512 468783413 437453913 199378998 255508585 878820683 224683484 975086560 52600689 620788041 221678141 172610181 295283239 683064549 905301292 842685722 931315049 572599482 750238306 787202206 799977845 197417009 720956046 790475865 907517796 742321011 689343228 381047081 410368752 666907579 462207510 994345305 908773679 789278963 78793959 740418034 56123842 142623269 473115906 801397971 935224210 174258776 741459175 372969459 329335762 685104818 896698255 295002200 363466717 886218249 889961467 284817792 536271537 867232333 97987114 134537995 288714674 915698704 330842609 796925045 111960803 617100995 454570826 290629679 864838031 464189250 917810343 100565200 504910594 531457552 769322529 127601329 908521101 82152203 909323538 627521578 914739119 994538770 493479965 361486403 781221666 881451599 541350486 834864266 432099573 773536190 933468582 8118230 362963864 410105147 601642488 157066866 149251147 232545999 503477659 11327903 820731410 731568283 77252255 229866196 987540782 11973623 581227567 617846599 299228098 663736816 945524858 626797850 95253197 298174376 405147519 437752443 189805441 150885390 369415881 402383094 932476381 481638812 753735694 729405559 363167004 496175332 812687270 89964874 962043504 262557934 214352370 803148920 616737140 600115449 282107138 148021297 44118855 791962436 497745356 844325856 849994116 599594419 725288561 322463868 435332433 125669502 74122233 481094681 292014281 528125656 8243075 791411408 950669240 744647308 965823023 957107789 174000057 875594968 572919376 963100765 15526763 259011990 283863675 602933412 38220876 683566099 992798356 306701123 585184124 333897240 815012260 841580315 367459643 382122209 1938325 762527871 432405163 144628033 189604258 160897060 724255915 21660173 249731477 750500332 126999912 261221978 942630382 802024908 998162609 251321619 340463857 49029209 414584083 954812881 917090887 440280375 771553199 440048091 16711862 546492823 914088921 505053555 870031651 118876075 152303478 952711789 601052980 819952051 914376966 986222172 956957592 863493997 383381166 821608604 557675133 281788775 131644310 803884182 338019664 710673606 326234234 288631897 747759446 186086680 659555149 401741117 600597807 865418224 710942970 357488570 288587275 76114146 150628006 553077457 153100986 625952131 453699212 262836177 622440875 663947984 731275213 961449280 654405113 801747083 317402745 105299529 553095922 955981677 593287041 724351689 355174461 653764455 436457696 844183417 291155852 469039238 723387156 832283989 321451070 949505860 856197305 765331294 342471818 252285839 729316673 891082607 769296086 115280473 76529829 256341748 170024254 300924490 76537358 77201488 397426430 106854713 918086793 48796672 455179258 791278132 668365865 869503602 659750677 572988075 40972361 414172688 941758131 993505863 568976198 905523294 292035900 974527383 204526682 229584390 29681093 64497842 164795186 281633656 301344721 556128148 432822242 267678930 313358617 281471557 499845496 241329538 954879485 877940874 62897977 435011627 954850543 271164773 895223786 323492177 630731760 460868469 333159663 138567615 901524749 661310337 151773789 952189769 639197542 693218849 618374562 216484570 849339155 18790977 574175583 489407281 357316709 972541415 165066580 830672209 254857743 365076730 326757478 449268084 64332873 967318575 443746106 716583468 306832918 282748647 704755886 235181590 689052250 136998099 461158864 104044885 242485645 493006552 309172307 923134134 769349371 217078494 205199195 132919127 772451061 746608971 950182860 400162882 436628361 173017955 572652276 51088796 526166716 495493162 502581076 734712724 147210710 21603819 211639230 760108905 439548125 933271591 823533773 451732777 978743198 341192231 815578659 332478488 241452785 62592506 824454795 740413329 169697856 636099189 805883722 583220156 825899517 132477595 912411605 416074605 537121682 758865337 890936459 206137896 981577521 484546230 517087592 571132124 813805562 303637343 53663902 682651408 698688340 83792050 855034629 64152065 778237850 732658532 766535141 609035923 637961611 470601975 143404865 896178520 507192589 563121483 343686398 486521011 596425571 698494436 511983865 119366968 51188312 91637579 378365534 687846202 455478204 399611396 513459416 713209938 405958446 275309062 302488990 167571140 362900588 535796213 95688050 565366428 43438815 816913392 233836481 64174176 856839829 22685845 918343493 754073280 963592005 625135663 265937058 942178465 811769368 254610276 435329287 695783272 709622853 589756743 585401160 902041898 984896050 877259198 671820361 516212672 998081608 965847440 949866561 522920739 994067611 768566788 181410342 463141102 683365944 844265162 202912592 539760808 116038048 340925410 576799378 395233811 657568968 551591802 620809802 280510388 139061487 254284504 968405447 145126504 830480568 52072357 41843182 431196486 278648160 238629426 404667078 405708709 699966271 372193212 549099496 761975022 387010565 802601021 720094094 404042920 700091996 176088963 402509514 291993519 112240159 563689146 662021501 787114636 718230347 727957659 135596828 816546037 218828959 430327851 498223723 673216442 364443637 623640938 565338015 862245012 110257738 408601126 652704262 104453067 76220705 479405371 679224717 312127902 272766291 528998002 861884796 915256181 167941241 372950481 920748922 534123891 902965217 160268735 531639996 721999636 615022784 818630916 514025603 763232647 763589592 771787652 373132678 819722243 738075620 894919221 322416338 109004893 432746844 72101972 290701496 986743475 168250360 351110467 986285381 949697790 878568607 908389535 879614988 701057615 682488999 540385029 444790496 719780826 718467868 686272014 33362125 176707353 403718730 752596574 75308007 425936679 291877711 716699562 514297799 984290121 482500563 737485642 730602831 405893968 39180781 55989718 366827329 184000 450503693 434225699 477062278 57559914 904470689 531698999 262186540 113392330 948042378 934999284 62471575 800581793 734336435 107451736 653343865 92426966 825352813 210166395 266189573 354284711 755930192 145559248 71541947 207701786 271022934 489130101 2779037 404671477 497251311 690842061 751695142 250950157 784247696 418484915 910600330 149838009 415206580 570698592 96947645 771668593 870966519 764419888 406306162 513221573 192899448 968824362 485146791 969977844 154084580 701344965 412119827 875112578 678506438 9730124 279050190 199839653 766578165 802191411 487319366 584576063 110090566 121312846 834665445 627601451 712694966 468898557 168475541 100568805 133831444 481426465 540009126 604527563 184149546 3000307 991358317 528656934 949129427 1239879 752853075 83790156 315981326 284904317 100024190 570029583 663129509 138963827 531166863 379004166 122453736 716434910 914035377 409579095 22481596 789399378 560351551 728365699 728961428 17884485 534742673 678563811 487800186 452823990 252460340 505129534 355252989 160540825 685754226 223316637 89735871 949569370 696746331 735127824 168021565 422476014 995912641 118195699 524039945 533617200 5205653 73987821 673700870 885879009 262741493 311030923 223764529 341238216 400799487 424392850 989563289 799278401 375482974 559538734 575609662 721402436 511560912 911447940 113838727 517395639 844555411 319515634 981367598 678864053 243413932 195223806 401972882 961212804 674713508 570800362 668216943 487234992 92612040 445755469 894251089 644425633 760180072 343918249 603687170 219381789 542639795 167596371 184617163 798101540 897151404 27392841 143447192 562942732 206822858 836441125 165130633 114480023 968669514 320706319 405534334 959910827 95022961 705358218 822671188 17159341 557575701 547137754 573050058 277164206 596275558 998154118 836787850 652645431 32212344 825578235 995241855 200619486 313823116 714592872 981777767 286340175 798484940 735099562 180650755 587949776 41696227 958379966 214895852 574254403 736808957 524939774 809420071 975780357 855292495 80084893 945283035 897849467 194017466 30226429 313042485 461548881 226536665 43267223 59583341 438584028 32966450 472164258 624266169 388844468 590579973 717626041 777559476 122339024 154152487 764821616 513005804 986884660 516129649 306663347 723028798 199170734 159393472 446207673 1912441 76002305 652280024 21193122 889047533 589138243 967845291 981888211 499426338 721096789 814564781 593071538 905852647 769248422 143884022 788317901 918130919 751917740 785722836 238696029 699186995 461644979 4534162 99642950 252100064 969219820 547932160 885242445 87359561 797500709 145641209 330967443 231809551 157407915 854379242 682925967 52711791 500926923 611202706 897710878 519226593 439013955 773120974 751669313 913681647 956248912 511725140 742462918 853316224 986816616 392597315 863859555 898975878 281278872 978088589 643268212 39169976 421248690 103101170 926965719 985570077 7110001 574547380 641967667 264288976 288963801 645800821 376311167 488913114 123763639 926997437 630787290 461988073 506854616 342983002 100492389 976320985 891740526 110768083 412501745 386178187 602934380 1936332 223394505 142612746 992345059 392626392 277713589 372815821 543246714 966368202 201280854 802936794 483478271 173899942 966633533 633521459 837893405 537689314 302414968 51532873 575073991 484008936 754140590 109990674 495429627 394088161 912230749 969465986 276228095 858900021 670079720 630230222 681825776 961347079 458941714 411855113 111970643 600294251 243976178 830629567 490777047 86173928 660639542 307241953 302245873 386973610 495321362 742610415 231238095 979890243 904071167 823400170 946039053 154357751 244961853 849611666 254119230 465260285 179726498 943462934 480202017 475568395 930422702 886189266 910881527 492220852 880915062 971638961 598422603 325996572 749547635 986389706 583000954 479209750 708146704 804565216 755258255 723324822 101784784 33653668 201205442 541721972 10270701 59452376 366754810 268873395 237293089 74679018 158953708 668454290 89997687 561684303 873840884 920469986 768982899 290430666 430685147 304453927 508128252 657420429 509315556 892194030 899958040 382923386 915588582 62739741 223273642 498566150 190841773 871607165 524412714 344811215 178440196 715658618 136573273 611091173 628634244 424559707 281491165 574928748 906087549 464852518 569274064 587786750 245708727 785780088 871463366 179182931 908688655 702983232 741018461 200997438 733927093 223951438 235818716 8966477 542031699 82534767 406195290 88496050 684783279 714995074 76064430 178476570 45969319 268715945 636959107 226609650 30694349 854152160 554708661 602334276 937381530 502550410 580337833 29777952 32198598 436069653 693000675 78570526 405574127 905442527 101623036 638611339 176067793 478860446 814849135 81407807 481227375 901446739 780351437 736870101 887052930 958212377 335225391 850732122 382402155 675054040 820934981 812459675 213281073 809932056 344250052 164298293 857317941 858825361 994719738 164614248 25458057 379170470 678424648 569591586 207270295 512733435 315374261 152069755 137787843 70499547 112832325 494988122 914136655 766930220 785247184 817660622 835932921 216889384 346376237 249105406 710083779 426041359 428157853 927364967 794213340 690993936 515227548 816577996 580960311 764992837 105606671 804996288 482969703 161914303 194991860 13846202 931909150 914218372 892753800 146251676 516505171 523777152 151598504 363535664 679053160 228676936 449457519 815101356 181365378 188720473 995217492 438688845 558424694 708055641 881069017 924499961 724763138 270257417 474007611 687938590 818085247 852779329 318868063 509311892 88188199 191463793 539693095 408739905 121535334 892709627 310533181 519523924 502823729 284754666 32156669 607086979 410457599 362372270 739962694 584492193 957999954 799832797 545948653 915464109 861416243 269602464 103464305 491209457 180681268 315262279 514576352 74013088 288482148 699457206 440638842 77474473 906071159 184679445 214277620 184326404 397039068 429243853 231856581 985972543 374013443 435376218 376826471 821107485 853973978 334580575 131632658 778831538 424974668 795163324 38490981 72653922 70017515 163772875 987394242 138629677 796336991 373043354 844860450 889391491 160276243 232680867 340966651 774970032 801279763 685365965 146806658 544936225 321330462 46279452 100046859 86353128 861302586 410617653 460871420 918975701 905916358 682709954 931523362 110670535 796158466 184229046 140611861 284739558 350788211 802320894 519813549 235455776 532946859 426660343 643254867 544672906 29008312 373351080 903216814 268970809 845237181 170829481 261867859 855777813 929029044 711218537 372064414 898022916 904189368 687513911 770480333 164461374 100851809 397326774 935930224 245892853 141482669 666941140 590546124 215030293 421494597 205119795 405986491 579786722 76696651 189303677 325608592 569185971 60425571 608893773 109387319 392725179 987354057 953704241 343823198 848257945 256692089 373328544 154609049 466342635 304593335 169354727 888810665 318517740 866097511 331370202 356676828 477638883 525344004 859501828 397099716 467348130 770166052 554161948 382557895 117602838 422398944 544456133 636036291 875414440 194935620 891344783 327518923 958596460 414882766 970967538 501907840 70481075 726889871 654496598 471780965 602355269 409824423 904418358 215959058 344560343 207333295 884117596 131578765 649225679 379668434 99839164 132884405 753562154 898442152 961892994 920954698 636581859 925083980 377026323 12671659 698701960 242359009 686046436 213322223 621198855 600880460 346058799 172390895 215261815 370077144 379198679 571240735 319656163 700248865 218250736 908501605 634033890 546447909 258839897 944931241 651880697 645177348 282249307 559007850 68057427 390819455 970091792 636229290 326332511 585141591 920245687 699645547 545575665 112197153 977034740 288604249 214395899 634809968 358735954 676413130 244867413 172007645 917455725 137869018 967670818 271464677 867916136 637719576 984252248 630724748 844770250 359945431 492750570 830908932 767103831 449736958 948511144 156010689 148711354 194657963 950026260 590198235 847636839 610646266 984614276 393852465 880419979 746285508 905706447 227359152 529525964 753317219 79545426 3346119 966646397 154876221 975894733 51912184 751327669 995793530 130658308 296911838 303825656 329340351 7972294 274686883 846644775 431753633 982616993 38242110 870801456 128205757 175825460 128824627 459786708 979954376 762462016 401633032 183604142 884396261 346105724 913160965 299952384 907049075 387373918 764855384 622104346 184344567 956055154 401759761 211081459 816231658 996271742 683729273 134041939 878149319 142570021 289852409 12827095 60902303 620053373 460753973 113721728 72446976 589311198 340154583 189430086 450795055 607898120 174158107 205757958 851354465 248500844 199622746 202915978 803525727 903654440 711557859 778772206 9231237 204543795 227652642 118071948 976692781 942834131 263927549 881230575 569448304 377153054 664939851 447829627 665037251 678414126 26176107 348465760 291615030 985310647 745653237 724675999 82762367 200841978 649417326 72028925 409726805 154654072 139041043 306079997 814986327 59330948 810724627 881717109 869904413 266263592 196978522 810616250 534929536 929492906 142820633 655535442 138262531 932052400 204116795 429126560 651179696 473319172 32040468 908521040 705352614 527573232 118873114 614310574 656447828 637973687 756344885 927661799 769923516 128437774 911390676 118971176 954732650 849712625 358047913 173939462 870684380 790020878 842616875 119348572 739119905 34289695 628824343 201687918 53655338 379490686 216222083 942457926 423934243 895759767 380263883 482659467 912868518 574220437 809970696 455647365 231132800 45711631 23620204 95900008 476767181 213971855 715794747 672789292 50981815 719422721 145749422 173336947 944846525 836062244 586922235 99010325 939433439 975394767 89416856 328704045 453188724 830879633 886698653 34355459 714889911 648460087 691247230 905087680 721128520 585686717 995594927 711283772 22206610 274602357 212819736 987746944 726255760 92238814 223133960 105954834 311521414 807692911 505335856 543485006 883676368 245858826 496089750 299748861 904270137 108465507 921034380 579790043 150495843 612088660 882280859 678344357 660943447 890902582 532226313 997996098 390315581 941598152 970279525 139127889 817973511 591094381 702163086 667033279 337652847 381643831 183209037 819743640 598775659 421049770 954454638 358777128 155177221 271780904 7451960 708026979 605679907 691508153 270753672 149295959 264408851 946608542 283385826 778746276 435851453 376658237 991486840 608799864 333440179 28382005 134673579 706850843 736418836 669382252 126308586 815013192 644927596 924576962 490876476 371781263 147081085 338739815 616413233 837479633 307127280 513173263 78324857 665387020 58063006 849680272 276270314 187879198 859155964 328475240 878696767 27797364 83921698 357642705 442277131 174729589 922971745 384528804 432176156 911422326 784759922 539320538 871109579 566974138 221107077 779816960 283706288 754627714 824967739 920648782 993891582 579302617 143228622 267420830 750807929 704695966 269161607 650439211 480515469 15073636 221872668 13939460 224244844 493069032 997426578 531496383 232418447 895492255 49594913 16581414 964248834 864963536 481608429 887852618 311733345 677707049 90616648 960587581 606915926 613079044 605728232 870248145 554473059 352698749 949879383 230148798 449874108 166196730 148588819 576263682 610636691 660406070 24088943 878663785 114053463 793563805 176460681 378412018 590509882 7292338 924490272 196821758 313223230 465836331 402473474 34430631 666800454 972679222 801632414 264935227 64758051 369667513 345067082 340165617 171251398 110418527 76068602 331168842 132986695 189598317 220346943 356949807 850937825 914552508 157116249 108214495 360184365 34406886 208517036 896936046 267531368 145128308 387439794 24562780 522540193 297353374 273121721 368162547 227583935 445772091 978324311 927357670 893911241 432762832 710792271 727393485 893469629 958385208 355458175 212242001 824888415 122206905 381713558 563176035 589882787 904287780 435332726 641321849 306137417 220368018 971946014 456353368 150977033 582869416 926212011 94216042 439719773 225492869 838851818 582943735 136105699 589368046 950177101 898447317 518003200 158619020 836388393 164544343 181156003 104115765 357501998 591183326 885224743 89029613 470304028 122885113 949443275 787202065 696894506 741064101 899497261 621418347 861234429 412484998 49343903 8530 779037948 889773036 880198888 651079756 926796440 624186739 288655944 27430235 128208720 662957887 114602177 716397262 597746402 832815079 360792522 895778181 595084565 781873621 198123230 971418256 283533150 929767991 756531299 820288602 55045646 367667857 34075003 889705229 626321065 575857141 105211762 51009574 262458757 719480932 81416939 443449758 753768077 237835595 46853506 952039414 398594538 782389283 962908580 694349603 664381506 525889137 403057075 452190145 877042364 964980692 49195935 210275058 198381252 665853277 853658975 454469730 833720984 899070775 242664978 897357107 342369303 611225350 137118976 815029611 137454064 405792484 135461011 746668642 167443514 889167460 986266791 567995830 896023160 83010275 566239924 270717825 889086759 147424356 880057719 549883259 668057590 593459 965172344 490936122 561722408 217709057 206430935 594496342 295707247 616702252 551743686 922990565 220302459 233185376 514049123 313480694 919527332 693661306 855603310 417873575 951077445 994815454 574400824 406932396 790371211 940321693 341398707 642727838 607135325 591146271 65854901 837840055 881845065 780255384 401437432 50309953 911818694 798456802 192798843 921995161 53154383 177678151 652438900 558701426 537038205 817642670 934569070 321869300 436098681 228907716 224578008 912446537 72146426 165936104 350768168 376208785 286931621 307144131 799428693 537930407 207198692 833856434 592082970 251154177 147751845 802641082 431916663 630112840 515875779 907134849 970891019 105546202 378289487 797686425 991884719 202496925 597051199 716431261 780371701 680827088 514855026 189432790 58007499 233669614 135723161 831278720 797179745 798123878 751576322 674051654 761493063 365628698 801377379 436483046 817817671 623621933 529710249 744984361 580859718 444619196 833117171 765891718 778870794 888993333 610295457 407110704 626019918 481290939 773155832 610819589 40768996 429392231 875395029 996177445 941079607 783266227 275668220 11919958 528940311 726760851 233224767 812531188 149776134 473778000 954898933 849727030 406006147 567390416 691327903 93307696 572066687 304183866 187214879 248672184 509527450 786922206 139826753 603609376 3517698 16827018 142630962 265028941 517197358 703178183 115069890 655880028 15088242 320171683 907116144 958006278 686793291 400272683 542790898 430596303 963480396 508965533 281239513 854776173 230652553 13357040 744676371 255962041 347010846 472633825 808328312 969708412 457211023 80937200 708800390 238829578 144812211 952863904 917370959 717418984 867583070 705185637 846689209 219876074 98585943 184989400 394509544 363855154 702327099 791506336 864143318 673796673 916635328 691346866 172536811 345296188 257409379 595334581 630338389 548587474 110778857 361559863 818548961 929127377 359224557 44770905 831558361 702982912 59789217 825689184 530012808 196293642 933580037 357561041 334300486 924001404 16707040 79539525 346805951 556271496 546075405 918207608 720495817 98719081 375638484 377257152 753696008 467739845 165168812 764062953 315480541 664077563 176143458 768376688 599231107 853611547 952325010 962606007 688253160 19298477 503676826 365370921 853168189 350619716 801754157 204189346 672144058 956105964 154816732 177702583 227614707 666635646 66420362 765906231 19195077 230633038 798419869 717999361 283497359 495008935 738046953 533686799 822516146 288506413 226424831 224720928 299848728 699122896 797826396 947334882 52481439 283394716 661303430 434139848 357892039 568550766 605059366 368115172 630525851 697041104 253576221 896757982 393970226 668878935 859662614 745668550 585507702 11840679 39499653 638813559 729538116 225865071 371470104 569515694 132133523 317594415 762762290 835789190 293630857 824100087 386183677 370587396 226323374 761999495 500099202 601263183 344211413 446364371 767760216 863189219 345106817 186346555 752462337 757896461 144270525 249644223 187705949 394521584 659877239 183573901 58330197 287521849 243227951 72166 835971834 551237324 345962093 419962279 29506399 81449590 145620748 290961070 833184379 429475320 175096804 580619465 82232013 47696270 786048625 503000540 667240216 9142465 839843181 517707540 464442132 751147007 331899019 373454277 208974859 559195371 401902120 307847634 885541298 140626837 376942654 145461030 327663299 125915993 914389941 711165847 174927182 286208127 450270381 252894206 823680470 795022146 854663224 478583090 339274382 481578573 19002329 815015465 201718407 642295104 438098647 370610885 292578764 740984418 399564 949610405 779743643 459425416 799368425 219484577 485264544 849696946 194368387 258120746 626408684 908046380 769322863 684410023 779294431 214128547 72110929 52792978 811428968 540102651 180080073 550927241 925506025 568597334 319666271 795113413 135647929 117095947 317359493 324708044 920603393 104856851 119783449 279984590 722291765 448734244 813579500 945205140 465875990 573524211 358988143 102418947 965824202 443011905 24137566 700554810 594697204 966195735 788717558 225756620 624997859 306569563 708620439 313174620 391273102 548840340 729503897 927386829 905877541 760643846 532801965 543341126 982955248 184445123 699912078 734469325 732023380 92967044 643320287 730387644 894630868 900426933 801074042 341929917 963751133 26235166 237916503 773692118 768962796 493683334 14793925 711727693 351308268 505797287 625017442 742909444 795348963 713268348 894526729 656397414 278492573 381431668 928897893 86212014 624848906 894066067 144168544 897560138 386163180 469097006 51039679 705133056 547945548 452045886 183163985 147739014 272600972 268919805 817644810 51605677 439002452 629415601 130108030 267930718 790047744 976280835 439926459 861096246 424500843 626894223 873536328 792929469 11838790 574318380 578967061 986533574 434276064 633556859 476555582 808088741 377897768 704972509 756182184 968479253 840828415 721847993 757445861 861528583 353034258 899237808 159894551 41892278 607226167 215740974 529224846 275069429 198456063 507797871 18388621 310116752 654996358 666565256 447273006 951167888 661004715 36929432 602283961 944237511 734141898 983099867 366128704 255298870 484658246 28925689 847929136 717591117 705566966 707135530 120416523 503596697 179714710 177942127 192902410 844819428 620844333 585164813 708658631 948592723 755968713 183464119 692938562 641397786 355200142 807241412 943946007 645166554 930173965 283740467 527520387 138520378 594457550 919056875 860532650 150643273 265656279 731425402 302209356 551710742 624804561 1744299 462118244 282000291 894369973 949141263 304835349 298886342 273445041 155914894 90733061 191823939 668734314 844770213 227771144 580744321 276168398 300417744 669705020 126330813 724528851 136759702 78687631 745970057 776687992 451644190 296963081 842686018 876012269 389009318 75018517 337050955 720774619 670956471 99037359 57243857 357055444 107845063 906795059 41823370 840824863 280356461 418211818 423327944 931535545 420463453 646727365 932252818 630464210 555589288 152045588 772869063 818589468 68617195 991822543 51772260 519164472 227248749 312366618 153050841 950351664 773000353 260772349 558526889 816915859 397149486 795136299 150787557 992470785 473015776 419884384 75299181 335483690 952738708 983442861 168787078 226960330 774184251 703290791 590983281 251509567 164044237 805964188 87954028 631535632 486021551 97044433 370793782 896971524 551348399 50093889 546119996 337911754 766133820 408940633 709907946 381748219 796860675 142733042 3584957 802576486 833084956 478966976 952805277 364726470 263778861 110149966 564629197 307290678 275295375 654263778 204629134 429914336 83822924 268436163 581125077 622925002 591524482 578653643 927778001 812502555 698574416 406648953 874634656 561969763 739001261 482418319 605122756 69084922 233467918 285296819 787864836 864931250 35494320 189545182 366725865 509965199 435998950 878688968 453456842 153747731 103834765 293514247 860936527 670630211 719330106 561903761 947813713 25336822 705969011 262154051 982411492 362980975 984608193 679325297 334284369 707466101 334825968 364859201 908484349 783091484 31169250 773141925 423594579 914361778 98670163 338158882 117897062 798348109 534190491 751108922 183807919 144890902 197310560 391129119 154804896 407539740 362903212 449352476 218272453 591435442 967578566 537663080 651816756 347827218 954259758 938783222 232477997 510833097 594011980 298795644 971105619 72420828 335436569 319937653 149309880 752950304 270230640 804517215 720010577 841438234 83094120 426484099 944241895 746046298 472548184 780154421 574016601 613423364 936230828 17985442 876186316 714771826 358615726 275646866 399064346 313203074 758925247 508236194 871369989 925587175 580371612 502593219 402730800 765963157 959359190 165023875 117670572 697467045 446466237 594906997 936075903 653277663 643447421 657606708 409354829 621212988 147803875 32272327 826548203 129174530 844840199 712915556 875356673 545133908 318205782 496945476 413734759 842729824 924018333 83797595 363544093 569869377 177995155 103907921 253649942 192568797 351388707 273188381 294395279 484490227 888585014 222352947 133243786 267685233 151969663 783824593 179717854 590472473 10393062 287508543 914300739 975832509 431691932 354376204 764649935 184333088 787577159 664117438 178357089 74441502 626262733 458529810 754673859 596473832 119868636 736797374 426187545 629977979 289985629 400485610 976504911 229372186 88530440 536463080 805115653 299334137 986805331 423855752 340677341 696308251 450710019 946942700 73466612 266481067 167495856 470208210 530324496 351818865 308559123 788970852 377827960 795899000 268591326 532494421 742108646 137020499 929877599 995658376 614906234 649728557 333499834 770558699 576145506 234483689 528687080 481789975 291301931 35842412 839648199 618212640 173889286 840722478 410389042 165084317 291211758 742375655 701759055 122266253 836771945 725179885 867959270 827444533 361641601 519293623 407043376 646441789 270837500 603610999 52874230 494096914 786181348 319573194 879442825 572376067 916309233 493427064 536185120 657202883 160849561 676849926 20260076 943072054 755208356 963975824 307409938 681062821 664444208 928550358 132215803 440349766 333370500 635483884 979631767 244709953 679730296 183358801 772998089 76158610 215500474 471044054 497566687 401065378 520338685 493005779 286642887 716274046 856961358 76600277 953449826 665109810 64042533 81399588 99226746 202571372 449784843 51185075 267762075 610419413 329641690 329308426 720728306 452156056 929636906 407883564 563775088 211150689 53584947 208842301 229186646 873762131 228414623 437063782 528874653 604928694 406847797 954588298 874040458 870088446 793612891 783030054 272996967 435675839 599505353 295951204 707628997 111762143 753941335 650913570 129023116 754735654 217166176 412364257 81830665 942591540 183220691 177313891 932161025 237369722 943372339 530450027 982297907 325914796 540013891 125721513 756523607 256136793 417375488 570835470 497314901 196906857 948690268 434915960 862741275 608841993 76924145 439338232 305461787 208366866 283877126 944333911 142978449 792607882 134584187 879209302 717736956 352281025 836853259 71746264 951490349 970927444 455543675 694047532 470995277 36756139 130870476 352532229 369635453 574766746 946778554 979441615 323851633 461316373 376892990 40106800 851305192 486070817 450077888 100661074 58323945 130861328 586267095 138889958 785875069 812316066 567574895 186658039 962659513 959688998 956720767 702748227 973001448 203162853 673904616 43167216 583499753 62359966 700902092 474066667 82505566 538004870 203871440 948930691 924399166 899173517 408475116 114900905 40444832 672309405 13680760 461256562 696891792 956741370 739729289 520707044 544687306 88593234 370193803 293442161 582705602 946527459 316692909 168737900 881135539 603625242 525807172 931337798 17135175 837833747 493023663 39633017 438023597 354930641 541009723 50129141 14687853 973023289 894570796 65399567 209756561 957248298 2538006 64075595 190859239 405636950 562174634 910334106 689932074 243371510 748395616 824509828 627543157 961538488 849077516 850452742 331638274 182844560 856869 888358779 748967166 376780007 41602680 156980192 650672380 161455879 820177097 180750685 356024523 789002561 567733275 236924891 850138203 975972999 372409567 115344976 862461087 36292732 609873132 801135333 550437112 11447001 651628986 164782827 921165728 232255128 200782139 920757417 789152647 181075563 381050446 904588718 726715372 79483342 116493755 507137589 508318433 188796087 965723647 850042331 503417569 640569022 591474603 258717660 770164940 437676773 657289935 345854227 23984105 909568656 576412214 205179557 763923205 100183608 183190039 741528279 962819749 243245031 643677285 859438841 927262149 797060456 522717173 896553273 788812384 510011612 666883201 88396941 506134159 965415317 627126814 306374754 231805608 526075199 382209484 409917263 60837532 261177668 242642616 716082239 95299800 87082633 175772056 433555107 739382985 300985468 113205751 700678603 219146105 868101204 460860885 676503479 525302950 367378186 842637158 146438211 82001348 964886625 712304931 297508971 697347864 805656095 743097547 563224638 43648641 947139400 620799219 108292699 487450307 723141885 521103404 335695559 337145935 883899001 327827207 788162333 289217399 484627770 906797056 516411176 952676518 259049786 221270019 80241755 85882698 698637903 391300113 527518543 410167600 390847556 136109230 699967504 451386438 894384874 903494334 350941557 412177229 96886069 266100203 8812212 46061251 736761947 816450573 687412759 405992262 244341714 786200795 712420462 62859228 130518247 437792440 384278470 519380826 956788258 85896742 330195870 203540525 847042665 898646714 116306593 670832369 95072720 99485714 30372026 299022213 57261695 431120627 624119540 459837644 254875540 387539101 187485799 787351906 488652261 739888492 222410552 106448195 602086560 36790761 434539458 556743966 539284380 978459138 557176959 542510109 125013069 9498163 500606618 422786941 170811783 898275616 432637174 672669438 22127170 947635901 907509033 118452366 428615632 758611026 474382579 982629048 288569364 981812097 727009963 423896720 566235051 795176869 547154979 835385574 893668912 441244627 717102798 790731469 231207188 394599086 486835739 875014985 74547754 834307231 556104017 212568870 868086774 734774088 45859962 709590832 731645995 109167134 116486789 40895338 325352461 942750397 907160648 758888840 915755588 320321136 913497741 299386811 794567781 762331464 247944858 595540291 285305741 153006211 461481607 867463513 143107336 61022636 730288583 806748895 957040075 123723405 528768233 186238482 942316167 713735454 823749509 906445666 366327307 97353525 824866206 922570772 693470439 206246564 144081892 464615318 337252931 430307728 377268814 350105992 499688451 184275439 939013743 776465570 640605958 436797737 394389873 54567435 182317013 617099152 591242674 271208938 812422057 489658077 848349183 44314371 20249157 148238191 315793383 124089281 733531143 560000408 22916250 189892347 322900229 469705225 895967083 526017066 306990986 555117271 570743 350339108 15858445 855960636 189928928 257982640 386949461 733411097 450554528 357744467 589554899 106022771 532369746 545915790 988906655 402276241 507303887 243586183 22369639 841372045 637134295 289279733 880835940 301019170 340539535 65452508 229620115 752178177 560116903 883861691 790411145 342387363 566804484 465624394 888839799 48059133 992581311 354267771 604797358 555431032 196122912 752588197 80389451 304304952 736902317 314981873 899212143 672849369 448498579 578351651 302958462 645904955 574303896 923433020 729799730 443090927 972613111 957846083 456559517 203761833 967870122 134092094 277581738 232018957 149642309 841641618 398993909 683835035 733329922 691730621 703419136 26680397 555200178 679870195 370914457 916533765 15256343 405797831 201272522 652576533 843582813 796919170 585837365 922492504 616780576 970270063 239176472 420733957 99030280 806219585 145869950 442471572 953451512 583997975 955927227 310289522 276435893 334457158 994043430 346293560 783347445 65336236 610823280 405814461 120174364 279293360 6959750 954695510 90327804 626867358 815845392 216859194 855122523 338185535 988267452 49910107 156394776 635146912 307775659 347101051 991013441 219137884 799259858 366934086 665499365 313153563 761484126 733981655 912874507 832066550 910847217 574893631 289314058 150623603 192412963 78832431 98368603 321636979 611153969 144912817 940282404 488002532 405492271 637540582 179679914 425032005 205479677 239916803 359279868 246657163 71431549 685618224 48589938 661382496 724304684 167381614 845800105 62577787 229026303 36748790 79833587 699693555 512186786 960254530 71237734 239549502 584040712 590430641 393132344 62015864 838774253 612875070 927467756 630456251 721996253 689636642 221228549 317553515 266514166 767880850 221035428 905532590 164930825 872046267 191833841 942365234 117112850 257649016 29955523 345168396 23085255 431198471 139111968 74552526 159683425 988235790 678703318 483842068 902637071 399654751 863309317 787476772 718114303 700127842 822972439 963754665 618589351 724438118 476404714 841884180 791994399 696179111 670062159 99479735 211977904 927988459 534475311 958693247 273813942 642072289 518113690 146657593 962785816 73988538 207454280 441989890 625234900 889103945 581021582 305018086 678443412 661566173 139254468 753670058 768500423 288712031 78335433 748139854 666372946 156524301 377714971 42307273 326124312 825897300 529423856 777158998 419442561 651782244 183088993 673151792 350355561 963373753 67361569 514993382 612526473 828318010 193396888 307252316 487327428 491082342 747562633 189670221 840788190 146018741 95330636 977863941 312071190 582208601 253412111 945661674 168885899 461414516 130605207 547005305 487765766 1590197 3732721 610092612 162170457 684725325 515831192 592758420 837420229 76967736 836299346 634456832 885286682 470418663 588902808 614238830 483399758 179747646 743445354 622554849 714942227 726971760 855409286 60154497 331473103 870110519 503101863 121321034 462356961 365918987 473417206 386029803 419135962 600059690 503173833 434572277 943977834 421662422 79181023 839153300 134507674 660770690 239878494 320555004 993095603 832915307 457123068 728852779 567187081 739088251 194641862 96794434 200728052 11478704 162905330 33164990 546327709 809474109 493366244 160763863 507914003 539300960 444016700 482214036 99496919 197453099 848079718 438806182 531008151 419218675 517394265 385396289 929416245 256937003 560762487 667531318 9129497 797894390 579437549 451461991 201359425 822664286 25992505 318909193 352155631 475168801 289035515 868052872 838872034 910386186 619713754 584910485 246100291 328734927 766836508 89785129 719949231 780130830 211285567 348506837 96909751 533253814 170693212 218809831 69795578 637375428 573551244 589182538 726941974 338474765 242794558 778786325 738444370 609548408 576994768 134183065 248457320 284680966 185131608 761834406 791983955 356378590 880004667 675141803 351282773 409398738 901137755 615898442 787105953 117077218 164018918 119565961 273017774 769822179 795734892 766247723 883133724 224752302 361713212 800118045 872926168 141385394 475223454 610118341 244611080 827252043 108262722 224665223 320097567 573047804 70133861 582442791 799468507 273353089 430139091 31073743 107894041 728130443 616251432 760465006 532166644 77031094 272742936 808638342 94083213 784498718 966745081 62910616 459530388 118711580 135729361 455531571 462698916 189851705 204651812 486001558 116555988 943640607 536384433 415492175 324809750 302841317 857792851 318438600 337274207 933330875 645983767 983632469 103005037 995116163 987770349 909008652 207942621 912073788 671845508 870337405 331329702 349889266 572168856 696001556 482972483 672099741 180604729 166452996 184700799 850871188 103792908 382858790 285879178 528128961 481501703 521615285 401175844 752467979 321029546 598681423 90283649 506889330 114944478 528812163 336429700 212026410 843691661 413440276 480844034 705791676 45668330 60276628 366126123 116051298 949758168 960430853 970185128 844255274 585742923 885884173 931204250 358547035 788892121 172690306 292999110 256419548 92590309 707604193 922307887 786492652 801736724 739366632 827171339 736820424 125295267 646093713 722712877 451834966 590335244 439652875 394314633 62261959 344504377 380722120 564594376 158962238 831473541 599488255 217562793 353617680 639494543 25663076 163766587 586809299 88481582 499417128 570252889 878733338 991671318 215766957 725452955 585106729 269247040 324629303 15596812 565837908 434111469 527121335 748616605 167608105 584487821 366957485 144603328 282529188 883222287 553986960 975201966 89080728 481721586 177104483 866303798 197728203 523897615 806911069 444441378 951634416 656058119 440904553 262636894 227140124 368304234 455709289 416544682 572354233 745391464 149940798 77896855 594028072 299529349 63834883 709133125 62752259 546254983 748909630 139077449 509528218 344197470 217802624 810023962 203465696 173660691 306112312 283862590 489912317 585015630 447106493 502416343 979326458 414053702 462850719 669643063 281842847 30380399 523416567 37826954 52069882 210131269 402422995 375300419 540527260 627030236 187941190 457392754 396791197 118390376 878367947 219989517 176200520 877662909 878494313 149290175 315947727 323788384 471509320 44802318 4658803 796995807 906541259 883972618 351341234 678356842 695679207 583623797 493768733 261138341 526542756 638189738 18668800 984555142 62050450 864862197 922981020 230843237 608439403 404756794 801038771 147294316 270256548 445433520 220637164 878279920 605086951 39388407 965773569 919858684 796112257 18956438 557569369 794063638 813738935 234836886 704829868 175363282 184744312 577268940 19597738 329385788 14953220 345680618 936855884 12793499 289993616 839323053 822387134 910614932 378690656 31431176 376179070 627973068 440643263 770130786 972911140 641996236 21642955 694199553 78092908 138511322 791945999 896517789 436834113 227518899 358227155 782389530 596562912 44971204 464997079 379767771 645685739 262092400 361836403 368169808 461807808 517688674 213663782 770864739 676599239 393371240 989866150 424039300 232706094 465078110 685576041 642280017 123211588 35982892 348966935 486619536 473554325 563013719 627050518 97019862 918685050 747858477 1318397 451756868 868507447 132643141 631634096 3804128 314225448 310932898 460121100 734676513 663099197 545674482 306643758 272477748 927147519 22673680 571759588 235925624 493036405 302790496 879491201 203093387 145463175 963927622 295276236 366532694 898603704 234243786 644660508 964463534 305458266 254662861 791586578 251532110 419451383 746124134 839081870 740302678 45761973 13552952 101337145 157065616 670797958 57001636 11327878 795719550 561819493 858273633 472361082 115446821 889922036 123708399 266206109 461483185 781179860 613947039 225977981 144391592 496716180 728718608 993118975 272448490 427438421 721563202 39606476 551357588 900671447 820540622 234390358 470960322 73510483 988148865 914312764 712676104 874567096 703322296 258698379 528455938 516766753 344071325 459377635 803979983 295364422 158339365 814714048 780116622 377212488 403964441 699972277 803264348 961693607 325718378 147350589 139869843 34505580 104379123 819811470 510135707 326792296 807479466 431452220 572130315 381217612 227554975 333370612 859411346 889649950 326375734 919728600 686287554 396402101 878238087 774472433 12868270 895322067 847338454 831420807 705585266 971123939 625738236 989092789 806968934 861827044 6011413 375428610 211112111 30682033 541510385 495798673 953364418 976112331 714846752 620896096 647895016 588875980 852114513 867762372 83840938 786603930 327294334 303166187 575583450 175574290 416255265 668514014 755277686 795651337 63266046 499689094 607658802 269728156 848026627 443505423 155356723 500924646 67391361 977441506 775232551 49379091 538967652 978975000 927066207 365552574 152345535 758094555 773004200 960268890 694309401 578518876 949720510 995327610 86237389 961391566 739891917 291352766 469014262 852916971 554326628 88955692 621264544 184239552 619375104 313720060 322169509 339405877 96373197 138004631 659932906 719803622 423220311 557513301 775294739 719497802 546952995 565806526 379536056 907727135 260380079 931222834 181630524 870991371 318758755 446869863 892219267 449365142 873639742 293920587 445168141 712851044 516122915 760564044 973348044 687404073 383076901 424875206 874881325 948332352 213139865 743260372 348144509 944110294 172731741 755810395 213622465 811047038 346792082 380283582 65172594 100671082 458148018 307270314 667194327 729867256 761750536 812591009 873670048 257352078 198799945 783005734 297692641 274818248 314439411 923799457 575341532 466611000 961787285 713960007 268603471 794095072 97245781 582900906 986148371 162419026 493521589 219875768 821627913 370364829 907535939 479230611 902561341 759437369 579466561 612295661 269417152 326714171 647069923 86568029 660440158 97642286 788332496 961958832 195997533 514847047 251415359 281253597 20268238 923847760 33921423 672016235 780935573 424902234 881412474 774611798 892036474 341307225 285765359 371536604 779452340 187872584 593223259 731795282 265829874 675171769 793841298 938442631 313234689 932839878 502126422 360688171 799402501 4540880 369602913 563687447 163136823 53918206 474289547 632039681 17109797 217887707 307546466 150712591 423580439 124966651 680865708 785480328 414398663 174815309 233677140 207858342 207308397 875199490 848324731 322454171 481514082 414870449 500163876 976640134 714177887 57382240 592076713 736880086 715506279 713136830 621569361 176309166 67698841 628269983 807584036 750187577 356860309 958303224 104662157 825735947 791538528 955741860 137626244 832934698 803712859 506842412 918032264 922677299 70617673 133600191 947889592 285442434 937837486 849530608 779080412 506384157 681885157 110323631 73964099 505198664 978763655 593300331 939881468 806522303 111277029 758866943 180932339 725594193 230959999 23276829 698398665 554606840 1436202 431023025 823890380 788290924 781762123 631803221 524628611 977336453 155755202 39984878 745088186 564747527 951265196 256364777 548038819 213989784 805714694 282226034 570021983 468315152 563732907 942501668 420412482 97053313 174929415 467381460 683227679 146045742 465019450 484005929 47441905 235101388 723108124 536965952 98019701 213996623 508450230 809635294 961051857 343503886 961423104 571780339 941085373 190045828 918849942 504168792 21778461 661615126 464433820 532490024 181541637 922919025 97531140 138934847 71146132 514773905 275342694 547929683 781022528 603941611 92023812 141246781 359390790 514541415 757862588 100573763 384193346 200184566 617194647 305407652 158563890 875073644 644605319 873167437 721606296 59420009 102586280 600847032 331308987 271104147 220242035 542822662 153687305 514734834 821622815 76984327 439507417 864076459 605176410 154610617 500293416 756705273 291229803 349451609 965852466 957841148 455251045 449827445 601200923 77539010 502125674 760359813 711255157 798189612 108518750 589561565 411309515 922206192 340619110 591074536 51988653 382475839 778837734 883509888 800944310 857145571 639960239 493609366 869177210 288452529 628324936 150948156 74485901 307552647 937574343 710211166 496304536 887247519 637310883 850377566 530968399 776898051 293400188 740207429 897377740 637075335 36298284 361399162 737799558 7056000 622093495 182903859 502206229 431808969 801072766 85494026 246476420 866965765 697611027 818672661 425868618 517637767 857325108 478181381 572523616 89992353 780207736 915907295 250481291 917586744 440016821 965147155 946702027 413168933 922391083 371206084 876473095 171561235 763565903 979069650 481324750 488220500 891809358 588404545 332848322 787228197 976823525 685086755 107139186 986383912 626612032 907518811 234389783 958261188 681230492 140593879 707618630 668970727 720917153 577573501 341771643 101853912 718673027 166719874 947585914 596420338 834628615 508958723 453968400 914928047 560193511 706068288 539701287 435453650 838712082 274819708 296697263 261578972 530767535 850731451 936315560 605544113 638674232 517962784 655370848 676221801 543764888 769544752 342373007 76890319 776954322 489193785 978963197 251440327 48115524 130718013 122294226 775821976 345282341 960598023 945700690 83738122 271014186 59422154 85947092 342911443 668676284 588429386 502334460 450486509 239306275 953386278 640255807 913071271 122443810 260271150 749024201 562177884 409678605 442571774 526079205 448838642 134361507 993040878 6810819 933406343 824434835 458645358 522443380 525531837 765930220 482514797 5808019 731096310 27139996 215825002 166372460 100445113 512647139 662013153 516881444 257196492 659450793 2832087 847007090 88984390 569791697 882218732 804657840 591877247 780429631 312819417 603762886 347730626 608238806 130010401 899050464 598103516 737076547 457064529 311415984 222291597 384287286 12058898 984083139 395109769 276133818 70358039 658645020 151550992 460443322 619209148 879538956 140890027 689876691 869996136 745500672 489223110 893660760 476938730 586080940 643631947 829905344 596455486 723522891 744275630 38119918 45756919 872843795 414555339 587182413 846273985 400569432 251466568 730116000 432575529 208217823 139551417 65599121 270601811 588379979 134231028 993167820 342179156 803817819 407494608 315774932 105630673 84109030 527636594 887890785 505714986 257500502 806610316 899150224 600147083 941514673 254312525 799075753 698326577 125169328 137861000 44193128 870339711 144229043 984383022 508382459 647001365 990327663 811884261 631331374 301938888 790390248 413488087 543540187 422367034 373735207 764171776 771172956 812690809 351956463 437727880 758591942 500791758 58482186 540130728 595592269 855041249 930140897 864994563 636985296 127751474 5366326 659621536 307083880 643375069 142655410 261180860 630294154 84258137 169413048 200078793 581459645 609874129 167000261 398051422 250339709 950670728 679899628 629719441 126810449 300707262 94685403 932237156 218331205 742583600 573503269 853624294 234318468 54405391 303885570 508761068 688409265 561846833 429814382 687264405 973094033 16754792 273947648 547620161 452142578 224218569 659668715 946228975 713774527 888106972 805288332 722758699 419673178 25331801 874316482 542415307 866841094 130030970 293946702 957843915 809884917 648994922 145782047 990195251 366690987 445857326 703208516 329228736 514260517 37304177 484556273 879084767 654396257 814202356 266526262 848765590 16431505 401382122 23411659 298596008 460149615 29292116 864610931 113386441 537225193 874428616 816447135 443815831 491930800 491440398 621265210 51012918 966688105 715095466 903036431 98524439 365024429 50642837 115155280 984031459 822939730 797259435 881694522 555335375 263623790 262067088 68737871 405819075 924628221 979472788 830046159 495353590 182808066 810196592 475180019 363314387 852981233 966216837 117458745 802462456 497641654 561492133 176243836 513855138 441067124 89646815 78424730 932174859 850661209 263567715 268280682 232425320 821704015 90540890 307282310 263306447 425766930 197655533 186378190 706910897 882896490 630305686 312773569 790833519 589760064 689984566 228995413 459374490 986084482 303854179 135736205 1918270 860876244 984585682 279647466 620452594 572037734 96801778 565480559 904094949 60258727 890370519 400221832 164722258 465858660 900734648 812835411 582242570 573978502 121776201 546300316 60717325 427120222 207881369 729682555 676845101 307243993 544968952 41625188 435012941 331202578 264658403 810444005 402770042 891382147 311784158 225971243 359620869 485100254 310825181 543325035 854124424 507071767 98535483 581826386 186470055 508165163 824371232 916941493 263662424 528501561 893244672 375402081 239700741 173217990 659934980 459818316 626790867 454835393 931302734 204153469 56611490 326660346 633916592 387856617 962533843 624062679 787930111 169323755 711020558 733235491 869250375 835784311 601574012 127935777 160158204 437559885 146527353 714006101 925720207 13468932 82667113 723333584 868503030 237892483 878054455 863783636 597599439 709751456 727739070 609239983 407969967 610057680 770330909 417396875 880673035 880607859 975768983 224189466 772101153 955881291 449443659 610858219 981376872 302989587 292052709 595687337 306310008 924890704 524900892 190525424 876323178 825880844 201823811 661364752 582067620 133152380 602405168 129733983 670573890 579301355 66388768 879014568 985562550 89142681 485674244 279090905 593924335 347794449 568763403 229590903 748640697 194888005 193461416 716936684 246401751 201521231 175327134 840211726 779753661 441474577 346956000 919963458 112689938 819192605 947208132 226602658 456093509 843699116 792650533 380288440 304436187 474635703 906920427 592519050 363616783 330366738 157582797 274385989 252937571 614617564 891742113 314767056 669484739 958818527 337975470 587554772 480000620 462465512 362907404 639990518 232994441 504648758 77472724 327999021 883297547 941021031 68129047 357691169 455197740 407625864 644677183 966885289 518937360 312205277 90408552 236757300 939352961 892251769 529756214 781500502 682596293 396768529 823667555 969146803 500141262 878522608 322101309 517183470 54906630 938542808 362644997 494032572 701597372 966707979 987425721 758156964 616255907 995147911 982876534 795925740 808243439 208782208 678947004 627568811 727260936 321981801 663418226 375349192 213853312 290493298 282975488 956492641 170957195 935257253 356077730 422118375 617028834 579625278 979339794 375490237 642368586 824174897 592612258 494116696 251018900 688899605 751889181 384002104 740593261 24007688 911537350 279481226 221267256 574623955 896687851 933063685 258968225 218753422 311696882 557481078 901804223 258293618 188862440 775384892 609437841 247805330 707029212 396437090 817554801 157819536 821050531 344933499 86593268 976650947 663911130 567855301 980132615 60949446 642589681 601292893 47692513 437150956 166648464 366632054 735508130 521493700 230496780 631800759 178171398 222930041 144811010 671868242 826308781 255651630 69024645 46784688 710235758 851719762 368905762 950365325 975733906 412642228 571307643 948464786 137638288 59890249 765508551 647777790 751877216 579455737 465699290 304466415 89517326 846191689 715480155 771232755 437602603 318597311 151685215 955816523 991785129 861339416 283719915 12134097 701240397 397113443 128875006 424360309 93606943 803811339 15007780 547079398 833116295 875880729 181709197 274274536 404461220 916142321 988797117 174691975 909652777 683312118 453674195 798772957 863448439 792069853 743853121 923591504 383336416 698254908 366454293 497007176 498142098 861650328 458983275 340537181 713293976 850793530 796437519 712178801 704438113 323572320 265078888 708134632 482210453 404737592 88525510 225695808 497610981 21831982 15278126 926995813 265302567 885718544 175413786 414758955 243103996 96398343 151449562 244391641 912404557 205113858 239302993 995161360 828516238 316175700 98262131 874777415 549192915 670977897 887067758 156884249 583305442 587737396 966316046 679863980 920193030 977124156 749474060 99489148 41642058 228012767 930893437 271732137 909248971 881543013 328382100 109752623 73227413 412293220 963411565 973453160 360192100 811147001 814935216 13345497 581809313 591427101 908354016 959312430 848189942 566153343 909053704 683008364 995467850 198422340 118175294 24390698 448062624 574504213 620475391 648729719 979043408 53749761 28912427 821213831 757552258 53032975 366170465 418112371 398801829 280791427 611671289 265293585 164104473 203118280 325969646 779921449 49483262 201411825 808395285 920132516 929364983 100122302 754907172 301160765 577301782 285480446 313214114 53878950 827979116 257400442 150059634 222151994 738311830 479265179 24584690 979571103 696129136 33333530 382196504 795298027 864859568 674409621 982407762 669625872 463674063 605655254 828823372 388899937 193620046 139334987 385156747 971518743 27290808 576202094 546808643 819489753 235678910 875571012 411897769 390351609 734429973 614399052 302516182 471006416 439378418 203179339 272001505 191288828 646671035 70199730 743882320 902222012 580035426 650777998 909748797 668882044 108190934 215680052 975861943 893893308 336828998 143627321 583042997 143361052 885090434 253923924 959811533 363849957 102915999 11835506 642239814 366476953 963727003 178947534 623508560 584081179 671554751 930080144 790123193 268308546 741023066 565185581 30680087 908065250 176700838 553421457 532317463 60064808 549462190 223087856 32864814 901116031 358334387 721996166 977613668 977796025 917097872 171224142 649200877 975797246 494517867 639853300 754048914 288576118 8840868 114491801 506053359 3471873 556972096 883197596 8271691 90210742 437083766 517162929 703423196 780114994 605248232 616278188 456449977 14219259 304238861 793083836 173976539 127248621 307751415 22974069 581695375 705273279 669239489 58349247 942860407 298296040 793058119 302197132 501478641 866069688 426460288 791640398 523698405 220767899 935218204 866152382 311052262 905000260 214451298 522981910 719045354 350128357 829965420 897728263 720932099 684490884 194665508 245760357 211088108 840127628 763267905 539693013 269556177 230404692 373151379 101169536 627918306 244068547 143389317 64899050 856530022 579668739 935032924 287553244 745692324 771199827 15271103 380546275 270145077 550802870 985317800 959313252 912512879 409698963 113957210 887517694 782706773 174464393 918905558 665552465 524781711 418554580 258332884 436254599 758459687 564068084 644718051 992161776 79342357 110598476 736698627 369907247 238209310 14298286 191762354 403507169 979524625 621020650 79605232 530580296 993542088 291904045 78855648 942342960 826775936 246077636 962750055 914176506 616808903 676018348 735645088 667337870 804261106 698288616 84757966 624979619 361504041 256526658 437361723 315983445 890963758 60942592 454503227 14485599 496506767 696409893 772872761 357671781 31982647 523371726 283315889 816628589 270140482 458966900 856757306 267805069 242764502 732755138 482228476 780339188 883143227 262448005 677673703 850042817 37303120 932958374 483037900 667245911 209578078 825643019 238492928 700124791 746008733 756725890 634217255 661110230 168066341 539719352 413658688 227794794 889106361 742772309 652254673 797727839 780130919 626685336 365531524 659921023 746269788 664579381 366943521 65427750 309841068 109625933 45757933 322631957 956530150 752659263 604002 69679627 792835235 663589095 603856109 121110169 8611397 780647762 609783002 673314271 506958373 104533404 365036244 905366525 100576394 638211177 496379401 201919119 350534789 599060453 3345906 877232914 487494220 247129398 109126025 535078738 322303473 87028523 683155733 565253491 357686824 866093680 620799579 516422597 538915155 640303316 132331769 300981226 714645762 973947481 582043941 154324055 179820403 263219624 760540608 109766475 306059804 446338684 585361636 688103003 579790182 828536776 281953171 717397370 71026638 732242825 810097979 172428355 624733643 163554496 531878461 9308482 666975549 972546340 304466232 428063882 935856880 63897586 711225125 31219874 604221194 455983917 763952720 401753643 546014491 642637237 204011444 355960324 438136682 394024536 160237929 385705168 774756669 372303199 356645915 882544331 983650806 398404442 850729628 87833300 732503943 693718339 955954946 485908319 335110371 424026282 621150691 903667296 975741964 96023306 871635609 209807570 118737078 182332608 259698592 368199560 112363356 513082627 696376148 197866199 4059249 431190256 267195404 640989500 538068697 116941790 107504400 766198770 695681139 579563171 382254930 513999088 856856000 861047605 325969525 589827531 671047243 134861955 488058558 102422700 928857968 53362871 111644821 237508032 122503672 952276533 653189289 848121655 495972709 984216968 121596073 100179800 131890800 260734054 167477352 265953640 429163545 463369049 760101960 205915616 266135174 635549658 163391131 229950133 611046154 88071663 311256062 280500538 453618180 906506208 894297852 606156510 147503748 277018994 629262839 492331626 234000927 441233144 957899186 450403787 40152171 24167244 773223928 404304735 180726577 590666878 422677002 742557377 694358848 334342777 576704477 949696349 374578165 947883453 99686543 517568864 393677962 301815693 611826561 990437857 18494150 235836759 329625063 731762327 498802945 433452437 311896575 576085895 338098627 187558793 397846235 475065895 586114521 534159965 589965880 984137521 360245400 337533854 211266367 481201757 173296627 98736838 27899356 945685654 356403947 405412001 806473085 42691552 472999346 162594593 332514378 906112117 155010599 508569430 959766551 819968635 568248702 822270644 586049845 659812093 486266352 903766329 466014755 20492404 970476722 67094237 98761155 830091231 174361696 872051693 357211589 610692001 293552051 231318896 926367490 366155418 304531681 822099809 40995665 887262561 438909235 532079652 655792382 86839516 561618986 545192450 759911111 155726720 17217739 307826434 345626194 79679501 647033785 70692643 3038203 950736019 531096639 965458593 205117325 311750414 125434592 477854406 217136760 685139481 914420379 370686210 92489698 878014602 670157564 402084333 759937863 607348756 236043840 597780088 78795580 483154180 913359615 320806965 38471610 375612615 276165191 422684533 427789326 483594158 268437608 749654050 398929444 494547071 858774772 312367495 799096731 492768573 567690614 70716397 864513079 323689211 884170240 592743779 909442052 94390679 779836111 85733657 610184100 352913633 701322138 740780680 763982448 855207981 616725568 551126451 400217164 251306341 183732777 606951335 642669193 559396198 941302230 529542459 854824873 690810844 948626635 868970583 829935040 787250997 389769935 60980916 817485302 63633603 560056149 427369091 732250929 852942269 41254749 744137981 502908638 424929169 634824970 727785125 599795300 442683488 465317113 992923077 799370127 367886174 310253023 728729051 641501881 572181598 901415729 372266330 215016141 282358751 610680715 981573371 763579297 209164573 970538126 155297339 970408863 863952992 892299277 47593249 832431024 949856042 645672572 996048007 688092408 140505032 260001776 821757919 852363134 552408140 280305526 113023358 889338327 637441778 651655522 153960903 216032562 751437931 828156773 290616832 590502614 622167593 66789988 678587941 695389846 963056378 326993979 275224214 309893387 813500069 304230849 872266552 369786026 792925634 701842236 709453619 294010565 332538207 175933243 502494326 6189835 414321414 252718239 16319130 575338506 829124940 603585326 827596441 619744488 448428355 8157581 714743580 401727512 976281610 515469267 799934024 396400827 732099884 244326080 629732994 792508468 278326035 742826697 351934491 905279084 526420395 10006407 611314131 522209784 642552163 41900042 281667230 555885720 557095541 756161263 986053788 586070447 359139515 634712680 647104475 297004739 365587861 647499432 144325945 419197438 397076125 428050070 182348083 21769063 530714193 477834978 730889530 659008623 522242296 246580515 385739759 480643945 540553590 961553748 443649870 786342644 813027665 307061666 974296060 609286724 876229994 668143275 120167775 93726014 841576613 989109467 715603982 255894332 201561187 909681472 94562427 512186445 47024705 14647037 861531400 413257193 29008173 706704756 990645958 206124375 284549393 523783830 72401190 635257674 714343468 956782186 757677225 449760567 606215046 469277401 733606820 681884290 962979519 331798753 616104724 271552285 254456425 354593487 805453421 390677920 595607617 342321560 569528064 457417293 263980507 300554433 87364243 8897597 500989324 834699977 460241207 314114019 214573366 146710190 417760852 302917417 479927088 270018724 394153859 59736263 333291982 821124411 427088311 465758797 147638409 688934520 719976292 230559973 528982 408798843 113563745 970625508 501598404 193896275 480232753 162449295 416315360 325324506 450457021 876054148 448278944 116813062 101690807 544752727 495368658 744584964 4099821 57242954 699527514 15640133 594839477 869202982 491798931 161120770 348947646 772222166 108093967 168808168 90774627 913126904 437988906 314565112 742171703 537845895 785942297 622342407 736654501 78552278 842472456 2415554 237205836 527609629 347087789 436548011 672309473 635606471 593131241 220449552 541992538 913448053 295995023 51121099 313928428 172659663 96274811 688224553 818614483 755062017 263609917 234744474 826427097 456739794 192078525 123142370 374438088 365798585 937655774 571376006 92031193 892279512 616790272 228560456 588998066 764384482 484075545 227450254 428277559 301982507 451441360 852410938 643261328 760448219 828500346 125206503 339627672 825931619 696580439 962379154 715925682 52561950 340666888 615780156 933132663 993821961 296977595 941821957 662585430 683092421 194731151 65191531 90754152 643328981 8175757 675832087 380836295 795072224 220849719 578727011 67570481 935477417 636187396 371513414 757773913 294203186 126540975 985428474 836245954 713501532 829462061 784757053 142550902 932003063 345773386 872581811 483600908 17797962 617409414 780115381 483754962 909342159 249245803 921091777 803972280 55194850 155294444 889090559 876891761 65177434 294430537 412568932 215753767 754858634 990220762 350716965 780991390 150483391 695328364 934162371 511332634 799758140 466908059 21547173 189410707 6301575 469380029 193827768 597310168 985727494 253713768 818733072 605656883 877907952 726449549 628345997 830093801 13304923 432832978 653397939 827494178 527783147 618448525 826036501 574918737 785879819 100138452 475231758 290362504 930393213 185023423 468697766 351327915 331504481 200188272 948729373 581374218 90328475 965660387 12760576 320793670 443728602 421524414 362056085 823883165 314663982 842685295 325960252 14705103 347767897 189460688 681678309 208634350 43036394 795701500 13584295 797459942 773380918 578448990 820018564 53498508 122458999 919205091 62947445 529073408 448862653 981541487 104423932 611044703 119595227 740687981 630054175 232034397 146639482 389882624 108865769 753021978 666011401 282861149 934064262 338554006 352554811 500837599 345480315 601141658 858238191 131438855 348093623 474133877 9725229 638357223 877733012 570512751 334327031 422162542 440034421 466203148 312314872 929669639 675479331 719319808 965011044 571644765 244439051 557532252 616664809 68739482 886183144 237550154 361043492 225542786 479217289 704834486 718256271 698058077 316560131 699488821 110713742 745726326 359684852 450208214 825683974 501725942 231462775 2518480 938203918 992805967 199582497 282921773 284139344 29134371 777532010 395263206 418920270 633500890 479878592 579219552 683258057 416254025 586437233 784300576 617595018 960251736 848471374 461523497 424012334 487559479 456005938 724836328 109909793 208241977 216958488 762403309 247764923 515719037 995331511 969388639 150184703 658838413 380075909 673166710 783425738 646440106 884973746 613706001 338975915 661357856 414616642 409175915 424591849 680754316 439584924 369325032 925842981 355439083 641223221 18022473 125526780 15061231 187433285 121453224 145225975 625121872 582976785 350646977 95043938 920416484 319037205 131036452 839314681 609032042 86326800 46985270 499679832 114945415 800799088 359010553 870351961 857193549 484549168 99174686 832726307 484430699 750390658 407411409 749330403 693429069 593098260 309011225 773356153 368140483 895362439 154593823 236783127 136909473 541202768 832542836 430770572 954548192 938655946 637174016 570085506 520859948 770177803 521775936 404383863 783172284 775755253 505122729 677352114 253563342 77640897 66532022 532027905 181779166 792737431 284535405 732084093 353828103 376013517 466246941 12438562 588667554 535969044 595693101 959218665 340770237 19179463 206830135 281669664 95686319 856004345 560445007 606606599 425430562 957368903 220790955 476616295 821066025 607116424 852224542 305126890 372429220 802472139 692468972 52269910 585668155 826009553 519658421 390197219 413531201 115507465 791563663 610395803 396635842 28313851 717997819 819415267 305337736 36380132 443421184 526544246 732269480 263171367 804243537 155014636 519975507 503794413 737782600 372551225 958590336 750491635 522214647 246566695 14865576 574485286 172463704 625633970 253137153 45718305 73680040 211413570 415309328 804591253 241841207 900008481 589384665 863347402 301242493 531674440 191520351 732505230 960925485 651913183 700707983 467174307 239770225 959844397 912311753 59088762 926665069 31589959 383641120 270339438 912406200 339929877 993740450 721689692 23470608 878335465 256993259 764130374 151442081 912616552 695073597 152654115 851002103 293361786 789022340 253534365 862426825 224956911 968568321 902069427 105057939 120138017 47798537 268293770 810642345 357703363 771418073 700810336 265552112 962383640 951553828 400323447 333626575 212213321 738828846 773223486 970123809 599744042 766383371 405526748 219134741 933088384 56498456 736577213 954755332 499591994 796954928 940117380 9350567 895005480 618406308 429812151 191653965 616270057 696431929 407774866 117956163 155416208 108080221 288357509 230150068 76818661 318187679 875338728 687518968 450820642 381874214 224736004 413954267 206395518 251913852 140868337 128410001 985946669 578762596 22258527 933582994 110353468 702303266 422407714 569494725 991694677 887754669 376574477 323704579 224011410 11900532 802002931 964519994 677601064 107010955 254634631 523592409 328421693 193902203 414261789 841654962 449444409 851878647 804965254 337878825 181172754 180707664 880305937 795534134 20906939 736304303 347975075 722368238 514608254 456165536 88517184 945345645 805645903 27810621 617649342 326855025 97373619 264840918 612711735 724786989 108905126 283537734 672054594 343565914 243197653 42090359 609323951 911824275 44781452 222558169 903141273 269451738 797975003 930616656 477848692 825860950 888602206 767300468 824452098 53091624 249906502 985719036 127804788 10583947 234140609 264440144 206272222 835484039 675814016 806279089 133361452 699993703 354892851 85009539 779581400 868429485 395605945 77519056 195316278 204105887 600568715 987779055 495758920 687797709 645744321 939785781 780463255 396794653 292749466 336286382 322600837 492059971 862469610 715557205 585319131 646047205 894327524 518435441 783728396 520905347 128381885 200239994 8812979 590043173 533647826 5952571 502810320 584467007 672805374 965126132 174718422 309173488 605087357 412037774 437182924 684995525 675791383 316934856 216496945 94026813 831239219 461458556 547015404 676750149 981352541 298875973 875798280 427341656 668670033 46910402 585084876 117015616 569474459 727754763 664996768 784934486 7062172 732565986 760695056 738217653 375717803 883087098 245403675 165326886 574114358 247563351 136521423 163277986 366727488 224416940 962811914 880334457 402702014 687107223 359968716 783907921 904427699 193963285 336350669 432626266 316582235 820518801 453514036 646377944 955164069 323060743 260902717 841992607 59188228 449885768 303460280 425252557 100177333 425003734 691592061 420127430 371840010 492559358 752484880 378503178 433938060 934124277 537391195 878529720 429116544 984236302 822719309 822845830 206475893 711153616 963869523 37313649 344552109 438975357 503582273 179372486 479433736 803759674 164958946 375254580 779650861 644218589 710153426 870525408 445325945 526576679 740338424 667401889 672058727 637708283 209575449 157817298 359507249 585635143 133525291 112746732 453777072 812561874 248531323 976477877 27477054 70951058 57996817 955468022 895180981 898943573 428791542 852887645 832119316 658627682 342941279 906836992 798462448 380829754 71961736 95067864 277213328 398001289 384864921 572210108 121774459 547425130 933807440 168923178 31541794 582592166 975716644 441285272 709304604 752589183 932106216 92623237 901524335 353962875 761051271 371602850 320030285 52371480 752017096 793239433 837326355 900685897 843671162 966624021 105440782 989585920 479002531 661741374 489684115 300528005 628790069 212337800 880758836 767808811 808081367 396387872 908843202 42521235 536073494 696001272 668410790 275970939 903078588 909188481 511532645 68629800 219336151 993802670 884798416 414712544 158618319 945218738 450731345 535926086 440710535 347136889 90096004 421221323 992198636 109808780 516653323 322200901 631896974 345576126 389935473 726235926 392304306 287453256 566056902 646604685 868110236 979795559 889878422 561014802 507602251 655834917 904029782 520666784 569965220 164973290 525725377 930219094 349367034 235631678 124211427 193624726 507586335 329973141 853583004 540295382 333216181 903406760 625467022 384627270 693554233 675548124 917634729 66790431 175395494 465818549 861942576 572427079 965151705 310503832 841365850 262286044 49480881 979526021 335911760 615336251 255118033 284556925 211776277 730303392 451812896 459588681 217054380 618772780 606806601 805519601 818634373 849424295 930169716 408699479 279837140 684064330 66001817 546335640 473533915 101470437 75756288 26643214 135618507 57022035 866588679 129662259 374572975 720963500 96891178 643775520 165400239 881544026 868094667 916978220 866756553 726222400 797219815 226108143 2237682 106029949 572644137 914128530 969336995 270659460 758809867 603362163 202623073 863652939 174430634 334577158 893784440 142438931 639549838 131306389 174437093 209635472 275227917 303588918 961650240 556253987 161756845 967788087 111527567 547230326 268239282 608575119 118993518 686772264 777462756 137584127 423141832 619605339 622904643 603346601 934412876 304807061 306331374 608523338 628810077 719808225 641778306 944398782 306884833 378102089 795671798 662793855 204157254 581393126 886533385 182533188 754931622 613320166 353720925 300750164 100606560 754130440 702319954 424449139 548904652 521144175 918167005 18638937 95620583 496630569 720266795 929656557 845635619 755143327 96855946 398607952 433344997 450103294 263704628 419982737 711742171 943170140 240497983 18763715 593521272 118255127 849240667 890831034 345592435 947059781 708968338 224701414 179521761 423091970 178246545 914111906 583204037 725912811 236803863 733067587 548926497 260713262 290449999 248105479 913739272 629405611 82873326 239177026 327545899 634367154 53963586 734207944 646585900 566126887 704674140 399346400 325596041 347195820 682407989 11636630 569229976 733998061 870430683 47790819 972020976 63875659 299298256 699483644 317587888 563439522 154376365 783090032 746287549 165305032 793808711 227967262 435879955 927988306 748963550 954584494 884448012 865408867 420988673 285311040 923089666 823847815 534322621 827853891 291596600 692000604 857103771 122889166 36285746 5315224 394560823 907231321 452493558 766587061 241569808 648250624 248137038 884517957 216828187 826926366 24925064 15429594 790013662 452440966 609086902 722622479 763839012 83348148 686436533 851815362 29279307 567216200 131535765 197082002 789938458 759876426 828020262 435882752 72947323 840443538 857534961 413141328 103818883 39472171 902359225 926905866 337287914 267886890 744013773 385201888 887666234 859760202 984570701 598515701 196402792 409323397 85521925 950463689 637350861 265563908 76767810 183557294 371338887 598005081 434173793 829631186 532685558 7000218 933711767 401037575 712633154 616450674 282112827 349689793 495252314 964898552 603890262 74653932 446337047 787331479 870434005 486955758 882760492 665637638 148279202 528592593 884502718 571856397 761945993 943905922 105805778 122782634 446047327 613302409 358057929 466322977 578845303 73800496 359278684 104205066 485629116 26998579 780772157 761586860 743871421 409715536 199996533 583733707 286672132 445025695 22071441 507651018 205476002 503334937 797839527 633039266 19070547 165307822 498624073 530937067 634451381 428965590 291961397 481528386 480092036 447232595 55974609 663364807 477808315 632526269 584458586 924535790 337718401 585973957 914432159 64292579 364639421 882879593 384641928 667380424 538521088 964244420 217621566 264810720 935227058 839048929 815397505 236503823 479077388 994572006 635687004 989101257 554919185 835766924 960193100 124670067 390205680 505319631 94649808 881983802 161590254 742725063 592346977 141572065 439348698 610552836 545704998 577329330 3937007 916884600 497095586 51064253 826043385 217985964 301572903 931023913 657029381 437489125 810927784 522647695 263634363 298403500 753144760 331953291 823693516 103490726 323282304 589006394 39129088 458534945 941915638 200601172 278707078 331378438 46671411 576887435 247268173 514269011 153262885 243151022 597947943 988694390 931942905 828838807 353666507 78795068 255985492 39599138 223295382 296645035 350980461 600572915 518704736 518816105 476919644 280079707 139538515 710468390 269316881 513509037 980753984 291076328 665727034 495552383 613768378 384132137 515889997 442843841 617741153 56737629 204674032 486741631 74859878 631449987 320671678 214646860 192209415 66698544 600894881 310021434 200378191 192725453 74289293 426124577 314443072 79719674 847969472 33741177 106929518 451430127 913135307 764744102 399307568 211966192 736263699 877268581 298718523 184754088 589501022 376099757 875237068 687643536 713502593 526139059 157235757 102384605 897343662 107993802 524190147 336512543 856339603 668595441 661871150 600411964 703809665 411975159 514439288 933978211 351882300 317953453 379276370 50612407 212122924 573456755 625425196 830018978 216364581 103061755 398950417 479204007 892305941 875010907 642682555 915577710 420552691 604541031 618264927 700950341 424288049 850519494 737280193 17972723 296474299 992782773 179513938 306826024 191060817 505374895 99576953 613332340 560541708 205123753 806349236 808244574 630104564 11821656 928223066 471309313 698072618 883801792 313396810 836092474 714188252 24798715 259553201 929726019 234244544 772181660 728059583 5919166 17196882 758034687 430333760 328207721 632440320 971403184 993930927 160750502 813772034 252956151 497564293 227445843 490248321 551247851 559657621 814396174 813492546 454066646 243577037 271414320 648853186 383992921 965884666 566906545 724601186 451992617 849185268 824794643 853845676 131876135 564900772 291210693 740859766 156497880 881310981 164268321 447030002 525713408 79284198 852542107 299021439 630647049 463566641 79861433 174367058 811611510 469436645 211958235 102312743 139940453 262430756 623692411 145376770 786939759 687925706 360716526 524802339 62440918 322117929 370765768 265655016 542987080 253330425 860585945 768497407 737108230 834249902 233966327 200636052 711595397 674400440 958835791 421546561 834746221 155537574 236726540 995908100 553650578 731887702 312076183 863766121 792029391 417617729 800307516 166333552 552518758 423293503 968261106 643897606 654351349 57045417 470566602 285090263 174075097 233371227 886776034 573846558 586345823 443607003 954090547 67877984 715899696 797771126 956839391 942014820 247812292 124830869 518823511 101606236 126443273 73894691 468354944 326245260 150936249 293986655 251438718 898864353 696607328 574805852 266642664 606346178 663694945 203960393 222080446 137514937 209422276 466991673 600807281 398610253 499017094 961474683 645643860 665399635 364759638 893859919 59433686 85005905 669698008 878912190 239400431 889073582 737958729 40642020 213243774 797244955 797557127 429477284 583928118 976993281 406934650 661238847 55160618 388603082 793616969 875082019 68892886 946665393 551489383 317330692 139504478 548876518 498709007 826739216 88203894 194528971 200929594 890547120 512015849 529162704 452444770 980400965 54011281 910307624 194013456 952279399 768004197 124249264 947889205 136468523 752813677 701719809 263161219 987114359 96772490 375234164 638767445 916350112 129447226 500333441 67335864 144752824 994075195 924418593 789239852 231947846 225554477 605131082 582520520 339449277 887390216 888793329 599718091 579135071 134413874 335653825 151159193 448736655 791325526 422687209 748159810 537417536 256308736 590666380 512820821 4088104 537911398 369652639 617418129 714425999 966996467 83855900 635176357 336196425 339851433 186071430 256510891 351291424 218297653 689295250 582008708 964501298 542590903 535038348 427621543 63105508 347986678 553840020 483154457 104129726 403661841 445571115 53174377 421827571 711592357 90922277 284216577 277532666 249624218 471311826 572632747 987343468 228255730 63476747 511788937 719966641 79692305 445897138 882824569 106313672 867856643 315767083 733880728 290784483 514531897 436983985 136471931 549550901 697095662 536905615 842638363 899072196 455005532 259798815 849160520 644961097 449554557 415443946 55304659 131830746 380115666 497833934 937515348 244982924 704045688 104612975 492829360 197725716 301741185 353908678 730815894 772552921 825280611 869878885 796379684 20080264 712401998 20898035 738747382 544489420 630628584 258442012 748676245 623171332 219523547 887185712 293716933 741368783 184107832 903735115 831855217 771076912 76832330 965449929 188724004 34610212 74950361 30922932 104085160 984074586 35314026 493985360 643581815 521821954 946937536 370298255 984611654 436407494 694201439 996322080 703335478 935942536 809615941 821149340 505508734 124765706 433104399 804825694 821097354 520180510 87867735 528671706 54969229 931306229 642491917 402236738 93718044 924917404 983565790 112279078 20188865 604121494 395573479 271142340 588390631 765288606 49753943 415668302 619428575 784004748 498888598 562256981 825279651 51977441 400977993 494477989 972509382 354631697 203709508 53313942 285737644 132803443 627136978 277351422 788521082 522338468 696077893 125003912 992854324 72481649 779870884 480327909 277179041 960446745 226780633 137772713 168247594 208213651 480299627 323041023 319371658 693690101 68480829 874337160 945951771 56109477 720317616 901570265 951530528 736877348 242897932 93192189 581730974 54866565 749990783 260562149 642522085 973120143 166094504 760560742 149986608 900418000 624972681 991916586 34440539 900152131 907539274 75385721 389237517 869573417 269004438 674022370 938375575 924900616 448497767 105172965 641057811 406913617 116294501 830800512 754358785 113658135 941484851 3384777 533692334 524575996 263962986 824074600 717483129 952397753 451991541 506585899 316670288 791589279 314980722 839873098 762931532 430345013 828164018 342091911 36767094 439414196 854226713 535917252 251906173 228194320 742282992 207328321 692112938 254953524 682829554 632202887 325471443 246538272 632258769 239725425 767316802 833823754 516327526 578470028 830334395 361002662 963508837 803117141 703524420 777033867 381151202 279212056 462641500 522526963 327157817 887053551 277470765 182868102 741834693 47131878 414693677 671737522 563958962 193283378 225306434 852236577 411967412 777267921 471218418 759529503 795470713 206502393 47197872 624896288 176797316 622523191 808764796 813944349 640408582 911810874 924319192 861574076 299215638 38681906 86125735 942368622 780110810 708187940 174933338 951622597 666424391 993966294 375091042 636995437 215602942 743926346 543035890 296305093 210495627 317970067 963593773 300586197 94204308 863591383 264713159 219601415 656377886 112059363 376943856 324778381 330563157 235789521 601196974 952016239 7415778 584839412 163650377 142096580 680076694 861737125 974387328 496381455 537141314 578476193 315477371 587757190 667641648 303928667 26630932 108879947 110172529 94409982 124747367 132454689 719106404 392995749 762024959 522980193 423373369 755534681 350048654 669048161 452503545 422742648 282018606 257830100 956214162 798267703 770096323 618124431 756130805 617710936 84087624 715216640 462041482 355356010 398499746 878557948 195639194 383606448 429339146 786594210 88688217 310523681 724104593 48602566 159690081 743871434 599433242 785347689 831823765 387677223 142100345 514255839 525274309 190012571 513641411 365368264 439047474 133215099 248437240 874704890 32317096 871089817 946155138 138207996 205776540 145212465 780965864 43099093 111681209 844145700 645040157 84947901 405398405 556908873 896897152 399365880 495679148 427793640 449916301 360330052 159572297 358000290 697966812 990078799 391088433 89809355 49107888 710073813 872760513 180743921 735605753 557141818 169935865 341245262 501305648 67045882 516605721 844054868 583649404 850857301 266625410 520056476 25996147 665112737 144328589 208603668 19772462 909834745 408727175 179652004 411882976 651404682 118076617 614156966 234538132 804311419 613712018 389838251 754896468 355942943 299628211 827471372 671965377 184184252 749917423 153072717 694303528 109975372 177595411 607040671 729360421 258247130 781280894 511876079 948031869 924389613 49553828 900463481 328667711 932524347 784410560 398352591 902829017 774592574 486383028 803693648 672287790 869557693 811230520 198447135 936990915 851201744 977201696 320301512 806383322 466659233 877338385 917552707 143228931 687109271 600346495 938120893 805828449 444688771 722590045 541409915 965300302 410393127 208950377 85766484 936302771 84867628 787396700 414111066 530625451 335817005 420348507 60676807 809475992 755858946 342530414 490320847 690867667 827716656 500667713 31113837 651208786 540004907 23457630 921872537 381953034 957602339 441551956 864568549 965446943 46536710 856368267 37651522 721610902 896479623 330910058 934230671 189299657 590123861 208689895 48334784 275310263 675281201 542141115 750846265 50372217 743728410 938180871 131417383 960580236 266070610 813153979 113055458 525814909 685983371 943446579 688431408 427126610 534834192 448001053 780372739 554218834 790540999 100133163 747141456 41894037 312022758 192485267 156428427 533772186 236467281 438110616 400763275 712967461 865230279 849724354 919317848 443110518 953512507 20027734 828385540 921398879 621611756 480931476 603286513 922793267 932425574 670794511 186434754 61708555 349869184 759502645 953014499 232097956 328362377 901383535 556091784 8530733 397464313 755605326 475483383 281237950 941644656 576044144 958377701 882332870 652714258 434040452 292721814 824910246 486711646 168149417 638792634 314838154 129654121 997482923 877713761 877548330 184913167 207013612 115650647 770001303 939040118 504258422 41726374 243244676 2467217 818094571 275062371 486780161 667541097 242466087 791757393 55747448 143970211 369416642 192333372 590746184 508393580 493239596 114754645 901726434 100556490 537095367 931966134 709623621 275500781 751131613 979621719 61524666 750421449 631422056 9015597 255039248 491876969 480914384 261583155 593354530 787630420 485357112 526048381 404914853 136268240 307947675 946518240 553784291 14529785 240249227 336077145 863415572 451846816 498743321 996242147 235049757 896677969 900445477 78071411 989733338 959199968 275861072 125444528 852564177 872656065 388452301 184276916 795315576 852976038 333349887 491006783 572237246 8384369 837406455 187866278 708176862 223816910 714371461 399289973 473612269 405490778 989434531 56816870 708669828 734515648 644218619 334845978 90031563 299867952 785725108 957125994 892196951 853563351 305257058 571415096 290506085 295996638 162791618 717451658 703658630 452549905 907446050 101022396 739637107 198897740 281199137 9587988 277619901 6300841 154363635 58296246 548128643 718254844 868639170 354933724 404334167 514497166 565587620 863805851 364103270 705573768 713543488 590109753 163397262 44210069 466137794 224305765 319062616 164706847 530733937 398140725 893645013 554697372 716892331 747337138 622160284 677612493 510092618 552249411 254285544 497786180 135468896 437684189 516995792 404807145 975829790 955397530 342347758 697839510 267712460 36104108 803185423 772015099 864622852 859600428 392962930 874358465 349941966 238287558 822039848 993410315 965666648 751882557 470087593 245734701 972946114 10617626 280445730 199187664 667372006 324665135 924543909 134721670 656455756 58993540 925551394 277069387 763181633 294413825 837656052 450563187 200436207 409027671 581685001 639746497 133696555 836058780 788275556 558418263 41594388 927774902 239929260 669093407 978108556 800054165 546932922 920984045 170411946 119306528 649516483 403988084 706240199 20862211 749961017 457613737 461841402 139516453 546126243 818746547 986787965 443548850 570315621 99867334 318336761 998187226 956624987 933604947 47088886 364460111 46911604 107853320 589389871 457937009 192263868 483390075 427390485 836064772 240132214 439179392 885882981 392221473 969380062 538094861 829649028 802811772 701403712 112531739 490850774 624473179 235284493 551610200 605012782 458671469 605695673 366055956 175751206 146552954 684705941 67072613 804594871 648559929 199598404 773607530 635514038 585945322 539179691 415759111 944952961 880429238 646060890 145545057 330847251 148424144 532063205 51695570 568620367 290046898 125912588 412021524 458354422 114678257 214800963 899846812 281714457 296003244 187007872 120993609 528413489 977742584 662553655 318730795 192759404 948676867 990477259 549547161 593871914 615652759 531324219 360962544 279597311 23087265 701661040 143729415 59903514 776916896 703433097 686769756 466913025 752931681 285767084 175394036 524666701 162005872 378763486 210884330 515912936 143032816 974404958 765660705 110287109 373339716 752973759 790732069 561724318 600717459 410238055 816803737 541165460 844412062 195956460 537311796 892022820 781652456 458989986 330162557 731595501 753093596 8002912 676106558 708972746 138777346 53119750 72152799 516691172 429182460 249774164 687002302 977384285 356165429 268280902 808059885 27317452 828206349 917805787 535118126 284836127 671528183 914474160 10051314 98254429 654449335 458673134 749961990 630514757 468070406 758285291 907714640 91052984 236033779 396501441 636767264 973348531 124876669 83226790 632503161 456306475 100771523 313810149 764594655 538561743 656289255 159196252 530353262 457693013 10590332 943013466 705505023 551632196 338584593 511942221 834007416 633394600 407322678 413667786 729869144 482080624 527324377 780985050 380387908 987954550 700364364 863426028 997495344 193948254 991525661 121673213 303101421 320901775 885646564 639443375 267353503 731998668 734389327 926012976 741666703 710435454 590440457 546509182 408304627 519640851 188685132 73512983 508967516 617960860 479963360 267167579 794305627 780176939 140888596 146539138 614288250 875848762 399967110 585625047 531423835 125458507 906511605 800054872 66030878 381498008 332405901 410839371 67505253 608902823 712372397 493485412 218358207 829913741 565510825 995447884 36177888 744087673 861227762 819381434 450787640 180578192 520862186 184597966 504087759 253782935 111347946 558130602 123694036 613769746 756417338 416576884 335845686 293702655 212250494 880806811 84611105 291608692 690110027 960958390 580997838 539276612 556215864 966894105 298060927 412807136 451305151 893877708 573045223 968205177 174230168 322442471 670576287 769773254 494846054 448294648 231638736 884368088 303792917 655035269 964443742 627561587 777784396 389007565 671342099 374975299 671420460 434612244 952433950 714378327 505254401 83838142 943955407 350997317 586030782 822771256 224916702 846274404 758575618 436714398 969338967 878076196 715031958 806847997 563422541 530353983 528511959 95222938 483513320 52115232 736812137 339206504 903766405 677648174 50786791 18164027 617407160 848494375 396635970 760653312 283520706 837792205 33001707 376395719 622305607 600495637 489412685 855501002 558853849 2070042 748993994 899887809 708619042 184304739 489447559 520743193 301132077 642117706 465372246 5017884 536274098 373862640 755391503 531679463 937355237 832486110 998068306 807352968 72745357 442007128 587764085 211782782 877652395 56864606 742950880 171930126 82374471 651473033 383845715 622064802 245976726 305809494 976304981 793712782 614709081 57298313 611147342 52504639 463465498 182986133 306146518 920168029 639469975 119388998 429110245 983984989 27008800 924333942 134737595 361465168 37303024 333900974 130177765 648936815 167185065 259529472 23047697 712459316 922663573 749759213 374864263 718940086 332043996 729825072 846537679 3063893 938537785 151899685 845034401 865196638 147599095 926674448 913892260 720640107 613146349 422394934 928495766 385777349 554029116 680018929 356505573 284270285 381078094 904062547 760869663 625673049 38517680 873059231 270783299 429579923 470375074 203653334 341189378 913239557 174308582 324120278 489206570 326873535 215185448 372813264 473313120 421106230 536238515 513172625 403778611 49518336 918858557 276583413 589810864 36916628 659215017 234535983 233861328 648713772 671459548 29090475 790003457 758686858 113229313 622783090 21330447 881801247 391468716 50258255 508907377 178765224 519778031 165099923 69025099 130629693 34089535 231770919 22266069 504276223 632828708 973559772 556559111 893703932 508286796 943089080 31272693 564838495 866143942 341253028 664187777 979289054 264594573 70767958 70669954 295936566 441911831 534425887 723470273 861039743 913645085 453758803 243840476 323969265 218682940 895338408 707096402 709264368 764077004 2038648 121477557 256760635 216276359 294286166 556360718 989109002 762042406 561496241 502194122 605377227 579675480 435583861 186135610 18996315 360469653 739340901 364927388 799271250 635704021 739227929 493587341 515225512 2748206 929004265 717588174 466286471 91284232 649738482 986352708 980027960 732141776 375664609 73410743 329564039 517817832 580497030 336699271 791986576 645959999 955644007 505833289 830360755 144590761 704728276 93092123 154093978 368674694 836350522 247692596 582736043 991309517 787883752 552272613 544076469 498991674 182000075 30189005 606169534 799642490 911589977 595683716 586247884 372205441 11936503 848917743 65633595 153024750 919695133 797114345 530463276 80035754 841040999 798308764 365620829 695681994 773673036 460211341 155561565 821522260 598914169 184028134 782270567 471716906 844483798 17085027 381051699 591706245 96396361 506736764 634213409 637357834 880319347 540321065 125693215 395519460 965194101 484040675 743658194 443206311 510066134 718744257 291934781 174890467 512935194 344516440 509253210 927794653 370771381 762477513 414928800 451575939 589088203 535370410 177487855 652499698 201808149 678497486 56551758 504641030 588293781 955263532 321714128 685938972 40888204 238861647 408120677 163238343 871098461 423101977 279503932 74421925 527027860 149382355 861772547 52746472 619695860 726757332 486158520 855963796 183185850 421672642 402300195 929686078 435641184 484285588 710277762 289387292 432397982 386733023 953529434 727913952 506038113 892471961 123813710 626104832 478585223 855432996 317775231 469276276 445090659 84534157 862047730 42554522 872831950 722078700 975356164 448123688 833155173 495751496 717120030 724795833 848744469 900278072 727135409 769183697 520879836 870872433 58635647 217944826 4571226 355918746 848705931 443518312 121149623 811020240 831547883 398726978 545800430 802536236 785859352 786451104 659352803 244754493 386478554 215723796 620750252 853808537 28114122 83353862 34420468 326933157 377686732 245715690 585398478 886334516 538957477 802667254 618741391 509785822 592426106 389594165 558152168 419740422 136739529 145771829 366451550 187188457 380819500 417946558 765060411 489080921 879928425 201140950 610682129 360794595 672151896 906826963 602086365 290292414 881909155 846370372 891331508 355644642 188098440 465064235 976324568 629753902 939003238 180856360 881134699 648151209 424297276 655305375 709184018 751226327 772037025 468052690 437810522 358951158 252623814 677891461 151364085 437905002 473506501 202724976 678041542 77379228 512187714 278520721 238547372 90251542 202643259 318970873 887317277 178975680 576229769 199399377 997186342 553865437 362822947 571160110 95754250 894524848 537744846 45216481 516333986 866843083 459984260 118361223 829633448 125764108 275875335 493700919 877855114 980479832 528965997 886850646 499197711 884962024 553057327 909921573 299675702 452551167 174741615 957045693 427116122 915267424 985721878 117386258 283876505 201226701 966087023 458800250 740267602 718318688 458261641 98392358 408077647 444299286 165312116 879269953 379192233 538851174 296391025 635868909 856059756 683179361 55094236 847406342 642326410 679747874 798646037 874079324 822035304 241435517 301924915 258053649 846916031 874651587 405454516 11639210 874357799 698099795 674051102 477599898 479730998 419621385 690393157 838928596 209246419 757641530 979515768 508165455 744849760 810664217 42244020 88862752 710355135 972671907 327191655 678904663 572348764 384750358 418536650 144122486 185708941 943319464 370116149 497147512 637249742 700459499 255885726 892925307 812845401 205442769 137492303 388124983 886956878 452790986 530546631 83402980 789322078 383816004 3532053 58506431 794013004 733196620 333149911 747218286 568130760 798098227 350042769 56160557 914572453 937976273 547493617 539538909 808352054 920356029 846065594 289773007 282450862 969053245 705366404 885051912 722203699 989231540 803171151 586172753 94089646 223373275 377170841 598524013 460535841 987091940 330558157 132304115 72538677 674518997 743887173 643571108 907096729 981763375 813263401 712126821 328819485 895721042 509711102 995620178 676340295 786675476 684541551 23175526 520292160 107962771 956082172 240856801 313383932 694838133 484832850 58428752 301170498 394048026 125320403 525469391 184591965 15392214 284528394 557466043 478748603 613742583 63067275 631601260 14815386 751142966 911416902 111924998 314252114 562619185 103073496 246360934 74931512 327531777 718379357 729492346 909511356 720828945 328841643 225311686 35527623 586463598 462431100 845677935 537594295 412105401 547413152 365909827 905507218 210619247 244254311 396729450 909817360 791713067 133309069 758450006 155596624 693878426 610194735 60040092 752336830 234986323 714359353 411027406 953493668 322486265 914380546 823538595 283205158 744084788 563929932 323506400 273861680 336266242 663565147 539733588 899681985 469038569 825363136 557658297 865378436 941989729 876195450 221126948 714013310 223419006 836918009 422099895 235358693 860888217 225810450 315565422 764092852 916095951 68171061 822589388 638304067 216950597 476200424 641958969 215391952 290889681 128463119 284346104 944610016 380831514 581432692 2093515 970147001 842830210 873563139 292875919 673939029 155290130 301749134 708208974 354551262 225750246 478644720 201418583 915642327 489098770 963924655 21620727 866216648 674921947 276899375 646108227 717808696 592274345 462530081 92435938 859850210 99623258 916764728 393802695 913828805 899753257 356994256 803865228 782488448 183805822 436307339 78621411 83780631 557741335 361879276 313834971 555271145 245163787 75418323 692916880 854880712 2026101 506924029 716541576 963182185 738572021 387147613 963360272 513374728 208492551 344291680 271472848 697974717 281517218 892150901 67490275 590591119 771320758 354759398 160111293 464114718 337531609 484572626 243347003 477259130 520311842 545132850 102658549 471717742 870397951 619390464 589610071 495380086 349857975 502933342 21927145 19355127 503088616 510646943 788068934 555093556 512767522 31633150 425356968 860436641 523263674 959725700 530026229 481273210 684637227 233396387 218817229 734530863 236197116 245657380 733013542 810965714 879734884 273338943 255713827 241212073 453270053 652951220 284880250 381783624 708123690 718237648 624068444 670552497 455822990 342543813 140753704 896551835 354355269 779715944 773829900 984374937 533352848 837727104 742170313 129006205 296904101 109241500 5774397 7750294 994047832 688774871 748633866 306159562 315850703 457432850 584356729 642327356 145558405 847157299 525265054 576883769 836535893 715104756 487257184 430846421 793898831 311283687 657328297 708587316 621226615 185613268 743835137 346578998 147620072 689208511 8890904 512073978 234428417 84218693 694520716 865107119 465875481 589074639 991761885 399992727 573308235 708037910 464416293 39439972 576576978 409931118 596561161 282232039 170244811 800642189 351723663 231201792 927688895 935880039 264126652 764330274 733621081 134737014 287280908 880992055 429867113 521496935 338590543 40580934 994211115 785871387 771380936 518100250 660931540 147038153 778679555 265169159 108839936 248938615 891211498 538259023 586695039 475094105 911973736 794631471 94388509 752024016 827003458 349200454 520175608 363282213 354081025 355882256 554583855 331151143 314483404 320513742 26696088 983993633 741432213 676331872 892338193 860006137 890125822 307026213 255863831 247073602 569692084 438041757 604361311 927263042 834519500 869167279 983838640 424661869 609209321 52672210 164464285 780867579 36655161 2348196 589171712 725604927 932269802 455846220 185837344 976990178 798616866 635972662 882204511 146589071 235280684 639138093 902487112 365561625 720750765 333893805 540158276 561828364 477624082 473783523 29836021 905628919 953052532 550964683 66489150 311855181 352862212 348992046 7980122 786596153 530919750 493709246 662982693 234459120 434610256 172383264 403902953 833544965 664091751 968977545 441292806 793131041 833187169 204023722 669462271 340127983 241133945 168990929 208464013 106751666 604907957 443571230 525042093 255500923 545363763 50554922 428084997 896388822 425332826 359316828 241424523 171632046 914187320 465539950 722407335 692313569 270210357 219719613 190520717 739609035 952362971 327623769 506011404 160117514 125888264 744806412 884668591 488482240 987600371 842190249 819903209 645910661 979564986 682865592 806493557 51596455 306206826 929324285 542412749 293755194 930312169 25768365 499420899 285185939 381316713 46852735 836950535 611616899 469253418 764380883 219812792 545089479 147166826 968316578 234809915 368372764 462586698 266439811 365173155 364728781 9845998 148864594 15444919 266764546 878621704 550960021 653248451 335393695 929896401 600784146 313911404 469073940 746598237 439716905 192046123 563638370 654720425 273723916 469876104 707823069 311668011 396326693 691688031 93367812 182582999 421535494 824817844 739039077 887104195 769282659 433441006 557646618 40065360 577351010 979826994 578361306 485678475 223012190 435994256 880203029 673896577 69767517 281161930 915810160 349535144 550247951 870166483 632222393 414364453 654879927 525863022 198487192 143815292 14793158 421942934 567530300 185001897 844068677 742752150 532465552 929246813 777458679 307078602 970820328 577243566 113232632 901000478 607363705 502319078 169346320 103224157 558371618 668481406 243382058 593809469 205675107 274468791 610439757 708992455 223455203 954118601 522182631 223639168 571642692 224987852 775446993 428933730 300451878 738602374 1394877 227749051 219834890 961511906 830787853 535587385 925567433 288734347 470047907 73146402 275552204 39070263 738707468 903403184 315280684 121158318 392304460 63827037 964505125 212364269 609149264 246083690 539333007 717322579 265572891 949063089 776562681 641835410 20138877 77731975 788262166 215178475 664534983 885904286 144618314 751505114 761071028 68558989 882509704 195287728 644552832 992922345 922291011 131826222 111701757 991904838 567028012 264593621 136504988 341077940 212734916 905933337 96955334 818303200 170670337 316364462 39333246 210188744 807268934 824316466 183444505 731363996 925200664 871464915 557731758 301688932 291562178 506253875 693962001 821494958 865230995 663626241 529462220 856311588 226983631 983519500 474281679 529171131 892105872 791900028 338143985 334837087 526808135 454085463 748813189 251589989 50588979 437480160 135202395 227545409 752006704 905920609 841470454 590639512 575032030 413812533 206492703 398595454 305030540 443406079 627417684 220266850 530804205 869929319 408978364 814750895 661968497 517698992 344192228 229834924 769669640 170594622 157282018 798148680 920063915 454015057 255382333 818724922 591629327 925048954 640087935 582438222 365495106 194638335 504215538 638859317 799464525 846558904 418859797 280078019 245086780 280299402 669605354 928784994 836163281 646611154 710207763 849422582 140237778 556106825 379216470 137880798 144365344 811527257 670686902 345606736 297935284 496787435 336839509 718819085 977720327 292522420 49061235 168239161 919509716 530955455 250509697 439083244 493853384 82599187 952196501 284151845 689206349 712141764 230453866 665552042 376999454 963807231 537391626 790767195 663706838 15364423 467014952 111777120 80247220 58265558 708085288 670442793 764742234 48435674 912330388 847642173 348751655 899835891 625231916 841171111 687799527 793620514 315423804 882504565 344067038 441796066 790567059 714448061 127019881 246081976 91355109 532274243 826338189 409201291 238243977 687431382 467423937 84255431 305305111 398748817 628705948 978227270 475289597 798276958 43531859 1988247 761490732 884742600 149309707 996506366 411658279 109295734 868824080 458299253 96449563 595400280 606633171 104583894 491846843 404758360 728480280 736710142 727670722 858817483 748041603 36787810 635732394 195510564 841465943 908713126 475925496 109640924 375884811 658942899 437774364 311992132 116609090 710385673 341672057 274284920 254083269 557892459 861606719 813359890 884850062 807858935 900662175 419824696 386499916 472733731 51161581 320561022 332969764 614959894 35819858 465784170 655028820 534137791 777631726 43245771 271687938 662373586 555082250 854662483 934160121 68599080 609709904 472554562 335086175 910186676 40341451 493781290 805817792 939259578 452628477 755783168 502970743 616361461 397283121 179562188 364749447 782961726 394058993 736412190 782198989 647090180 195525082 475326914 458301779 603553880 105547758 20540642 253310715 599719666 499781801 708106178 618612640 345329826 168352452 946389016 445502318 544004974 813029240 309889786 304777228 816409385 706494791 745759052 626002240 550823821 917392296 346407934 374806476 685346005 399252741 579763524 272320807 951391501 861164169 925692807 617235927 598016216 374387731 600058115 965847364 121289723 726808671 723682333 583249178 698842531 814726754 90345823 470364395 427158960 549863140 531293397 448358978 528987168 107406867 357777305 408459648 691512506 232604166 652439520 917945788 931653561 428959111 739203990 734942765 349796096 814918123 858289263 973461518 234387878 871508130 310602418 962242385 502125957 18124842 774365218 895884576 570799229 151925279 452750869 828538390 777485001 639022422 53551397 439064402 695678557 4976413 295068681 413523470 901579105 839201052 830433780 792249487 572206192 199427346 265473864 22939548 963403667 986457026 323569488 278919291 444374167 564739172 228444640 980565546 649870607 234590671 461681838 211012847 380331524 775366634 376919174 539097711 529877871 539072228 668040860 993373156 937147744 439226488 565183141 441731941 499504310 183753840 779877585 697757912 589726358 288801244 120164543 406370181 384230675 158989058 538764499 713774900 822005214 713707144 448386777 682122087 27339670 93080118 943627932 176948034 450237118 651512520 18377350 664553215 972700418 867972387 691168792 455813777 432232352 673852597 759935266 952029067 986542979 802070480 223462660 846193556 874564188 788754666 610298121 824645925 591403725 845265241 166092263 832937833 918825451 64932964 383889885 271768674 247610578 674344654 387149660 303186866 289847653 580561180 551299625 397799307 25775589 126584571 204925511 845530653 659150866 873504728 833669405 75792087 810641930 244706528 867125726 611868910 614170773 781030440 126160311 995975765 989935745 83601287 140534569 845504524 719977490 13538031 678778145 829817720 864066753 650087306 469327956 714232408 41244292 932774883 556067321 807620980 399821585 859193225 113489834 701098703 149516815 800637137 965544872 982269360 552675832 733448350 326913089 652715535 419219187 214767876 644058183 444451085 570417813 236872187 415707604 584012605 991604074 951318829 48982696 660316410 464521953 131266234 476312397 682014740 490392752 569213686 828840316 412514652 852014255 554346372 1482016 186898988 707882182 730410090 69817810 400422739 731741319 680052794 837391962 795993460 468173680 680807940 85073205 12753708 216682660 306025302 650217928 886200514 496303966 241460285 495083074 713262598 760331159 650421153 632923293 142979490 890566314 480854743 203126390 870176839 330071021 926409001 928666233 347456178 751381984 374569272 813184282 929977056 964557817 493200714 570834143 209411038 423315687 945206415 851242266 643063655 654864511 166501246 171487484 62015897 496064249 581524940 97922134 667464670 681597654 351125154 720204157 223658746 934965366 154841317 765048292 539275393 543303586 201068173 125447765 924080034 2986968 666554861 980758520 694034303 890043354 404015432 938586807 438653359 375418514 482851336 71166238 928574674 813693626 991205481 961676512 523635202 944287120 129942157 28931083 668527678 925389419 510604132 262204169 580434349 395589488 832765179 941553956 750586592 260890820 196612788 114220087 634000584 586441224 709739500 775692400 429795190 159587354 983003634 583831611 762383004 397896480 852627822 170541674 966541667 449771815 91499650 452413829 34372013 370656778 343969277 293438178 586078717 906169719 304874376 724982122 222794266 351078672 901515387 119837960 103204668 126762864 359656872 617077751 713563575 978774136 809145374 718845851 698314746 783828237 99169961 724571014 496057825 283520616 115634485 604302269 360796841 286240204 870601963 160301762 240210886 833395457 634334910 377710751 532997779 259577102 241132561 138005488 496983369 685447895 73012849 630633317 798766065 971569317 694304126 313304382 677106713 760183209 821252576 565327296 292475845 212147162 379264577 576926593 469163193 48283507 313448949 761211497 134867147 873800856 329893608 194988717 145227938 647562533 590490176 692650831 299665976 272266489 343661836 747856202 354065001 777796278 881312433 301304237 435887195 893236897 763426554 870388525 429452586 694078045 880654680 771684411 893460421 729726101 484561607 713475257 19564045 776154467 90395928 289972207 40425440 270229820 237589659 510083808 592190763 810581334 206073117 986343582 140812508 667569994 728398973 223238031 597321951 829380738 844426870 512186526 841968545 312422075 969860607 558089933 129828670 616678820 391507472 541052350 585612414 88295552 268576960 649470577 765305441 419823637 146775553 233436870 667892177 329376820 865653914 224657947 455507048 559321030 587660248 518160638 245272331 778376098 436715745 10263399 562674639 816723808 980778749 273660559 871485757 583691343 334109095 131197009 84909104 11064120 553792289 21057909 547017681 741427574 425705332 421136095 991409779 310004889 639352628 528206055 248895973 774092874 763581665 131160493 326578339 634525347 121599371 793565842 457114243 775391575 460135537 388051841 641235569 35197838 741598223 111308123 954411389 939268879 849474 740868802 30996644 910528076 434472601 274384460 706494075 340490511 936945799 927567519 979856878 680656641 743544702 689268115 408637949 337875830 667650599 761072846 454013132 937008330 656026947 986391557 63520943 803445587 906990286 952713860 392421487 170661146 978516369 584224266 570041897 64460298 1332452 925300827 718459481 729313458 844781722 524657429 504749500 232719250 993767372 144077288 247874471 120510179 920870557 737409088 996881583 840858769 119092144 299357985 795588958 326729384 893262760 850452082 423834104 184565094 50779825 378790133 69102415 896958450 185862336 997821188 541575828 982330825 148722914 21435115 499216465 738076495 131423684 326449309 408731954 529798611 22592346 688317105 888432986 791023159 555285673 109895661 873783365 299876811 983728164 267047211 216098452 713460868 66127614 983632959 837173158 548453116 785322981 549399971 521181625 572933403 98986634 256838460 335997609 994740617 530260854 500273124 453130870 867507417 634605851 952961350 226847210 986924156 729139951 450683639 451899828 397638909 820580069 936222622 893434105 904145006 963459074 430941828 245566069 192303645 6977836 781052937 147803169 378718701 156522723 110194847 641239168 727562706 808985657 710553539 574248251 834001222 514531835 58052924 275988615 221919710 198564873 183754530 422482244 530306672 927879820 336102237 264126876 844217050 534913098 528840547 132077581 112627085 259024614 847627669 985054582 571034904 930414569 973773757 499754138 509927586 605925081 493150375 697983460 964618365 946981347 503324329 938772042 677546993 170503102 695465986 540070279 448510465 932704309 333675567 280888388 891244232 210137479 515388289 434751972 354661156 309660421 34082093 552818942 570543947 465062610 4930349 381745082 915931226 406189507 969157835 227484741 654413737 51755589 558739944 934344644 503548172 858031649 763560523 630316772 663645364 544246719 967622705 475120807 880006463 152792499 906419883 761420745 935603977 281029557 359184334 264636457 68451918 164611840 336636932 381159188 690660885 679129555 135918438 816155032 26734220 1736372 87182139 933083954 463402703 182527004 824138789 917789226 762071299 612556612 991829027 855259076 342383587 936981390 944977618 470867535 439473794 994664339 506650274 789219136 209419218 260474298 524572904 430760133 52610159 89411464 91025081 427546613 892065360 600969585 41462407 738035555 375748050 386882002 295026254 257538861 420387339 640127600 831067808 122630572 705444573 820829406 346606608 415909842 329088214 811896428 796924551 96449596 342173896 80532183 870191324 685932358 312533546 866648085 938021044 163745481 202726771 734919619 985883861 888290368 554529995 176249050 569494602 661201774 234781761 75188925 134376874 558359721 551462880 819263098 269782417 533579745 36108668 837959123 813122641 760722444 82853043 788115763 544116312 201489411 555767868 823486634 127960085 624365830 864838387 305832744 356696094 614818659 868799470 486410434 26004211 729194877 743676549 238790098 390410496 359058064 127320976 493278389 617595766 600553462 140768914 393619268 945377163 523333455 280118133 863160392 992815812 555137687 190997672 367421688 971223138 744865275 448439310 740309275 946148188 875693334 247622075 270234544 121703040 981339829 123794509 702388384 402461274 872464681 514227267 32981435 455003624 872633848 10682464 629298137 331343696 176563767 959883933 252970981 204962510 897555895 946407325 973260354 846526981 861855260 222135374 643505641 895360712 378314575 854778721 210127073 602638847 606043156 594482660 913467731 4917183 620088639 370365339 983972701 922534698 2973734 199333789 918362128 505487203 314712340 416655102 191119415 707082029 779029737 827462969 251744056 527519983 819945526 777030872 760517328 545349521 563981249 114173624 120676106 111141533 853272295 286181955 833775567 297696006 599006867 772323254 133376698 813452021 608366784 588000743 211621024 575949720 334802528 104358062 853782252 687553263 984962988 691190368 972779623 228025555 273691730 325084284 315076016 812867019 485176695 44606376 946287085 739862732 154053814 654549196 75477284 428226451 943807095 600685293 165038942 902547515 571466558 607077149 625260190 174089029 788191369 498480122 703917175 274570190 120165859 105618583 211322060 224932838 340178065 158967431 936858931 168266417 936363204 277379795 457078604 406906603 254796124 703953557 409396981 908742555 804758671 810938475 290886912 443750509 408148766 685998750 71820249 694411978 787250656 637513825 177828202 57012100 865972075 92051469 22275885 715291445 141602176 986283669 507548242 721658667 86996984 300826736 546188155 371257058 704841585 808040162 690574691 858718595 596884422 271118829 720936595 634147150 552466230 951122184 598109685 620182588 123945678 427234197 984168290 676264543 727631468 248583355 404883794 189640576 409479798 827056087 577357542 735875902 469464255 69564568 53153625 503842117 349698917 186196843 548508223 749597843 282470746 277550982 25234675 984521759 960907635 634127504 417073177 814580144 261656023 862765452 777822648 579960894 505746255 381730631 192551215 162371315 209719128 633339717 361521831 822723138 312251269 14858325 204033953 319687985 375310564 312397121 402235848 466251821 246664360 722111726 659261697 877312154 454159189 902597279 375509831 410576559 58271780 166186638 367593986 641641347 968690670 582508958 721293914 608669242 276816072 338522301 653009926 74770191 236632090 530998835 269032411 831171081 41862384 565092033 939750107 118308320 123462398 392029257 783147972 638592055 491582002 719157282 442436697 837061913 502647739 429496572 620676517 308319464 140627887 260658769 548291305 871998867 502137731 666251999 526413111 858357384 51638918 696679898 534172674 425773451 362495069 28907125 176337784 307183605 329589934 628617344 31780375 656650557 199787445 289319923 927059365 574207581 383870156 380951970 961732003 642552903 440929505 549662847 187935715 464166731 28110300 984777803 325780698 331461508 593070003 78637478 984497943 268112951 616673281 115023565 439237578 371210312 795204803 786101096 610664193 624857215 780482509 888988059 220373121 505525341 99104284 130256682 300515898 223211891 326351846 269073712 195681252 123774363 923449740 9788407 546777253 721357745 835875790 286036097 309166609 477543908 513299198 381220577 108702362 21263986 734765094 571502267 67433679 550202772 489615575 438282130 547248432 493958319 834286162 273266894 276682244 507954682 320571371 3369411 104196634 5182538 854022492 875531399 226076892 870494084 48647627 165662067 462049815 478632152 825899809 451398924 834186429 936828040 293271368 214111739 758485686 614376969 285041815 123688821 749338976 589494942 450861837 259223811 571123390 196010868 967049676 171749738 305072875 867643696 484257385 101353240 935271262 245513830 335487975 998018123 170477525 644382348 149091700 98196447 811330712 17903196 570535898 349593280 350997374 147222321 121306355 746557484 783530789 21299767 547711161 557248031 542783682 180057292 984799689 785342626 283027664 372662726 930090359 52163572 903455257 281575206 396379892 710619236 349997542 163798409 660027794 889273698 831522714 734799475 305005748 922416822 663463573 72775461 479934700 254388155 143526693 759120673 239373290 915147964 668640658 383245444 807532169 383294399 231646877 758959277 815846665 119786860 235191534 128857521 553020112 210282061 911112839 422712904 996993478 968436442 44378417 487572554 341839613 181511354 271786722 475401169 531170956 567753246 127537129 721742145 818147608 362832170 596142546 503427496 494832377 191404209 157719732 669365878 366897454 728844665 856246730 238353652 13162851 257733077 994914605 895074622 798263961 673550450 738249196 293401096 491533265 524143621 978917196 765784002 517460482 629650743 561289810 205980060 95865390 318908283 501574061 843699160 249730320 467963218 545233636 170535655 787331286 435503714 828138325 364971208 168915194 777535596 416124256 35024523 227067957 272675151 16198578 847872742 576430860 365587459 927330270 568646850 312030853 892945302 374869967 977940371 689881122 515858726 27653553 569321479 47966269 440021470 258241911 881233910 603697320 334996059 97306522 662162480 475337877 298821525 691427481 88580100 98777648 344718131 652212599 88667722 811536544 581586086 28497808 225259938 325513392 667699537 814580403 842978964 990551762 924025199 523664739 779678388 467066642 192544339 981944982 212455875 388099748 183452427 10277052 881907667 661835778 634110305 113628156 319421073 346133380 253716380 329919299 765760624 273354116 985440902 714207829 307356727 505673252 614643849 380005010 338078905 42276408 770092736 842883247 208368315 468078079 465069067 862061735 11319856 410127966 876513858 262646744 61947349 482002777 288997923 203938465 183606602 921254712 581214656 893768144 239860429 207981373 955863813 817266589 847467768 49329882 480679669 47371422 295195624 406425200 874750849 943990314 860100550 208825428 933429624 248590011 536621480 81710981 659380502 409525286 861228797 820309674 100467235 42448370 607786582 398804389 274252641 915611590 518207338 53711470 806008857 461989604 942332876 439151303 703855373 101119541 20452479 390974557 853068341 464584871 98067221 584493729 815169402 727848926 992921490 35634147 382947461 696894097 642785293 118645656 155036399 584154461 119062877 101587551 917396498 434383085 432211218 514182835 93489317 626752638 35946254 849045609 932791856 450561860 235407664 667464852 814736928 43697529 550663003 188006785 406309711 61331943 169076699 742881835 650942136 295947553 647985427 737271401 976879021 232429986 470199486 628433713 110961489 831439439 951086544 331314175 674295849 290535920 989755728 816664199 511154628 780210827 816144066 997059667 261999734 23760697 327652818 671034128 681301910 162435145 196807029 857552932 30790412 1323346 864288115 315613471 556441132 483639270 172152510 14805303 165632213 337790692 630231127 286400066 963676739 35925931 112557623 985153421 338565983 570187717 850649109 262383456 778327143 556110465 330821796 6375036 696802931 323863179 529190144 929630741 188094986 326222798 443757902 384045580 182223088 724110397 316602643 899450343 684050521 55167871 317300466 604747705 706579387 929043679 293936626 710421079 656250276 449875528 746580451 996281753 397782374 372862044 771986173 655102237 607189024 698559436 128566223 331269154 10071367 547128319 507581445 161955295 659062032 894065068 422908846 251542617 820768539 594642981 643246159 429067077 253159050 89641921 600663664 882429283 745553467 434138914 39526721 347777310 161129638 726822296 331220498 509790734 579487790 666936927 430074516 970720610 581846142 658162999 642435358 761249025 726848096 331288193 164010995 509855525 933023382 481353575 633123858 804318734 586679051 88677534 855604634 403920882 371006505 671669078 689369788 875426584 781074982 677971636 15526065 709827168 534025211 220481056 291831059 586286830 611229235 54499789 505100812 412262161 787868868 898236471 332166304 349504030 890897376 58966225 497628575 448301770 474835219 198460562 426250817 940975250 150449364 555594412 652531782 237039596 100552031 686771253 34181530 611240953 338846383 754015771 947289534 272824846 944978957 362186284 170654908 481408065 277546194 35767728 827693393 945918649 438477927 383634811 944362448 711085738 39479572 60000803 497021527 507516849 52118839 407269873 136595812 136848458 578340952 630709519 668011619 269094461 141995788 975742408 529862582 332375515 123695651 581995491 646813333 945215298 961741453 70649388 901706974 293891936 377697520 528994553 567280244 632330153 726221684 301590857 990300658 416852073 179860403 351324675 346198610 211282840 77740447 578809828 269704322 776863814 333527301 655030989 85170205 932827416 701237009 38671986 238692338 435857671 296722986 741121013 369077425 24475497 363382748 606342790 929006190 832679293 530979340 416804113 933635667 564117550 654039333 551010331 942797643 556735864 386892523 229361326 988863773 608781510 503273370 735561354 109342104 113002155 240352710 649201709 865918126 477034457 267664188 486543707 74022475 119007946 499521960 855454947 86354493 958994506 347389726 744169615 524071176 608339312 694663278 438460154 355924376 749972525 39097618 214974480 921074533 179386934 536330192 673870890 708471792 772818449 773212783 324240677 52711022 743139282 111905922 307991886 77342825 828478975 430754601 705600773 522016124 510392365 221352779 313997643 75082006 645948184 988447173 903393384 503284817 186641412 950954836 759711319 290604329 323030906 877093699 306056662 805921081 534808650 834182514 138782656 88825877 342073185 411197959 317757552 416390231 729949932 639268896 780577359 16189756 180509569 459575174 645875927 506065646 836858275 617561532 734459376 519247704 147459040 694013241 720799092 983277138 354952978 329422623 604963852 795643841 617793504 904280815 210171478 679130519 798175661 538470810 405516109 119767026 7557044 639098591 419681757 388413357 450757560 1034915 155800153 956177607 609144593 994160713 978926542 792073022 846957310 836839097 881108037 708627432 666248025 76253917 243422616 506442578 930069469 518237257 377846133 289783936 913556367 855584766 327595484 978229884 960138404 591938551 378881616 782634018 123375417 111328208 864039851 156555197 286884869 684323507 444016499 430217977 703336981 70036083 13719442 884548352 372337473 152953426 909106530 650577366 313992657 889450138 170579354 994213204 259850682 506035810 105393208 54542087 631125916 284766635 511011525 329788766 822396899 557320329 257115084 195046506 234839148 578336496 298071862 459372448 594045465 79229966 353569299 57351719 315828030 784353983 951674617 356325777 770544816 458486621 944002168 406152215 686867433 670789163 599755084 575701175 409747339 583728088 522712179 428446308 532515098 807864100 966611064 682132563 994678606 55487306 561054435 800433996 980076908 871260362 378522786 38954906 238808565 251526860 58378855 934259689 255935466 836021793 884564777 198304444 725911606 729166919 328088197 642005907 275721046 462440021 759911819 48779800 507139042 811877419 123982055 617893875 744036696 626778453 824725414 50286173 498811266 605402062 253181619 16932194 286343205 301838491 74478959 97199215 670326293 286937045 964048819 651465326 360352013 629281440 927398769 393367169 354013386 188009417 931575843 179783699 97872258 503637450 70370474 616903545 626421470 494849775 709579956 811302905 881102654 61939069 650104337 724207202 420695436 729630727 900871293 580084548 756839958 486922091 372344665 77807080 142641758 167687741 628091510 2620017 187510093 793674852 944517266 468722066 892667955 120142551 994874785 15969217 848820139 40455876 870107929 84326775 301824247 632387730 387756453 711703223 424386338 427423316 777254443 54903202 214010693 405005409 14778046 249631711 921559446 630577381 582132388 82043244 970643512 509420955 87361907 219949172 183695549 828320421 829625504 181403126 673576436 703725852 74501607 924132029 579969523 487838313 74932671 355499326 870464856 889282484 436709163 564715078 626341034 8962157 347461019 586329451 658101905 901178611 638518781 497768657 152579930 452677312 694447279 237753168 439229453 161401145 293053767 10384184 729153910 391223373 255468781 437532621 684321528 348972509 304334124 123767505 410864063 403164368 355486723 594979619 476584072 313860772 614910072 446504711 571628436 70255916 486322690 522046913 331107251 448406525 2927716 784405498 934108537 293863282 823121557 456019469 449818089 354942757 188238249 258626500 443377944 224056551 86441085 888894541 818897264 736161472 167491500 49454162 28354103 332667067 976172054 636065088 438652687 541694917 125152057 261207753 622391673 262095476 380934795 715340687 115694026 149310472 818719089 287412526 943352687 51180577 886788980 488992219 985497218 65283377 810030890 244353977 7762666 519883606 127529242 755399259 63136421 144628354 522489854 63184897 884627762 9249836 431272046 956521107 38742471 464923311 738187118 611105735 615840111 236217224 300026701 980089380 700445505 179878539 197830995 46647361 390419095 938428846 25291535 524328206 922228012 156915908 364975174 957298134 42468694 472620061 906964355 770333778 568294723 257326971 860560745 713680565 7724691 340208938 922746444 326163760 994415822 499809547 893782738 528304982 912815706 264277343 782060411 705593227 515052657 604070471 583801130 19150167 497692965 678450519 404000845 187771765 506679022 236290529 586133752 288555894 577872158 912243835 120488368 61374478 575646875 901301841 682237316 511334014 255848867 802504506 445611533 767162071 3542434 458175893 961690180 361187980 213809094 370646325 117335516 171155544 710582470 170981387 382724506 769103213 110347918 396339520 429173071 97244313 239115906 569916420 921804160 948777745 932832727 341353184 193632745 322673690 640039081 400154883 431177253 988846524 872852134 742442936 801077164 731881250 582619526 320693817 809040911 554547549 18178062 732737331 343492112 190224328 497107323 479444193 896484096 427224949 430658052 22544344 526933749 897446169 267206106 769324162 455718072 467638853 84056063 722640576 975534010 867281643 233658230 82767704 940955996 527782075 847045489 662728055 407243838 425857383 345519227 710761044 60942906 626893702 852538739 234825852 203392634 635374808 45069678 689810151 77607787 384034701 680019834 950853662 340538740 640332734 167244205 364539255 337330024 998183377 62448273 650250740 896030869 265283693 516558267 83589598 249051914 792121116 111090902 973781561 623799191 905367515 604952896 878432994 35194973 282303983 401414809 534823896 717665043 679262806 146956340 975512523 389258996 170794243 66873137 609292794 513076989 876877797 105657621 353521826 173239757 269587590 120081779 743772527 591075172 698195093 191266111 47299842 304746651 480734067 237589954 620830530 895468857 199909530 337705586 19860868 107569919 55589688 620825273 497490565 543881933 950990383 988004753 861686474 392542700 859815988 747370086 604001601 260345092 360062400 958011751 404633086 529321887 277126024 329319419 855451762 828311631 140082383 16551341 868673478 922173469 681294673 184106535 612595084 52517140 73225738 568206884 105850104 222444588 651772156 592925433 199441887 656077256 101548085 391642476 917391449 275418795 610407414 831404374 547176146 575924646 867072413 925388428 755441483 778461896 811277715 393574523 459550173 192025272 717414190 165888664 504714562 671621675 414728632 196469334 399501965 105560383 652667454 323024247 107965735 44269490 449832768 386785921 52774939 307286457 429914177 337745147 80366836 121874611 549293222 954461376 142446867 197023586 157136990 61858493 645471932 941397661 969179425 599917431 635613554 960813151 200324794 203816263 337568050 786280198 573810768 228316401 134170609 787761833 360868153 773322242 554933969 544813263 816086844 491565435 179883636 98702926 722855933 153202856 25182675 345026306 600080184 82016706 796260674 883479622 722994091 234903784 372229502 433689238 644293678 398352015 608016849 982104091 741125403 652001690 963385029 36607463 527458751 157051654 917405037 620214482 70830096 678183192 417866958 891459689 119399940 987640932 122552496 41367961 694723279 405986866 133345236 453919364 136786348 857506887 752270641 950317292 415892927 132550701 395139828 356566510 515636704 461714397 407461102 69799784 632739695 65041007 711473060 679947164 938030255 215138804 149980103 605045706 311890863 899700147 75428411 43061570 908084968 623274064 768101085 935079994 831586881 590842994 744954620 668788767 612246177 821994065 495920644 361549673 651078835 716471804 595729272 430827204 280981393 355637066 885878146 538645971 972332220 928849228 358552655 974166747 939552879 636432079 883075750 386628816 848648431 724871122 222972655 715371830 6603258 593746577 57592704 177588184 801636021 238380821 443452374 575007080 995107366 760276699 859675504 519013068 444022127 340248708 339714842 941513926 840288621 877109537 681816849 345927665 797573039 741773820 83961268 376248567 63592724 140390440 354073059 829799349 756337295 49798785 648253773 885450241 700711106 57592142 213276490 102317599 711256068 928566375 277617022 741791187 283117808 520399051 574035559 500626404 621701387 645888875 145976629 152495157 32740845 376195446 710557700 376024504 664689925 510394788 463038223 447838588 390608333 24707805 639446106 522414468 226137948 567800363 467448481 585340492 819693960 300156777 547876980 671779650 889214174 711531745 873808416 71338078 464701502 937241168 79226350 828049602 125294405 445612084 167125414 108139524 73879287 253350000 255673379 651903825 50053928 540326988 305236201 25696770 819463149 812322056 588353617 407107136 724210633 794824608 981288913 496254786 353644122 742163671 957457404 339362205 688952603 780991712 530753634 673118667 736457305 420551511 444012552 180814926 391938872 614149102 298021262 42827008 846954390 870669285 12263758 294026081 465878806 901161609 129398417 814881962 534711415 66631302 522768420 574327637 211940148 331225374 489976590 818816535 79017537 835819849 38709132 829868005 195764801 232260383 468287325 107349274 476180029 974210157 701050045 33874823 876842819 64174101 980228254 330901734 946293630 94143517 343325025 538151380 474826356 64273767 433586936 439691023 404583150 343343936 111013684 827395772 920829884 270469810 438494055 633215407 330036884 43295671 166167797 199316484 255492165 991874742 197339119 23899890 757974839 996312498 601257384 446662717 243662805 295656864 110465263 872231324 672993344 269051008 876924250 626667471 68253275 734832642 543817396 879355947 879136619 465345591 476036976 317247791 383030625 456212507 185772789 436241654 769406704 122009032 589388543 694403616 781562271 782680863 614050438 929061616 672410388 285246988 49636918 762659977 622404044 158439936 897819955 729596775 701903285 419170787 835091131 86193456 895888322 173152388 475979135 398578962 193692217 395919237 725814463 501755826 588721373 808075033 782973726 290340083 278919319 899146759 618655266 220470887 657976803 461402268 639361809 9701543 189675242 585485268 678822448 862396341 433460087 55980574 473350576 353823227 64531222 867772994 133457013 683126881 505603178 756761710 429592867 211882179 963139286 404406150 577137838 81004293 435109520 411011654 258359958 27067856 390723148 422882044 575370885 695389039 449590931 574761545 957299407 474255252 342845208 990744840 347149290 286249217 957224439 301239904 306672044 383527951 881074188 283796224 37027380 570278947 229438925 272771235 862043670 442063600 295605952 523548222 432862573 243877358 335506581 712617079 270096610 472879318 676429786 709881736 914777843 642040180 478845080 61305856 925039842 306310720 716893889 81219323 397042869 940350336 250558798 894456067 761402635 845969682 588745261 429961802 853336050 376820204 612095972 346530528 981070526 682114181 516877651 609145893 320393487 864307982 188649333 312428140 255078607 348241605 71846488 641999636 710241989 939964829 382070620 280231524 417178494 234696552 839272343 696776541 207474838 284959459 868761540 495676125 617814779 462735658 828639319 483965988 813275801 841657586 560119076 140208702 39280949 24250407 578400053 214191688 474113903 293090078 467263747 115519955 83964930 227140078 382909650 476214296 23257420 85102631 140513119 832515541 116505032 143861916 365830440 60796871 449914689 753214808 604278298 340827113 729741730 673392916 298835541 717368 210191356 229553532 685816798 29948234 658953418 645399707 24762484 784564030 96316091 763889307 621034231 739031268 499383937 135670944 352326676 775235308 894712994 188258571 614984310 247446725 723799956 7669547 710744992 306481034 184116756 852586490 146669858 456942723 787392424 880171679 352342553 542224273 148240198 377195603 811300771 243022682 87893782 877378158 221012512 75104682 905313083 407412283 717739608 854317564 74176961 895017581 762348993 965651993 432061311 102410914 747641297 895063099 435100621 628686362 166828584 33295554 290501265 607392350 21635223 925430181 665783068 115098934 180566114 510799300 713211294 163306158 781061957 904114259 10002381 152448044 175977669 741863594 455639961 728080886 472358180 144625646 792853950 396111451 884630260 360572912 865738655 886544835 122863846 620866759 462939499 985759840 404495291 713649495 128627851 269357658 146362567 817715437 325071302 519606381 151900898 265172557 351201496 299430626 568944830 971668819 442118543 887631559 924957612 75298847 411039827 509570112 425549805 56502298 527534796 942049587 28806481 335240527 230885026 166012973 272076552 545585326 583903169 354467285 807438278 348628872 184718337 817843528 515615750 218178225 121778265 814665956 682202404 661681838 868721217 513087890 486169039 464893403 16441778 933513743 766609940 745554163 481535871 327652612 68876735 645731932 242018484 273683118 496248323 867799121 825429520 865499260 436577040 199412956 992126712 440822494 193912426 519136839 634827569 106883958 786564312 869664150 389662901 857174252 293490979 791071120 509044970 791795486 171926334 264140686 890433830 537043462 626242404 699377996 454412013 614597387 250993259 719680928 297270400 202479102 843808467 526742896 246576979 94602787 906544531 914524292 588166120 899630122 593292576 595694883 604380670 970292258 279062916 275204457 735969561 550017986 543594239 985219056 845601461 449283303 230332817 957093104 784690554 283574921 46253030 629992360 785941647 528647779 223502115 514761434 237023167 229526536 682294280 771296025 857516454 841373611 96879 169638777 187066443 777371426 102350197 285189275 359332749 145875669 493072278 770961800 767865141 768542065 11101502 871087717 891575421 379047637 556552993 80101088 873677096 541893116 104092756 343602352 143516188 286810402 996101572 898259389 218567186 37058640 402045981 542709362 782532001 349860162 918905210 367628261 456842731 881694778 727176268 349665030 987898049 511697299 831945934 404045941 984698841 183483381 89751114 658443631 782637344 250508037 745006653 619768697 314327066 944764497 371850631 289311599 624898149 351236056 113332877 938699764 136489952 817257146 600406255 528012428 529873482 728719828 378243106 806697210 813195610 366393572 914072973 475389624 29151281 949682875 697089991 215472950 908490902 524136968 924470472 527659126 967464269 512498066 392557196 588942784 174435908 96991912 617892498 695862389 196966184 977755941 556836799 421191276 426139260 653726463 898274183 817534865 546139785 670202516 362843685 745730990 446735099 253372901 547569606 763351296 87606182 884566390 935580124 526951596 732782917 705191052 182556681 921952896 85227144 241300442 583295289 604574606 334814757 341811336 258636241 85467743 100166473 41488811 932600056 839570212 571813045 896663363 427069413 286432280 122493689 473669725 74260768 132473710 298114809 430503031 339286540 300567972 830558445 962146444 372597595 860652875 40079049 259685905 710293756 634217359 648868154 17782409 39916642 176837659 866909117 305776836 717287944 902514466 233067576 707217395 348493692 972066362 600617929 963672326 480032969 851842921 508788991 721661568 292891660 438259932 676575801 782513875 886953512 684425594 895652063 100402697 940011017 689164848 209299497 95270016 430846703 119888198 61609729 429317697 107881997 792009532 946316117 906983505 354931756 222201026 664054415 954607593 841138805 601810484 97942522 674599352 964104058 890662960 90949348 584357207 608634812 89916573 150401345 221756075 990681519 509848334 578860887 84532943 467345967 886233073 10151785 974936353 601186755 567130343 117916233 306464895 276724033 954101792 571706372 405461339 13150418 810391322 195080057 606715254 730444016 941249158 736135278 526788216 617832923 69943481 977229400 43286054 141161953 446257591 374518001 938259633 477372443 543458312 320302839 202631768 722101408 8731306 605285676 975773506 398685197 588024090 825253128 377060597 381893906 249471539 205471914 520172902 550045783 608847365 548734138 8110484 230427688 902617138 376060177 198820410 601696989 633662365 652368761 619612799 508038310 112647442 801764602 243203029 8116872 650005971 972129684 11102611 620385297 440469230 485877521 386848301 209283637 520173482 891555631 602473549 377016132 62133027 299422676 312793523 834833158 543772100 617866555 68261848 836725317 659294290 75798187 26691532 770295994 28102133 619816553 577584727 824073521 251152756 876078732 442992905 119257480 681543089 97205551 290571144 537544463 446927945 733992930 713246457 183358333 138986429 590597031 205352227 554341361 196788217 234953686 460328972 158679310 24129440 721631093 595585906 564036696 774232452 50613406 273348370 919908532 715402325 251535834 43182043 551046547 343198735 182669203 694922606 454500591 985844500 631151926 299060913 293339421 265679677 842650896 713374446 990788026 420636410 479879612 533809732 716588839 841505581 378910737 435499006 821474077 552841316 323886524 733827036 882831022 248339182 236837382 124466889 694530156 741498642 821774196 148896372 765590078 750369178 239181756 617228253 1954097 793851146 585853221 722606227 261133583 859757053 309889328 658338787 244470334 177753117 201402376 949375266 538657303 372797990 546535980 76871698 396962331 684440501 483790686 527888987 274808358 976039879 767384978 550523055 414180918 423862061 453510276 420826926 755731839 765028674 872241451 398938531 308954661 723811809 653746970 941680931 605504848 566075457 557379671 586374299 381347523 219570312 191430774 169728539 630900140 298392636 546093173 502638275 151953535 802571119 861640874 796242265 240976203 468459723 529051160 164625694 821732940 657099085 586994383 500540894 617349991 688305030 165330741 859156989 444301020 666840494 957629943 401394737 882393531 935881674 723797321 269096141 88133551 466849087 16783055 557712492 573879616 189675309 24125590 441683198 260035369 212364639 719902088 368135849 648087935 253607241 175221759 706045837 297083705 832164651 870901735 661908586 183536886 992587203 951303190 656628100 733634772 73229050 481240351 922354679 774969588 366132310 536836812 625056978 97377796 492589734 437067725 179040021 685704506 433696738 358329997 491864941 86826173 403039564 205403375 354447509 505325486 626200650 222375788 567992224 523777693 34170624 170738780 245074973 860850588 905746969 10762285 646530072 530814921 113070229 546644902 568076559 375802031 55818294 528295483 33577003 711007424 142898441 676843162 271335295 265299332 137803330 406469354 728015262 520366739 51087491 200025414 991939286 71102827 556537690 697748056 473658959 349100780 368542730 54748583 730789745 701064508 135046164 946150495 124848839 947693151 938641965 227143376 954641849 312400979 167984602 870947931 496827917 470182833 533803631 984821025 701761726 486167129 972032612 788127933 257583277 363250511 214646131 125135536 979123768 213377982 632520991 179900639 474429991 211407891 481248903 301553305 919299451 8459295 421409226 163364124 184811507 342844446 315043335 528834944 888403033 483946025 900613927 463908224 830145404 384818525 858334018 918212513 83724963 775335678 447212424 158898149 27007547 622195646 924038313 240117989 429468292 673994608 243795173 679763304 218994322 933973507 533298301 738188988 536232433 642207621 784266596 500254723 971774959 86070220 493573863 393210122 473497162 650748942 537806306 941089709 718856326 29891466 27396649 973414768 627252916 71429032 686700667 626363544 430344899 172628257 893995957 921756266 715226570 515839016 459823335 87420170 886975119 453085766 990459608 604454126 840677114 938383308 465151809 134687689 556180448 256000704 364642854 682932851 467506470 632935673 555179121 812892872 737854728 412413731 128524854 570144745 75618801 468190194 781117057 698166453 429177590 129627661 516533743 193296289 734806789 44610500 822449673 710894505 247096104 395917298 251452254 403198657 986989338 345952258 306639769 404430366 396992638 352416924 827446759 257816156 973830502 618073976 284001747 514428451 614100596 542881831 119099746 391373398 271797971 952605834 482302786 923702798 554245361 991592945 923320369 957990074 680978920 162148287 518298095 790734784 234801952 710082293 522151321 504195034 886508141 936059145 968956856 334620976 922558917 315581585 666204710 167639686 718840319 466640915 458294195 36447093 335936873 404450150 634124603 445604211 424003693 108448940 754108443 371110267 769403741 988036054 683759977 384106300 963867300 615160390 982960236 845752292 364685824 42117385 443277458 915998739 9265409 92262679 20970210 125743863 438295479 723873717 150671640 871901677 52076493 969464801 947952406 147084640 631307556 388650598 798709407 114412548 582135042 536284688 827779698 663193566 367497990 469941422 507945600 561175738 767885199 950156917 986433258 183021893 113918639 99059466 547199234 646975853 432738279 886702319 695450908 61369694 508235272 52175967 813875237 231005783 689845630 729291177 578276217 666177961 579009614 79615482 152053799 477199392 755964607 447803846 536973657 215076802 16786907 448153959 172780372 939209572 291403287 91235270 158321678 427153890 384918086 242296528 943575983 293176549 397411197 374087768 889582515 590796152 926162953 673847950 434743528 645434953 788736097 587195848 201630275 260056083 845089509 95521266 840387882 676062949 199694320 689113393 545101025 785900709 160745964 967324401 959416713 507857260 723934765 421460319 518416421 652021234 870930596 583919634 584459794 219084777 497213049 421595335 886987702 724805385 512474085 291669333 739616483 385407324 307302844 41850620 418368538 923024750 339289539 69801618 848519977 515296596 388401759 883494888 655065421 74801380 907103926 940088462 876584631 824357129 272878017 972849667 679021060 134777704 255991341 671165357 888417617 922438664 251774062 4821265 835938388 235545278 246744086 536203384 704422035 545579590 704729386 508027230 874545562 265641567 251644426 462261146 35647367 344380798 884537592 206870202 796555990 985422500 66876629 402205810 625904545 835296422 640196063 107399064 13890851 90887157 885709254 25333995 331107778 847054810 134557755 671134900 444803745 577316590 763345358 215273517 138537639 229746892 202406308 70380152 522233420 866976826 227737953 627215472 132654276 107747076 647754352 922291346 666846800 423153204 745578903 158288783 708804292 824427902 660989082 246486892 895466551 414719369 344812689 428658966 28021290 565470036 906439115 194253277 950301940 978674864 62912296 291145873 819267638 873929751 203672747 591213904 820389984 766706960 572182487 374916492 539167626 750606394 490020358 628631467 565397668 11173061 121140710 638776305 545609272 664172995 32242399 85584135 764881390 760751900 543580246 899005005 549603789 598366466 380168960 236014782 474244872 936682116 914125772 921467489 593142645 761531218 174664297 873643307 966455052 407860673 320960683 120579525 27774418 978949532 788650903 661336920 302196704 144940115 909831694 75652421 906489221 587541663 295121408 111483677 14788330 765021944 739267284 717215576 640119170 598194028 566490000 581828729 652103065 322952385 294365827 540434316 373519253 843673229 817181788 2064769 898104834 821358760 117020271 756894954 82755495 46590519 770363359 847993150 957746312 655474165 893792473 896377342 888740556 959634143 169018429 132275201 204478877 603635157 713561314 979504181 117188271 462276586 457180572 925466278 705035992 406374590 439446996 700942603 344879249 874310759 175498934 659237958 224517012 14051287 190430346 165630783 931117574 434664771 885273619 628180264 697251201 132271182 359883278 131378600 401146421 577076463 307600889 944491154 491328816 37860436 259738950 396390787 165400436 857394725 796481290 868912423 238386289 986070995 334486262 581552582 452667144 558138471 125681545 376748933 701908458 361197100 201726209 127176697 890907944 310394647 501671338 118261762 25808661 270275241 543724963 321082901 750415576 727779802 516243752 914266155 965892272 726958585 908561605 80137049 306015157 33199606 345691952 500015050 398874991 181308058 367226409 302847296 379732052 963671062 663175066 30668811 921524534 624751689 753123097 916887573 721287125 813477222 360766107 393897363 515730773 850186378 420373729 781689917 610159450 196743405 661835042 742524340 146845808 582706371 586686446 476630556 494853799 822216914 979826853 512821745 15422150 382702861 876642171 49138281 8682116 696739686 761038633 594424583 937291111 971232684 820809566 218571830 118330023 361968153 424773172 107309481 888126191 25872700 880942852 600943128 895860076 686809308 535711959 10775172 825885626 396562252 748314414 446892883 987329447 744913544 739594432 691009202 627954486 897244669 491626312 875547206 474922657 574872685 686690889 920277295 352896672 70972272 946757573 196020080 58083325 465392760 828665578 642352989 570596268 434729885 702745233 343325635 537894018 88176860 122926931 230714659 579794519 705026728 524000757 64016876 726907158 985702187 427139727 777618293 273351178 364126965 717794624 37063530 349964472 894310408 849252215 434547625 48188486 886051153 914949131 815369656 250576796 128073853 415096354 66525749 243606626 549726498 2690388 801350430 630873882 87159182 527052345 668891770 732009109 739936784 693414228 223273203 820491897 193516604 87913329 270860925 54280255 215293220 512422813 148343747 377621836 780988337 486589748 959699729 117698364 365116884 148631126 443407054 842440503 684762007 891218315 480873242 910829348 941302475 553341370 572400540 70294433 847479825 116880062 19501715 305601412 957855616 902473814 179994717 152021726 887560114 724416746 97159197 130768725 243966750 582737352 935554538 251352444 164071631 572784310 96819053 598653827 527480800 947403377 648892308 487512403 136147892 919352444 787139699 138777988 874858155 554978028 671086899 750120237 243826168 157770024 932855664 549340251 111918797 380262436 921575167 925619667 65542383 473767296 474026358 228315880 748150044 47326257 415437679 527944715 397462745 257058924 706544246 905296306 166856955 13151832 859013906 489188340 382364539 453576111 167022195 486829296 213547584 522294779 303933026 694237413 25156561 120565454 462204686 98014499 235928069 752097165 748943438 564751500 121933972 403789309 496454936 925173457 44803302 623394384 60317526 309674072 247544197 414765253 774668972 830807495 213905960 821734510 683145429 873871171 63822812 418792769 624225772 207915938 439120996 606220812 606299534 259632692 691509125 863157806 233398936 343492077 379484388 420185023 451529189 906673421 872799723 997945222 839612518 536664603 877952995 668640892 570647489 537914977 211225655 829461611 466173423 93031117 968567880 508832525 776744116 693531977 107200343 104170596 931823395 527753689 241268064 17776388 76434691 349120767 505500153 748754635 846755611 200674211 172096543 781878059 328042710 807325584 368395278 411466719 290430077 90626031 104069769 269770782 562022265 292252238 585025996 277252713 698955440 706473779 426471023 972772132 344621323 817154065 355561640 135038513 790079540 711086226 418708443 438604211 840015844 683873351 505324185 237748119 787104834 953186487 915168378 498105348 153930220 734938928 992875064 584970623 926921865 385405384 834755778 441284433 716235855 299091503 420080965 970541299 488879120 861383333 742044369 907170832 29907802 853525121 382467414 677714068 845851736 786088311 258290027 98350026 938580306 607594415 419771568 129190401 731992082 553934635 361830738 751665235 411572362 273504503 325957820 604047682 874999023 367050682 534919777 949464306 601388070 801335763 582882457 400100787 260865290 363822546 253350539 518238346 286950557 105820379 61338523 895652502 491668672 558723379 824744150 260435024 842300287 477887989 516959775 645873626 710859192 592701406 885861385 11649321 119845429 863600500 632805264 331791573 46817171 946202249 234790378 586759313 667946781 462624800 160018702 741523269 375515871 594546284 35945448 283257050 931012937 429362000 587490722 101115347 308345658 243748831 270519018 90530513 353828426 590347003 579029466 80089147 487318890 894303927 772370711 243303454 583155309 35368884 822698313 146379760 228060136 283983804 769064393 131785460 958778966 34115241 519397897 985306159 197641459 107914732 634244766 93313127 53275957 996830467 6332810 240899078 935603563 562711262 174254250 797058593 659623396 268040788 700242301 645060765 349339390 928327393 532624098 258404529 780978212 742090513 729264826 482035337 162216312 936918166 175986464 772310715 244893794 262560741 992107312 506036307 234373196 287938307 47009701 642979696 517734857 371588106 314545380 251935492 986002329 887917673 541894616 680446488 599892077 781035728 516238855 212269654 809683903 738267429 733237228 53910198 59404488 164278119 419361387 814642046 882419782 684337925 917433623 866708865 401555810 85979233 994073667 307927288 994721549 171985250 658769149 180643331 768365610 485832241 559819329 406434953 659620326 225739603 923359778 359505182 15168717 561272348 711923597 129373834 571090702 982325320 836454923 406058276 993557427 864315729 991454989 466752989 594414117 52014720 325141900 300382408 882011991 247105245 314670 119636020 707808557 926601084 231892064 841842528 419659092 973420170 535089851 423542431 378661773 865908964 471181163 564662415 392287418 114192154 396965618 811591551 185031545 742599936 495976045 557524095 271848812 385545650 565590931 233803032 836201873 670957658 382264356 894807836 91457133 887695058 983443918 785988329 837558708 332807281 502781438 722202870 238716467 924215700 220089687 269641604 490048022 658323604 375411873 306490740 637885732 558465125 364522048 457406451 817029410 349492102 260649391 369031108 197363008 863957636 324582175 854328575 155644743 955400867 965498453 361475489 760863960 20080610 858938390 442572234 723292613 737242890 892007101 741031166 379923870 303640822 570536845 58354558 645675128 477761559 521324471 105721517 350524939 719702999 869108292 441228407 274556315 66354103 936134536 15058606 69021104 599932385 949742139 53136648 241443311 244791725 983828018 868695716 581645922 326345495 251460825 833012285 790025904 864849756 767947360 968264260 171210844 650890563 555531021 792487717 956000951 986685862 86285376 909442933 813822828 347020175 702578094 907820514 200056579 718448336 540252397 889272780 630039282 57153202 514696890 125890102 565458453 560617405 43386675 244935031 688178111 678133613 628354967 239810787 629303790 742605517 136797936 925020257 449416456 666068521 272707930 598609105 324052273 37876736 395536987 882385646 184986394 889734861 824500611 30731450 852352502 36782014 854286631 834687542 409721782 188302744 124988955 193635435 425986558 249877019 894364797 881227627 127924416 444187385 225112552 303189676 279517792 497491609 780502680 652189739 443993262 842897498 792309155 180338250 426424902 937298786 137461756 425724751 657115689 219026820 918274956 403345149 126030499 996224643 727098439 67357181 22793542 874223145 630082773 828153891 629580401 775396720 518340855 651218909 441687495 85439961 393801625 378517412 105086462 867943025 786298064 5700886 83636742 292997663 893997039 818605870 304484675 148061294 349047808 365215205 29932838 414681070 490090209 624182763 958955876 352040429 827203448 389577669 18846450 812992280 665180725 629324729 943434805 206553058 790663609 762152456 597269980 110046648 682645462 180454294 826316844 855281275 688035043 428081701 990750083 32612345 914216642 726641990 686318248 349654238 51239802 375663849 92107638 870951015 749799558 254265795 380599029 519518558 216705451 607837152 605217596 831684088 249585581 963317251 43265871 389358374 128458648 396504901 513424931 489301365 458588995 552789386 82116815 61130026 74340983 871500970 448228924 525909135 239601111 468044312 916948070 985337456 301031331 790795505 610656564 701268172 608744700 630179444 504777434 102387089 628458160 995231176 558851416 679148233 319351225 648064936 182273061 138705031 989637065 538901887 565580113 918458211 902613627 924018918 974539415 109641794 456949481 235913701 362049332 986418046 445663672 919363656 965302790 113936294 867937743 598725294 631263867 116289315 895354804 384794806 482255306 620018399 107329720 534660298 264443734 38401397 410572388 295865276 489028569 885795971 627406733 488548244 353422185 158043602 705204743 506104726 582119124 633153271 929940814 184235651 174027723 748845326 518710583 770623712 505899807 684509044 691870089 205789975 472199436 672819278 732686191 106862930 538207590 48779848 937705580 524954467 740709371 510778324 75436861 988554763 158010855 120867156 267391625 848242541 212420300 418853685 337145610 495577020 706622579 186387717 178112746 276900022 471937094 621174591 398811967 562342405 114515529 144400092 867499917 225189922 91613170 204528821 520155597 601098608 219788885 986713320 691042180 772480588 17395167 797020265 115473897 747399533 247314414 112193496 661101041 48176539 547256175 967269554 606397008 980860871 576315821 35625140 910076520 119491122 45685759 869739468 528365296 729697518 469313892 399556555 80944076 584225316 739597026 638428667 527576996 673044160 346825911 868726217 467984934 753756590 945101336 521158789 867247513 643832170 282884730 608305203 883255571 77974846 62425591 322005422 890180672 702614042 226758750 623610249 567093443 75334336 818245013 540188878 49893872 366252898 491217304 769576438 213184784 288508107 112691781 749595211 400021848 381432511 47553405 182204796 192746371 129586932 992211816 294665303 370154018 251393796 898312119 952927069 948389721 406864402 931900903 110788058 601257178 22736964 354177575 549622665 437789861 531202952 46108264 195060244 733393824 776769018 616257413 451098251 757859032 825004584 766187173 379033101 260446020 52271720 911662626 33714682 927502133 592998900 891438187 250661034 591254068 678852686 254061004 657123211 966637308 494875716 398823125 162299212 158854661 901884190 123783489 82855613 189058789 604421934 285976247 37029213 215888902 621838056 462284131 282187039 307819425 277507897 424755776 962348227 511282105 219787320 538875024 230674723 656020003 32164520 666870807 885936638 537961097 208966950 544837220 670996492 443304976 438304291 69220851 625280022 923749187 216126950 333367587 583896164 146561279 151199024 740597891 974957969 564161248 518143750 115472589 936967834 529140336 808181041 624859916 107588001 760168421 992423885 61172706 882411737 563258111 23092301 974122716 788952426 731755462 254712606 391794714 158381454 425058544 522814499 522017364 39065887 114572130 555463169 982181293 704602363 397128486 357755247 49757964 672263506 359172152 575778713 426625890 539106486 106258837 422905478 857608155 326631566 142878080 17299014 854693508 678006889 220817440 703281207 13424113 968965075 920882345 288222821 897987517 127830154 884379802 912264344 489522428 222278532 981296717 381726353 280744658 227519444 939822796 592259637 383599045 711858661 354513197 945709012 527643148 60999162 5937633 27718828 350023640 820689711 624963720 375846508 845791303 427895462 723621591 199805437 822157568 759455174 247749956 103062467 593653302 140731375 523551453 840368975 480879155 839453710 644199565 478779437 244258866 232694846 208043667 904206613 632381267 933966313 108067258 496211195 63070101 353499824 109343359 910912878 551840894 861147632 964079142 245279304 16256297 127438022 227542572 51116447 679034462 154589804 954262000 272152246 132864886 457769913 546521736 837124204 439444014 107012816 896324342 835966629 645715585 17126989 423192769 385930293 591935528 369082836 663231089 115011254 553621159 264873656 747655508 392259374 68310981 708310390 918143459 538227204 889137030 13726391 104047437 818898974 636592891 74575018 892463753 180876604 591803428 208533459 157597152 356150466 58910289 430331938 762748598 668174641 136847257 639750514 105563223 874848692 623475979 125057869 146327437 100618869 703416982 736321406 203570734 84851211 438547743 609071563 96344894 263993818 770216198 327856913 825165611 864940084 256824383 869907402 215071085 782894631 556658442 624778156 377766588 382662831 740516568 417684374 486974744 484313294 512134048 624927746 904039815 246296713 491735354 656207578 407705637 367205304 691403814 347970446 203532155 601029488 632374650 762515826 754611577 291147848 726624754 116078142 712798669 680319355 937442934 122202180 854067189 873596235 264445799 801404457 31406950 671253429 459794208 356598338 994229459 666391213 150239381 145490276 87705836 99523732 433806729 348471691 399851791 895359478 93767001 276937430 827290670 17517702 165943964 636619190 998132263 679640669 87261742 131599396 724464693 730694808 964532327 631991577 935897293 175014782 996760630 239176829 476871019 314982133 679803752 468101529 86327397 717375875 588846684 380000456 674175625 491008193 560188746 482562965 139828336 661486124 498568741 48970364 715549859 800407290 33030151 92038144 556597332 345256416 433210543 636985286 515741720 319878879 266413749 48852901 40117384 479183184 598981830 693929222 520497715 479067045 417886217 4403759 465001348 671798800 529211285 841930165 268993503 599779158 564170480 232428067 891950553 627258099 746087238 99229843 903595252 358694832 415647464 840192879 847036843 759750725 889422606 289751432 170897193 549256957 890065377 819728458 482904695 221890971 508608639 419075352 329710388 586140461 289658310 18564806 13250275 280841153 377535146 701206024 909717586 403895818 20028714 533573300 608152100 783864872 16525717 818617759 835527339 474335175 75803508 282787578 16956961 371825141 499515957 99919182 680427612 621541207 327664786 295552092 667458333 708390089 742947267 112863663 779061462 883783708 763152327 759097636 605982563 503960165 325075736 555914024 193912281 95611024 564160839 233019090 562925212 207691650 954474254 267960310 798643446 667370859 709782419 258076358 600293107 932791221 638512869 515816356 122373886 234666904 88705953 364328468 955085941 383325974 439954017 709624435 687816125 821569122 216970663 712369556 155010029 411573146 47431430 180439227 555810739 312806170 890524105 115592513 606491094 577098056 764328125 621889624 987952769 157886038 246513747 803175736 361632938 692693811 432118088 681245641 18852468 589740909 144702642 39892326 201018010 18356194 921694659 649160720 276097144 183736636 190071142 829561210 916423579 358225862 383839167 330658913 652927502 176965604 704128286 628715760 700092165 497545748 990805583 87361729 709499516 997872164 249174221 280247664 891091897 438498143 395790830 941515676 390775948 905564552 119608901 301420609 872840839 136743993 34542301 353123268 190218329 469844985 343704658 283766047 753051164 278145555 404083168 629812659 448987344 739234219 74324040 11857517 991588189 717851495 207435351 346355714 88821640 795282172 546079175 966489755 476645682 158667318 237585466 707021200 223828299 521723560 54091346 479093315 389374456 938772793 535907727 467192197 855586129 178427378 707409445 410372208 303058008 602071970 401131522 127691855 321222808 707315857 247535580 381911136 912521021 647398526 206940622 767682433 744173204 676582348 520317655 555083004 706629462 429724313 716825343 465752712 470157969 768519588 890742522 34632452 703284394 239904702 594078633 516227978 668449148 680093092 676087435 265824694 307950460 382686186 717380734 504058107 435333030 286335194 918306928 488547512 802813602 43144807 970957324 103720340 115925826 265676047 804114561 248880555 307450414 518974481 180816915 114269941 298363178 199207103 185278868 989728547 119876413 332002017 162094246 224376275 660716437 826671555 8842659 572845730 548786489 781619513 3947771 110606915 23373596 364116114 628985809 193513418 262500622 15589986 826722200 375515837 755952046 212716550 167164731 665791363 40849561 259440309 362595568 17297175 259448948 669123127 79889839 176250454 460605182 385208173 441390062 798170715 613758146 224582409 755603065 9811511 937537332 249633392 467313720 76895109 50487984 348885654 560684452 409855144 336772510 662193795 812322524 804857878 196090517 749636061 415175836 121135670 415774076 418616233 915078272 924529283 672304639 535172984 957037614 427022273 729296502 962607321 834623384 762591925 438359505 434269560 421767151 832481334 144639845 142067840 433459035 324585135 51671300 516017249 157269278 743722412 105343089 169178838 111743669 684873297 407120029 852855726 20108893 514241737 66180473 733633416 209825474 900517245 910022669 829807510 153708505 560588373 418206369 452014779 707058726 827184122 115719526 85660341 442855898 203404160 898106867 245354370 433313131 197205796 185661532 374612365 442961147 467522605 546496424 980578616 531582713 440297796 176818256 45519826 553819576 707580158 31805225 223051044 782611423 984909138 734726824 248283629 413595222 583454154 440420308 752572126 320990065 21995597 993325981 934396236 126559629 559704718 61775849 464799513 347550495 954354660 213999487 609024431 39805108 253010950 104098739 436560494 52326215 667190214 174058577 689034203 525991017 588864469 558680276 887118846 696165955 679860648 342470113 248425492 695142278 378337573 726377948 681798134 38759628 870710080 75597121 617701460 16256880 115859721 892626688 286599290 941715332 409507498 180498671 522169392 235295080 64249196 779654866 499885377 128824793 342206593 163456650 465883851 805250437 14853837 447609616 495319360 945524233 753458872 507992369 838901034 750589500 310541827 495763629 261100439 936189024 216539591 809304207 667417260 605958901 728073972 861538640 954399713 525060077 162703331 987884474 771241658 311874409 980441732 28678394 612154338 771010434 808205793 263192788 485139037 825969674 539755526 770877017 457320258 420695069 545630943 936075769 164462715 518931319 185357049 299060929 494883770 77542125 602856053 943230894 395517940 369809300 126544578 524999075 629928543 588218046 734082040 314898074 654352902 682959700 377324781 31543507 556278340 109205120 270294667 94799291 39146718 306363936 398134645 386280591 666706698 295542145 342865753 146488953 248977396 792065255 271078809 140310787 407552986 636611167 919552417 851035592 467125474 772536075 356355184 380111812 506500452 643849090 209912681 303303588 232183835 704395115 165980414 271903708 942380875 214227181 348536316 154964922 960484586 781580410 121971161 191395707 198538376 795544837 973907870 878358109 449930268 8935663 676977603 407435426 887616876 298903497 890328545 802970375 866652474 356293026 296371851 179012031 47107974 774205642 462095583 158070268 812230873 994979174 908234284 153324686 815746126 549746924 699524742 563034227 441430 171819802 341808330 281971277 274202179 567102864 459177568 603399407 31776704 356089432 676129752 641723298 638869035 973648920 410543188 385926561 409406796 461054826 141041385 7743223 590524510 234242049 111974488 263255381 891816506 882866724 571531074 385219977 251778461 590239685 806007659 496966146 581385714 253153158 2749149 642094065 449868670 414677688 198741420 259462356 787923315 246307872 725976277 716291156 577975554 82797375 582377671 884741129 140492908 694584112 438361795 333164754 701024612 347204184 267144018 731395567 726819317 48638260 395298439 627484529 254047369 387341665 852469336 506214583 152449684 835273129 205531601 613367389 913319092 241855604 212623828 179749264 854376264 129968379 741787187 376507149 343193258 867563175 407492760 837974801 970020962 824364786 295681170 485304548 784915839 360433696 560048484 723068268 309021250 795254722 425382004 544874597 853444318 128528147 402260744 900529355 937730696 107396311 318770235 728158531 26062255 968258918 929624334 788389906 24422032 588606284 372012623 675352029 6285641 372285054 2139614 493973701 671441457 524490618 197502045 375910808 620066383 15909969 711767642 144623087 692098583 391888050 760891703 325112413 272247493 565373633 812545306 947542432 783545885 248385795 615521719 938782811 69577280 744362170 693368275 972052683 226830262 874738923 867119189 925117284 668992739 654112507 428261697 941709871 784511095 508154095 919342587 509372553 675430127 146506478 240504700 63694996 68224142 680424301 709126648 465853091 899450155 921954832 492247564 249845882 937059319 951727643 883602119 557757979 959683670 52553215 487389399 839557624 965318763 364394651 694364021 193954474 369112093 403349301 396309731 668870753 567841529 486805261 229346835 318153599 293762857 199932447 879872244 367566378 696251172 381565389 227772339 341008849 698036002 511754130 62176865 760535759 433772195 192147026 624994063 633031243 408622906 93113070 378627913 748499048 494101942 798209033 81507062 389722788 570533115 93149677 106209415 5132271 559250929 594661277 374389575 815762149 634447272 128733067 310965932 688934431 499099182 738639591 704277338 440609281 688421290 944307232 556929795 440258403 407292099 982348860 2739133 305741135 913062877 186384470 942408247 779382814 158668786 910142971 429435221 813596776 962671587 698971937 977534634 100505820 439172131 405163395 934710267 139681491 521320010 633022155 918266083 801770240 52049283 295339750 765662930 200395192 242664684 664258734 228678493 963647301 583479196 918316951 241148228 132595528 102154453 874074824 873728562 76379666 29762452 234511822 589906683 232213053 522113011 502488739 86994768 941269173 528980263 890048945 392544782 541942218 681652725 281877488 433113124 182542440 900404208 481137798 489111906 837862472 978715061 651311601 639952088 373377761 30510986 430040652 976410935 372720878 865552842 111476127 313745526 698240988 44179585 455071468 521410227 88550527 810346743 372251903 994436215 701127704 608335226 245991940 519937327 617655059 559080299 687332205 460414024 382321024 319583164 859469142 313719190 995976774 189118016 225103995 664740627 778192899 202193 395611620 494575178 348213710 359503215 413904368 259533296 764812650 626566149 531409493 836814487 174888695 867876929 867512255 135486622 162666554 633057785 759410771 579765822 967268990 923869592 142433976 233426226 421908176 95557872 521726789 371353400 565474130 916526748 389332798 275039342 719574371 648557483 862314500 665593254 414629093 981018296 3352729 526081987 954614813 961192653 536421117 458307129 376288740 269799278 215034405 355935631 270107191 508108560 844107823 886679359 405060338 713382943 709137100 220718227 146272353 257674236 247248647 412935608 46392213 831151157 276019980 956363059 602716198 199045146 545461889 292112999 303904289 142708532 152831340 399196383 743310633 31306450 559390280 888017424 742250593 99615478 497858169 125190285 961019664 224254196 776706275 233110507 192266613 780052778 393493781 538580129 894719234 751310433 472361922 877894757 886175491 747119760 932525093 710035278 759992662 196384645 383800596 608669951 232902395 779646736 873018830 795713563 301338892 712935857 819228843 27154805 928887044 964357417 797872953 338069802 882107098 296723990 576964453 888871126 494077097 875155474 933276708 296033176 228379618 783054415 852390794 493033885 568198758 835729034 970174860 600013140 732382571 688334756 329869982 686606662 852505387 494305399 385684585 422037261 618084215 718040278 404118708 367894580 451241109 892211503 526298328 666683035 819686274 511307560 106566787 145996975 369685566 41538360 645440873 716108453 758899333 867981139 293403209 308378182 707187313 207297300 678981989 484749027 894552745 193739216 372720019 211381691 221910905 676953004 326471125 747143349 678013624 693869592 205845042 12503617 882254555 692110268 422632372 575849855 671652251 272324951 212909276 137122464 421339951 695332452 573650245 818563961 724017142 592926843 831434796 487982949 309706914 408882287 553928536 878393803 895125405 738340790 657272269 600736447 385284008 501686228 772720811 149942488 525905553 175014762 967978775 873084557 365584247 652384075 599211897 137106695 80277138 934794350 328764738 38082969 315900108 753064649 260887452 968748491 67459702 178675257 312586157 223145856 578973104 893370864 355153254 43484302 838392558 962191469 732327616 476139272 931865512 536151405 303098020 276632593 81595832 287625638 435188737 689783644 328957948 89312283 716437706 201199410 732908841 88136408 447010576 644586128 848895034 175447360 640893091 535921296 763271531 124539986 47164804 269911893 395900321 889412459 852527172 929406533 184043046 637448227 652761747 266637255 862915463 338326720 950118707 205958629 240783254 206191416 413691182 543964058 722647766 303584916 682701688 448664828 516864172 430703327 83985171 540907821 163465181 933699936 531998719 537623059 968514124 350611533 107049956 184583264 85922030 655560391 945830705 116731198 454004424 422062811 442869976 928442208 326274602 171595595 361988482 957573258 116714718 230318789 752754861 837475480 840324345 500935598 629662167 173860155 600783706 860158102 103096876 937944487 959069122 417337130 909368599 432725981 449046898 414844858 877054877 480118196 408399274 116784997 763216551 904090961 435624485 653649199 467095943 271786699 73988600 259812368 818356437 759024644 192969773 76364117 885874886 75485383 950228266 995124456 660445575 887955488 680588642 64604219 391309012 530944458 332958560 432760922 898691746 923646181 81322246 654550261 328100132 144196727 294984815 18776277 846004563 549124957 195896317 71422548 688493161 784846586 205344480 549185996 376423844 38897335 541929780 26485578 679317376 706145142 187521402 413505320 880780840 535512682 95048893 546855771 843699199 213600916 455823236 935945185 159964411 983949674 358354690 922951261 978108321 858092969 768915334 647842943 374827764 603623992 418952520 838701188 257853179 222592240 399265227 433904046 56181439 165979676 246011516 646325197 690696119 777575935 759317409 272345417 753705612 45372981 876783849 601178639 417581744 538800115 791172440 128616749 78622476 918789054 551873917 907894861 771159131 479575879 554176402 254194108 949877542 334927779 56805185 819299082 275348793 439362172 322884683 984097398 402641701 89487415 245934524 901015694 42611622 582850833 740083210 461445173 553341747 80573819 330605845 420987215 354630631 179731013 355890895 184903401 503179952 216128313 464276783 343022195 536164864 866560016 439710617 630868000 228465950 682926525 285428400 25799890 731756330 914951861 143259877 554328824 10793222 629125811 211167799 156586804 57140463 914834540 772920855 303749477 969960284 744576394 563988149 98613638 774525050 92693023 333635078 180035609 565701314 735474186 708212853 941146047 331592112 956349549 431214076 721678086 507487424 739144464 503596291 628228466 314852602 464735344 813584147 55335234 910836643 51336583 763348039 508828837 805009453 437829082 752303894 720378752 283540809 737440878 821954087 717905434 472986373 334325962 78107604 925788732 280862738 674567686 208286769 573971628 853615627 227395744 613924792 274515502 819801956 751889887 41540531 191496654 778969473 991462345 888342441 727361622 842141411 412888074 890258413 455342210 256909743 950076083 559015811 182849918 11879469 324292559 588458757 650174227 69310729 915754174 974715963 14436030 934122194 757461528 135156421 169660834 235414087 199879829 41062123 239707920 17074159 394668028 359774982 634695683 39155693 855522255 917746130 857258478 471373182 298477403 295799544 841613686 518068974 663254158 979234904 402765758 814155386 942317544 900672893 367649805 870043352 68192157 394238814 908338459 393770014 52883005 801679279 503789450 678788595 899635280 642857260 344184907 688454053 697287696 670208437 396039042 526127613 182889109 15141211 760166399 426687338 663268146 730988874 135074292 855978137 627014789 456682327 135604187 970949906 546748490 316111950 83814758 360170057 485546860 988017739 297768829 274316568 810643767 964260384 401085724 988646044 905278103 39651750 7116031 36064786 88858652 464859720 310100575 601719725 884397668 651879595 413216192 791278290 832649081 375092215 419030621 19456678 966813718 768143210 76879847 586738596 854549289 469890007 590704726 323872106 758507436 949524908 194892898 411248744 983493851 480181147 727475166 247513011 794366429 561005757 59198458 423525756 103000284 65159684 219217316 639970311 55809279 814118644 468396512 971457261 922273709 779958762 454539791 717375535 943904563 507938344 120537314 237037521 14724138 213636936 366054463 403870834 226778917 715421032 8955348 658072233 304400071 574128556 23959603 949678943 399962054 722605251 437093170 168835326 938677339 474864844 879784306 646261487 170023079 167954602 268913843 154763078 648103306 818373964 247250992 426344801 156647209 286982186 261218281 556175914 441159527 9518736 813320715 925456001 265490933 416902172 419296880 820236343 11378319 665798757 771527114 509545594 801248594 167390178 176257664 462867723 358200874 348753520 775554133 206387210 152129008 970978685 995864294 583429277 652855338 79203604 644562284 388595297 95594346 461538402 992645184 951616891 915949737 29850696 438618242 433876882 819231114 547657743 889551544 601251073 321624551 897189418 141249296 941838109 707010529 645306349 160540259 62014703 73055793 439340384 730651910 844018907 698266026 55000837 186993406 628084677 139941690 157333786 678891328 43747436 161378677 653788547 816770582 548134192 568880444 48307346 503325194 855749386 361553164 759281250 911843121 816825756 435449635 960253057 172127741 844286336 602604613 199515405 620398882 130728778 580825195 874970467 739170371 896115812