4697
560599813 321634826 996488369 77808974 266356518 216888204 814645201 588801325 763772829 416738226 803885903 753814921 906248825 629294055 954926233 415037348 885057963 452922226 842466431 627401716 860454579 829304534 975732908 82948979 649436112 293698427 416900215 240801209 572692766 153120212 876260208 334997825 541096801 249830977 290120738 120899083 502899493 165801105 641804268 63281851 623642708 608815268 923877744 581639212 845330152 23534707 323787207 78756733 85999516 22311548 308262847 243055154 690460396 534879955 858347071 273942023 773773623 418400645 907173350 123756746 280353643 85674570 702426661 394082504 421458547 287486119 465324888 444239925 837548363 591745936 883245445 321336296 482044453 95399083 652297902 646175845 653533658 446966647 814498089 23003352 859457518 143837106 639010016 432486587 767220688 25964903 828116879 228191619 830650072 481673627 605501693 364566095 978373463 748562108 859777665 112807257 194891682 72681599 91964912 43073847 634335289 440372326 762118161 699477116 964335872 746061560 914871541 203484869 685702962 630512971 708052407 577174307 747416964 418118406 637104711 34302338 122199170 121511059 561261544 170595967 643370145 189304804 660503844 321344801 626509204 479015729 914554380 303133945 388755095 19423495 533253145 211167812 571007641 306518721 909605719 302237649 923347683 615153418 636359175 243246099 786042973 686744181 919282303 505142706 690101407 199791175 561947131 64063383 784126465 477272148 833776550 257824191 272639049 102382941 950961510 165889018 210676819 194549455 886397501 391107454 423007588 202761787 994721913 189278574 220288278 157741707 547287909 194086616 519858486 25627377 954918502 429739492 436963103 396677598 997867722 641328927 996208438 879228792 942502273 197786981 759216878 91813338 759585188 423727907 722983502 304333284 444574985 284589392 520966837 348961103 878719472 418987527 672419149 424150089 687576834 381314572 922594499 653977694 713342294 711052308 762475909 335349690 951229929 174917621 450107104 134568463 240561843 149685493 478617896 415449661 718078493 459862909 694006665 348890995 368662498 65413979 884878729 385951994 442800777 94671499 713011240 300183185 822593588 442238274 787456032 526502170 912317088 266530225 571094387 480484498 565825864 320874078 929209938 458223943 721460279 145411206 676910702 138715498 425716927 387627963 394719202 70207464 505476430 399079064 672163041 648808389 745408783 644890200 717027356 452957302 588992475 286530262 467720108 149716546 899632238 488263187 841803200 519950696 751238083 159649979 501975889 41137445 836840938 288732468 327678019 293664395 640175742 91813495 789196272 11686823 185398584 44486777 591726469 126798739 466439982 66895106 87480399 13464490 410316906 228606912 931809503 148292612 824610185 35980413 423977732 66284040 932621333 490577703 976941248 255635333 993170134 271535751 342349415 40407259 921270145 673873681 948830719 913098700 945270883 588498238 714460279 130675383 142673672 115585207 231256471 24820791 912134807 305577976 381221576 371460316 794947417 91064315 326448062 72418773 337143442 17741223 293725498 256846870 954837544 418315878 771622745 658120391 660738333 628741842 673747103 251692393 252697663 239600003 671743452 302792697 483457895 287022577 672923471 227613466 607235862 586211075 817539150 646538946 654868082 123689167 204250797 12710061 827014998 118445791 277166191 199331552 801127437 607564153 709677437 124823303 657856662 92020685 889470811 166236380 535777109 306912556 392757273 36925270 147199605 118005117 885484909 63878368 465387762 351194305 462053311 131266829 438267996 133706433 242545383 116140344 438768316 397821267 894089702 38812654 303162939 97808005 978307954 742394357 969682812 520485990 532806488 478665965 741962666 137423290 932004439 614160945 969026175 774572302 893565143 468545614 554342036 528646159 727786606 226679016 998751485 316751867 915383654 384363056 635395907 428896988 852783484 211217734 256187950 81293083 659843391 526399932 605392616 520701052 799908165 746020903 896561579 669526695 673267182 645853690 844435838 787486175 860740030 569725314 695941468 442677608 826571628 656760400 815870509 1060260 3488426 1086519 785795865 167465759 493483914 363777863 744589410 312066558 690368897 596438068 858268562 660746494 829087673 309274020 959836321 959277454 998872781 207421666 547804897 367621406 628545817 7812170 590118070 269232343 518055418 32402823 480228261 360893408 819516979 241065539 827942114 318067116 422678645 166161620 884614505 15083345 826902751 135322833 671054910 321189973 456459413 416448714 579192267 94119091 799382598 363919250 888115546 793404915 875625121 109564430 687788925 48982070 985630900 38229721 55270601 650039 931401921 124228186 252309713 18897103 272081270 142911288 337999535 103459978 866637118 820207674 959303563 337863790 921412417 106587456 579440859 222730365 923410913 466138324 468934331 364089890 588360282 236352441 335765789 90061202 392320166 178567847 799253464 721591595 906807941 741154255 774465655 713834222 921263647 796487661 890112550 602248314 863447952 117984155 936882306 375308060 806835974 413644887 598986440 243197123 514323339 80070995 534448610 392118486 735478510 307274168 971911406 103043715 909274206 759271864 910698550 524733840 802666925 430289354 489532846 353744625 761804811 258734421 606029272 379779242 724614896 558941875 816545380 791677812 924459482 266568317 821578345 16496965 27033574 10457357 912817242 688760734 811855982 741803982 753102554 557419374 968576779 340893460 566223078 55591829 730584117 55681346 74645325 41805746 841243546 308144200 765641754 297100454 646056779 413246156 435468211 290639273 543036763 363195778 689358223 533402894 597637791 331120250 569199764 45643103 643843645 142469545 328057803 164580074 327065814 218196037 540510791 296500447 894591319 738955362 869151501 333721812 617204889 376195668 822207630 35339086 266881632 184321148 405409196 396025321 825244420 21412025 276828929 48472477 462697387 170601681 873564520 637468178 887714286 332242552 399331133 189421906 769656911 623152261 951446937 449009626 966333718 805327162 910862995 519071789 964995258 836637695 840118127 427945900 720097832 223253822 769047497 318324709 472295707 287358886 315470870 42885835 557672573 119611345 357024179 296197457 362556039 209467867 636881304 98463621 571670479 494064965 908255371 783382992 983907961 821306402 865918584 51863753 330795438 211121688 683544793 490534796 733129694 60670537 943246270 775236552 836578637 728094292 916354570 310848252 482967178 110677962 625116788 2864799 878899222 327306822 901664022 314919740 874982295 668456511 953536464 530694783 870695538 474820960 810548536 664645545 837353545 584200918 778736895 513041905 893077574 705281064 837231832 530759896 688737829 279322453 303936743 92666880 869292526 493168569 751877097 328717078 614551429 66320576 612674517 116421011 826328458 427083709 504760578 12062316 234222611 233277088 885150385 123835044 561746379 365561231 947613774 943144823 986967452 773304669 962155591 59103405 522000983 365221103 617672608 575797458 688958116 191951406 769579867 320523300 639295467 67443713 829150878 22299603 38469689 34875423 990678687 961931041 962444754 198126510 828303624 715352789 866911929 318600986 890258413 645478086 956367648 28572217 971906133 578769341 779997609 369230373 795266573 114188529 486739210 297476356 669185503 133783697 159964804 150443725 810340958 360238748 759464209 520749424 919955489 102220031 639715560 238214184 486530832 447298168 715701086 528114633 719141077 533638934 732730930 426570854 710657718 38446308 603535758 98186164 348403501 15122236 832575572 462891906 903642448 345717847 909933532 540007681 983987412 670000183 816367770 342135478 978384729 721234995 758333974 100610231 710747290 426400750 722550604 62652709 787007847 124926969 872070722 800919446 824203799 598995659 609376989 413289812 595539639 580556639 666386280 569973089 594854017 351451035 741024528 344350508 410731104 310179762 999970471 477386349 644453513 496426862 896444772 614443725 801275310 768689777 889119710 39356571 981382210 448631094 908538641 541735308 960544139 169700108 189654346 184372495 285493445 192257175 305918072 272124832 435677770 317673390 562916863 20610314 252363146 180584469 184628784 46443859 662030463 278066223 380083970 95051279 529162583 431458021 525491406 247871719 712735573 602936244 738652599 83924712 950985621 336448967 655708791 608980455 911737456 319067652 395433765 238632548 980345141 489665874 996104774 782720937 990813317 651936044 665247829 392285592 444711002 125224268 985959356 80981526 124841735 6980267 372808322 70118088 613796034 515452802 928004570 438519790 631052973 272629499 321687171 247624636 947413242 281898823 931328782 134716368 627831649 346143141 871356420 150874794 629673574 611522413 737579306 181973599 334424029 55338729 316628492 112436444 965969661 453813349 645046640 142642803 727877078 424360854 715938918 599440699 968169477 148259564 302736801 224972014 459040974 24819994 73028189 45370400 46352465 8614806 739375895 234832332 587814727 474566875 832675131 263909974 675652667 74187496 437294117 119443624 631806278 211063820 924336916 572087135 970806059 5284843 207008653 115598100 288238033 224836106 408288136 371060466 722417115 671157332 864608890 41792181 654396347 96285924 114175681 27165197 356751557 166607742 765377768 244716920 598398260 340575397 416548704 378475089 947897693 851081331 993298910 108643852 852886735 190018322 597097136 587356499 699777120 608483608 848256767 377883809 882637241 395132539 534094127 424066955 467027617 305898547 501257024 365568350 900599337 704972615 835632660 483096565 771520597 721660715 775447072 362833081 676987394 660360970 862806844 608310845 864077283 73374929 98458976 81603355 243221910 1041976 384000615 26128369 738885046 468837181 473697339 194378949 791718978 507428623 716018870 707051632 903702391 833868055 990958835 414543836 843682626 204248621 849326493 310458082 936129604 487797315 562712092 471046348 794311728 185549627 695112854 132864728 407737651 122858607 612012292 484873590 580063806 438064942 637519764 73754256 333793144 27587006 876292521 244235442 505739960 50246763 316146182 300353674 971682753 843089391 957511441 801262156 973010990 562014198 718270330 544111536 730527843 172113445 953952693 717167827 771267544 545524921 638167225 445067795 701857973 170305935 833456691 253307037 416563643 275813927 697632680 69091245 410880720 202206297 648669841 577983836 880426612 772885039 784167527 383968118 574572739 516305826 533542884 146523641 187831797 2915177 909091027 78170785 454393923 361540164 550839949 420966136 636382270 561170708 717588933 48666485 553368485 331096474 779554176 249570082 590616587 317230216 535607795 439365843 950294583 452274744 922693095 766371672 965193268 963752654 975509921 127709744 884123815 343689764 601514169 326073381 913164955 500594866 762585123 161119534 531915884 20989588 863812842 164550630 595169800 40636502 420270686 44848318 449634145 48953404 630334379 376559597 888321395 410592630 849992865 547244921 599150788 108478348 440992804 126721197 786917744 249811505 707188375 73319224 998838025 375011925 607310065 69292576 579118439 376978371 782747384 557943466 725553869 82537724 279175278 60936349 375024309 231415166 376485649 86916690 604118078 231965829 546682559 178544844 497130640 51077451 711543590 407705630 994135589 169644673 531302519 100331796 462992307 5590380 596345583 208147654 353760217 203353568 365139845 135535582 293526427 90096976 785606321 136437614 218486191 187339839 295272780 123788482 799817953 792830001 901723878 795774351 930651216 816429302 894051306 167286196 574766974 316434418 325735535 136971585 550411625 452702175 701021213 178163660 675774615 336734002 651205861 43981097 276273063 172354801 487286027 412449499 944187516 884586161 982345852 845146802 845808100 825592491 848110345 617601149 854871217 206461489 656935192 575015853 763467747 170651372 816128490 284169025 588139724 190305652 590249876 322696207 799509774 244561477 938457481 91493465 195059588 70443520 435594480 341713649 670517711 660551487 722765353 283449859 575020468 499749853 909923532 157297929 592943381 221059784 765077577 154968369 171043828 160006494 464608821 353265569 917624782 780240565 981955162 177328505 797016105 454881392 827737015 144933680 329511736 124951610 705167046 21874791 116527247 57367433 764341719 142117250 885371472 844911225 935851943 168430557 189770318 135634018 969413895 798242048 944448503 212603446 584287128 166809832 788323927 479994964 710618061 19001200 250131053 11269917 296058380 10945661 20346341 15961980 329642052 167473912 393070977 350347827 927891264 370782659 629711893 526798767 898599613 611740523 724579085 593803087 949425542 32304456 608281560 501923546 657846914 406570852 922931249 729765461 739722253 226575413 608196859 564634691 732031211 514949512 590307110 396035089 854741390 723896311 880818663 215210726 512495356 98800700 872292997 721941026 809692564 774057607 955006952 182986556 895429883 251269248 975158613 490816391 704005464 474943332 783059501 44987469 957179693 159340929 301442639 147880616 241272346 25746108 266394830 109370386 506332606 424798869 592397452 408850444 684818449 188908718 303967621 24430495 446630306 74935636 383682971 255311474 493248212 229282179 872633260 712180899 991480834 613296041 721366684 572953765 688580675 599177500 990564780 144338419 463119502 22197015 722686503 208469398 911643462 243968716 883406595 717894621 979716055 876299473 995584004 211709107 845053224 74056215 551394590 332862754 898331312 194438450 706779776 671292899 745723378 471587009 761244633 238845421 431503653 240966220 519264052 426920444 525310758 215481392 467983683 94518519 745052666 684020278 928177487 562771925 653128725 546761950 579355753 330807783 871235006 286131912 428166743 355551271 953250219 684972033 850702702 407932945 861954614 349038351 561185455 364628511 605652996 587110895 921251936 344056274 433913797 140625829 245183637 37329429 275324362 105455702 883866535 187960679 486239205 112508397 282093295 249356661 310063688 178468782 238621125 4491015 627795395 2783348 678037727 12148793 289536684 32972646 423328125 175089102 223980248 152490303 207544191 62510342 142349569 61500092 834276519 308514280 863382693 259459032 906021843 357925943 885477274 36488005 822037850 729158148 929378792 506835124 713516458 4630544 941483012 158978268 957664373 544287547 565016255 39729408 610605446 318582505 540368341 513938718 523086870 198203824 769810097 558403550 990139400 608314419 743750707 63299342 160936014 83628109 210999967 110885550 274340369 131181532 405790286 72057888 610655934 501403901 594867659 55385243 383494038 380117099 565535248 69871450 755803155 714243650 749707434 239493753 443000202 374862574 949935132 657868677 795045608 246782700 816266229 809241482 881546989 1397618 190429460 161806911 333375136 298695636 752676927 167566211 609776886 18753891 715485634 531556959 720237308 158507820 867330494 548738958 918734834 150726010 337082344 327649328 994507043 121958221 586627400 127900706 286977822 79829707 751876890 308940611 765790162 592319260 824179980 485556490 944602985 444044742 798821014 175686994 446523133 48029942 458594131 411246801 850451171 404212532 862636004 653720819 898504958 64078422 787213573 370542522 930599151 677715847 969205408 473977084 732782402 192275709 479878502 32856365 979355776 664256334 795975161 327684068 572664505 400181414 922591135 905961360 965704732 477460258 664627682 658778222 898549733 360380905 861186197 332393124 787280764 277483034 664101964 421974964 507645544 433390778 513127472 187869974 720440898 166258334 330765851 73919301 655228750 619303278 707894872 150938457 907457750 50065794 248669644 16713722 461677794 297600294 356385670 321735260 788813329 387906567 435280035 50566788 821187794 135919223 532474000 448134540 558032442 169195400 641948596 351528562 481580560 430518039 784031807 410312032 781483551 306098155 310212223 196859649 362173618 305537587 380217664 323969177 655413684 376240755 817052059 122320222 354316546 162729837 339569208 83277154 678401766 220934596 737741623 167380599 349807509 85890999 90400752 67450723 884812939 203564703 826746480 436443058 523336830 257409848 328026632 286227431 956323387 815423168 849756462 691321753 713373680 634481122 660439692 541830764 548091648 12211294 46938184 42337668 240101171 34523822 319757170 153428901 194324453 96206064 737763917 448665629 483280365 169508605 194970640 8137484 662772488 615218351 788979108 237559870 288481831 71327484 791255190 737685993 788563595 22507515 555722937 38392659 575256096 106764412 533058784 103586069 105828881 290210 317767984 154489184 359695807 183085558 684514175 671355055 797032233 295985208 706519294 11214325 151930010 42903785 913859863 713435356 982406142 40698999 623675139 155656723 598714713 100765189 606491387 107769729 277764611 185663602 577514647 178238600 775771864 641344577 764510984 694424602 813912012 129105087 483124782 53686890 487661167 441241113 994377624 493336992 786615349 91759854 550374451 207015235 930681639 697836045 835144021 766667871 957112882 503096407 798307499 70018172 349567246 54686207 288761248 269613648 965027576 640293875 676301686 545782619 771933452 403230310 540722121 310877948 859521492 500510486 971938007 271519605 853410438 35451303 559173045 302839590 337759340 291235087 892645856 688413124 896947519 624612565 731959850 586949450 746729644 742916673 753085720 192525108 651359787 573508538 671761937 472089680 586684258 336815086 765505451 652328003 937973716 55698109 78812762 4438678 293495371 161211277 449920466 89054088 724004141 262191495 330778379 307264105 822071898 57647293 758751698 409013307 569969049 168534544 456177735 61860941 256859777 184663601 241146004 204004375 816181040 182815953 407684424 72985517 176378655 84082715 417132344 355809981 424436813 399259554 727744694 654577104 927334796 707608675 882221151 673028479 920291537 452778774 471544418 134792554 581309517 565211453 696127303 117233831 379153512 166371059 667190463 350902422 932061902 724467347 794551910 145311394 377768290 157771993 597325841 143980723 578672974 452843488 953356538 459335579 716969591 655103379 682137154 531709016 850621566 550483676 968378932 215424128 265876460 253584375 330458518 92177523 270745807 210872763 773863760 454397238 523686417 248991650 924986333 918912394 977540460 923030492 934569433 909804576 929553227 201695724 407810482 308095065 768535783 581901487 900477443 177104418 186775596 10615665 717866367 524322675 972438825 268797515 508317078 426845832 703831402 520755508 674073746 306913555 641362789 618616493 634735039 355318490 637011404 363941680 519957945 36634348 142646910 33167853 183559697 61076128 320450007 84619617 947412126 330427644 806533530 429862232 713743656 595836167 701272180 661039380 997897348 768661748 876636684 845879262 924056416 237883238 509343833 159484815 728947843 14824087 368198333 29651823 49138891 26690540 811443476 141631875 984385225 367408989 591603599 176476898 930513437 773809367 798243801 405993349 570780108 366125927 638741849 384730355 435419381 238673747 592024353 275737279 306522906 275555874 316539166 24853167 65124720 43318287 518175556 426273597 486357944 480438929 593205889 64932509 538377071 34164717 341894392 52030101 168205982 122691358 431269083 185272195 976571794 803642027 859547664 119112820 411325820 229722410 956133143 500308241 871409158 749782478 814323462 312223938 753863515 504257608 566372653 369322924 436006511 19436967 720482928 492552925 961735818 523251373 894724996 831717556 903135242 752761590 909586100 172204536 965986814 215765888 863226282 101083066 613227355 198025730 786906200 757934000 986787548 60186567 434897513 86421198 573764371 212169424 445846484 298746617 676835861 436191619 683165428 388480715 643699508 189831282 848398899 115883944 952362760 847197809 864396514 361719518 432500379 217735623 553573855 247098678 518706837 308225528 679663088 129451806 308046915 305053684 982206002 559146652 688961977 256612793 935770366 926166000 976907183 267478891 725495691 24883432 145314194 13384336 55132985 6171821 742452534 711960880 728272187 720823555 793194658 650309356 949197124 813023044 978968457 284511338 459655909 377871437 614052498 445666115 567505983 531596065 826971722 496936787 857109433 826436796 913621999 802550624 925687010 779958560 974161781 820816223 865997425 85973239 987769809 734997918 899964007 315121865 663343165 21656411 928943724 846019412 890422831 194027923 375049367 164613611 545505505 98769519 425226926 396963463 526108538 136437147 908197762 9089878 451729431 187235604 938378737 226479466 638172669 443810580 923139672 187370374 201813215 96539890 156917028 93385066 691509826 203735404 584955004 227552891 836837560 610842364 830596741 546921200 628790083 152867139 388265465 132583343 509751129 74671988 710022146 43306741 198119134 50828878 834762701 569227766 863106864 131689039 191803336 92566014 877367962 865708327 878006037 258117195 489653472 131688958 255873410 175802039 325824966 264667083 691438435 171722534 887151497 783724284 991229037 341755875 816303103 117113671 947325714 488418695 709196999 177941454 697724737 143189147 761895291 58213724 786460028 565287173 602676285 474196960 577510950 170414264 330018647 319994369 339930846 269264246 560883981 6669059 566061148 498988009 619893189 250937696 304750767 271242275 600117729 330257826 936172332 540042086 821428316 776455161 978831020 307381324 820262320 523925503 562706436 183250656 718661771 181190873 900195509 752783704 863942244 731619765 772325493 196761256 334880735 13831068 607842069 242309213 381207989 12149754 347595051 251521459 339575621 174544252 554348970 440820603 702553008 516216653 668159357 294859826 667309157 642444354 791859403 94751045 217247300 205607833 316754487 72501906 795086981 434973064 988452821 285011067 756014942 452025885 923843606 242572226 263889331 205456749 727911817 727097534 926273670 374477275 903461474 810118243 895690798 371195784 387382077 80129724 840871293 337761755 692793165 489572628 741036385 255072774 820826108 789144106 995252948 49313959 323813089 59335341 788333575 222456959 672099929 321969489 845384833 242219760 588144453 281161500 501176128 203943603 361581964 282377279 563929042 94970716 758282654 750594524 946864782 778716742 966164907 914782613 939499579 627608411 713033885 449675564 995465352 186203090 986498592 261092828 315647732 214450845 696183719 606867825 944946733 101618571 337451952 173352404 409757543 33480201 764226016 350177795 488128782 188323900 397242269 259526880 840505773 221127623 611690022 421661088 907852444 765343898 817996399 422146105 488392401 463382073 784780603 410517095 946529681 74922547 604763363 503013703 837593313 354105115 467242969 291949940 350571023 296090776 430904701 163022722 813612813 536375232 987037705 733086321 735144448 18245241 991563424 677961559 782429861 46772123 281362966 138351951 699251844 70256701 283947613 218087152 509290317 180250861 640863546 602272909 670070008 584127860 898419244 819439445 948627098 235526095 703920071 628101569 690604255 479578821 769616691 28840251 576631369 379365188 760647986 54011569 514197324 358734516 899450238 606240866 986921508 116395391 829498600 262071606 965474607 21645098 560670326 358930504 708437422 491477481 502347942 308877583 840217239 753704284 972341082 112591131 294958949 119951121 904089581 34205926 596664748 105762461 884553830 308843045 790514856 206027562 910710230 247775008 367881579 208766598 988856030 519602179 648230811 564676268 921008736 377677923 572150723 204553751 242361503 113227992 711845809 126351616 924365483 120299199 881385597 192075931 418654870 224299307 629534323 475056050 501081541 4225876 220172506 139080914 936227785 881759555 937255978 85504233 562744261 142517172 408698362 209792595 667690192 142154387 785577333 363046637 994317021 519975666 711714644 370434409 404973348 6188059 294478804 290595944 415407139 172900831 195397973 1930738 532398739 163564957 718610903 715795355 732389812 174030820 592069299 293558162 425301338 259048413 602000322 190121994 827779868 224710327 964065220 519883030 793787999 422140230 445255103 265634243 817801976 550603700 751501797 219145271 619222690 156250160 534346087 474020614 517945493 121197551 183493906 75221950 636431474 102912335 713133263 32132634 42613467 38473572 397232245 325545229 930953940 58638156 322398352 230381401 363347609 227601254 441985417 388533379 586378203 546404415 950093015 586269131 729930391 211971027 772593385 590892889 873004384 360282719 728543975 715766011 885234658 862358501 962710343 495767759 616688944 611634702 857222887 720635300 963524431 443082181 610795243 9429845 405857441 213190551 655117167 323368550 581951157 393544548 902811588 392003079 526259920 467350915 579016105 127077405 746063576 544264941 616395764 31122769 972874818 402674443 902283745 147408180 333463568 107100804 938836020 375773075 695899111 448304323 611754010 501206613 696429605 48461443 861006254 501079641 628175426 571434707 964376553 168467266 551145670 155707067 634182239 178572174 207867233 74399758 584351892 210655519 765308437 467202868 906551442 456811996 909442461 210123407 418174090 413251125 802065355 646586593 700552986 613159907 650941185 421140596 986834664 715417590 763968513 662776688 937332769 803017782 808212133 525628708 853078502 295165287 458620417 314982417 579694761 18366914 94307616 9595619 594223493 305981169 594544384 278319506 912125937 654373287 839752953 497652970 522776897 390676386 627774659 137038474 821422916 52684356 729246925 568678059 806863316 27559157 949770582 409453825 690668677 91074320 949082960 885685576 986478610 134700363 738945401 682330780 967874678 928476881 958105109 642595532 987290560 690872342 836549874 804273864 988483523 34643560 744508296 31490209 372160195 346314142 395258795 71797171 463350873 100812321 927969919 437944490 892629861 545046427 589198347 386980280 961171563 550347679 658979088 252833383 450413555 330626587 668262674 27071433 848362679 671652693 867687236 52797773 903832754 779626960 894946896 544285553 743112794 7291193 105606860 8796072 320576956 176201995 313313651 169094456 376825252 289815553 912330014 294983427 685685245 373420527 694568524 442555505 723316498 637600258 926518897 70318981 328331188 62426130 804750712 386316455 577276910 306785231 740317091 675749816 811173055 134296985 180054945 38566276 939080030 932084387 983276665 955794786 973532919 935481460 987586730 186925588 274618736 2578548 646694447 331784835 868171344 69201823 432323063 118878730 661298994 267091933 543750483 414709897 605108214 326629746 641288586 394044890 515821654 316138179 516371353 118308368 850510688 186486977 282133035 119528610 291262635 216293344 237725715 65713397 207894574 139521203 974314898 207878410 750087177 134159148 678270260 329930349 469086466 396069125 936172544 231896482 672108703 294322504 778395832 13726805 628040288 133339097 562708226 171647181 875851405 82193014 809859912 117183535 347837775 242400732 987061201 90475156 543602588 227955345 590200480 37587016 157833861 125302181 131157093 40170176 312484797 253035931 774070682 115691961 542079144 452758440 533877875 237658388 893565035 381813494 435574209 26908349 74785251 47739124 549402635 8739263 497627562 159401231 472134994 270200317 439802469 136720015 521169617 65965328 754251575 29709202 875864801 229633724 303457123 271501215 507218787 46254336 533648198 198160138 383590749 377555894 819390550 613031368 986030138 136401029 993297554 630825942 923281607 520610303 684773337 475368743 599110384 588889194 656939431 319924338 601495540 65907036 224759060 200324357 886033326 706057012 864268383 438312539 651041053 223594028 760579093 387734478 477353365 393504268 669204103 279721453 659906215 88105582 144474882 19864650 608052792 466828184 769663735 576547033 674251961 628371687 988144136 193089034 271362297 192995216 301374751 139617998 807003556 182753993 989431006 609104854 703821034 308092911 784154091 270575098 682504609 470444452 565494407 166664441 581101357 31870459 268550334 205739786 472293832 306205721 579649520 31126742 128601648 88714246 914587067 873575758 974721795 715079631 820343390 388101366 640188834 442950744 898983809 791568705 858200203 132693168 541418086 443196862 616711371 285568345 453648506 266643732 995034187 872763281 874529740 544592367 606855138 151027300 631438216 543988652 840494800 492765965 720283230 45704233 498804100 486576727 945561049 695791294 740564355 115135299 702934596 695462895 952609017 324529450 539891609 328523329 655542218 572388542 957620988 820367591 826251982 563371242 774491125 153434789 640749362 625521059 632886745 383563292 648200166 479796625 657138353 105491214 855990912 459265909 914460872 497958927 996461502 524601765 740567724 189148366 406962739 217905489 248563384 236429817 482387145 87156522 681706332 97312683 648330969 552253595 559998353 511668717 637326608 418885397 729322776 13512949 963183384 734181624 935173263 97361717 737148100 572536553 733219520 690452839 935300972 129700467 999767011 169117084 820677057 499362252 929355240 767871175 887884365 751059181 827398915 92451327 968522205 483902816 877975357 656620045 869453162 202764374 997500724 696716311 798407751 176779682 413553156 305788628 836196242 206324570 497036516 4211808 860793692 698134491 861762124 269690249 542802271 62547936 983719255 79242863 473822537 346570322 825176869 524444363 626029254 566947434 572956843 479050360 618450953 112256312 537700775 496207406 871695656 711291237 920834514 783249348 933358697 617004622 888476432 31110470 508786706 471414736 923250370 564153926 764191329 665986132 844657104 362476033 506988207 270191141 590896531 154436845 301059636 107168673 612724459 141731375 711286393 481223350 489705306 10099536 224224876 65637167 449125759 183641539 226341912 192798096 387185278 350159860 886979776 543409678 965984566 700220844 869659641 746387636 834342463 333596734 477868971 69395736 388150513 197246162 788491204 364860119 847201931 114304147 468173881 328858317 729059085 545411237 710106889 434668740 559896336 528607562 790085210 340321015 773824925 708346964 933030298 149644603 521240248 518508105 555115971 392874230 455222903 122359241 752855015 531076306 794603446 498403204 519761563 396336114 589758454 414212430 920020246 689345628 908917533 310875956 938365594 675942652 971321501 141586598 841559188 818099665 872202580 217444439 793209525 94453858 831486375 252931414 502389118 241855176 306651130 186865558 426094610 301819447 386946514 27603043 923475006 362669638 764766191 627414919 676308223 304511898 802389869 40313601 352817420 34027845 833461742 612153839 826047769 686252619 994406137 586099164 651399928 383854646 738383746 89034614 629974394 613840551 814416366 38958074 434895878 377737611 836058914 217857245 688575978 59207465 500030426 332993773 371501036 228467614 404374092 358175135 614608772 220769916 849568341 615938334 770458175 216527953 480683379 65836416 148279799 51206580 112326537 11966416 198004434 41979849 831996861 98353752 716270584 110874301 955572165 642504972 772163749 180405807 645045833 149847678 369046857 270034842 277141307 268158449 348202680 311334948 398518188 367689124 574653571 507290138 644392646 135905573 736638946 541418345 582338180 139939313 525045767 459273913 822690472 313486360 935004745 886879298 969800055 204575968 971642360 928684244 991530822 129534294 648894362 28717667 707850567 696023853 942347668 267586938 602823264 221710886 327010415 28278551 669869995 496789466 834283868 33301375 364849612 361203626 768413338 248250689 732329863 537891652 799111319 782617953 899163223 127762936 489682933 425210749 916542325 435580246 626042027 399914766 543091523 50567945 370581044 138280204 536762588 458834465 667054674 461351045 789821855 356984634 637744012 69968075 943192857 147182912 890665908 87070012 612700654 555538824 851590721 724083534 774100763 527876218 534345090 18488347 317938912 183535083 800118231 242741798 835941614 226906019 256384983 231584484 775975204 396543948 843864598 156936684 817828266 547669446 620900833 303744464 932094004 12827129 50474254 44923942 640089686 588344671 778550175 183688018 939104502 745031884 838252194 461886425 545344485 466583808 767565514 542302231 926739868 253095163 845762305 625773490 750499640 561591276 573165574 300886069 647748271 237158898 837652403 643568623 728485178 263967963 836619216 169278528 533202881 103234526 125696481 20651305 430085391 251663258 403378314 269011703 369200753 343379478 569994863 136779367 292358209 135409974 558947518 317473578 432159113 58553653 585317965 581649008 692838193 58851108 688632977 306156676 512651559 173163694 969871966 266472842 978360221 791953459 850658138 603182649 812275917 504192847 563029812 83386133 293212379 52459772 994423179 450448448 633306844 583340058 955207201 346969663 610243334 375276498 878375292 7728192 903666432 529833890 653674520 158261467 412725050 385021835 611336419 75279965 879606723 329313394 739793068 313012017 597780433 492285442 508274408 447427524 461257779 128600152 667666198 296577101 941287317 488781029 747382522 637822507 671876383 425208756 857655379 841301080 957394642 937244484 982419885 170630868 820063852 101153235 802050791 400814082 985431891 368276942 517538281 395700019 985252905 438179880 772961542 329101440 471477321 198529645 679720636 22145129 404527214 222011821 725757451 574863056 8469425 332372958 47246672 710000153 41191919 63394509 26971412 151190189 63724885 66043329 45734539 514765548 62882432 442306300 255387479 287094724 65198164 428615661 188972766 315161156 115708433 151398894 88399872 447302279 353720825 991546461 821498391 893263986 625377189 628025133 107312075 881736104 400523190 858851301 13637585 394285314 226344161 879127183 706549225 742529880 109048185 414707430 122191530 416465023 149932348 242026928 234761698 515022375 128704903 205658151 96741277 290690263 36660153 847760741 358087128 666792120 652346044 670813787 596680372 889666571 453046309 700628900 640888369 673243023 457196364 756525175 30760230 424898212 344767453 816501364 559192569 952778746 315550602 446007084 102705551 165926809 145517457 372655309 67546150 981938771 906941132 971340652 515487726 937542464 539523113 588103194 107341017 152465010 56536952 263541960 220916048 766549246 553843600 749926538 407946815 916155338 68783448 508411689 489124472 545761377 281190456 621560876 23837100 863565722 8605075 265845571 200426703 390916174 168208803 502903706 390747242 623126177 469919765 777983921 19415977 736833977 318499261 550070428 415808908 871942280 496071443 767382968 522406649 784085851 282525324 633712830 120570482 793422129 747724393 799718509 154097888 592160377 407788148 914430147 433814159 759018250 150189124 283337435 237688338 607178503 388414186 703696866 677503978 929277787 878584431 985820249 765907796 788871062 491360084 629591149 31699701 56511992 50954056 807917381 328660307 876602442 116047631 651052438 184607243 308874005 65308949 910018751 177167198 947429074 841973559 878754157 644085032 845235223 633452810 852036557 753751911 979972514 477246350 515599348 96321610 705239173 278550488 588721501 522952138 527703358 406024260 984918313 979476140 980596876 789243403 836405868 622281074 906573982 520388298 999855583 240318046 437726868 228262271 736723922 17803567 325566617 295754404 432152394 403460148 541872305 428741713 982507967 410804778 536226682 78017457 876675917 721137322 798389974 506096332 962860862 806559715 841081413 156949913 752770988 142443032 757266309 336754875 572394936 560712057 985058242 840723543 895479651 73825896 814184945 773795914 987781663 649047506 672441230 99120390 943376565 906300494 982123816 429564437 685648549 552207185 858915084 97167817 671421434 155213088 256711582 109752593 887313464 259527693 684623428 21834324 844481743 717640087 793723404 557857850 945178921 404723391 893625456 502842151 745737593 187089437 637254749 127270262 261334988 122040592 689544357 323403435 555537839 334634014 773455627 630741296 689310759 16777762 216226267 15774405 490616149 264328139 358410858 60612429 342302803 314210822 514106968 61273937 767743408 572011209 995789669 285570540 986659199 355077220 978667025 972470385 992905136 637776384 649915011 115033157 695234584 564051219 697343054 387783257 583282242 174398050 275201886 124876114 408816182 314454243 992828762 897907574 951792874 823210385 932748029 406449684 968358418 494075535 496659790 115516744 223646663 94362386 742669662 620708551 820304020 181874291 536949555 197389419 977412361 654031093 845022576 694360020 986594983 966154256 968193194 826663916 901555272 730617552 933451019 5054002 277622891 80572531 493318408 305668537 984897655 138845255 155874036 10354950 186006550 175443023 337623596 207210493 347646189 94165493 670879672 121119860 733567334 192408170 876971670 39743601 647536134 183112345 964688594 343942502 734153902 269412533 443072603 401727016 746468041 60351576 63077042 6575154 154227589 153077621 180939349 87043007 592920491 390734944 859492059 515193223 921448164 695540781 700066076 258391118 690945826 284033978 625850911 616967663 914674294 255557494 747754900 30002631 558920816 285526808 588879082 499151462 884710693 742127831 936000846 434343165 770271436 652391301 761384298 580971831 875801105 475131751 807275668 485168076 607872402 272857770 637189359 438957650 778315862 525219251 978799337 703115649 814734990 86797133 564706343 290050448 373666880 278575652 858929193 791618091 859272638 810833582 941389326 257954128 489327847 80838128 720852880 303701042 833160080 62900414 83549692 28654110 616395833 202170226 900318639 477642185 548597313 525747166 645786096 147764283 292391736 206460375 638450473 336403001 933392491 662190531 854045535 700164021 908455983 371378648 628430458 272515543 491951202 281578572 587756974 189443047 811020372 13634973 90124618 86299611 528767104 345186510 379364579 178086119 917893199 566853829 987043831 61402852 499666775 334379126 750103487 226672781 703974324 75295445 712585271 579513136 647174957 168415479 704939660 61264231 432917480 405469480 980394195 965888215 970604758 842037941 921822180 250452697 802443013 366892842 412600795 335994066 539305790 102253964 661520794 224256426 649717121 488553627 817119980 522428475 896028684 400203050 402588054 11890696 893415018 435698912 792086575 658627928 871437151 171643789 604048383 525194358 605165465 318688670 713860503 155942813 165638532 73596582 252525484 5601269 256826750 59382454 916313631 578292427 679932817 449240587 746980109 160407723 223762352 112363037 207733503 203304565 749793212 686092615 926258109 685823044 849100625 93404458 313232691 32378331 364410524 312116917 679419186 217362188 402537043 58825887 743533614 56326717 133083020 77782277 242538063 237146066 898635160 46274305 775067759 406840952 589649164 386837967 718080665 238238512 520866758 244067949 332616192 214282128 516828239 86345687 520586171 234138552 303022101 198819098 308900286 28683214 590270462 504465107 577977468 650129042 478178397 922649000 419316260 436646180 270250127 763270236 13924206 384174226 201397359 803539750 767653713 958019027 122204214 420835428 54002122 297014550 283526356 508637601 156040659 938455378 821788182 907225053 79892219 872370340 268260473 333921474 32918754 108333807 61823401 237327541 120738122 887759787 437526503 650066092 440551663 589609323 47022460 160407512 130497671 934844607 521862546 596369135 402470816 851822925 233583024 916557960 392597245 490099719 218279751 409877950 177059007 717168336 407725414 515200129 60797015 486763682 349041076 816255133 144851118 927609258 876106208 920489166 714083249 833631219 115385068 943413406 431961199 768448243 337095666 402346576 133929216 588604247 147541001 882778516 267078848 821490445 364561533 549280281 400911148 777300663 692145792 922332497 546110480 729527949 336007033 469982738 330706598 636409789 323687904 772880018 487257143 926522166 775899244 788351069 392693164 617035145 289903443 694547073 390456525 906002111 113361975 966110963 477658856 584564606 124885665 255919227 247398137 446571318 410659293 595442377 12971608 444143792 248726938 681069191 1634134 533602432 311805284 510578115 265309997 793063741 181611317 911342760 134900107 977151594 411230779 801940782 154184550 666405037 212573321 679826259 189636723 533555885 90353869 973450615 723149541 739238552 188423049 787053695 93672330 152066899 54903996 680381853 326047244 701374163 694794780 962567005 407249863 765189210 379232331 677914852 110528553 656281966 352748107 875351079 13340235 144326005 84998235 848217430 465629269 831392842 162119795 710643185 402428522 926919939 236072821 535024785 156693858 680066502 522971331 555119440 426540645 877504941 859323745 863831361 247674529 848274326 476936588 452902924 819548647 287532627 829738441 268875231 476642866 193378878 435599722 222049989 908960999 697742996 871920120 273783992 891623977 717706787 992625249 618669227 891258826 464349466 641818009 95402089 142402099 102619768 399200627 61074434 774728873 136471504 806438008 106608296 360142702 348326788 451943215 156754715 473187411 197269361 279722243 28163198 543356973 138794614 608402654 360726488 561726083 511016807 749517887 540523863 694859066 396787806 938196470 257509148 537633386 27906152 876881704 399592746 649499211 317868034 762835593 757155694 768926095 19601748 823283125 610717392 989809987 125590752 658758588 426463277 798739543 246762085 588280856 531390943 930182522 147189604 626364344 336106443 768717272 659230819 925951823 627661347 745429041 199550867 200874800 13838570 298432223 75594373 747724547 241776353 540684186 241031606 855297714 44703893 108403656 60392650 826015746 301143126 952395388 402878591 876701847 117065041 296872821 123635082 765902747 411971042 502260702 3071039 604444230 394114447 887600984 522461157 902700123 144144325 207648786 21219574 372483046 76574954 336415032 150576736 823913529 200430601 392206677 107877468 459515629 226025515 263418934 237066483 729137505 52396322 949823784 821232057 894250488 524029733 924408279 794802345 991241109 894289070 902105015 137322106 329486062 123831294 524484685 487981156 724153258 638453573 945625808 650563198 843003003 291314562 539270863 241514221 523193923 218158011 480931161 241409894 879270503 679306067 708438708 688769018 857581725 610984362 852228130 714588135 748545348 523149059 741040332 365635016 729710999 322716102 761996931 428672497 756010333 660326522 678052864 188507037 610951689 467474076 930851850 845855079 976327039 296028417 800420667 103240655 820412174 679585136 923508450 248703800 860488904 318195402 843339096 528017879 576023697 414091266 789116483 458514110 583723322 437399420 609075188 411727276 765561766 335671009 983978369 545584469 768767136 409870607 782818547 168385577 388154202 251381894 569151566 449792225 828145793 302364673 658437781 506584492 734020358 20649821 62925678 46881799 120257613 10257033 968832890 902029666 923639921 607339304 820776919 534067551 718388895 409677167 552351834 504956332 945987591 406919380 534736135 440916120 769298428 522311856 887139735 20568812 842171639 341372109 745139823 77192490 157703619 1767740 705430678 508435260 783708918 160588757 832328946 461385400 589145662 237788371 599520969 124570199 217455610 167577997 596699712 184241811 770464337 729530181 821675851 373987119 954281600 715491337 855343098 253571312 308880318 194651045 264938283 90723008 100064083 9730455 59215752 20093460 903432487 2397081 186400591 80400693 812922064 280341817 874243317 308567964 658950200 358610421 816176888 411400538 417499393 188550000 732035295 676353673 689077202 555999525 965075639 236346215 510227916 377044430 615354049 294266433 802833362 604320140 626085928 506856632 822164855 659178063 920424103 162944152 798802960 217340215 663750706 5814834 346982893 303511009 628752410 328874361 399684769 131229572 622350722 472800797 662702417 287687205 360367288 354144103 963293892 324239707 905137499 630147246 711755370 462570413 564463219 473303616 579372192 161934948 961568987 818252870 929911593 632860515 699774722 402424725 673350136 289979747 387620410 265622589 701629244 156349072 185207140 11804711 319322860 939608344 2384980 312788366 198479147 896437503 140893695 271804040 119019215 444144363 549155 264933390 216296562 739948010 212417788 763650814 341591854 448244104 202178567 766478976 638196484 899502665 377937577 865543799 67154011 911956219 710329200 983042826 921185316 954658265 165009387 415461378 259096835 306702996 82677497 343269195 48403802 966647440 257679228 317692926 202931522 711446550 114333050 517513713 164430341 276655274 163992791 335477399 149887665 230968960 91661200 466974097 341411114 433180921 261317313 401783014 209350839 423110958 127146626 850979653 89787116 298520656 108652023 635445384 26356529 832977975 316806355 964205398 390729638 915497225 471611586 563624853 454253010 958918935 522590470 535039498 194875527 953506509 34826504 239873546 74731233 720006994 78940693 398520867 132646135 617800797 531881217 561242753 37964692 529624894 153975995 881579363 245349374 254432463 242314626 783963285 303625583 868020030 162262876 651366256 620451521 987851558 336584659 886851016 789993415 899758323 169560071 389375110 211387621 740349951 331146614 928368127 372194761 450465670 13158763 851970701 503275268 772257916 498575320 594597683 299442780 512432651 284183204 318657732 235358960 927120684 589801504 666931318 484897519 708461699 13126401 915915886 691910192 905985977 294515689 901423835 418829281 843784981 428298490 805208077 127646164 670789921 582720543 845865024 393159931 828608501 578395534 616851223 230954210 951767211 173548196 587864526 280983742 939817261 889391559 966971856 19604475 253456753 159178925 184378972 29075088 832538717 400976256 511183090 385943726 609547073 285304645 597679041 334132948 728410154 697056320 750193116 602289095 877109021 4493292 493855596 128256278 473936650 11927482 82609432 31137596 67756490 9380126 797475421 585178618 732291467 433203969 914094637 797622091 946584086 561745146 619061164 124587853 763789589 678169014 703573800 8057341 146249930 38395140 551157004 493502687 851963238 677580464 367174227 867152465 754244060 959138644 824883898 971476559 764239030 868472945 394194311 693166454 547192357 768575658 972205325
