500000 1 28107328 613212742 298033960 717578055 811519556 381018673 877601515 59549871 251106448 140059637 9338094 263673920 974465790 222222755 311887446 587988629 737926605 342477735 601145596 357286479 613585457 636225890 874817462 617229993 972472144 825621812 985047277 878730882 588481362 952957789 504121435 979605887 853807369 469161318 648602534 678489250 886742652 649490910 162197786 122424728 595536943 951815797 650914998 841105923 8734017 994290308 810966594 744080962 112595505 304878348 125973135 723407305 226082651 404708747 387211988 178295654 760447395 476000729 46184632 437905177 370907370 568561129 880069668 646192892 709564811 238311130 85739550 118493768 75735086 347515381 345416748 385830754 656912660 727077446 990804770 463719464 242302268 966176970 48947645 861643828 623825743 323957422 66988701 697086166 119118935 331160072 160459110 977912418 638731855 766394133 188683885 432940740 654990136 71871221 643993975 971795287 231959793 962521429 524634223 61165361 40087589 90215325 635045741 768421379 613210653 822069459 831152508 730723735 694325489 224185110 447278979 462971034 546595020 47012090 209954181 814859842 53287947 242106218 949436066 571072227 50303019 166110938 220018131 418619455 167272773 947064644 879181604 212194209 926020742 553580281 772512497 534601952 721166798 11184012 206155468 561742989 488315773 469481605 930847161 16478809 638794236 828678949 285043883 765904334 542820060 397577409 566287839 635320795 352665650 8580526 630922354 456887007 387625043 502148045 662086219 842267891 751178617 911904062 401574752 42287744 731197166 71842902 886589628 684018756 540067363 679704841 817002295 273244960 618247812 995869572 418836199 931726587 575438783 785899118 394424321 869622471 185611933 574068131 322120573 854829207 849616086 459799031 865486179 773317005 281484454 448460949 510172465 546221679 236645458 798045523 773797025 20779707 277459241 438728846 273159788 732419503 562478937 201439839 697089158 51826066 829041283 843960251 215908992 174130204 1914968 26402513 839731027 884752481 144017233 608245227 687094115 992009418 673532780 769034987 450196783 160710190 787015128 610573727 864010197 453651160 907740988 813567669 202152725 375192283 304815114 346321626 227218308 658286322 732597426 423593803 806713733 651821251 525913779 177459480 538531136 114145414 881922168 219937905 131965626 202202428 115561747 455377493 473272961 286449541 356244381 394671352 692093303 515823127 621026939 849363715 174996464 265561038 248802895 522000453 251127932 29192880 370385950 863863423 203008055 539864085 131854348 585074748 21274780 403835823 293108444 326184094 332707609 343322438 856534612 783037904 337423090 460573535 883033304 45802966 840715508 313550844 644311686 2552365 750894140 940116455 205481958 567409304 316025643 63702423 590797408 256712468 78500624 536346113 933690762 576270955 732148491 962828554 650465464 417569810 185636302 214402145 865043130 967160599 55798841 496843686 952867618 253497712 112628244 275338893 688803295 806108971 399141058 23143852 406218524 293623207 342819045 622481731 492426862 174705129 330586039 778360913 162237342 257950160 226682416 201831833 487884578 57967707 436994664 859503753 760715430 797789523 131222160 675880339 210579093 68271953 197678541 391115030 417794278 755569239 539130080 367564263 318428346 733860173 429342615 190160045 763532175 358339440 858714725 889301309 201717592 189253007 461807206 722389719 529820027 602098642 359652032 343304195 813515030 853699661 226397854 290685833 642084730 967408622 440938328 698116343 578270034 384080158 596228532 872358921 397504174 80034017 723270765 866724482 9979363 85115547 396158329 185527350 165476688 282269361 774351645 113276598 387333879 504834585 554583525 850918072 401608517 648522942 706564473 593150423 34975472 888136084 117984105 885942374 38519089 516423480 988203940 429662275 256144086 48825646 44940955 163561499 755340859 697445551 934336308 677745021 650567647 654492165 911423209 19462071 915254357 555160831 611795349 451916947 669537066 370479667 819699971 445374877 889791995 824575955 508461837 495175673 631689453 707083582 178243224 355149899 646292806 531695576 862855171 461066749 742411542 113817090 782501826 698486433 543363669 336723492 101859270 278236683 760349364 786871519 497186628 36869318 310039510 518060290 219202794 18013550 429332729 74049240 915533242 626417465 287425287 828245859 810390341 624397771 869407578 535498093 546861788 517120539 65249133 517108814 747811583 44593779 123163733 301023611 102791862 817838038 41973168 509071187 374978568 197429514 954409772 669804323 14690920 88541927 1895346 310261889 536288882 484616819 771990436 684654228 399205552 341850394 905864592 19416930 509672420 614347014 881994555 671112613 841370513 31336339 441348870 981615345 687421886 965028434 783572335 621021114 354894898 879854057 584794156 359215515 371552093 985222429 640773803 294431041 700162620 376952645 701144176 944396450 946696702 688217174 413470957 470386888 7014698 66065388 922437090 661973681 521429644 462572085 977661160 234375422 356117216 396372115 566456539 391582481 94334445 227262705 307651945 456174987 754690750 522865554 25123490 783345 145975832 468784683 743951099 795224178 567771196 599638402 739074252 749695405 367070368 210047329 917273209 315882769 22613223 165959478 169529495 45760120 618770028 114340169 365405132 917909595 804855829 220591265 33803632 90458165 264663968 992010429 341682031 147870439 899502000 608645862 66261820 123171875 588964615 114742425 547967474 216390546 271684728 56290367 268000503 127059039 438308699 544034400 197225806 80091316 423393441 687601934 307908030 66516764 461218559 926084702 900899794 792910164 102261727 458412404 260503400 136846250 887723107 702070451 670189237 88990077 238429102 331647820 860944618 786886835 529034505 333881839 519629937 410136407 714662885 32418814 165524324 369088608 952694291 3380215 297135067 774602827 21282906 210098952 374838661 319507634 115865375 431380242 924899638 446021541 103825877 564669429 551265632 838335130 461299213 133295569 956323209 859291801 584801138 715942219 390813440 644303143 914094228 462290962 988593855 938031443 937361176 740194809 400247884 869329153 774196333 922552897 287270638 773948390 643522495 227429522 949067619 121663414 504454871 170596048 711377281 934461706 933790637 531216758 558629836 624037583 510518665 1151012 984237990 245082653 844301486 61666872 520564722 786602430 256980218 541426300 34049689 426900731 650412162 88666912 141426253 998523927 655860319 515851266 316443311 497786823 580990022 261031623 629896950 978268234 466359279 292261280 463485496 835824017 856552377 47915215 85368129 811236944 547480017 409386780 414090988 367134597 30392488 562746570 184805501 649799340 910521173 991324985 902463391 12876091 669256519 36846262 230920522 787996808 75977371 92010041 576798769 814513143 51609228 157431114 882899802 369272291 246520585 482198000 659722973 245824354 474955103 7514643 862989804 747568137 659577081 931093627 477688144 18533868 167156164 980208893 911386939 327046601 615691939 52559733 624138023 448833946 261800563 762836962 825347148 386878953 402216547 883083152 441644589 623251182 651683285 270785977 379055065 305817865 208399766 639984089 961501277 537519306 763271335 927457137 159052853 340976546 746161025 527992198 27906971 497529891 695373283 900557905 355957537 11353454 123343257 723707814 404259265 159293793 793119249 966794460 359249338 162471485 570303176 489350374 706118724 505811412 752025436 907244495 673073971 686308388 950373646 434303286 170048460 433248119 35903163 948197325 43857410 22036524 125328460 309518239 554078004 576166499 179649147 53271861 455698752 180222672 613635420 331553570 884622551 209757162 472312842 841796129 93179420 161567064 426499324 758297130 168001408 129109867 802621980 540095858 20700729 459177980 904317772 531192467 824299746 895432468 552111380 88896258 962272114 287639588 943729360 1737331 935298656 832689613 287224479 565719117 593350940 20975091 260962293 8640575 387145762 133915912 908165903 900078575 827415351 466519030 277302656 617949987 465933731 390583728 26060136 273076538 67534090 66813122 502295950 598851209 121024181 32032118 982304628 23589811 573288565 320187109 860851011 908481901 202117877 524244448 980256910 103298226 397461231 56911253 846790797 886290144 355706674 82596560 433398622 414225124 91580371 285033244 377703733 144000647 617144466 331971224 408350370 828175689 92162388 88102283 39111991 339354498 850841951 948153893 252732223 213842108 955500035 432885602 473816742 67814095 528786885 251504248 2633390 679296883 705165180 531392538 925995742 454309767 646176717 28575152 406500796 687980833 433304162 107837856 259380147 149338606 568468254 823419758 712130420 712149967 28083167 332442814 441957494 554697139 52483372 357754361 739176003 857428441 906204241 590090798 783596685 917778903 325584011 131325800 767068136 929438799 274584438 135898018 262491728 210520549 233078728 535166748 83735951 813764922 570111615 595718733 539912497 639288808 935662794 997077995 932236294 155612877 20661062 628646642 619353471 508119914 391420787 402137171 657535754 370992298 660741458 660423138 19654133 322852317 333191492 552037505 292292346 428123489 231607889 859256299 704741273 968719318 939351146 908906844 180638147 620697935 213988078 624581608 263941976 193656887 638287300 340449032 503001344 143061788 451083379 433724948 88292360 995961048 522494448 859147143 249901680 168818029 733769443 175744503 445945385 210384825 161302159 101419587 493883570 994000789 651870685 445049979 953149069 509102844 694964348 452409767 142414464 857811554 928482099 48323686 614047514 543792983 204936090 930293356 198718654 505745718 780110817 947249080 980084812 838737491 757373165 733116690 114569142 927113024 632145307 745867284 337883520 621255086 876970577 707831931 326175036 660258228 259332971 852178371 783847445 488272136 288561229 283509589 583493462 454062833 741417657 569479548 170311355 803249575 370923138 659387657 145122339 150297292 286844460 219419692 990654129 197128878 19390941 695627066 905562434 576423834 588265346 953180061 255285006 431066920 139465750 982136205 583082600 990560921 528414238 440787192 830299558 163596940 129555026 651165884 820754965 284971350 252536792 820022841 989262015 275038686 101425962 483617069 989340852 908053836 954365873 763684263 177710111 255029874 526165863 442503360 139551376 570972144 958668052 445081136 891746175 410707282 549942996 437725713 566383130 361367897 58276001 88399873 415824200 817491556 257418194 410345458 663993747 999616652 200413562 884595899 238802066 619282867 371422838 504779296 372308518 723549748 154733209 77882278 33402027 111212997 25853856 260538009 21875225 995506362 723201045 819715665 889694908 855497833 50370787 725542145 7150685 549217080 233385683 72871781 416632212 270374623 719652122 742356781 942400067 701648912 819387051 272332569 64115633 665533807 184422644 24622922 642786443 78267789 725373383 887908831 747590663 315648458 144994023 984088853 945058784 677058306 381693015 280058311 945544579 141311070 142178063 456296081 662397578 324234823 56064700 972255735 614745017 615948250 718044599 796876124 208874541 387174203 685921853 653062796 284915274 700970884 596549517 256489937 10471050 106676215 234987721 783007844 147215410 825447501 495435823 532939577 302851045 321332027 832169740 726345928 127883496 447013282 512300391 568040152 520424285 453117928 939173377 410435161 184529021 978039406 78995960 256386476 463958147 430322689 40082980 261262133 857327489 495966654 839563684 444924760 945222126 625036847 465976251 74242800 711912741 960838272 872043316 157724313 681931308 780934297 242257446 76914797 60444845 427431575 951703734 433122019 962112464 266891746 386424880 674771094 93019048 538686862 892749009 896143696 300114119 885283192 348082757 786491687 381729846 686613952 167258546 255182309 200721927 282932451 48855749 285732790 657728098 293695575 85969980 89950304 901358088 53851073 140991412 636157578 203342841 563725758 49561576 980003729 46873844 269589616 569690585 791981726 280997499 218812996 77250842 766562348 629132349 875647774 455299900 430639246 703764119 305085716 992928166 669326789 85140390 111965615 471944081 782451792 574430962 158946224 957682187 149346256 344647700 920827403 378725625 678344947 175159065 531069146 673294405 275538083 608031709 570338489 169962989 522153294 347222424 729068938 260369859 201001413 273240346 164398256 381654095 579871281 341448967 221367376 928432307 557710475 626179489 864186869 523275089 151131658 902348101 591733637 274260182 386209876 367100032 106897271 138137495 567552054 304037400 890370591 123809121 485808608 985013433 412858626 568248868 274648064 497114765 559878169 360331024 601327890 466359624 473610078 890443656 331584266 423217551 410796286 319761744 905215393 809323057 469842465 12394473 656709324 730549133 10981695 818319136 959964708 602991407 149012511 668157679 317375964 223102710 101280785 781254836 508995228 131019775 226812386 522644823 182916302 588214703 420498277 883671169 31529002 430379788 449344660 544885863 932780847 662850725 316747380 604615245 418957276 45309298 197672944 526940688 529538470 249889280 689113108 248603594 80977220 646178671 920017369 157159660 240956733 510211963 874959985 953582936 887550545 848442928 3348715 698774488 337305826 718117528 73553953 407367914 889873742 988040872 18276733 236444890 921832144 542987318 304035601 58619911 394398378 423131662 400567591 242439309 436805470 571504879 935912072 893946180 278847843 650610772 196945643 186282238 944646243 528788321 436713057 342976318 141864992 93702561 192791410 226789184 942096614 351950737 104722598 777143827 70021888 966977341 427389093 763869652 370259414 663577889 989892711 447008801 678951710 267107527 128253644 85358097 527115293 817577753 869254364 222380801 240551581 824987230 276023353 684515912 187770166 103837240 999380165 732278275 962430227 211865269 159962245 634908081 58631888 296012960 463949626 497294670 175958306 643532943 354130561 350027356 661272623 3572768 367390317 225383744 596212130 468844208 718275893 661341393 502058427 807372239 707147099 250023255 830694980 894655848 584648685 758703460 612838076 993692969 896723734 166989964 630890022 282896715 936513753 968092044 618069378 209194655 860923022 341014690 326094451 999197138 848625343 603589441 937263204 405130064 636665376 271532393 999171687 337553880 140119710 803077330 371495159 318980851 315481949 902776678 956923406 937064013 810964034 732968489 361546213 959354897 179395756 876892384 964300201 595767398 592471543 205719789 940364390 74926753 525854409 940824400 919097516 785420089 461412777 78230996 936931261 390176163 231620127 162139699 606813732 36596054 889241649 758714676 101245579 774257478 504142702 84918084 509560526 637446024 624783516 179228474 796379484 536208676 256808232 811301316 288164568 470893279 943970789 116575031 374488738 628545633 325932548 394217015 237244997 253014738 765389862 559398940 664838039 52268247 396418058 431709643 832560966 856714688 184096886 143257379 869670371 243136344 67379812 746839568 968568933 43835824 153306789 381409096 435022774 675374131 148088982 890267711 51022800 1141521 645985177 901759509 89990630 199355003 482433273 829356977 238145445 741267141 286070993 472725118 399780528 544229906 892206867 287664045 256050146 988674940 132840722 884558346 11711600 532157239 992763854 662182693 492266078 652990365 138425390 690288483 275511088 876087604 921956389 593670191 208970925 699987171 229940616 618430162 543343328 372874311 265645345 261127093 794833281 439614422 443515859 724771747 659781175 315227120 581775999 763768426 819514573 283244859 134338922 787969019 92719753 59450224 985479644 743363771 647363793 335104171 557470925 650113053 435505144 379513595 636172327 459676412 367505934 3778449 293403818 60863424 644072059 630830348 615352457 637050749 299730455 582102409 180466229 164137785 451818192 453898948 601194978 915006908 670131318 556098808 529845784 371099560 520050786 130098610 512069401 994729570 116094552 940515953 541457467 936845990 946387134 277864359 911592020 470181103 101591374 310690014 872858891 671073039 251146906 996229553 270204418 381489290 86462612 948337231 281281605 910485856 137029831 857264165 771821332 651515373 250095770 188004554 671849111 760842399 428903382 708300683 594097497 19838952 544523149 917246944 630103213 403541760 845923893 790446083 206044208 697325519 698942640 127836216 821559060 253602938 558586867 697479123 531479198 230581208 542537794 31166890 105616709 22526454 482689965 561699767 833333117 919007740 226261304 682727275 575878172 790140925 294462702 126936923 550569863 894878339 196222321 629820520 74381525 877560197 88868450 505863357 924071532 941764058 739940117 568014586 465890746 15584464 494328797 78762508 238537661 291624881 960544339 244543459 191421893 133718979 648900263 271814312 95136735 14985741 618600237 655149384 904026719 69559416 29129382 959083895 142649088 335188547 96122778 989390815 518921619 482049760 219138715 585369352 692464443 540328657 905384906 160158261 544547004 742502507 850976917 884403890 844244909 368731036 421098811 989517927 358018718 370532081 464329265 82604634 684261243 337192811 289806745 997215932 388642311 719425543 915424366 43592309 820252536 817198084 285165479 386951073 646848583 872370221 923262396 730790176 332168851 771638032 742326164 105341787 392961955 202435379 167002910 821078956 676141197 176083130 127048825 465646086 502380092 831994751 529302373 829987870 291668877 683135704 106855688 78543156 998405795 967250345 615757419 199496704 306195464 508115176 245322574 646585723 837683828 306841524 779335136 157401791 605114407 232654752 742767541 878583797 995595410 988377650 287888498 96889104 970065926 564722808 327407374 18617211 808425100 3035326 994963403 582510004 866600391 691035839 685871452 393179581 275792652 38798879 219809597 732767627 905747015 149918755 150546991 387228050 148911105 268905032 627740190 153807002 337245246 553044696 38615087 335922405 160609303 559399294 422648222 744596352 242532859 833573094 240541823 652789811 92891385 220930978 854643129 202698048 369685514 322703585 474331110 737508045 342805561 15553686 260770101 978593966 604662388 508827429 217129895 655280708 851847558 893808888 181712474 433923158 501918880 393548379 35528808 441925147 852182772 600730641 160722715 988900932 631856503 344949331 198595435 482141476 376790254 853580931 26242310 576564564 103548183 968561399 253028551 640123616 135547002 148989961 551632892 532318472 939001788 784104197 683768137 946679292 121085471 301505616 617990766 919159100 775823592 334801574 136056390 963351087 214376260 770973562 825426766 505329272 520202908 969377960 651457673 818183310 199237190 413238194 330952680 832162354 527900760 326963590 605831136 741680774 468675397 857429281 571366440 296332810 79546047 495682270 911038522 284892302 336517356 451005463 938087900 151799389 758861402 353753301 889667436 100935028 942846311 914362041 622142752 37566836 707027195 249786620 81575829 284808710 431955524 240610250 163587978 650070340 769024390 768004316 735215733 400301529 855674561 529200969 241335200 434262032 12134452 440788517 766438785 167181457 509771847 305232501 575375994 639588607 21432288 393978973 545521649 580878265 276050529 542815239 936964640 79175958 722751197 813647437 906916712 123880097 756538230 560428633 845669996 514911512 238905360 377554074 441009423 328483946 823441504 564031459 533945523 512560003 752994618 560287304 312562892 786701172 276522301 964990766 457103281 828385332 139829857 801898815 317770749 739881383 586848418 380908262 679582078 700327557 169852920 620134641 487630255 276311957 383084851 843985419 592690950 670184427 845898982 326506863 987059698 716824794 423780887 489988901 546040481 956665259 718210003 545157126 443986170 773959147 231564708 702461926 931765645 985264477 742173505 271886377 947060383 512397951 104238493 297412238 855745487 992649571 678973149 427294612 942791903 289997462 831633946 769716945 109322382 270821806 164159576 753808110 476503644 275270743 247192999 412867608 384945799 208558501 327320483 890712029 293631378 2710649 816467139 851171232 83060861 873778181 186868013 316264762 313521744 451413441 206509483 768946494 123167244 738849238 46773353 86626747 195558603 622552947 929559510 936317306 882409362 889081976 206760492 98526559 467395780 572407124 285463068 266497599 653933231 913562753 508687611 437698329 623525666 447112162 200870797 625670593 783784520 594292996 590201168 180535846 873512650 399566859 462163414 588982964 50631503 727679832 818541015 757828258 463877803 791364077 411012925 796944457 623999392 764720924 371946772 417919871 879724838 508659517 790510994 121762669 915083696 245196197 554880851 354729589 263960342 185288131 464543381 115061749 837085345 719738141 186767886 563616916 617710811 659168889 968100905 320299115 481966066 511381522 216113478 907220170 288891431 463551888 739212261 871473270 985872124 108375315 727780003 939296263 228544985 797448092 40723486 319055119 582475469 696738456 801523716 47972054 983787247 336822542 375314728 76967200 806652789 181365869 465426459 420407159 531322999 685174402 853874859 818462903 870301597 506618677 722291018 996570100 250596933 657511689 898196740 150177682 449934504 263639518 989988362 598333860 136822874 505410062 932031499 681558826 206608317 219649718 675781589 728497272 307505572 559592996 564469743 681515817 575141191 888654085 956490703 315945922 443913681 373823207 231839123 336362147 26192461 587791102 102630195 783801396 979146942 337108229 715618944 807164401 28793548 131325286 923185456 953553458 974085276 831697238 790882781 299129620 203066011 279872638 929974156 872503521 244895458 884587413 878143748 912211403 210447770 536873643 900942200 249771504 402309994 891881805 703066735 694813043 957456443 150063033 717167674 803867098 890815171 400027943 866600111 51903113 34997215 167442378 632037811 917197477 883851042 369272037 971233194 301528276 855526907 667467758 943931443 924519470 341053302 182922118 538872844 377819382 193687111 435176409 609279143 182436998 43914198 937628373 132260064 110472337 469855865 53233133 402546796 806597812 507129666 839966389 548684284 95560215 132867634 123111942 345889746 750187001 584780978 869840388 812276763 525502838 683975087 866411600 397295359 485664609 456929990 230804983 180762894 737206566 984046128 715338651 502486396 408114009 362621632 830511417 434712537 891871258 136689414 477774669 534757785 571642911 743096652 214684750 977576075 715787793 448284131 639119766 9562776 582994600 563588361 920372787 602504494 437522983 936702022 522589936 453788478 903344552 523622439 991812756 803056381 72179932 627848951 982229240 292535456 88602508 992653383 653737563 228281917 277947101 332991266 636005000 613798962 896761512 201854469 978367432 197556103 488540250 77375596 505710299 360209897 532243237 493158654 858501288 248353723 369931735 872274718 729032269 720726168 387715750 859361079 722418889 846656287 195868073 13598688 539044923 271235130 458525737 475545637 492203593 823293636 431657845 154771057 261282594 806275488 908805068 22413610 264639772 63829385 529162578 72004329 378192133 351528491 250491479 282259048 63246892 471578799 621756355 978806254 212327454 925093932 844059933 187523942 446438235 332369024 619157926 455816461 206272510 991728454 725271844 642756693 707470200 975154152 180636106 964155268 297201589 746482825 816187724 212103412 277004832 283003536 776674140 518984966 327034428 936174978 381286221 983484618 120446148 782708871 940362188 428583210 43641272 789162733 57748328 725200245 392014415 86006350 987221465 723230540 34054467 747626731 920117181 624681274 52709223 939266697 28367348 781418423 903839511 912351477 689094408 458575586 164748332 984023048 295509769 679256545 250268159 35472152 749907080 420229796 499715009 420256204 640852744 308567804 906083726 726452996 631719895 987202132 615030851 801636682 597727215 939384810 209077760 938477898 129119588 905128776 919759790 118536851 318925482 176240247 650461890 136470049 626134730 102120288 763898814 629704401 900295311 468887610 439694838 572622913 622003490 985647824 305700366 85361310 550849221 716054575 514890549 724374550 199819811 20761254 327769548 56088413 729263583 6624537 995464298 650677075 26504690 680599425 905505288 124324746 620870814 801356273 95894520 686065220 105824903 905026429 954792198 372618065 387866208 690897421 262407008 38193737 986719380 146717538 179371665 865078397 970106390 71808422 40567961 528906731 525732723 705594194 279956600 669875578 528179913 186916253 688474036 709346326 3888710 573096468 151345069 916077698 595673701 138558534 614592961 319817837 836592728 10258748 387459803 13112691 627107869 118493905 513488548 84934884 967131519 897668185 345695063 713646323 40377122 628486960 360272131 743319773 411021366 872015653 874093072 795107900 760941526 187873118 316059938 856680100 853246331 720338695 930044506 905918541 18645682 124125425 694894557 109460397 763415829 17564784 562983205 749793959 316387513 357143157 941315650 881518093 411631679 625351495 917568957 636458782 336557272 77066927 81877394 35688158 972765678 754662820 211105378 982986539 543513647 753755950 825710938 63008093 289408436 548066721 410953488 517166003 465141802 312284576 386309254 401383439 307197834 573589881 945660483 955422144 395389626 182043892 768062657 853330486 602837896 260539354 931124609 75261791 483300448 614920689 121822127 181268370 572132094 125925211 475891147 77311059 598610000 760261154 713514414 90829704 5937403 469057492 355588512 927877489 793218508 402621360 992911878 719141138 282394469 975559689 294827850 572773788 80911546 399982565 488811859 569321368 980471247 679117194 945705829 696519003 959018652 39576667 830930313 245761523 991441088 503840700 884952516 976591511 648762254 12353802 8879340 382923946 171664651 722286435 628442441 857336667 30661865 104070481 308018694 310430154 649109217 466463455 276531354 919597721 675954238 208509759 561443254 637649074 294762871 92142123 960549291 590406669 233878973 243114875 141882815 632773726 133726593 773312297 818063907 930873681 323433087 729863700 265411015 462347920 509029598 230869989 940770670 531863784 897203729 807345293 891350323 841065764 26090293 314105895 645072442 284594158 754881523 365094521 340843434 780642766 791604771 696670628 398020233 881437618 713936081 644607995 929318363 423002213 899185877 90068981 665767487 874043266 915296230 482423608 482913975 809537479 702191341 744952611 292215672 224441751 223185759 144318947 910585216 859544668 31758729 653474668 59402605 316179529 879438204 868913928 874599565 332356283 508164523 875761034 211918706 461520922 45403050 728445959 259891713 131863113 602571154 338211495 961264031 253764064 793759071 424793494 30412823 115982707 345852310 738516393 452002260 140067935 43895167 460637190 594771264 864062445 141505086 932802813 256076854 366660388 621421178 186346872 631452980 108829546 117166508 963519706 908529947 336892341 828110684 904868164 948807603 708842611 481804601 536200398 773185070 232724381 648311612 350736851 703205938 478547269 353512355 688977110 644517016 973701333 390045031 513582677 607837495 798666625 138758283 663048854 675057405 570356631 667178134 480955869 995754053 613548344 106588176 327324911 665786800 960867958 83823785 255647534 814749087 205063475 944714013 632914736 339474529 588461482 500234761 607389047 898123931 799017750 726406906 922670471 46908857 497594612 787849494 513449641 237347999 930599944 695498560 654874446 879462437 637849364 516564915 5486174 779338196 542680605 748725999 128338268 76595558 890632234 45956178 888377588 964363808 73890693 507979259 800349683 818474097 400746153 79080657 976564092 352192739 799485371 824699488 542868033 340905360 856907928 154166795 84349993 590573112 438021738 272062811 22172897 77614804 542443515 175026290 510434503 631603896 487560580 186068770 866485221 665021781 926253704 580354932 527556968 349253393 678179063 190099811 822849701 635996537 708834738 540176849 843822950 14179632 176515814 15415812 747942668 463667204 565554394 170438422 335840520 305195131 333212349 696252864 296557757 526050861 161339457 282775303 418113089 467542351 625492288 930089998 190247280 776600297 2479371 835449767 121929505 644034422 224043937 633021496 68282380 893319220 104057427 236573412 150086809 767574160 553068561 454142339 824072591 54846848 399054019 515507453 898716194 448964239 829907827 447431501 206831268 452391579 140051202 768505441 357533878 727420142 530988816 857315959 810821495 297260578 69855665 791890440 783746313 95515984 599450053 554747547 422296318 127557126 516264733 962788153 27913835 855082414 986703753 831382597 232408776 287583020 985000003 421416092 24261115 521739371 965465351 57145941 702591150 450499692 187756312 633169998 947641888 813730928 820899273 935109973 271167344 260943366 532297302 447229427 263055462 801084538 534849887 749244707 491703396 402607847 659116851 136125726 570162056 102123707 135290811 300890146 465054082 403577751 720853318 831434867 71872784 729811122 619220874 442562179 290939519 160089284 216953225 77535075 140181271 732367360 608029151 20484614 619261584 63500845 988008851 358066712 249284222 806243148 930450787 783189452 805020515 308285635 102840554 136076477 162689731 679444672 199052626 826950879 542765086 888903620 321408710 697163381 364635320 419828729 543611107 649552490 246223128 404377719 90017933 154258199 661739620 828523354 682597289 254216319 182916936 870631312 113201216 446212507 354910063 489590018 412125923 309391589 800316736 951649832 231455173 869449598 224509256 722778310 440870904 11136044 620582783 360961671 231590739 432273422 593219840 409716294 521974773 150450566 576875766 712903985 902741435 68341035 192576718 573487684 645227578 811350587 494076496 534934632 520787955 43064228 467301487 656220641 909628603 608476735 352570737 763962666 577291182 763863982 256089072 453940476 261929135 767315709 214966832 948817078 92311986 532623219 428742365 799806896 423292397 114165355 171258620 163367323 380055257 856155848 909105768 119174693 257070557 537787992 566155130 286118631 663154921 467275342 490468931 955037951 841902148 100427956 567194194 807806483 597231066 766359147 315527482 943820865 453487457 398562152 313160835 662933491 168163470 866273963 435686044 369644078 829733879 6745887 623684117 19712108 568545188 913235517 422070042 96632597 871622082 428628466 461921734 501010891 163945052 215697631 194057678 592066584 588391956 649205654 288533453 536033062 541510310 472156652 199179870 410175529 585411452 171886949 33997104 743425068 567191604 148831704 593588562 407031636 140411374 127572700 306905118 594507835 474994634 550769652 439278332 437366803 700129359 564749899 996105694 815391435 422675711 791253081 409564655 401915573 247342634 898289039 328007613 755577272 838884511 584012850 798252883 546243915 544695841 588818677 307224816 404583518 158749228 814268349 199275300 152932948 723075795 343855759 599652269 44865591 68815035 754148066 475337212 698202147 531404754 820941516 409924513 117839947 869780817 24543929 98836626 261656598 346392011 274723481 77212126 544738131 900244525 888009265 596046378 59124136 226479330 562597593 172805209 915202054 703880272 257871636 686061957 534334196 73381342 501477056 723169854 574386675 702713844 502044033 625068774 570866064 851270624 641717721 586688322 453495744 549258262 846291479 142545171 341335346 914792982 589520017 73279698 656165519 910378067 90743889 865785027 472926586 793474509 609872506 282946813 611522076 115559590 522104784 962986884 931835790 672856632 405170521 739372439 207947787 154377051 289736718 485968461 829340567 276777927 346469271 170113884 478153644 736906864 41247400 465040096 895761457 123736075 42506308 936359685 926864088 237113151 634419234 910548737 420955071 57674581 936557743 677116927 272086300 816535425 141296492 56797900 709154785 532990018 639513302 187312006 818283863 919598283 442069285 294710625 919231853 643126840 556781493 496517328 688994600 247377105 570536906 595480866 723644410 486131408 104507773 276273655 853158587 727831118 291877244 675506510 622560527 11796910 369409692 492177898 313017394 972246080 146349983 547457786 945098227 741882793 553356548 448118369 16457948 497055138 608992249 975047234 363423367 196125403 57190155 184064881 494578522 134519122 441646124 848854160 49891559 710911422 378368922 706657448 386823482 227948674 328985365 866933106 188367821 146863550 116224759 22013550 276923156 348770355 431209880 984960959 448301858 976348146 921616378 286941832 79212779 356397867 341451975 26249833 490596177 262227197 976946192 771086049 898472382 81049379 309652173 318759980 25933042 374068635 820140227 814368298 276381455 12853442 354280039 783601178 153743952 420681974 110284264 452259281 959065248 75041505 916193773 987229527 202788352 872648860 724157733 796106246 682634675 94687160 179306865 258823598 438137030 176673313 853476266 957430358 305523024 606080264 337973232 89275211 327692167 668764827 587219442 545358493 557463488 211729576 819398925 864982127 418737316 195031204 25232855 659808098 656610388 467711097 717464323 455171004 91501409 897015214 744946681 76267382 452620895 93334250 748756129 563749624 733721604 917323327 80224169 628656904 776041393 186083837 821024329 190750281 576628236 106123856 427607093 546748157 852679773 483261506 200063239 413661411 48010439 325544665 20606669 453308193 20420541 547823614 334638949 889613151 637393682 629186877 791427436 488295276 43912056 587990555 234438692 575535881 194419434 514927063 807301656 728317988 572477115 2179634 838716687 671368399 865921090 496558556 62296668 642423718 458102830 641345083 10438190 480531845 490912905 774077338 837938616 302129700 90560923 91595270 549734205 714971496 885746025 17806560 858862929 86335748 788872568 541515790 279864163 216717215 240090185 704382265 698987669 51082576 275797499 499702033 985853043 891923282 309838137 400723351 234785026 28301465 522909968 641329028 119480530 688580947 712728988 654736971 152907810 515730294 408988855 913606978 692541305 910543664 206376398 144821240 71740467 694799403 23837560 989802959 83063008 870712826 306956322 404520332 453947404 625403105 490703803 215999097 844163783 966384307 691012447 547421531 515193692 890110194 649697126 794075411 961130418 701174160 510039317 638086027 432996155 655211001 644544870 160070834 714917379 875473289 458734043 453136485 451025986 348142763 437149664 686948759 885450106 542073561 8887261 418748915 388368291 177910254 366459842 898290671 314429876 199057274 561367471 300977656 96657227 603317050 377966581 351690312 65173476 957342829 668255663 456382586 272446025 846884412 368195658 139910022 135400236 643149618 540180880 833280191 467528386 583381238 556138138 554630934 934939709 258468354 418653290 987134724 813581732 988064510 728661660 552792018 335945063 705108364 53620828 360494557 227517261 500428564 756849395 309467517 63624420 819849924 228939089 76154647 431532076 423070012 137934613 397856822 433383056 379585737 153790987 455630921 794056921 363368650 559025561 210626321 677263199 478598400 883584618 10045069 107652681 478192311 606960088 65451865 623652960 833764767 69293221 237835506 826153976 716165902 117852386 537693735 716135676 320744193 235516083 415306576 548013546 11874753 618175319 20755754 331750211 64942722 916284216 235603468 239188931 904506669 289429038 815676225 854116850 74415383 619792103 158886567 394407315 102102062 522179970 323224697 647466344 378790204 88762702 917593267 919276289 10952094 222220035 779114208 707441021 825938988 795106298 146966330 384823475 464329994 250957735 519297922 384480791 881497546 142388314 771035520 270289648 343182593 70006763 170772935 760388161 963742166 999231634 136685905 927260409 804198465 497482994 705266423 327364145 221851024 350346500 379039435 23956136 320352328 848851149 809072615 640683123 82262171 424329945 441561065 634832383 735882503 389668337 995570388 254243620 202633963 313558248 847967372 957566247 983735977 902855898 823799225 555822477 552433603 754802079 306496684 296373239 289592493 286829649 109475310 939225275 300959927 827334777 690306695 895132735 826506387 113751591 371342217 468265549 176826948 178571627 650019823 460015219 139916321 414422536 872563333 681796980 199106882 522744212 4446494 169421374 646437668 662165627 388432874 956879853 495493279 799172646 748106867 719284696 531827827 486004586 107958031 766841660 878518227 374948918 378076739 599926910 579720367 323165051 906963711 264733416 876867945 663104426 1227354 905617646 286340022 566575180 208319129 343016124 820312684 510936564 170431392 572587738 809009061 271992756 449839084 375404197 992461608 546797278 90290266 448210333 71611705 536931429 773808576 198495144 149899394 804187907 59919176 501915072 749758820 347962125 853453119 52397228 71628065 774653576 533142687 650430417 945436426 356780709 991856112 80319501 697964757 988165501 102089480 309877066 446167018 422518915 645045125 947607650 433022613 813157850 57575069 700405409 258841973 73041434 761784989 144306856 959979148 75807688 56030433 43448320 311482874 408793004 965454133 188638507 92699031 587454007 594624111 127382492 563674968 793961495 136242560 72151296 998518658 875790310 27545184 898616517 95244180 676777665 204693223 993680175 105763872 976151536 364931788 716018226 881362806 672842770 71556448 191631263 734073190 327757646 183203532 527369417 92715195 222505098 225201658 71787308 991924126 260688865 497462722 353046556 216907876 443027945 677370884 80059708 655548562 591825613 90468114 666441464 923878636 363330442 819438385 960002010 214209626 641521295 584778052 188615821 834833051 177467724 844779440 25139128 239483582 579317953 758103693 287945380 20244378 874399413 877525288 764094893 649822140 442628347 592763315 894227316 470183311 149618427 834040212 137934264 27961520 29752722 333559909 469412980 725900144 250296311 609154752 450702236 64434748 206210186 500371929 108159885 155224337 236862314 75412873 958076016 401650272 808938277 196719163 263742009 452778472 645445005 653699233 893652999 359298989 790722711 16314480 244786390 53585931 109573019 451297002 872300068 609547271 484901766 778186583 57158961 206771663 195626106 893639158 876898551 185031228 440147146 527252955 687349302 397920760 49046592 465218687 626451376 708144426 363598177 865828881 552714739 491119051 648146314 351405776 60873144 242493387 778704687 607360178 679138595 273241803 6818812 259153651 79577715 872040992 384421196 785892987 319012949 831061324 219891011 370376514 262108512 811940862 923225518 298993326 80188924 248918655 529566846 411489258 580658053 555443203 656668415 608919390 925618468 17291044 690970140 522084679 435869252 367540093 208888717 473187709 798485699 737555414 128212093 565330601 124238344 908018951 572199732 418903609 481848606 199725086 762002036 202448674 580213946 119654521 764951720 537252570 834834916 644499899 204928079 304017607 230461052 739806869 290249978 220494959 555886914 71570773 598036757 489077702 504492253 283342605 259643912 980602372 643162153 11458169 93456000 776905446 335473589 291988914 495008842 88128784 565103731 937462345 438616772 312391187 5326068 846627187 72039722 23376286 694807356 836711754 928327595 499070286 126768250 877236714 429257852 251090012 468339311 474732 537502670 905152657 628136102 162107694 465320815 895176677 997400132 106272061 156790096 875445798 164152964 644317412 687741137 540909355 525410474 897373576 817265289 249546905 776583215 668950320 888817661 685773449 389073210 466566092 509529762 188520917 921094443 741244243 739627784 777957791 63158904 954264128 629248216 935194616 465654734 17555898 973726995 799714272 569548601 812840845 976920793 914268287 908834427 591921415 822920183 411169486 417946980 31364479 649211951 539316451 87963092 730256773 479774396 112755676 435103216 360486556 557139844 521646306 69559644 268638621 632203472 59834749 785227224 273498099 347253047 750064689 412803872 536298281 399247167 346446570 533726554 752736585 394571821 28191899 525848426 637817067 952561275 6267730 439122215 761129967 209868861 237436794 612005359 995030305 667490939 488808852 262537194 850197392 770532563 581538888 470184753 185493574 612863711 93467553 592952471 286009008 746988316 182426272 704336977 981534219 940532441 364836958 508578599 731277408 156017571 795034848 182357323 138876308 131536088 25232144 230399909 238547345 961670535 928503640 245772389 768064198 456890897 552494371 236877468 386026033 124022138 145394623 6441169 12918863 865136729 380010725 44921231 277321322 97906231 117258314 877491849 185940189 869156044 147766034 31889384 513071806 853235647 455263402 342947563 89264928 768985115 117768996 584562565 84810416 702157172 933467457 317300271 186373506 972844008 907327941 548649197 688076069 733280153 27690408 657747035 585868317 956105043 488475832 271188932 256349390 746329163 180853389 345958847 477702240 298520855 13272720 725323906 924666646 609067369 571732834 190711674 270306032 835701903 705644069 694936915 299013209 533618744 457218948 870050997 208142034 462673515 631172980 318999617 673231000 946365810 888785237 78657213 300766915 932642719 822991425 195108690 631735314 611985449 561855467 366691303 264143525 14345185 626631855 625575903 307368146 610047087 995901937 506465838 817121497 587874257 691624419 117308180 760486320 152870367 465289789 741955403 841753506 222342109 288236999 380953554 614371653 139567911 420978336 96769312 523530840 854770789 740041362 471993523 104558526 456721320 681532025 690891809 63530447 325258125 915175506 775486742 865834475 300569188 910816882 910759362 803367673 960074636 690603499 778302873 757760964 778949898 498214900 953971295 754792081 12774040 132750246 613042024 398075142 477159282 685930968 388893563 456082690 971556304 355083997 147787987 776600486 15081772 962116086 575631777 990693526 464068878 503042706 275203584 924624223 58169522 905016576 667814089 964068827 864590621 311180419 644257134 14202126 993653915 781400010 262643227 490551528 528307659 485971636 103113045 686174250 993825582 401359234 555478698 426316418 163573931 373598128 124169366 312470041 779488276 850314955 873421731 99222956 745018831 809259675 376312655 484018 570479157 429968334 817145897 754953017 500211283 648094685 234659693 629787026 729227985 675318859 14670301 500201688 94640518 791845142 916246795 80576670 738840756 561360988 223916354 157712718 550468301 774291275 88763565 305930509 906437575 765433515 762107477 767732380 847712594 216173145 213238791 772737013 571084273 124262451 432817693 454954669 562588809 727068330 410096201 510300387 73763995 911962868 844479691 15745646 396001784 94693557 816889805 792094894 918609881 618827949 708743358 546210328 157684477 356702905 922779622 510346142 835383893 755151684 876027340 508865073 418104432 688815320 739150269 482138410 410853983 477350077 747049101 528693054 510889093 805502523 474538379 785330510 915768841 639794520 414786009 113644572 975848761 149992645 939750961 822108330 642814474 130422136 618326270 546031788 672914747 73131530 525572688 39306299 1203961 99635463 82415148 601188378 783906090 74690175 211383485 371253377 189053348 833989621 979633160 863849850 181696040 898247634 925502646 511908975 986992913 448573694 120276453 59475033 101831168 985872913 543880058 335420195 243569711 380486831 530760743 551513631 63580514 168969814 461932800 711493767 76623110 863192678 29076487 664471833 544355153 291559153 993064229 268428093 562741342 538202032 579811521 992846992 618388786 995377429 282672876 650606508 554407213 144775393 82396473 161472093 202640681 207163416 966383478 684014199 224501932 266168264 332119164 751409865 157291621 989709156 548015619 714853192 214371986 656933154 743014843 557146647 69523251 559510871 823429616 456358894 117684473 792769681 351021544 334211275 100275676 858401321 70782494 907063595 839702135 406312100 579292032 495809589 329869557 672628948 820892021 338221008 783309379 407310927 514807763 531124165 79265638 432675406 549820280 503984923 50941419 78783612 120874139 80218851 914022831 427471120 306172505 904577106 754126308 862603991 913620277 214730245 181184741 380033235 128326626 284386475 585534074 882176058 39369417 356990949 749646645 376164514 357860423 107139365 673282874 683222349 151167925 612750930 711319109 558058888 334646455 62875422 442055742 448762044 744189968 297031317 696188690 453886185 887430114 786008627 739530102 861231823 775419773 922173576 407670276 817796604 571544280 24273297 44751965 200353999 841426083 165134708 317767830 937099772 34043191 928162473 120517824 113389430 774045933 668296732 858288836 264396161 483842058 51684897 820111756 838187165 669244074 147687322 610996981 61760045 503788150 716259823 722495707 916621048 367375146 612667758 963228078 591492139 818322400 44127063 541590981 689806665 547783187 251916033 470358297 928363612 982079161 107134028 655431008 805815405 61811727 761100458 443956490 178563028 971789027 916326174 141507452 84473052 497036632 971871390 90753720 996996870 791070066 46367354 975616176 462811120 622942897 237034849 401254169 39383547 484020444 918724761 262570873 210945878 79851079 891053455 401322079 735794759 883800857 524164037 533051615 835890701 869186688 372683546 770031332 958287013 222029780 115070419 51294302 896716023 68756434 22016800 921004159 886866062 4793705 830661201 457643863 266301890 346653358 704537470 220061322 125545874 961747508 561270424 679940657 476500072 166656352 884484919 880505869 658102235 639283856 978747248 281983401 351703299 989651250 146318714 329342420 138559329 88577709 600439240 370874143 134463535 401635329 105734157 503235652 566058924 705557845 62688150 748466575 732514055 436420366 706978252 975788571 776101447 875561664 147198177 839698 188937683 226026576 881911498 483967357 752295618 15704731 784770652 688947146 909388899 839425128 719656134 275833404 980188211 6685390 131492059 925776152 788616163 450038605 465694818 420640665 215258745 8727543 748985948 659952729 791908029 640417713 158043508 858274736 912949135 628114258 923002359 978076481 684426449 451413362 304668638 179930117 119514693 8750011 233844175 396551734 453243353 613718936 721125797 978585365 662679974 655750979 132579799 235110715 184168158 304818941 229867080 157845722 876652300 534049846 745426919 566660421 62699780 702689180 823433846 336508653 376930317 994840168 170797632 923441187 913835640 993486144 883692076 626258344 562415079 852891286 871077176 642821832 212827188 784082192 766899729 241923565 937657237 103199864 705647301 906332503 170612367 746316104 403163603 500152239 317604234 701209665 669464703 912566653 16351753 207596532 844096376 946139396 739660046 325302361 416818169 122639062 2617623 6469329 29889859 320778757 921723371 31053743 851713642 157508270 534536850 12858546 210129956 357099212 695441277 750132415 755664201 874170905 950292398 355673457 578222032 219668144 413562009 820229545 790943675 635575049 100440932 284292669 855627733 511341997 326011304 38424457 28925251 88278506 754232564 720610462 239855528 563905160 500853358 695492823 538256256 996741534 882058152 232555872 492031671 55436610 425925897 646830933 961960390 69657249 536137679 197163073 796691966 40560427 248874329 853926858 824230531 28222815 108567960 363100308 321868200 30078739 669042396 517225358 890899224 784466567 924937298 136250046 643412016 17829596 537926134 949516246 342277638 95278558 191007279 602010766 226834675 779376971 273888545 758694600 916162564 390375259 338318179 506469214 760355911 478457361 638872715 154502550 131465092 906302399 947622337 194394638 164485474 968230744 512170671 289236162 138005277 561658074 204601068 662670862 848049544 530634214 254382466 38347346 111292377 941679406 226608592 167049090 872206428 442999686 912986325 828582569 346550762 514856748 278146063 426580198 798640766 991758706 46444730 346301015 679028062 332291390 814042525 826549715 118336085 244656269 382789556 250368550 933750294 479135538 627573303 162174985 880416158 962353683 426262917 976256116 817209968 403000562 969965193 884851797 666093895 798398427 862023688 686330319 797716932 207432994 70077118 496628024 421295647 543397592 525187852 175626630 380925802 821489298 65681612 528702369 613351547 666934881 444261668 928587212 389347016 157603550 990988215 354708187 657014077 805017667 912775736 498786504 212239461 344846430 880254358 310006710 513385345 574491355 333899909 194724716 284946803 130935140 105659452 862968890 903072423 568653389 799205462 316569593 829769255 519143368 836837797 919650062 220703183 913945022 282222913 322284044 522358278 52766595 883767692 637780146 244811076 569152223 616412024 879202707 19945480 5476326 238876001 877338461 322940231 565992707 374052842 629869151 587284264 853250378 844282045 585597936 898669026 641109480 441819736 876834534 302960435 589580746 992683078 658409830 16370084 740122412 428315859 583636303 113401984 21168564 728183308 291774657 898953482 574023658 828573455 635208019 262297898 770766669 867057297 55894309 733839320 740977457 252281029 852316199 462634848 547920515 422490111 112410653 418831335 287252235 929041441 884441365 996732440 553361776 238809404 726023209 796375634 402394756 959375614 606102951 66972539 532312517 297189723 179475791 827518720 334749915 309654565 657746937 286606493 843508547 912624673 427745993 335047709 691763372 494925822 129559677 80492029 559993023 25718838 668311489 616291754 386340090 356470169 506077924 765814817 884085938 61971710 751170134 502794258 560532616 60721751 289064837 701124287 567325935 901872212 606870151 142170455 744661313 952929873 151724674 356031344 772185694 570083717 456761367 604140330 300458188 130573908 110455661 854405745 899909225 294025636 563650574 506181500 914819351 222689521 356177896 230084914 173662427 248390878 403075112 603296389 511727752 247325502 581053582 332593525 466058168 336538337 289159651 373561287 376180901 120237928 860560414 942310765 692728103 69577750 65133747 367189656 359386786 769796903 251159719 908453335 295613018 167061079 167634337 229306023 941130012 216990309 456244232 26187070 383463336 654076766 714450346 789243182 198101458 998078820 113350950 598753279 451095465 827929096 886578520 728826448 654156514 689726822 529070757 601602295 436393127 836542892 412104371 770300257 645109170 341640748 4218505 842078575 645648959 702796947 817455796 86948052 544333654 773400518 322503467 397723449 834152344 573697496 517118711 231039188 841145713 42647359 279675213 694111660 506027610 548896191 413908772 191706424 192317774 699420344 201797532 317199052 79409475 404816382 980782714 533938272 246691015 105787712 176206680 468529906 259468013 171433150 164620229 726460894 484143693 688947597 753769931 71612860 717798247 62481774 990396464 947923983 309324574 932101608 867223797 159592630 399072463 183698549 805487977 327012286 553828949 566911423 570505909 949359228 3938843 805178735 452034811 442337035 779628978 423925307 934935561 674232721 682863194 962389665 352596629 119010895 429934529 375354357 304017323 818547846 449664439 860093102 612884100 988015890 178075032 329620210 269758178 765056734 353111491 449102919 943393094 612271689 97015518 755023380 70344640 540379816 707559299 320134502 124616855 742615894 203213564 913856721 115954251 467455545 463025931 299272379 777817711 43218650 257363636 322979468 88874312 766378958 669865926 794761048 224258052 269425473 131401611 617333011 110796859 399516896 302178552 809140280 803658593 208125110 223825072 869980662 862481301 479419364 680350226 656334781 391561679 600842797 46703571 950198452 292274192 894054706 153303006 396418745 168404162 520763852 211118521 919516692 258407289 70933497 369150450 401741197 125889621 466085836 928720800 114013705 639103912 674106045 103826806 712916691 48547284 521786171 54667618 959931872 176645055 766258057 451901665 125518038 250197117 227547916 245232950 212172044 373011281 717612205 887095381 560928558 587695438 351574259 589232140 611223713 660684656 783274576 948358883 966685778 452237798 892795875 61103512 828247571 806280816 970271703 114159306 251472254 917701750 603609214 515922665 424536721 881498794 917155459 784867934 224960906 396219007 732064870 545969408 163167631 689643131 366589306 120571015 747116234 773656179 90837998 296049257 551839980 281137402 662608143 413158564 18097517 101899344 209819926 217348604 895006320 565623112 580978 565090122 302378205 952699063 861758270 835554164 440741088 284858004 69194947 320572312 249799216 257729297 511826256 749551682 959792939 485177233 675799159 421250134 806968779 279798527 478094223 150137875 292925475 295387448 18485173 912084680 30825821 417162 5231301 163378469 13359867 599878098 302066361 41887761 981363148 930613641 81586335 447684981 239336754 114534585 688628071 852483624 673578872 105988183 161467513 176502889 961957384 259146440 425329266 249359866 487679560 388053596 213444783 635786127 718772640 792789271 894523249 822593795 759055227 941445556 526608002 725654130 496647715 792444681 712393368 395867975 477096769 397508438 700179769 356201736 306407065 308811810 527407190 319010984 368951256 905863930 242492219 719745077 605087203 744837329 168032947 176487790 66710766 386167677 576768113 173900014 18619136 958111132 574467740 67551883 694749257 200508135 534347716 6446235 975449683 730454080 141221834 885327633 123771817 214693631 962207309 659612530 762761834 93326951 288883085 323312175 83210126 829234590 441905163 48817232 62177053 424950882 345034184 265469185 16196838 156376272 276605286 873842184 629590878 991056677 404847524 572686446 962545287 439978333 189951202 118941052 239869263 651025295 990845783 931764541 573260561 808577140 318791972 154818685 978073921 990732889 287870194 567681458 542816056 457883527 369135698 290748678 652684451 427813239 667751467 660251723 858633604 522558373 470225560 418104285 313660700 911177960 665134499 274621315 518867416 241635782 979283431 112771545 232040041 666152269 753330983 417316210 289316368 152877453 510702291 226999771 865947085 82656939 328738639 96331238 737644793 838958023 79917625 911805080 366019662 905943500 297340211 679446856 175035758 74797976 854298686 386032326 598098873 491453743 886809039 219843603 869385596 818992456 123869565 163797626 548395891 539391979 829316817 701262411 705767229 291978621 403535332 970519610 849093773 949778309 727547765 180257412 42352109 906140499 81225028 335827445 299343024 33061127 913869631 881445259 210606603 893515216 323818799 739244863 353651535 971248912 681671031 930163977 315821960 999193739 817277891 132840852 754739993 904082253 435199782 870837260 420717608 625757206 811888401 232166400 302049564 872005533 797120301 998594173 691044076 401871158 385296815 325784720 777754882 155283737 707347987 889294171 43165776 870526715 435817045 238188045 358015441 43471979 39798987 145493957 195679907 40133939 134333926 582083853 361774563 368404406 700370693 22113313 185350048 785383216 626260879 65765146 890010793 480905798 619341129 892286190 709815279 211597160 276630506 684428405 973861264 838088261 301313151 64821891 750445678 434555903 873031459 863752377 505900264 870945626 834664171 656095537 208664317 628639377 652971449 810302680 522613709 488932800 142070413 712007952 407713433 682468905 581969963 531617028 314798982 331709034 220083169 326527092 545295845 867030045 173364713 536226112 600369934 174693080 987423601 181227061 228294392 952027041 112497048 729501869 621559537 501629284 416723405 794169401 548095293 883559839 310268892 54938756 902890815 312812026 991690516 739054467 243709553 535448132 726677848 158237007 439398341 372559416 756626367 568931941 136931272 975556589 39849713 638903648 265805371 217743481 92301208 482746344 352717470 198092302 273583469 207994478 395996128 482886351 397519472 10799209 90703806 980782553 269966676 839146 358884111 623024059 898897050 837293987 980423931 330447870 174191711 973703733 380006513 504509689 551992264 395229772 301593320 501992529 599307817 284346436 202551101 128064118 243582030 195268839 562053770 352867165 613529807 543568211 762326600 927177900 289468586 539531980 769008841 132662721 92927974 810129338 450333920 183783167 865156699 77850688 378484364 532626044 418011712 667971357 425459016 300352033 808219610 240099695 479660539 58918147 73860233 201170198 879022273 895338170 488128977 429943047 718098442 915253039 922117139 1076928 745098663 986308015 568553063 34664387 905348733 528494868 75813804 367604255 122067595 626492820 236719305 393741455 736613289 855840431 720114602 529488835 467429206 166992416 92315885 679134394 396132082 615097049 95864273 919805220 779609392 875316630 982978814 300983322 665675213 410779507 35177592 60212487 14297750 262244884 232235862 463548937 801195190 781223085 236936354 637954594 207667733 432926782 118115902 966830712 396239677 708685275 406717459 540259148 971364292 713118842 348082385 904812375 993277858 725823626 66869383 501439520 618438396 341218876 557658160 999313674 446318161 902184897 747550479 16443859 166890226 76529579 681129751 38225688 245427875 277261929 590664186 717993823 561977050 259744448 782271394 28077285 882318102 913015403 745258731 852206863 185259354 882586171 175089610 220903306 428005979 771051242 888162465 737019883 717993747 84353633 694058535 352807520 345247183 153620441 428862536 900763610 447449489 54097758 982541282 961612305 296264878 668644658 37005761 972192313 767614286 867198084 311301106 523076738 332973005 520828832 141158065 331081964 674312789 599651039 306795974 988362439 517485099 202363792 559906493 805072159 49183459 256409847 261646472 284610840 559366434 500181572 521227926 90423864 657374165 512252461 620024961 354500798 884225572 53932681 572083676 486645175 701659182 387705307 415264846 886066261 301674841 956222670 214675370 244495018 157999567 666683156 85286064 715918005 626043401 11748690 344446151 397165937 805877822 955343333 823393730 893865473 638536325 564000382 599511743 898182828 603503730 828741582 95520150 52324559 204152287 37349627 614347743 150892603 655317954 444535929 578638750 190125135 525430157 366254576 963269382 776371425 874288598 575412864 280982519 267955710 201978492 128633984 238084525 173201529 946523527 847467090 594401932 933693811 770398076 130027316 64897026 207538023 772916687 675978724 703065409 866838272 390877076 834870216 7043634 726830121 229315309 976428652 138606340 163766106 164221362 391243744 131926400 676619515 775563972 972073936 385486159 556816891 694202317 442114349 843799871 938113624 574299291 275036345 614413916 872537619 436802187 395210498 808885724 683570958 507203848 490812110 88970849 339332950 514321133 257379034 788800438 278758616 203967270 952453608 841295902 691457510 714941042 9691928 354658472 854826665 325349602 595953782 332427645 404932191 132111509 353316434 494829808 482190663 866541289 594316866 839406791 571872986 42767444 871751343 54556104 11720656 979571926 620006386 585338472 895433347 20216506 997163687 721832584 898706216 825483919 773986763 833235990 871280263 361081961 83341084 307192889 782796798 851537976 639988031 49436602 734113168 790109203 788443148 664760647 979350033 544044016 501655235 751516841 555384960 436478766 428023858 711491750 326706961 322137953 764181648 170148767 462488419 676169064 453397327 111202044 557511519 365665752 121900913 954908899 63510626 560876776 126405671 28811190 403659367 658441009 744153464 370286859 491697956 518743403 15208100 59716793 516546684 233524274 210548066 897188330 498335718 542431184 975235937 34287210 788280138 220766546 600606540 925445964 306583924 73332485 533488420 628946923 619962120 483738627 254084136 285664430 785604192 556640341 366188360 663967168 450321294 581586972 304778614 999856325 999641653 913973031 489210119 523325739 922213332 245211661 801937628 169499033 13806889 182521029 847285669 867397104 107084262 712765501 61492280 325266622 32816621 69159292 499273502 338846371 64523901 279808847 548656209 328424179 251793299 975526779 682866746 889694997 227867431 386487247 47767320 394246659 918702115 898635903 450357003 278541494 512608970 131115949 517345127 283370171 927954280 417342469 894717278 40886027 942206509 318437830 716866749 80752818 518454666 839066871 783956951 201377760 178623926 596995338 914733333 943313665 962697992 709702419 244400767 476166752 605901396 222968092 397496029 837322183 742965129 111736234 647692490 260845961 737874798 521139981 627684944 859064915 79046886 808984025 877569569 897703689 353109734 968894069 86927464 982423012 370717244 57089044 900146924 956793555 956952871 793105363 771246718 221743314 631821496 982107983 543154253 97107212 320217753 336267901 962371162 310224127 463497902 321586337 72940480 778524968 171545369 983950331 630956192 204773459 802750719 856663540 826641624 928836793 545310794 911091309 501639614 674406265 343292222 313996330 504769600 292476 231725515 816350671 397652446 782126494 287250593 120802165 607327514 371743017 786895919 414670643 660839510 27741901 42234101 761862578 866610946 503944409 926341249 49149133 175243377 635374193 241397873 529129093 242325377 113655241 496600971 521532838 377672946 72107452 328828741 645392652 618876634 709075418 916205898 290561873 571108305 237388230 807233973 222352246 954239844 796025461 735473971 340680485 375905656 21694872 533892754 440655751 803178037 24763055 798967319 362982453 715368675 325624358 415487812 854583493 401602550 37186157 955799117 479962638 245340695 109159195 983572149 184550235 610120351 674785952 218012223 420747959 932151687 859606252 854134581 714696177 371309581 895419270 309326452 330444020 923356395 484390452 216161649 346523686 93172986 687443602 459949635 11400347 530321838 585973103 577879809 736604375 778213656 772893321 669561321 527600112 46917160 321262053 332547304 912057289 731547951 771742103 277005489 380784826 635431589 609951744 913376274 276766055 777207981 949005510 864908471 789717971 967261465 103335267 128987585 150986729 970110566 643996318 864156690 343401586 104928668 998041003 950256945 694749048 789833522 649766448 706868728 89689466 188432373 531632954 552457614 494926822 936359970 170629481 843388028 42638071 164915397 962277041 993161568 872864025 132320746 125401077 709547830 510088273 739577142 805467207 346361407 78479339 963423010 453198283 693668443 490444278 662039092 166162890 889707813 695674538 136918595 302590684 65789188 765362318 42347287 482235802 231157454 332274137 998870588 151466035 412122656 210355995 962654636 797460396 6322688 426674038 331109865 906830714 183788756 524717149 978027500 81268759 16522658 970195748 563943437 581085011 809866615 626816281 54311870 264345625 721879858 118080895 605311760 355531258 172084605 344262961 692920569 706286459 222114451 570049543 983936127 812620478 994449797 701801018 582698010 201162727 992082167 349551148 603173959 420455552 900373969 761161536 307818652 214467125 645440265 605958960 166422000 672383279 477447769 564765951 327699867 139719368 387816198 963139287 431345249 164233823 346987989 43744243 510216476 27193244 218654234 984083135 703411017 591390545 613537604 164100504 616213029 784872232 611151475 10551450 839137491 204959404 377933039 953183500 770745690 895169678 638807634 392056317 730565535 75733899 587434712 285953323 687395327 252907814 63959733 47465905 755618657 816790367 136805444 313676244 409324116 256431046 249202363 34639337 374917495 653635346 538489596 785231272 622162709 827904511 889560490 574814028 188179556 744043540 583179406 646218598 447808351 174284134 40216440 603410987 580278407 745507239 717311328 67403052 899271155 708389726 290185875 56962489 205741093 879553826 967861813 968387222 211762518 870319967 228954016 90929617 432953709 635722438 781712161 450827935 877488069 225566675 592882551 853250165 580931835 455008760 625639486 240373570 308172333 735336485 555160356 200119058 959242061 57581418 262152825 398946696 768533809 687403528 444550780 533728860 905524862 691276448 979556550 704599487 597263807 274565696 423720586 458982684 6242193 811180877 189123188 189637014 567703265 317807210 214458930 541376769 403179851 961296566 12007651 81465692 729512007 721847069 190064624 24806416 862651205 966664162 340113025 697688422 195098379 370165425 877944920 42906027 726119353 88450361 571705000 38080310 453032429 856047169 989116113 5014237 26286184 846178543 120716528 679541033 132810774 657862454 312247705 184657708 666653599 224124750 690974992 369933430 857755719 398591162 160509699 951216351 295330402 582083065 4974294 303464551 434084398 776374390 556987721 485526370 838563966 92081676 318604943 926404763 247746737 270427477 98338833 61641809 270248709 943479424 820522590 790868365 170405622 238334052 995934153 550166985 852101080 755998453 837957415 822675183 322133860 676849415 888663145 872664570 869557231 414237946 193814721 964511013 762713855 483564077 64162107 910736462 284074458 670046048 364628850 751482441 712216160 606890867 2086959 835500604 305214020 487846758 612304374 403618726 418752498 718423109 872009912 70453684 610084605 695934491 42562596 446682238 553245413 355835171 59675853 799301514 959273369 712497606 637512956 30490993 295151930 621356139 540545370 784667079 537933770 431417592 828023208 870584461 307755779 509227547 356223660 485968213 761753052 159566180 894380048 738932703 184973177 887282729 178652426 366126065 457695702 767646504 518889594 587835861 872938940 614779519 71646392 531370208 747465186 141327251 602644507 568125442 907291431 81251456 903529109 12166524 575521648 121976912 461560345 721638961 85693915 931314485 11395692 917059513 625221116 133600452 612505183 896868421 873018638 704419994 114780343 300200247 306728335 110954004 323691230 547327854 501292717 610598719 72491474 803982550 829046547 799871298 525851244 810543997 958088513 300069584 605248642 175449059 902450395 436439706 466907044 762907746 919091212 745664757 854731963 836963811 74486702 87222027 955350811 885002518 666006799 545219009 565780127 677538566 806585540 653992742 725394893 527717959 65265838 403372841 938762222 277396956 743029435 507489775 291028985 129755663 162579393 881197414 897765684 268600889 195701924 366443437 952861981 620229948 939585072 325203610 487989401 151090385 207159311 577210661 35585340 865307379 920462625 603643281 771465889 91421870 405074177 593729638 334991898 429659963 276335463 898869987 477713784 791162255 537550686 973265764 910243591 797867718 60320405 486162243 462613090 417331034 490064694 396154052 998058596 4509773 79240273 175271279 941134553 233798954 505352323 299378081 510378081 678199475 659482865 131222933 592881646 961964969 992620216 238357050 997803698 600135223 807087902 952663202 363063503 378770438 317204622 500819197 127036360 288937583 663108251 364760684 585455773 5760168 35618132 333570777 425392759 619381793 431649432 687549711 708748121 510238072 723721874 21124976 328228979 653758298 53870897 356380163 161985736 270535896 729378942 790466857 216260468 176420970 758578740 705083244 330480800 87237168 850254184 6097171 534269633 702429972 307810279 883700628 142591905 147123773 172934546 252620014 149023015 235083599 410382538 77185950 406570585 17390652 309992681 313472617 547131660 8811812 152922897 357559288 728056235 949054205 749788954 982515173 8915283 758969674 272209930 222846661 192903271 110537087 781372408 327196158 442953795 817190961 950527154 393421720 200586251 304097242 698939246 352482240 548748412 913152443 223443105 624031945 223232398 795564994 195236095 615093346 536203365 617410784 742633073 165000302 576611126 501294898 442391044 456312382 88865213 587316096 56117253 832033634 28453631 929627477 726059040 710559697 385944380 574477435 477994223 893902236 4964806 799885970 379248986 490619891 549813790 825846624 245786855 765963253 733679765 115914303 874930166 845866241 230000373 493603229 583291944 901165201 390781826 154336643 830842093 482391072 429196025 98274389 692326366 852731963 592050029 523996193 225847479 247931901 668495947 506032048 80357029 410919912 186072 513847670 613314231 609283097 429786813 530611077 832216866 798047012 684763655 92471413 528473832 540060163 305655026 874099888 520122045 408683142 400863450 245439744 811667632 364689613 598042543 909247335 835095775 378595776 760790408 704718869 788674738 919959026 453833035 394972741 13605108 858362607 768812143 824666543 224503398 843487866 544314293 27063500 867740794 457263392 978103347 53805683 102747762 912047791 814839244 902729925 114792029 68274929 449245823 721179476 538325104 983576160 328351378 830932813 396990675 352582245 811289837 22537643 938091280 923126103 643566014 127887340 455326422 684814438 182970005 896009845 308669741 696229624 895555992 293489616 921183487 384727707 527772477 594651624 599069118 18100763 476274920 802425452 401280923 706842599 426657424 201317534 70730104 791141135 543310459 858479308 638875591 918694546 182303201 821712722 780861201 725778443 868038093 829472497 514861564 722341157 894125873 648725092 461995842 739770666 285727729 981208052 302832489 209220828 669602241 320891362 993401724 609243216 106020835 297393583 452885269 902657457 531999795 198808356 237509553 6891620 438483085 434822426 369028704 634366774 28404626 6059789 716350942 509225971 912869272 234912327 741531070 55726584 39689334 726577154 665469971 751240670 536703862 635646162 546989387 492262063 462548027 462983502 318586549 322369870 651834080 755699232 48847568 966314630 616645214 409513879 951601078 166007155 682231493 301976071 184218445 852585401 984795252 404341885 344498476 699447318 657935985 359106722 678030975 947708643 700029923 980804792 240527957 758070251 392501189 328124004 457380489 614993274 547101603 237145059 267788236 720952818 746241909 383336425 507123652 233940699 930881030 256193155 495291381 968336975 128512852 532396684 864381544 731691048 979008367 62988278 18863394 941510338 926289236 764915830 180202090 828165230 204367987 894157717 402063844 419990167 324313239 832806633 62958446 710321445 721403905 602313232 353602530 798155338 193059428 118125245 708630776 377465540 157602204 416910659 812725242 536215387 376783689 801370174 949297289 867730145 538468263 831540974 402712371 21503269 62202240 340537096 314190282 295265456 146053443 963081849 476569970 70840255 253575272 194367321 846738665 401861139 538163054 5584579 701318093 38123475 396759943 991221855 287666600 100293827 239957216 674508817 864653753 646459099 277451513 859730329 945820991 537302763 11129809 8363149 604878646 584620823 843969775 726897438 846131920 301120592 208711155 545708247 338737904 162536751 791124719 910996282 174417656 269380317 801439931 734106784 65170220 942730905 195283813 518110171 564642144 487405481 54652472 200523549 921111682 822337737 917160111 980922535 327433310 895665721 273231681 838875433 514745331 435835234 996077879 701041235 555666209 31271194 490311240 342167922 770393018 877677385 544427708 948002356 907562530 365793143 748614818 274158617 244441995 612181417 883111743 635255304 163783347 276235411 571334961 417167681 174763909 587094347 249409509 132915319 606951917 996555846 152671098 500113828 452171800 673434583 373028396 512493485 239731359 7492757 204851578 831249951 348004822 183458110 50248954 946901629 656064169 776720672 41446887 943065457 824178189 980737503 955116297 52420430 640271501 737327966 257737463 284412503 63974382 314468437 808564510 749726578 21984860 405963716 165162891 928090279 285810911 480980177 572645252 593876103 129630029 628674918 54353859 24871649 819640229 114818364 138664968 831712473 76509903 987848638 473834134 787853507 516701287 959518722 152003630 26831277 773008188 308475825 667561900 134618534 214003875 335879214 514489009 157383795 203576305 962310915 748958365 999970024 194915931 192973453 951519307 762376991 170016224 977598606 287736879 481749333 491942660 797518875 905513496 741176066 218614420 741709896 73068207 516588159 647020925 872696859 335494298 638602532 601940679 544102493 828050651 125084072 417468726 504562365 642510623 573244653 644356839 606414502 746282774 785716099 378967057 150952014 227974866 668843221 971952261 77934317 891824417 825036231 264928659 118583564 313221831 996946264 174228605 599783170 959945775 707617023 977567356 404193735 297007451 453180145 340176326 624108278 820424667 466560393 963092431 271861584 828789995 206514163 639927485 242599547 989238500 694232479 71742429 356752903 502432003 481204114 400007323 33208520 846023816 251326971 865216846 215848223 769802263 198133370 927355965 316200557 79767455 396398226 456831473 303567026 995042178 524514359 248935228 479353493 110761584 452638861 264382533 711601927 322102879 543329984 433838675 254756967 989350216 720678398 696105733 943787363 767394798 890936165 457774614 448514425 448522190 744366541 250245337 362389190 97934279 932761380 953869740 944192381 522363345 22429420 289672525 291333830 224757296 864903329 400242640 121258757 659443344 898032054 700077163 666720980 464220311 683094402 979094058 412388927 180163586 117966740 992092167 917714471 850757010 65608655 333027707 826520860 996327434 930642383 781892559 265663094 430468214 39780787 817371224 268629763 202567987 289984766 269316095 20317078 218729002 751557389 808250275 819361194 315820683 730805645 370661863 841634635 680940633 402754324 449782330 166592380 743018651 317260378 147976677 616305326 636237132 156973117 678743755 340193522 610253941 627307377 963186523 802822724 939098084 559940660 573978069 710845245 506529496 923073677 794643399 458321935 699369669 697993922 818809586 275864636 394449652 390606223 711805204 503891347 677024343 987979760 436427932 184109733 906860746 633165058 340347915 586773484 889269996 909428134 723579314 700531267 688848667 268044050 161504648 123284523 241923132 520268097 880707139 460708225 550905213 423639554 996013107 438696317 302190593 663191509 482957516 425623218 252894905 1414841 584898963 8107920 201032901 474296812 256290178 220958534 458377190 742735903 535781762 241853055 607600978 195899266 13965923 318590973 775661857 216788740 115698829 341983464 624342081 353472156 171050368 327772935 757328381 770713801 454793888 591343386 527821323 570407252 635377306 177168321 19784990 219041940 707502415 517136271 57038047 81103151 456141542 843420941 215878273 453075100 12237650 548362606 658385396 219147682 873209785 917652929 271906858 731740820 246137509 823968866 136473941 433238456 879764100 364621271 401690481 462558770 84600035 936032277 975284805 671461500 327000901 298028601 257970053 683451653 377431636 70429554 976181313 69047702 6879893 679866449 614387029 141492444 907265424 594225563 253060648 507721627 606693860 130888348 4709494 131069756 710092391 834536484 861539063 730186541 580770002 608572240 781264679 6899811 4442281 646483091 277977449 76682949 746628037 848759939 999728800 910628668 568319106 387608126 998348262 371127177 119771217 147728327 724946993 584595365 641474345 941151872 536962292 446301633 583194258 791842309 28350111 242868971 743715955 717261938 453584795 322280972 47807902 108443869 692674350 390964782 64690396 828582132 7791930 325527802 894324121 478479502 840418455 691595321 736183986 739037803 642905093 747570748 322930903 158140420 624758615 430968291 452665275 619119274 548657182 54896524 679655590 33811202 356935641 906114758 734114917 257453323 312874966 155113543 94948649 986327652 394780044 975922551 912394956 721946230 13139766 383469449 851777072 795920402 61093240 213070367 888857687 90738216 453920008 655270982 286115419 215173915 590355663 948313250 630135113 706509888 443814349 363717353 856769472 211030798 684385984 902472186 474890535 493699845 822540181 472644459 692170581 483968825 891520516 327474082 89599499 531196501 496699289 780814227 750043933 647745557 374616009 325290331 467056189 861690376 242194837 262883354 914590165 447338101 361720060 20562924 363197792 71781424 543382233 336427848 732256730 462249937 757891281 633746926 286113780 25067164 664183303 984328935 519076729 422773977 833865440 752732254 761306366 669678786 496083099 195720610 906509326 763988241 386390416 940618238 966767825 531372255 120773609 135643351 440585698 86991056 104543101 632087701 782473860 75873263 436710463 289550576 699220240 664529240 860434891 828884347 807457168 920763303 249512779 294940384 699781722 349530684 11770155 784038631 229368312 598523766 909621109 760891605 567389899 135460807 212778759 369811839 167881837 136702639 143867416 856071564 922559473 288007003 459519498 977610678 293241089 360371288 771663150 863129205 519012704 815965069 401713765 39263257 2676636 944093328 436957215 393612236 165810506 504445918 485979219 783362232 557526452 143954450 218538605 923243898 996862112 592427412 213297376 421515523 917948066 967947810 763067458 428190320 85455517 841641096 805276913 160077543 282531310 527079980 807160098 696641504 418464149 737626792 339592453 990957301 772556153 372900349 562775090 672201308 994143586 628775034 881160072 862552844 344190667 242099383 938428088 61946473 852255817 142404252 390151854 898778149 522663639 248617459 807746587 532067759 785382874 651784861 452418162 579224860 320628977 372141435 39729410 433360429 856736432 427726044 550041904 146241780 848613779 479602586 130967486 216201933 119038452 498392554 414814167 663271831 346163594 366936461 890110493 87175110 958357110 973091430 775818351 147406403 535882250 655768473 887038848 14097006 420378069 787283278 76885336 894183448 4800558 196207717 152563916 444727677 992761858 174612628 513562390 558063913 391847559 752336104 981924382 884068093 187231688 815004548 306074022 436576344 731491828 119299157 510327041 408707436 535813537 36772821 417896237 809672611 145296461 558429812 800272272 412069254 717843921 121346524 447622065 313509562 241472334 571256825 918807568 15053518 863820745 66911435 533220442 535782077 327816391 205099401 888095361 569162786 431087521 385260916 563763598 426677350 746372221 730293281 370674741 463340427 981309581 107062868 890087389 241904375 386578955 921264813 388497490 35631602 882602785 145806889 854357618 377948318 910107875 312398835 513479896 906513725 874925812 367587933 304779411 749061440 745769966 239879184 350263055 403087550 181571084 467521875 329287206 93021270 43000209 415327816 205729177 859463887 606894498 360063762 822719294 852884295 534341960 32499441 408237816 799272044 155752384 901572844 764892096 214188166 730543452 214309565 913945194 693398521 455629230 540136448 705390910 879741907 728983854 254728367 17597046 323645631 928401107 751500752 291950007 376471025 7020455 834186216 926347270 423394938 453355868 552530465 872392852 828130494 834312930 47912761 774961603 490936504 179208044 691767380 187674263 687339254 686845595 155624473 908776250 832988609 971508494 757829070 784253781 682326998 251363373 673394061 801924990 954911280 382622012 160708627 792559233 14139565 435275098 595229999 485765074 33897670 709689328 246341452 248754695 448843943 646068249 749199382 771493178 614437393 83324322 976295518 545737779 700868844 9713641 613607025 642165989 33797399 156626392 442061508 231387515 314151289 572537562 425519821 190590485 947256021 836289872 544725092 267689163 298629142 37536637 956958661 989997772 32983850 810465243 233375293 770770049 537741881 567656861 406188229 392992871 807571628 186765448 348949534 372920283 976196084 551934421 936362852 742997865 833772129 879275308 281782116 186572176 260766426 432486419 317427142 803540237 553919396 885803162 556665853 36799414 30096179 913921480 207928880 890765224 656739981 851236208 345375712 490583205 27035637 632495525 788036134 499663680 733613937 681370375 704548563 329733198 444343656 481276089 607456735 303370956 725617278 867830212 192249643 595611060 376039825 61869293 955781302 979126759 115511466 820002044 797857615 451285253 863340299 818387311 14077078 208109918 715458074 166891584 32844238 221819942 339031175 383111393 818609270 989854827 540470159 350114146 611776929 404218961 82912587 222256254 948600060 350323988 463198763 130396705 350847684 662693546 313745107 270043684 945488343 45804814 201831868 217252656 567564203 858196293 600063904 717579977 802382521 961808547 81151935 513679637 593845628 454215981 727399309 137653241 45510111 122266842 873932903 169793451 172925200 525518173 171290753 821200388 15679916 311919783 640411826 1817890 289636915 387130254 402331584 933084236 369739657 990923441 830123537 508728811 207675913 580309490 375106326 39327551 153251807 491499586 39615421 312048831 964430440 213592088 150751512 445279715 950398337 619652533 448247727 423618827 915461130 852273168 53713878 256712083 932647081 818908742 759711999 411690750 870042588 794494241 101750347 57353190 631568665 82984499 398607360 95193764 739018182 662395146 210951358 700204125 469494155 583546067 385835304 988885106 517501667 970123830 665217725 953165267 64184777 668017563 175024681 133653240 622067638 845449592 361854676 927156156 46868596 337048298 246166019 329445255 824707091 128477664 576844739 355006447 927725650 913114697 287187261 981397769 416279799 653564602 156549634 533651108 403261102 389230122 161718912 756777632 242656423 481695666 892923997 972699940 558953746 918454107 994070636 486054075 297991480 125243277 28088868 881284745 52237607 555505140 867125766 426979738 627605480 22563515 459450966 568702548 926289610 491215217 522325734 229460146 315075465 938159219 747351150 47729585 949289101 307576862 685658852 335444858 444950352 739418415 285182025 548337501 581891354 46179463 823648288 913515943 291865473 355498338 362590173 940406712 812325817 664855686 710800588 174661318 245918714 135456805 170212535 954900272 272955475 347170640 169743530 596843000 516348366 42284201 264921717 59058546 737129166 106506765 361628434 569026741 44447781 105421745 106780849 641325133 240511631 844840806 268318306 105957917 132520398 281756490 125844613 912651440 656335909 551554451 829141688 885427554 533873879 214621254 940043421 77884232 608638009 226348416 746763258 259723931 348153990 112565028 756088577 591795798 569909384 637670259 449629351 276913905 807050691 233935388 14710262 387182209 974967948 250478727 64296746 72982330 993192708 319980299 234943243 926977203 959073738 329142579 226440099 667607096 601874516 651391762 510174526 64009321 30265419 455303113 166596466 257503334 527426231 489807581 596918256 453839909 738004154 111706353 378459804 579159943 900334807 768161793 501642424 578182335 343807074 763265090 153874733 502331258 841678953 894122442 445682275 738915672 40627835 548133187 820663287 56674462 46448687 23820509 869030963 775927316 782550859 932367890 656348316 839253044 779879776 307756680 978663930 570972516 120970081 324287002 248986619 831462410 127862614 396296967 500748674 353208475 821167455 820551847 392702538 827323997 638364382 624816886 31003257 628260998 232817960 490563155 48182019 43484757 734934249 500216922 613141152 678842074 983050122 760792021 753770225 676056422 638133200 876804030 613201436 141239705 511325811 944333479 582440969 600649914 172173760 193634084 958763708 866809368 457705785 997374676 370743310 709249358 616112034 266505180 407385013 114489098 481711077 110590424 332629200 272901652 575485659 177145086 943659654 264997983 106699760 872873764 529219256 696272313 526009970 223671923 409160081 588880053 312141509 366337549 403498126 474496163 622464085 740148451 593101999 566211816 143397328 782614970 39705750 913684272 962819850 753723116 821231551 860954284 282905112 784690419 713611789 954494178 938969095 777259014 750901924 515015312 237034365 700524483 387770873 426909524 422881182 29889100 831222244 423441069 366334467 446055845 502419222 351251660 201880833 735902752 599552800 25631996 666814496 596482168 898919658 128355377 649107691 579758421 511198460 9001702 506765856 379358771 638110929 592013530 837775576 366440436 466657602 512877073 273947945 343080259 732782995 1020215 876958744 59533139 946330405 934037790 500746075 503715040 115042232 377617823 18028382 988751959 601860363 934990852 25323991 436886574 235011191 625904820 873227917 265142811 340448073 281741225 816332241 70847847 796162760 988012699 826481137 919527571 315187849 465340317 524047012 20055336 536872951 625164112 680928476 411435143 538373608 373710857 418308436 579507255 798880795 485731469 840767711 117518177 3200352 632216468 881609904 148694998 955718080 73623180 756262349 85701139 379535441 593499931 644442447 734100205 945602188 569036073 753116336 721607002 980517353 114181343 51875788 456324518 546021438 106760782 780340972 806541364 524799115 606983884 351815981 594692979 289724005 656244033 328521828 802833451 575613360 946191974 671376775 439511425 100338738 267969203 308031341 188809983 891854631 260213973 457001675 109299468 499278726 332431202 888339967 202457904 422477926 387670247 410196523 400191698 181735899 871584332 979788566 943587305 445498858 609416858 751025342 315390310 963842837 21497976 28932322 777340926 464260263 477003493 336205184 942921877 451799683 945374843 242525034 30308533 223323055 259277407 258545988 465545457 403848017 785729114 416050568 388143636 865143767 268274592 885983108 476986529 600779794 505918336 963968202 204340651 492024249 834400059 704667612 109218770 708265222 644424493 191942733 88335355 322631658 575932157 47656303 654943235 436543519 384440512 257935590 129794813 373205792 168467710 620397538 482986497 159391022 703012258 691369804 379049474 760142702 506877606 948163652 431718072 973506044 833246652 292772903 112703639 206477282 959908473 816596860 301116609 791600307 987394103 939468189 641158631 412766828 61414220 24464011 974848944 644739563 169663258 319357760 753834699 887884117 732336772 506415233 944972839 522782198 186046949 106318104 918830777 4116121 377182117 279463055 664548277 355265222 767122367 207915869 844847469 390679216 266013014 877674402 382699086 312911063 682040505 891421491 372344849 838140846 622220298 294730036 334479396 954656400 617168586 598724909 111562641 365750875 839870651 893965104 367657781 658715295 600650650 508911418 72223379 350195168 136097475 109219065 602149941 571410893 268587966 621549216 860322625 695668752 583469833 925197759 349236810 150285316 115406813 407163038 97069084 747838362 727913772 622053329 901276619 556826493 66701513 983738676 604201276 758385778 337804474 220900764 95669868 381264777 342603510 55794246 316205829 855764394 545522955 862545326 723336023 756818124 669522822 457215851 987357249 381412485 369412710 419250316 58745398 20012218 664929508 56000935 943889319 53738135 47068594 550812908 264958534 805228 994528358 516950482 269370950 590656499 796635777 509304963 693417192 284445573 930967319 383395156 913544235 502307562 723779823 24612179 356911633 667595421 436485924 682360660 182170760 658071946 789143184 765318519 694301197 556537282 738714401 942073066 512587821 565759817 331639148 50893778 330079550 328967624 545033111 488929178 29018275 767317699 666025874 788790198 287523614 836494167 954541590 505141427 540088172 835489951 467435469 277885956 241075169 314499380 815886085 599763831 923895461 668711764 672283661 266295144 919474206 27290288 418801978 465558308 599136128 416833256 375852238 440430813 114898720 632574616 679670880 565224459 229097305 522660788 834380878 695298117 315967507 863096284 698814569 563844101 250968480 294732277 507153596 708086346 825676838 220393185 901921312 282408517 10126507 715721040 787980650 728507187 831627754 320860090 694723187 188551597 253167441 133212086 214831515 722566294 37329394 324395709 461129216 224788067 795676306 810932317 150153686 697734878 691632583 843020659 17030914 779362909 933273352 452461809 985465843 114195282 999734745 251744112 45636129 875912278 717315951 533446221 533624903 345372792 501506882 744093669 277739818 651680464 2582021 642587470 619990761 264233916 151424637 762753334 288982925 633720136 372343504 932750240 466186359 441398081 277401158 663360724 323337121 120947525 879874468 529426988 569703414 225452459 779427976 12879913 781753399 462641217 585293539 644952375 520067441 97339432 447482726 958985091 573302047 125195825 943014574 539390534 533341944 858400371 564617433 31391053 127553388 105365076 119947907 351010738 741744331 23633790 38885367 179471664 811164916 571601399 577515832 50569444 906888626 599293234 859449682 939732529 803238309 370698805 937244258 210333427 470341959 503912228 590377293 693050535 465040628 106723772 426779976 102621093 966353344 262481111 105643233 798339237 749902815 350835835 201991065 196474865 404663292 551362371 415635260 938449928 564068676 157138841 964608861 829060105 442748978 684626876 751322065 783875780 398711547 28361303 705704643 741991565 21151884 698577416 145695249 553629640 517605285 592103943 815426459 842037793 1152122 97243394 675676388 613835823 624630062 560777842 716866664 351380768 631701822 950460331 761855356 392122019 272747098 606039533 973087445 255090521 483198786 974970521 674598506 345435401 664091925 216372985 226724379 840581322 253141410 523566475 4602893 353131652 370288576 520773935 81751803 416742495 538658006 991804258 222897484 117240946 768238339 191785425 255212587 779408171 185263657 67800237 2138990 625429969 353373636 748241582 491873042 217662718 995074397 174300867 790491785 641024227 874921596 385875454 237493117 941719051 341048972 425947988 283566634 519679300 298621450 934446873 766131589 488139815 691121666 329958578 921708263 376663078 730465119 438529250 907520961 753537539 689276681 882250263 672895716 138865916 810789465 128904620 438502725 293223542 911498418 760509846 10972882 970543061 52285997 415649736 712654630 417277807 571708720 726643531 489629381 162747750 503840362 403956556 476430895 32441264 677266230 51475430 946859370 828173849 359925176 427372206 62461822 244739254 361856634 236930655 937658592 455028650 346617801 571159844 451043684 122143076 756206684 995152915 931599753 470137270 619830790 596786730 189928845 170950183 336371364 406094622 458211641 589373147 904135173 250062959 566689462 280651484 466562931 209971221 451639134 240667746 208458189 169715747 803834979 190254624 120184937 870376964 327591702 287519202 888175235 920121343 750071675 878680131 274545429 922632072 432798297 867948339 111656186 900594254 714894589 940882573 476423502 3886688 283865085 201599294 396910230 520889343 873905782 841268102 292937131 465881737 886322776 353955960 524043145 430786442 757620878 297197763 773697635 182099424 426252161 455125917 212145350 275002567 920688888 161385516 131027928 39964409 468195416 298562703 953027505 813756011 927658259 681642850 348508655 885007722 159966503 485516730 902842678 273725292 674363610 613677346 147020188 867166777 42574097 59892810 155700351 803322210 856310821 19574002 241066214 828590138 304130268 749829731 288718639 274765336 694744990 363381852 882651630 915816233 397247430 366853154 497723463 171855081 988628373 451633099 945615518 586029564 272811684 473582143 5864830 222774995 725686163 616714859 507407443 865617998 458289033 475453322 455680839 187152670 497518928 736941700 217240662 748784745 772734758 183318804 354132382 924587267 865250958 285587189 424818749 820164386 698714750 301803229 892909096 228824889 176629076 915197439 668381351 25530735 122020987 217854603 641528027 402778187 812793195 340722400 123384928 690806546 18007156 366313446 389205598 325301384 857900885 50275933 924265053 74694418 86884913 881371699 708219706 517485 562024963 866989711 932293116 725930380 228984519 691360909 123313507 237798394 148282737 847777566 928108843 448326853 789384726 400792338 153340567 99302024 730272275 921728904 773682451 265133452 852159744 780368107 710832490 428057550 296582772 452553366 264681101 30887975 234191127 923180963 184390177 797825491 32728462 542214957 196611846 148324474 318299792 297997131 191782540 208115968 8627503 271587740 140438527 823965620 11767613 136952631 17991984 551844944 339267148 940142467 567485583 580915906 825168939 865395731 537448234 901531629 559803831 96867991 819449581 423363138 154782035 59997350 1161949 484663483 463688763 500609231 823526273 674472524 157162023 295918431 500965244 248016237 919422026 175394334 757842580 330026518 699907312 666031103 58239060 14881718 214902114 416813021 899973688 403770249 85924701 808762611 910598747 322609284 671902675 893916940 116859488 573571452 732908311 718126060 968662098 406466826 946735377 197936314 462739774 232995976 421387612 113580249 126460265 680679828 705202325 534051800 187840672 917937619 783970823 888220593 849715595 723266169 579874563 641092245 641885858 52758206 707492437 390405058 563921573 86367402 814813887 219606448 77865148 915672732 244468714 680041337 280896662 526722521 437257163 51568295 756439062 857354482 316981599 352227045 780826730 749593262 62748149 947191231 430733759 882640443 935778177 150279435 739941702 356003661 438459112 166697290 358016757 795565066 16901777 76559305 746097093 741595898 145781461 370272490 262691933 623066825 307976587 808204194 177232981 607659 634462765 52794690 91691157 361544410 31860617 858535380 231469442 851274206 797897591 602956386 14330562 102491257 415202128 641261493 142151440 894521662 626186142 475696064 161768951 60870543 262621143 430007693 374970627 961994384 687218726 901664126 319245484 496228158 796446598 136946275 454480157 141012685 651956679 789503729 394018281 543682182 195658256 838487834 891055764 38060283 800034470 531232504 370327083 311887209 791715615 193753432 77837518 552188568 469142227 128231026 294833406 648278431 604267550 318212628 796884448 470232417 831784116 120017296 520382183 658115571 307613607 33292542 556410397 401774597 382121078 326150403 649804655 72634493 888915078 499868216 317818319 23654732 623578804 212852182 839887190 923584801 163192827 985730351 76840262 12660496 701660940 584959797 189738366 712373877 871986038 889135470 846116164 548339214 130023949 67208743 171828252 509701371 352465816 65110603 246219032 265700722 741836048 643694116 606733356 585983270 640952694 886134930 230901541 709747705 389213138 355836000 251920629 685759939 555697457 931303315 601833079 644829318 201715822 334275307 472538104 944147301 481718052 205301773 309855198 803278128 400914301 767141813 165774816 794236035 732706541 565602531 480829368 850081836 87600208 17206456 753636905 369144235 515368951 470019727 831816233 961475625 4713143 728910485 972552266 87472503 937266211 846455612 75124496 475519146 737462475 518219120 701826693 679584645 136632480 971675680 548527116 898121098 760377768 93083615 836901503 557306525 773487225 23928455 305403550 229195536 459807647 861119192 136143165 198979868 550182119 3497443 750865108 703724510 368829234 991151252 994806275 991416777 403177271 328860331 719450412 908746773 390633335 581559312 626176223 175448806 450456681 40816428 82889183 412582741 39380040 568359295 27054792 301747478 547297832 882479378 25865847 335163003 979936152 937707243 850618445 97374400 624403730 96552323 973568398 907729392 760211212 122152724 377657754 493250185 63159091 909810923 420948594 539057002 489846041 589987936 696903857 56936256 563272202 935347842 212113678 194993176 383685299 138952381 655836464 93198731 994722380 855551051 340305312 438185099 957620296 289481268 388484799 823225020 419541377 569747563 426712201 686063071 422424777 232403077 135504733 97684920 663224159 755561724 623177195 274501180 574589689 914084366 716062701 44776805 859146408 17045606 187889541 58458922 446733575 953717115 11628014 947139062 494651162 43087625 140760431 882159279 158417607 66109360 65756092 156052312 72673620 614084661 971996832 783529241 694336681 369041770 626750155 528075172 788420355 450663319 880321903 969504683 445109600 941184377 793755465 553521473 672186583 793943550 434486385 610869655 941630987 446670587 704189368 423377114 81365136 277302993 829844825 414769432 530677430 978082984 566197041 154322014 331868847 770902538 553190068 73464516 800529349 926857 481043536 296714750 652915719 394561774 322823578 714996790 843283239 325827456 52542960 756768980 278819090 689340178 954070784 935618118 509516576 11366092 341646759 612014773 887609887 832470273 696045512 415294752 231829669 41263659 9555820 247821329 248620155 278696274 9762173 292180784 229849111 944487591 396253887 785637708 426744646 488183463 242638506 363516946 661616051 201186383 266168204 934130442 392992418 745523567 358700194 902290292 990469487 595843698 1250427 9328410 521757273 949507337 978383883 222019975 249311583 428517105 234559114 159383852 631864888 345565843 391131306 13852841 661992027 641879337 14543904 680507123 891070332 603629115 422159743 194619225 187069160 577856295 215337690 582576652 161458879 425017307 48168036 315027004 420616353 369229715 531905788 58808396 182455254 934864101 44081073 679817275 968498052 838982861 325666984 203529014 752034797 865215560 560632210 922836047 309440660 869084904 685541120 298471420 416062845 888066257 829452497 288040874 352585347 167828195 841058120 109430103 902836780 483113718 398537125 716383684 87718011 171216371 759840544 922184925 853466937 568076394 698234924 19320764 809962032 631684754 644536747 866757236 673905331 221092319 126583757 980509358 906880032 366721996 867042403 310721668 440133611 628541447 452358345 508993113 517041178 209589054 570872880 327178138 437006057 561178868 74513541 735171591 518392751 297066626 792418650 311527771 926209503 886602569 861628383 732135732 570145873 597344404 869272898 691442185 238144359 179039133 208973908 741397674 158225049 994240572 120826527 979148693 287635700 668909109 665262341 273365271 728473377 430469871 929712854 743940952 663981913 789365977 845245723 475282371 591592288 561772440 46966610 556851172 249564619 616671187 595790962 23043239 420776841 284969074 109462168 90135501 246015029 962937029 721663790 695125447 244753446 753159237 965043371 822040410 64738460 412915139 556627915 715000963 141011468 352995019 172988040 210249686 192340311 394917257 816686538 799270476 816025021 45925222 966742945 602985095 165906481 612691631 629698407 990440342 620485689 410257775 757794793 227588981 157797051 829076761 886038439 868375801 541675757 161554620 429347233 970612895 369195577 422518814 181291176 259084525 21128816 982792347 410773639 372760406 375632095 686364919 430523306 765580223 208683483 81458182 690861224 634742639 788125570 179768731 328519849 213133104 417738562 530363198 551824574 624761392 666858109 91551769 366669825 186872925 25892159 439890005 909394841 930720995 852248600 416422298 917054436 812115391 362848305 753729515 851024315 667983416 413441917 279223764 762435469 544236331 351890024 283375637 883527053 608585010 945547922 301923660 918679773 276194689 907638728 484127676 836091436 415756147 566400446 411228754 767509837 272197079 637457129 253946016 350311103 239976112 683023827 480984836 886438939 16198633 746620441 246900132 479583607 11022741 963501644 63484631 873175807 393280721 439524982 151654706 73218165 708567371 634285932 451219795 414188431 60258156 549841542 168142056 533814306 182997493 689648405 765835853 99066604 464219437 553490721 181217523 680544593 679101017 303988860 380213305 819280045 556890705 448688642 609607645 304157946 133561765 949295280 353517525 384548702 324904986 360963305 837968940 200435474 626006239 709863302 470810895 933174874 579550616 809191725 717994675 571255918 212937302 285633946 21510060 423187180 229894569 506186104 471100449 476866830 282464574 237293532 952911410 456630460 590149763 897513044 95253245 38495934 267631708 581650501 589213769 381414863 125673580 112010009 272715799 836578874 761605325 446925553 36615336 871695153 378212211 274535374 41820870 762296291 724321358 272315368 868298468 944675944 282991850 998821090 31447172 77783193 94452635 510531068 932234836 6396386 25464756 316084224 315500781 285344690 543127036 725131332 196223514 542800164 70856571 117845333 672549887 17113281 319057237 541747217 889421414 47490648 352316181 530897103 188156634 619381751 863234866 592755855 626392925 84865368 528647305 470109293 452883346 268366667 820713212 490054730 969326063 138643374 605777694 155075621 718289799 887888739 610214209 296406921 149580687 824323431 117021906 449064165 547556692 951524560 653950021 389185073 965680205 864984238 33866382 266279366 95062758 699825928 817631939 578276716 946715926 290549007 233717064 17343855 910616421 571708545 163072518 304027127 413396621 873823246 900784035 234101817 717239367 567165130 78245772 46141187 708452228 768776708 278870020 741301048 480659806 964147706 621818929 721387557 902200537 936821843 751649015 189766580 555945157 426775229 475795385 78079089 420147127 660224998 402036126 461112469 258824041 446502944 704176047 483442588 509649724 99981577 808877804 329143145 131388639 917806248 19825533 696699996 645524043 342327728 29917532 50207228 235075850 843155069 781290463 974821497 187966497 38444043 174025169 752340808 574780090 217486780 491401586 331485027 222632932 352431095 762049634 105537084 268903737 964589947 977581993 43529562 731027076 121212428 508563819 104772760 219552746 494959945 831836224 568108950 488198269 603343713 267794042 79205121 688662701 173433375 71867757 370973411 575268640 879513231 850203684 852043497 560976150 251397877 294501739 870575724 529870823 677257871 713724112 826077337 101711960 568218433 106104924 633743200 273457867 727121689 739452002 476606484 914473178 88408700 202337149 703980439 786845570 581761545 354105124 414350594 165913107 39376797 609815833 703707115 840049267 412073822 541585333 882831243 705615902 691745313 862361408 191429307 848493685 941013010 416737681 971232260 635842226 135580990 361779282 360262316 700118656 612280047 653251289 783876554 569341014 199877333 379431303 420142038 667592863 934886808 481059150 464655461 22393011 150941447 425952951 797751070 974281200 558899540 468761804 175492466 396949532 502270961 918152337 134032958 479086813 572642867 658961145 946843609 17258595 244825561 931514463 4275576 332064759 189675822 385136646 914323528 767773451 566316338 751962501 79232516 78063906 179901700 859020110 374245526 261060737 115088578 164548757 271645054 435504703 259098047 959441559 58219502 279064402 728403319 910150553 533821567 362286472 457293506 107087700 208253373 737946306 500259390 524374357 363004595 124910880 525926664 62868939 934674930 268923988 997595500 63711387 847417921 43837776 22125600 214024422 533695180 42144777 768241792 915377944 10409956 877981951 502987666 277726389 778335242 260617389 66084091 53408831 347339259 206680850 4457556 113900338 750780635 99351456 553140086 715098950 577485703 196797704 447640860 457848933 818763522 551020690 501164673 985333718 8068907 884981533 402554904 868896943 155412271 140722826 295450262 96509891 998094901 504108814 544253358 734205783 165270227 325164295 229349069 580768037 843837814 365918954 922866686 681472495 216670165 373059034 836428170 860935770 219337703 763416687 134104583 319960182 169073365 563979146 953443018 559848998 155027239 408093812 266768063 135619486 62571020 445135119 196816911 332368958 423224628 567271909 936279181 612910230 645664465 771625161 955527271 110162336 118216502 172481757 466388828 177860995 65416163 456674369 452804842 915675842 410292005 295411073 262155969 471343500 263343011 14717561 219882416 17432648 783826641 146266981 348112640 415282625 113182192 119621959 699867388 982921890 971838837 35965321 863686468 838597463 137093694 994894535 326083994 628832096 917339097 909850035 483179528 47194233 638290285 945203935 786339723 33666891 149442589 245824544 882519478 779106006 548760610 754342875 899423896 685490573 397365511 15876467 509187929 32058007 469974163 272177503 422283129 38436437 836823311 714215840 149513473 71146008 441254736 57732993 95600861 755689292 198248339 318206856 506911176 42413746 879595381 668772963 954087591 830306464 73398240 741926810 124803523 21754050 300455259 493540565 306332590 769582220 71696612 807719854 121255106 601438268 965099756 108105239 319631603 256303000 347579349 22060786 128438117 415570195 129832554 319648769 64662166 190999461 435015255 447558542 898428876 958100580 587184039 33615954 259771117 761660526 819354867 371576130 429367700 617700541 558340591 864205222 155797821 139572018 478506258 607304565 838393689 227842212 916361402 135905733 796721694 202006832 600858458 947099111 587066117 253492956 378363513 614712780 312768534 255907160 196505678 791539392 725390157 22562960 81124725 496451835 682422159 153711327 987081394 452928942 663562779 506382930 925112288 526529764 601151033 339003589 26841603 312206596 385678427 854806458 450940542 629683582 655636133 540646553 428533659 295136764 634931019 717780051 884494539 169690253 671822675 637678695 937823635 541492174 171920134 572620753 948279747 477196926 208005137 714511245 899262282 113366028 376346382 805461898 119154336 285648652 281577022 50902398 98034707 106391973 325428132 889277518 699872243 994035509 638031706 22791245 98642098 565929228 271513792 595460336 162732813 322653842 625155764 165838764 478073534 828677163 668963010 774505196 230742542 227657964 162204261 183914358 405800526 74960272 453474532 422379799 344428494 178907785 337650615 114216185 111113499 980510829 73710602 277006725 832395933 661827738 550697308 506520411 506404742 556544171 356559567 237436595 532389610 56839561 842439879 424937943 211431304 323867073 382444776 752359112 718547113 853172675 603459920 196784713 517535585 513013536 843573247 719465107 266842621 393941015 967289070 196513891 254461984 494935068 937325840 154143311 180447695 132752710 85705858 887613510 259099893 43571947 107629860 659648248 466028400 905855329 244134364 832369493 898186407 528424187 979853856 476043058 873253578 89919152 417359950 30111767 885044969 982118088 345307993 139663607 168700088 318059787 987201461 845135278 646960598 896768805 277029195 794879577 292504440 410201123 185968735 107843555 675447986 994896109 49763597 771941866 398702299 895576135 730997344 387738424 991169398 894169279 18811708 228946004 860342722 740556275 852786989 814676185 473717221 690305517 876197731 573409997 565929167 943044463 579427743 719305951 554257569 585709590 963917258 87092779 865656902 253695672 684010646 425146343 595990509 154021715 778682264 181788595 158224798 865861113 962869518 291113250 798105223 8805858 502570247 60173802 860911910 660623576 356032016 721467609 932744007 656674822 304203657 999321298 826305227 583600335 861912663 143053144 181714767 1663692 700423947 837581076 275698125 196496309 810667360 209211379 765095114 553966562 546655948 670979369 361576763 615147229 129014095 83345401 439298904 809224855 33659863 883681995 526083597 760245950 82566043 298857784 1918816 276766038 611931907 248261387 367870317 679860067 943838978 533689183 244188945 535021397 215133791 288963997 910857084 993159499 366399652 609277715 963206734 121138298 192680720 428482572 352533478 677952016 454628774 30092508 999579096 844012532 842576828 716692482 622605002 952554164 265091004 367370515 695973522 532439769 705346072 606011549 135192232 49776752 930837620 974850638 584506471 927545765 965643955 298786734 939462618 799349808 285654081 244503956 512521974 655272292 355067243 345795680 415167944 470295940 100471086 776693028 85648572 196342118 522625117 595300389 402119746 336445852 352392494 756042647 688447849 317494821 309950260 287424138 879832460 873609710 569160254 750966842 124630672 824334269 203109348 399583294 95940140 988932833 89550328 210462956 113837017 475302610 479981014 992809682 564934963 380166564 230766289 810012231 727127617 942939357 466580533 365321099 483912705 48333709 149696629 569433757 302757094 526126096 576798952 814063733 440569779 569946171 954848819 329383026 349673285 145461573 811557827 566848217 839276447 369856659 53342101 616031520 205256681 649394590 788862641 768413214 512968082 812450763 279229900 200987060 747740080 979107170 25523069 853671161 169858013 320148966 256202433 108134707 729996016 572863425 697916667 69472567 249762084 854135493 665616986 555659974 120258903 152895912 618171026 495976386 175461898 744360972 724793471 284872040 340650610 363423387 334319825 342953722 958079009 690986280 495344671 645321128 43216600 181405356 554157864 482315236 713934822 495629592 539690834 103514683 191366850 293812238 1942621 694811989 518534789 644879718 402267279 579609332 665309043 862734814 539163894 634838490 253107100 761802437 710522630 409167983 781452250 551247449 427684385 31826379 750202592 758367568 231554813 705491628 99683685 957982156 243510430 693069941 181997292 834155512 511908355 755751263 144303139 753184885 703125723 354993069 466927662 558701499 172664447 392243888 126933613 89812860 709735169 193116735 774992457 82129080 47464737 559265933 652202589 211005190 454391935 358588955 129894347 16831201 377522566 3995951 29173155 862504829 195694891 172285881 615716823 771678901 963158617 711886820 236329143 60449318 568987720 953138538 66880029 294232753 714320288 537184548 719747770 140853881 41675602 439041917 17729456 755149269 286592148 35997446 488553600 369975371 836634692 889865815 382183707 105296049 120403337 516955277 966463705 612710223 39349447 213195023 631654898 298772030 200592702 86649618 830840757 623867994 308175492 986435749 397275480 244066451 439927736 327480293 242726273 277038212 466880793 422752491 413977 701385484 532818659 9224222 711421031 534751061 846260803 978113542 869339566 166914557 927855758 165646417 462415890 186462803 821501319 716816851 122380461 940409557 149922536 745451430 685942998 328203160 456191496 54974535 394429180 607682498 486068262 652501483 268202972 331641758 30580264 397978593 215618658 532768003 620382808 259367268 726558218 230574155 207140150 498685252 703952313 579675335 662590457 713987856 868220355 4401248 373996218 939194137 928611509 767591191 65265724 983994162 514465797 946987747 199325481 186331164 348380592 398078568 743599165 737385186 997488127 221433675 351078163 30913262 710521440 512845484 468810820 781232535 452778066 169495226 689190946 409635462 534618877 520691553 670634606 298564732 696936404 364263834 399285466 278895567 609564689 713932723 330925688 933484680 951454597 692605033 904318925 661479341 928021763 655323044 57776139 894834383 344172325 592983825 919489965 178236095 176696442 909301271 965952209 222890259 209429125 637806448 338317217 150175262 582363966 506908483 200647390 479133658 177086187 320270931 96067112 85281913 881344285 507476351 405525003 728497258 374757350 997204145 614738062 572761895 446326539 33437851 701082913 962019719 646480714 59019400 65034306 362213125 269933096 913939911 158329828 394934688 249641433 891111109 503602651 82125815 146680701 229425677 77044357 575375950 208563853 962093098 586303222 107703074 132333658 545081211 771627663 671525964 703189423 432768943 641803459 981886726 275053221 905742252 29485891 195287229 774665909 547895701 143177308 801152372 577780535 289930620 426186274 347359624 660120534 797703466 197572648 26750652 708619638 698158055 205055454 494105511 158941644 582076757 856031497 295269522 78245465 992454054 441984093 621848640 868451233 542986953 178463663 290884033 810819988 798866263 456319546 389314060 908655971 818918932 434115013 28888553 923972215 341878369 71748340 401256655 928266043 838239202 201556140 747927756 359014211 995481576 934420484 759126004 356591662 708032388 598805791 874943016 10556959 894671405 13101585 903698036 209040597 70615247 42702228 647835942 837582859 414684398 238565056 471172965 466824758 839504310 931353845 979340448 644583656 991040702 903204944 603530945 799774424 86879665 398172554 578964240 686015131 539852639 394588189 911328569 283283020 125632619 509029941 557364466 63409123 316104860 716594558 757452883 570633799 528074131 808687155 241701694 603220258 45555257 855876000 44817780 913371883 763206136 405237059 200208201 452179026 415924248 202776186 389844191 886382279 39052329 238033959 923473526 880313944 200042017 116802031 970565464 758742493 580609655 116033073 674057781 344815484 93510503 814689524 114472008 922026020 390430634 586776143 838437505 968068689 730604845 48566076 421335488 127802676 644270534 147467893 219655241 860684836 82791007 422192181 950990164 126262763 5468865 924513921 595547264 534022589 438617690 301960542 242454723 316904344 593280620 592112266 266634382 973702472 593000970 173391488 602695912 95730897 686070808 828935689 543809203 334552230 771927973 602481726 678645450 505967774 846719702 694755382 325424921 308277524 857529590 538427142 83963865 769082695 836081417 356253538 274853554 972522215 199499564 848435831 879443191 947792621 925547887 361957491 497526136 648457688 25564889 839009695 106973931 938058720 309204984 515526996 131521212 608133148 626277090 685445468 775870027 362047345 394838830 804390947 324087149 32961641 357373433 111745403 620216953 527391574 155668491 558430909 237910018 488280475 914555866 989172905 568251604 751687340 516785744 370018045 895861003 923886399 781329159 471436292 461184089 692856235 195734403 753130583 14853935 791367454 730176348 562465091 347712112 893534626 535576381 905330074 593789970 268794162 74444716 288534130 700933613 618136594 112330113 815354162 247755618 724525807 996019577 858291400 243441263 269102601 527015578 188497645 481679259 135758834 385222270 235503265 714579427 522347911 266733811 319390049 22949163 685892540 842207406 958104383 934408680 893145173 304442703 909001924 456417991 938574502 502927333 686944654 26436299 891226154 136027571 129653119 174603151 684771021 71108340 107338798 332800409 286906440 66183974 245993279 9265244 953055628 156198491 57702346 691344369 523691758 721161429 193066229 667365963 866646264 284542573 914724664 981075369 416382905 234999084 799692138 542191108 933100440 573465269 287448775 138184478 100028821 447654837 798371444 409190668 516479058 22771702 132112610 950384273 492744834 249446099 76946663 414078664 380555628 211925869 823085456 436480618 345360756 344428827 724977375 250740758 894046128 737025826 843454950 138258775 725384278 138761959 181009982 475325517 924715386 859930673 548162025 480049581 98995872 755702222 441913246 939882345 793286701 479299952 703878888 856060443 998905937 650833595 590175228 243000296 142348771 68665450 392554807 455077338 484575153 55914939 794511448 610638116 215509137 789795618 873210648 505315760 122440296 253891003 358619195 858231928 651311006 464990848 907981995 100817257 849242078 376660595 552106302 157827909 567633030 407167805 571823429 967580439 427192275 489802465 994778203 301038170 916480209 247537801 559746957 875789985 915973980 197843203 32276823 515986655 948003200 689081534 164211073 479813156 202353893 512131664 75006443 859529065 235399599 677271441 474875517 748923674 310138993 332006662 837371621 879175734 556136918 856471572 259995875 740789204 844969007 926766045 464787133 266746985 537978572 643354784 414918728 997641806 934765415 409338248 779603802 884691633 980070230 782113896 117072170 649797838 512995741 615807937 892243663 908748318 862384640 584482391 73928381 699608206 440142759 192979025 337079004 320485753 345922135 586265405 203557408 237430343 873815816 208149040 790332009 475404296 140634906 240533227 571598010 853488610 717751187 662847067 711530313 792384520 23217672 652913093 226553036 596840940 126270921 823758193 648585424 551753589 784992793 153187970 271736283 334027024 443598151 763184040 560828193 99821301 94549340 48636379 958975376 978269453 400568323 179383186 143898263 70864953 770474769 913496172 272291403 394865146 274713839 543139078 238466951 385100909 490936735 896282332 651916319 470859068 372356704 143678012 641024506 483819429 961109016 524345561 931984723 596733370 78567325 378301506 286886822 939413271 927846668 537356787 240387941 895809343 496585751 125210255 988540481 780223515 153163341 476999920 955447788 946927237 55472996 652907634 802655298 613100606 543395961 71761860 712327209 311299810 131432872 761482039 609760300 164608660 284883210 918255096 90823492 532535302 240791716 680723972 601279532 82522450 360718124 405926203 223109878 205204070 388266032 44464069 613179587 836445982 765829466 526929176 898427000 26810620 764548586 824869132 678806170 579000458 839685153 655237514 176798765 394788658 976274537 700927995 991514446 41006979 4766466 60971324 81105543 443761999 696358904 728031730 571340294 783410788 50598355 749371277 553467931 745010318 712149929 225012189 78843492 452916261 320997056 614098241 934657118 88405466 421181036 395840411 659163085 874146286 538008101 109745501 140557159 152296335 174726946 32744881 379862500 953895120 211788105 286971193 602733458 632303234 515509595 16619475 314739763 162415638 781733253 675026933 277512676 126100972 55496733 569020263 943347386 592984538 474443089 117147670 180905170 567826228 350250308 211386238 639157163 203591442 218035405 933675907 599812717 832718634 943276201 347710382 270508508 324032368 699029490 146832047 488277435 676708519 491458029 100631146 793195722 79509492 805162901 182137976 160081457 71799786 399287367 9133310 972710974 118801870 551817805 517135972 942586577 268062507 929826984 210411814 286137309 965404520 733846558 24101389 823749778 637724857 863199971 530439576 283441912 468715100 349478968 643530657 262643072 564350845 957198277 149697058 346255660 849505709 522050996 153779446 179238358 435461357 232168802 401978816 360022131 328430901 902552739 737085834 473260945 966581932 822491905 695524846 520876296 98719724 207825352 821571761 688520531 950490232 718771563 825355929 664292299 44181132 418497211 205618175 224204865 731665687 91586962 388464534 622296179 324906988 401292289 797875380 700892060 253373917 738239054 88463916 979806052 84838647 599540931 362591195 987279845 920156323 204688462 452699107 87775083 216309015 803833903 703622895 368566096 481125633 41304127 236674110 906946116 980333266 687392387 425643389 250141202 469979075 90728826 41441537 991134645 45436883 956345459 589529636 423859983 304036262 611644506 487215857 600939324 737606428 689737637 23689669 18126918 161526440 336596749 927064655 538782755 427416279 710366187 146130791 888962278 715844497 872297924 806873533 36706599 659493036 600099604 219135041 338327005 560367923 188360635 901515033 936898165 213894230 413866982 815338533 86262281 612313274 709866329 332404902 91099374 953188818 482625850 558119777 138106478 305331622 183416643 820510002 581478389 385535900 482664443 92077163 396977976 727091615 36806032 112313110 623159607 215430855 912120321 585330134 402002347 750898961 951624285 223992814 150794278 948368551 551286059 769567439 631446374 805506277 942576596 567838015 680026840 173188929 152358417 302540082 976636393 249335621 974476228 978109849 191104890 731474615 677733519 532988074 153330431 755651086 454375991 595240689 314052966 957882837 723377230 240829421 171423269 720656902 814468682 750425325 228887761 851098461 54437589 744901748 511725199 732215535 151908662 755462685 13281349 565058818 504039438 154560315 779398243 107365917 371094838 659307888 605277798 565987696 307418407 648087964 839271738 821195694 322530335 971381132 193294392 722598143 437183384 786349651 477985485 984783208 429122738 438026153 104753655 402839028 951800583 19399475 596815254 316313198 174373599 880348713 590425595 38750943 70139834 766102900 471925703 742426993 33950986 853302341 696456465 762432555 458690677 294135441 655584303 799197210 764322551 334750128 942331831 416146478 748243126 895690822 645602509 911546944 814400072 987366494 375913248 582935936 829032946 110740514 471222430 464665342 498061642 388726616 887965982 147486523 502022453 288941968 919469300 218048806 184756864 278973590 887288964 12553656 882331177 305190581 631638768 699063171 869855154 599299642 13545484 212117749 582499048 306771998 170705694 778578145 364772090 203736574 312546741 225586832 518885167 98604433 124597682 993109921 764182513 319934157 389015447 673494226 602926226 257337717 165033600 845586233 199973603 588044156 721452897 603789427 997824437 610711849 685298419 35558214 154243462 152434864 523604880 862919468 166718286 587161667 323989710 115648367 536576884 367847813 476413586 577314390 499643135 243526676 611088956 693926133 763176358 612184081 981500353 113992524 711568036 340058039 74166496 404765460 725159852 855214934 461381517 142299927 107096957 576315322 830489807 822834461 123143023 219924935 613994800 774029067 173406666 385861941 966123832 159993703 401905025 749561204 733336668 367630860 26578831 599020699 2496241 547761488 766850189 452497466 431269237 390235772 362778234 923733671 11459370 586889102 292800072 99359011 493461042 725403486 687808182 266378464 706101675 705117866 472491159 434268805 444334165 711657398 103342556 19988185 631750241 125591388 432967072 152888613 619241368 460588221 796117573 507919137 412813544 740051678 965461764 807107917 124906289 977716607 900523223 593538979 91248043 411936441 109685538 645865631 997302334 288376231 585244315 791811603 442570200 870384395 252290792 740741809 771877225 720773864 514859935 792014439 269695248 589572386 358691764 770791513 414066947 327461788 110414206 638230899 545274450 879323269 477926948 441857605 534840931 196425754 625068271 403916769 746281361 965578153 918375953 901586263 708053129 101098159 399303515 71140655 424872261 145728749 483890341 665081382 178154510 605886005 278884114 884560887 358761092 919250935 164319882 389957121 303200709 417850582 525715425 249113792 884314514 740740364 122675732 605290625 246098445 863811970 695050973 545212558 438291903 815951035 231112758 322945689 482088823 996515837 553041343 997709915 191181287 249682147 49716803 569010407 428471491 696381848 539020060 691166449 967838743 388501220 76179570 152696560 67808697 284998623 956713105 582710812 641170520 550414673 447184998 582576651 107237592 776599957 359294787 456182565 365658751 68973864 166729657 922417126 916784585 32126535 622499660 951985005 635360039 264542505 471977866 52586357 851294813 366197460 192534231 357256837 572674879 284290391 546352561 385821194 729178926 931795135 648606708 108472142 358463890 694900555 452693205 320121660 635536229 382851818 562902480 235932495 152156258 324978006 871737465 136733843 231849135 612011091 31068628 547513724 155041574 196668287 143720249 220807747 950338833 972328708 856921782 341114373 985424900 702636088 969434627 172254822 782041493 372467480 969186204 683145604 629846475 931029422 707972629 12688631 776861957 620739426 334650002 471296499 873511502 536257142 747703409 460907107 542586023 449057342 130406853 512541296 640992374 212061442 831985177 375744455 856079105 148395372 820080399 639162792 96668904 141147958 192710493 568027550 694057268 238114679 448057019 174445024 228185805 734493602 622331105 2913875 99788291 817084205 361410322 328022904 986346018 464848750 972165823 239677168 330192506 72845607 132922075 786469355 659416646 751372314 32782627 816274380 476056385 303409190 1764965 559432503 323403518 923802387 246485164 395037167 445753676 557766492 753380008 43040072 316064550 368947726 517144808 12488280 999284814 583853969 275181005 599710346 18717316 652777894 613362566 390979127 21046188 951686102 297643729 108796219 104329752 148991442 283495434 870643921 61909745 986437504 488288604 759993139 588174428 896249402 902550863 960022542 136137375 774787930 700672009 908218043 923194968 932782640 883834379 633837410 206659294 95098860 663542054 393425144 236788999 223353193 430858179 744759420 972285090 56542766 419653626 934738758 379403241 535121565 622385460 126906374 472994109 333496322 554523025 797009021 865844657 608852161 609312126 229977634 46757176 865420988 701587154 999752300 447518364 294318960 213146570 695303928 499195406 514193561 748161355 965441570 404943904 98624659 645919969 10030277 757350442 718995041 790509222 195989399 13824470 800786024 139410232 937298473 447598590 840503059 689012021 391023032 729599166 669596618 441501155 613670650 63207379 883853846 605897014 990361818 587818236 399085402 879270981 259190610 74441525 509376409 255789495 762284756 986469228 561973855 998904113 482980726 858238602 987074485 824971662 707495253 433043438 783529129 326892218 948379209 672752593 343871451 939020081 485374024 311552317 598950209 224726738 184170834 755113640 687250890 391987628 760908532 853833789 26082993 386479993 52770633 380849684 54679180 118972289 404279671 414891408 419796370 210467071 100038073 533478457 779447910 572346888 675170994 264413380 829830729 386499463 536677796 841983748 637110373 929757598 712270695 269491220 105118498 735378298 671537575 728835625 35946971 363210746 897252837 280032509 642151581 270888813 127393884 760992379 591439865 698165128 820168249 263489842 96294282 578207405 970918924 851919324 471778927 742350093 701903074 156103059 938420996 928861086 355941567 512546548 459997991 177346189 250200256 812257271 976883546 134663968 71537966 30227563 950247771 965908031 106104398 282976065 397662700 955397826 463234192 463090011 789243112 795188454 297342376 593721359 710717112 445792318 847167927 733884677 200287765 432716882 362570692 631827167 420005356 775430121 588811782 148845604 43666901 558960386 402023006 596203025 544071774 918478991 274471350 846174756 225007196 398809736 632754380 350129288 623733804 293418682 732029841 858618251 368886988 895986014 602137824 873524560 931527309 305654919 24908805 822874793 505112174 891442171 456557019 354300735 205503261 44134914 257042028 859279636 411416886 120139800 746595726 229812559 739419152 559462818 723116991 313367103 228516230 244571235 150931231 451525500 401358591 944602915 579028606 672350231 861054526 174872286 945651898 692277060 227870351 254936908 203610601 542600325 436756182 119380542 676528133 652704480 956172366 620555389 19290706 88701425 544716920 819672334 661327812 780744843 85773793 366283759 266118705 584496703 788706491 143584720 312184175 417856957 521431066 654563588 970735447 524305085 192687771 518025524 453300748 337415963 357118603 344246719 211474002 8082616 282407184 7610790 906585738 121152916 551044548 750231104 560776274 503526406 998718969 163369388 98131954 94079090 288107055 294616818 836147447 519319456 11699539 27391144 345862910 244522351 384134754 556090289 983893711 652043212 768747346 789674901 931965530 979823317 288616144 913845722 980730121 453357989 488448477 583229127 547826525 549849405 487336373 139954906 444671808 869020738 40542409 945033146 893068314 263839816 22346255 30181819 134917395 40589754 262681649 20276938 316621847 197743655 619159387 617275174 284630206 409655477 872863470 870485927 869600122 915612127 659672112 283520746 287767582 367177717 410130726 677130175 563192947 128643429 949276029 332425676 909425681 999036158 823140200 788404066 24532883 50465006 246591059 453465206 842862278 941138608 664002229 239757632 131820941 24775596 236399466 598435 987766226 92181412 335797210 633581401 865000956 35743843 771080492 104402228 990914538 199369562 674091260 680398112 968119703 377149074 242149116 903946798 204519322 285112325 378937977 893608642 565351390 9614168 481183716 360005880 546998756 821798129 763047119 392026473 184405951 496561328 897177670 396189589 113601469 400718762 45099506 876898786 952823764 646421199 641672602 180947446 426650396 162231584 478200975 822047950 551621089 211419755 69904606 197034260 860967682 99583516 622563812 821507890 823384087 617048354 800861262 664784111 600074282 262036550 661617995 216541491 467251245 608111409 481311661 861602977 950341197 801300178 563597187 983854388 438891402 158023774 289947912 780008561 405929864 211249044 80584055 621748349 76161530 731685942 163284325 405763945 872277650 882160278 305557462 187280484 286649453 698951475 669407777 857057392 983910353 779911024 805979876 710827360 624365817 770572478 649605461 364647379 112731341 887780873 942340577 63523983 467580392 249768802 320095709 959712642 879732780 658640890 312059025 994367473 739584078 945556908 3067773 412540413 218642874 186787246 807957711 122542440 416515934 180098754 508483211 224891784 180043390 821113529 740402199 725738021 134666811 689417164 100645048 129220151 76224615 838155469 926152984 722877650 197258454 331409411 821112760 711417549 141906121 679008452 266216666 383438459 980091974 578364032 146045499 135481851 921671149 335732803 112615000 470015216 625433620 436086105 646979824 848670567 603259727 268040420 97176302 676736994 180608676 865621869 688736879 24579726 518053608 600547312 851348361 257225810 936083704 769523815 982797188 343926562 807991329 759103071 604185803 316794621 182848399 153348865 595938317 680960201 807169404 5842243 161746690 382430318 586429440 851182170 913157754 677396828 91810824 80764103 747827523 527372756 660612624 140375706 631123745 148808678 674478935 215500896 975610454 655035729 466475346 1404977 145882303 372821722 83017001 723503499 332827673 627038316 750311388 755700083 32586729 253917107 747319079 350508720 697597306 892647163 478472085 812657143 745653847 829585032 563242041 12584756 180492520 205584178 760571226 130474830 389042604 535379460 880065285 34246731 335037779 37574175 41203459 81096938 317049501 339734202 950746131 771586136 931492328 309083235 732332465 685489238 114282462 914659626 51010820 347631782 436976895 570253958 914967218 332356969 460963387 435477398 122094998 880917207 715209230 254393219 633854824 562322119 506793371 383038571 442138498 956947004 751869818 693103423 212382659 624443013 486696617 355627423 680467984 466063004 276168922 547957173 923307219 196953209 482282960 437869029 102305324 991626638 801575444 358364053 566335901 49682685 379189236 14526679 597249164 698147372 38034790 156861919 39966160 123882965 260969625 737221610 863280851 561017987 901960205 357842790 277630854 295213793 442957313 611810887 461638289 310376216 148231670 925893509 479905562 945928478 52527619 644579956 60827788 432167231 263005367 473040913 867927885 352521587 182687412 570604440 52539546 173998471 764017438 998025519 120114516 75356512 854798548 731176297 342177146 506043391 713832705 68765775 328981843 993053617 678951200 264646976 469567400 496411163 406556306 745597642 859653230 201321081 146612106 988711635 966604310 877058160 558847070 927738755 521970835 196347960 938901554 731892735 677615280 703034736 103466629 347755887 921791813 303266078 768062252 787052379 6090400 639992355 179067684 890064686 150170139 604945489 846494837 662377830 249637124 496985685 250566444 359865136 422210156 206181894 337708766 345378743 697684499 70384539 245579819 730080799 300686048 791648982 874204623 818179314 292988619 60500251 292718295 219151437 752751976 82328244 2340813 358763239 66552119 774081435 954419486 316632095 905318620 826224778 191493767 51223579 656618948 186992668 192704550 648697925 245677249 712966190 312184168 923159945 887789616 740963839 970924981 946252039 330833079 908862292 367033591 543681326 343199777 214893115 702766865 906046318 907338239 12191611 333414740 406679235 282148926 967889149 944458403 499611361 117657866 162950711 324917601 593491246 608620320 773562413 5848361 810490013 657113725 192011032 925014168 595959554 618115318 404314265 712403761 358196437 79656606 822869904 50505796 658198285 770339420 484631520 909100238 519015858 958647594 495136311 559865985 343683557 56269810 662701685 523421361 617807327 226082316 566123361 516377545 308627355 427641754 34701135 253582699 46968638 83211123 926637128 618856492 775664046 694082906 286855459 147072505 574967001 982750328 356518452 440861945 984265109 700929378 477842486 178940592 363643444 582086063 18744698 671013405 13677212 266633478 513253695 44690671 195072762 692917590 64020071 45405683 865677246 104944250 54754385 731885004 407777402 986462317 339005870 253568493 476016150 896476595 532181743 570882168 92704484 541205347 819803566 62614777 557999706 385829710 799604553 407908469 725073577 171662879 462731628 351729729 621530502 220017143 617186293 953153571 787617257 376061522 863056277 538922783 290607537 421310783 270671863 692318877 789909514 716581091 35220101 846547517 795989786 142102616 132675689 904956719 391370352 382227427 461209319 845065399 765476922 488703074 265978423 982975300 260714609 457326059 348168191 628143646 264263277 766280962 82873180 276372748 395799724 499313433 275360593 605022852 93553429 280837536 324572449 936081887 966009845 857969558 772350318 913536989 723148284 485572818 842885036 153347445 681109089 658444149 230229456 785068412 979335301 801509390 174764230 904868528 853900832 303787388 687014289 743587140 243742954 231454338 497778948 587373794 655549664 573112661 340410365 79389373 220602077 304166760 814074496 759985154 267336539 283358821 262902856 370283248 790877809 43953160 167693770 538144540 107575163 975218612 40749299 223817135 95593375 546048848 508981340 67497962 214822502 902591247 149031390 357256237 809080029 921270866 138919506 946510074 371986010 70840390 349900054 780161379 650011038 810686278 33315738 425386099 906928257 295728807 8856885 594326305 496089919 216466171 879212057 695220834 219615244 43168732 760069291 223227126 55616219 26518320 598825376 90506851 216919264 351796544 201932925 595077118 840034788 127368475 799206571 263123750 812731121 975388212 236043149 345437803 783163727 330676842 645235423 842123340 61351363 357524871 500495132 499673668 326291069 765005342 148740850 43604021 286730463 145844308 45070886 821165028 419026011 411650424 94099389 438555691 328950464 823026307 222651437 126707734 697817892 161625484 232301662 324531353 774278620 672987021 650800905 309421309 689395123 885892433 437310951 398528267 15995885 429293151 215595770 176275710 750763985 955674262 976784778 152082795 146363636 244613985 918856254 123059524 531319213 18766223 190274087 942573349 667165642 171535714 105340504 442838808 930442449 627296990 507175970 458968045 446837513 29215693 918620656 39780596 149667718 417793992 520644706 709399404 479278051 805184567 530757264 174921963 270505446 54720431 959419151 659928890 738570508 620848634 127042211 747034672 846065462 887714622 375057964 81471757 431701135 977775104 390474726 840094307 763462583 651969129 624711781 466995444 962254361 233908374 130943595 732265223 349164100 928654774 458890099 556523064 944631324 770333654 93944851 454087002 654565470 844910952 652771353 567872630 383258690 458325959 235234928 458036415 15743434 347989738 783157793 316024742 382674429 993670198 226511915 223462945 831760878 833329769 428615300 305834209 847362507 691604615 543504877 460741270 314133628 57149543 822237207 696820129 517864655 449645078 740002475 15247089 783260086 965619352 618571067 194747410 817989073 338536331 870194142 468458797 652697111 990491119 391844889 668864080 196503887 683147587 961917305 781081308 548890791 484378639 297024918 442990749 160779671 607522363 163451656 198442080 563849819 62466341 770646812 990497219 29173378 605709216 571760496 776967932 748950205 639566717 11857182 80822655 942502399 153228020 264726556 159801582 70204459 297216663 735430269 393450155 724252292 918733831 356440253 576637301 847983852 716532577 439831744 111939072 79907832 658379567 767351958 442021333 289919034 339960512 643760742 457785549 825162329 778956237 462906891 197677476 230565413 290370460 453447529 559440852 150017964 206414136 265103942 103501213 864588455 322035267 412406524 253121212 300845722 935868383 368630678 772821859 832850899 690247189 92685472 433879615 140200853 594601011 446966919 740733945 145176744 103769977 594655367 535580320 841160984 778334914 611521328 485574264 472488460 507743251 436060177 309750377 565010177 464824243 411422458 949554482 332226815 809842561 179815919 761150651 819079921 285198794 32418699 129436907 97226614 341135143 515679354 874317364 61692293 570007062 620451315 343104667 338716259 812726878 288404038 248528473 721939806 616124952 331612475 616017851 790068690 464805501 166863618 126938910 490139852 791596520 420148502 879848741 874143194 799152645 627460537 788823367 970908730 123009224 527091142 859860124 80434442 937241916 117735559 333417079 751438125 354703570 811946811 773069368 55807218 511907831 948062934 264251155 486166655 704121754 550967475 568741530 15492569 508254814 705805008 774899669 764646233 935921708 31398988 91907163 682027440 358419989 80846165 13936064 370963541 194712707 454236729 684980240 753097206 625201690 722778903 922611607 630577209 399491563 85418436 505928052 965349074 15557940 327662223 530521596 60070582 712162592 660960756 543663762 922566374 79622448 482262058 990185930 876185282 51945151 301740398 657667978 742034192 235933007 816485715 338463703 591240189 968559925 875634941 286657330 543932898 200196227 923422099 192666904 941680858 939581376 921515971 298996894 875538661 156390807 847845338 430692536 160309463 800319395 744098702 429818527 213857283 751492713 781783244 883618488 103467822 435891813 961555357 500668569 739307243 470077881 715287243 256847633 610453700 302781484 447904146 814750212 47809348 574639975 114108245 280910565 419553948 170861373 854249437 234938907 306156978 973709930 790631571 76254906 126445814 689032162 575917669 331152278 289284895 708249322 691678703 406768407 117828280 80074993 793039126 763780519 802877554 173596344 425782186 807782456 724287906 427668906 847083991 115723783 9031461 841306472 552574529 715393304 45837479 699123834 543518588 177215315 929262453 128993575 386100375 694482550 603644931 427405414 592728678 251752817 321520372 87324348 115955494 237819326 62130588 181822621 516618417 290997959 145541585 609489246 227881025 779924792 351087894 55193367 762382297 218045452 369181529 849490893 321501660 615335686 947927582 242802531 88245331 629161579 829563987 928394073 424222740 514390566 653063402 925774503 568827657 701589393 754436215 571660079 388503916 286835354 227028351 228230176 418700263 368471706 586905072 33053287 347577707 2258903 703906315 50513542 79407613 801371888 756934422 73036730 383892352 859530865 621728272 808527106 659121591 32284374 422492014 876586966 168256157 328126831 524705549 38805251 47816866 505892605 465300218 165828103 308244309 6645655 757914182 683432359 694760464 232388157 904457528 593029655 706087553 373127818 507246434 928697067 896543434 988937621 757188765 115727727 447569787 610177944 509284380 537458763 506227901 492264742 674194746 398633471 187196919 956483321 701601784 760185147 811120923 102044265 819354631 541686923 809308622 64144141 64659700 302243196 419946094 870320310 912006314 536658898 270786272 478698377 52392089 906757455 359762450 843903190 763239461 627039679 215249194 861366157 451437097 435457651 131384645 70661304 815960028 536061463 758160514 715504574 41508757 663213151 180554726 498855383 971952773 580485922 910733637 512338245 803027309 536468118 518774883 162156973 544159166 672317418 565673310 756392344 981059584 922280978 816041070 187055293 639437850 904552134 786168505 197388483 779164481 383586710 51732676 245631239 346107449 405753388 678792416 722895355 709218080 753627980 566821684 664693676 122494540 768330294 309846236 363435097 805988055 394388130 81891170 775831 863127865 793273701 324057067 463605809 728950919 187799675 984341750 835946823 35626587 252782376 907196900 293041898 36269845 667948296 942801331 299038941 720211206 336441946 323646352 881098761 179713421 216936078 6852142 677281808 794654469 974498601 143744779 508666792 442286857 442126404 190339598 825128175 72522634 461031543 449286513 520923940 580724677 482087325 937285009 149188107 216544103 68323320 762123905 578240430 561853184 607336709 198918236 576048367 829688747 218960463 749532656 237928294 983863117 591422049 443291411 896151449 88989139 184081750 822612298 620014574 114712400 393577335 319739078 495561488 602506731 964713209 199050030 660939225 717360994 130249007 749556892 546898787 312423547 331816294 73953684 161971393 358067062 891884512 609417162 328742640 179843892 924658787 11773546 704278849 121840291 702800890 7741889 126744536 87242185 765457090 5452130 11077844 34421875 46669572 380272822 967224430 885322614 83928521 605134097 591858938 970179835 17767367 434920893 349302842 717602278 944979402 371091106 876446850 597249710 884076317 113269587 651643938 182243716 367854439 549990396 480835551 368868243 784190735 137280231 655736591 661911084 296783395 382709981 86940474 266367900 453170317 756920465 669342864 187127077 863261661 156610017 470739525 604056617 286079384 71309539 822380433 187709784 320228004 588766046 209642869 287494582 629060409 936636340 566083264 502599168 534327268 156885935 99298472 954485699 121343597 787371519 446542307 935752134 215890054 686298325 586102078 905822108 675796516 520826778 189138388 471473706 297069645 251989166 546726529 762704051 206783526 75621926 635604991 270223385 348530220 686800609 983678609 837523865 42612068 331178842 382404308 73095060 584325826 824844922 775304220 729686592 687276309 299634567 598842300 696488926 342829620 813830088 951653055 404760999 69985347 636494617 969127423 554005166 157201109 591017241 538767033 422191328 162565704 638877491 814696835 112057712 194518002 285769214 595699790 236170934 375841487 658737225 224659825 474150394 378697727 624005942 749727808 83196843 580481816 377790613 227858438 706870875 560994483 291620754 515308965 956577164 261857907 562341705 537924402 666596816 578755912 126468857 867657346 560326174 707676913 537683383 255717099 821098255 271746640 881884343 114428263 749841596 747820502 710798434 981116700 11435666 340389766 231085110 889171985 232506230 651254794 127059079 700442824 200547894 794844202 275951955 294396380 666881972 915093360 76888135 810890568 912481707 531359830 61203736 406788542 46814429 170712592 912863309 344817349 126717702 293464205 237367375 666925554 803992436 161533484 421535231 934538828 571347316 451061937 695625660 485638365 487508874 361427366 538472856 343486735 257903788 843095714 377968545 346628763 393631992 894917559 321450411 375192333 623495686 268898459 196761084 80045636 863368087 992359070 250712176 377624422 18264442 836640091 842931550 750968909 359507488 604102995 887556165 461855701 276224686 413519326 347526079 430662768 325240226 120881904 563070917 398958741 300345302 238777001 121100085 664121731 540623297 689515661 462346720 722803501 723531756 60494120 639475907 943654331 966831150 87316562 567121172 312700229 300160802 616446586 355519418 971423841 95766301 180460608 321096791 620980338 725666145 611623649 30209654 306339511 285955304 268591531 883114994 366283598 486699325 935062128 335505473 986078576 156015653 889054111 50651610 527856566 747012545 47192415 595089048 360480833 248185068 267408840 24300976 243035254 95504520 32930515 679400415 160835709 368723254 606184928 489988131 619345199 862946308 435205371 434547528 116200254 963117290 53536864 852634339 755778806 111878031 540751573 606232273 170248401 219864932 979655119 41010294 290231335 151595363 212331596 676000370 840715933 577130123 557311682 719748172 115923643 146688743 54742121 398171088 429136331 199572272 713678638 140141869 793142404 391171392 208835151 24026746 647237060 971785970 457924170 607914289 407307244 275120575 314503763 926007309 696627747 570586908 428277479 167412632 365298310 622625412 786197141 455159888 656282691 781130849 722534146 355481931 74380778 558731042 695209546 57696793 630200207 193962770 829405408 491594377 194925874 437378070 873017867 588140328 7932583 586976344 991108232 959872997 798647797 404780585 90675562 593052804 13611210 720377006 702519544 246723178 680846575 545948137 333382542 434671925 868855018 395853647 624324350 129144517 70501473 724540566 55811875 788840103 500467009 384769521 310509198 143891298 531189227 728510493 783138252 41115724 52685658 639704406 903690454 896269935 935654343 628348160 175221727 139956667 694003628 309708526 382554439 466242431 124403068 217016981 675424771 930515417 107606213 481429539 196650588 952689396 625196011 745462714 862328686 542634567 173186433 537921907 673802463 479923443 758945214 757529008 536180821 365638785 575174033 41996277 857925897 267642219 81462107 227712848 445633224 725037036 434551782 78903626 676879728 1045341 923968891 389342433 645482034 837989515 782698809 1778818 319692015 438301357 437270784 121542632 382888591 983699531 456742815 144000085 166226042 971566755 661048720 852188340 157064238 39175745 145311043 479591171 275784498 603062629 922131435 446885880 555824855 216473732 74203101 354566332 772245195 78152713 834659580 527147864 947977523 747367304 218984101 643763095 369745836 378415053 155964397 569334855 448372006 836576205 681439879 209891235 913883463 717043795 252150365 854924038 370298392 911662566 612444029 998535391 866267444 975202916 721641886 592272379 19612666 166127010 154731799 907022528 521755385 747078004 114761522 829568132 46642158 620294392 306599203 872770580 145279007 204175536 452342182 417584509 481426076 75865809 20694553 378350641 728690443 522212745 3284126 233286428 21315550 342055264 783640181 849381287 464887087 449195595 717231908 12152626 946540417 380921005 574133963 765171371 171770654 330831005 92214093 390789671 248140450 713936980 491774193 377828664 447703343 106846488 637076380 201603298 326112598 314780578 969529259 256439131 386286227 605452584 696546790 270395544 418717694 387904687 693749083 911982585 245249813 599257317 744251655 733119845 990082065 924912648 341054979 420527022 636933761 529575534 820019209 443810789 234207450 640715599 454806609 777980730 920260438 79648728 718741574 105224283 568926321 994478082 624456246 960949757 473098139 716590573 882988974 413025979 257639762 372820928 3018584 418655129 62627677 269504741 368877254 929151809 334357186 871014609 716185777 864383216 958737535 75534718 358968651 503917176 481697302 720089315 138362495 691255875 171261387 143713255 552771331 441370665 628597762 378634501 389388037 367159799 7019789 258032170 526588952 553924538 378565653 332624608 791211801 345412383 413375497 119937521 449778042 829455506 787205717 79725115 171533270 554787864 960365161 921832694 477884047 279651795 893331960 146256326 699858966 499952470 748353414 594030399 457257235 461309403 614146169 282120234 19145802 427911702 742018904 70127915 84931486 372030295 655299110 872878110 287134847 141850943 900825739 800521009 150104131 264219998 595183810 711505513 68225153 72306380 539940927 85374307 236632836 848846818 586063251 141709778 380977509 960303663 27736454 900846941 540984128 545129101 201314601 521651755 305490292 520300406 235789500 993303768 685870314 323161487 733459191 204975770 627827284 980361937 578121343 774795555 122987021 285767097 394308859 385233880 982341260 636910225 538611517 914171458 485856686 413587133 757093139 72778079 826895534 176052809 104947801 266639526 812171479 338044108 313108319 646068904 787857763 407807792 590433958 700634986 554641658 115003272 1222543 16227485 531660408 908175512 80325799 682571362 977166236 106454684 208688065 60739990 684701286 604745350 492802544 247013930 319501329 419928197 697026727 370163668 470001758 326517962 777593666 973561768 486195947 465231673 994094227 36790375 940619531 364701959 61725349 326497826 198120979 376194044 366479898 849200934 837836901 442478775 746906366 539963457 578707117 103224709 135588437 54711194 45242386 314998986 201920394 553594848 653319617 936596310 592621675 176220146 822920814 705044720 107045198 518130103 467349105 762558437 522552700 208764709 995432657 491872366 893428524 58573843 127326877 494968237 207315364 475291859 559668254 554382174 852812740 541704758 145044204 53808944 386318319 653774691 489596754 630761253 949836713 659283570 712772453 216405865 679630993 506266465 861160886 300376584 438741959 908733542 359455546 139384056 272207288 558796055 50709288 339217677 272472434 301689814 547543547 923242298 491906188 303900481 494873163 604810926 494753765 746479450 513392644 166955226 243444189 380918447 8499361 42871771 648688450 604829119 487428721 722411853 405805425 285406209 691779287 437472217 195029904 450290977 745754792 83634271 300958267 254721165 552498761 353526042 674802983 264549712 843007119 824872886 285339687 128460647 963146246 864304485 693030642 175179427 951536818 885818591 384422235 889175761 441718614 214782398 134662525 881397170 319707143 392148752 530443394 456351428 476771316 153302953 1911926 123101264 994927407 208941593 14694455 353121550 72193739 171093139 59807374 120286561 967388058 703743611 651888824 412029369 622620275 610651072 790288071 672917593 942858345 307307475 283772310 544140173 784008170 684785742 75322817 566331873 13171826 419318657 298514890 358180347 707459887 308915451 49318962 21650217 314030566 384371375 547020243 784310981 65170403 265510978 435042198 982403261 360707847 282575606 322566272 47227476 814561235 30586226 800964600 591948086 496982277 741223860 332553641 443743350 598756696 194581778 734622256 941519140 292861245 228903105 524446327 318760040 998299267 678282206 756544131 30375868 952796751 694913320 68439106 356415170 881273687 282759330 636282139 786039633 582089402 610587709 951329416 79159885 245009643 995228577 959817875 549098500 91098803 732130806 421076974 176705744 160474389 207778471 214431593 229659245 209938340 286035050 680013041 365864098 409619958 499268991 957511664 550394796 764549704 857963058 816825788 573053976 313431304 49872445 526017521 709228385 357761952 132674307 197876726 890246383 495521867 676817954 472201253 64307736 414405413 745232854 188567336 186263237 113698571 231564064 689571082 493761991 75054466 346192003 713564662 661816414 323183341 385790735 478536118 571337001 398965040 608583353 810802248 331270418 475945616 895889864 758959560 580356744 448216982 662274993 237885040 348852843 926432483 621164166 45254615 773756263 819384056 18103670 63958407 404922216 655464527 567452220 562504923 858326760 871576500 726013351 320653148 78029847 339183622 2272738 412532049 897800791 412864025 28330029 527867664 424111768 39014977 3408996 199433248 51718278 873883898 862839748 675917529 606652384 865813221 288004356 637837050 709745017 668152644 401226889 151888004 973836663 245888607 728244782 861433271 164967749 392600888 990263357 423234698 945120012 596778349 928633778 448309627 228685678 515083378 83341689 234448589 626539966 157616958 144633888 242780219 933594517 835456440 335785921 187135090 174103269 84175758 770808903 155741702 603929580 589253595 135734527 243330435 944502164 837869045 494266777 671535381 452177131 305385443 367030782 409489156 344659443 13634201 465446074 692758011 98592670 946875757 998180417 617463951 48267973 894499022 250049073 74116285 633643784 329526870 279035867 934363033 603266009 521894903 183467235 457514230 215003230 110809272 943686388 696174183 850522926 71875737 713491489 493433831 576755378 104079619 693009214 690075334 296610330 381181833 737009682 15583143 733756220 476429015 378894748 233432850 582333626 14138080 820757887 553195310 972529221 498683448 910590648 147485544 447987676 946289454 976545153 99688101 801509572 353005188 262269619 946469248 790897418 41463169 954437985 243172771 14033757 724991786 182494266 441115348 72498791 302118341 988355899 140241601 266949618 925325522 440823209 88191294 971617240 370920610 137621506 637313760 215787767 760882107 528586646 595373049 81376970 650599599 109945292 600448238 384157597 698368186 31352321 551169311 325242677 991940730 135918859 625562330 580551761 364472945 946103096 603324100 998474483 629720128 121730992 76976563 155632733 746762699 14690762 669703409 218073173 504948884 123799726 677336037 614902801 633349902 298400039 499586616 949668122 664568197 697150693 911118771 274758519 652337479 459952725 650956302 371546866 173268941 107544687 134005565 818290788 677148962 446792472 953926691 438873207 866497297 963461565 154758034 564285075 671416417 757082460 663934638 279555862 428938025 172419779 838089727 717959582 897375899 658334497 846132973 879459845 306506866 228381421 471053680 170941668 877486581 920526000 306401012 932183968 911484083 894805049 812287622 109307912 928088375 363003597 510299637 437469060 53024456 853996801 151338198 239540543 54759230 810447898 761103531 819621221 569426104 672070458 254688629 237958212 48071928 275708271 384265083 727195257 742141179 624271084 369783890 210155141 494872754 189000787 126821548 238506805 740998864 847174098 385589665 22507043 608019487 286104235 299720065 636836571 836024902 342069773 259691598 168869246 325854163 121380293 302187948 801401109 124729473 594445202 477456836 317309751 892712769 770297380 150004926 689252131 371076221 4843898 839199193 515221628 634538051 359270244 669845710 899229950 313257898 430546260 485921260 531632621 367899928 182375233 74117981 467880067 350812141 616188195 751600549 830072543 628433771 186793733 44504697 774296081 309407986 8029563 741267591 685496439 647871978 258265173 466215655 458867781 533377871 342940515 124657087 35213481 152533632 548990733 566313615 247390163 466412410 270434084 30587111 364143516 661893666 155024683 474984645 867884519 912610584 385978685 585543367 438104176 394015259 943413564 224589893 486475118 564860800 792417876 354292333 284334208 188542130 252301583 71423212 493414962 535508022 11417408 955371758 588284431 140994685 778917462 985506516 793520010 551729501 965424368 962899229 111363010 304007964 534721678 302874065 575860303 601288234 833957939 136380761 596669436 880364759 520932602 717576037 6257696 754852776 505120461 275993367 218793048 622416937 209080879 670201435 391815087 240118055 501283220 237534856 867725340 851741517 965041967 679015276 928230187 177524113 321203235 776494244 543884937 136529899 403142368 932388173 502420930 986406391 490668447 351561336 310448148 307743079 717821249 360346708 998994329 657291510 639972464 25951836 564312438 242200117 917810542 388950413 681422613 770443228 117595295 607751592 866328052 713489905 985627022 740931297 218840892 572607785 849409857 870967228 559018039 877663543 857940235 332358367 995185654 443474044 79161702 302508557 402421613 929917013 722940218 972519856 621191386 281264198 493331778 880672950 698297143 201810570 167667478 120435696 846980706 282622473 753222471 437178030 358140199 237180733 821818492 155126345 758525912 111967011 151269971 163094328 454772619 370703357 982178720 748738976 12088167 974268329 669940513 317269858 799828541 39611026 409592082 895309394 888261720 634558278 714903895 705576978 152905239 515254571 186547437 581107367 493142666 213419870 631631057 998063511 759114656 926970166 931274726 419412799 609127420 928265686 89321928 471794758 594900699 8353663 449834648 400226412 746326357 909453498 3082197 702464451 794078 617419024 311134108 52237674 974902053 607093589 238558023 659359535 68832954 613232386 901004242 861994166 920410534 653204088 947338629 245678949 558027430 622033384 865958262 708556171 953431451 491620472 896322420 839074934 925839885 998490553 9189291 627136533 403258166 416496127 817218825 473098974 461952547 888456535 15863280 771547624 560513490 668674860 948407260 153906389 17728901 730652706 904119509 36053897 621399263 701319731 235572930 106477929 461110218 502230528 657454677 670054960 722710135 261497279 227906731 213588882 43944583 264137161 588423484 443598178 856043924 933190388 935684278 417013574 995694434 692266487 876881791 275827764 928611495 352672715 835445175 767692547 972507499 945874360 446719257 679322823 38611489 377565338 623633208 872817482 41314792 70034868 541060132 239445072 145785492 127495199 325616133 329311301 154424061 755744868 181732094 197938112 417203222 723589599 792870069 806473414 513794755 387231705 375774078 154068327 642033256 520659204 948770934 342437748 673968130 777375961 779058482 637223635 898966934 778117155 670994569 494624454 249200134 537332250 935059491 70770490 811960103 535342570 904535826 668631866 894040403 683841056 589687931 146541535 251102001 904263465 23993781 486544891 728747959 551652058 403500019 746774307 61393400 694383500 206183546 240607056 357994798 103870562 342350755 709815065 669487966 86573517 931461995 743677305 377955223 920382288 641618552 973531506 324455530 836561067 940116686 380218046 841588954 183437375 693750372 362248757 657552977 397723670 396635310 819863539 154652078 553744739 649804530 454351301 826740047 458846928 604926595 403481452 38055393 78243910 273524641 23700124 650453877 50586097 274216518 267907815 146019930 301836418 87144521 438232421 188924580 365363195 496576881 534219532 686137020 307624104 125019352 97242507 389435230 314971934 621966102 947514186 199589391 320447244 443472224 331695571 996726188 248222643 564106953 167061902 229189596 570851507 789649415 772190224 286532622 352303914 289232965 574713691 766057260 387285229 974156294 496779579 748784203 45165018 667252909 44862910 345845849 160861136 886741021 330512496 468274550 983589851 199825914 212606150 561876035 831826369 277905494 615334391 575591187 595005922 461243413 238702358 920579074 175040031 202272102 882626812 834385296 932637813 92580690 502952881 634341649 755158847 187298776 525940653 93368617 264607346 499932668 713114991 901134664 395096327 794012528 927036587 670033050 247982940 246852132 227555059 307526244 73015493 987878588 543845927 537795562 364758717 80394431 206635895 567456486 729732442 490724069 992645411 210214040 276969093 989448800 61425724 251820740 203256731 875762031 833329842 941388918 285508416 966058398 863550876 51830242 463112377 511240341 283460915 434887956 262781021 196324719 836596153 44325429 555324215 701043791 862389258 791379773 323346442 499897773 945029793 751222928 816434236 824338967 75656496 540655033 160355477 26142573 670171955 76975170 767965153 58230992 222255647 134426625 805334916 841382453 414065947 249645901 811710669 33696862 3407295 888277830 11721417 208458868 51771987 61114512 335867675 311153289 391747085 951491798 242251337 44742680 501802652 768941448 276171404 54227864 985600292 431000404 757354474 74542538 544262930 343309992 988420342 913305993 648243651 799570122 529048244 917704675 61152640 512698751 468688323 822574072 857865056 660948386 367637008 696559284 875773141 25438233 547422761 871244313 875722678 546963093 629707771 904228523 791411806 848675191 776496528 354351768 869061252 281648203 273444923 80090146 381364335 926115306 542434457 591737290 506399382 829155432 515872617 583612400 352640430 366462419 185905124 766816444 801525970 948690110 154055757 719023521 650211674 406709302 418642479 51329735 49299569 616184032 123121394 486199678 470163052 209447898 735274411 54067333 314927034 50188854 575198288 81388880 17418053 499350180 890931827 178841599 168894135 234114280 278033005 186699335 616762684 649119958 245066907 931960976 896180710 965677852 836562881 246724088 833825304 904727484 892718792 644548079 189550814 1055715 821118778 811228616 61035388 821140409 899369304 968161598 755952925 596187117 16992780 893134907 698885948 601668282 518102725 450834776 972897204 26387016 90258487 52575311 832281231 488111319 966924747 774379364 735328460 223216046 825288463 45497969 482267886 967434680 602479369 20244481 985495847 335541239 455083081 900714039 653104541 767074451 442958246 474753102 330846385 629560518 116253154 580022008 473454320 158945337 106337165 356564553 703045927 981119429 96034969 549097072 775004814 851538449 200824284 310867006 754911249 863738321 853186659 907387319 633224260 872305742 619108096 728874035 850504427 462240628 93383786 457942914 480481403 694601718 429742171 359199634 448342284 677386292 71629595 780036592 382200227 99190586 858149214 461313121 352081959 724552212 843708452 970713397 542296249 471172097 209384202 463173912 237275273 737060038 17204954 199703070 417257308 739091508 103255684 746773156 682644140 496045133 410800072 685075450 676541846 757714703 415578364 284767148 848858753 751278052 529261907 440845991 10041914 602267182 817115556 325373704 728494440 609341755 65443255 609931802 356363397 564156442 446064142 637330263 784977252 489404188 900737833 188372591 382536993 653622008 868041308 337928961 278534568 182619297 708453731 164488617 355638756 66953596 523511881 490792282 677652347 596637171 411785589 245054433 563335123 439752047 566112204 163093144 461920116 626222831 688080354 511848410 975727293 727093991 857303232 27223561 373851141 367769102 609606057 188908514 701667309 30616774 336856239 404863332 646154185 447207920 117447414 941264486 344048206 196197378 286955861 439283291 568669564 997106498 2763700 829337368 614506279 194986307 134530041 945096262 273857679 56697964 846941522 447703148 559630204 670079731 991408671 456530446 903308603 65796954 9057279 557179722 717057978 241031850 640476009 876208259 585079720 775081350 563361292 662158952 41981254 652207105 849848642 1804529 280311307 203580933 322424254 648618053 319884737 214058766 421053167 685129202 38806786 741845418 252010365 515559857 991426180 373784318 158959014 768933213 493744615 963784817 425925070 70645068 56230952 621434836 242218649 571379071 508448105 338325470 67313081 232907980 526141548 147956223 392353763 775610034 437269089 925176511 37235942 102562407 95281953 993490863 740109731 92862854 600227419 955062038 356624717 464084423 960080871 166385596 971392985 630616231 27078407 979675665 487582099 668818117 477388426 492454393 301711922 430704057 90680226 111621206 91304048 643784205 194499634 523065779 113444400 367478418 661297824 159897274 249022408 678080953 650348847 952288448 413026836 189569849 823072249 634489399 681333295 351793310 481304333 97805425 235036076 888994674 593362991 186199163 934491524 984370001 369483787 35201610 921045308 532047269 647056503 413655714 989098478 927540576 41876600 370467286 954737584 415822308 866986219 166433203 691105054 870512552 461820302 187559941 632454601 523483095 762846088 206489067 387218302 738330546 499529498 269430508 878191987 525844170 912608841 74705122 892764404 929436541 13349986 338606893 299155193 722586378 234749440 247278940 910083455 23989946 59709679 201743530 2800596 883757302 511602144 395220832 385200465 807454672 60793867 560197837 521993293 344202185 928411519 110446994 64788078 893539705 476825918 356799498 698500619 362330436 44591723 532273800 354174687 63867450 570371117 654847619 418359762 95221375 568761923 601829851 659282268 879379451 54808117 842000767 470890863 175468210 320103026 677919360 579327829 213551020 580538305 199143217 846915224 544375667 866861621 514493902 719402851 494691483 509708406 611620589 259819026 860436642 807018810 78278218 566863851 325798250 640157442 752279847 492787610 739961254 606910690 916188485 561093501 293850995 35031000 552656967 206688790 881428428 596966792 840839782 562071800 173193540 848470675 993306938 325668579 126594273 733557962 613628606 155722200 834679636 962474529 506052036 879753254 876296969 185290351 31118836 656774117 699980060 422393833 459203337 559822460 230885230 276219817 636585830 634704365 489053910 621020047 643733832 752009725 977893557 252950144 662438039 636372942 208495961 962834440 556925649 233276494 879615747 763222321 539253390 467823311 44831662 474014006 765510165 73795327 387243233 906738153 678413155 433234330 637493727 89372909 612439630 293906439 353755673 791497121 96199827 397746338 324965751 99419337 888906026 935427629 158139535 614366009 346091675 119180854 358536068 671669306 506285918 510757920 722875181 884415582 247818436 156654191 592407913 801019415 899431102 561124125 944249234 861999485 325989389 325757574 553135704 160654153 665115295 537804143 491118167 761188486 112216069 175776016 999245622 471607961 409004487 596083032 803653291 948091125 747179967 92656131 358995714 841614584 689123818 778279782 867759576 497946992 339871540 880247063 379073125 86570759 676383321 623731981 212510130 626796330 950197446 84721650 732169767 305383323 300543125 995993573 210445981 991038566 388065569 413021043 295971686 738039005 523014240 882885154 135324572 465330446 540797196 114790920 703188086 683589837 596677365 672787063 446855785 537165128 768986657 358669323 614664984 845723716 838486349 810106122 968308413 746892142 645340924 413647582 193327974 617327849 538279261 574825721 866257804 726989136 142724224 126432588 532659311 225752256 34869190 756950801 339323100 198720787 223247830 754899943 274959731 373885608 848253312 186478502 876741081 54873321 582429931 213628099 594330724 995235718 765529638 887174943 831239317 725053396 537150801 834352931 730796046 742076563 870188156 984931773 145229112 469018573 134290752 876419010 882084153 573360835 538946985 110545435 756713769 432249420 915037499 975584151 322778663 659508095 53813133 335592453 348857560 521906519 264635619 957891432 412001621 628018685 913069478 613456473 342577252 878036272 481349409 193180353 228866777 684645452 399570950 872601511 402292005 675716823 61573440 676558110 148663008 427036622 252075399 655042286 615858545 990281816 533062514 111883692 162404581 996270878 79334629 204507930 713142983 69185477 784179804 821895277 160710510 654446633 194343422 61553375 615233650 375513397 49965192 534060939 786026136 933181303 844891979 746917865 315009967 389865982 433042561 346666507 531076821 197370489 866984928 352860092 512958158 389536262 388413993 617639437 824474454 353523619 319083321 585879866 488616500 333683669 843256517 430778889 151620393 907381717 782349543 319787775 744969882 715486016 837575356 812414592 117866568 502000749 306671327 37827204 966158640 673155378 355943307 916167043 310426184 433678714 201406480 412117950 266670016 34645450 915953211 243407993 828314255 722054890 248257995 607183571 392133703 387925170 819887233 698779252 371605249 773803627 311111892 355800902 766685367 314310871 8669689 188433148 588018236 568715639 395232352 279653352 278720651 11940791 797947979 11220143 297553754 773341427 126460311 809534996 915561203 365267902 256868889 364866554 986084391 858203419 426814357 182110238 926675924 484400820 129500550 593413807 268829974 264655261 221507414 76903377 581769937 969895047 93630762 189316092 695196971 791480653 126938652 827568610 368006725 463482026 540379724 231485347 674699268 852569881 896871499 500723283 399606795 564849011 957881453 818349285 745589705 225715205 323082414 156999827 969230383 9036521 42139670 201054484 702464923 850147057 791931366 70570890 753981782 582272587 334156844 672458112 864108349 940604259 50986379 816547503 960456597 589881349 911176520 646341057 517902251 874619101 746292611 465980337 143921929 23391447 407068321 474055806 353898073 318846753 717804480 917090636 415216841 995910283 227025109 443989461 625757990 893773483 393946453 287548347 961808203 971142663 732084276 987176428 464578940 779797318 76865567 548916340 712152363 850239707 598754408 964816990 928566149 934720540 286998010 39808892 572586573 39426009 299419986 488332448 977352331 821188163 402744327 451916752 632968110 911219771 950260633 482878661 44518882 775601241 133283099 43750290 272513285 711759553 128231679 971675688 326174236 488332337 401914431 279200237 911841571 110471935 185657558 61751372 444247538 587218304 758703054 226889249 150212444 260611587 733860774 266543635 648777276 792950196 100519437 886792615 878722316 519133502 468538814 486196190 247115125 206724403 37236795 998106303 913089528 978116663 298422696 715398320 90404258 49103898 3729428 384907411 635224289 686297895 256416799 881654447 29559819 818135124 832894198 422707641 887882972 951652402 687227264 908036493 519624569 857154200 44248215 894263112 534707861 854336487 184282413 544170528 310633936 467571008 776246027 634561726 244105923 83018590 163840882 935588029 280040643 799947363 609980808 678574671 784975266 307543309 377028947 966746627 522756011 643197377 22466271 954000757 959938058 741793485 236701563 150845781 742568890 588926097 517775795 301057683 988445917 177015000 545532854 410352270 785479422 908039996 792103965 415790649 507280224 597926336 101113973 562268668 815165216 279378820 641650417 800600668 412152433 231077215 842385350 539059237 149259346 330953843 782222431 633592917 724960739 366723413 761023413 931958800 684734027 977900217 990910586 585713808 679341037 902431356 987470997 709132866 290084352 866803363 61939164 407157475 822941210 243765872 375288869 652906297 195705267 768852438 434602357 584771186 365853500 294042563 965239594 924840008 341695728 631070972 87546022 996043195 70308432 350111664 500711679 991003216 404730297 38075645 581186974 576292606 968183189 603139730 865355337 205418259 57762271 103709160 625549110 940470301 812186070 899701295 983892924 611025693 120459585 224260034 855036130 991965885 424311008 843156927 893832922 519419348 568564378 477141303 932724286 206034574 269807719 723188190 190640943 616893782 766243702 646577088 102736684 953612653 215209168 809655729 399211563 231479706 3618250 862557181 144346679 259491276 242447929 535240842 30439806 176650394 319377665 877123736 666309866 24809176 259696273 671271977 438212807 248898757 814162071 388625314 863231831 288113503 84685552 108337196 435129186 593378823 948572452 284448376 488417230 295095794 958430915 604967599 202663021 314887431 152642557 245289844 324932455 10442254 523038559 830178723 426810414 853205973 53709637 269438938 801829376 369227337 104037817 187990222 159987125 163156399 447846652 863474732 501454193 56498845 777924425 576874372 470710281 446367898 54796794 523577894 978219421 412725388 716940051 317001451 117855945 111940405 271555318 663487191 480183167 119106982 501641063 498211390 701935875 496128363 139232947 433640006 147540 93722034 494805299 804603636 227085126 826457988 877526772 295987423 677766953 598417246 313450548 774399609 898675320 72360245 775112941 114675545 415367588 206440806 129295915 268742274 210345380 992644242 382807246 742544189 284836576 785350840 675751169 251609149 569660031 707054943 456096111 988473655 492352975 441812714 129096515 254706639 980528192 903253269 971144364 208392520 781777049 526094284 903663342 891557978 221344740 519134990 730965931 821518434 415303304 681867415 232629180 471833291 517364787 399898604 930220751 794068849 518773997 558217645 318810175 957430462 480799460 351400973 751880729 661767120 857566496 304372398 567997646 806048244 584187712 916593384 70711596 13762064 771131397 708072226 339030073 196709724 975002645 756156201 565322319 344256526 278989041 444206683 549023881 455769781 289806411 374201169 495322182 873693927 969228687 358535967 856716573 984087296 123862834 205192897 705820414 234984467 384536101 370494561 616303194 938331546 878502733 175026586 37917372 747135780 197895569 450008802 163771736 609850710 764166446 751991413 727988841 416866251 274696607 686908410 364456142 242274256 728639468 418765489 659342058 140595241 785226195 719880886 379586605 365263930 286669422 972317495 645513917 533891244 833784223 722090896 39283110 360039372 722850731 409767579 149478440 247867099 921619394 234726307 57029948 845095567 982728277 895655510 746558134 985896887 67700188 282722546 856538809 290126353 250632474 738742165 913845640 550503833 684349972 309826064 245216355 544435579 299798871 813746101 634348507 147215894 824584640 266395816 691576280 475516047 791033601 370856294 448031653 154211585 339420289 495002567 353943414 954608827 18857626 493506581 692240052 289074375 758600914 77133422 13180325 779032609 509578735 929715894 806881478 708990878 718754505 889987353 424700415 4772441 311388720 429665640 335502903 57727680 118310256 970335932 266973959 399797794 367635723 993026017 803311653 385955294 522435824 246143543 399602602 798528462 42762430 766672975 958592100 88854106 333524893 482852771 546933105 392921407 143244711 94045436 923875350 305089551 127656840 36948046 494030502 255580749 192252975 931969511 70414049 261258032 263141787 62857919 91881629 153540713 308076968 469843415 728316246 293488276 923540895 573453484 57787207 911216099 292604592 667040157 608624625 798838791 642785507 51634576 306488072 138214157 188420650 852233193 543384636 370927693 49255061 248042154 173604384 961268911 120308440 122298284 963513331 188983101 301788510 836188712 288979399 805638511 524351519 72939571 233928671 84204039 383716847 846540354 68550038 587654929 572674642 698263728 692232157 290321915 721957378 399178195 281835065 353982487 945325980 735312922 755138162 554031978 311611177 293269038 454469313 869345349 491831199 166388479 456113514 953276733 86717891 843315275 701493897 100120071 335481323 262054628 604880318 853002227 358047788 736483590 795168181 428962282 512553237 912522210 131267 501118399 74646908 25131953 287837714 78882549 169734859 700973758 1553591 344796609 753152306 906583210 814228179 502902449 304679587 326402979 18404115 647927339 240448169 946309756 554556663 947881654 636571025 953205004 410118217 941756389 706052384 411661674 149953010 782930152 396162334 709220635 665948001 493035818 562308389 968017908 139201915 364478038 892458470 278389083 619902657 65186207 179066721 641036526 945706297 781836979 519574598 65783421 711694431 365100338 974375745 162346121 473480719 319494131 206302017 815306106 324561727 978505784 257604186 270106038 878713930 516693963 447055543 251205953 510550198 885149175 102897519 979613972 578590900 480228701 20887497 884779594 715774468 917461570 5685494 482145310 203963506 631665815 673705301 159476970 179301971 447352705 129100288 192835116 61021792 493084922 602873646 887646845 812826296 766048065 203094994 64554865 733176860 136797976 916669754 807060284 614130046 316692472 800027731 408494291 290950833 913182314 463566057 860491832 996543144 533843040 596102954 657020675 918029025 962478641 575309362 243576023 776176365 225949055 820571822 938584123 444745279 79224010 444625513 29556702 96088892 707689975 919625937 719007840 471058976 465846043 986676330 910493023 187049810 693446235 456345536 493953369 890408511 838679630 426853245 609464208 927500905 524433529 132771021 148628626 194160884 384144083 617324763 961750325 545237050 108056368 798298930 730181188 937957880 186677817 464036753 855466994 10988637 223079656 847607572 846677890 692670491 819271797 683897674 211404155 15553134 383948194 76085338 16664375 729759936 871989101 580599430 410230921 791312435 988499077 820487600 874120679 968490638 185970265 874552888 444117112 689205192 843394078 626434557 982105337 777705899 193580462 726814876 826218799 688617223 335820233 140056385 178354877 650742967 827363673 767055494 122627790 339645771 995590379 733239299 156181224 356369566 881599599 152852299 381759807 962288799 82154599 535268771 925012004 694552309 975324214 121249056 270706573 623606488 61692184 265686641 757606674 204785585 767078236 976144482 627693121 371326656 605111353 388411979 258973619 659288837 454635651 984954207 414844994 229719787 462280197 22243460 468794464 793766300 723121563 190149327 172065015 107227356 486376064 146508426 476071843 220072268 874041699 411865381 643553408 863738051 491540852 650150259 585596991 350704904 476488846 340785439 937483316 772605045 19241425 83641053 172486107 38622535 958281553 524438931 746370098 994615131 363299093 626965687 509850871 190693602 292563004 889365523 848623365 120031323 727623821 984708435 836625844 555378341 591611114 526165304 749323720 951550258 569151007 720265211 877051690 592861866 521740081 81920770 164652077 949489280 356983933 454376436 25784097 759462817 940447003 689036858 957402910 499775932 621150292 902871022 290073582 764197968 662803561 846016847 453272498 89541810 734124073 199340080 17834280 291778167 683992913 939014549 87877941 409289243 810720111 187849055 327371650 381576238 740683823 700558617 310412943 591593744 864005324 103738765 656743488 737690239 133538591 871140852 956494609 104639995 85721793 505120790 204997746 69671502 318071685 821306140 572183547 301839605 559084569 151785182 169420061 17945559 420623222 353494994 182817731 558449077 15493621 881790197 407149583 669897642 961547330 46898178 148174111 608408100 422007440 73648968 73567279 724916998 891487400 872132873 414301578 571047455 418069605 840265970 851029579 524652881 527986425 654681264 588386323 603385923 557618426 895716 336255414 494204079 979881069 836573675 49300307 452500614 785555764 822946923 208811675 73860338 16687720 44764548 780971435 436260704 704817100 881537667 982985101 834241328 219865555 417866113 983487466 977042497 5428946 263478725 253327790 466887885 862009945 596795005 34983237 24534361 713517593 312705412 612114364 518248571 575082130 356527453 384504306 595096676 745777287 3097794 225548429 442764289 141598619 396282758 576698140 926182837 303316182 646557992 721146593 831653150 91254041 286576008 881969303 913641461 743648691 545579736 648222470 580063448 60742106 845084745 261912029 229312272 17549192 209704255 661933768 579692341 780648134 259065483 110489581 402481303 966635088 504213871 792516212 181407641 668144121 477946344 952434692 803115005 815733857 928542092 923276585 618850445 583084355 849126451 865664511 543914076 518982940 259200399 627201675 148248075 90475017 978968563 947248358 513640442 348372747 323354746 626630490 945706647 802772282 582863162 970943800 507843556 998887346 5229012 900947532 270045280 240861309 994861517 438999083 728441302 219643157 218497316 538756002 210957400 704216671 611042662 591968068 730236548 629498978 47765123 604168167 623811001 552086933 701305544 84218882 102045730 811904424 267530440 149483651 18592236 362233381 494769504 23548837 701929247 779108294 477821995 569297681 520345229 455918046 75106224 192409936 525951779 763240103 852536229 116986873 468234670 190870200 788411469 988660356 414452174 873384409 810546418 460972069 550238051 214995092 526040607 331686380 477508476 340968329 452619647 820228725 415533847 295210508 278777252 611043904 90065009 224606982 346114980 849673120 234198133 650957257 734158301 228586495 244469842 80718285 213443657 835083191 20926921 196960767 454144902 135457898 336088630 742905473 742374592 477105029 183419735 213900825 825224703 18746118 416358461 108020545 108529590 311246360 799128737 605111280 113366359 830875929 254865603 202480844 666521409 987073079 273989841 321908999 596045290 162063861 29812859 670122137 103039351 456285170 853910630 548018384 973675776 965252501 729310037 618352516 162626931 552891062 948564675 685280497 50665795 557331408 158637578 818533099 261797918 99988401 421094112 39192840 254136060 307074783 187369155 318618805 341556776 720839314 359793815 448978006 914802724 134813327 909459045 677176358 163940390 789904900 639811886 384065969 247411308 903349229 386377880 884486807 36706130 105973142 799307396 949000942 204038304 997529943 625776962 134052104 238028882 439471716 414683944 813688721 916648995 542371307 763958171 853120326 448311055 519758453 977583700 134539939 217759843 144031259 729149913 585823309 851762242 195528042 708771689 945400819 603282963 61832806 534080372 694289706 160859077 783328276 306661979 912506289 824458814 596598897 748941023 949204694 547366029 8749928 748285606 709849392 223840213 101256862 70911602 588686457 632480541 307367730 562944545 433873008 781199560 605391982 534907341 542682734 390354431 265460009 373047248 596467013 375701828 323306289 215438060 864215583 183772469 676947741 909879291 545204520 246278379 628734133 596747545 978476639 35188344 165498493 378191973 361403633 207095762 870647473 898520812 322607371 297124152 480396933 368758316 40650033 570680076 681178642 463023048 839775466 881148566 466180824 566708638 510218379 878505001 719915012 961317346 170753851 393035246 63204975 564308115 948304483 41801940 195510524 762832396 627842214 138312165 112505662 379671079 446898678 490098963 129520749 893239761 318802807 600696147 644510113 449421406 553267768 545924846 97464910 941315917 989349491 917134619 935709011 330498886 331622176 551831829 355486717 914979224 940054414 107549750 356155022 525574777 384246644 909072762 975031513 321097604 748152738 793974178 37239051 550411065 26407161 158457624 294913585 76165809 570858858 484246931 681653740 528852184 83915039 297899408 882098417 146708 782886727 218007835 394344264 331890081 304988879 105121046 295083157 573243976 479923398 770811546 541199878 944844903 292402522 152228123 458719019 820787442 1998002 283561030 633261503 707392297 91372546 652572927 3067478 479827331 632589667 828446693 75312609 982450453 289567798 506815231 341829573 584256075 15168649 543856394 325497192 708067130 63830392 402625093 289163884 357157818 492113975 12763868 116115793 908673114 888334563 691751235 540945191 765618801 890619445 789431725 117895195 749399637 368459308 179678885 138524197 17327380 142519191 519426322 984810848 655007584 970583573 643186624 336366636 158243537 833080864 503417513 476221572 722276461 39871045 810999469 806104418 414774550 771719827 806114934 623099817 361607884 411387911 706099197 245868825 678784946 772672599 566048213 349102050 59969965 553514869 272780713 746985971 116884317 424848069 862868360 161760901 107821069 603638786 278176705 803259313 492144843 572304597 685442345 966826117 524749854 832525094 125321374 10154794 515132244 438438216 633454768 290321066 181928440 606450194 247343951 318621035 274421551 977005998 930323735 672272526 911437588 403768644 923810403 360635374 263011995 155355578 55669772 258572297 849257035 583938193 210271973 700979800 836313059 254038313 700725083 322246675 239407609 935036749 400392461 800584647 67067284 678226619 114343922 371872920 704796651 955519705 819031919 489125379 581708416 892672180 40586642 209730135 697088505 634018170 166561888 417380315 356484889 897742776 738831991 833553107 287054819 414061175 581963247 16429711 245443520 103501549 6338236 607199558 319499140 674102653 554696630 698380942 614970592 391433446 395324753 860134279 280091290 438183152 98537089 422869805 592824038 969662838 283858927 237431669 340370697 452734422 450780075 354082157 476368329 714933929 967178779 49149303 29172590 374600812 855173911 476502196 353082330 658648509 612938506 102293525 905836484 823504429 949251372 203062987 396212327 562534746 426129287 33927073 917608099 959810305 268741977 121978797 126554146 988233365 809047073 894283948 928093919 818720548 374891196 975188552 499247918 936374348 907083206 394473223 85455762 57209789 735593356 516294153 507195711 865939935 526237648 2197680 1562121 641190364 328003064 663964604 467827443 600147052 355425433 130998499 261760537 707390765 835784079 196758685 366395851 71436590 406894315 780213421 250841686 993318220 505590203 959135744 777083209 629098272 644656688 659865377 198058979 216668849 181149031 743171152 899927276 444751746 819980326 754191756 537522816 489567613 30345303 285103243 281607843 892998143 671188272 446470906 503764431 253385299 180489504 343844921 751161612 883857490 176442295 88155866 887076313 687365976 378594084 9133508 374622081 279498764 296252213 861736018 44065223 697060866 737593579 437780809 681554955 558139100 59350854 95307805 298596176 707925806 993828898 754894549 969781197 366605191 168914161 446427989 970828705 287758840 37536318 256544253 654788234 78062186 364302533 696669180 275943411 33586543 821959434 941508269 164357887 284841156 237394007 287408646 866274620 528855204 350040468 870374838 82470551 863496875 302610575 968222493 595039816 511311558 945241332 769310902 910245639 231155307 238155869 167208247 147146415 760068496 853211306 328035053 805648739 603028889 524707324 67309204 192688366 888549711 269061219 373289158 254525761 748989260 61408042 661737552 965507122 761875985 861071925 915119268 281794042 836817855 456648683 350116215 160593907 962775212 461232826 576276371 224983437 758153133 397635396 777399210 188094487 9116343 481966708 501556063 66374382 348404945 22482018 458368997 835222159 497596600 787075279 460067676 697407697 976731414 202899372 894863087 189593104 463314469 802673205 895426242 71831884 547233576 647787944 669000025 278560261 827960454 276532293 594511100 501354316 883266020 271193872 408658067 199911164 782040611 587709570 850548265 144755152 490458739 624699956 364230931 391367881 717799802 214520096 321524883 490764077 156335712 279824085 199983976 767577582 484531739 161544756 128067482 382573520 990367905 887227650 953911266 490549488 485067017 618679089 181452351 664315520 348297784 877146585 129499958 489029544 569358490 449439760 231458513 748003420 887775890 150266109 426515997 476872295 771436078 805355032 402670900 497791566 229685419 34292035 921253318 587365683 825374775 253336698 623586555 740287437 627816658 785541526 422166174 186748218 933597922 895870110 877304307 833580150 838770124 545000884 370876360 5871226 699115523 688796185 694107643 755551818 516166798 870357278 168451900 170608310 761903031 671724789 926214997 49275152 195820763 271542142 119603049 225595437 26788970 294278306 8396997 211498646 430416670 441018756 500889943 837735391 779103314 463824318 150075232 711130976 68303723 936978488 809085620 200229532 307626190 34788258 130451008 742321922 21508580 9417157 578959624 755806394 954908289 89194514 438240739 251886569 20314940 221765351 500851209 502777767 998843760 931511294 444361180 597119205 81104771 710785040 591236285 737663513 868730208 953072653 805552039 848769008 633049049 985602050 476778762 716155000 181987780 822488586 943764948 59590903 573669775 642818666 387330092 132758177 386322945 366837790 308248347 849492483 290679023 12056264 659691008 473661900 572874922 330072937 488347882 638096803 498864586 688738881 177669744 952919581 435690929 847863778 852292266 414466596 334742958 527038952 349702387 27189597 856871059 806440536 401676813 272766874 12745230 215499571 661384681 908794311 697305156 568474149 921377024 25970459 607481422 485034150 120412561 725807537 635967064 848495562 559048914 222861386 394189547 863916310 832669176 886398733 560143107 301145560 580926511 801767679 772379584 418615191 443159027 344913699 87537190 225041249 660237305 233290114 164054703 225313587 898806555 412557083 282655303 982103233 516681869 921280828 234804746 362172617 138285153 860281011 420376872 28887710 70335212 231226917 85505704 932227725 133841933 916821363 934825925 323012360 941416466 41685191 939915801 307727010 561179237 957934895 487302867 452553714 952357250 936014143 428551046 77080208 216916595 882189092 424436926 994098186 909839750 52807764 941922512 738761957 75915822 279215764 906902285 525103730 753267676 540619878 130957002 337254237 977913882 128366637 476759679 959267012 301369271 894220588 463775403 723887018 702581726 427277601 307090695 40916151 58852086 885840668 765720532 60782123 539703483 424708016 393230914 329590943 147478618 43768274 704474615 79979955 952285928 255521207 314170024 328817874 765547884 1801152 311185910 171068447 889333306 555225373 597342154 887067993 589625439 287523614 786624270 10942412 24384786 528025739 141761340 952364308 34692819 826093339 606457504 472936325 574525474 173649605 725251196 648661711 324788691 660462459 107875757 94544587 625678271 62781852 511619839 216702885 716882451 876322820 299800313 931897664 787517114 862490879 570507163 986611975 788198284 899642920 188809054 637598721 230747600 293144274 223092903 937789883 235964017 728265381 816090840 72117399 692365416 438500421 68240091 46545911 57244527 850536552 100951270 317811641 719210761 743720409 273485937 983001742 99303621 724730852 848192725 134616286 803328738 476289288 678480429 534205672 443436484 547161298 280193121 444475787 768040381 638773117 17060874 802509918 122305032 215014532 831469377 799049005 613213248 896034203 401621197 526895728 606492935 407727519 145804200 844450903 747099943 251958601 157311192 730430790 365754211 587878331 804908238 606427372 422236273 454891715 499289549 222316769 172944796 262396159 498451066 706054558 375525181 404915519 946848371 286338669 470477031 487764126 629991683 389589006 475718726 236819478 533628599 964127963 648895898 649236919 468076803 838103250 225451553 901540153 90245312 511699282 953442694 220343830 351457111 827480521 576483951 655746206 215823832 677239513 218775463 491059440 436628582 580837350 99825869 687894003 798832513 670386909 657814608 59761848 853313808 142547636 32380108 712616432 224866885 695041699 833365910 744029136 285412316 563485566 544000324 835813071 6562865 661523100 196058446 634114868 558947551 130283397 87670775 201261387 263171740 789763579 394929794 573086177 173684286 402721777 105081839 586797371 268559451 763054271 759674211 747540603 870790106 336621337 487670289 521804121 557772809 313323611 697761568 952558480 578280923 954114463 165239473 25373101 964080524 391060691 987413126 966260736 106686324 687984303 340671484 308813868 105218877 691839425 572242180 248948160 659619274 952210386 513637814 528811477 808155554 608282940 205287571 963745738 211001283 41863999 282532060 239397535 363029866 732916977 623906661 99197144 583859315 371323003 553998965 89282066 478385759 197776246 436459343 697602646 920162746 164136695 145603290 283457484 586562476 903967450 770394847 829557901 532823659 487860170 976420585 644189262 601631790 158013848 339680561 736234062 728359784 390989956 476196858 960608920 100608825 89712109 886109637 419582703 260108437 97726610 546134957 783526503 683022378 668260304 949799751 749126254 281291397 510164805 262173079 434951333 8957632 472658671 391754726 253485117 224316329 835372474 639766542 594809628 307271915 451816250 800519214 761306667 879751120 601959477 254251086 852327259 548121745 942157136 846768825 792784117 104423683 511877914 481058490 835973947 655642102 657014884 568757602 241590878 343084536 559696226 393307464 215841517 618839902 956940457 252707470 566685852 723666992 478183232 814916534 597774507 634481372 512916947 527394518 238851785 665689605 923459497 240372650 390137488 723970482 358277498 188780942 934109744 890917867 351242368 838589310 42085652 852823485 721325942 368495936 822668193 680153190 212946299 644961817 987585146 916010909 374680859 97588699 681779410 585539994 27457157 746189824 291577566 809293524 313748309 26030881 229356315 456687355 373078535 82068780 538974530 779094771 722364998 876883527 472284978 442254684 178490902 39365124 803400275 480896494 59465173 671553609 117174359 896864190 115440027 552165585 727226690 178081708 761030524 256560536 216698308 793811345 516353733 556558509 970044515 584642845 957611672 121954449 112263556 236031280 969084097 555092055 438346856 543667994 807592355 811541429 376193986 809768126 522022435 72593999 569532914 225214406 266605795 248939031 893554634 68241399 673112651 275401008 782144482 440359335 975943557 687074814 944495935 487397246 166322517 239427325 618061989 387565400 85725891 237091007 299060243 58730494 983860887 686705927 979257125 396388881 443274444 398726710 264639420 786778615 375611203 997088744 828978498 529249722 535968887 828476146 817601579 634205114 831294569 692938809 103107511 956691180 690504069 697555580 543383640 398257890 769889690 785870183 129128071 244999841 454868182 985497069 538347967 11717941 22487608 597795977 525574447 834758590 514456588 994075086 422860226 156497514 809558905 79730458 349125951 317144651 646276849 393196952 456150774 685962744 606929960 965675208 807936969 417141379 590649162 424595062 743582234 210212256 868353262 286332366 538370162 874015194 350126986 315514114 908757377 564730826 576918832 928439352 95137625 763750693 33274779 575818627 751147772 466522856 204119561 206733419 589972556 158273812 45686622 819575136 646238129 544153916 62090787 353295138 942059035 44926062 130727264 630966583 924096516 483985324 334235701 357471811 942807378 346233004 692858356 454256057 474119458 844735392 957560983 130312929 742977827 729827085 379640860 961201481 726478816 581435953 521436029 142780195 924142736 851014764 592363338 507463993 574000351 606472300 362297217 473664935 237275716 906916127 739328492 172791859 23266303 287374795 361437144 418745008 511375483 978576807 277203112 418754263 841235830 346925498 870115513 353324619 84299519 9168605 326587283 872421798 41933685 527187050 3156388 787197900 868378017 238259229 253794982 134953076 255303824 565555886 377398959 704248890 761818333 424445730 89753550 230118331 421074026 311185454 113338119 688427245 399870559 276476657 638074144 969972298 416229261 503962003 120657770 460807336 412801219 502216771 908229218 697502679 213103396 865309591 231518435 227306006 677986629 109888713 969776262 600574806 974342402 315001547 88057815 163259746 73339837 74858528 694801163 726210373 707027718 862588841 892701559 692223034 364836065 724503085 533483224 743108014 693274743 597596256 339780088 533261668 749443794 959347070 70321362 342916261 452848119 465665076 103412953 209299384 229161314 206141233 255683835 485878162 956303190 652545780 913384183 716847646 618028480 147075581 565319395 652508483 318076166 729814201 563559377 905767215 981082904 921858440 916673463 956128098 722281821 290798171 190837673 532398820 686566846 546909235 86207076 778348565 43180923 83365487 307242215 589342191 192446869 691230546 365248933 826481754 611993227 260996621 111956251 788665923 757424254 804328927 408966900 490163345 915920931 740211681 917869589 520548587 429791133 981828587 484208985 963249502 591504381 188073606 523398816 62550060 401730725 573055178 245727572 98832013 861187010 875210681 877264768 939266656 911795500 936682536 714616278 376478524 611866715 799941612 752743689 459929306 177050245 130053422 820092333 708019374 551010938 607122204 356138146 275245765 708004768 292266919 803745419 222274157 503935143 998943989 816457070 584518649 746465580 393447027 349065542 716372382 734341722 161464030 204753387 86343993 456193245 888275862 646588542 928336571 594766409 233315435 864152903 333334611 773979359 210701835 707210189 375444395 56084365 321585117 727248660 813645011 561792773 713919015 469338283 621205774 594872908 352683711 737306269 138180107 449896842 175952878 967870398 339457861 504778894 96631741 493468035 782291234 266738397 8220031 781179226 109598253 809739187 650190161 185087739 617579735 18319947 842737909 236775327 435158231 768257488 495669013 405471 379471297 259963262 666023241 916702777 897866989 289153512 607484194 659549969 191489031 82917983 259657894 583427080 196307719 927201908 258248407 87073845 684756040 701162680 303291689 615049705 577102242 221152038 288545693 548675487 984271813 99750962 400962417 365711331 178768924 450105649 353045562 894493679 766998865 700605454 809909138 455587046 162966250 222926965 289003600 529951213 413061379 399018179 417203263 391310757 960775254 532106417 358699216 258923534 908657257 638964324 864349733 710984873 227062640 171970035 588167473 355088904 79091711 128643027 551142364 993483862 97722907 15707104 227842940 552009536 56268580 227201034 221367558 199778376 446461576 230344358 27624130 627664371 672422420 597993918 592456807 634587404 65420902 754450350 82772675 410982770 888747801 15893016 864646064 935435405 214462835 269842541 596354821 308292810 400488274 587493958 627334616 552498646 724928434 50598329 390925611 625712818 593308898 213744717 822608424 921504029 781665726 823647493 295254707 488859608 845356067 75268099 215865930 923037830 441671114 632785517 46340906 758266085 123406864 560060842 373429292 608562006 201047597 614037318 555064981 840909925 14777636 503708035 562924387 918878137 176442560 658700462 227953243 892227292 124297495 636085112 253886451 412212673 489142559 692404137 562312401 722406620 417603169 208634376 590549402 788100514 761637185 459174445 560246170 494609658 583027380 688623358 218468156 609477216 653638561 724470144 521389343 967916552 213714236 576160887 601044939 768313821 610781689 247480245 113993809 781940347 193805048 478350200 854339561 854502050 21131080 86480971 521782280 956659801 379171248 484249106 414786333 442892665 539495039 711940819 450959814 849032343 836566792 940774766 878161587 948120386 967642748 614260595 472271656 373436003 864128827 832330846 637394785 694391307 12020462 417413464 569495873 918682985 595184241 960845722 629509745 487114500 100903956 370734657 34534063 11797048 348890861 257565078 73199002 403189219 184654056 762153540 722153179 761085945 402761550 889793777 522672709 38092707 421618842 177546529 86817052 583478920 573227100 267894958 312489772 799914061 529534463 984848239 517353298 989400532 617972640 665856997 223733548 593125519 342428592 505372677 836399999 347275519 172723642 451183705 58850933 237717492 358198920 879322872 584954743 675547024 968062600 163133527 150729809 908717497 415668570 678147347 752747013 170915852 492820432 528376493 628661447 570005587 318390211 864538581 909964438 464809016 822628487 25611888 220289720 863556458 202793017 300075969 252212612 103413622 569354882 891419996 879648248 668011356 986895813 458717929 94252784 480720066 252983712 803429349 333221745 976691067 313402103 302261842 714113182 654416776 726420675 601506133 154477049 649472137 385008434 395677331 491291492 844984058 988733536 206073765 442590295 262940677 721701405 298104831 951350962 927866578 796836521 306918593 94372719 324425579 363194877 663581529 593785183 935572604 127798710 381963268 843076226 141538895 139031276 378550385 25497254 684863797 217605518 69118045 629355285 7080556 687144795 127985768 697316391 166779805 133468720 546928479 211869870 856448870 849510408 152401981 335810876 175983586 886641578 147455345 499265607 60404731 827632716 68274643 817636652 49893611 322073550 958183659 45068883 472076361 326740511 405503302 339293121 796183685 396107620 385749852 804973283 242009287 726079339 166762175 385146361 361123013 116267144 551900983 349116000 587527441 544259032 293190517 595434570 58847255 631332865 46212306 219635091 357293032 560781328 218926192 924895465 62127030 651269915 494755401 777719281 215655323 278275239 765335477 931534009 479979842 445617588 145116541 982585518 224539184 93503282 168316677 276209882 331818386 701103933 653629505 735541787 653126212 521682236 618947706 951985027 601759290 656115341 551623332 54820056 360623125 12783475 752808810 838036793 3364963 272693777 440953150 484224924 704844586 25224762 569892304 654142619 47851876 123632760 427805804 142777387 566159685 538225564 30308981 425750415 607522053 443096654 803308010 607474745 769393542 83842317 574909942 64343777 757318029 630637369 929912723 968282213 63891285 220260613 123642909 893817894 28405697 919408752 770261287 519045415 498904603 749729308 272696565 896448117 883023741 538251842 830884326 70423494 137334595 928555382 671651147 395601747 295575009 730521129 930373667 929528059 124497406 743799472 130350417 656009220 894859887 960130633 678457527 772196354 940194533 534881765 157500540 157428768 562136120 69265032 488623296 929686217 270570192 806608875 916551452 158846101 571682922 41660603 405006967 768439619 432200874 447192712 80969143 504080758 610439838 241451534 757112013 606606912 662428356 483128908 8033092 434114315 334395804 771174170 331209882 242541100 171892776 582422176 525443790 837253915 368119461 632303774 647082554 830936542 261207222 895612423 160963636 671676867 25307748 947770788 771848526 370603293 443588232 481278401 305534677 663567669 543920484 840113361 421849654 518081752 352295900 441096009 435542195 858504732 119751568 680577900 475054800 979807302 558166198 803947239 178149335 564793005 541501429 342990067 482855860 545367690 930651458 172320306 397118572 976154958 644899939 994678236 673662731 283856881 738454788 323585582 233783377 335477612 170684051 89652330 348201573 222858872 868661406 806305490 699142918 764038976 404236919 197105653 333133404 788618011 355907261 67630047 610918244 550646197 763092672 799570565 867735568 201963038 907640464 588876805 15648906 252653660 204753936 323526010 500053208 315533383 238328630 213164482 156932407 146461112 582799972 410254178 389377363 862508020 412528427 647728924 576464425 920780139 550221473 755638625 831772028 887486935 385939887 630574178 864256510 936603622 157462450 773251660 472436854 99116265 587650283 68701166 884193454 599114589 340922362 281889499 727585616 418681215 183682989 318062724 986455533 96821967 852968852 669377717 837733518 84363158 928770600 953510748 870487778 979362268 607742520 421319263 394413534 754630523 879415059 834523097 806038253 775018208 512174664 749088145 759209662 774004122 277125480 161890913 523496035 519762278 487723511 542841860 202475820 924360524 372903901 369506761 881035840 174185039 81284806 804910794 806956091 944770164 286952850 20618291 985094818 235064172 193525372 670349565 807067234 461261100 271529006 380460891 529851404 792441631 562863604 816968377 448990637 242296151 164236433 632642932 187718423 631952679 62422810 874748538 192570462 329090129 991074908 65286897 848118517 904821227 619193723 508755267 706177915 281586492 626092502 817107066 693490315 841337858 748609943 132837206 115888761 89844754 678219522 907924048 527188210 718781065 943839521 179215804 718357431 425691642 72010140 497681300 430153189 747796135 17840492 771478238 776310514 755535501 666213709 116119175 340758565 854943254 370861278 626849823 704241453 387406876 602939130 85898005 354543018 63065089 683042794 887798582 705203748 963220689 355532280 340982910 415223854 131875304 93711684 892528864 660717970 141428870 639971185 806408280 582411102 700884756 186023079 950259808 800810453 193864756 540538882 992040282 939975932 491600732 742515692 766765396 449435520 422310006 605766385 513283079 361123260 620975495 242159291 168914587 286250487 161571194 279697180 308640674 251908708 968276221 359011403 362903081 38320469 256733449 857098170 758584492 423702233 582935979 289282533 714647887 33270907 446597472 562074036 844469808 462231622 925699448 289558801 240890704 29760648 269044190 299730143 88417755 955509285 449260507 146573513 679345821 698209527 738387980 168152317 102646425 527628140 826798002 498922775 715911117 754575545 626757410 161478413 938343533 755349153 586339318 703912759 871697957 442729455 99248239 412168415 607648213 953894535 936552320 259158512 814025573 839909206 427006033 55067464 42479538 552577782 771201760 175945749 749230665 172012429 357040886 475300033 186131646 542699260 327892961 666445530 120741993 481373577 807010588 515056279 125114882 180990368 390495808 674559882 787344647 842984400 611904585 602899233 325568420 139822501 156310446 39131579 120523203 446647127 884009125 499244507 410982221 108634600 481631329 361495029 395695435 317486945 285033287 797638249 789995378 855391136 990723700 215082991 770278717 707438826 926848194 901820169 765123221 135373332 695564583 989272855 159826241 607854503 500470054 502550101 82553431 119848974 580850940 745683814 463671429 976273603 37630456 772063124 710227077 974627411 54423514 459311404 789292119 209565890 187379558 620579509 670859838 292342605 631262519 652022626 627997548 259729588 643452411 679269595 313919063 34860027 901639541 351628118 650642287 344782442 565333136 105875119 760537709 424545280 46934837 284291092 758464498 2612386 122331171 525838741 621400737 32457310 699015530 971410486 696487470 539746562 697778528 306235802 888382631 914191119 625224991 292434037 258319311 79700652 919664930 1691500 854879724 203404397 880790722 996202496 793361451 470723259 798540434 62075412 280989817 740132760 935486000 187231566 342970194 250180465 156146211 731434330 776684668 714108175 269951311 40474638 136050329 846336285 540954239 918082543 974328699 496839410 111720090 329535607 13560937 395382829 361834913 310684953 976970568 299420026 806941727 877275813 937463020 669175135 981261294 660538651 403745579 428641801 827037246 33167745 854639589 945461410 479138045 465832900 313777137 412032184 449315703 593602143 785344284 543272439 773765775 516545030 511374624 384590639 950049613 903726398 25666523 699853280 402118306 723661857 453578074 690200016 902181743 117568926 60544294 199934794 194654280 158203782 324361657 987238218 691278528 914872674 607711178 174685859 4547365 63312713 316885502 524867804 255737255 975243705 669751069 169057735 873548965 168670764 467863057 642494550 485467206 733243893 163857085 794587126 668153761 646652989 102964428 761427480 680949091 158453536 464140753 730539341 786625500 997192012 446113372 82397308 564355258 364965877 310426433 883791984 8847656 75742421 294818491 361857824 128043160 30390209 99750175 155110601 312988261 161135745 802881997 467948456 395448947 916466562 705889833 97790597 277949373 281246473 961165788 743007895 601136158 590670089 544660575 114141226 493881892 154441183 242511710 963947748 338555578 496528213 433452760 564933834 623373625 760612074 22940145 825516011 753433015 800699241 227718758 536751366 887276014 283239676 37168186 692302821 437425148 352208827 539222794 913564802 314971664 314505956 575386940 349103119 358157687 903881476 826532870 387605149 180562988 992262118 778792033 972501267 717385033 472919082 745530803 932000703 250328745 697516425 598992627 346190924 328285037 94411709 675649571 555748221 885381774 490126353 996074121 172222545 356899860 43155062 861646379 764061424 839298416 901758735 401835353 505951427 136110210 315225263 90309805 281595972 230724851 576435672 175517671 710905792 436849970 408028313 848561586 736394186 534708726 385565349 618343272 494176003 781225612 82883851 481069654 154063758 528487335 852249513 649787496 662170074 178401002 675216619 441082731 705652796 322501394 345772317 984928689 87668496 656997539 167602927 564600760 791469248 397341879 332112549 198346835 619837861 362374058 673703527 287676930 442572901 900429199 723218530 946747952 539009341 513513562 677106232 965593028 76629202 882803697 647773154 495026550 652906106 728318931 627836025 790036588 636196965 651182617 83357516 600012702 873223902 255994266 107458816 331901907 235712338 873052119 236304304 895273176 927229048 74248231 883275596 597158858 661569442 780655644 852070570 720031458 480135788 12590825 621110993 984196657 87508191 867459589 300710230 29594298 465040665 655179229 680296952 364017511 26195682 734852275 40995536 157035009 952680511 830386642 129280425 266400852 958557075 693670285 996749001 347520231 144715373 320515363 348539708 974697586 743664027 397102180 822966170 585882273 61468483 896443363 150219947 348918957 336133188 708135824 553092264 714896146 56736995 798418539 173889227 217727740 648892724 316716343 144874778 334949043 165476573 867432887 723253592 896884241 684081941 39751816 898831231 657285479 881648165 162336686 7036459 448567836 860562983 373207873 320655295 939550294 428025782 333313369 376596364 186358872 689299758 599561846 12539905 715478607 237703660 212889122 172862830 322339531 413938539 250009141 564276626 266777645 614415446 721135521 842074817 362697915 954632998 480498797 778874653 518306364 770778344 171265102 446869674 941320122 575545111 223860469 614426994 937603887 824176967 623757579 427404337 679615462 613597088 673449610 987939741 643846424 904289700 310641007 771263594 391172584 916834192 769590360 911136248 412787212 77382102 414146937 901717060 735109325 418349483 434711878 783623661 206405251 190714796 622347296 107667255 176328746 192206592 227443144 490363488 87757276 754978671 326943784 172227766 697456934 402440778 543873682 598994039 667169855 709194992 869975801 70294506 334409259 652830949 311674324 8906653 549927233 148207393 851811304 258430566 333372247 149978157 282873038 369330750 451961098 742326095 397738058 969660089 305129443 952926569 482979676 330128791 76039249 445453738 92406920 988757170 59210663 962641550 382595542 691957282 257452724 394996274 607402566 572548722 308350040 309884653 497816901 65168714 522568017 177991922 60506580 868136455 596239273 430419235 445736665 793443911 722509846 7954403 546179476 900122180 593065944 533834785 17670879 6238904 489797421 95500569 499091546 354346652 290293866 94980806 147612905 5334972 813032458 349418561 725297488 230656717 870469120 403856884 144508134 545848632 605301534 813984310 488119008 286161537 134842759 148836282 750497601 901247723 740683584 273295567 98857878 900984145 268744086 190382261 49671494 648924664 230305991 962674241 190022542 915986951 7484557 774338535 336661193 875018002 665069722 150765571 392796953 863429327 994104094 849018830 330924548 761849873 737400315 790399454 399308239 875465028 456045395 112514559 757404304 564200198 436372600 786374902 860141189 64974656 333419877 222444367 249824709 920371341 865010491 425423395 398424797 406201498 870066340 738470942 231130773 571307258 938769814 556713621 499846532 873448013 394157903 806635420 392732421 518149196 809152525 773651074 736561394 412429335 841482195 966394681 201097309 662267858 242044482 252501436 21493010 731093159 90380261 497417866 837191845 179298937 229783646 476386069 358231601 408792542 78178555 718934106 35119270 714055911 246098703 450420023 326314065 725789005 933149035 479715926 957022123 250462013 813823983 829635992 991041538 367528670 834137073 770966821 718139101 836891110 181431370 974419690 146748793 943724635 824169640 376850915 54393656 225194810 862373391 845629190 332031083 968689145 127357984 486504707 961790045 864574232 664760953 571625124 524357782 359062997 492850235 249701163 415541355 636250657 443418449 513068576 647623453 77257925 522969306 855935234 980064305 182359931 370738826 254035790 321483875 982476100 151725113 686155537 311316408 796562292 497328479 508127385 729394486 892472352 839142137 217697460 901904872 369419659 888957870 934124210 841724274 878261862 908564094 24831139 587509142 781361859 557046776 673561038 458532101 205771157 812065354 188507925 253827226 235664803 701612640 399295319 687027226 423042911 192115992 713845602 710119515 195080214 808743066 931294030 724664786 513195272 520476340 268940624 321556351 736254820 566385439 35391268 324932267 228322064 642283750 282926978 6387136 927537720 764045779 469362899 735116701 856808357 142128471 32645682 40897919 627386176 122490083 137729967 475122695 254578165 183806096 952635432 248270189 385863340 460668688 401788337 490824020 62826841 8549445 833658764 580936767 62563138 741435897 321075925 790391280 132552120 46080351 723724450 287781015 894536703 326772097 500976296 569664482 223759939 744358543 835572057 547760310 822148876 738204303 411202989 824426211 506311393 936555269 226496628 361916415 310375487 62782525 888959149 668422035 423541949 374356744 214543803 336282194 466698148 190674560 412076304 891300003 728683853 312667900 104002500 243186328 88602778 716451899 137865774 865027875 44566890 574032385 735986529 428994833 356015257 617998992 667971212 688351727 368825575 96424840 72286780 750509445 390695999 229518047 305997594 427491082 807071466 977270723 770023840 839452757 768408711 612245639 321258556 156171588 561913133 729522286 40365587 2615888 798213323 10381354 740064315 908463050 384999369 251021248 49267903 752973192 222964582 81468867 790786420 44583870 339596291 601783941 326403811 129212874 294835429 283606376 547884335 366084218 375632381 18045668 436264278 610792476 600456453 539927623 869705262 51360580 720053355 485875955 620022514 163062493 992228714 552436548 762657035 233067844 774464835 809046376 788608526 215711919 681696423 520213458 461879000 108021728 128973358 853426830 18517318 544785575 808444365 164758213 412085476 78439861 275270368 223959667 715045682 558197541 569879339 688167964 332042549 574163225 709271889 649018905 192834593 36512159 460762648 835450753 791549720 998941955 822234382 394113772 505467971 549614205 691696548 953375787 124362796 684028127 563228029 591236091 596006546 378377379 638887197 926993146 561659531 736217768 201268873 37726266 452914491 238806695 898589924 568623759 545796223 27610319 11708791 207712347 345091153 69832994 879839804 539644234 884366534 566072931 620775065 958303034 74478709 836834392 316015990 529599343 801185607 17973019 121672685 703223892 336461885 662827264 839904581 259751085 184352850 298920408 403668490 758360557 623171501 590181063 182101504 58368233 111854143 621612101 98175646 48737069 374288136 385315750 748711703 269571673 154034596 276610841 712613807 357644399 281704227 365691614 712561646 390900677 36754032 187403472 249879627 289892400 54999741 387743460 740001940 100961971 461841529 126302452 315053268 469213500 345205874 965082170 198559176 96307604 350799317 949252191 521579973 138246668 976258609 428513715 705823244 795102284 929683633 683238972 661389445 906792823 384860219 888475524 522171205 927577996 489661341 714047761 929885466 751960848 22146490 244919487 100191295 751723946 741720534 238323403 654975277 889753696 577239804 347469419 797581537 209826400 647698584 557219738 45342122 238223539 17313751 567353626 968909006 560593855 208937862 144917023 861446146 221387491 711087412 473634109 775950135 981877562 61208874 701664930 369571193 607690511 19459135 973716428 6293601 233794798 224179790 444460828 597728298 615322205 539784713 668299057 534870396 843359780 591578551 966513272 408215623 448218245 604974511 557450040 234172821 130602569 901568937 13985579 218556195 666877207 774732542 398406518 817208311 437941377 85597510 6063101 493954543 790250563 383098175 485059430 940591623 30024281 583496366 528728773 827038417 208693681 389609556 502035606 764189298 638909487 733222519 825704106 566819086 663896142 441521151 10030591 633188330 972912003 301213941 265289400 315969914 129413760 537661471 894106667 784210781 783985606 598283964 623726350 403868062 85991740 965259989 366998193 927680222 901608418 674592067 549119243 207282776 150822580 806325803 501742229 265529980 705966325 54611063 444652703 621446688 971712697 497456869 371664737 549080041 13837103 970047424 430992362 914536306 526610656 450041458 283589720 829590811 588684419 257840909 152325761 43119069 824862901 315717738 52130853 358545251 695610380 448163197 360831252 562201789 973420552 375302486 551532580 643098273 658906897 222849184 190281550 474192003 964852735 634198446 953904372 848274641 387730263 656240935 47016993 887198888 834593831 906056485 361360338 358406757 264154409 879623718 441246028 590585546 2239251 237558609 177339038 336961622 777502498 388743910 755487214 715933445 900670253 575531476 804576713 829577382 634651298 440843005 826647100 557033803 549635574 293527537 955136549 144986618 722276401 81787762 584985665 713435005 497411273 908978769 55907268 541415951 841661295 938725900 629521708 173323684 79882880 309062516 664978687 575653223 693496579 716270923 378272299 970898594 99286403 940840998 210138197 514576615 192039940 631999696 5223747 514091409 741018282 22220249 425821919 950909903 392671266 798986660 373428694 579981796 90172945 483156154 27010952 655807567 807554990 497385475 522630677 962253005 628547340 514419576 884188831 286020088 302147384 343201006 770095200 673026069 247973751 378961358 692180330 742215650 928082539 271150785 508391839 990959957 445252618 299512497 958459306 760604931 760533575 319816483 79718250 795954161 179556814 54911197 210008364 893111161 869295155 218171758 763973112 385532402 425259445 785234181 613248045 528925744 838309406 52703110 561119750 950380102 254730241 596370135 242820919 184348227 447381594 479214893 929063907 394212972 208245589 968297113 84103369 814871847 21151606 209703413 818272656 416729190 622246344 757055156 850784506 528297972 503839488 475741033 803820008 979347716 121200082 483131056 184625511 904978088 622609899 892331903 71790933 761749601 365091242 227972806 714074480 470067883 514927910 123962089 924015814 604718207 56872095 903000434 882170881 108137015 757931291 334147596 414327080 383360901 627856231 788782891 862599424 781922808 596592045 267292563 172292401 291638828 853160764 776361849 219030974 45726548 206114025 640498614 442284583 219987315 782311537 339012849 869441410 798584456 959175267 934982104 65069953 401926963 969764385 814180406 331378696 949170525 753253923 35413621 521991484 861264309 62689093 446902608 494742729 105410001 887551913 425131349 556287625 237104322 10000504 985985611 851351392 985767978 363677594 405228355 341174780 697460117 239773454 537064272 496846186 694557092 595949560 907850058 362227352 889712160 349521987 67514670 88601237 262516006 165298535 658141852 84428940 706591564 682809555 697261551 215123314 363824957 844852584 655042996 277476571 528114361 338725680 32827900 66058247 577102342 52510267 722187903 970754734 518977076 965393616 868516917 58418840 472943229 142296372 677155398 194648205 901974549 508912539 75056385 216409682 486635400 998021858 659895279 790866656 896343020 623950136 370999590 813385599 342579310 735468570 290477505 133599393 185203528 114396381 278078586 534091023 285075376 878235687 288420633 646780037 474086350 985155113 407002242 868663270 284828390 470964134 175432880 381274824 116181092 65575460 891944436 435496382 66270225 322533338 304590465 792461430 329579286 909228292 444089275 208881626 651693812 627017388 903689391 576193180 968639419 249937925 874341922 483073548 385411313 707755930 471085405 305810464 765244387 613282488 129931397 161403794 347511077 711594925 672494659 378720224 651431110 490621847 74173145 543965652 980627214 921389681 716262436 763238438 936247011 150581174 907194609 843510196 313985230 732006392 415434457 176495988 875509578 195764595 715549408 620488338 95963529 433694874 788263307 896093596 781971379 248836375 240152340 506301615 780244093 912014768 864882620 481077532 402961800 634713263 637732198 660115025 721290864 74183358 176225963 466285890 740419302 98756066 982556028 189845483 429967190 571357148 168056014 751495335 807583702 450723030 83368622 491909749 19289930 725326959 655777112 366609780 990228964 739254881 134876552 924538128 565428510 453369106 227621305 536397780 799844585 465405499 751636581 289912627 160426528 868922807 967446947 131543166 324411453 246690916 356534419 279267320 580954718 358945792 401548577 412241352 9275173 858327674 42402498 307397760 198579753 454115316 278842531 780000150 244201333 601276126 503900249 366486259 867781389 706069360 615629113 565154747 485358492 502685123 919132300 202641091 417144830 297411940 847748409 905970872 102118225 444935754 319344516 903301551 42838713 267744338 664587082 11344386 233618604 167436879 535470469 288764583 74323052 52018684 108748290 341759233 297814580 182814508 614871977 528196648 777437952 304174172 80061939 28237856 184410190 260736762 614861680 722188314 863061356 221808153 88673753 45413763 466694957 947824488 372463290 227653411 777163735 64833241 927073191 6216846 318079964 26921338 444106422 843305835 270389977 987143979 157467617 267694943 703023241 428053565 118474849 541175081 490860109 521458043 314322862 877915726 804058319 217857310 857311419 472446120 112190482 592778684 554412926 130195302 882724342 254709958 364574120 753221878 610435189 102725099 910324038 674549861 102502518 578841284 273216709 927601072 428460323 14828225 801971303 671156470 178543380 860049583 795206119 373315425 609904976 762251305 796679905 448552291 649914738 218817285 231737454 625987527 727131767 18278161 2917327 167143180 846688417 442568001 905596448 192260841 572645752 27457192 859289482 231284907 241914433 13477287 222569050 349435054 475814487 315287213 401710 408409193 449547647 480238695 696450282 997943713 889346495 229256264 856870961 874629767 444547517 133511943 784127841 101714116 398975700 865294288 396252917 608109555 512841665 286973828 957131395 854146615 236557105 308259388 402820560 968017001 236669933 483494289 866820429 489341210 213486087 847593454 636406031 376202272 835514652 837773801 740400928 878896184 719090846 805156348 736397765 259389165 98965764 296738766 335300490 783324498 247445330 886084873 195529011 993615300 599037455 921731246 108918080 176891465 936350543 480656610 385796336 507884277 288743949 673294530 961981666 499832759 503063809 915822703 650982875 983311303 272237282 592647505 646615353 578208333 705201204 114539521 92820592 588700912 976377414 464612520 777073362 307774028 888531369 853739999 250175241 850380910 435722651 959410211 870410689 533692635 192084080 412916669 934347520 193376725 640244555 359955505 381093984 967624932 780037787 593789518 721110091 921347471 722628105 178333040 331110540 956965887 502266497 339079630 654780669 518055470 157038945 787673626 323079040 233054393 12714388 52555432 895588081 593429001 935449301 884583418 131414977 634068299 839738274 408715054 107939382 35935341 113042543 462823892 916087471 660600907 283797344 68019744 991267687 90784919 871180733 327511096 295966876 585149786 971371825 376213797 214845082 943749519 907092232 251450331 587618728 533603317 198300686 542894696 394686609 412182348 663672313 572975886 530309707 346288256 715703053 811227385 712219539 430383330 493978530 412384668 498899252 793643566 413204647 17828485 586623237 947605698 894563312 471672151 967999585 960591794 232788560 375361974 977602217 477005076 330592879 710770707 697002645 377980171 322982987 273471176 182061288 285874081 248175044 32558567 406625463 242094361 9308578 728374613 266398135 97124213 468462413 926861000 950258812 640681748 393159507 186635882 295860258 825032830 785205160 548527458 822734054 924951110 79037970 86372738 469210196 249017633 266902877 35523704 739910692 163948211 997616817 135769355 916363565 26011092 179170694 671630637 127672084 413362581 527594726 301600632 382905864 899511449 48859078 746263803 670882244 787208269 61225135 256336813 820448573 908113951 901282637 829080824 286213562 590584773 966311360 682793997 862235152 966789679 713390445 222233223 334089384 406046978 616156074 463369063 913814363 25089797 216220573 231782401 648169019 424372797 428125187 645209808 35906918 639932584 687968735 838066469 934083461 908984239 875337557 8578951 853794242 19029967 603568269 189994959 290345560 624863378 230125186 144802134 563119679 492966556 908993456 711359797 178718650 295305699 112833520 30451491 626682647 406766307 693299505 460499502 87410639 785091714 695235910 814151807 957873254 197195546 869413428 341030548 894663244 502140048 373977421 5930587 474018321 320977240 921649945 970857192 709945687 431663637 540836725 170463346 710145333 322251531 196943884 600125921 621179352 350672750 504151079 946579075 397359762 717368797 73279912 383414469 997133005 517295602 476597142 566811883 620780539 843259651 198367850 824852050 672767191 393778327 979788642 680220668 987901131 196463315 406586191 868241782 490372011 175630621 711731150 729120415 672421683 610934299 243126597 228748737 928795127 181619327 66852725 123497613 202365060 387362336 225644954 225969573 162902180 958429688 814051967 828972204 989227744 155476556 309284642 207794217 390056574 313862094 998851965 459997376 796775027 478496926 485662639 612408190 383059160 691806750 976829750 952083194 269979856 246391189 34150866 654441095 744710000 648110050 501659179 859342143 601195838 139505567 488941839 808755690 64928259 612031155 964329594 693321180 672323344 762551621 977183163 541783160 493048554 10364038 615158332 327814204 533382631 335862268 51206697 412776224 520242573 328044656 767401807 221204907 512802229 597202816 819579431 812982414 888150862 846695668 913979554 901325873 587041116 467836339 220126895 731643561 509877952 197261610 503828768 971795818 531124013 180355208 328970484 628263357 580181739 964741183 522977251 394809421 7001921 487331324 990066058 603042572 923871076 957995125 986318703 985107911 713916490 491501026 929172998 995816946 702734231 111022323 952881251 755641021 683176134 726574589 805233696 534307928 777399162 206091117 759915928 839856359 798556885 98544929 165742853 887957426 212269571 789325986 849809059 96414250 887402401 177126732 77438483 788800423 441177022 985198004 165631919 232820711 985865538 394735502 370113913 726022022 78747907 550554232 32101398 653798596 188253732 638181329 783513747 787017733 942177047 306161448 964264172 70625955 296546122 824914669 110076770 107410353 975771674 201887163 126686948 207081213 352645829 486565411 154425944 209084707 970761550 192639638 783111784 674455557 506197179 680347226 369210404 410514863 996964790 135650453 67576795 26776608 505410409 313965425 823910679 629400682 872775161 548002689 996658846 293941251 760310989 451375207 115208135 606307267 608883414 598372801 421753782 577662245 497078968 34113858 194140572 723484797 418563146 978801766 581953366 350366909 418098763 673470911 228449926 280026449 876947752 302041462 547563111 94280822 933806929 340329262 676115884 389953780 160903348 125224867 851448249 671127147 634030398 884418644 475113855 619362018 458125348 339543295 416080035 168721477 549138140 436093786 122363655 347702650 138544343 95524054 339292287 883473067 692040578 2324281 296131837 94215942 724793699 413521991 858359651 728513909 300176687 24070949 847744531 886338310 217418232 388715034 882954807 105890278 349507442 135275110 198737555 960058289 419163528 9089797 308812095 24885307 765669457 439764188 441429139 517816451 953619029 54534722 939259231 386437327 340877818 817514472 277675367 822733344 720330577 948040179 649631732 650374158 885638962 226780376 754043833 324136776 949107528 615319927 209882399 151220523 647695081 14245143 804686360 690257419 544791776 316902452 785628375 772656812 638003489 139260916 578557093 223911229 610224625 537879832 855679665 690925927 772561095 563559424 65379269 135568796 377793199 383300435 519793623 969964213 570815641 87300306 249309731 737363958 704086025 386634656 888424940 659033685 596850805 588002065 369610722 799946844 675930151 376493945 663097305 315906977 633064961 618986786 870694714 720840234 464778880 439335627 927332091 48174780 349005815 511611187 695630017 124488152 562067409 424498299 890440674 188372063 691413003 592626295 235492824 206274842 36903369 779855068 586308767 112890270 996445623 15236365 423682451 351731445 317982334 602883247 900927554 946414194 951987768 158412982 22487009 580612772 431393618 991207775 862095632 950415637 232734010 219414020 445635014 83217665 114401072 573915087 183306187 618190811 703094667 100896205 840102534 594650000 322092576 49063157 540801964 108919830 617705214 41443075 918355021 99242501 414309839 356309163 101975036 701125203 25574105 712677922 517853947 44112290 738802334 417620061 586372954 987077269 486764343 247764503 229087724 32219291 528972455 332876591 90026089 330006139 925187097 100302626 581778030 473407782 600781785 964465639 749329122 118487541 861041983 347970653 204339278 501997190 905139713 527858612 394169385 964772511 519359957 479705498 888556508 802732971 437948533 239459024 581438828 101636750 197409175 36206493 611468779 174570833 645214842 474588134 12847395 487128111 389716477 736941947 316272492 712344876 367711751 643361686 903057564 152301712 740889069 517575068 349767646 284931112 32050352 997018198 178393855 99173021 465587453 247935448 472034227 924192091 7280323 875749163 985910228 798321562 442141350 1577261 635689176 969908824 526305232 121959504 996066106 774893960 481686246 312871168 354686616 122167255 826075941 171638147 619787924 164160660 721213081 525565747 754688404 612477869 83773417 558567343 929968082 883911669 648223888 449436967 6269304 347338661 556624019 829642330 11029344 468363712 825764544 864998713 232596143 244361884 390489977 779472439 638715906 355653839 421469252 367156954 754732635 459921042 806001497 70938383 226081994 722975023 619597631 373163776 832932323 49036026 444196866 482062856 624368341 806744467 455749418 863006473 942653352 892332646 821730741 512538992 248298745 713782385 656085299 572106697 715692463 268003250 488614161 187118121 482645841 268332582 703710359 759859739 829566228 984900 277275037 218095721 761784258 431657013 912463215 955850737 46989448 876400898 119282439 361687773 926182080 299248495 849495706 990500528 175209404 767278182 564340187 855428833 145142463 912801503 419763839 215952431 620512567 487029921 261811937 616009607 988160619 990462458 750355198 462296364 991576003 728937436 429824349 503913720 949465697 633818904 901687635 466965331 966468503 736387602 768736607 800125040 607010867 559165128 791549458 634166456 122570304 486845815 126869088 952567883 130431809 368511722 963661899 9491052 673679731 509130808 657325293 976103749 888237224 556615800 373894796 888256586 636803247 471938769 746330350 394433021 318165060 808033140 154216283 571694862 219396553 59729335 682545565 665906693 19648555 735447538 554865585 530317940 950893111 955550248 688450813 598076673 288224535 790267277 258632875 84078485 244476905 629878297 621902045 829793748 257792795 653723314 179563625 819264096 932772445 723740181 203158835 48551349 593227494 585620800 141617422 816669328 143550297 857819585 987416155 394716167 742028147 879508961 316754371 94805681 345663113 596586647 562587547 163589000 720525071 745373716 911000355 78534507 756941853 99678543 587234265 910096585 173384305 712083262 169028625 333457165 777421975 291557179 991591987 788408757 566910763 986464787 921216664 928178284 999443445 575811890 581184072 505150762 565592501 263184842 31327743 203131175 791719553 666108413 189611728 352542125 391112912 7492975 981078001 825342736 249838226 705078235 981841700 875451105 169662427 526761802 652901029 611702350 233812856 270435101 116297117 535222539 597989620 294052172 276514816 410646967 433662639 516792798 842872061 690482597 526054394 384122871 235492626 932147457 404568430 63788038 750276043 708325373 64975816 866974093 75518365 215752554 168163849 277554223 820618376 222688223 969657567 616930761 300942511 87810469 31235960 661578665 469440459 530839969 976556285 336912412 421467156 787566743 62029561 517867290 891555436 302210849 796105732 571901407 249433342 224027085 35368782 688990629 571489421 540150692 127466392 928396682 7681105 406766128 66444779 846557283 261165391 310785630 310249013 255827075 690128518 908711566 710829009 155233098 359420292 564035087 257188009 618484167 926585782 359138566 558851173 63363 927279130 758259634 878155068 425122131 729019927 599561364 630581366 685710887 112570243 533823954 550734646 968601415 460547754 374358026 18988475 660351796 477230306 192194792 622514287 46298899 858964964 215269190 79710859 3559181 464007293 779447774 763969081 910694909 323620583 694263764 739860747 480315124 404071720 560452014 387634195 896210405 823294865 145493374 679529538 136689234 472784386 829229576 589301170 728164160 972572053 248369436 768704823 646906501 660042276 394423043 655171705 885487712 999055019 989354264 456946137 902798286 751868337 462522070 26094299 87024826 953732135 164873463 24457646 740092646 399181745 615931364 495190318 831049151 283475388 570662549 272682028 547126784 839840415 630608957 937741309 126061738 175901821 890822704 314405549 563229744 309551032 181263992 659927020 687441977 292218429 742386896 809228915 786647678 627900856 566856424 466906303 426480070 31917837 303870789 829163445 21862169 110827370 968846422 465179926 820146199 828660230 566035069 851102972 713990248 160477331 305754857 521488831 796362670 882393349 429220473 757305776 116221261 587696277 396068658 632576575 996628384 459357759 625086657 101326461 361621124 228199158 845271595 412956709 131976639 91529257 211915147 672505003 517394371 591628467 602281377 379257117 788146719 48316054 140801632 849564052 682530070 87005749 414812765 469577356 585342886 317146461 123273635 802937972 935625539 744004120 172269775 900007371 310193854 101955821 337363303 945416756 887850592 550626115 987173266 260823795 959910180 244807246 992991408 392217798 161315062 932421352 142903185 574954819 247392778 24430120 293182393 693068020 24087814 691142612 771679667 413069115 576645191 732919323 78131542 565098152 26120686 283197598 851846687 68028111 345120981 910171852 60930597 198900701 747854207 824353562 469119378 651870494 513920768 560417316 118237769 881326250 515412365 895389617 549293304 366971610 485219161 552197547 770688966 805777334 290868531 260290919 4157869 377464891 97770883 948679865 846279453 163089929 989391938 860997511 607962668 332315020 605805222 537902794 95277197 275690334 924422236 173691065 672922345 875567411 881044257 929827172 382518781 747941651 23990865 129402453 805374689 581610936 138706898 444266988 762699000 52016736 564826103 79669261 753954904 627352968 930941737 642385761 796489238 522916975 863492310 731873811 640450065 541889 287603057 359306190 729836576 322902885 479955602 130961545 511939553 57174978 284268690 930883526 582095383 646841471 905735447 592171415 727553047 289945767 816109362 691076199 409238835 807617283 356348267 613231387 71602723 634752635 614899216 365035596 467810578 936607840 335756180 210473140 843902977 298229674 199891677 804480357 472094187 601907772 439585591 659040107 48503810 499203953 181606691 159175619 401010032 348197329 164075051 37735144 704191152 774257296 660638831 535524577 86785216 463887511 697352975 501070641 462163583 687092136 203361607 279851393 844186567 378472746 58348011 445582187 5911602 434992761 410848501 835511033 946269124 653084883 322546000 911919510 444566972 142885336 407184076 594266381 864802060 696473333 727150345 407926457 302778936 797941989 673570800 769935647 389929992 135683697 799705070 586749828 944243776 975261719 435204153 280563237 547353426 934546753 659451219 124751488 569031859 551243136 710506495 772849864 533830804 826114739 102155490 19677516 25534548 143489962 942817306 605099231 386516968 952425776 190219074 39416443 353451374 540214200 187631200 833826137 93134167 246345707 149127919 757433419 880712934 339630533 5045399 808931421 585609519 481542083 845521021 426605268 684103946 254717388 175367310 149585022 952106971 971535212 349863386 850195918 244709467 46441462 703388839 922651232 707371802 788755388 464382794 419528617 61734162 265577902 129788004 121273653 126888297 496895837 622028121 544841433 975386790 364903572 735950010 319294040 941439491 504894063 119815285 70462919 417662345 59568717 412960451 217109088 770832525 35061745 348218127 66599076 585286398 93679511 538152778 973806674 400146345 716463894 490218207 954923390 169825382 647039918 600621140 2774007 444137443 817155381 779154000 305423548 412465736 755836932 859960485 164904071 730196231 608811507 994155918 719794544 942675886 633217375 224225125 155337232 822170793 131334075 317321873 488255670 498856822 918091649 407393415 759676766 954088810 632359148 160985582 886658629 64923294 137437146 309431656 56564582 114928985 131723791 737746627 363870872 834156903 711226214 10135981 590531476 352468480 353997468 143154503 967920159 751390410 39411639 929038603 373665325 849175920 565014600 465593512 783182808 201260363 562391085 216325441 665504088 303582738 658033341 812177562 80219791 289245041 216345593 5020372 684778584 362388205 385158043 195303935 737506200 120305776 855926934 201581825 115792575 364043235 460825117 333914334 131651701 270036549 710173483 950730378 509164468 722087860 348495400 585636455 110581936 160680615 944270555 662202556 916190184 181357615 448282686 416851500 930900564 514258908 2671807 868162785 427623583 939769721 731832979 996612581 104221995 928095861 578426430 311758881 162083339 931501553 813098152 23563877 538489624 186018501 339178727 333453665 745117968 261805888 93010786 248191471 703948101 128990754 492749578 824008390 732874191 813477011 971332726 186941026 284609967 343903345 881316173 183008870 365823513 387765422 793955426 278801597 141876221 150734757 164055574 255816133 349943087 89475422 218866455 644851689 129310423 86627628 472173026 765813166 533368799 913219380 150003769 984530698 702332323 947654875 607161053 890727118 420140853 974034548 26255048 862527317 424663584 313217304 73072670 451356508 946491248 325638172 441789037 678035484 357970503 426340681 15230074 981161637 372076878 605047734 735300551 683141520 481794157 945306592 90414815 726792605 342974099 42150225 709005141 804668442 265093667 994162987 882584760 647330933 503029086 507682813 897311686 869021986 279241226 95766352 850502418 865646422 856444172 408081562 53539317 335818901 470796658 360618796 732894913 805416807 595467405 471393456 157262117 340069285 784976196 624253340 775130256 553912577 464314140 885591901 597893347 420538126 273312099 671270330 407548204 812028522 375478249 877403720 352500075 527428456 768356107 559012804 632462577 254686610 581306091 925241061 205916860 39536720 271932515 769851887 820350044 25509634 12658803 120113573 660953324 662164209 522411564 169545405 765325231 645774419 464413948 188603994 938017581 646774884 634605602 797950745 590149 200088919 655069984 79866386 841344851 483351416 229778233 804292355 752689077 872514722 912942969 682711074 520944843 371994949 800674050 180770336 53043976 272138405 550984577 734528100 774045104 16404744 40403781 361566783 35417820 17694451 90326128 402377607 411929349 899293628 602499433 139038699 432466107 166590441 26755062 221176986 965039177 607324567 239315379 964804674 796314472 369120822 966012657 535013649 959103673 318470732 359552180 170397370 209992117 184665408 616302043 661960787 857460102 464760887 749608307 589872205 472265624 486845620 647003570 817513745 798864235 612710084 147528415 584076736 276419716 809445240 179055504 974786748 634127376 673956066 333668671 70728447 809279372 208736990 859413200 189631276 928531303 710770938 631791956 726640407 345106780 78904760 671568971 697888557 792971886 382937200 826796329 843582645 631386788 11932641 781896745 842270194 45400716 819275051 655685461 139527516 816162672 353702052 393308861 816202622 760400944 104030935 288132440 627939294 410617696 384964282 590185585 542794718 860437340 181780875 956413251 378845654 538350964 695884145 723495718 144356700 708010004 422963035 882700964 138980539 388198153 6277806 952278616 939019977 663015867 628069723 798958359 154088509 794982183 179410905 872574509 422912722 137350311 784290981 572378934 78867255 897234998 808723297 876979602 931969468 675322007 263871188 381863545 281557811 70026618 752898189 596831584 542102942 106972702 344718070 604524890 200427407 958733325 959687068 973650364 812000427 710713117 428487924 155145230 285160471 82672241 822923876 616890977 232264479 301153832 993924999 912812882 755348855 984679141 803386868 343714291 948840714 305287364 487316752 74595297 575571911 893669427 190585765 965595840 542026544 938809999 297418322 741425960 492237280 493889309 802477184 715244392 318881515 648756645 563749793 842722899 970071389 789937081 123509772 356858629 991563124 83798683 972644764 268758035 603391722 550744941 775225383 519844922 712066125 496978251 859758229 853402089 837345889 103846389 452217495 302912221 461183134 47501778 233923996 461871867 575399127 353035587 473112179 904923152 822433893 434664872 479888146 514199037 20417920 531877286 690268228 876612386 704505662 184720299 638318041 670558897 163905955 385164924 938977538 947846303 794480207 899889407 266520308 71608173 594030213 267974355 739422462 217983901 511748335 645868258 461272218 663832681 625101647 388274021 122519979 466233022 615265420 419631447 644796772 341605344 162733929 843317803 339544204 14559818 314365015 159745336 452370920 162850065 522925417 147874879 438291108 367972654 913725289 162493175 623774344 913611643 379855166 612456707 753731458 7828774 369862160 96477952 391168619 176266336 806269105 465990035 522872248 877781008 987653407 747581755 589440172 93022332 767192189 866907705 11800553 950886057 415068762 51376879 822853476 424502676 613432524 190120474 646090867 77095784 663813819 95130619 746809571 185809874 327509245 870060319 349354744 821311599 129382972 578715807 531245136 217325187 952148014 583772826 27476064 394837319 664667429 524202924 125833423 310039140 665364818 193134989 142912955 668966011 803124143 289552866 377891516 852519024 136342614 474600815 293275211 155580455 420053268 543374141 843994059 67171867 625856976 46835776 30424967 884889795 939589799 254775237 133178225 740952463 247858098 221659170 567371946 308969449 856559439 859399648 365013608 897456198 596549563 174966679 4867169 634784583 270351172 562133333 105984506 488700190 996943924 511278332 308205343 847803013 673546981 602219984 749787599 769147511 248700844 924113683 506659860 911203714 289086878 470560114 52988357 866461359 841810801 708688699 347833897 832964775 9917846 954736958 887595915 57748843 430191674 984722683 216390033 206639615 500578489 674337935 285426981 104609637 425419154 989768186 752511520 330898692 849669792 365748392 417322943 681361649 882376548 61995513 164282497 758898473 592701899 371687114 33172182 284836168 525593589 716679474 952447076 818692628 437281062 565075232 124249091 695954475 970017395 157933941 80972215 100886414 792769059 473231024 165755924 928468165 686043710 634600523 553051552 801603235 915804494 840453467 611998421 729169716 741458393 342582173 331054090 528579365 503885446 208208946 748203739 165183756 476064117 430410861 280393524 735196287 808003477 932254852 841279421 712025087 277682123 229127635 745932222 158919712 609653077 948130065 353197412 175892297 404322944 782391141 509164103 918981901 59773047 159579871 639172583 680112171 92402414 296827346 25939217 748204414 964937438 185471844 853152568 714907866 17543044 385673885 326601563 112036363 676998158 692776121 494709675 239579725 388462299 781928533 511750690 151451978 926234188 540819224 203101235 839915049 925303007 775051000 549835089 64853649 317776019 457039405 875968444 717411345 396378522 311036395 227336157 754277516 352929707 169413189 365144296 854106585 353532920 592546516 57069868 28429886 409498544 868867712 369450672 908701531 257913210 727386725 539140341 809506242 626103626 526838431 945111781 465121981 633516938 145701859 787654192 275610262 752882490 956797364 603027181 712997525 555499326 839558615 919048894 393596430 925779561 595779591 784219566 958295305 29506617 20702486 809665600 613958787 792765455 139451755 499636239 197936588 675394597 397000670 426707049 585103925 110719795 988755125 682375984 676513180 892976564 540978570 490716850 129887820 289667931 95152493 974130994 466859701 614801290 896544083 501430250 706520572 552472423 853811023 368015802 316990094 845228354 377363455 220291348 814407943 132443504 318748285 561549529 466571249 451262211 893277520 71158040 942680189 262734570 494656007 355416873 51451865 612825291 515037113 189260919 210437926 408030705 769137378 552267746 124995524 435885150 683533668 362428756 399161151 533488692 525307817 680782744 125928501 386698058 107355874 296249397 883099839 35747617 292990324 703478937 193365115 692085264 703121238 632708976 240457703 238970229 642038342 493017531 200569704 248260507 570573610 488564359 290306838 675602916 657796691 626092712 311756198 511501128 225187410 694504351 138234665 945031027 186028769 433099 109099436 593091886 934540243 256395540 887139965 843833265 363314645 968183730 679423562 557506953 548969873 210666165 668053363 407930918 141025847 270025207 712403586 719933560 109540897 39898482 55549062 420228311 627731686 709511816 651198858 548396084 347594765 78109286 617189896 57396253 809695410 387908829 505979815 342529231 36640922 726980963 825375084 698306154 849994381 96177560 308166094 142333781 740983712 803595454 50715632 44447674 157381934 366508085 358672802 60792083 444916381 536505221 10979067 598805148 920614408 955302122 841704810 928189368 262704247 467193869 307310029 741254574 464244021 843937930 725875388 226466907 111259215 951255908 255424987 646078287 531518050 724557493 627145306 584768800 215756166 190797981 407542251 20958641 839184627 801239839 482869998 555390722 131605245 54154369 730677714 259960648 683836081 821309962 211574622 292725727 578104102 12074248 899381050 500405084 872924138 707008402 187785475 794933356 418659646 683746030 757295903 889000037 268344764 538589926 500267817 889561543 783232577 776073304 451453738 847207091 54167534 169469569 617374900 817624726 263099144 939460316 931839970 470916002 304154636 698783431 892603043 301000857 955990380 130889142 176319328 293524721 809788886 939007915 234755077 449397751 50860138 715529162 87224427 365858652 977747850 11846605 519771547 220887981 420476340 865115442 15958220 695938572 142107356 578754926 73611759 696607931 344918708 119949790 638952110 348711430 354709907 633183591 934166402 161582809 199193873 241144367 918842236 48794551 344550083 658680599 296585743 685164098 909654270 853444462 324445146 943790787 125114410 126759709 571502977 721487628 821970725 588917241 482237178 900862501 66837979 362614916 169037884 650573846 501502062 779912508 775177918 147092983 710386425 873672695 990846935 533595858 148389295 942989526 343081734 924201063 70955702 236121934 661484514 161346580 164718145 294447977 605269827 994853390 342450122 945688620 472359586 781962664 132407422 805540709 96894803 758679639 63153435 482894424 961277288 847819384 24177813 337417853 864291777 96098875 704895484 364123652 26115313 417560277 328867209 621377039 411602703 824317422 57350642 166075334 535795611 100231966 657091856 734246052 893322850 89636472 102401857 906386943 820722880 364750284 208178551 613099500 426126257 771207848 378399562 460194003 369995617 237207864 557501213 777641325 214616912 403960811 654582827 479778161 856187186 202137476 873494516 657908922 805334901 302763801 846636178 393175352 946857057 858229333 623210700 144043800 592208171 250153992 175646421 176467662 576129792 887738906 53126002 287123803 193092060 534170440 307726724 997645076 70309517 305957379 666491621 324687131 9749605 536728417 949386849 237210759 937850008 260088122 850360002 151418152 362999949 363148223 43112637 980902505 984442912 104927376 948483652 999501429 389942940 116630463 630721996 147756508 474894401 32225527 109365846 958669470 249001904 409835327 863840942 768049489 23024983 644798779 94677622 903216101 949278129 12659611 228651393 656933965 266377881 23525975 707788509 534846475 478495816 618379687 582186334 820628899 588986425 83275415 956513432 427035488 345528125 864849718 625390112 680392265 580682645 212324931 523817771 43414967 463607941 619770245 92699145 727356798 239132104 345440486 441308320 965281512 816129666 676837793 88396634 626167029 892906417 719856281 861305566 440799926 116299893 111550487 946792081 218011001 30010545 563744228 59929508 233219167 996782327 67816501 607627240 530056505 297188553 104392011 787453173 857022274 618771933 152914750 362605832 447659626 484666130 289197772 788496304 324977597 525186050 466453055 699698195 224251278 301154192 413416013 628987467 145193844 465908773 592353055 226540614 573337701 935659575 157465930 473546500 357485627 481670113 409101219 427335302 482638652 536004050 581152721 294816182 619453497 40470368 1070423 865154062 173674505 117226350 456062743 390029169 87240757 27738512 192600235 673102492 441564781 271243572 307377508 71733180 252268177 106416782 230430582 138451301 971004525 185247969 639641126 279839778 205780524 161397836 610507799 756597657 978631906 739692067 486093393 298479704 256136126 805806500 687759861 329952959 430645056 940183626 956434406 215892986 535536785 601702946 629073268 527076208 841460169 631023535 621914587 956368342 822181263 817215379 810340797 148546527 347692239 383254115 693780606 901807952 934874175 617282762 976589088 497682235 659948442 375897124 308985293 907945623 141645277 503035504 260600968 761945375 245609456 620892 712060524 536096719 219685181 752806908 664735402 623997499 709965407 494266459 696699612 189501648 934936206 872883613 450866564 779983443 714600448 187393787 927224245 627546909 100460906 405462594 207666649 719443107 223015454 154252396 871011239 857749617 172017150 391754989 700471922 281256282 596473571 530806129 945675629 10532666 894508033 887961360 219041691 950989283 242444363 736505840 574028798 306893500 638062940 743919517 333105874 190791278 98531495 598634844 663031082 34052525 952142745 196951652 80891922 858858918 465543339 368105342 930883458 70898881 512473388 807163143 242605716 247316139 652120486 990417268 542484738 795492512 653900904 756175429 570224516 698821955 874623051 880434689 560935721 455598066 482956559 614184298 974104177 846025675 802371058 962539510 996350526 339458359 966663706 207442950 682208102 80518585 340275313 214723542 707143887 677937687 260232511 840137279 50786781 542473794 699339220 635737255 782679223 995225011 877631040 711491224 621210940 23708157 804256885 645034974 846728227 213514114 759380505 316314882 718653726 906243028 419650484 215615208 702845042 144295955 451946507 129014462 809069044 584528094 526135159 69883475 685869906 140970959 621314066 57885574 637309293 394096549 887819949 691865939 858882524 413105429 534822450 461699899 938657887 570392698 642735548 597340945 578256279 647563801 748775359 509220703 609034262 360366126 236505763 442146980 877059936 659731385 990414458 717956757 81943880 364239952 220343063 903488439 603834015 269706645 468192129 362482728 32233277 849400681 2489256 357266814 773379781 861581761 831245909 805640699 117846517 500510700 783135103 125726370 167241152 447215656 184452309 341675687 902038313 817853179 57829527 518339542 930402422 42768213 608434396 324392516 596900212 504285009 148722825 419664618 111411414 386506237 760435672 578815779 386562015 798177839 986875805 558719518 961802410 97179517 953218576 490555081 364064133 145231195 200945382 198984570 464181760 559821466 951667133 589996236 142143233 770987242 919092562 749372735 364881996 216138641 989419951 440200777 570863984 721429128 349832937 205764387 635503264 144981928 738865113 276706884 363694538 120400148 617905145 759455873 901585851 408507187 826857367 63777222 172815679 456500437 950252753 87793980 370175861 69171676 646617242 605472718 58515344 178501797 619812883 785543292 942666157 601109654 272281077 547735582 370757937 20722624 827398389 475062801 959447025 908628626 914525151 215977218 11312776 696439637 305895993 117914210 689484858 406954041 602824930 261730252 805667077 613794563 5344180 629855238 382141343 726022378 782675518 820596812 534157669 919819173 992597507 294769611 302001680 148705761 664546781 263182132 958737186 471967287 234055534 538280246 105609417 687847158 916108044 326642949 17184463 334227926 935856817 41134623 434335003 913836072 117196097 296436661 422705873 602344596 596191849 767656676 83359128 742219109 686894791 468533965 12944252 671579833 918722448 756326066 953855360 984602214 138450744 842927539 389868773 537946570 284128143 663553420 778076169 619484915 671812278 789453149 700470349 89070561 522364523 653478439 453425577 722998802 814366654 870668968 366060877 661838442 483386085 379937044 849165179 418029428 774283547 321809915 877143505 423727984 333131013 791965330 192633040 771904502 978067843 238898328 201231150 931821997 920947653 974000477 447123805 455608706 13728383 123143638 489981750 863241733 398828364 734026125 664739128 457541908 866738282 360442759 974160649 290360455 462594948 23032216 622269105 491509450 91219483 607706225 134325465 959007480 925629523 438334658 590746334 405097632 985582722 889332951 278890106 837326269 519533117 339085003 704297427 777734783 826000086 299266126 498856139 576723392 528632536 619265018 786271049 619310467 204093003 364403122 667340238 723868197 835457887 694580968 149174244 86978838 973328842 247419417 543243205 16083508 936212845 362951845 30550110 189861935 190610403 66582248 48011611 507013347 984859661 192917296 402304138 578307793 12136505 904223255 513464806 721243852 739495555 537814684 144556756 124840794 432840734 607939645 268300773 393039138 133511481 272398563 916775346 7728842 96029529 309734420 269200392 892533633 109317446 188555905 672312565 854096178 613545042 872196320 974875255 391333804 369972660 416375843 91284348 501699364 574778158 3881891 939798877 776395795 365640093 575791017 338187830 785153447 269367675 210531851 581912278 984397155 808860390 666388168 16890668 750844634 292832958 193971820 93933907 234713756 284401379 876881390 415331327 122965330 197227644 502322311 405976712 203273963 872848194 324971078 469901773 41599069 672606176 231683850 733861989 228951675 514215120 289394530 623238288 97526285 210260030 140263556 498509110 63916954 802227143 813169003 554772216 703068476 15137766 228661365 294772402 49931828 678094396 881350316 661749833 549876861 944879389 508374036 507246151 622591455 795394704 901855078 512276163 125541809 536296944 879217998 53644179 69362767 397227559 452301389 82168962 731121629 660478800 628627709 886408207 894406729 411270018 642250246 821964160 491876077 760770511 632839190 910215425 846327004 269620375 111568411 996641140 317523557 479634744 397749160 594556830 56921385 621846234 704856694 784344745 333341229 333483360 271554745 698622078 356359478 682817057 28470424 782462910 550357196 920160959 666444807 902161410 995370171 211233186 470980209 942713340 429157968 751037076 724272861 858020068 437571123 999904543 164285702 312116615 342927135 815613705 827333378 448378064 897963641 705342744 845527856 736434023 254846967 898129853 803642790 772816157 927828104 67521004 695024755 690094566 309998900 606417125 892479000 176073175 864672357 542366889 691038390 231820484 730281230 977383613 87503436 741596236 950889440 267995959 533870294 701583324 25105782 143931794 919709172 967743934 487990529 693297483 755067491 418854569 482374853 283119940 277003268 778875850 486370462 250305214 507253378 430247847 986313407 148217161 333597035 439984833 111590404 401866725 478986188 677656948 501368161 285213596 792027252 604255612 498405280 525468918 967191060 543075577 354318357 439805922 414325352 580524103 344853828 656776182 542929550 139939560 327126817 735696935 913885808 316099393 908028256 919875472 724462490 442622067 279576147 827785379 587192120 192772556 38841784 524107174 273649384 858423065 710742769 371923705 426833341 719463015 316913270 41167973 278738970 425444318 800462681 967179610 473817742 922634878 548003812 639166899 809888038 871398074 802920296 235052707 441817816 758204955 533610246 918477989 810983791 419385772 57764419 16023671 853589717 64954827 246988644 670853563 825198458 463682125 702879373 419358104 490969426 387244830 20409466 253305188 538118735 543743629 740069588 868238595 660493043 748771394 610567845 720461116 950225726 594282720 956790407 70274857 846933618 256191095 441224233 839941609 338687518 226909357 329432599 810558985 165358384 574381728 743857175 347309910 502722958 182030562 973109735 339492215 828374386 33421002 991898134 411440100 899061372 4608746 134242642 200550953 224327021 205366903 585051908 569252956 185220202 809835308 759450538 899210938 66711850 882237636 352046813 207141250 205451035 723680030 657100579 584360849 139347141 539251621 886765572 48285755 19993874 455147619 201532678 491123787 879785213 331552654 914150964 37785340 640930803 706773951 509463431 722501887 505569112 591520138 860712926 130298366 984826369 761706496 835787102 833815598 271944027 812802190 416863339 891077020 672769522 703985540 67482670 451535883 25735684 14429751 862673250 708765347 661662552 547674033 922661664 366502442 451600331 403024491 529368941 596806077 851260120 15774120 577267760 510598809 916259279 298775978 819090073 43072979 610982830 86351776 994466329 175078322 925675324 978193906 838382294 498376364 531560966 708921306 716337231 864095842 36502602 316595883 958870453 23665362 748307859 397865997 939589145 958587046 394781613 586657145 986997754 909084500 223778388 617574258 540374866 651418809 380188191 619676379 58878826 170520892 993547858 69118345 980827206 201807001 719313232 994031029 469275231 979228108 235746936 882024402 713391890 385307352 780624904 283727638 877752156 66237080 106042838 488479892 249065174 734735991 41794363 477714235 968069337 743689078 833894849 412808480 573914747 52429602 879146489 32792999 142245165 977351708 947152267 795492601 5480730 327641864 898401078 439167090 394554802 785152091 441731912 754460503 116548289 674126303 562739946 485512881 772196766 875528020 696044036 97270521 455952204 893517332 9139086 325255259 38356530 969405363 106282416 947140164 980482285 902808363 758102594 822623956 263442728 97061995 341125446 36898862 858684101 132961395 51225876 258966258 499329984 62812781 198672349 29105371 47722659 860126550 427332869 64027608 746529273 424442829 761779922 357624729 121135441 649613151 123085984 199919058 986860383 213986858 922091447 183019121 456321571 714231896 121260448 107865259 900183301 23085035 733439751 810942579 192848593 367205779 946123496 636724129 90920099 284484694 174084176 567440600 36720147 176408880 16988894 785395348 816385274 867381219 909131490 512021432 785888715 680382171 980212991 221479193 2649043 376482285 998398866 270548906 275419841 857887175 291490134 391337674 880470102 880610327 885687594 686679925 6808063 369142375 725702073 981103128 510581150 535326242 529343625 709616297 794188765 890275618 98435599 476271736 739538873 661188514 572944960 911318459 249393651 242687842 419987228 130752146 421981391 538850307 415202303 657025359 196596933 7191538 63742937 429649760 810574759 423630051 306517596 95218567 269957013 361683151 244926909 607690276 522536512 484267937 777280052 866943019 12929929 275153368 450539611 559496069 464120269 93205256 113092398 636815832 943219814 421897339 590763784 887746488 585623389 682635670 158635772 385892185 405493306 4393290 508137250 897771633 892082077 545710647 90108075 447754476 829665309 264371830 741713372 301093050 518420095 363230874 299441 420149822 899831629 585514452 993233284 1032002 579430576 155166264 517563571 345425849 752141868 133227161 622093199 701579175 353262955 220382113 613450510 873649828 490758677 520004402 314951851 984871650 897328622 980018819 193462682 876510034 129361597 112791604 526792333 984010791 154485027 286897236 279291068 90654632 697684933 871018327 483528121 363456076 981689624 133915563 429818552 876247599 734996341 555243816 307921864 634088564 812261127 418389854 641896030 235503752 488492307 187637488 247165804 994675882 61151223 693305706 902616029 746468764 469579131 621514875 490803814 945786543 9939724 695801674 349653235 905351029 754666585 493893382 555874728 231669383 46676952 301205635 304036153 538970933 756202198 555305526 42265137 409124970 87647146 524297981 595007694 968495329 92425168 995685192 782494293 407934788 894947146 852220891 965721927 743137981 796759618 992963945 640335287 145683785 249750656 553716566 275231897 586107230 154526986 131183732 946135604 542876177 826223786 410942656 183909275 140019869 805202576 97742161 827427649 536775756 629737816 451173149 849019111 142669395 582888821 373427473 806744621 120472379 90926754 188159969 65496072 806600092 898021496 702233544 536736062 796140018 619750026 667633618 717257059 499269150 851685647 410873264 122804048 382724566 614808265 371070524 484942517 282954911 195093094 124393727 241036535 200910617 687478912 248599571 448736037 552607647 991766462 560082433 158781701 541655137 733496331 188816508 718550099 590635475 861668223 918736928 880638812 240029751 286452613 132954731 977725334 994246845 804896037 706764303 180220105 36601629 435675167 378627455 68039618 827312802 729943585 743513323 459791107 632150725 698985292 377168594 898094270 623222883 194407979 943484966 76949632 713135260 894848231 940950865 293001473 396126505 570133566 582610895 384020656 107829364 70054983 927632302 828894635 743949679 234120508 567560052 253492038 285240886 324246342 456044536 900665270 563160268 478212990 622017186 523948836 642775837 302943109 362337391 368191243 122250695 446024776 873475141 449588487 514709936 108731432 144693203 327824995 136034926 163416739 809138195 524656446 417596067 34997515 835580475 386309522 517422601 838288 281685121 200091772 214793003 261049628 295508202 882703003 249054394 862246153 654473889 472274371 856512255 379552398 486145802 820440255 813405965 671976634 17566349 256920218 260242378 152722642 20585971 250774691 191958178 90667548 51958523 852071626 70187687 293336470 899296595 536546458 426243666 182331751 486180451 470051755 508599172 6713414 402757359 346883549 474906898 471260471 839405839 919458442 487429280 246540963 617151952 821823845 151878827 184899220 164254525 52300903 244582827 706362905 528742620 71888565 92383819 899169739 368617690 789143887 17238429 523963115 406025881 570171170 721208044 246987598 818518871 669439102 451131931 758863906 722999433 682834110 452523207 901094249 581258361 82037375 133347512 626755438 172716368 161766948 79883182 601303367 943299068 561362441 216132864 257263335 349475195 765146979 784625157 853622851 800987276 722023150 51487873 356518242 894346763 724112807 844122345 210513449 712443671 368274905 605347583 875324966 590988378 298592300 629100106 505215081 14807389 308427428 218617857 960125840 970067559 61882961 96651966 626683893 226164067 363219758 764209283 460173234 106451330 293544259 868311852 568797861 341277721 345982624 12046378 695378220 622326346 370448343 130353260 166909841 683136197 164370116 919504273 298129515 834369711 278224334 415221419 355935993 575668883 589171097 981302089 734449260 411368429 973779420 988731153 776407272 530331751 72490622 668658688 596644451 725868210 225614060 274076506 852167658 541431191 457637173 793215258 546356264 136989422 21098267 185811761 715493117 687645686 965218831 579896789 152493236 764562126 659424636 265685485 613498543 838779171 399784781 315965789 470458910 23300867 148081435 381049642 47219489 803960672 911809827 296574191 432494308 879558974 283158321 971522802 386661463 6979989 751001391 766207423 761594407 444623138 562287614 50248340 756116187 75872214 693918750 606941867 394813478 843986068 504650346 750361302 465381508 839062669 612528208 510000030 402604448 178407493 760099451 769590921 869013766 395909329 358448345 998722283 74246182 315319924 997238717 523319431 423842415 124914141 916447217 451598642 544721612 784491424 619526439 393578947 350947273 860434840 265929489 51222059 893353385 974390915 211875226 765954662 205340675 794863457 131935351 442256858 4921389 730888477 761515095 441419222 31325956 998526592 776022177 814278820 370953622 628735550 752734278 834682366 879186453 461772296 77816576 906157952 577166280 153289125 709149047 274698489 951875159 118593711 746420962 819207483 247922358 518079534 81362407 849253896 799634287 59590176 46803793 71290126 33088482 242092350 250472446 956273270 809520105 612974673 776395809 348196843 482311321 934131074 396068180 203577656 493467036 75690819 327928378 546594420 506617929 57459823 719259145 676271482 688042702 421896757 676773768 321122074 128577203 454628849 163178820 332866379 882022180 992082966 948290846 599963518 261739354 454465180 510853071 48872647 435125378 426323930 347679364 851180839 307846223 763620123 72639517 984973650 77900834 113971868 855565027 258667422 207747550 404558862 752896633 428947172 203014476 274549411 911754716 329570745 703416655 720541838 731644244 552800347 780469575 816174849 671917627 734047262 650132026 346081201 614629876 537539288 710889398 391298232 804240599 147356652 472057727 353845418 526682069 86310377 721507870 911980851 517738634 350024809 213820802 356658569 997478073 322211007 400039487 623531920 712440614 764882368 28998328 135842207 382759839 918798626 231952250 289334060 323174543 120432024 422645636 522309192 171860987 155120215 128718836 197384380 132493057 944623439 215911531 71416617 364032921 966790297 249593648 625266929 214691039 800406466 376416811 854516806 646783552 623265947 867824027 680099595 956519348 213626105 961921095 620305017 282133992 728847845 585230162 934722193 558385245 883765735 286684072 697167693 524718123 456134017 586211874 560271217 279336248 505471118 344338473 920133071 621282195 510853938 210310849 725570187 542721573 152145076 906450507 61502368 215067055 259414583 401180670 915317178 407786460 496076592 113443888 338759737 102993179 561308592 84814590 518023113 52990870 621101958 26968050 515030093 527343862 261911157 920450942 290975058 658012304 692160378 282097902 622901996 577196790 26221863 646822580 273755982 801624221 724826883 72031482 10633711 351811213 263968375 47372670 482520001 577510421 427239620 258423291 325233996 170163354 27976226 997403602 432968106 402354863 996621344 508570802 694879064 454172867 975056441 226231952 497774558 871246502 577485249 449823815 521522036 877848627 229355668 263008129 830872789 750852876 903263436 952523346 158609073 693960779 548220353 395231637 769542326 64608303 244158630 722505389 845215169 105250597 854368503 524898388 905026194 899609933 748266287 882598126 689042683 33150596 757301901 640966472 413400237 26066790 193920784 534592652 5751959 506076925 986137673 197067144 509977137 907242369 502283677 149237934 225723883 12317724 443330324 825892985 606688907 637678401 672823553 372501222 547570195 296459732 589621854 882692280 130328321 658446070 248820650 533363164 719424752 120281246 780294763 563976342 92474247 262381743 992700419 597727550 361322253 931363610 130411571 900796647 813556694 951309965 814691437 909435244 489043842 50338665 155248871 612413793 845030298 657725250 963908588 41070207 590918916 213361085 258635125 806173589 853804248 644571568 398187610 442896881 7842705 153387055 939063880 775171098 899841718 878480563 599868876 758233207 567756300 712763102 853059072 581917949 255561542 20634371 740331010 552441774 725675920 811335847 727392376 150134834 384383569 421641877 240289018 279738989 20709606 188874821 872544098 815067971 423728966 206065073 493372767 477071714 204837989 860535625 428413402 858485837 893669363 114269572 5799452 686148683 254656751 983399984 729135254 288565178 905472461 507449483 891544747 660303399 870653596 542065503 631460017 217189253 225355194 547567006 336234619 593722490 277192764 491107145 169066462 993399034 620033142 917524740 688325043 850670173 525676885 122225864 256318222 552882196 75924989 726251923 697695444 87686083 612358274 729690727 83959446 475503046 471135769 750676580 503448967 468167252 383670093 52469841 174770163 796336070 952158868 5426769 800590610 400129284 757650385 689778224 514620967 847316995 600845027 344194949 237830807 50633921 25479648 960958449 579564080 10008444 918999595 345584061 324706129 600797835 100408031 733835434 118368318 479797357 955433764 669236378 241100708 780105863 613231605 991152374 878108382 336124574 286532677 227883179 733179999 951106620 704367990 915858951 482928781 690164021 19970014 653483373 740594645 212233226 766147055 453790961 653466974 322775331 230170943 376371622 602659052 416385051 867550456 184552465 459811807 25617382 486328949 400696011 438024506 831098321 28380371 196166159 804432816 617799991 306618688 936732176 902005678 333646145 994016864 205453990 505581431 988459436 256828413 94608572 154261992 700048695 420557071 346746118 220647085 577032288 283111878 17024078 494511819 123857166 667901944 548986048 766623880 524173744 71028364 601163812 102337535 523354262 377213124 655756347 782581700 314155349 919809045 281082354 42196957 421013239 990743318 332687311 310486499 358457125 742240817 442746219 948254458 150364340 689873205 269825260 92825905 203346622 407041125 708982452 718434655 72390331 266633685 642775085 16871683 558093742 166516606 332806230 315537036 438774068 823573810 264570697 821996384 336467775 176801352 687436340 329855503 541052960 287417885 864235738 964704416 440941311 554113240 849308269 703974210 971330127 786091900 996629921 151260383 496274366 649360702 327809959 22636937 582473806 821064604 496079221 38187448 751750509 484147494 93588447 103962461 86066585 585354127 795826231 706950761 740733932 859393339 929054016 599314078 774381673 821911625 359690906 103025922 68517776 833284322 703323656 853007531 372108296 600522062 511589805 132270084 219441840 988173976 406764746 154030557 482283871 949207630 18027910 959020641 262678137 769305203 570214814 841134491 471907649 949945283 626241921 874234234 741465450 487384780 350192232 563818178 291313690 448290463 201906942 647073281 228207120 335723693 106373974 687783261 283638667 811255264 488754361 995173736 237539729 197121510 525681476 959581158 229713243 289810644 659707820 85065357 680288180 725398029 661393052 63158995 794549114 969690897 937170809 853062914 837086319 447104920 993516959 748353502 84414525 483339322 71881907 839321096 704339678 496678875 167459862 12672338 285800818 91759649 547461279 597255159 966360222 4858035 414779778 359617139 256802910 749836045 362896523 573036915 750173963 870024457 238435858 272559760 890239118 570807160 611979287 758615761 615567734 475856729 580141208 415622429 258643031 128798323 417129465 852388061 392541864 530345206 291626748 447267177 893536314 91282977 430315692 770137222 495782814 506692717 614201887 891395952 442498731 676715969 93930498 154161844 690300214 616942375 239416961 265240058 329642961 717719327 809433608 617745544 671046319 587390170 242344048 645484066 454332988 907952126 85857158 964484484 868575410 118387993 544782124 202243254 885320958 392233829 482249244 516754175 843588279 740051891 478911591 739557736 950061109 923642150 681040564 910630382 71411486 156583731 104037455 313967839 532695142 879799521 95672867 733842989 120002867 451957599 865793159 623538453 382833043 985444343 466201484 86139602 603868880 534625539 340471222 562702987 106020130 265162615 849010657 322366790 329403360 713868977 753556380 558927903 875272421 262369085 173964657 437753734 298647781 957036186 59773275 656010533 802955567 19760209 662240790 707098859 802221002 853283216 437230601 143000500 818621360 362082376 195800861 448956460 740734767 494657128 285678484 658856717 164850041 297711956 683191602 156765756 482108663 189050376 291282890 42420944 669644657 129942694 365942313 774767735 48234267 261295580 798325548 591722713 907354352 483483722 984572667 336616835 735037427 45388169 821743437 300966982 373957285 691936310 880138385 888879633 133736054 811865862 923845970 428447094 662115414 309112821 853989138 335133774 484495867 350857893 804674974 538663636 114177094 183297218 329294775 82530397 284354334 751731582 471472028 294591869 260071277 542218880 767980964 831080587 696855486 51052468 420798888 86947475 48077121 511517121 488300962 751738551 508017552 978737160 545536536 207980739 478204118 540800264 891034109 35151667 839457989 168868225 749315217 806767617 980598549 292335888 113104004 645666883 672993672 610147637 621301429 434606448 594952638 974695952 192787113 861751728 384563579 840585827 767007827 530638780 559219647 892551672 93123096 535819898 589914196 26071966 342873897 781425231 627073076 810093729 168139300 722644600 143363295 929240978 602874527 319321374 585222054 36746669 38606899 896416921 774172050 376539614 977879755 777783291 611078546 174337165 139660729 579981011 841752568 432842907 150545941 518788353 494626548 405358349 284527997 274583630 893545299 342775986 877489960 7812730 62863581 922472082 339134603 550535826 212373781 735148309 469789119 581893451 928817468 484848746 172503895 904708241 439795454 191473111 795229973 76521348 928989142 805685171 684035330 143197967 122577923 28415229 899931579 149269002 233985612 601967145 891743186 953558723 41076436 401946759 529918696 426760593 486213843 225376585 574173989 589496024 539817097 950949 646757770 999706513 946412565 882085954 472946036 440414514 670820625 778797888 943118030 751420494 492038181 375723810 366855377 576371720 991062994 135498930 52643983 794231992 734458955 856365157 78110318 928994070 956841319 873670139 325618552 362288080 326529020 713468507 370776715 61510610 811751496 427839245 619319631 546463643 461599539 602634483 258920352 195238777 426849133 776869739 396005411 188315647 547570380 618235412 36922468 730663318 135603586 946624492 327241082 471777744 133440107 259007760 995398797 888937777 41677494 802165295 420423227 561796431 615827836 687773443 103789383 676411797 412146093 248192534 585246413 405192238 67936256 731128092 902180289 857391839 43392068 929981045 960147200 776604787 315181436 7906742 291225635 855624089 823567086 183542442 703903020 4393873 629575151 17194831 185275635 950561175 584329952 374574480 622849090 898495527 133077083 731179046 399945665 736570231 145625115 489727435 125529929 790464446 178590186 546927194 649723577 597469292 307157986 698441691 515964680 269907400 502790217 90129088 156900242 413652425 91848355 94467181 840340227 553577142 549582049 626857652 924126944 50211532 311820204 145741697 953316970 834486515 797568814 638851509 150463650 501944547 106831845 447285143 364766950 178308767 606622631 275810363 73299006 499928429 986267161 408371223 723657418 186986029 315060289 544318511 815072133 132182692 3475260 559958359 483678280 755949894 983552422 589579280 733810001 447617831 900903391 274119185 696825961 977472608 868952783 870622623 636629378 737157165 774863299 247029929 710725748 538317652 31623060 154567059 872230968 141664072 476231465 800962282 95104712 745496880 266419680 154437614 518083494 91737077 229664352 770099711 973590019 256835337 156688433 796647811 924739841 625998275 746963785 298307441 789013123 443296495 883134155 884114683 980888095 158853484 193603297 569182145 554709467 804636179 59735802 605072772 771456386 175833502 528083712 901401024 762725878 248373872 510591784 494907648 841747848 897351835 437472925 810712484 365295871 865908822 616646922 503709126 689811013 335719222 718077545 198330916 578951503 836002748 428684256 22111665 416724876 673791479 756748341 659991674 788973279 807491102 739951508 911629532 313218540 377778004 164074147 139376588 809418970 815695775 564392975 152000780 859697106 568346606 834959335 226145773 240667258 474936136 402737994 680239904 828674130 632323425 111539529 338238680 864136244 789635216 575643811 788144329 966693776 899947838 799217391 50570621 716864735 385511503 620644757 78905468 853617088 756561329 729229740 326119267 286621908 494245672 740106304 706177513 749817515 285047568 621431153 223291888 310524418 736751269 699290934 810053176 2677899 167446433 229461794 754921851 601777052 944976736 261595748 556938134 746526618 416453228 369561852 165823020 928464861 260689435 437413442 759825850 372040556 818352224 636684733 121112433 624735075 421299057 648932916 163765329 432645 610020006 260189644 386624120 12326384 994431602 292475207 253503863 125340572 584930983 239258612 834130979 836202960 466609319 306909960 455028416 599880743 131237305 511857304 262966192 636848670 437505942 526839748 416474464 223922723 893979101 99388747 314610719 232258445 153735642 377111421 657380435 734453828 177667656 671482600 845702328 742259936 637437256 270634908 53525125 238627023 63611694 452914341 443613881 961595200 708761368 613765168 456647450 980255446 813291277 11711592 399120453 65007319 474549419 891540734 74324596 237043904 291894817 713760479 818985769 268437319 794455156 879793640 915353589 408961143 334781569 14727425 139311146 607744405 161333650 169952815 804505341 343239067 593302953 155862861 701972293 270387776 994579629 504166825 507040069 40460767 268385485 832958301 419335472 627415315 82033015 419131672 542021229 236118883 536986995 588291103 898252535 60769281 689569970 440016680 70715557 523548052 369259167 553872426 999258776 710175120 407186448 412236464 513005866 181975504 692922505 651735883 751000553 511301149 841531930 812171399 632011467 407965144 232498367 730336537 545837625 299496455 676774188 146064920 241538782 99435517 356175764 115331910 115925148 542053726 891581339 533024379 503134005 178642950 36341902 548494493 502435368 32830455 767866702 289722647 80169664 380104054 308418111 498794400 199039714 478954019 468715840 87055411 967946774 664117020 666296370 571889115 193919927 466152559 36758128 133905248 734949282 489485451 822453836 234169645 5409608 766186518 586930349 583544212 103737802 390280687 372061253 480582489 615000430 169472979 995057292 126179470 271683905 975048285 537817391 70270930 860781545 833402733 179161100 231338116 238934339 133599611 453701785 695163134 227718322 515818486 628657681 156223934 658856771 318920775 603908361 89765556 313043245 875354192 460021448 185581320 979688727 618832662 17003790 998914766 381510510 351422137 635309673 827658642 808525643 765245226 101032766 5012772 551963892 70527317 967416989 298726886 641889084 916409358 101996617 330741352 138019165 912434377 166982807 237705627 310809707 711720197 529495046 850171632 358848756 590527927 56091379 599281169 152557278 696441746 888424197 810513827 226048996 431644098 225084434 965669141 432461821 650753823 598656451 343342307 668996631 770019749 59680720 10227727 268554997 478672652 226720413 951976478 621458172 610070368 314185218 256414203 186505602 50245717 702470438 996358796 676038745 811657600 694265147 903857725 422859958 619622343 261166806 112625958 338251780 825733249 922028913 267781684 375949942 918954870 337483217 827904630 902325809 703201499 582411899 755861028 999713083 928907143 411961442 423021629 721794815 361418197 598611672 611859406 585689723 566599936 369498739 685993982 362643041 877046668 94472815 460802859 258246047 581818871 447453043 645338179 904583770 830070303 168632532 709320778 680293335 464890903 666926628 29196421 304928265 908642650 651223735 816192234 756361843 531268359 587835210 80750152 75478596 174779920 752011705 624875886 505424892 531458085 117222025 141695172 766163599 849643044 807057647 145134186 410793759 930999075 738598467 307142559 417003381 692899240 558365952 187581298 734072110 50446284 251029413 228136522 439901440 576898503 143292248 375800996 497014594 349607174 953779699 144831529 145052918 345229342 991934770 677242052 886485854 92808142 216745859 248520146 407634391 555359282 415697538 525571102 462366735 728682026 436025230 367301921 279872295 52935398 223031128 315790314 128768626 778503078 722492529 999842159 555247379 621694183 544749937 855068898 387780612 882360328 781076060 243324862 415252440 859533686 363880024 556420176 637290671 18687934 471982204 643837336 4444656 884405760 19759122 235568472 747985406 647728126 982051464 332156982 323441704 496125562 721891054 490921111 570505748 441896984 758477144 214208355 381166810 157802573 434675666 641618745 123172674 782515136 189647629 682904702 472987092 332137096 698476745 225212768 819274568 793073474 788327405 716168087 851516365 962295588 239715536 814259049 191054567 574171763 783681637 614528791 335056412 212275087 912719038 436881996 956484525 231710715 121359736 405680642 29421089 758393450 974396774 551271586 763612023 938842200 151104399 385687288 862146472 203677261 98559277 314645458 453414995 308575320 871535045 846273340 899992870 60961465 104650670 905236625 86376653 857207657 171539785 465204499 256049586 817766298 685389460 51699130 380208579 543076330 470187550 871786952 238064252 98493608 816006195 517396302 607813946 193954907 267835893 792819703 121484451 866416951 841807678 26445646 238560483 848283765 48014157 129554247 653179333 860170887 363210330 239105258 350470380 832738434 176113159 490085901 71054999 477112519 682456197 803606247 918929367 57897835 99813214 968918475 702617938 790115498 484396307 33000175 10314373 419942031 732594822 556769497 835668023 387782441 841940469 899727101 195041809 351248063 765798001 71854277 813623407 38151785 401350207 60274242 645274794 987134452 279458053 760089336 241882267 467437072 600213314 973638160 129757572 111295015 332323768 669425481 164345707 203987388 585267009 161588504 332104338 171631788 206223235 914535960 971735315 81462675 142275392 231092098 407305476 303677632 751726359 120351432 267087727 746615812 758191785 772690429 56606454 626421809 738764602 935420350 842481932 472957742 116470236 309372432 942970806 693672416 461351920 271164204 574645419 418425519 360923094 682491033 70964180 537005634 966727242 862321692 594253483 899768597 76390360 431364407 879717774 536023201 843366087 275362768 92514741 65682249 188629874 191560479 253962365 775598954 59814757 226581095 627593533 132658742 276149928 187572003 89169778 181626257 755468905 217252464 378128931 121762494 194247660 903845017 572854258 146062964 582875914 219897482 267178632 206639544 517316329 311524321 920161893 261247631 641034219 400934629 675553223 494220140 38636919 345512904 211701984 160316993 521850256 897771883 301167892 535863607 835743744 457659109 131199564 786325918 512718528 241047763 304531614 751759398 355229239 488758880 864822536 34725079 598435294 501109026 829193244 97900330 382924091 930483906 259742643 381862231 890849138 73012668 261000099 113620973 86320367 307360474 607439231 356030819 920945307 642226171 869095548 698975154 931906276 669016945 103502250 931958192 445970111 162243842 200957693 5163588 949753045 633557446 957382674 180740574 253968992 488014437 15330755 543954967 942650214 393733613 177324215 59338665 359493669 429636359 667234472 391560525 920446531 562817439 36196739 47554282 386104676 861291224 324768143 104959283 451727231 131069962 511822615 217936746 199213248 78949469 63387159 35117234 780421823 140586762 554752281 44806793 517053592 290170970 386289377 321848939 75576901 895616822 649242107 505886765 336715815 764627768 979137600 398522225 749496710 428447093 844045252 434031124 733228636 284794377 569584156 647117539 930907251 500335570 878104348 125190014 305978559 481616043 606802496 942002788 326805812 236392949 226665178 896288077 510978640 237421872 978351502 296737225 397122949 324862112 412626229 980692287 414427659 514374445 771880818 362222175 786544190 12604649 928160622 356696684 959172598 476605150 299637056 530688770 166895640 969052524 482246877 869767173 497217352 922408901 956229242 385831587 197487923 939113460 528534249 407444674 748476157 997441177 968441525 208521414 18210495 181184816 653454270 372401771 59012208 412589438 825600759 28941968 872611533 474457401 118995567 965883251 709531013 223677943 250197678 536991732 530094747 169642351 867859786 948826987 190234738 660087360 172023964 784841304 962419840 868694896 781258876 572670775 138989795 432377482 629849157 674701690 405409646 440277498 11859425 702295603 653077210 816385562 543704957 988913540 182961187 52973158 993523690 253879459 860018734 570312067 721573656 179321271 764165217 693173265 610060593 252890176 240227623 285670733 930193952 939793041 548719876 812976904 715275962 294139629 63818317 328397418 338039718 425274165 879353157 292269897 41771267 706650345 714123943 55202382 567943174 469577919 122549663 912722877 282223833 934630115 361637825 38375952 327276154 738044072 465428867 548147985 932560133 122762610 663829579 753392014 588670298 152575479 941942633 798493688 560388318 994313879 834148708 516301770 647675615 273318479 356526564 982607794 256566903 581285469 608289869 766286526 388316852 926207109 124110427 421492123 871269155 747928600 296319642 457430277 846383653 737923186 141182293 265129263 601760462 667108599 976481597 797528710 498849478 836780175 230457773 826887478 756225179 512916227 293192511 808691374 44442019 58174435 760161521 676503318 747871816 860578190 395234625 807911238 29630365 141863030 182512855 954612147 7155 644255817 401923930 677985923 630334774 863004008 105358244 849484787 947324399 55610183 684663857 34140480 930348940 153723223 718478059 48933571 306067850 362054703 424211459 240615303 712533736 716898583 884766112 502320885 616452469 713082150 743033410 698510973 109891113 436896789 411289084 959314416 651594893 661035381 756142042 845964917 260618249 883024813 273436787 372605034 399623203 102063330 188678801 269105909 687684714 797728674 916785699 946625942 632659785 19442243 225213411 905467272 455207406 30277903 285953423 504737402 726906523 815093416 377234739 964041110 391382321 519995721 364272942 85199218 479890880 791043099 310838912 182618861 641664756 502430497 494604844 105578738 133285612 108541268 738343770 497142368 51428547 581185655 88659834 972782748 389034193 408214619 386441712 717920426 218915654 590676242 619448460 228676354 640741743 995288933 130871337 530962251 847036328 579784116 236611520 703783440 618835485 891855114 433108215 661231110 815937241 710557352 695719773 706993360 771712601 98614840 526445536 161254330 453589188 757223573 558603468 216882970 587061073 641438597 683107196 508641412 926167492 533752 297447592 25650891 379117 600020503 761423430 185084452 98319655 520166751 18578083 161866816 378229300 924462948 450203487 853213580 171985733 183366646 456706001 170785454 308800069 200757751 695342400 779088798 650895884 47103812 418117175 92955330 919535171 964530444 865340834 464117937 701228918 85622428 955695195 436748696 800959448 262999320 110451753 118435512 617588447 837132965 526707380 5563329 243238523 4643041 219002329 585495102 609709556 113720625 453138808 696730460 415507838 697824418 610716301 732577963 334454166 211059628 765345021 772422666 11311800 67143632 766142735 272051215 133611944 34890317 22166381 777340107 530137113 545210604 449498427 992841182 547721429 384359414 403942074 426044983 127782472 914688100 992188724 107557924 441917065 50062647 681821144 783997910 573689495 48136322 911951238 41854007 903262409 232179627 400450317 189178656 647250336 52466250 513118605 209371795 300854938 394115111 154721795 187518993 568274455 534239662 606805016 639906858 921077741 895380592 261429438 421541531 136427458 127314923 647115847 578641782 328399435 708993194 953896119 988072948 890991847 892653214 807876917 13204004 133013963 11274394 510007789 841001978 35923022 507065702 181684555 698089358 791348777 684354422 325560361 608896794 978455844 486816154 793797720 900465323 763590300 603823002 589511415 410722824 953590753 416403405 54951126 628354241 502005935 651456501 170931039 336631580 924676403 42631218 978158993 387386997 266267400 810983549 860835317 779352378 451116496 323236639 266770572 640556805 825229599 103171700 790515807 472882613 54839385 138548528 343652722 255520041 733537635 640529950 826561554 951059742 330835006 816513360 517139423 636351875 394218258 815636055 908684306 958299875 357037879 465932299 313299766 907760514 496176862 96483915 418773184 400383482 836516377 162676935 152346773 690519821 171168040 269762346 931829170 763954668 400122810 813716680 817406171 924918181 821192327 408718236 377775091 838580947 94245933 998480094 937877007 645929946 483691753 107568218 836825455 920031984 677708269 858342656 601405630 16080211 308709058 647178129 695754555 619569208 785900674 976284705 712376065 644610150 77577680 394469407 212996653 149397481 202221890 411144051 318883858 132688953 499836840 480915440 802994411 462378830 945030363 877058180 816948356 299505609 673852979 265481422 708583394 269937001 430393056 547506914 191965259 966775538 481378386 224518955 284369028 962459812 478531509 497396493 850639335 299476819 778747386 107747185 67078829 795760966 923340039 198659270 510441224 977468369 353084329 918429710 50864416 907777303 42123923 732145188 257190306 316251453 685711031 507696088 950106087 135059666 531728488 184472859 816499212 963754690 926372783 121304243 936199280 575136908 418817650 122728963 706795298 557059517 649350583 191189617 885501085 949164146 576753119 337651659 434095821 516021901 471666005 637490808 18732798 731883230 36051350 545192511 21540816 887757567 493811333 502698155 324420750 275265832 687376241 137168851 384420021 82654343 800878820 374142875 959413878 737338485 783776999 215240680 53044175 251825178 910526474 903503487 623678677 87553002 583402387 90239332 456828134 29553248 921153099 254044486 671286467 706632628 835559140 94015065 513689126 356654449 364003301 114749873 419334044 381085335 577422937 180512324 66126446 575487483 640206237 228993456 895102342 229706040 634804856 138102790 284907784 608199576 155882005 794406174 345641101 260121581 300235205 728515028 810445485 888927529 402591842 679355221 547562807 635558501 593752442 537226700 379977997 578634287 655658003 622405932 195440733 851245936 121397011 493682243 857105661 203790450 968069657 616324625 578028879 453660085 874702953 79349263 140949239 88300965 623631102 690572911 10830992 948317363 263700695 23376692 534990710 439996399 212743880 259376845 79153339 319630407 847780724 718416888 28954321 894771602 877354418 888616064 647948369 571811846 673526475 580559651 218845072 491360607 611350941 726435326 257639976 381917107 623428532 177191402 18473063 770346431 738052264 115637333 118228610 411450578 47148143 760794770 468827058 462808811 297024266 6471165 567682594 314130143 835419201 671957037 853859117 515953631 424331347 592013577 944327273 436292457 85522774 39500159 148375597 747896454 241431898 284917246 262861045 310728457 828934842 227544219 477862803 252641826 812699269 876103240 820326352 805035139 368795907 461811439 102145451 203721933 251621145 654593089 747231722 11393011 607031834 737116516 779718355 573171245 435448217 411009619 642266063 716619668 827987650 807025976 32795381 516688970 476350848 592424632 324920841 634512681 136022434 316883981 204349062 760064832 619636385 592950416 837396183 554223557 854649415 452403850 590940307 850543405 895288686 991897921 772654162 225652074 307442769 776781893 381251191 321771287 653136604 506720862 687628880 453839002 619154119 463605819 738493632 95010655 544970609 179393521 320870905 823181321 515290833 623514069 619474558 940356474 653761560 692790690 979920755 781711125 827613712 301246781 991435798 505658170 685851970 354944826 484505287 524951169 530046713 550439172 290244175 625762445 873066627 645951213 966000277 125753154 231404836 761162723 12702476 478789225 470697878 201638426 61118559 815610105 304167674 114927723 29617799 755778542 449800954 401938329 156484081 135690178 311284279 50741177 952341342 957673524 526208887 281546941 392091514 793550044 890284990 256247682 756756260 605040251 546371309 201198956 883256586 417421399 47405819 161200265 996203010 814048918 415890038 788431703 92043037 648853462 91822810 127465260 42843146 452886892 384161497 845196978 626521563 235469657 898935361 705555848 790414317 848522492 533040694 182040088 485342089 149913136 607719569 209568926 122359908 320960000 791199836 978794855 855007865 775597116 459808371 281774387 389098667 154397216 514041282 667288131 729143762 787718580 196779809 199790975 844320385 343774980 205772297 244137210 875697178 797519285 396022341 224095491 288244677 185549933 750879872 52600117 647869384 281418977 121167688 38629755 211403557 56885844 311972746 666806676 150103707 623068298 648214730 369776044 632659521 683641844 656440396 369668463 689605384 279482163 19369172 29034188 271066057 885189252 399401759 831062088 497359467 172781947 397922735 927011913 753169422 869831633 925613694 641270073 981512272 988255341 21821109 677918339 12192117 994051974 636565830 687211348 119001039 26201032 311900504 51809504 310016418 16701590 359793597 285762750 88061063 763220129 981417802 831898685 381133230 23736663 815213298 743868056 334255223 330505772 537688836 957204588 945137055 641441040 414539408 640521862 107740330 737717486 944334622 820162841 188547626 724929480 174627737 573036163 489754143 676695755 881851003 158724376 660988198 834455926 752358444 730424192 228115961 347254890 717660058 387493805 749910326 228914019 191760307 456113344 349268164 520281120 807871222 893190826 240281124 165899565 524599068 134530347 840800918 774642246 143340836 921724191 290783525 25541554 400614706 642326172 340413427 404210719 834409647 663528600 234981317 499335525 667560720 598757130 511008689 318598970 997863342 6634886 177849679 190659938 395337605 579022827 437592100 994085565 397470499 200258848 803664126 793776459 872399474 224810793 590323820 188209967 208082984 626565171 866242530 790536245 433887773 826930946 951011877 840561131 813479142 287970119 682973448 538441759 912839082 390159402 594831077 259178494 578188529 733529198 495740785 228427007 267114003 454315491 855106058 865782742 828733666 920873378 660142206 70801247 517175019 335071285 176750545 67543903 16319743 389206992 344555719 612666951 516415640 919999833 77754364 890748700 369715866 387532520 78148330 975897728 447799928 987367472 786864586 804589638 684393411 711888255 735305772 936089897 134951683 6603044 924642364 150304604 399218054 941431699 354810052 119794113 207785058 442730352 860422881 592891685 204101428 141864473 613799855 974138672 999847365 864449077 32533081 191908061 217846288 709311677 828499133 791630500 427176314 847990424 99930380 293516796 381177216 374361457 189666742 60210538 76293498 973791402 938660083 608594517 322904585 464483725 390955926 446935413 878782951 745040252 906106464 78401693 831866628 666276742 961066390 10552998 193492960 684014534 186652603 402138499 496258132 34149073 413053583 790807995 294886353 469480142 831664799 665473999 706185327 505443575 306464626 913924511 605283266 552773971 869775908 169910316 256521196 560275874 533695184 580217137 141380880 220611810 484753628 415149316 75155364 74489996 437578033 111083053 281489914 20977740 357359472 308860993 105249445 914919275 937480800 211144290 630078501 910523545 329990698 19727594 193402295 662018649 293890073 177885441 636151193 382849650 374916573 909352795 324423151 366311257 768586311 946332552 693895833 543298874 78553694 705952459 189808538 528802772 284517742 253535218 9295430 22368531 306320771 446501834 655054944 501534596 924257466 341619291 838618973 544706918 153510164 750861869 249382515 612030350 749917497 34599061 273776131 78658156 70552319 191152554 849811184 637372543 262530772 356732956 630924917 368596451 152171099 591876941 626162369 570212727 112083043 342836906 577073030 139348283 770053272 937338291 149095837 180670565 554409556 910926072 327643771 107721988 41206609 466704235 407731317 310705123 765792011 364598918 184083243 217328821 749726707 463369898 981231751 103369515 609137263 171897917 545052554 806338774 712310646 743860693 470653762 512189374 604290841 573004380 839936843 732158267 472254810 119587946 922715213 730523182 330421861 928791009 852589232 412977504 418648209 974357643 269177668 21586666 713690948 237999614 715254232 310544216 866170314 416419898 962739711 993749830 306072006 160810265 312545336 227994273 584726905 883314235 838902720 170651493 431513905 201797982 979717241 119468466 544072749 242684271 765449944 490131028 930762058 869390394 571743905 246479125 952357915 146496632 356245118 18534016 958746279 838256606 318434665 840214415 225287385 749100133 17358525 297026431 457523119 203020579 958473849 487238705 221660972 796974737 395108811 8760995 329316694 620371696 532391078 113897169 676747824 797647469 13662540 749515353 124588300 394625154 118736787 620234915 949167987 466951831 904287385 175292197 187921427 634778797 333545118 411215442 509497090 421151252 159247989 447258216 280387321 979591281 119887662 713817253 28342167 310551684 890394404 816507201 316385706 312904424 570146158 372908937 1338122 993129061 452615983 394831253 909992065 524409044 949604597 243692145 145071143 325800595 37580820 707616594 463884644 130738710 262130784 57725230 376934575 694404291 743755682 129296664 138383438 566772264 859892208 770472661 899846807 278870057 654471497 545039656 964761747 339236395 337310431 808011761 276330171 36712232 169207514 789534706 438508634 12013743 498643453 147472325 111820812 791502293 866684812 343318126 758988772 960815517 568597450 26805831 219541066 724719727 62875055 478533052 56733369 583073188 36876522 532176693 56617643 345001676 324252724 158865222 988644255 47640043 852903570 747664 796371515 978818388 559652336 983243071 50629312 131392725 920882318 331911517 952006034 138264305 975934730 874936727 653005117 65599305 516300459 822630897 604572990 805431830 179563457 89029808 123175080 20240335 680777727 887162026 560006470 516653385 104334356 86798591 382372037 658723924 701224579 277156384 977236496 841294169 591551605 225200113 226669428 263741045 885583830 574292741 843390850 176449279 693985038 660390025 486484977 383712070 58382442 605181624 890517219 818668579 798018999 963052063 797056637 128754614 921690736 784511072 909622067 275220356 612248423 127239094 732233994 387467994 556266305 961741455 754925908 692305652 151009223 121240032 693470497 927548763 971547843 467346537 187434094 534869764 56884396 512578543 331026965 96534748 408869802 236453052 540638372 923259205 746989313 41665595 330522133 432356551 907081202 737438298 429221110 177745181 313331238 700145065 920394901 875920427 831246491 416108365 131348397 583158078 394313345 816712498 573869998 596423487 366668529 694439032 873425586 348213838 573861470 977216007 962565453 418372524 8439451 963106559 589209288 625745169 184800560 816592458 979302890 166398814 379303655 974692482 15410085 827491871 810045607 401903453 707098452 246591549 357943309 152178853 26234559 486746622 738194649 40502524 219717632 247821356 67909374 441018261 520989901 661841911 919920896 750970939 590290518 32641735 553783507 55361856 821847078 930946188 222777008 987582998 776097836 370173238 521321720 982846327 26173377 789247212 679922821 296040683 690399699 76979398 271792279 286281657 453416498 308686817 593614382 751491228 73078899 662411760 110182127 913494593 232285270 939634685 131233667 956844309 728754437 681859670 602512498 931387567 243414671 984346316 256069996 601868271 240659879 781348242 761382098 459270321 560120330 71863364 837415278 335958891 69309450 928370300 546864239 76906345 673428978 69717420 720235260 32155781 35510677 112788728 258735405 150084462 52264245 143145242 581848174 11172587 89514360 548434720 580909949 713970212 712502998 771227044 606407676 825623992 236734031 414517510 287291751 213804083 366986409 98683500 9322436 458427547 230008429 201904703 983458858 312759398 772279630 857121751 56974481 114052579 970084062 868222966 560090048 699297435 841125375 494162870 936346573 301499310 583130806 335424675 44837965 45429670 731364161 321799965 619788982 96458023 45718227 660252182 786328362 64263931 496044274 904224061 805107070 19977845 763091444 799765777 219004434 678482486 792573160 102839651 516235603 308869528 363344387 533086061 960919170 304182663 820954582 397896481 46569653 688191891 74571680 374322698 54518174 381724339 984151581 446464954 118519343 659363373 27961213 325348836 708440120 213156290 950193342 879733173 792200848 649331377 745014997 421439463 959803696 566813159 939596870 184067093 178977261 884855559 962754101 564867435 684075892 150894842 476930271 335846357 964147866 493001557 461998058 341473006 578928658 705029663 826439304 546755769 95516199 544185578 745540487 542720379 434271755 650344087 212727472 336344122 594774207 365005935 497629067 598201258 717837327 713668950 268525156 317472080 316464306 269015478 165713339 609648211 455281730 647313737 820181113 991070012 531865693 619152714 795158871 555398977 100968754 951530141 354226276 286639394 196806914 891320968 969960133 568811136 474168914 318066850 223865353 178549996 606682273 53825283 315037063 916451627 184414677 745952652 161897395 777688619 772897179 501341866 738171656 441262218 322189972 126264440 986042223 610789701 155810182 92463517 900376711 595514039 59598991 886141249 89496645 895392165 377008489 737016940 494811741 100067608 768981543 399981639 622168721 699930205 527593559 59120719 314527392 735669191 680629061 832793620 933572433 38760800 174834607 130639969 122889822 930450489 318465994 394406163 332891529 959813711 194078408 543380055 26519410 42092430 483152417 871615245 522028327 32823431 909817825 714158193 316097172 41811959 298261399 669022514 258743302 265906925 525364412 293279159 286384460 156527860 251149275 262992286 879480487 331203300 59936563 97709503 47580155 264280792 86513822 599355739 497027102 462523366 649960493 847215372 761303617 758133331 907689388 587956099 598902032 668263624 113985715 246090818 296910318 132529444 544599798 449766733 302905903 607223839 380624521 814668222 489774357 170459063 678674242 153500657 532095712 16236541 30189460 245802217 206147518 243035666 901999681 312060598 158616560 534544847 292307153 515419485 742870510 377549471 490512046 309151395 566892329 650159928 534535572 312590199 171041987 46055413 662184296 472820958 899451192 218811393 397727080 463742904 721463443 253360134 124221657 677844561 868396450 323721271 356658361 16099762 798869265 700397332 487860170 828065914 546538053 607061023 988895250 33212553 561332474 463433588 898659459 44924579 403223329 455262783 625111487 959866944 328300617 502194194 891808684 621623157 922979169 326429194 541055713 734238483 204485123 169562398 142073197 330336965 320949395 96346001 791608514 153638513 915140773 429388021 509740067 476391503 159319883 455959993 721167072 649607430 276247740 162718920 976065995 789198930 500150039 96731037 592926457 615865163 659399348 662536490 695732228 868687961 219090299 447360259 261877875 591798128 246457605 69216556 431347631 321140750 527950743 23777488 769579109 724833914 801897169 366996030 659090193 34900032 45853339 980602311 277818555 624578288 960524169 985908881 800841501 712214250 907620753 150172555 633801359 40378957 230599296 956048785 947534991 99993958 845802091 770297321 713718239 406738264 467723568 784810390 778118798 881649673 88824769 737057850 632774081 678829110 975707572 776281520 424490315 962699967 623659413 681891922 666055315 950701164 809470375 552009502 189534136 630266581 661589068 581597849 668699180 613959582 881750817 351630477 11320698 877698215 946401533 476151971 970675629 348363785 293144673 971770770 342567396 39740663 218631046 863645068 572920512 763896964 512474844 395348271 123270179 933403963 665383677 330294382 390866893 822421146 416026813 479491218 269111367 957641960 222632557 176830228 142673399 372354484 619961488 854404036 27216241 435571186 96724579 395014451 945102012 416943438 20468586 161803678 807030792 345118314 49718520 509708532 35877300 600520268 228007676 116425533 400431887 94879448 182582159 495596726 707878101 19404182 563790130 162299504 339771768 427486322 529125967 614591804 820071674 514579305 800077644 855249944 659587947 593932535 326046366 229316727 405642025 46308621 116887987 163095197 955717042 354785799 189291758 987624350 14437269 811493910 955066339 31589916 624201763 10546004 363223961 860834992 649519783 286333222 371147209 771484976 563022036 900218356 944214448 89615113 618245553 837036468 680928833 628850576 154598181 715444808 715689969 78558772 392029133 346463527 866895558 572462343 6070083 711102402 876650115 567099931 195208336 847322618 144571158 158656416 942086202 668384071 134189322 427272258 284633309 568019315 125224492 35235111 162491041 573087794 795812424 250744354 872140745 242873286 744586322 154361741 798807215 244471490 564996891 720625959 389333738 530359797 110318799 890062667 219287860 904114085 782615025 549134465 229211843 776846424 480333921 145719955 963427745 673038506 100265190 724637344 918609073 243025393 166296130 573797380 402196737 880780212 757405696 322263162 661707413 91567978 147561957 432038952 352940796 885498183 468899387 757925609 852224624 521533440 168933088 872341015 794271051 385298042 201198262 803598310 325879968 429972103 375433302 328766782 154489986 389630847 85035747 893443529 183176871 403195736 677459146 461807894 603141672 907457553 884172062 260090277 35353577 658052196 500617003 34974272 644910728 590923152 202157267 732860613 27684223 86954941 690570366 397767923 740265546 736184887 215403393 193115971 319167485 972606132 180326915 429338898 549790062 288796436 653683241 683305795 90091533 182206122 438803270 793987284 837618382 30100879 910147220 247154714 130711625 198957036 625707664 783871136 646234151 952066516 892652368 202731648 733071665 545295853 19024825 840508058 272962575 440127415 264406184 399877244 240248479 698858819 141938713 512414551 253312440 564921631 557840801 365342767 481124941 443124217 310713923 859585406 464037853 115912698 977967901 52200833 528441325 929723723 731147497 694374409 355507331 285954292 529735116 146598113 989424624 39221308 605034918 273314965 876570001 760001398 645493446 864717155 259496764 903442055 471530713 792526871 17703872 41203883 577879543 18782704 27142094 43851502 628486947 874970957 638675885 990777033 413261994 137493412 924492342 291053672 800120456 804647128 792527448 808412997 578042173 375539351 323953073 217138036 160975194 941844334 177772874 573321520 37573641 700253518 440382382 24183982 580302659 740644157 10676361 520680057 134221551 648359182 163938164 123283034 748729125 938848081 37805397 64202350 375411575 929826758 252487127 46671020 783323936 323800266 515598874 352127005 717132632 168890356 309159357 395060077 870677797 49921733 908798769 959250691 121969207 228885285 554670656 518441907 349002336 636380473 274149998 550044261 457231276 290003613 86960156 599532397 114003831 985059083 549388388 4599802 97894446 679601014 231992149 148283536 470339649 607747866 544392439 717383651 838848301 76726132 968413075 539993929 770601009 282107934 827636305 808983598 465219355 771522385 397100205 673049808 881937542 33080815 432780389 464697978 62770151 15227393 595823086 811669314 728392225 634770196 569804441 325133982 310004371 853661830 413178238 142384103 237169803 407918060 135372713 840231404 814968551 27142891 243747943 893236712 513317911 839195803 230125782 235243490 282303620 132196019 842564009 17442202 484240053 74275203 474677899 650783725 859048472 787475641 650224645 510927616 788391323 136780783 443357628 893689495 52387349 311452966 798175960 781428403 670214343 808341148 754716927 925077868 206502124 447492672 274497960 102037454 729315457 796276629 157180682 649475806 92262571 307481288 673004171 113636057 679401288 204050042 529192194 180407471 284255599 755509266 661307894 150366869 506850395 159720190 724138793 635806542 827895567 417798791 832826357 929152502 622181239 265074721 569965096 808223347 315027160 544162547 52941641 617560014 727407025 649132387 400480503 694255855 886666789 868069962 869821892 197195030 485627123 689848494 457865935 704944152 494124246 618046036 889963882 219054718 473885076 345995930 479449264 472240134 435737082 588407500 291431637 289137567 556717122 429886338 724740651 976337082 13413804 186606289 682035275 451251066 280565398 965410763 672576739 116414334 213063135 813128717 161439972 266824757 87050999 621820992 762100914 527660539 399577556 28152439 123916130 141417378 174739815 174375896 410373942 819844188 228510986 746359933 131670951 792718468 624389064 555942656 370676705 530949336 803673383 929974742 304527002 747299954 79981143 493861382 491333238 907915233 574420620 498340934 677331891 975409449 677234203 911883109 55326178 996703448 712984638 601676789 477141003 756027002 885834430 773732870 314713539 905553014 604123276 486021758 678876846 565455756 381004946 799656657 789591302 148079908 532314951 363576947 467912005 921891725 101655487 943114788 649436157 104037355 473357633 30562348 242347862 25707519 78507135 110919723 250308858 519920921 894441343 94584811 434597622 957390609 282546880 907795682 769727827 908760540 886567775 369824511 120274102 78071614 160074982 180420565 314799195 207511894 194656912 513759794 902442039 719614221 519390145 950878944 499135635 567255772 48523501 295749574 683477290 267676559 476279064 115428347 136651893 387349823 898954092 596013151 779932337 115639875 612759418 336857460 882967935 314687637 181354978 926581070 589498732 209291238 822697961 441623825 818112735 646698171 297711353 348296707 265171297 836667613 713225329 802058800 436737681 893027351 472866144 852387271 597110774 730357916 497266178 318661258 949867886 443343187 334463243 394732987 806183309 480500766 353035896 303848212 334058114 883224918 542785872 36770723 475049266 259119258 20321686 715941725 721183903 667675396 242809495 386947109 819407117 227927764 617427798 774013939 536752583 555755247 878196152 501239907 58591380 464622418 461952448 426827782 224613005 786755547 510902646 446446101 878997718 386511458 98157118 761163680 805389179 853845979 206816137 294080582 888763488 834587818 227326996 67395868 545290537 171373132 417936444 551451130 666131833 611618650 949442461 105481888 952027751 432389811 769217329 945035761 331396199 998145258 608736155 688973541 245710624 252496774 695042241 338031106 427969759 272601416 712263118 478514338 256839227 300927221 827990886 933587428 216670383 784046577 21608704 132433148 137133566 857438830 999035170 701757865 848990164 940052957 122737292 330649050 43962238 62277826 418313553 556864480 629698554 434163927 604205835 566256473 809593523 58181717 470807200 67535058 276180356 87135726 795978346 60449165 88028894 468978253 577484792 872020260 571842196 820113690 367908356 194553806 947475986 894453467 169965112 565351902 656733733 540597969 741600908 249731556 49447243 959852035 736407123 921884148 572868523 689399257 879657697 142556764 108522927 352495891 798005549 918750719 653108337 948865233 590353859 429023434 983145182 436019608 142942504 993980933 307767994 708692261 717474577 77762475 861537165 685022239 287614602 744114244 137052963 649552812 142676651 432827898 586935177 143872938 641293761 707459275 976672652 141610871 978436107 535692788 390652381 481933490 345340389 37307068 938778958 700379732 561911046 163785301 626212934 5696958 324148103 803620068 320043457 479315752 546404022 827385470 88941950 749995970 185649652 90992901 893301772 336035175 406341323 477380224 732604940 10863400 60488859 851694064 711431903 65349889 875558749 826041236 85098277 581233200 319359197 765468529 755929385 532406437 582769351 852218522 414156837 912836109 670797488 93332556 417530011 432906800 185166791 130535640 567260773 333726235 912245345 243009741 53389043 930293696 516432150 442111997 393281684 927519068 137960484 765142644 386855246 612196980 218994654 482994131 64379792 41964739 102363665 199597885 220715049 327419989 798694428 23747575 518218678 715761222 557072163 154608933 581745529 279098053 36319315 915034454 495350129 437014404 803202868 257128537 515731315 888958096 818506718 649722051 9948548 205082438 467845050 801300041 939475865 72311853 292897603 704605760 188460230 342409157 855928935 655368138 264453395 487786217 273665571 102624961 72554106 204700828 54698814 934744544 761075231 919850773 281434104 879917264 815545029 598039080 635354913 957172806 446363898 104729620 307369819 415481057 450454889 903272427 605270427 629610996 252488214 920841915 755494221 35189216 20767603 366016200 728119788 991828607 22459545 683725995 359005193 418785813 991020665 156372550 808111282 6657473 641378199 77547276 981966785 123180412 157644749 592702372 945624490 250122836 188354130 451680135 708400640 914476141 376061406 269142300 424040613 539621087 467319934 555512920 190405450 59704167 322212212 176080527 445443639 941166528 658453747 944730658 928054352 150547142 461322966 459832328 349305489 536717 87205626 327402749 604603623 554504140 494769537 41441581 297221527 464991680 565770590 314232126 895131377 889665400 297969831 330282090 948784151 337123134 164856656 164052171 102618609 311377373 563686169 5205988 187034691 889304754 766247427 15401996 30449845 273350341 530947166 974697968 519131880 244024170 294076025 401039224 878024916 769598641 939285572 358287062 889376011 695569460 155893128 592790053 262109770 548380544 638231510 22165642 389144164 262037117 859141186 603070867 577843590 443893250 72339938 732714079 878770011 348207207 587337580 265400436 729155526 240487063 536788435 240208435 124853458 127191013 240402627 511245498 874873602 138593391 508085549 147731473 749925568 779190769 13749353 628345830 605010099 807695020 811720080 180689263 140694774 663740647 791499556 298388792 549554380 924692918 392699539 814282088 587587184 713050838 402443410 174058119 618256880 403138082 422324862 874686613 379822057 110712183 335859082 538672709 756793465 750935488 801347440 703103992 990011803 595044716 21309401 572521977 950497128 224048539 959612678 377208258 478727663 752509075 823982945 378184397 675546510 367068241 491697714 105460054 832968533 797499978 703243309 574661107 281558727 357684800 763734430 336695344 679887439 297640062 17266974 629270404 8481745 198698017 828205120 858390779 289894145 267749278 406605134 174849273 143943681 764055583 649142204 298359869 223334955 201335797 421686349 718327045 201810633 129336030 697596469 416368182 378394191 558890537 231970812 711508421 61593568 489621081 661891610 406073258 943344925 904790068 605400842 602667145 84887748 858456397 160417339 240187123 37488115 705153513 829489769 234452887 433343553 217120535 224763328 924226467 778301869 939070338 99232228 916983729 559386423 572014877 298777900 860110778 822291470 214298555 831510246 889425614 410494008 60885381 393575525 245118997 436531090 811103691 953639185 233323586 49664074 733989031 705619399 440048375 104081721 951919026 761480933 261379920 479763214 843800962 853594971 678898926 866434793 279550761 594593642 189064478 748711113 498835366 448522306 101262482 598826153 149580215 794513200 265302444 111249495 639078968 226579874 839734504 246569724 920697414 472285573 482948571 767740127 26123142 198075090 938537917 506413324 501579210 874244608 123887346 7590340 251782693 798696047 379694508 956225402 473770855 214069162 103131291 44565540 242183343 330941973 138281816 714026029 647783504 952388686 719871774 645759606 755188942 152688788 570871646 700625151 335813161 725323008 703419668 91811449 768254131 44624809 115447711 122544624 592737929 5082582 960179681 515056677 920923915 285589635 370479213 785949116 641612951 688812280 515481915 252525602 445993731 497382183 372967341 861780395 787383297 962956846 14820265 861980483 196529112 814031969 477911294 566000573 331890319 436598336 272386278 743645109 681119560 602162618 33582655 973040228 636656670 739590687 575331100 849841386 37360120 136824169 907900904 681234821 951336351 694682111 342475672 198881979 527596254 470467547 727335219 488802466 970530829 322008268 646983029 873474180 349608497 926808940 79612608 199208136 632884070 549604584 881951860 906760408 484700079 852142635 606197681 62370236 337593304 616539581 869015667 131401678 645768943 829985912 422639526 65041620 116307742 500415141 232859799 451774346 499727333 635876726 964770883 286397325 596277563 144676195 230730500 297526752 508076106 836088971 103324390 858523996 631893579 662948970 470798165 869699773 479704202 849623577 56871328 115883428 129275600 684034837 496756681 160859302 791262755 341664013 516938921 321959716 417552725 120358161 994222130 996597696 363338431 861199715 205831682 645616082 270428332 38148011 513040878 326171949 730600040 268701340 527858967 368423262 481681821 594044015 406801355 949821519 469079717 220839067 933906109 762542055 911900923 315082875 366623995 220950491 606066518 865189451 784181649 807620256 152134334 369535288 941376928 295922951 844537697 472738291 988847297 349545044 172520348 616994785 316363285 222545954 843073367 998460140 463691540 618216905 380980867 509287407 983775185 810876277 44854887 368092313 593481483 770149124 381688447 875428951 94392623 318966969 664500363 218253084 919949123 923643877 610925494 861124570 604963778 564439254 181905719 260062805 863358245 325950568 164346816 366192988 114697923 654056217 894439326 622712223 341601918 300625322 302122468 300603590 63786099 328620753 794832347 946374666 479880896 297980292 727044668 613999032 672345623 574696523 514671141 605933170 57761867 876818265 245040578 111678133 98415659 254336114 524542473 280509740 276909788 545182373 878073138 471575276 27774070 184012848 728700053 143993780 899296377 232475453 131425488 15848691 992455705 24208541 693638187 21480923 835516760 868502714 843232612 394978196 399570532 156126450 870963 846682449 37967513 875279766 591638154 397285700 345281235 220252155 129709401 752822998 421447308 507273625 850059160 546909686 260871372 58662440 413226854 920968360 108340367 851464919 440852011 116199749 941363353 941440753 611451818 287709543 927538208 180890663 705141991 11832328 849920446 774878852 125005295 781489104 553888481 629669909 64974428 504682367 299046115 254337575 706290535 984571167 562350959 145010701 146204794 817788750 184582503 587843686 798674567 195756331 844455621 174091953 942494830 557393436 211847181 780054178 958352312 95144986 738809757 26265834 803898525 711589070 826689475 560818902 319371654 576600074 75838761 640846605 496172298 749232930 941131448 306939907 216787438 287394414 876440341 22482787 412712723 871725009 983841763 605267659 322677519 21439714 85695943 172828228 219075860 400386204 371598411 908543596 621960245 232962849 719542832 266214433 758106836 876058502 717229351 993448763 641984019 543943162 651834752 251699161 105732635 610101260 395309080 315847027 903349697 410670743 802196572 141912708 521849636 743119801 834818734 966460886 763840816 561067138 436186178 780714423 1714345 367507598 816700233 521746869 325850467 666433351 286691315 522341622 158582982 226214248 561978214 936115914 279744511 410837676 858750698 927253238 465362163 800359443 128403360 366813304 114353632 985587407 279082012 670633620 281412518 199200967 704851661 285636992 7989231 364473742 412176434 370177553 903077311 682504480 415093136 326304192 286440511 199357806 999591259 662341161 97586509 534049718 572004151 886649759 935593803 595483140 438982274 406358269 721754998 406585837 165040114 665127860 655233554 799118904 606361726 300353587 695953093 312907976 780177810 159069296 910295780 208728242 788922980 893345249 373247049 630729362 496451263 93777858 825330515 118053681 281322317 122497789 107907468 969025601 718385878 200063420 747668175 293208303 725751057 893914066 531047686 832492181 690248453 830371250 544345797 275638507 277853536 472042126 849061169 71225033 241150561 811926302 583628328 854789491 319287854 405804130 467603951 488002559 522457216 606056565 768396415 79792946 843920764 215494561 329790995 281301109 525623164 138776894 114106091 941485193 578839302 925878506 712873303 73813768 218112666 38802729 548576308 810372585 643296819 730685215 957278756 76656933 70464559 194329028 20061165 719806264 75739669 510698231 120240262 24212589 916045184 889592405 704987089 255178327 480757960 981157994 678147111 680608312 899760728 695360669 254894146 171275289 206655438 152416307 349696237 899015412 905237620 611979638 880142426 936056420 646932230 67997752 122877278 987492061 134982056 538964183 199385506 95704004 561464332 948606066 634992369 576785782 501942437 552464326 644496740 521579661 669413362 116767856 37271880 409563044 263610389 205674699 888073022 397945423 520963438 382577599 896738866 132953237 974400204 717231583 662058820 857593585 954285335 403398098 715932518 88087025 85323596 208118790 531659078 586376577 676677287 40017853 96386478 455318212 414007051 845639630 186730789 872603116 70844385 602132234 639125798 264074263 817635635 477247967 548051271 612634184 556375280 362475545 881701821 825750787 596505938 488963434 648166835 126193338 1278375 374709947 812760849 589976190 923769022 22447370 124942767 62649997 981278452 112251765 86904887 153023574 439153806 961662661 928894357 985425284 225764408 362355904 493905637 514981263 498621521 283780173 66035938 611140354 735341789 594208586 671683001 533317409 790673771 727421185 284495750 727885162 438421791 614416711 515075293 111487232 277733718 812948582 622131162 909424240 512119283 467115063 274519001 149850812 584304162 657653450 129495476 769610855 678830284 213305839 722859119 51115114 332113940 877102402 360849652 153359100 384404586 219460333 753768280 160845231 25248601 510142406 755459081 48568538 276614521 350138065 363135716 677944497 729585993 649304785 799934840 376429813 34499819 512745709 160327397 271535601 512617918 66985595 74928491 961024930 229548068 505472949 528224567 62018608 186979616 548073572 745849988 972392626 968698594 299913773 575858562 878903107 605227835 826691560 226776640 142468222 465367283 750851074 437260779 534107077 253521186 648114653 957605078 820761750 964842737 59118727 243339025 953082856 38744507 99641301 5909287 708712520 154997444 688600437 502150055 876510916 970097796 572840915 38339448 25943837 619145414 1921470 536521921 287266399 277976901 471537876 905511104 222180994 233428797 16077183 81295138 717509264 800133081 466946558 733513225 303260204 1365661 686420685 928812490 612425793 977336929 819048736 766114254 228974199 721256409 862804345 766164848 290632771 498271265 307375839 973910216 851645139 761244018 579428398 451579076 631690811 493045764 285599124 540019955 266537744 641400429 94099326 60912103 904903942 181283862 217787301 299822512 872883940 190468073 53307275 650745909 657240530 734657706 393579269 342000966 882912505 476512852 499030897 430031039 504558947 894990757 429674079 977841787 298997360 37062924 895509246 211193245 126116584 929005994 165934657 107463853 207953677 43082151 816859427 585831837 60998988 748073212 56520573 747340807 714716559 662402004 318338761 559634423 204076481 282172573 782292267 333345573 58717195 651606307 20550697 243886303 72774528 385270803 884724070 638838726 570526222 393015161 210462188 867473539 630907183 570246310 559762813 979369872 926167562 528283587 552895907 160296082 424435563 713317195 499837520 838255970 830037962 523601882 10284551 377684378 976325275 399903974 434977865 816058266 190970648 709477309 723048827 688956532 661639747 476018577 606603471 751881324 826654419 781136724 833548497 545329274 633015207 422812532 638861492 257383598 548221922 841390033 75126774 32147570 232811469 935298412 478241670 661744135 833270498 406656016 773656298 237747916 397417291 386201764 820465899 662604548 619236305 318474386 74661911 199673881 319819843 657508922 708714723 785692936 943687927 419968281 225443089 560933126 296622177 919454170 9313522 613375919 567231147 505365631 420240650 671178410 244917355 967982248 120036724 656067000 733423733 380088692 608093043 820337632 936436829 385057726 627444335 486268468 319955923 709059814 658656135 774470867 208422052 45771925 874884813 732875457 312334561 405743243 29198340 861842815 316021523 110686106 247041514 304244893 450665678 254200285 889198261 435780354 145623841 742428950 192655429 227420216 945916518 318263471 134970376 165111411 295101364 149810283 412939164 511769729 902672000 728973275 567227095 21987796 500327204 924262327 522583508 636616420 809877019 647735241 176957123 929964317 642100864 253838456 474240790 720412703 867281914 289489094 211554317 2050990 630752103 628901281 536082230 942946717 236304425 735017444 998844935 493156773 413563678 425130599 85079928 37216092 875256116 818858000 256261568 110348081 657520911 134218697 249801560 225775246 244379220 397875582 732054136 386466569 994895599 721925865 819765793 38831520 301834759 797700092 186298796 741022842 624860289 246721139 290186228 633048786 585614396 506080844 291716901 80209234 592267169 355012351 913828046 478770526 458218214 593198907 252450085 226190746 266254655 302216514 649596698 260980710 876174368 585559989 587586392 290212757 745901082 622325899 557854389 805901606 386318937 788819051 979001548 212434784 724631310 203792772 444239919 272870969 349153327 205905878 550846174 780662062 156887244 80436307 324189685 120906846 458660805 105419211 380749658 114649105 524210696 346632362 677284474 192491323 725817300 572619695 561744316 799990897 878169301 454151024 139207205 300869281 205262652 529343387 852015032 327150608 262672443 809846289 444563135 483637430 99480036 641444606 393771029 951843659 293676797 1352647 419067174 968444315 241949731 284524824 578453833 626124462 633417688 662717151 904837004 61890668 690098386 256995634 522721066 135480941 900617556 466959597 430964614 561389175 108867895 168297543 996950791 788105160 439802670 757490361 658781806 603937097 535927311 712926586 596404476 513040574 468979321 213529855 716886948 449588191 635230250 187253937 764609604 898891282 48981072 317199733 461276564 341559420 944079081 233449073 543435586 36888699 516594986 874830895 501154858 260188973 315348420 320177883 280564989 913239435 11037336 590154735 86596795 763936881 309855982 783921513 114700825 197186736 868252078 411325871 403470186 236199998 179018925 994150625 462716046 7881406 385276209 988488318 780812658 864697361 659536416 54123916 555010143 652350395 802197228 96463548 723547436 839071415 640483286 293091304 36398272 584136577 482672695 149758171 850690800 859048803 91006620 381946185 13238793 994826603 489606191 139665274 875730053 585139869 563123536 425742201 171358100 718423753 748229357 938825843 963343515 252316416 746569923 840330480 389664022 686296442 277158488 10532820 451159230 464016267 819023634 956919305 602544194 991175723 927519191 426329758 26616538 383945397 831845803 63879397 385070101 924870721 249449321 922512296 663105392 46822722 27787803 51277655 565468120 800841200 67451151 337032369 656003866 469166280 28543253 738116181 928378755 671699042 404459580 767076012 689448426 145511383 779817418 782953735 325980572 792617484 874807713 157729645 208062024 976354704 737485104 863850221 309628225 166450461 408067009 6367510 219810804 227537903 888666043 912892733 339414651 730264053 711928628 153928269 765893196 8837822 43054167 425570003 30322873 985966347 233110561 152104323 72398493 878314068 775355748 642857553 62432848 719204026 740462069 738733502 56581037 785737365 86887440 283903747 209977270 894782094 892958922 174761336 591572052 992162019 145076703 664747396 157687883 758352626 535607936 189443197 50243508 796724959 940462033 170773600 199297792 110262445 459792705 365572786 838102006 404014656 223836739 373592981 250531280 630493833 548748275 610470885 890685897 649499471 374166592 982657921 917639916 29702308 74610685 252674837 621347526 913725538 440830184 256299680 582727488 676776643 835833871 266343137 201265358 143382743 406959558 978278872 794531094 954106388 115518560 577516627 688013666 879168221 233139376 751128121 973911935 104760455 850698311 989544127 354762653 173592698 924549325 798033693 457729313 331372552 155363195 774692295 54069683 641232936 613336061 860222060 472620667 684794266 794644562 63501971 667930877 30587585 570316630 539082159 135767402 468525537 823130540 2462642 675269277 880936662 287112830 766905959 742701095 452266521 266291713 950657503 61277211 754245442 346318636 494392476 619262349 714580998 910287789 784852288 789818044 560443136 216809536 396993688 372810294 355041930 960260207 863106219 436622270 407088744 671071618 526230213 471859727 193410932 352644719 198948699 402375036 751870478 432182949 618000749 222497675 162680355 522523124 222956048 515876462 876138335 261030254 299963239 69505321 971313586 83793123 838618559 463252110 270513851 194106759 775070014 401065025 614787752 456983400 897363403 779023832 882647865 163950715 364332675 541469515 962204032 430093855 154212365 215887478 269601833 741200838 846120451 3878599 271096578 557001443 759453023 490442887 812361686 259587426 847109261 798068791 21128099 879444211 219666983 525865559 223792324 832409274 853644933 814016857 54747710 991947633 528352608 245929351 819818785 749025448 800147251 823461805 199188724 786131501 175958239 177163642 676213987 270680787 342764743 431205669 234827195 485261138 503011652 381427226 289925698 384441836 27292316 700222453 234268072 68653857 665661923 515512904 455830760 450294391 795148249 827611010 365617654 924528912 793160851 498970076 777449045 802064589 135210463 396835430 292320324 315272057 741782601 965089778 911550291 65648425 942770379 810458075 591459853 632373952 401883323 912887900 747688667 652985498 587153125 804706484 520693471 809484345 956812493 8578959 232022669 48193198 179253757 994048587 128747807 117944845 683156934 746131636 321802878 252088789 715543822 812778114 838749071 357093908 801144805 226740776 792668705 208726037 591051076 826463129 455957893 144579593 547953018 948803108 798395936 925260403 344347002 684999392 600624932 40799332 100315993 791621313 356104085 894673544 431303103 125576391 180936643 235251965 410547873 252949180 105390793 959288039 649993664 811053455 555617617 311704051 615198403 519303565 94591683 77651266 399222285 358107674 829611578 114520013 510415161 526177831 196285078 284783817 565573393 144679952 754156430 573670718 72734290 892498794 898764482 631766172 226074619 361525735 166772015 451146540 342278444 564510038 827265198 286888295 664098529 368459852 648455651 685927555 677815227 829459235 183909137 870806847 458151363 449937611 910839623 916332121 88764892 595331020 721120834 894160886 745944739 483333927 709171876 422346319 971131072 366890960 145843307 442207449 143511748 615633118 601712965 934316774 713700 825219007 105456125 725708440 543262741 380631202 267745513 943432186 624570091 821932088 469148162 896153069 222630694 514925025 816626205 59679921 325956899 246973971 310230 851078498 520223605 904271421 176555517 260771341 599520727 388130659 924991845 123425409 735208435 383557798 375370585 163610205 690577638 725482882 484495262 31164151 297769240 701000888 321919421 548481273 298454165 559382862 475622046 918962695 520580191 540571403 993595584 89019495 962077516 301729409 722283722 544713081 828911967 113244854 593269055 148573808 149676318 224400498 24381332 663008772 408626037 522183554 197989258 136877800 754193355 304880036 418338321 779606817 971996969 278629838 434420313 145158465 815122963 862015538 217234461 603733689 742779466 285020192 682415936 984583836 671740566 225768869 700103464 877984420 869580191 667307216 37657324 4146430 576546774 996466904 979307455 736928018 190366906 683769203 387215774 831807019 875609221 370348558 194128128 88425336 161175696 456883585 720032949 852278068 541801503 662800308 114999800 6738856 149785386 786288399 540738983 697479851 849154222 473542697 7708742 494110919 739182807 182588240 336273815 406863575 47663341 861185093 683398169 516637115 568543372 460729180 411709886 147455458 736409080 487482408 554965334 367519189 208857822 51694426 565404651 651165398 542278988 374770993 389741232 44034290 805711248 716547369 825705236 620408041 844579570 952057391 603070186 79110824 681491565 172976378 338563747 706053643 861609869 421608082 793252653 758174225 74593112 320953034 796658338 772800650 428037242 376084567 272496086 859803727 208108467 253370062 432245519 696182388 406591673 169992450 977477282 723653559 55004705 269733762 824079330 405495231 991445002 913982719 642380351 722478189 578525808 547803192 819718245 799099978 669071360 953956425 10463914 783849604 430827851 417501631 494027038 848560926 821093703 196871411 870207340 168935370 126169720 883206140 815862140 906728571 838224438 654508048 789929787 792343313 796205785 533366807 57128829 680712852 64729712 937029337 910746958 958286716 645738013 977566965 622010597 942935719 237939510 196160547 636298388 359612065 856055110 401004998 345701573 370972241 57083633 684034084 71058981 187505533 742427513 308627489 307583798 682220362 788379090 962602886 803582903 236980483 788354739 52668019 358878447 618495965 71864715 93583784 683597293 607250269 216299204 499982116 984152662 323878962 393303887 750763535 439128446 707081992 54798755 827098677 535052498 834433972 105464745 486160307 51063217 561969496 798776262 401896939 533480268 163556324 932093649 41606479 276005151 532666089 650596624 821373919 863171365 941674116 367899966 769703584 27943987 357052927 773594034 128526865 263477172 453189727 510588 150280129 469129306 837413911 902474409 454188357 160811840 866851399 941643462 543294695 462560933 411263510 81237905 376879272 376137997 100641393 453508219 233934851 487918484 956860094 107288353 468615590 170422249 178991368 710148079 475973789 919825826 576572978 400564958 566805731 177888011 161612595 848126404 754564700 338762662 156225022 935842083 920428505 39562837 778197899 190645569 860016128 129270749 348228783 493601298 695216301 567119834 50843316 858090253 238022675 804007703 343369678 604099170 590677088 832498113 472271720 99510936 627580780 526645058 136360876 327167919 34639968 571435133 851968287 180876016 348095857 990171381 88063141 978040736 111639625 501558062 640502151 611397414 699292615 347136076 352253170 258877519 448890005 521339209 69101882 114700258 86178941 469907652 209221182 252927355 111513834 901619051 547063897 841714351 285998076 221499154 545857541 959029645 746353577 23534866 628050633 373857985 407830107 933207633 686841661 881089708 218944624 45481673 674608305 871379596 431441402 208949689 406061843 854428279 770966341 994262247 644679583 189345716 774868517 349515656 973203563 260196255 799636527 572267905 160140700 982168719 610137505 924887537 938911965 163239259 182094393 676118906 864141261 131171843 542223601 404701629 285784623 337053618 714755745 455023248 807113186 567254294 895486264 362146094 926286720 425696753 322396329 631929647 728880036 161564664 577100228 535819478 552319055 646329117 549108707 100591652 761171041 616236975 59725945 30833381 178243558 159281164 665808259 883983199 644319413 546712083 331703431 819235840 131688951 663196212 136908232 780124881 919461042 300529448 465859201 464516075 218331909 505463706 531443772 359521487 467038057 766389227 659712364 484865962 71991478 974498734 514651238 417253344 880558212 346907120 716417712 922054633 647087607 857969564 453126328 653907364 38830418 198070379 402634873 766761875 640776206 600567981 81414245 585228137 773853215 696955559 983308366 523064860 600512322 459264937 142075911 61952468 180799410 706712947 489350450 796428646 801029401 480681167 91373968 586353185 605272920 145793962 963416918 432772585 280959317 740238432 345957936 865787779 461249829 102163718 960987784 835584354 465620436 779085517 250646931 471289065 395478045 323076439 860629365 267292936 242176090 753033513 261347862 510122641 686230892 141593668 17546546 972360368 203769524 858755983 776934384 140522106 124541614 992103842 819680162 971476230 105630200 800641262 541960089 907904648 986698020 545867956 691858415 521728970 683476028 706237586 14249077 545352784 504564350 981370075 854531210 743085732 150603543 821363329 667566821 734414244 735238835 797883748 935026763 192464784 430546998 148000955 580364809 145299708 928680446 914746075 415096360 492442666 169120495 787573637 365728599 729294906 731308386 847028544 616036666 998907130 997803145 518575167 404386598 650138080 234980119 467365594 526214009 517854231 800911820 576586832 270671151 805864720 145746443 68345087 856906713 322970597 235929662 768757210 117141406 26245142 246325989 81322552 892420299 174888015 457632272 143267477 749517070 197208992 118325029 398452063 88773161 891215033 141024067 617129056 182024629 779546746 426737267 199965888 58081675 203097078 51422437 488003632 255946948 585529313 414763434 94899067 557896573 783822287 655835662 609010673 136890086 105841297 59301014 59504644 471943086 834430789 679220742 700000141 179328802 333043933 444811831 373487923 304699892 627281609 877046544 527259595 591151007 839767634 757030366 289981330 227588180 639681418 224676448 901097538 539166720 426906527 925243986 873284982 204552881 81687375 783765342 668432507 509924095 258372170 234299080 132782839 233679962 98657750 753213419 756522734 707727220 373123175 607972215 35517721 263653650 138362429 100580119 159964079 1156037 631687252 539342744 303194648 355443754 766393016 565795405 755432662 154522201 246217756 137206314 444572818 104246449 192676322 551165501 470762376 227522865 590781440 34075557 101427558 895013829 988644399 98576570 365059891 360248531 585386013 543526000 436024105 520355422 618075327 446313571 142399984 718539247 345316262 538628646 134401329 288922104 466413653 712967483 280545047 574431092 45855720 115406098 376187272 322521151 572355326 93050664 576361140 888863506 963566928 615496785 487073764 185436530 854819922 609742190 468231420 688713272 738229987 595842765 617420264 313348223 601626021 402919521 157672659 687662787 149908169 391899610 471338929 546955286 665473431 335993751 989387139 942484896 763991231 476941968 623419000 470570336 575132098 25264035 731286085 486169655 435277537 83938983 264010053 305710227 457481999 922044925 100723850 802245529 105344931 684863942 573297197 912478512 150614153 439471629 125186715 646833022 301627058 389699709 507213552 307387871 113711973 341276426 320402829 90991297 111042581 680420486 201698268 643543137 246469402 352146480 25458569 941421995 108156129 280720019 767198558 878790032 504501964 887225305 680684019 98866822 951878713 834357604 390656540 914099497 485521895 424760445 141676800 854812904 365902298 501251367 863523804 447637122 252482492 519130283 96285096 957889804 141365767 45304807 490798799 820702160 737179375 156680741 356023200 431718534 460898188 881996364 541055223 378325294 319376199 75339348 654001179 425982128 970813933 436387194 347096126 452609743 590610037 847943345 305751036 414966190 785626375 919242786 961854231 407069334 256271150 526940663 858626458 69284551 98958597 225493905 581405215 475678135 658244831 36164404 945264071 511134158 365191353 843094671 766440617 633006182 664463010 105546749 284913124 994761527 744022458 605014670 674278308 577260088 899925166 890757333 790264458 665710993 126580082 943128168 4803955 290518664 140330331 182815200 454655639 671916115 239830952 313771044 119143681 980741977 270427639 786637715 355090366 398563102 213214233 114550760 234613274 368983215 989160995 354990855 192341588 441657701 383042549 979108446 574290893 616248257 24186033 513472543 603642304 460073334 446200542 654418314 182483750 511517120 428189197 375128056 387108000 405085834 766844368 248340585 671994075 313541736 428303473 376715198 43408562 222066303 802528545 660997473 465475442 200891397 471287142 338015481 623427040 386102618 590432813 510551426 497641038 498861953 701266818 36924183 799626825 430319776 106121212 140156132 638335267 850031163 239298521 996819663 315483569 855079876 95412286 502274328 289876683 66915686 644191189 637148592 797715829 201189868 946211642 647830300 374342164 735433757 721966368 223280123 840168997 551175647 16718194 311258680 919655620 339367307 27249247 603752827 545064441 993660783 99335268 561000453 782824425 472109869 914502996 306265255 938835989 586056531 96511846 415428084 993046958 736253706 823843282 404647821 984801147 403673688 105466001 463476049 239843913 519776442 341264455 764488204 683990361 491429427 875307023 25270775 821884636 773879105 767922067 174608146 283456796 704916869 464029640 239126201 252383018 766544776 513689054 100939763 188773838 736096549 722644424 819840443 199982988 592823997 997230150 502735971 330779813 212991782 774931085 95635945 692252661 738813041 24012874 746909249 976293965 279141485 616283888 858823984 313948589 114197698 732350770 650611072 513654550 122751637 96723617 162711074 575212487 48703279 293302508 793748937 819550585 187796388 839458060 115218206 219415799 191997283 849508408 409807966 771542603 306280655 482197769 917583521 790783796 393459982 203405700 230307866 936590283 130664667 170037539 700546980 548957396 796102082 107778767 170584257 653671540 817199705 913373681 385685668 341319045 149121575 697130777 437688751 462355229 736613844 740773171 265080136 899806307 339485260 644863672 474900359 58080243 439411599 189105434 851735727 854351119 633201345 781595359 69298747 152053403 609253281 749820917 842897778 583511376 8612463 656896961 319173691 809057018 117195137 145974721 842757227 981435691 344730060 627544170 422026975 136008045 919450067 95288332 566399510 187507806 594811622 415920128 465737770 602326311 75538672 792577139 874880909 171058304 431229439 622471135 587595622 532865484 647147050 612757309 702746884 946027354 147588922 795048742 300048046 382715066 388109057 642398021 914798051 14435260 721436891 320437043 127418754 487824183 53109893 1269433 1819690 501983973 974553902 257099403 551823945 492142693 777990800 348444862 814028432 116684331 918434793 894983513 912425188 894677580 993834440 28664198 656031541 424951873 594835980 190060218 928758149 699234295 188950638 149935397 464200508 733627017 939564396 416849383 233325271 268724934 319537528 646638133 641817784 858653452 485453981 977044881 572637259 857703258 716865248 659362703 857637125 677230695 61015556 931618513 399976101 494517504 412259997 236237919 495134684 288587529 85410549 93328549 588963617 883344535 308590337 904892205 39055945 868537891 3057875 931353707 236516742 966549799 397825530 616990509 397374323 359688111 751745451 40583370 667962597 426366092 990454981 924712011 329041208 277172170 484819223 718289346 129329573 366902226 293202297 397703825 877066736 514940285 885583521 821819138 298232868 300436233 692353902 506121906 797272837 153541088 572518689 17014389 861591364 217296592 693160892 199440215 251607842 985796051 311564287 479201397 421005483 379324576 753183498 70469433 916156157 483710265 144410339 251125393 410536546 278630749 449912009 753796667 71537811 201482106 823156817 832921217 733936323 307746969 88912763 129036260 57233000 63555026 550382055 645146020 715179093 834388190 619437812 328046395 874942418 74997642 963666398 647218129 257303627 697454485 242028789 213281007 968410518 522103085 72094512 125994706 769290929 703079242 549155045 147869288 342253362 869914885 807246283 496663453 754890087 608133142 817103043 576897024 180525849 989218394 925094393 649750106 652070733 193678974 804239895 751658671 112034499 726811394 146583815 530526970 583502119 130056504 329790159 701750385 979963884 362839175 904885968 197686679 60979950 674763021 992378150 122493065 336693016 353917728 883172002 934542747 436061919 907981715 181213912 31818577 468343804 607720511 184439224 195648565 430909765 907888326 400130342 741274333 495001744 175013893 680758586 572917631 73143366 71368568 359838286 712650543 468688839 739876319 604915448 46421945 253334957 422884648 157179976 647543849 234685809 289343304 361094553 373380657 393571961 729044421 730339952 88767492 306555432 383414267 993768846 268665633 394544324 616832144 378769967 895872460 425488993 94607270 786145134 464389557 628810898 920126766 130433909 492501088 423568245 364616554 997602281 957222714 218819364 524328795 219886116 174918186 263221337 314088681 843137203 128326097 936439361 650006464 435101392 717102791 757069946 727694826 776227965 207108477 220277474 743986525 719999566 600655980 532538686 202430262 690328941 175451026 132614641 411088663 271165955 109301763 618904648 173819222 639482951 76936464 555955754 408114382 101939549 903190416 617223145 26008666 237410600 600247118 101269549 700836590 758996040 479292450 966942905 287297482 990651823 693660720 158912705 67998982 241593079 343602578 420523218 480884011 904594794 621024658 650700376 678881635 544584959 516796291 296424146 951803605 429647873 226572091 536632119 800536743 974222616 546419124 632950515 936677715 769361675 932629 348241749 517785628 495282960 977072949 359533152 715063456 586766366 355882940 253865134 508401115 602355416 159212458 428027382 60487422 576781900 451762987 642326841 568872370 789114185 232296407 990025545 449396757 876058016 292662286 566549585 130617862 41966023 847209768 831017686 594819253 922816001 860021778 833055004 209796508 404249651 616924563 559245403 948695849 686655901 215646099 672173238 972975110 412284459 348831557 734227292 618902488 177068289 348380304 702393186 945362735 504892753 329617756 700435797 536463467 481283841 714740339 774171661 769239020 727553193 158408719 71593371 567720401 643883041 852661987 996844497 130028713 422700756 703344954 285412684 692384672 927870400 475426741 72536604 857165504 294908923 91794516 952475763 276767970 144124954 195735128 43834183 841102574 110804728 684258220 305709728 849090050 908916941 491287298 199895958 699980413 926396172 197595810 245674268 50992593 280729408 507544145 421331494 662431531 753568328 949313998 468663219 924252076 975565429 222471796 596464958 374730641 678437857 463924795 538468163 607629003 118917237 205738523 750844291 194981290 660528124 410535690 263089021 177004246 512759476 911551173 238866207 67881187 511593301 355545141 825150980 630379822 237430057 135185293 865503185 304888299 534332554 559690325 190833050 853028492 669295979 654258585 376513791 538720417 648133139 944871703 267671791 425421084 175806676 377439832 603799071 63016465 196368949 270383832 42682915 691245169 519872527 585739177 483141345 113461081 896225957 217407653 963927611 473459765 853565981 653784688 186084408 440058447 235455616 776808157 20414573 732160647 252283746 75739939 382388796 327362221 474305674 145806800 796717595 169275784 247677480 197090690 3842836 431449986 64529054 370915308 939170701 663014424 149504179 652428679 118823760 796823091 501590028 384802749 702133446 626576507 959166676 953969472 471502987 741575438 451138706 411848929 514893216 940292092 638713041 21292486 238759297 597469222 659363530 553857803 918344606 859744077 955183903 566045150 485657856 906836373 373371061 431593626 827917353 287318721 540522021 599153031 666885110 582856031 331368915 156920704 800171301 490100045 449999598 912232863 513147711 681182705 525140786 704182479 31532612 617641859 691039587 963514624 490947733 619614707 39157889 588003788 699390679 459550232 89179969 535206211 903289588 217867672 898410118 743217632 194542097 220064550 156753558 35705443 191316513 368797948 565933632 479489014 34634153 925737098 900478891 627137056 789200192 54899026 434536869 692437710 385647180 220488055 508284197 661649252 511379332 764643041 664389158 776876114 2125950 553864932 199288362 997884636 712553950 655011749 459126598 25673119 180743994 51540570 634674150 332402903 548006318 997124982 603203940 751750361 543013090 540242685 14683560 435386664 584344201 624254717 647301889 803152571 752918112 77016739 93270209 993031823 378059589 775138700 530452883 79655367 943020678 998703709 865751954 66321564 498946995 960883920 484297958 732968812 235496970 70662673 598871013 850024830 841093677 844863345 666528904 466902524 503278835 304540911 361003267 765593802 473012724 828068475 928212912 376986652 18652808 716169654 290693364 79154826 633602048 928452991 708553101 312051867 836152647 227222433 915677136 356024979 586457751 769507218 131138508 328305717 447573530 31973894 31143050 547140564 57467790 62649626 900664046 57534036 868616937 458169100 320361231 231558373 123420245 325244230 127131784 611767869 198812041 872088540 510970336 720552785 465065706 605591534 250645615 775826084 778254815 756065819 354334107 388204807 446999496 891986219 300582581 947955403 73280690 115138554 328156797 382324838 622956406 314592064 217158051 572391720 524881309 383479989 10421246 467638225 572650951 680547007 20670279 114363404 490185817 972917565 689530629 244874599 136010958 144324399 752768866 50482784 107244324 460661370 305807960 241165131 301658038 238717936 828031733 302875703 192791306 723608996 256097072 103855939 756117203 421903179 695272613 197719327 628815281 837563809 872779241 997555096 119666727 81630281 293146462 528275293 215271583 625005831 695567779 59403228 672945539 732141975 567748806 41935562 515567071 857152919 868169042 43679165 43323144 74302512 29176574 763786857 607078004 657682816 36327253 932049880 447561633 647555277 767401014 761382628 406027964 650574398 117086611 874354602 376777468 298596522 845660212 189674128 743229504 375491285 544568661 782137310 891419143 115676926 839645888 119773856 290292597 680818472 669035185 809906596 831646231 338166354 28249302 302505493 697713435 143233606 95045278 602061319 945211761 901688541 14420697 102226536 866992827 535251322 416442328 254101508 343721444 139265845 27290367 943015315 767958244 873723121 179429450 553343408 633297716 923316530 996096587 297166210 569327252 487319000 631298885 59275066 928566436 394783036 657474537 993658163 68505617 214684878 270245254 275417123 535235360 541395825 543894581 801573340 193909872 349994505 252280335 756630666 449675146 330261683 795608337 14252885 203680644 192238431 34477527 295566249 754610418 291202352 330028061 509711801 817397280 186851689 747848926 109560073 230397209 871400303 833748494 47717235 402878769 781438889 549874157 291876089 701658948 903531567 342097605 469092455 585341253 407862536 574964463 476519251 751331585 855329365 720123499 963287668 900775572 132575999 655573035 487907717 722724340 251647791 92664881 221352519 534738100 623788236 500510083 673955509 129975469 67962794 888313470 144579094 23175524 957970018 330372665 224933156 92003397 967833712 592823917 540479289 192719799 893617636 171487574 548357046 387996699 848587706 230594481 713473832 66401522 569764397 733716758 352906181 523082693 15346297 950572905 797327138 961325197 501714116 13005094 765019079 141978646 228970707 858572978 683602080 730532706 679292420 621612885 312914800 586594362 143940653 994573929 813732605 533412934 566008369 131903889 300166543 100317020 647101399 78427275 448531480 489755699 745143954 484749743 830262378 416933930 720844126 914324635 483772319 602300034 903618819 902611660 222467269 561999824 919687421 327918441 476962135 285847826 199688946 487915087 855501674 561521329 419218115 207856624 16209020 84432197 685769944 837111159 380039758 982382959 707912090 819262070 6518070 57317692 50092785 435615841 123104763 988833438 127294115 996530509 757306046 397763478 720135439 150613335 589152930 357890847 527980258 11203336 412530840 738329883 889294844 558649675 453238567 758748921 451288258 61937441 338484298 720094739 633386995 826391834 975965379 375865182 820936579 598458961 956190248 897058095 377687150 317240422 623672916 487202979 105951053 637565337 277637774 292255408 531535603 46999732 483509720 850005493 773185224 786309610 568998339 226418528 301753782 372265624 153194641 733746580 742497147 347178766 902518487 789173574 90844719 127605227 226481522 712191061 331769682 355644210 380360847 105866178 993428085 946562600 348118697 852916191 939181362 589870724 736662536 160628477 624538665 157974671 461534453 822927213 795032142 100909665 176993092 742952229 573718893 916801787 505512377 342164130 39662683 580435771 349339096 433047439 3049221 864351539 791308766 223849639 498030534 807475184 382272418 253861178 62767071 228139112 663144557 654732824 644088942 549050572 253091390 7412855 360708373 36531620 910912385 211483374 591828358 813255000 25834430 887899278 723036106 189918406 346218336 454970253 183589612 365730257 73975527 608117088 944426936 145936418 697748145 688887417 983692706 302522331 87240308 275255293 409117157 294928491 951235200 448177252 111218112 200237286 322321592 607096694 193198543 681952981 438112584 621774719 495223954 829424183 123918935 505294855 738680006 998893076 831019067 654283065 430535929 103031903 550691492 194757851 41039324 479603353 248546176 269415707 783368358 491261687 707533365 855500730 183980539 497196037 646843415 333753016 962002383 657897676 672030485 52466663 894642294 125355703 539526596 982696026 65992458 230787044 867257759 281169176 196456389 762018067 984777662 891883196 533997727 676272571 457325294 248188136 146937595 933788441 374355609 468120736 568955506 871748193 228698709 712903640 36277055 141383014 266750449 82407043 194346454 764517505 266204776 95064042 488382273 825663843 935378949 114171517 218983423 559168115 583538667 939148503 284077838 407810972 905796883 133678529 88757265 358623524 193816923 41118356 918113554 864513352 708718286 832151348 531413822 525207715 799324644 578826566 870982295 206765171 362245008 910486885 376397672 386436207 973794607 378906344 90187257 641300559 105577035 605418162 245646592 840870380 343609108 815293201 507742488 119712619 477633051 336026060 956675675 892144000 430723269 622020830 349155482 250971062 824018281 169955733 544009528 533564429 706170887 639237577 637971793 469514630 627034994 192095371 457012224 70247954 146517147 405877014 234971561 130076230 314486567 809404643 313176784 920474764 154995513 879144994 777818695 624125391 615922885 100001834 262144682 830446271 971720353 565259365 470350111 782618028 644190909 917597023 700583236 858935682 672299863 524155781 271767517 755138348 89472927 861735586 608162133 11965938 678998573 873453743 311810331 235693887 987035053 5144460 364326701 227642452 999012656 285582588 959022301 967118111 787662368 71336486 167504547 607344789 778261503 794283389 693383491 993879512 929089625 86033140 701311951 138902966 600918151 710584356 627931 22774292 333806691 142942904 949433893 972810906 541744165 299443743 464629136 972707792 928130220 746021661 63259721 896215953 514051777 947468065 322675884 619124421 545444102 936792605 26690126 919667766 502199433 476391619 404583515 298207021 525446836 31227720 875268806 107321549 718114570 75924383 986784866 962150818 531441257 594052804 625060891 537081513 771955735 916206969 187418166 510113127 299904314 607850472 370516740 865649797 748432259 865032623 577158701 373205735 607366688 29259719 496880120 962787460 591779372 993827987 96341224 20360514 578865915 260908129 388110463 610467725 849974562 126128714 307325911 670839853 581531358 221690000 977424627 22206732 897150485 443600527 74127643 873783508 568653302 566428101 93096589 600019798 430786567 233599622 271289752 310270654 278873304 697065575 509051586 655459516 35351154 257945763 202554207 513002072 191230911 345240178 881734678 966507003 9075427 695781576 890905006 897516685 690891534 496471033 599317246 508840035 899640918 22776553 629672856 243947028 359914325 480128894 684103614 704038857 999200999 483239705 274797850 946443146 148710937 119934612 992782403 703762486 120138969 978285911 887208086 35205770 765524656 535255328 191623994 919401937 915727075 858154475 583918656 756702164 833258272 309288951 147171139 203166507 968343777 196736467 621776462 381741266 483814735 110270863 462017765 593436278 577168430 262163363 718856970 114981129 85651931 571898576 898106083 384558520 144117061 337352504 910281723 90805237 705409125 615486201 752979384 621941332 923952224 110800657 680610997 918436801 64033415 509132275 288977713 351857842 187236583 882128563 706396241 408986085 186671111 953528166 535544980 811406887 216687711 588238445 691350630 476997508 699443415 630778496 358585105 926961477 402841259 915999975 856222410 373184828 418860882 879282711 393671860 954798307 555522571 814876243 289554004 732834810 849833880 386389935 732041568 358638296 953838521 632574087 308316309 468596436 352298799 403940467 411276519 22555440 698746297 201791 478494825 801982640 721863616 326289822 18044085 87641306 417858022 208888357 969176686 776602563 15465475 236296448 269099671 404220075 476058916 816661974 210966291 979717643 480282252 725108807 408333805 137687041 643151638 345731766 821294251 759199294 905491328 695660219 166374401 105160072 633384334 705352404 354723786 234971665 519148350 661716312 469897381 595852710 660234750 215793057 758587798 901163239 732067628 69975809 688601524 864895359 37530352 631977857 512429537 307272204 57011789 304883110 766060874 618231323 133355249 378993860 988002077 250899138 487021812 374117649 167534405 420813455 973251064 455005987 312870023 855793707 415533625 704919938 948265356 44019732 658324361 105651186 32664637 866569121 644342254 401388444 188431016 909143145 764332177 738249660 762334183 262334233 546232232 210667130 506758163 602130418 540269234 534789322 525135848 103244925 403737032 224055326 706161532 187831586 435808049 246808774 444209057 395766714 831658803 820504017 725013733 302715362 535974496 709569437 175338496 899871941 251575747 342249417 847354916 615159197 644269509 573298784 225373477 858202467 897737997 609736060 99384970 722280730 799938318 427667412 329257584 706415600 4948165 200639791 126635230 485820554 735804384 322885246 863491062 726672159 624178447 491931973 19995873 352603351 628466041 176891031 290503583 2525246 656524785 561767692 972213556 780107285 371400931 984185385 959650020 289498992 896837695 309441192 165720622 550658159 608988983 703687390 8606709 384638371 473896233 794525189 741870142 73995077 88527338 240395076 949967003 335684141 37286527 993519097 387677653 715719200 527646147 821482816 786461555 582812201 985994333 521418910 266358624 533194603 163652582 941976413 963210795 622618738 118937261 937692591 217876460 870538417 982318100 583559693 293705939 112814313 893576467 554985409 346181895 291961801 849189270 588502654 68126466 856777700 117931858 129622771 782975715 851422600 735994123 784691783 964818522 911134310 203566702 697382609 229680009 152968780 252061421 167671290 679907047 978342054 654935574 732775098 939523625 642572681 916502851 514811934 147001415 363347247 142240888 934534464 504322483 650934730 817975943 862601978 241492081 801990900 19395669 592349289 182085416 324513367 877020876 243949970 325526494 263502154 949012573 28193502 749464186 359512357 231441418 366827708 244548027 21645084 59055013 140386581 404193697 945422216 534566068 244730414 764291135 122769766 646268228 874995867 356838441 70226496 121622544 289662237 119043048 856559856 815239318 618993971 501695002 428369118 855548747 727440401 438994110 120621999 672762664 827101783 197755982 464788271 40944619 601303508 291147079 863013115 906848963 634018592 134307376 580865963 436485742 975851309 160478777 796335179 278633154 531172284 613462673 11769745 805945710 866747575 180801575 899698074 141928592 687739443 397063412 791563044 854232072 853087998 894395863 400087679 67153450 610463006 74740464 173958239 137987278 253766506 663734989 887688208 824212978 982244855 439478715 233127459 774964780 844588686 162615042 157113686 939305559 457257100 476304185 21455903 240079743 333606735 724403022 804109769 94207646 23602016 45682950 698240743 297025767 238112672 200177315 817414941 146035306 811469338 249674511 258845009 562939892 53343351 50292757 922482696 325835457 237021562 363845089 708035317 337966262 920660202 263476547 217625035 146870996 594644197 786817105 826603395 437311252 615257729 496688103 364849694 610358066 549079328 494693508 564997925 187655835 926597795 528865049 578745127 341719556 285956242 377245564 910842569 663150509 449547035 708974870 49312263 767176023 273469386 594588346 202238965 924314430 972075455 614545168 44905396 254811215 36037722 315782865 958790268 109000822 872277619 697704844 960626835 223296354 168099287 669884676 996834418 573348656 549942944 549156534 388887755 20691641 330795620 637242360 610694896 698063750 273961230 805285430 461275845 963574279 106375754 261217626 997327672 902474465 675969939 565283139 569242255 391788843 621183557 615170889 187732246 168503939 560029186 246012846 356457148 83824542 164923994 533410569 724380839 285105285 946692486 433634748 146672270 87588188 633277082 374885057 235368048 531974298 46446805 387696372 865710143 994885531 332322522 928430167 61302010 397219236 971884150 545084721 886849376 562345048 660865624 418152372 507213981 721661916 103485224 621635954 46354043 406672592 761549583 836388921 600616625 146387730 989786918 112411464 618103574 584204793 158827841 567157862 829673330 915095262 642300619 86419557 228915468 173086058 228131632 730479982 92934419 582574786 763091355 677603783 667788638 953403342 406329102 137598115 900703306 156030736 743081166 45297135 482096607 886863754 982113783 65764643 158573414 253333402 597966992 615790987 510717808 175100980 63704872 761040409 424855486 150101415 439002672 511112860 161408896 893209748 787347932 87403677 235425024 912012437 84267088 606993604 323171902 759416569 158419890 831872664 671451992 591989351 790488131 174399820 903757748 190070663 274859566 31947495 134452914 229251564 783871835 296696217 723369235 730724720 52511153 559627103 537929125 629535302 595177118 353902732 738086537 772887054 840412016 497441733 869805454 534328845 609588972 945088975 394747882 679237 943025540 161849323 471071802 293760002 476096664 645397495 287091785 89049788 91675164 242298030 160803085 700029703 653861731 916470603 247535664 387868723 90068125 737740326 358171060 118557185 390292795 804493925 917591962 107442174 506204216 384913310 823572523 48867759 202326405 148174200 366337842 323793687 86694724 772324029 767168341 663052382 937384412 984255848 889207651 756138927 557701938 664225235 189571238 22870950 239246005 124169645 533358078 525830090 495376673 895641119 40433509 969664980 230356302 160518017 575702964 581112287 333284340 236491729 116351336 376409714 369426751 213060643 836254511 432666271 381103756 563352942 199180236 532696297 192869332 970685403 375875381 719663352 659450534 242049172 801238286 111756041 529855861 36720782 647539895 942916854 448107147 521562572 518802573 977336232 358562578 397610250 863743277 575368319 838817900 29203067 205861621 174492584 274555404 654817501 137772461 227864550 698673960 586956022 484015890 595891826 826163315 863417842 900109124 664290004 768023403 535521295 416270861 305641513 73092663 449289036 178946445 265258024 359256776 34179494 441249153 142809258 270725249 735328573 792602660 474600883 716581497 596600765 617918013 329693637 90249553 590586399 411045443 229677292 420251073 386354247 973391875 342305602 279059404 856576337 480312338 261812906 148392950 366155539 271408445 574444660 565433273 164074633 494972156 737924941 631098259 894329496 312182799 837406368 743328260 290348817 983335498 738399040 27587822 229370123 855225828 303420015 993245781 356919256 284222234 408673069 394418229 869382793 722895623 596548101 583469441 881765553 111466506 400313285 257990076 935287527 472017873 77141635 346689240 416875666 605405155 993682700 84534223 74293242 623699854 283798389 339551380 779016351 771714629 301723561 987641652 636742479 836457389 279869631 758122039 705118781 24963670 757191885 58723582 361839084 495164295 920592745 508812255 468990073 108043064 429056691 935268613 911906847 274655971 101948181 721341263 253768484 547684787 201818797 113851133 717903492 316762199 379146502 362902238 172489549 583095189 276710371 10872029 114663302 973529428 230612115 602427832 634617835 478018150 606533063 703708086 131568819 84065593 505198536 990721851 749022348 162202788 655161330 162525398 404326876 784992081 809349991 274722462 966381013 288934305 389710154 542024142 236769708 629536950 802260929 702591023 966868750 492083013 290194986 952987011 372458174 771801340 175839663 495540913 729224291 839485024 618937662 859795864 623277736 550485201 533593385 752624234 341353258 675681970 283834597 361934610 466011593 938077894 741875595 670988495 602459689 517302711 332036044 141861964 492276404 771466222 837623537 120459526 113189207 686928066 199131360 989686204 883981829 884534126 297107328 817006546 765819752 11850237 92173615 984466953 286869764 24211388 250102578 550592821 640215828 352131740 602979534 37326892 203639891 75028599 236257137 878404767 243451955 405115347 880798974 106663519 778183104 826740343 949109522 340736219 239350831 17606226 938841055 477646356 817422790 787662944 690561793 375299983 748166849 59952803 785966163 213311280 994509318 970235648 915715549 336702575 958894826 51917024 918375440 5990722 367284842 573508965 846955133 107848515 126096664 210432372 358474939 314467486 775787454 329671792 113205293 118107323 544527370 798770900 214447004 978014902 682417742 972646492 568601071 935640681 782231572 730186085 885740019 935031842 780077368 412757192 904952389 840074400 158626680 768858876 224993507 606914103 685850505 227261187 141625925 647772977 744317782 575748268 597924726 42980156 291408472 922491171 210179544 80764267 274155661 788671290 907085283 330866263 748322071 502689929 351410118 605712618 511490727 864978521 219931353 869094484 770057997 472897359 956467610 550230179 50756886 992939649 35906377 663511123 660896273 212385717 579783151 907044450 4330678 894725005 62694873 801836797 640744291 972993639 149048103 42975183 967198794 640549286 999489784 258339365 352130896 441454207 707483349 567141408 131941985 244784445 882137556 602081931 458047976 450458670 791745960 244653029 184977802 340776538 793084900 660318544 460174575 800642021 983830036 463601037 104672017 456406605 448680999 490789124 871456338 943236227 425954973 236417597 291578498 85567470 25839175 235271810 808563566 165472579 79029002 573742029 202148 351792292 48740514 303005086 780539370 972032532 295485291 496699902 500000080 117336247 848928532 353385675 337489598 345503634 109087892 354421461 625534303 564065228 492859457 839480667 141007040 931093293 510202716 217754861 273838444 976449963 608225277 216578800 802797598 443790499 370317053 797248021 528871032 334748123 913977188 424683546 397979092 156311439 509782556 446102693 943043211 581991877 869487054 598404994 197162099 659441630 356776923 56446591 838000309 28413844 301825287 232221150 926460254 119865817 476143586 568577970 167694256 9422145 314734435 109342256 341646711 474177786 265128108 71281287 705129224 891361421 211336308 696793652 991886039 837873161 106107297 536204857 923340128 943843303 634883294 758755358 364377778 785320602 683979035 879905689 804970419 37405652 981219452 997694273 894901017 814029344 388646252 145501281 583037551 975489207 137474247 106181743 550250162 880546697 143747422 161732 868381774 336922311 262699448 521435969 416360513 578959047 157171610 53042009 554112248 634858867 44728089 113677239 204873791 147467885 469556972 743084765 460671621 69651318 937797632 511052862 995087124 557942003 632728326 908374442 71138531 568806396 483897888 403655526 79036924 678608067 335084240 911028520 81171246 401698995 340152163 305729129 786097429 526055868 951566734 775180046 933960394 87707906 868483406 722079762 990506857 734018708 741173915 420744913 399232171 549171050 962145964 358017176 901648799 184334561 607430798 815872515 621564432 356504067 467329427 567391063 952738108 783916047 408283582 963101811 738127635 906846475 82315082 656253447 788795499 946426944 326666951 4920879 325772084 164662705 741580262 307292162 928698037 637937750 150946611 574118782 36357 775555259 716199509 350898139 612998712 203283703 94658750 126743609 235658510 318495327 400703310 743490070 300581682 521969922 332910225 873886128 614460032 859747455 758182541 513584012 262538326 694717153 394640604 702171687 169366606 236487219 590618608 843805947 752357188 436607613 361171125 211287050 151013428 823765539 611085852 136577907 167706328 687302504 963953055 605606644 225369862 543663234 786827471 137891209 745337441 331006884 365723179 59457578 855743553 388069207 852745982 596868694 215629108 34247408 45551957 833592078 685987285 339329910 891515599 93743428 397406849 632151434 38933674 428839156 955103680 543400743 45501804 318565767 462233653 204055183 249515186 798119163 335254962 890168902 325324252 490202191 665843461 810320501 692775401 549352283 386349737 360662813 62833714 984218842 842611836 775326623 362199970 668493627 835880124 954704837 843728173 462124373 822844769 723203016 922303746 750099711 492287827 377803186 965716856 834976387 613926247 530084166 161469273 12190734 214098128 972630278 953365411 124617073 591707876 65896572 671348091 259877090 938579666 512123022 624069769 237667381 677584476 345497004 240641916 858851781 934167381 211136953 205675693 954963655 24318048 665313784 36739820 289241543 328299952 78111088 396468977 832290888 963201053 549639435 123616559 846379486 944783694 976260648 543445392 424568544 285081206 877407490 260050384 100283832 151647935 713369687 914624475 537882805 602905191 23109854 349518846 196290707 234209240 263444491 967861120 985554267 508026424 758050323 738850949 583976197 472440393 126760059 497215869 820377399 329739255 232562385 61545105 121253870 688510917 480364333 585365936 687528550 54519234 284775688 636049612 895571996 99541307 397235832 746543117 440117052 325569455 969785426 610486073 132532399 399931573 336871878 238679115 878244567 728620923 525040107 803576254 117188872 778804431 78307570 104408316 431653724 921904369 561680805 631116394 458045603 150012341 461427387 801691551 270427917 531246638 553543369 993284975 878953618 631281741 771544928 583722669 26357935 736467321 569897669 403108376 552521510 528471640 851071084 879454084 48304227 886328174 289631421 686244294 764502706 109505011 936011513 653902147 650169472 305423671 995132019 453907780 693893493 749669788 495284461 103920787 574658907 356372645 344781094 234858440 25822579 467736722 34493622 300261087 173325721 749612918 930224399 289045204 507372568 50186364 669716913 106683001 257397650 638155884 855292210 632923864 473973561 888167313 65084007 433121462 140201892 989641670 88001543 860540212 317869201 66778368 455677381 591082938 832341377 299118295 943545276 644380550 236083550 907440514 653685600 458394980 438961230 535347455 297976870 339256641 673930068 115545255 196294347 484001025 95410833 259428057 392463266 301964958 392376506 519413002 104288473 167727983 78754655 986113021 280531014 502945565 749984764 58261192 175012079 457159123 764328134 739647882 966161029 211382603 514069171 544042299 61332784 364847736 162865632 128944228 357317687 773060959 922296691 903772962 431222514 438206456 579967774 238741508 662364675 804893969 158316923 345812438 761395354 637618060 783606802 363185294 40986202 720119568 235187420 75644028 116876991 982642613 840367013 39045893 572927152 84400927 434076395 552640034 860789582 869057725 198439041 758216622 565729046 872545390 233700355 161050951 263919897 77507179 638759095 575662713 742011388 106279085 865766136 840608412 470206507 462893951 318412666 555175610 888197040 756833012 481850286 214953079 208686994 993239455 244534740 540908927 765515336 254177959 107645868 703480500 802763615 197522475 592662548 750201063 674737752 977887801 254478730 845670975 340136007 260337601 834270937 451618422 169850679 427460994 814622531 276584225 861297759 975187090 902345478 744466026 436768876 99583997 409448607 178962400 393447170 430912265 17344959 382802413 717631233 482581255 787909533 989723305 486502641 982345037 642482922 734643665 555259528 508798840 814604200 120505545 410413333 470952287 758865569 775059685 1291959 267837772 332728216 814381103 506291257 385678206 45225447 416174348 702663803 557102904 452307290 720395139 476155337 112919617 827435941 620583474 431168209 343383178 793532074 522782548 247871162 84764588 661751938 373634149 31756648 214573503 840704097 691618694 764127968 740737034 693042617 117232200 144746271 421163364 968359924 145855880 675906370 874624113 802794582 201524139 930599386 423326117 247046544 553227139 471683669 634865769 658239590 885699245 985758268 84429167 212172433 747776542 265417903 216285883 85653029 557216370 968410272 880815364 969858522 137747723 576265219 354701216 286039072 833745580 990408637 247883709 692633712 957155405 578998634 259560305 823400059 924070940 160341091 820149282 815822523 91523860 688369517 92627575 664402014 89737490 941689583 701657191 82673255 943923719 292033790 257340461 126669520 437136907 750190854 934798182 492639718 275749200 837695579 522236455 714557361 494765125 243797099 431363747 992783584 371516304 47723629 179975047 195837906 151578679 391807859 116526227 73196979 816462007 732176577 258042801 656165618 755623259 758745004 819604566 298702445 194769535 306571463 905005518 97965072 537921371 723622774 655045069 22966098 660731839 149884433 910987983 826498070 313041078 510678558 62793966 163505530 760285586 454870779 897254424 945933766 590514467 540988720 152848279 736676099 643823664 792886435 257024607 838080030 921670082 746510998 79885000 487397645 92031450 680558671 475490317 996255208 717992819 807362839 404289086 787646096 727089772 441402149 366309259 214887054 795776097 366849829 507193943 929387644 15951547 688560020 721283039 577990661 90535453 963717246 29849172 107079487 683878258 836199766 671504664 680777875 390966644 944969717 694734222 172041419 212732508 618632303 502903785 136362165 621941189 105121581 300033761 602387634 698942764 822752721 884430982 61736626 158206981 808151562 521063982 309406253 858504198 287154550 136621621 13398397 916631109 699578886 486575298 571525081 64209346 26134633 78246988 161711104 586043821 926001664 748048343 347728828 107465806 591537027 132970628 541768290 323919824 454734369 433902308 459379953 428363103 949058024 475308504 329125505 977466648 764186905 999280509 556447155 303286493 641444060 937356777 20893821 356705642 990012227 276792516 701873190 804406804 525100626 95555774 938244131 837642973 850819900 439049140 110585117 313371133 495554456 557037792 749407642 124525461 686866717 662156431 766269404 170419133 970044469 226485864 578878407 350729736 648684083 942406258 405092560 600331536 334182526 630884837 92445713 797057646 334460042 370652990 440978319 174116247 648300071 56962366 4913206 189182104 848018328 296373235 94711064 467999536 788112928 436256801 530802485 45197416 648673926 420748107 764556037 513510318 493293101 34475569 264611254 202852878 871831981 52227184 767325222 967631947 773164649 327670740 7901223 514499372 390622094 201132145 884074375 591415995 810161169 445963679 667314481 851821999 556623413 882938156 171702391 297641991 543789791 149454112 54627288 386212534 574160776 198361350 933548396 997190301 274545886 580085497 600304304 158217882 477813193 372002897 151584868 350195937 347234660 389253493 356081618 410470739 528679193 390751776 162700044 566780012 838651654 802108170 443007778 651563832 371832752 289634648 706447745 597386291 767672717 37354158 240698309 287452280 83730411 944336599 669025318 399194723 508695459 409217765 714335449 689126049 134941425 488889613 367267089 789479966 588060019 435803960 378467645 506675051 658828628 594442662 718795451 537432070 19828209 86679670 25658484 893618861 860953436 749327859 429231103 84262731 666765162 968215891 401064742 302870023 615533254 892559852 573084418 974414987 453984400 364730124 706865551 704381472 374865209 21454752 962155582 672186356 122036964 649515326 299924690 578964580 251424180 748921524 210807253 655628132 305789737 131971754 391109412 659292791 243196089 619647194 468048454 484151396 680888409 571341352 373941051 225015334 305600765 639598907 678949140 533543435 384569222 795671870 969220722 744632534 683627763 643796291 136298804 840674621 968998635 824307837 756876398 367347936 894742178 86015544 365911261 19863442 497662267 625229314 802024622 167172119 668490868 786216873 882432127 787425115 369531862 85082478 877355114 560741439 979033473 260233577 370688943 480554221 588030232 864367360 634563602 665108989 725957095 678129703 219926110 399552264 849048171 680745960 687502280 891612041 58476721 449502879 12294918 416117522 702420273 573331020 288538880 616068005 986445900 549092359 69164474 908337371 55765115 814627534 460087025 265838223 914513810 63501464 947545188 831430670 520901496 662073959 876372635 110369789 846788164 231730457 869022472 842442475 919082923 920877803 786832942 746914664 748394706 968533197 208336466 442129709 922762922 437492738 869524825 56977091 882050979 735045136 867933093 569992097 130215071 458010745 160324003 726741664 549030022 291073944 270733987 248606886 91194101 167219030 760830815 691486697 389006592 518057905 603001172 445921641 738709893 206343681 693555996 45180679 507848219 950501123 764344731 948934469 334219236 232543004 952073711 173777713 585592379 858456793 770657679 233700742 216643331 986161888 272208285 292451936 320071655 61673082 645335910 755215575 505755093 204226974 862533121 410505327 732244678 513839098 708491597 78744537 496352172 114330287 276775300 714284073 389325829 137806229 638138822 399883170 66901954 25505939 257318879 12331297 810455171 225964306 728389277 307181020 14753806 693130700 732005836 671520723 842481330 937160173 95777774 773740319 989455487 747365441 269041886 81356053 485875674 18031564 679703988 678559349 59046545 763030717 565492595 350723893 681198818 77151238 875295343 702601754 194817447 860840396 801410165 566524858 753048862 99236444 894667095 345792683 374523066 232303951 999986006 291040878 391946348 292554764 878125486 593054635 586468265 511208837 713623157 112638900 359869078 554804771 23629028 113353551 506429446 110970473 438449843 418305243 199847953 453493532 46907674 640137353 407304898 526142222 398401221 627379764 676266580 374242030 680186041 818124901 982831035 703441818 709258389 525998745 117122697 277279017 10527228 120667035 478563787 971378296 457645512 928098599 303183675 373967974 74215723 797152643 748802394 894037584 879211313 358763984 624238389 441158894 275973589 613642965 9624105 231343556 283697193 570998648 493361730 799819070 556087820 868957080 780625910 741054215 724189709 601285994 656478885 142306175 775178739 945045356 723543912 780927306 3604938 673477173 397397778 870852161 528939417 566013901 568192648 754812469 407179948 828460900 124438067 289787174 95234987 575298266 468623841 785473770 386493386 64185477 97380533 253855484 149269372 602065343 356205001 279546296 21626939 416325523 363530977 510464186 673260199 432343129 839932223 301249584 735892611 672121187 557682483 768411789 506065157 962682919 533494258 635080227 297115070 962348249 147716150 455188509 25004153 369556424 423453778 283635332 487411633 494206623 864789544 805388307 775509700 990614691 969067444 156485882 661806110 854408915 192112545 832009562 708298477 397582960 686217319 579523560 400377273 104716830 616809864 944434854 580343005 876949437 272076738 706681788 409507576 176760501 979966255 968314779 900363846 723163115 247998135 875089559 231303673 604807469 231486591 273004961 564050014 110543377 306639703 182648053 505548164 522816261 624085067 114927073 932304165 174512433 450021401 648349234 653349981 539896025 711647883 786486836 616059352 33924902 974804868 937473943 578421805 717026470 384437090 336890339 873477409 109068033 245961148 956606361 941234460 950305242 274071201 765290992 469560854 917230737 343727251 702833755 745620795 432235019 851772364 561081362 727538106 991994141 35598694 593403885 685822127 530907805 908357018 330285939 334086853 994206676 471830801 452828555 24945978 927568165 836226345 462156659 913018586 40261748 198008534 356178887 19551440 660277585 54396692 616446163 512427718 60308432 195853024 524122982 502611577 967414220 819128222 528381720 23428864 516382144 531228295 797045246 526256902 382320357 160567411 49035706 638327286 219445569 903846442 636774217 456422948 587376364 921718073 37919108 209851393 449992303 371961462 91156862 281073409 512587220 741679788 187851881 520967873 641547768 350535168 429893542 350759481 928849254 679728822 46636617 147049059 706094525 449047171 463108489 146357997 271955786 736107829 289983517 306402938 391484245 969099632 653013284 925545565 265074394 460151765 559271373 58781348 472633545 306258441 835548462 129006464 973466872 440280680 44680065 527887359 120747375 43234760 192113871 802498741 542977018 480454026 322268564 759449015 618112783 332224630 638454032 726779452 315970418 878660118 551237099 959552572 552430071 204966848 793436069 624330453 285521255 139676632 957609682 806321108 736059094 547963836 773733064 863959323 829983848 201306301 360019010 49070173 746311221 343611515 34724613 688867624 936208098 14828117 864263012 777934036 615509084 706373869 521775905 941363640 844000213 973684093 311518235 818380845 492675807 816120221 694934007 276987670 692509276 228409343 130378200 236312703 75653970 906540973 75325843 532893061 431577260 115568622 431144930 295582880 869156428 785976069 258463753 188793022 82253649 336638058 729973904 829231691 514242035 697680152 377517745 946101911 765589691 230034765 207651684 427398451 477568983 202316564 367622255 784211372 177118096 396402503 862325289 879428797 861179263 763107030 265177058 249991193 433749689 820589088 483825319 131421310 207377400 459302466 246809422 972673897 756227817 744768446 549810546 322554756 93509302 561550782 949204400 816493765 478264112 802982388 27653507 337452862 965752241 662152564 309290344 961403719 342171168 323724101 545640291 585827359 337309876 829923990 281040504 586590970 760317195 233186235 446936694 838817047 719204153 398694511 652576348 893500074 182218262 697581743 64009591 36615867 973649695 616031031 44170289 826550039 139956709 437590454 88167974 384050488 130463364 897512649 641661726 601862958 482060926 867863968 691674956 336444381 999506350 911968846 817321372 873489259 87981575 255533564 112374526 642386316 233317155 383283766 785950471 202373159 135720353 668390278 297272307 497328830 632026949 352155765 32771985 968997801 844204028 401148786 150577481 604598491 225076263 480109462 549991260 527294206 579930697 57547632 975205393 658590453 599474240 369468827 972546379 596568881 760536162 960163632 488673949 735834887 673679289 939524920 77157307 429625493 63574940 873468067 107092614 489232355 699714873 954615869 672803292 402959609 993611269 262375720 87738556 130001835 85587097 186958850 439832877 519806730 880815457 861137452 691223978 79015434 89948741 490665046 894268134 504516385 524299671 959318187 970663214 917732728 973470594 863981262 409968686 962410703 636083862 77429338 928755817 709145370 755854160 371655791 220606764 375629933 288726346 366152600 669999160 123534834 217613400 280085143 566773659 9019097 225248640 180168050 688482844 204503489 358788418 596222921 675043453 547729975 155892285 188448722 915732452 676073737 266983614 138764190 88133114 548984464 809208790 127580924 566335852 429995922 422352655 368001137 632614102 884086489 625913872 741866662 658708213 696621161 914938047 616403274 665431709 942306043 46722239 666856569 455929036 447282559 936305139 420127849 178215414 822372624 305765622 97918478 757839380 543308635 806777605 359827228 496591654 168804164 745807718 865395345 282031539 670163075 504978959 443860395 937354966 11839703 799919606 636071014 440565902 640459506 780625494 100108898 923640226 191479049 668813420 719871450 818339956 711564594 302651714 83021886 460945010 362081603 203648495 516151051 503312400 79660750 90631617 928957916 587458120 477071788 75322327 14453565 179596508 246959484 344661537 31404240 631749095 119705301 987352738 986350490 273788096 518010201 954127344 71961896 728567478 540538160 52590050 28786818 669897291 73041056 784868213 471302488 692009310 870787647 987308452 471343105 444063065 799233118 436471815 521560089 687632003 847828158 778563111 248558151 211202012 983310465 869079108 388239592 983965850 67077762 814781573 927430499 815027745 715698239 571227788 962572111 593401326 563045884 812717902 358764325 821030496 312206326 990696641 314627843 508278007 752750827 624951853 362820698 798767647 406557356 121613392 528835925 318465608 486283500 243777717 988944321 404329623 917599052 505101920 755619007 534165074 646117290 768714795 320604001 448305726 996573335 893528360 588347225 906595672 645726849 416445659 158050590 829494753 585523402 276843688 655078269 777372780 421433549 310156003 854260696 328218532 789781993 297300693 822479264 908722045 868010400 39513553 286418946 751134854 833068801 273217177 438427078 134579722 24523774 630116720 76744801 367338424 726932412 252061186 980570618 398546028 125745006 673717015 255814828 472485628 911618708 769601935 958353809 553989331 60619349 189074004 818877964 956190871 760983103 7130680 623726718 632521218 838701130 463477982 427892934 913363746 513507831 998784953 515433710 508207285 652563203 702606371 109158147 66439820 52709499 712740299 183971111 512062699 974838907 909454593 145863012 112800973 586963406 469868183 526962714 758917913 79191771 781315455 430165398 216955275 983071000 960425712 850996373 99628867 15270790 467702094 554825328 582671001 514283104 946578396 319342204 511050877 684456840 787729022 776653683 589646214 84798852 605138615 747963330 636035074 686286870 973329440 372541687 151104331 113297864 548037366 387319168 133556142 840555145 189183584 407555846 998333315 157790041 521745760 323000042 640689959 462612531 250833805 676915537 904832311 228047632 379454153 627262576 646498520 15388245 44717855 190461472 29132545 36973054 392517288 255326406 758363769 522494968 367886260 326897231 468855160 991874866 269023883 244690461 938298190 293448396 474745367 769064242 445908368 848235737 885685360 366529153 417957481 362780432 50551683 687131372 866545447 395529325 363572848 989022148 899053456 755668368 763138537 691853477 52349479 817702909 239712033 311260882 26317452 789573340 243146114 585936701 167137640 780316180 51973722 925631858 695088896 568583872 623478880 816142510 3921592 376066904 651891289 593209481 230483628 976371345 953115330 795786610 776416137 869355376 121646481 495690548 860689819 493125441 925970199 715567187 990169015 229925811 635527021 793057519 119743899 675745269 857639400 415860780 254782683 729540246 56744566 537742628 544334955 215881790 181649527 607465162 498060374 282468829 323428343 517439493 170163475 423499076 893378852 470527326 697287144 503565482 310271966 621959059 109654187 22841715 170880626 758816081 36413239 457047286 72163623 778260426 959523478 446732525 963530127 669890429 335085095 756930371 117152883 231426351 207315836 157770777 856930483 890745013 253602427 401847261 676344324 636256550 218846997 430172399 62091857 414521784 663486426 30603226 82685462 529991893 304681755 105096919 353927029 824976448 359646442 622113884 600990897 814772342 732136432 109440694 674837056 760259823 324487981 143213221 643116550 433910544 396383465 964415468 350854151 50108478 814938146 662236376 571314258 152699590 481415364 884497055 253630947 333802415 775550693 265314501 215556442 770128110 997296250 687255447 60271181 616633598 419213207 901745644 603996858 469518429 418966965 972290310 114244455 838053407 815387118 159018178 377675553 361729243 667016590 837868371 732055564 476599980 280038635 17663451 371639568 971158846 786214269 718994263 204509542 122247588 799349623 173917046 765579206 967884838 418548092 330147541 335174109 614502633 871130174 926192569 1470366 513324705 317081006 533910551 841156984 698638196 27537878 133100925 121490516 385075408 364980971 761776138 609286828 319155362 414867296 271769639 792682795 785049316 762214324 550888564 314385918 939473430 52039749 140980368 549410239 868463047 264159103 82148127 786914852 198682623 371174074 512979605 874212046 339365677 189220887 636432943 379126185 410518588 348907447 389321950 431481979 958457905 438911967 347902313 816995166 540626587 696282477 240125732 197578455 360847412 836823642 387239524 386830323 935215062 80104338 886684310 830264689 943944566 671863541 634804460 179528221 232193106 68848666 262207361 626590453 935718359 969093768 12091429 17649426 272734069 399138087 924973979 421050181 224826355 934223587 139592927 842648973 615022445 385294200 258249187 356988223 208024765 872949888 919349801 707318418 700307508 753181417 214671607 899133458 375861490 534380694 482662083 400433183 882745122 49065279 832567898 848682688 435439782 134762479 793998421 235432353 519042346 927942693 695399000 672372798 548643469 266355451 565963426 914257597 62488388 186099141 926944012 34608771 805606805 490317554 39107897 551948895 20738100 804898000 725804299 185561400 818779127 935841583 284722068 940357282 300877779 475391796 202416134 308899379 411183048 407789659 412565194 400160706 123544629 891739969 138282120 868558000 306331817 693769547 899165885 358200885 184497262 780077188 99790261 273487169 389313724 657845290 428506885 695773554 286076810 426758830 413775128 209640510 387171579 303867999 624177163 875420054 491826300 662496161 549644927 56119759 755085819 816327496 370364931 645698477 216704248 363694062 511750101 386273923 606230654 487317370 227594186 950445162 650039980 817369387 718879661 857817790 167244371 508024831 720197642 731405476 284816015 989776060 885184380 942030901 872268716 371401569 261319219 59053949 129666380 990375045 755153038 7960648 826908148 667792452 380148697 952702589 503320069 424572812 272557469 47919907 727423208 645556063 805546284 646923636 958044389 138769289 516386130 208817222 556141551 176489625 188107825 177256330 473866300 270311878 155167885 38752950 930125379 462655453 322880919 132003374 116735824 144273961 732859209 78376165 260652832 376259246 298642818 671176342 732652055 643274404 639959733 675798936 86744959 564274856 593631012 199745632 261642474 181624521 400817721 431666146 726654865 886068763 560687150 347918102 160726434 753226759 280591356 359388679 215126675 859505382 832546050 582892609 202281124 475847157 540580616 763127680 82136630 568689425 356518786 27726240 852915294 523762542 534094077 558608964 830876283 154862104 901505977 795230412 339773823 236867525 299152811 114535276 963245533 93461989 998229275 996760993 160242903 821787651 723330632 268858284 214494116 667482714 105315735 436467045 838012201 325189747 160432500 71314435 505406652 826003627 44526969 891295779 23875794 965963497 72013503 319807840 478770981 96119459 965103522 956884383 624432474 278008687 824223018 384835360 979045673 270615511 300721403 847175554 38832553 519629576 890385422 836388673 926984338 623784185 376096894 402195087 721899948 80962798 958066937 323564710 632869216 570031595 61550519 939193634 402771218 722726502 954350038 468475113 987291006 933382733 535000876 607682088 631546917 330373254 343859733 527243922 991581569 387384809 306223329 844724780 239018008 660990104 147442887 257159016 65909163 493844130 393657562 893875071 152745555 132705059 10645485 806382660 714337047 781481200 891398974 840334024 872917591 838568545 478320286 2701733 685324072 415064593 342547331 717690794 619856945 967848683 151704572 121102135 903184277 1516297 101216225 768386123 89139552 756448202 511446110 219635047 632300115 442815097 239689864 368929973 170881206 522056195 692585742 720391424 206110099 970469045 177385265 647004223 2404369 540525153 812778847 942262137 859632825 29270238 838425294 69571141 778777131 192364174 790630452 916206263 33071529 408975388 629228946 873970409 330370148 526028536 955599951 966378821 294321949 432325540 286744022 370549775 471268617 301935791 348976096 506670114 763763184 722009483 575209289 982712003 182252617 209571554 354561167 859722860 750382717 182469206 218140786 857913345 142216421 454345318 663339277 431916788 325895529 382749503 130660481 594190866 525560506 604733671 395756030 711542581 445025787 420051672 60364480 876017276 66967323 918260156 43646579 153580980 120741769 376520025 823534894 820319203 409903602 132604424 791464618 848120673 359017081 965708602 630293378 821824515 673482945 151735544 144461036 236972044 86025698 718883588 991618341 714609865 284976360 267073697 139787921 359162311 480835486 987389568 217696309 998056025 588162236 951645208 328358165 654051589 825062388 653032621 680427644 419835248 694136777 927939791 31902653 242399532 988826784 461269991 770053498 560543340 902103507 326503209 674381785 550846051 338716728 512128586 971550237 104263807 492531468 117555145 988930885 563474924 695537983 915495452 240628247 15352833 54178941 514235363 878088555 848943611 504523827 372231963 458810831 489859744 198864677 812104000 809511055 626390638 856814869 429180163 2945755 431942306 116597359 808988092 749131863 858772317 676498217 461852703 967767325 719033169 803503175 602000427 442279529 20002291 721195308 816462106 930856776 753062416 250166946 252258221 992546312 338878577 444869629 681788665 188944854 598318986 957375750 918568522 717965463 882730435 202473427 540592186 80178003 173135591 878624501 865530849 36557112 416798125 414318185 57658075 669780726 248953038 378563983 609694984 127359325 890953631 633628473 766338613 869322145 891047541 152628826 946083513 990922616 950861058 657700588 376127912 525271096 700104161 493302755 133143048 617364667 234853821 7636838 570262704 311197644 985191361 68096216 672751703 14969976 639174230 238996113 464844240 781264473 982455683 743563706 382477312 695471929 271286936 269993739 597462793 404661258 626586845 281412898 581243426 69958653 664712705 962637339 15010731 947451548 572814270 881934897 56048980 704176525 57611119 932856390 859927710 348819982 813193702 490330779 725692170 209700458 33726426 72144687 914226666 450525094 856649412 326227762 377059484 668401283 888374340 251703268 63063543 937332289 89912169 831618318 822034444 611288838 364287328 691891037 804932624 169035515 152734399 19587809 906818255 235155816 766922323 566131272 547379795 483691682 502088839 401380364 140094456 288132785 204134170 249263969 524751481 459244498 828922118 914169861 682996880 269908115 307808829 543880263 328461152 195426251 338975404 770695060 877392234 155097709 74430342 198809806 314006459 956729644 480422881 409922627 950268823 597945512 735246434 127563654 701421338 45630732 421296842 191841904 107579130 974179676 559511696 255516240 83469222 699550105 760419377 918708606 683180758 68891873 163257030 443534335 848702807 425123343 151978520 284630474 366440780 579448277 385363489 671515288 25385963 169657151 247947187 95043332 945727306 641542278 121502126 907901414 395728615 999467969 413346989 160364520 796675880 510933653 813028494 513225531 81527235 181633402 920951148 645087660 773836603 822717246 314100663 776422428 970743595 885328124 28869449 511965786 100243837 661919174 683548729 272840313 508836197 710178111 495587717 151801458 177703520 711143457 255083089 734204360 659125844 622023685 411027865 452108169 522351890 147149928 760520157 348172019 820513483 451531995 126864245 281561869 717995568 390267721 687405834 428442448 874366658 295618044 696035081 745936372 999183967 100082895 243751055 995084839 620696056 502735940 270542010 242134818 732380256 581653000 886346865 358610337 123405225 242559307 631942282 735269727 762706881 366004395 520726559 563119088 862589909 591788917 741223678 300849392 645179485 38182470 683101972 695640752 533123264 971063363 669703017 141250329 854326512 154212850 100857728 835215240 972427145 939253190 556449011 101692557 617117280 651965010 83492333 180300194 136693629 577691319 841907459 312409468 845740879 295338597 825736386 694727417 889246222 358139531 539224379 969880337 718508294 324006524 767455304 86330471 975386662 850094318 116516857 820610886 763137278 329419389 166658496 386076089 790149776 441154545 165104448 77585367 104219257 421832176 804749986 314710110 209539072 271425480 249657430 172120432 452350325 504962182 746161763 549191169 651084334 80697254 636774488 433002605 518309634 467992580 707579248 756395047 170656884 164776462 263224121 731685070 529174280 684680378 414753827 342355751 150560212 851216864 728310617 979798918 545143119 607139940 69719290 167018470 982775980 509732886 530693503 874371490 353315830 290860125 745377634 935142388 904621772 118002810 623582133 947724667 900752005 958474077 437198297 264539287 475539684 899366839 434407529 508982041 910146317 146134256 577912164 887006114 15865433 518888077 812136875 363214441 503363388 132367464 5183033 457766284 170660719 565412122 329829055 670940298 931412391 135421739 805337930 552342934 211710040 554795976 875225651 138762535 202114613 93418446 130789411 163315942 785393871 757927711 105713004 991216910 922647406 567322358 663087646 133709232 565223395 388384523 527684939 317323945 213534563 680968260 455047083 469861912 532137937 900295167 795272378 929091164 798917298 769568503 518557116 53671105 790384349 807193810 598266403 508792021 131683383 514885723 526137961 972419386 459350721 918766738 456496599 124608422 640316691 63025304 462098160 332094675 465469888 61501156 314557172 14619250 898350712 312676642 984551931 540598929 432237820 784784712 10134039 129645513 799248525 792903749 354274424 379767107 671586964 140884505 107433227 801711043 274475363 829950315 548405759 95436751 692919990 71571424 669000703 211813514 853812365 415977511 477653740 348216523 779799700 502210864 442088467 222766459 91770094 996322917 912772990 892540122 461220635 496385086 841437651 739606253 823522934 106668548 458915373 431348277 528255826 682683805 981891097 722935922 266594897 37027787 604692644 970564470 671461325 962132093 231674449 989395015 633311367 283298721 713875897 987964746 584187107 681526414 304325962 522098563 17734630 672449044 325450640 287818541 609763904 638464549 68881402 7593460 868050093 986289436 45706401 92341430 393583322 431363065 167824045 6203694 969800927 631212429 848362262 596071712 297231035 522452684 250534669 954960952 889617032 844915649 683120077 607399301 927670713 202450547 559780330 238010505 663096682 428077113 809568287 791259922 973077336 522695588 707948524 910261508 66383091 82225990 429526451 664592196 294392027 969961318 268454930 753317101 831778884 68890125 202322328 920018655 107618569 669841049 392505045 238302606 306608082 476268569 562984511 285063142 122997019 440581531 364725566 838021235 896717423 848512248 614384665 338542404 680967500 739640396 383218716 952525380 103567785 274479303 8029049 5182703 826908346 438430646 427103695 473556340 434834795 659559387 21119099 791462391 674836863 849744843 554511070 434434584 507421945 302108801 771159703 83012497 387969931 307326960 867506501 259330805 165303877 792717757 358073424 252120026 969429782 201120766 935629854 626475120 483718420 907516573 382199718 137833536 295601329 609183968 633814579 375413986 394438113 951577003 907990454 89850287 297674083 682558668 420560415 657328311 154132132 610128094 249902928 589269783 346090276 113732851 163776833 26351375 703094702 93196954 623475366 234838141 500947492 647433830 695187474 907127792 335043549 482710138 977592524 97936578 492190554 85194664 181308861 763106414 931491678 732731172 634615245 768034564 181618050 820549990 777123715 873190951 376152727 935032974 259482158 924243105 63934888 396934669 275737774 157584949 34247188 173533797 99885719 580024125 683551996 299579693 397952733 398450604 375538557 858859475 284171874 240349742 208171861 796405980 386290100 622874182 569615726 909554751 743605526 271070519 893946728 541430540 408918796 978538381 913591425 939034567 962505035 632154787 983644153 427990343 327758621 654730328 802543351 741978621 59291427 816219637 48187683 441916876 683162599 247594562 476439013 297117512 889508918 792560768 790871326 568694040 810923427 668664533 409165532 402567668 600337394 209751321 913057267 935618704 77081212 672234971 72636724 833380559 822111691 852112111 829308112 392805808 279656829 921927805 761642720 628503334 448930631 97060921 570030584 197134293 257713837 439528547 550409664 118146127 421190036 33015504 163150127 441708721 477390717 524402725 203851658 939157812 856187649 22246849 795402472 791534395 978059294 620276294 407392100 879248641 644683478 973685918 970615287 260048133 347259252 709872578 71607635 651663035 303817353 909777463 413268195 405306774 326837552 218140960 743326871 312893431 377636568 223724386 508196520 183659486 128550673 410745628 639596462 275573107 828794791 676868044 512320066 247131243 246552370 371153680 880661169 309249003 978210266 268197162 504553808 198591216 679763815 688418963 161865682 203604015 681843906 665788945 359533287 193599659 616556900 81684984 478894994 849436934 96971283 250305793 289184320 780685881 81383707 435968676 983769096 55439929 665059217 835287872 661196094 597228199 433224743 843524690 265532976 130575200 514709844 234164493 713673631 938913860 844275692 43105576 886199381 477820534 209211500 763531739 188970491 202587881 739625755 341560454 540900927 55515392 509808378 174254333 59790637 537044799 959438232 578285239 271962128 643237403 972037821 561474124 98710392 877827499 42537051 868038547 451097509 462181127 505302547 366235782 552771196 682248615 475209161 660870673 774379942 812626298 714928667 611447737 311660321 675930528 778084296 504957427 567797627 681962331 773837348 625509920 883950693 668587117 463720832 709538730 865129745 243518545 250956506 383934257 468593149 155928288 846448315 917847197 930160832 402223787 652215551 492167253 634450569 843156966 727533601 579721876 234403133 333510570 440415202 794584975 422776550 505253022 674310588 527962660 677488877 416897118 48242844 670087719 748677134 300245897 101650083 892725326 753018160 622523004 138031251 903335981 412469624 162903092 371908669 714613911 536971138 252340577 602810606 519639815 502626302 314066284 569999122 985019871 375001173 889655580 745839340 648903134 703192875 760197662 897539 736718114 81257499 981303671 613735956 617924642 172264227 607414358 159783056 349859913 390796832 603315752 536216310 977164546 539971755 317496453 694484610 192317539 267002838 440991839 457180181 629588925 794166573 839482050 350031262 300167198 191824853 659020043 137027936 759026875 323228224 317400780 596827897 649600892 647611617 726900183 345212232 986635569 770071378 504243693 981167752 693810511 858624507 986102680 396592040 400331270 434902143 335404207 290574569 177989387 254167893 58550402 911123339 716525276 667055882 313537889 932551303 197748852 96519220 888215898 273803311 588916477 325861229 629494328 855126168 485686695 318351063 921769212 253126713 905216935 118823946 562696459 245615912 886508270 823334093 536569853 878465335 193904786 81136609 350985127 472975132 991294154 278816529 252627695 952912319 677245386 88260492 936973976 692295640 687778711 23847189 906643911 918345609 399444500 541529672 744179693 487333138 824840626 78231088 275795755 917134941 269540689 954020879 975413223 327545263 995851235 912512994 677094011 493294219 181139105 831539341 946547407 378142218 831010189 454082713 184127941 312080859 579473900 588902038 11417781 27572573 627465179 890114846 611474750 829815336 721450619 939365499 464753233 382129191 800514262 362320100 485918944 298971018 491368207 287046867 418434468 662870232 253475145 940473670 170772310 176637512 133904966 159975451 435414707 92554592 299407460 379704832 868235741 178787024 681050135 295712984 942748983 350697815 451459754 590670595 129357023 752245302 901112879 587645951 344967525 479289364 488448229 322286522 439557625 757428107 111032827 320352071 967793022 403718312 652450840 356291042 997918471 849173918 919591370 273887502 808262489 519917543 41239070 253934550 142078306 120633244 631377627 455579796 832111839 710834560 559332221 379801931 226385005 843022668 693509134 881303371 130582190 730942285 376433433 126795800 40750000 783886134 276623039 282040 547792212 170539730 9562150 792571863 857645592 373524882 473623994 824468914 712691300 469624189 89988590 607138508 491125993 681820374 922440411 956137830 408319062 459213842 107650917 395828011 415826266 540531798 812354835 385342546 708400771 623418640 214301686 512096644 807522642 225544234 865419093 402289792 100862157 380289281 429877099 524412026 914200700 600484272 228178534 747547122 237721261 913395206 983808278 266210528 252927325 917273698 901213027 79034205 491525163 218339253 458395593 852392399 316402262 676318013 240876738 552812907 135956093 885548176 847836112 418183479 779168809 778476720 778955924 712394736 726001827 606285399 731192780 632202525 765920485 450588667 125088228 766364747 282824675 346579092 271113386 847730746 549440871 367039568 550472530 761031609 66275350 78989792 212150809 670109183 680438880 308336761 901669172 94151776 75988716 105064600 925137802 103018635 314820939 802677634 45211918 174080034 773081065 808599594 230752980 320555184 46074253 575673330 583803314 757699097 575558940 994773560 408407219 165725105 504863524 146054873 552155145 608654240 809493549 42202985 376568150 790740369 638249220 455050593 611562863 468031130 182714763 626357471 796331636 526298869 181010526 792919309 729375798 943192150 590404604 715374339 320943179 6945607 576170356 637063529 664939380 326418465 139227324 209305209 330562481 903932018 8178909 272231850 486652691 174423379 696952718 234922999 832356319 763164035 596801786 233274353 498433507 956991785 93426197 428124702 673678531 517816595 814802078 67393580 473766699 855388317 722850811 313663636 837121553 170000887 617012948 21983567 172093321 668378207 679721360 542018902 892414112 844145546 378722693 561931523 140746588 906980657 793711936 386255162 57907294 537026097 599584028 15411358 228354287 576437910 303038958 866249588 970851120 144210804 541086904 559484925 101590887 116846852 391664495 772488477 457696466 419448175 115908103 553591931 586102034 953466152 489199924 857225028 804682501 417507694 154426611 655151644 417963516 560146198 860543292 765407773 208487042 452553003 75062533 329911821 247064591 664585146 968925217 966598110 251391140 947875409 304563266 52324795 341111545 728763834 838690278 46711974 527730235 89173930 884888998 665552558 360990824 383027240 820419402 561199161 184260619 667141329 809207040 545657486 896173724 127796510 204192816 319102581 340323568 887891006 870398222 695665011 137015489 799134127 959991882 851321297 165659030 580143794 180837485 426103870 176154859 297295600 340522555 807064067 364457767 762541167 253415888 275614718 782198746 367065103 727935568 75438596 119344865 196918098 706804597 719262262 885890276 141815572 40077006 177011675 818535148 660919200 672242373 677582571 31605753 981379247 973018363 673367403 445977687 462530528 494942792 977282823 708353356 581767649 706879607 708415869 344088853 954568693 781212079 629577321 367842874 389237345 539604321 746375125 650494015 662161898 998390709 324363063 832997573 726131294 113124291 255523792 889219395 184241927 743409711 153530475 414359792 353349834 295258952 964353249 210204337 591926881 69608649 668094892 186072090 517155076 364020399 287035941 947685679 972677826 997411252 808943803 753675164 800218497 924207084 979652718 720708519 532273748 850217769 349374067 636228406 710293407 311214125 907472847 970082163 206464098 309494651 562310418 279592330 453566049 898860600 132319465 422789141 274987692 968904298 798607753 279612748 719920591 199985488 245278237 341295028 329267643 607608456 429010854 578256847 262439491 612941384 458143650 425342550 47526772 983039344 836064999 176923436 943089396 16662372 634227502 592731288 870184562 155578849 618582666 406595985 462098446 817455876 368340112 627573587 98747747 388942255 592632616 446709417 918095395 249028220 105090314 283281935 423047386 468537673 797663756 966827565 279523915 773719786 735025151 29644045 466018374 187848105 95124666 900775499 446118701 644252807 831836116 204516630 8937674 910272860 545493451 177293438 23340876 691700190 741903641 274679992 814656855 312913083 347657055 167456130 520882297 92526733 772032515 153338778 545531779 202922241 592159851 503526036 411704057 602990679 969366904 171038816 978210088 536613018 483177954 219629847 189468143 660063105 128489589 931967468 629659952 141066547 420683694 262670652 226281391 680016425 338819142 749023914 735684895 491464772 840856815 291377562 268791640 848315318 11130739 383777611 722428872 898711151 146379070 117874891 557880439 823552222 632427593 456359739 156097238 490374086 160510800 176830191 898840081 343992644 401350553 229545327 90788351 587006902 719162969 933790438 338932108 858983311 371869671 885746662 741504981 578417661 610250237 406020391 398434033 506701992 394394987 498448221 461878273 273042313 808825937 763165051 387755048 79697390 65887207 919205547 860559695 48173802 910993334 425722275 647412428 801184800 267963815 471944639 87852710 126933290 135158712 118144434 191497442 970907551 522902350 131525890 466846740 979276128 550507118 49220331 378836898 268232059 616672045 942617157 814512996 846524989 302795984 628725117 751955689 781906372 883226397 375700427 587214281 903132559 786440975 577676732 902682454 824926184 760853572 924264996 52477061 277300251 347240985 546117816 181646201 57242509 590009256 23762544 484947293 35839109 648991024 118128172 202931591 177335078 59842281 440831936 342317480 5914434 74349493 949832210 539127656 455445235 24383865 641766510 996682887 350765119 137446418 167668281 327855516 122172126 694193135 363172487 216504166 715774309 803446213 71975902 707919122 42416346 28224665 951313963 740822673 393566659 605095100 340543872 690561965 293253212 50259765 224163502 997405554 478260804 173684419 629492441 764599742 588683905 101615798 136801629 46695419 480840173 256287675 149895306 670831964 301975242 693587596 254457366 507590760 138042700 399945524 74650742 40062107 374001401 944880788 998932284 650670580 45100988 121591961 400118201 990838007 136850615 381764691 933027848 56435311 361514590 173268153 945949230 522953643 228077505 493668810 154573114 50535691 136985925 379863239 946339301 999052087 327026602 60577308 554825567 685381377 188759201 283678581 951341327 355333443 339562234 44056161 23295250 750634833 945961800 37535799 326087740 254404105 973537187 99425410 715868294 293684038 584704817 16122957 936394482 765318353 43646940 798440250 432179273 541934524 756526124 89347532 88585816 671378832 337333566 592750952 109684020 716735152 191554259 111079129 897017232 928098067 985993969 488759530 852274765 224411147 799593088 856822946 346047154 117204010 538123732 931755304 284538864 588750020 801183492 261827843 863549073 87437692 38994055 869740901 692837674 568717184 493602367 476106290 548151338 740704889 642653822 731442720 794738097 56307452 26585263 29949591 347788134 397559854 489233335 693784083 676152281 29189472 473969075 789512054 922839114 52747560 676218895 785144273 997915359 65129803 212723751 580403541 746122034 96145560 264597022 555091479 621060626 519538757 15013481 428973910 18267483 769173850 110643844 314236047 580972771 216990765 230001240 350987972 135627026 125793669 609739771 304904081 910342971 666074159 750145508 262926811 546846047 860330808 116711581 862811528 232449147 763663066 642576752 449324712 290053284 850598462 76376533 404640805 509873486 282967629 502296986 853658216 476930136 947602729 205828578 648057447 12067405 968439628 294529754 444794794 676297235 370555553 730864650 966272104 688993911 167086450 276891426 43294469 265706734 248933131 312092422 376097113 572716584 947234232 41698244 552179832 649362704 627015803 34274638 345940458 961412530 222803610 923910098 97732562 906118449 27386855 38477164 315238355 975657738 925318695 307201143 565909101 880654800 378994849 937776501 681391009 936258109 988281899 755847625 402806260 964026160 749352029 348411812 488531485 640728300 955758643 961652012 879096107 295777557 376364069 616123431 803930176 917944025 495340944 281344235 400136880 655474464 274747467 964658259 895036098 158832349 753179084 981383628 196448136 462605640 864202924 360203054 855476475 135794184 491243974 148217930 514937270 114441424 155678773 693266466 66764362 285145910 412073489 428460787 184577120 357540801 377059121 154215224 387857409 709315082 60115266 19857021 520399631 149966581 881114812 484991515 701775222 265081357 56144963 379407865 117885748 284695293 433213393 792346342 331863648 812940688 662516326 957411573 680457446 596840545 892028485 782211127 764432417 514926836 227009818 121813138 959445191 651784263 180721417 735199787 16457054 893275806 576184746 949832975 554468486 148169030 424228791 248577913 66159219 511944806 989889480 650180620 488244934 822644669 172554243 204095421 362244627 83881333 816139676 653634569 165442110 76164519 776992676 569275474 2051460 714919449 733233881 307406996 731353213 420769401 194226908 992212548 250908983 425781505 802796073 973072419 264202787 901630658 108461667 265837003 340554070 748195605 752541472 818766540 998986647 477514880 470976229 875757533 878027987 792230450 436641912 140444112 455722001 219585831 428084975 62469500 628880720 965864426 874613819 595425368 531374610 107799556 795138700 588457700 177175036 916376400 523692224 159810212 858559150 388230074 192236799 298126209 100758768 113974045 406469569 632111233 890965213 488649584 541970256 907803787 470149594 302368398 733155685 884584661 175615725 893688121 720050087 557636507 362970666 15021965 778651252 400346970 88189910 253634661 201281793 680399387 144601694 690340574 981480508 657268754 598552697 55210059 479484217 777918567 990134046 432809267 705385028 384752063 152689689 171692620 700681404 198290934 400984410 68395486 413735215 709817849 245307175 629403927 66592997 300986594 971980902 31712986 136745818 600994726 35137851 165813820 856097075 638332803 339378312 520660397 228496883 697591161 902055138 760830473 401026776 723169920 391030603 252345106 335414424 795497784 252484197 570180179 976230893 27540376 697024487 193637401 204289231 177960867 662869342 903900091 207579032 524244512 530138765 515701248 409856881 547210765 961888206 513785252 47015140 748625677 936384880 601613298 953820619 694599769 568312813 345879640 15099041 117084258 614906033 284231933 30815818 383004655 894296359 953168704 865121819 934205598 762477823 584759750 900035019 26001553 671557907 161579358 805448271 369510103 306936074 112084751 400592658 810840606 299768112 675031935 824223654 364273508 907572989 483112630 958068033 384323760 284673894 461701224 491406635 894918451 38779593 742662970 857298129 70216957 600760005 523531200 519599158 752088300 157119582 877152852 590175250 720518734 592014660 929717401 751397277 380843825 119986972 284189621 618048904 335524586 695992079 628638595 691861597 819641747 146701702 516269543 56604494 540221537 72528669 781421128 156599749 469941521 245746199 600181858 230580180 545408805 827853629 943989025 896438264 705192994 431135926 292608594 590685084 174979453 700372186 439266572 109595022 584072643 98539079 985340670 282098755 194286447 910614214 229525685 611543413 597088589 491778581 926748292 766189910 975661876 360515362 665963364 53147524 795870599 166445652 710841473 600050576 780383642 651110937 165416605 345334512 821724759 865386179 92790451 413851835 609839392 377885206 76237726 589138545 364543729 376288673 867464041 654330310 556261945 38082783 141208789 210821645 592241263 181557322 631531389 252993893 809672963 858299322 39028623 883831848 300469725 281887707 76616977 957591385 460886765 841362169 660286231 294421092 790081162 968741775 652613161 427288606 214291172 147175161 216514414 128732822 639150920 277842583 603183915 928088210 342141811 716568928 726488823 901827448 425318607 11095667 789084345 529537302 449716576 590169035 671344438 628390102 695329018 283639785 349778171 789080351 36333912 187332960 18026014 783334448 213306323 944102272 32786688 196757929 844604791 219385379 734326326 637993528 247369765 416315223 698293376 300652145 2917517 495008042 112780696 791312080 826985379 533744263 708658771 240639633 417909079 236501611 753239508 885977489 120791232 286789607 697965912 455358382 769694614 926539942 885715648 400456072 292481348 608220176 281101830 944696666 501564799 891331832 797524576 877437008 101934285 98404432 595784083 797817854 191814602 93721264 959362559 244069854 787713269 160411198 768027274 791759814 294738728 803773510 987281420 1079822 806748764 85946488 891941114 784466968 906059484 591402232 401583020 159600818 838187954 574578311 90057311 352181841 425526790 653727593 139462422 522193118 514553876 139389515 767890257 588862596 701410151 297034604 925940610 328553301 2414898 117347183 966201877 169613363 811451550 718655622 26547103 780872063 961917474 51946846 715609047 627349043 795072423 981755210 623953221 243695740 833357616 144293581 863050921 517831832 459468617 846580236 786394067 489470247 723177229 843883817 577523530 156879101 85457862 278763466 538587703 907730141 923369960 195184115 198139813 115035855 137926287 95390585 320958076 887914161 164752209 599001647 560872766 95547182 143958679 840968222 450952606 648064990 428590374 356427795 577089771 588534143 280631056 117766888 850621192 324183821 850965604 271288393 369966154 564789432 254890884 172454270 754198627 38196427 499015193 461501111 354962608 532047197 956979567 260983700 661573533 547952292 784317872 191255428 771705328 271438371 674520555 632156519 899929988 655378540 608139639 168245839 496332691 501749692 907363078 351602062 965248407 358052675 883307324 475372146 797777955 148050398 351340231 14501248 703805139 371481817 559178877 660385610 3490194 968132961 55599933 561890006 409769241 520927261 494321219 495402520 740393364 718899947 896836970 85640664 808179861 524682865 722980480 586179053 680326988 106803615 195234288 189992212 66798713 741906505 742469360 35386093 983340362 793088591 337019970 743071415 519829225 255509317 530302992 283229047 601985277 483908806 972011714 890315158 714811624 423161814 998834019 718675450 405391288 895457743 894794354 821685500 338066475 917668900 79265653 652552735 997392818 658433321 293264358 195960296 15442873 680395180 464980094 551812622 298846250 454001507 833339929 699577896 111584796 256750977 429164103 105020951 114933842 269604899 36818725 915930070 361341732 782376763 730997282 856946330 101691922 477337057 325284058 524922555 836960042 834740486 734864701 886935698 52583950 995214691 839502599 779388416 923657224 123110650 269334024 744813768 872265603 311666720 3146337 241857463 506642745 200017401 202568466 555280712 985401270 356416322 871250644 151834796 333481474 620950878 305673310 514684850 786372862 493240203 491452656 631032623 762968269 240553989 656548827 481092140 404975469 165349738 199108206 556829206 776918684 916294146 157870671 548066577 256822273 935856149 807687574 919109676 869088511 665587553 364924069 724147578 190376083 444503781 301237861 534189555 199045465 981206593 268924688 970300049 150730517 948870702 691473163 161108544 633518594 850879471 14267256 831003727 137085268 576754957 343602300 25327059 996115565 322572527 940076133 670550850 867212593 391557896 185352802 850079528 54528701 819721876 676562287 539735009 252682378 280323222 547629570 778820408 805288650 238104439 284917580 935185387 52564089 797568419 968298756 974982919 445049903 960434898 146248596 565153618 413884528 229177032 663044985 281709326 759043537 865333428 523710230 503254697 167930130 861881139 323263546 430729143 864436059 238780478 757891268 587667551 924641629 10116307 355601297 37150690 167499788 907746176 138911446 549152042 852275304 377506108 624027774 601409725 806951489 272681528 65037905 419542436 762514820 667456288 528951986 167705481 895583180 672021815 75203960 944888839 235157230 11035953 527594675 812922161 46116816 741836574 654481269 97609431 470832928 871935830 550252197 855674228 633252030 97588237 723722706 561570750 67504126 550901213 95601345 272566288 608127977 465488996 436471506 380686816 473005185 327905384 324084607 694139418 47936944 800179411 97807410 148862819 447567769 605942126 268481187 876558811 129095510 407109308 444580210 630959485 775157144 231521205 605429824 301776765 822395082 779894231 995462464 635609965 743658466 505517389 56075794 867519791 152707000 873878648 226027990 136951937 602320467 26329347 59427267 655286420 406739445 608333500 989132939 852553785 96240616 81886421 748782195 747503381 183715824 134009823 73491378 972110759 479440156 635819414 268096273 368503630 231765312 109396366 892778548 197106178 999363382 7309042 144033281 506064378 225078825 592940060 403130225 528298325 245881092 804669665 132824761 999084900 696919724 635715087 368100351 73242013 724239151 728580643 768814667 740262629 79364111 715922509 916442914 505594035 382789582 473909972 146425140 86540930 944942674 552633543 270415090 27133012 248861273 775795186 364470574 464871875 683498098 855063620 662671001 310627251 147526167 65113260 329412228 141814443 334418623 855444738 665318078 673287299 388979262 693792393 384250248 79331592 651232861 239250544 521540421 271674482 746206500 230868199 919396075 802680718 422789522 289970533 159228974 165903439 384964297 429047639 819550657 3552972 842456542 98441249 207858241 958321147 879512584 832788027 438884597 420324359 778465125 175339105 3453294 380587468 588697365 463588301 991068131 360637429 787779758 545186329 213596664 639391724 712571584 532096205 404905579 578833773 639733313 510270385 313760949 743189423 956800397 799212875 858607375 457981123 542945529 142159884 455031879 391431656 73096308 285265104 133991091 26057432 331580339 576740134 637814349 109016814 543233696 70962506 486820496 843772400 842119493 829211940 954650195 890232112 131554809 950531083 312737248 892552709 21649122 150046627 23342426 868311735 546800330 970062242 206399100 157989900 906139418 241070707 834150903 186897191 640647209 454456159 19949412 908152725 153200108 551782952 594840816 119546066 740235054 743045694 517920974 750087507 492422137 256078207 466365603 867314925 262699822 119391756 246769849 756905828 813814058 359974020 691613595 321432993 427195183 591715062 525431358 724408519 389501850 341984109 370498105 830237931 982060535 810664339 490206492 204721314 528457324 345420785 398421881 503140061 319617513 19852971 177664765 134892169 693703518 319598899 343003743 198794170 128416564 750328437 267508335 193773656 857875321 210533222 339347253 746550439 429096134 56749506 8196702 762215673 959247856 646197988 913809998 1881240 336948797 410611574 2453527 379277679 269362500 944870784 614115119 235783494 644565932 419610558 31173800 544786451 743547035 494882477 374807408 164667576 102341963 590506725 971262498 658711108 689465150 297832599 946559004 853924082 953517391 96792760 676787108 297426332 645812883 263020952 290978929 540705203 47405196 345230993 834032475 192003997 963059664 641531202 44131604 738297289 823263079 650106102 896214670 678465551 555521744 659319603 928700983 267350609 873468379 618327815 438658799 214224719 169458048 470598076 748936887 991988743 84321686 947256635 548848091 953348076 529896494 104866506 459235246 862956473 274748831 459032752 80920225 942138440 417614636 525016674 570862830 266368327 271193379 684732077 122952870 985137368 390649955 416276997 859746164 728067511 440495417 582637339 155358381 648275586 957156096 459508197 242615382 207227874 780467860 187061818 947116548 497059506 703154077 740407036 837266825 278911002 685444651 381482635 845907727 334905782 406224829 499735569 496291431 699233 922040593 868182152 950540181 72475517 602564971 99061699 559128690 342367559 611113159 542222370 667907811 331433897 799150577 44996924 486937111 174728380 133587634 568349285 323231737 709598095 836955644 799418174 745946917 869884594 174033526 100765783 490936963 936865689 12495388 488979390 266858981 182287613 330446758 254805017 130670860 823767785 336958890 195470805 13659583 116590846 506091351 580540948 730060699 787366035 260338738 342088103 761512786 863035474 372022529 8219251 98035834 974966777 663535531 220386102 301181343 942721146 253850717 269984483 703612669 188303776 997552403 978388276 200547237 229941000 935045057 54536163 201723347 814311314 6150413 517052866 755657342 625091976 876364198 896637329 769757658 914897119 628232179 641625990 460995469 719734397 384316356 283567067 582781613 617034579 531111979 794956899 333699228 248630011 872468290 860816165 271793951 527342279 383273596 478535454 667389094 258977537 443582150 171990916 744065057 500775210 553826259 935605311 430755742 702141940 172781463 299075719 13783188 14168328 718655651 686047934 364115215 74336346 997069228 614406997 40210760 575265744 101447255 227433075 781717533 444342937 998321184 222214968 830154516 669405607 426115869 278075738 528746733 500750957 732482779 689396440 342766191 823431902 571426394 456222364 769500674 152232922 407310707 131253530 760091140 611254133 376756623 893176373 13579153 140834539 561739168 281150578 715697658 612396698 383522133 60759934 249775134 446790095 789326666 299658856 721871524 944063533 978785684 447788518 98264221 543179319 268189951 540382654 136287506 837877107 351336497 43803982 727059429 29205559 190911362 347620490 372194534 757760031 150769878 196240398 858320188 98364891 264081767 642022274 944459783 829022809 582278535 327814847 174155293 227821886 356842807 237467736 553398510 795117085 913674787 5735650 815246405 592279035 636847717 641870498 7980087 418167566 856373300 864797411 601537655 107108608 930203929 679428761 441873465 610624264 144555126 692486815 586405676 592554511 235283914 770526863 485442393 888721756 971039453 271760875 389306257 411789566 390084786 481980100 69352546 708358835 306745329 87958893 439265579 255633356 445060078 414226489 871545666 853550148 54874423 544033750 74516330 775839743 733943423 637463464 157910760 783398456 690058964 438119876 705778256 466267620 790204830 16570413 975856508 72163019 428065606 335060778 171728646 794606611 137001208 956603551 804959794 756944867 721410381 691944495 686321140 454361585 537667591 76470438 908286856 561043109 789909620 446834828 651703388 395837458 919717620 831914399 184142898 959709625 434246658 946739125 213314088 646256999 346238166 636678224 551536069 259223993 821366228 852566528 912732612 552983380 303662669 67915115 475590437 679771037 646794129 940628134 891686574 924012620 132900049 664761593 207245005 196195061 784031506 72113702 958682494 329479145 580008990 550466542 504820969 984652495 243495981 936667472 219664494 329485694 495908044 482113892 866516687 437126315 972353651 292080710 863772217 889328845 921368756 745370829 838840485 668551238 80647846 294296388 544861531 563038005 457939878 530232496 654314654 387660671 52920972 141453592 23286066 621530288 180723008 403372518 888681391 803753110 820222169 795258661 349035371 950373756 578136540 481321455 586761281 88910538 139207410 513759113 831145532 420646191 157345829 753302261 117951954 370783790 601572235 528341955 465471243 361880085 846190681 477266347 72329918 533512145 861958456 953297889 285568490 51900880 313506903 43583300 501482323 789137417 315346035 377962698 29681939 592860606 428333886 461024174 548100419 552557413 819086689 985085135 475612531 445762746 52538559 625862540 222530491 988856044 869964440 887779933 558229404 690836652 206886395 313329231 579909045 836447356 917375173 168005239 922305872 99328616 84534830 494922926 940939852 573016998 641895481 291228270 184951138 58814652 139246162 553451185 504295342 373626291 710285767 499660204 80619700 111770720 368062994 702983683 993152124 164068440 269495287 674425868 832716890 974414632 621151754 715179867 735229843 552539555 204735263 334851636 357848046 326308057 937874672 6667452 340097273 892826911 554426057 885003409 215916577 650432221 737700404 20677360 8245271 793444249 704793951 124928831 680355769 730521332 811846493 262702713 798339230 805696109 443483255 400992997 505365623 931738028 569300139 601325847 950691931 801432738 509028352 864242323 754426315 375724997 760463994 28706765 265319258 489040458 430695089 945300616 443117135 80930458 627360210 717009383 283393077 226923566 434126390 374739887 370770950 874925261 715560526 74194168 876895599 616840318 79334412 626788689 760951240 666918261 401116497 778370173 749771600 653970249 867682842 143496360 817822859 322104754 80215432 385302987 29039960 654540705 632120074 416313242 913049889 770885187 987390682 97535751 771996596 708096374 57745730 242482618 675650070 958316652 345937325 342100780 449180556 840080531 460927703 459325672 702210882 723989029 34572216 179540916 325603896 636219747 694473730 434093886 998130400 998929760 415781394 647011793 159120995 466188518 97069350 514492335 995668891 629370217 452730335 400039320 549458267 32303932 619919412 494188 177030595 357991247 730554856 439986076 183310690 251759501 697802734 665793523 726609666 631818071 881899575 598268802 709530983 408640990 869218359 638302443 837717159 352546770 156761526 475685753 371603250 728888061 106577511 918298596 151888954 166597813 658428379 925877830 226091965 278436316 598714524 399975044 919912658 161571491 920183053 768810949 897488567 340433601 672667130 889945578 431580126 798907019 663790468 757915372 301056027 571887274 6279690 730186958 90078321 566271967 438257446 441628034 756957748 490441191 373266182 361134034 292659185 819280376 212746328 707358530 179796901 760385240 25831535 30974894 57159418 848682274 653628721 916907336 548243453 825612052 723133742 226666789 344165436 774955970 117376841 349864123 726442602 506952188 91450680 967536538 259510028 878236137 392251112 239144363 847349245 327881366 283809588 78973972 172995215 1214859 969758924 366441323 712690717 651068217 236820864 162174749 260118634 324570484 418947675 69217120 422758162 701187575 74061894 124225545 207531760 604930576 682806987 427501998 528586024 800833580 645391919 528645776 383951691 252785410 58226162 793512079 806707357 281857489 821314729 494784445 582242885 448542879 592467907 183230205 258911641 962902690 889030243 905168901 164488835 741142048 457699779 184024717 687077409 865079698 881997503 381976930 426292754 949739145 525415697 442827327 349496234 343430861 307683849 32031208 2453933 324945427 428630241 913656693 833782786 272454846 372928327 533792107 402817448 941539044 439701375 752170306 697735534 379693494 607731191 264138146 883721613 76208851 514851998 171560588 843604753 273822078 790884215 639779329 396978854 429907616 843518774 652018053 342315103 182584894 709630943 673786687 582334142 213234350 228602277 7597201 708759100 853149877 76979214 534249668 49561267 147087491 34735125 68223476 808736532 444236696 108901602 164244420 482445826 306555068 797221102 53562601 926487076 550075794 131058414 619753493 720142236 403415553 663189360 636407138 539473793 900468032 559300936 168662826 537392308 819128846 64199307 823684637 196639348 66762048 42805935 956236492 109908829 274802436 92997834 833336249 912661354 201750009 337842341 843592244 521004720 377365699 401769003 423174322 555831770 991007570 617416560 237484786 638287924 766791147 126065460 236268693 156741320 508579458 182791966 966249386 778312554 22308292 11752812 434943597 208596432 916326283 555510939 325952220 342338550 238890501 947008657 969272558 222811315 754197357 98295105 878912224 823450782 819926910 623493706 468003800 680521612 331520547 809409825 697501629 852475706 749767640 520104681 662319181 89290503 781886861 675735820 468582564 888641993 761706560 726072356 504898577 896377941 536582547 709149150 599594753 532853247 111577507 471904064 942274678 631455775 711363763 76503916 636987000 356860450 191994299 539236050 447888625 608082064 735257808 160662224 542901011 655721921 246808680 679892123 90195230 831856518 494079445 972581373 384757991 947239257 248118495 797648009 965562117 524063402 652573246 248779335 330118513 423985339 514279945 470620972 715193448 631915963 778266961 843086297 873570620 205795389 597515646 6060484 648665968 442836431 986155264 605258650 805724013 191798604 504278501 947696035 79013813 562430878 574391698 705773141 827860142 411145286 269564725 489651931 16155576 706481136 299262790 777374398 270550515 708646838 869431805 502925129 657876014 221264651 871467930 278549365 481079233 698504320 141196379 605540693 635554866 554277218 108576119 404749957 569918164 104711543 220080742 752309698 730169890 137852098 479470502 896918748 773754631 290009888 561761826 469663133 674932587 764406247 317629747 514366145 353486344 833663479 112542191 281681281 772189579 828582916 178841549 303616309 723016656 466711242 856335439 951637141 581435943 222205108 239312950 309032008 885266641 4248364 238391460 606994276 22013406 907129773 23039422 23191594 249976910 186163720 142940690 17518292 460707861 96043447 766933933 309150334 963316952 643883988 93354936 948067564 450451343 705959605 760131927 750034285 689395909 6238409 734805850 120542903 553627558 652964562 615995736 242939721 327045384 651641425 530904070 876533934 118413993 976053315 435930725 48718924 360626109 486369581 188974028 282393512 481372735 418662025 396598332 466568288 559044113 398727562 596527824 933147184 159807461 965618437 328710717 669286109 261639382 716523051 454947678 361553214 724964511 738458534 403154759 557716762 869280426 70551355 382071591 160926700 83728229 428044736 709176224 345304559 396005623 527582871 731033542 98020025 237131559 914510784 734172592 507193905 969526515 441326457 494270294 730135248 966040308 35796010 931282044 268791558 362128272 900381457 465771655 985049518 240960288 32670773 473841752 290798104 577415660 434666546 739421954 255889762 642132842 613753617 120695731 49571217 824170345 306656958 897045811 547704604 228506451 99460849 733342131 433188636 997089026 289609875 206147791 745724314 88000394 83191594 352394647 586765337 997878144 656140791 519241878 932158756 691454853 86252039 825469728 302813044 797612499 914736040 73765000 520657042 645987741 226639265 882452301 546042999 164948471 260073769 309985262 842747421 33235417 477748767 852664574 649307276 613242849 46527419 53523377 189684532 140226658 582099876 6075045 238966751 520240782 747836593 972175164 64364219 22197203 559089172 263086411 538161330 148086249 33534042 785275725 667240556 244807150 963131380 857716507 54349250 410475369 401584293 874530253 274041097 87491388 876553736 452260092 837389748 314314561 867337595 904727170 840849090 134590250 461754885 688747027 589459629 246741684 989083144 691094687 540011366 750944926 28714866 536072158 28537087 397666988 933733707 36565260 911871539 846232841 522948840 180679092 745521413 423412988 47520324 161636476 894313684 558668642 146778998 283230113 175220928 598578247 454738148 451754865 593134212 147188462 100881548 390897497 227710716 50200668 326683002 851719441 963648770 19098496 265907083 953865573 828937607 111205435 337006917 55288577 755751146 609886366 281264306 180196639 814168743 117200909 953312589 856677501 927955259 919831610 597335315 121433396 395717170 417553399 667914253 553165508 724691496 809932539 564416810 798493495 536015338 396840642 43134303 655065531 82603690 38778266 428289146 418367357 66383633 448563818 518934620 129718041 492179199 320529978 86170867 515187862 755854428 454530233 97707493 959727979 365536467 122395013 177111815 526876725 271848771 207152070 330229395 996382896 1137614 495610841 260478146 704900227 401569766 755268657 234262849 846359030 351041804 172650718 97554899 35653311 672272665 917560182 775230618 433503249 424584018 580971536 657686897 529410201 642257468 682407485 321021279 900056105 228242171 11313507 437083965 969241401 338773002 138313448 161052450 534341849 41895127 878133999 75127680 590597449 186074944 394371019 898563095 47446068 261529914 461722989 304730518 991776021 184198691 631776931 972365172 193671381 985935424 757035031 721607760 264971621 923027499 74840736 792123183 59313264 785241754 980880771 640916099 694464773 430067662 107122600 659629570 516141727 382494409 393525903 309857103 349898955 750591429 760044387 148593749 718141929 282149650 493349960 747836330 343874676 517474936 268554321 521173281 959743332 82483656 47528200 302291702 277259685 451295516 489733106 712820615 336971061 356506351 87984741 853480814 79262235 94628425 529868347 525515026 701003835 176312438 752254307 628124626 363677397 719190198 418346035 39856784 312546083 268514057 489653371 149222266 369228087 786558512 651549191 52593571 64999992 508541506 784880317 5883271 779510884 551905110 188785816 530899240 327996485 406214809 628507340 453518661 508326223 152289809 645971162 843948354 984882812 307579095 590093877 196880114 845427147 765746079 53240329 328318899 575038293 71694581 944660441 377576842 575860783 83751366 403138837 901697821 958241026 407185197 957335138 704928340 798798092 830247457 83232162 28093970 139236328 970293338 232274644 316291652 201177513 129830978 139366508 275085560 745658954 578431730 962501073 168647050 249189296 671390668 59016980 376317534 557678561 703794601 733527652 825150584 365281963 744746654 14500769 179834699 663275455 725917610 686525388 882014402 442213256 54723390 217648104 115967723 642541663 943061855 290844558 788854218 996783250 372659590 397574283 505438140 520464867 172708378 447120723 553971614 782058134 426359080 759099607 829868213 59855889 396695659 380407991 998505203 787912017 275252635 201168107 530560629 622550251 96940460 700217769 794114597 58977081 568640722 854915981 822802903 355503487 754581145 528554135 29687979 22129742 894317259 180993992 991810579 927831937 774176630 991050252 691461264 97812662 34629961 293059547 136977279 70120300 71210978 615837230 373761953 621314920 413842608 946967468 960227692 852115197 900449475 487681807 558255653 296263415 154790272 583068263 405554643 88456125 231125670 286490906 267006899 975547232 227368207 980339443 286104312 827819289 805968654 863527743 551212348 552334231 472717888 955775091 115088646 822624336 998817812 966029596 278898456 190171712 417671903 412049171 34798709 340450408 935924730 501651171 774408528 922071725 158128891 159423222 876326227 403804335 261617861 672195283 739993607 282827815 55658282 466881952 740195670 781136368 84879696 587497054 568532934 94326596 681179408 765450433 106803280 916609626 123138580 29286782 140020063 126005191 902727489 57688587 545932986 853181261 443531731 758152002 185770612 95766160 126679876 944978713 744100473 131899583 80979256 814298922 7905285 589478780 818882850 785140227 942702007 871066721 751352812 918993824 28986679 557978964 799012131 437350921 120873454 297898660 335787294 964063806 633315022 132238144 624298098 894495208 715200918 373958747 274980056 972419357 588764996 365055746 261767577 516523576 865203139 673246889 455512307 625378158 144065104 804332700 587194456 959943849 285740632 41208165 554393661 835102257 706366853 87550459 946325351 260622949 568859447 269627091 602354932 528016850 468641611 756301711 647178018 983981162 809849694 7844007 739629392 914514354 848916690 841040821 466992427 95312448 792492147 627020317 440952372 838102739 805591053 577788983 124409577 775420172 407601868 190600571 720954299 485540689 48629077 872626329 669816341 349573054 933022337 658916006 266005090 507877129 193984763 283368404 189348782 190627476 963743706 159948833 914473412 327149423 628191819 781947924 472204291 754164709 154383566 214663471 541464302 924046642 634884467 291311154 375219232 646196988 133052879 671862022 68914874 832492436 957757868 551071639 21689425 850039963 35760541 411173990 563056171 33161601 972239985 512751380 78579137 236500616 171464936 194052713 324761866 878314167 288773259 431028478 349930578 743507851 144922386 425569169 676763791 927034923 33534703 160528827 920317512 517255078 267870738 837182719 727764510 707449537 353041798 364478000 587104854 434553989 129607241 225541203 860756043 180814775 957554224 764196143 703241213 23257847 867544843 792139018 469983386 151207071 344927467 81748817 918093988 660933972 928975975 678346538 678901300 649760239 575909340 294594410 760471355 302724543 98562201 704778209 795552364 547868515 128307972 76721303 530565456 647664467 64722621 980197273 502599927 784784423 902744473 462798744 611136877 862553602 421262811 156534078 177332338 75585229 637244124 408864640 325383721 753134797 346669057 400062267 211384857 776644991 779246360 733402249 791039432 272635271 457956203 359009426 231193452 71261800 770311287 498139864 905152233 337679582 235356779 896789467 132264423 81890232 71939059 296590761 741762104 385612385 28720140 882623540 48322136 173283610 680427220 863275309 112564920 936392718 192022275 491611579 7870598 947428564 896218015 71633636 471049048 117787893 567506255 135504356 818463966 657453491 935689830 435382982 673680412 528473854 577556568 411942232 751169434 95433873 337760740 854263509 982676583 802964270 428212763 375999827 642816780 798381246 844727686 42106929 416751353 585935187 412464947 905085624 393004046 592830251 395445060 986503887 39231405 776390404 697546107 760663006 112930269 828106718 628982127 741740342 786059043 299645253 187712060 579062212 723934943 637743344 723463697 459380255 377900125 838940082 46619503 611564553 647244156 225906663 920832566 48304941 642376215 733752086 446282507 694089330 326152550 322313530 501711735 449779221 779295879 432445143 733915940 654623108 537031580 976953576 477370464 372824194 846952079 803558634 907139176 569541599 65010371 705537455 871619771 231099295 767356995 74712552 575822632 933287687 811145795 937032479 694681009 1828669 513758574 952743791 770385943 20389595 716920161 530308307 667117624 665630125 463446940 698390002 441755284 171104265 895237349 196174896 91367262 917026066 925257951 847081080 848783223 541565880 594626785 262752293 674176594 115584231 530552488 649926147 770748397 629738163 7439996 881595050 635479317 137491315 205784876 637228442 915852827 841347488 649704893 864360569 409841222 504021311 74555266 547443043 499045850 693180010 554031585 576806509 185630619 459171440 889543152 442341946 48919617 115021351 910287217 469423643 710365113 552302065 351611252 863788706 836646633 854062831 579140298 804119921 128674186 40422476 251297298 25442508 371615272 553853618 666621046 804253301 609963652 618167133 973359821 676229724 668248987 894607174 133975251 461012294 482756662 684048262 824277025 828318184 736130967 832465299 245955889 34256821 335215788 298701554 400276705 271829947 646646584 169554450 901389938 906062704 388822671 629522439 916776240 201386067 700115183 878423980 205435919 192197460 776930712 631780085 688549881 828068255 822037450 367317799 586467084 843815483 776247094 482944601 690453822 443271186 307348427 182920115 24429540 167345369 818146772 625002309 506583104 928635497 655348553 261696371 655244099 728907748 906963303 821473676 562652287 63525347 734148190 123484734 551374990 86330330 144145662 379523856 625262952 646788608 625205237 236907460 374769695 587727528 568344562 200388426 388058904 263564118 586198545 200629389 924344458 196691165 938945415 733921254 720978316 829949325 66308587 711019595 16242262 196099373 658711410 375469525 575569283 987152535 581877242 739261508 301184945 308850135 957419685 634329172 897692322 255860800 962643554 116514670 897302130 276998995 110802103 990735843 183545490 365667295 494002187 922604447 704239242 354754504 182565376 416347715 809644812 639746769 412135779 709671069 565325304 202451290 94874366 4539836 832750856 523043410 239564305 1150124 394303342 782583612 772056130 422863748 619238807 300418362 985813176 166626606 708836899 337872761 685060876 20051799 171832243 282683602 843277598 857716432 682965063 814581652 643722312 170638796 172287142 300262464 842970881 848310084 710215792 512652217 175850549 777702029 309665784 463928708 959873020 516713023 854258226 518905036 343109154 794589078 115466159 447460746 403165565 138532198 883286179 266374780 582395635 277251484 751407828 807208931 897825986 130368328 265308264 263666125 560043703 66356489 593133973 892193415 611650943 716647098 803562455 360658827 635562762 123544038 741697209 703682546 848700208 585270862 820096407 28527402 928368108 268288273 930498395 587377141 220948330 974439511 881704806 181659959 584519303 482973119 32288389 281666917 390567142 328879557 302595783 582555555 947981813 939711438 298237899 197914541 550026906 897307200 518376018 396080311 434083302 621127210 182613395 598201398 269445369 987043676 974431378 211081750 884772756 406987672 137071218 949574146 552446685 949407161 705684181 996772250 64489019 372683118 84773558 219767095 487964391 210684417 925149889 264753418 900827822 140720029 370250683 722624501 435938972 425516911 472915363 634508033 887535038 267727010 929164759 587482064 579780193 961602933 175822238 292819164 940408734 419553836 221529719 308178564 753862571 285528731 918449462 977628078 280197366 515681519 385697274 616757116 503545495 818779142 458016210 379526306 941922170 456254348 690733858 864414704 164903764 898002997 226402132 667151746 792599081 297270879 340985322 932244513 182470873 372523639 517750021 427752153 988761474 915900463 529869983 708241958 267119879 180436325 782989553 497542966 617780254 410344676 367285796 622623058 503220540 49157141 470884224 936700655 619223384 74625926 972752219 277540276 759850111 111895492 29334883 957794499 665340016 866410349 799415630 816581510 182601179 828010275 809028806 847912095 901212307 376253167 43136313 176538519 589785145 399745186 537020028 902130548 810961767 552513547 122838427 925808644 117017930 809074250 899687452 151821320 352687613 201646973 444133244 590248402 162121239 484880114 55627190 616530249 611629702 945132580 822722980 955387006 666067119 344055529 655395043 914726281 114561163 179241063 128730918 852679183 56408308 64249149 956139966 472521940 433563221 512612028 140176961 478442057 47550587 259085552 887562761 118531049 645416675 883711494 779428088 741206691 716731596 408933890 939799409 667282208 409685561 528703326 570980861 975509683 706221544 173972651 164233418 640162949 441115618 188914013 37144961 921405511 657807932 668791000 885152399 692290814 590612981 647954647 883017762 463959478 461925263 254423372 347594840 118280819 739835506 578828364 742888160 622963757 623315326 494293979 745984309 341171230 679431711 497321322 807637625 944694527 253650839 807125335 33196235 186882717 811462051 240957406 481717512 993099088 111041575 243830535 861868860 224340199 911228638 529665113 575586412 463622044 851486637 689977769 451862632 64232833 910118840 972068700 143264271 447597093 606501338 685145762 57873365 265433417 422620498 504891113 53566398 773146327 472556616 684573197 95439907 226702902 814722655 810116758 580072272 906688426 847874372 346912292 693040521 883895851 754099914 373845814 276417522 913183896 326879939 233517958 85519610 764326859 66037406 202500539 791959316 16476148 164201767 990297516 506757253 780194659 249506181 668615266 70010030 812954894 283845868 985771631 703669012 104438924 688084385 716857835 796739064 952230735 579104381 219349533 760693059 913604147 750040300 994702652 669005063 577670735 195609604 790440968 773780297 418123174 549231926 111706025 189491407 142543724 466948125 47575559 745707828 997682654 690774961 673211882 503396012 830138540 724575702 306823039 767277610 872104563 535745673 318721477 257287902 141312191 619922052 335813091 214239924 97726791 864022663 485959594 553364864 94692360 841874900 394414213 315774083 69652447 990922535 270350628 963095381 540402186 752568265 909902903 674059535 783298255 865411376 111813496 198000686 419534002 603093713 278698714 744647186 44849271 511839657 84130903 349963326 956379311 266267166 419500868 575631483 255968734 358116585 282709944 419752621 528361876 822827846 507189787 520988992 485060715 459811192 152532102 464400706 711959511 740205558 150400709 926649128 91173752 948968926 954891662 79205249 240220913 462861894 196175821 803356199 951895658 790936328 513903000 34044204 101929291 883959150 700043944 763853408 678413601 75780016 214347758 547426009 729099843 144849430 302813655 400402488 25929804 216611608 816877357 321790105 231317662 966020879 531568044 233169162 276093775 308462866 335556505 44619390 925044005 603592218 195718445 22247129 982104313 784678811 447114992 279499697 824230536 9559982 761676866 648351241 365125399 762369717 46923112 276726306 743724360 173098292 333460180 663510656 538404949 991167041 121795408 23524356 856884784 919093740 304971266 400757618 512137132 204340547 306550429 199524121 134767295 776462560 471619739 959287064 85941193 326733791 872262762 204307115 651246768 476910600 772245867 711345752 915820541 835629200 975071103 454724007 887725426 207745497 167816476 286725018 860285854 637476180 383291420 80014745 972061819 722558899 377979388 910225143 809726024 681151347 218822423 693035445 754493301 738451659 242650927 658439246 923680822 815532411 788621618 11957725 217887170 580558612 953130492 380222195 262253565 402732210 928613828 334103662 578432350 719997575 957188795 936231544 959864885 3166927 469773159 154242338 925536761 680120425 60009900 289651166 544629077 905452941 309918839 494255939 277902887 782132801 156285117 602334035 319541399 173004004 354066391 706670564 80151998 50301914 149058440 347696864 783774639 863583688 938918797 251598988 127187847 292422481 240361728 247466919 830136315 980088260 456769060 838652292 151286023 362250801 902761287 538658621 32987269 179658238 862084262 1283229 140200874 424976769 672185212 719236794 103257347 985191045 585012640 496357076 2069713 953159438 857639023 499132673 113542937 526638192 492332173 456356422 799484980 577993538 103449742 506011158 650540054 549073090 40723288 907425281 208720109 393145863 860416209 759482924 230555415 215203869 863252684 721328840 575993757 461435269 310391121 46029778 806036166 529892772 207668747 462496183 83670977 807378137 213208667 216303723 738880527 75674704 91197449 610425514 343006823 696920278 641123894 766160770 493640526 492787603 555340282 167751609 369068863 310747283 939264034 877641698 170842347 479820834 652399955 477706738 935300716 247396050 307087119 720463512 528109180 961706104 928385230 125330647 575738655 537776789 62555303 970080039 549991333 983534638 424543765 368572472 377151526 374045601 231030173 771326471 542905570 924490297 296005887 743071709 822345734 183415803 995326967 390516764 382375535 171126096 356929295 498967260 806355669 780965877 856143753 739794023 77660162 165477547 560685674 661496357 947678347 942034519 142777023 166702528 457069601 797504753 915843265 559563742 326298334 328305339 45711726 539527036 830437106 449824451 869229262 284829291 202826884 638676891 261663227 158855086 477116334 652389065 686264306 664422925 771889300 696215781 680470298 99921820 88857501 371591307 207028948 512194754 77616335 576823539 820708618 434072881 363835511 990261460 186932061 454139760 433879655 326623385 971242405 153003759 942757455 920556820 590961268 16830401 484414258 719948234 859627073 739501416 757489276 873311944 295867394 392824447 691089311 366258425 699122272 132117705 76235344 825575253 3104096 632985529 289680705 461052797 27712668 869801439 856483992 95012927 689851834 890094829 927078355 517750815 163441942 960565866 347880087 185247579 653728278 369008467 272054961 259392873 287249958 572891913 464511917 752695989 331498257 22287939 477830987 94977735 248888103 974149820 488558770 360941859 495215929 615125895 856059636 956800609 271518634 669944201 604305400 859349378 33906779 524310673 238778543 351193266 424312023 858176003 444257564 974402138 290886492 817870783 318704675 882649570 215729743 467349591 577359300 631747411 816677590 570141577 874898866 377108721 716991543 449651569 40133352 587235473 445560421 388430140 600644973 242199526 150080867 590950009 472161829 343392839 187863582 600246974 449396916 283811989 922711734 584009387 311240620 657915906 863866006 486662071 462403557 321211193 233246722 508160060 309784611 431162028 604130144 33891 375772318 921362996 938505051 804760409 629293505 617688973 713785168 875450314 144799918 166545644 436085947 335730861 491724801 262658175 23316689 969974698 177030235 544744186 99555554 496696252 229589417 94785731 969498765 745778902 1661225 182903544 996336342 406790577 840638687 367541969 215294410 171991044 980050727 16326273 382264062 227742172 649182306 859373617 930369716 998222748 841601984 339436326 228853075 563058890 653067223 92571775 757948366 3638923 521273287 495740035 367179382 122782878 463764844 789382482 397678191 612463848 33775685 474047985 466861991 285184308 394944678 712217459 786657560 820267644 570641738 140104446 76500208 453610931 212298049 660629128 360677955 40255555 395695631 619140033 606920470 534790736 472769100 906643498 791515745 939991719 426104502 61146169 159638729 71609544 896187598 608300623 13884629 266197432 43941321 585774185 644743404 136203818 824717126 278138631 890484995 576391892 196104 167798840 141621439 169056439 862507434 896366293 982874783 952004919 418339340 392747651 970417671 900282097 868268292 844214160 365172218 220794438 183291085 616807184 443324727 240707668 730322749 622001124 676078779 185327555 633633460 883277834 109627834 416323013 722377478 430417075 724591412 847138640 188377142 424105247 268049858 561629217 442273625 723309171 422162852 843814306 671754760 303116467 964835349 667319508 112044745 87003547 949992746 638101870 384642483 377834060 680218489 111678271 882399049 319571302 345470115 814983855 513505409 769909654 479019651 485107559 255927076 539507808 576675640 360175605 297002669 136417675 274396604 207260558 926419064 521526153 95116910 339360666 133128898 374831278 662820817 860994391 691743144 372331441 24583482 650827542 339847237 429332724 422746556 271282669 854191794 486664673 266225190 734758731 979761498 12135148 476801318 240790207 681346781 151701039 393498788 26417969 741391181 484389388 412690072 248215351 737327957 100294676 302009553 345517864 194572082 823404587 202370257 909833697 181418545 591681259 847965819 296929523 608107784 280951736 876747061 775266148 941214448 75750714 577296340 1776255 678080598 873033355 226022511 64433827 189211184 361939632 420123938 478775603 17140866 77108530 831016067 578429193 656234744 182599171 179711254 564060537 252666172 876723978 182878085 289201065 623773006 308708330 96790015 580215442 590715511 506891072 764719627 453007599 300099379 680387070 920651695 792535689 199211804 457088135 314071265 252609170 551595484 349832324 597369711 137700522 632785900 241911251 84642905 948100324 869775571 826462256 524831195 961202864 308271598 104064089 400423610 197584052 385726182 922771454 884185730 702448487 488388177 681186638 687759129 104020540 213331859 155498540 513676780 88387543 66698690 2056390 691635747 146092405 320473939 950195043 682874092 152441834 581265289 519141280 134041301 495789172 74924580 588595160 592252149 649583491 268030753 619370079 343999089 223595544 633164122 335226351 911940774 735855365 643319443 915512174 119356357 482969603 402742821 661475290 519940865 658271901 72001932 85876162 792051796 128149425 636781247 494836959 172378361 647951987 502454019 22081815 471838580 670628758 609704930 57290792 356411210 606921244 732742772 208243877 346352607 356314389 921505809 27824920 783090006 42710234 432017342 475322322 455397 929219108 848055396 374144718 64369876 765748201 103353940 669929891 274605009 367892721 216585801 708768618 680484443 721545774 232071762 767372862 287312735 834810440 490843304 329763322 798428163 263416187 689709740 245831667 77471599 256486871 885577351 167178243 962508096 626564921 328431658 687502029 319511380 175922155 732731917 702996927 752293111 242595139 520798072 223468234 149837161 340258697 501830124 907030956 875943901 177553912 735617765 62280061 612147470 806076714 504522985 19308515 882113012 71782472 303262597 753604370 784137228 304654404 482636101 530265345 894266701 460357034 268512188 619434840 741895226 4423865 561116885 939244281 698457752 525315816 420194543 665535118 178722212 499229982 92697330 35862811 641536262 237465067 819947673 37584995 935382499 797826420 855858523 869832738 881431703 529782009 351230365 427346410 945292749 299445373 281886317 492263506 335999200 919055381 526943075 663446072 41905359 223690209 335315064 824418375 537920934 866326348 857261566 495002212 545684926 591871495 444294122 826103414 903196425 44355606 427254825 537051678 36066555 752637467 345549003 766936760 241553459 50983193 682218906 365676068 437177509 53907595 643766362 929124286 569849352 467149917 45971234 84269308 96882361 401801857 293946646 627149864 341951416 171541161 891713742 167911386 776070334 493547749 650463816 235893307 329678351 154299544 45538887 622087438 713617613 295102472 121479691 44762841 368315562 235347221 473421461 523304443 846588293 380487821 632479176 232471067 335153823 831507850 109867624 764334627 732512720 349667113 965279028 47168197 66177952 182667473 516610766 169742922 547466245 894840808 809704854 440407346 615945601 582879615 11694447 902627036 763462409 236894575 743206949 857635493 529068647 999024319 937074169 157417300 91294576 923999533 591675283 809913703 205368890 630116946 220446111 826482631 272002373 292498172 928606983 859506440 677163784 932326744 350817392 185626723 6106941 491050818 426766198 520128385 248737098 878258371 569698859 919682318 581859837 571376402 804359540 119950663 24252449 393671452 44116508 791881204 86576192 456866250 922306032 727125821 171272888 316093185 90756433 24188594 80600651 970852950 145341347 52636055 15462001 27862424 863638334 427450180 130751734 551211657 295565027 628599470 808754003 660544435 882181800 616287751 562346779 313223280 742554898 580998928 296957120 354161177 49324484 870911701 95389194 161736033 553583340 917640365 932610852 719336066 901119758 751309385 762153899 703455421 598032975 77101121 951776130 793341091 36026385 847486708 575814374 150472385 244001103 3579913 374753782 921872170 581562081 476503007 142254804 408040086 390508217 282669630 454918660 299829140 411766984 151368610 8333646 999602770 117793406 44763422 243576580 248850710 712085563 100688306 869158012 250139782 520147897 301643809 617305683 828627682 174108438 521449955 783329988 899301400 423917045 159861390 5081493 576745296 891413234 399377504 372853951 229494294 501983640 713836532 484114378 42298061 135335237 49539235 284536789 995842086 951491375 627171341 41307309 769088038 65716930 14966339 511244967 489343847 84664959 101725056 662996232 950073518 185405698 447564790 618823007 551452008 926234803 788988591 362245200 137078708 642641844 150807448 253036849 286397573 609139780 805279052 210082762 649911979 19059510 303453577 984424522 765661588 929365341 407459975 466570984 779959715 835883074 217345071 497391178 437337585 690146613 283855646 20834611 227807978 515744920 585125235 828002877 556236723 494271133 563968358 462176991 505803721 700492114 679866323 926224144 340344380 522277381 542416963 348283918 713131697 382511730 650102741 431311217 874872527 787746574 88158798 422194254 416785571 402410241 295085742 131577039 248586579 406400331 366117777 187312915 672665832 431293045 920389662 998890276 108326284 170315979 891099567 162361827 608299492 828474266 424249637 84170871 199401264 318138031 654438645 584038210 220101733 366506066 630308711 690141463 751192313 519589240 914994197 111050975 607747702 235355190 321638730 620967715 300690739 553958126 662348018 835301703 151623212 281787652 234888093 184971990 361879095 646354279 162492675 44138369 260889128 29139744 296326610 166664734 39372364 795675029 915229561 988235982 227556851 877480330 118593667 179209934 700985915 672308847 928222302 466090898 48661931 436318836 746869220 350707728 857796677 604213365 492551195 737335854 218490519 113555003 32198659 148047115 702548167 776769866 707768607 499155600 930295769 855633966 864201234 442035474 459942058 481403100 411575951 930279027 363903269 763540091 155362050 869956528 489557908 545062215 366556353 209886186 403112580 226814004 379873848 50762860 292154300 88233982 17894461 726658054 205875718 171009842 611567350 345409019 195260292 85457690 125003306 263698041 788471716 923206175 123928598 621993752 588158448 595030000 708027700 416817370 321036531 512912614 684392065 923405678 598037013 891624257 122297736 345200413 17916754 794702607 176752052 379913809 28630726 561033776 541761006 850362070 14311674 87190831 612201052 240135479 74825135 875874924 628239705 578600031 445163777 679725090 181587180 652195159 350709370 781552746 462802761 714701165 132806844 543274157 276336948 590977532 4029273 754726720 130599276 135371796 399465098 975222371 818365909 541733111 781858059 585899182 79144519 992661762 96179039 326078412 949593666 794409471 797972179 839436107 153850452 894275781 852747617 112347900 532761905 551498047 854127027 658662296 760806398 738716287 259409363 666732097 973350552 689356074 964456338 517131320 117461104 35745101 619152565 943179700 433052173 974657098 252750405 233317335 852834596 107522016 209010135 604631819 106627562 555310408 75011026 220636738 903411951 984802853 918396674 273880788 837792247 638689761 377595061 72818807 704298210 477210573 536686808 279789823 707456803 919072786 799014359 423915735 428643023 602156928 830442559 154542386 575143210 141061878 825386252 78107497 794686546 326534334 494596029 175987159 386819531 503911798 73429950 413538564 716906014 895255674 331846854 58849867 746064816 43558911 656299300 234725780 478283159 230323654 380332158 394398834 14706688 182115194 708361342 652069821 517556123 161764038 829530126 790321252 236862350 721505596 951667068 981003478 759819190 650938808 913690149 482801621 492740138 522266041 329714581 572780918 199087173 529446769 57354457 374059008 800922405 480162945 954263595 84414315 925020551 603561799 285533033 57602531 696254124 301395397 501048343 718815243 150467522 735169871 761050527 274615772 612478765 652915233 609216774 747999062 287494117 251505731 400256221 26539512 17523094 445508902 855577261 225965832 865961763 893142960 346726794 400336353 463119671 768062220 252386753 318132789 882656245 44541401 388093240 75672092 37373626 735753224 346796257 269182123 666195767 259530992 213281144 557408093 400558591 885730807 739021041 258062520 545624872 747598030 854662692 985132789 733325375 770476197 682644980 372503544 754169499 236310716 398540046 107976628 578277959 700002963 883986764 285053377 576891125 135541909 281990396 808609458 829103583 326760949 908835068 773974509 276002398 170363276 413717795 189239468 297153205 492883292 596036843 171194808 803859675 168592253 606988061 831077109 614928910 535510518 39040903 3818678 160429100 66222323 658210309 177251140 581423239 278397547 154294687 830404731 299949305 77756517 786836049 37492779 612023200 152476816 863029176 782078259 471085864 448620683 470867138 9974638 982955286 390631780 567709409 883908470 396743849 44792831 326241436 617140293 299692167 969913428 626632135 706585659 849862389 543488963 448741771 19625927 612010722 357157857 475394610 922418257 453389323 663475376 244443138 202602394 436814442 934162495 714711939 533953552 14474918 749831000 283459346 728263524 525355527 726903093 117014693 698326596 762007163 782667265 530690916 218091042 141961785 447687264 587680380 858012605 102298316 552124252 999204482 581158041 459652998 725056228 401462735 438263673 93069979 198607762 702342129 170651498 366859220 222013318 95358170 229092368 73381753 893753445 934641198 616374371 625942239 65680826 695222723 354182848 89267091 894305470 914207273 186883085 294467122 668017680 724437792 844761260 962764245 400055522 898464168 139245716 799674768 466423251 17037649 412380316 799832031 508224501 416456918 375420957 696661805 730030847 793631515 322699399 487617218 811942083 969274997 883127129 91112771 924806386 484925417 549406522 600884894 67005437 80814901 171316717 761919132 377538058 998491292 472427364 235685721 946614110 857966657 396786767 356239647 511796748 329363163 343861787 35118828 984356345 194284748 328120271 456922299 82777501 827934825 965737836 624641155 707454716 12004655 103227384 767038571 855440236 230510352 457989630 971856636 669818970 250862449 349841099 384959743 414803944 485122394 927272448 488331345 817958404 331012486 725800747 97631992 261982531 796547485 466407723 885662852 461881235 432409850 95318710 175325102 547146312 256511889 102600063 504941880 794940721 501320208 805025218 446567749 263905920 73940442 450088327 160900869 544729301 343271925 97672122 761983389 963440336 453871977 217194899 625761623 388531244 357221429 949037719 340057094 5841177 294028414 619601549 898651045 138135788 565415989 308200541 875334696 122358653 99468516 760932421 506475672 809353244 146458023 955451471 522637255 948097857 48436973 246341844 577665252 218166488 894250345 647224393 343350686 406234323 398887176 72316558 902107144 739630391 549451905 197118039 90047931 132451191 726492357 407774012 791425899 405394961 822717139 459458140 458697038 715189218 449971692 530586463 226142196 824531399 341555884 250300049 452638206 318817277 582754147 300940046 631981094 72016392 379675417 758930106 808607688 529451232 565068186 261945697 895646827 654178367 820603046 663337135 590359726 235963921 289185315 576489377 660907087 718600520 690518024 355792247 607574514 533012059 564961075 525176351 326306482 234979326 386924371 325734552 320951085 277678991 482118559 832736235 978849978 532271709 127955129 245901542 834933310 398864409 992836080 231735603 780188876 957007134 253965355 639358481 408977860 157749024 820424970 515496711 711545118 71558126 635531165 402394279 743534238 133415437 445553188 531998585 388853170 135670412 726727899 955697525 28161789 418686854 593612216 477954854 698362324 999287036 175748751 23234677 563492798 919915491 977721045 403469793 947437683 527475274 822290900 299105659 675683550 376979521 298723559 252261100 278706159 795247019 358812724 558307890 385881660 958397866 416196570 726985931 18719441 799656809 996253026 193423184 978254902 234626241 819936078 416460697 382382723 216162470 310116669 716108464 608785853 908162612 932049490 393301985 824491784 330498516 108149821 249133684 893042822 829472097 922951114 404498319 183189081 43422269 797656230 260797968 695551511 299786802 681170230 303573992 501277812 743702864 775586402 309313275 767577361 218106145 796421263 965334140 269888744 195753184 203095767 723626121 124705848 443685970 443534302 524645780 191987100 954709691 237997577 503468697 141015676 621319145 782453814 857207375 765021339 279644564 793721136 326067270 859189127 989546565 919795168 684568803 152087177 960879616 130426875 573128384 457657524 140033215 372965286 631510175 978077778 242404397 343946986 358872336 650084585 432005205 435694440 445856065 580549660 151531188 511362686 845350361 532819826 767280713 422043426 836993678 909065136 645855929 269201847 273329152 905101451 288178266 676301073 838977850 947677731 88968409 310332091 88440515 84686592 922533579 583986437 687595370 74330841 503846355 468799527 348785557 489684235 211403157 68202314 754464929 232534345 508299703 137623562 713403117 482170418 579017634 366195085 152575451 420719027 353141559 571758680 392630832 995040513 425965860 253062301 92737896 999361412 176682419 531235920 748605799 736200870 240480455 189712351 509724982 559516294 128547729 458316015 36370537 244650714 178297867 414771221 669747774 555927104 966472272 712801555 759027668 180544370 595859071 42811049 835132373 658262585 453166765 644070122 142985156 970343963 519112860 826654749 687001015 851286339 754931870 27704636 343689259 802368389 14899287 169981870 263140305 390235211 523187808 362027142 444948701 40925979 469347601 946271842 412244969 244552005 59629540 578661926 121346909 573346199 778586909 142994469 116996238 936903567 663103803 349587097 74125734 581802755 111027057 124998677 576511638 288382649 910988507 697903840 272704529 926178039 541468203 609673534 429020069 864360011 849301320 590978512 975657001 626674797 817959308 904881926 582512451 206361870 678817490 725463494 953328019 43692124 601521282 764528502 894601433 957762953 822117977 66268129 43152604 642489579 408633839 783670591 612639983 947006881 873125108 507254304 511588883 554632715 53242367 737214521 218474590 589494295 43956332 653526363 748832421 832203160 75471903 403275950 386671691 74337381 852133724 812500315 515733844 348591307 247328879 534245239 977560414 263349242 279772304 97307066 522599740 130489797 303779167 527966164 537875657 458437945 393655821 775923778 188808507 543236234 884620160 594323174 910673348 786920446 716083075 122861561 810165737 766566491 524039969 92829843 249144701 368633464 392039796 747311319 159588191 572694812 294568792 262050025 367372866 130987126 276800806 654350176 114271780 896399034 106393759 4240106 249088983 75698113 27135091 204937841 639672925 422520454 871608149 469278784 829806598 870681549 604867101 68361036 137501157 142705176 790226274 965837486 252769868 665282046 87017704 426257774 927110540 697187104 115719248 767297583 112622070 865549344 873280878 172343647 587116466 222053165 278759982 333126112 381603123 607470280 661895356 27578438 747714573 640329887 633065592 701515503 967124315 332137023 792207190 233040461 430894689 997810993 872369028 676902568 856291935 734661183 88681081 419042804 342738514 974470289 283423458 744659193 987904743 267511771 146140630 806345868 204072381 691492711 201930859 336006238 229469669 550345523 999132547 198548960 194628760 470245468 307597150 743647329 191021383 887091678 106241175 39925485 328212762 334857196 546972017 935827102 197170217 60419333 498901661 678034849 63861460 133912842 238557628 773553637 648983442 204103391 193175232 319591084 449077839 607128373 248066714 352076979 621941906 938729663 532590846 22454705 93129215 358539203 534350927 911591111 330449024 952935330 738649558 679033841 707345107 441258068 947714549 526871256 78538365 60088488 915307711 238110587 996853107 236791952 125271330 82273889 864032376 958869010 716701494 364004506 204617777 640166752 461232386 879592223 939092995 550657808 890330971 449829149 79734821 912969366 45215415 594568159 104271890 719864743 347382026 697332361 728932983 752891432 954630535 291991039 395659533 283829673 431920319 158866321 712255878 568262617 657455825 402813423 817530559 337866964 194686539 231826384 163302235 738249286 595640816 988266576 55921016 698347224 724054353 841162204 394645420 399819307 140624380 602422817 532421288 181467687 99626774 877001732 880799777 338700756 525953681 613557128 770126322 845223176 823118046 461295129 454880437 743370043 112759100 836804379 300989802 583989860 859457652 279686265 998327283 4455121 136237295 627739103 405532735 434067024 716937346 312967279 223222482 701242744 930479961 340725489 550338395 893699864 792180295 187210265 696143590 84925175 919831711 590207736 698977211 17752278 780605499 652917006 111728117 877013769 656132954 527670895 982494790 314032667 93445880 898061730 950741637 273171105 882624459 507671371 980860027 779685632 279645608 217457485 52534317 447803564 166352201 952613702 642083314 992645543 452023891 930755397 191560713 130162994 399392437 299418218 93083979 856584338 390336700 6659437 313049700 56516470 223459556 420763108 363106214 522041933 482524180 302982436 248786016 438731947 914902329 654436562 778581271 772017459 348018678 83171198 979230035 148682168 901428758 472739385 775813356 965355496 576750602 493196293 989704227 986833150 696085569 226280066 640143752 10525538 853293871 350491477 679038304 841110834 101973595 919002681 319326680 883780410 37589491 501500396 696628681 425503136 785523915 887244176 256436467 942012933 435358480 207792660 821953098 592983063 525817258 685747272 347109664 400502754 539595278 947188156 123398729 788648440 67839226 617621293 487146233 597535737 819777357 864535955 230435997 314919511 18198049 815179403 341158379 981943389 751383247 785605534 133396287 316997876 567938919 284171538 281507923 993351616 508205320 935987212 408462904 149826579 704535941 140560513 534420232 79090157 108736768 552840088 778359547 929864687 474151154 508471891 788621241 919657376 247657350 251038753 971164679 404715031 364658961 306293085 558344736 749000058 637381010 70678286 405701756 649112279 626659254 929269819 976825949 758283121 739532690 94793269 662139855 629549871 984024241 402772586 210329057 272156992 442584857 336993148 85607510 998097110 718189851 935013946 641564138 53234183 706664871 551044997 904263270 967533976 714691907 970496900 806354143 914470047 993010122 835832562 424317387 921238642 255736409 855961188 753227222 995687342 590661169 386933007 866346192 851361243 812920661 417291596 757113271 474320340 557941180 959779646 110127651 913504647 574966900 324917838 578352047 525828082 812952930 265154628 247354736 492029424 326505024 693866928 502589007 112829148 388074079 231063721 696673302 312598023 238108569 561115533 386914405 957435520 757742079 311196681 517102010 193587678 889312196 881289438 393036825 782802780 325024474 220735877 184601878 931382272 231351843 180855647 317111265 482301338 686133418 886557002 310362724 882976675 833604494 189269905 519644556 175943543 333550220 785874731 499608280 414644313 175141796 387802282 619730667 259608546 845558690 312945139 887844199 468651771 214450070 909199923 311666332 278024285 423929319 757886834 226258309 656604336 118403534 588025879 150586090 63543318 673478054 415320118 171802700 115398465 867603281 177555685 580634618 537790912 981607034 94087991 617413397 597010427 999629004 947657570 832982267 574087973 106167198 300427658 215260962 166989853 667945821 611417548 456644929 800032001 79815612 80107450 268908354 640229114 437090564 789638575 191758230 875437798 370846548 599483326 955496271 21038456 343180506 636829001 272662646 414384255 682234387 431937221 895770973 840287478 50908605 602801827 748863278 341449996 179463302 846650285 374763548 393081182 191023017 57051985 637960358 297273621 472845430 684943379 301239252 111520577 983010635 772058518 530738956 186447531 943630597 719102282 866876390 306884763 205657310 567233300 281188255 718287473 397052029 121457935 180636422 706037406 374202743 67419394 293041846 353083543 345898068 379241094 812763419 505301621 991571115 756328823 987100287 562091544 875844092 210399155 763877065 93101435 207773611 435932906 608380225 808652105 910533711 206919814 941870790 335402670 759123945 455533983 422586863 635984025 540933694 897040644 757516996 234250876 798104658 113196408 993474930 886398043 74006823 669202291 80484576 794947555 873564622 178146653 80321521 772344119 521857980 541558613 233474103 137316239 229932118 7564888 601522095 394220193 667411080 900401547 798532147 498753011 734156244 970125578 105600341 966885914 421281948 555296582 254482219 858725938 994735048 586434025 313100692 322956366 506468887 349444427 35751028 682622934 414950313 937206740 84364914 328403057 682357369 833771105 267167598 110831553 286266661 680358176 1093657 618871491 421503122 438406725 497948983 312789557 415155366 617512831 998327937 940370495 900518354 806346275 946302694 364942091 695989251 322649390 985872471 939505411 437732659 250969395 863702563 861485816 109915172 454297609 193924503 620563364 877942661 323613468 856889125 148433439 37290357 455127013 436710169 272712236 610972286 613480896 368815070 777367150 42365715 242774325 4437454 277980226 577688943 746690801 507933196 990994742 87027424 145018095 468488509 439546936 522765910 915211255 60502228 462032067 149944692 749546251 125311803 319675153 76550611 581778373 551992308 77755996 59814947 775563849 618463755 288562524 21293547 259648679 977649419 973189140 232122370 972286892 484739121 701728859 292871865 145701979 944315650 69671552 93897212 916754823 654865645 597441066 646229774 945282000 215568765 834514612 334766361 861581532 548940891 305201669 180748177 967643415 152162985 996608318 344713040 710872429 734034946 204354161 531405338 882582081 19429664 837236686 3403498 806177484 364302558 605392746 283894507 571052202 204568199 834119899 780296852 652228024 714628525 43241741 616771867 718683665 860437896 87713877 828653952 364693922 278144154 738284228 963100517 830125826 638469989 305059631 458957388 258232176 77926254 701815028 225301370 835761575 13005601 501382328 576217414 814235243 87504667 942501940 97962708 662033499 670802175 600828849 62537596 559203850 686123159 69505161 863393656 889690230 593077296 256996412 930055904 554843899 922907226 517573254 922675169 723309333 523541660 940699085 470137107 580788103 269112523 381382516 792785525 759595410 899111386 368193921 126781424 218928196 56018834 327091699 52619498 477874005 19129431 892152577 680651075 949879312 215572208 633879608 459867 303283166 602713058 696236101 966009712 960853141 556304518 556688368 685444067 372779555 276230424 296300743 322483361 289310737 234468729 672445375 620996191 418204973 159338801 540577709 697765489 36183403 722493049 6582155 223774037 965972832 264383307 774173739 589341932 739296757 139866869 531815994 815196654 611793059 499080518 310719013 289846489 180558087 565389802 412433537 101073046 121021289 812850765 922196163 267564181 78008933 636238792 418665239 16183394 935327707 431067876 212081228 114062318 10512427 650880633 485270548 507705565 735442271 142328956 498288084 89128661 181115344 804915728 209796393 447589436 447106373 369097189 761637466 866484419 255886414 673575972 181428461 739626294 846430654 81469963 698704998 559405811 885925593 719870211 253278755 38532692 993605917 981362699 413076217 309049840 315278246 436761167 575850293 511895161 274658801 808735600 639622563 189512063 280621337 400627279 358363459 375306791 89265072 424171109 965725520 893287022 128597618 161651287 121064447 787175082 177568463 301163073 361904435 930808204 853572196 620622040 654126067 77954776 786500246 940959142 847254294 482708797 704893810 387421473 203124732 575769901 230939529 511958825 875163062 375723044 127651177 196586121 478146722 364636082 184578449 153899308 469113749 576637175 576792747 523347386 435593898 190638585 196491876 465149543 103725654 734613806 825069293 98629427 991638513 50100988 804174538 398549680 235120430 167392591 547078649 947093216 440834254 627881472 429352309 979720806 190111478 89216152 928335518 728237491 80053435 566836368 491947281 593629063 168612881 748594349 185717465 933853381 346271699 295199867 522046920 742442722 243275580 77898891 317088267 651057542 359758594 113010410 54658087 481015501 489545082 124310085 147622357 149683538 233944397 486465852 260932213 930821229 822584588 324630538 128879273 996772851 307621125 174436365 791835134 65380521 336661323 462857380 336789090 669995410 66394370 494816290 947776455 318039208 210123631 733437575 584089189 841849794 822871891 909707901 229456916 592949308 687565969 709963953 248295773 728311397 364437031 152498399 563594646 618929563 353916072 227380002 182445963 835678054 876610451 575397830 219448142 998578052 543498205 751984449 731507205 812951236 921066785 243925891 517657940 47528440 201596661 416225191 418455806 926013841 63012611 100504982 292027292 856744077 864455699 415358125 941899054 210923934 500585635 780447515 602054707 697229480 958505558 234580381 52067333 862278631 638203321 656731179 700833322 911028992 915575532 167677492 29146804 657132471 86587094 262425648 683418071 85302590 242839331 315377820 891437873 846021995 102655626 852162744 925429535 901598894 383712818 529150918 35499428 353955241 296425934 397911322 400297631 384275884 107146099 58230700 355198506 458386793 676124834 987933143 131912867 833784686 763070058 991694866 378153865 641045979 27194025 196928015 478095392 80161618 790082871 926076059 649251511 514516706 667336894 944918750 161519314 336606799 730158830 49307676 451974407 891805618 606707066 780536704 33374949 317235536 935708491 607502846 457610844 153554676 256567187 835827058 966792833 249475466 678829903 941649951 68461809 114572844 543142211 168622233 500168157 985778777 963311110 923264785 171476483 389985318 351320002 321195558 677450852 176663930 678627104 976980763 548477046 751768968 99610452 241071688 894731982 963193972 276327979 787579307 693364951 353154487 647886513 531411787 223268500 573507087 437934828 457332731 125619028 522435105 336052220 507812664 813089040 328264701 409118896 9922399 864857570 563336313 404601950 742577737 980348651 448741017 522222532 129919727 10012238 935946525 952920802 357270826 339310830 519930684 274544201 191990931 178243825 602381480 88484224 642166939 224413740 920448261 658811131 948219581 149036710 178037599 501945586 5968134 33150251 447928545 197937058 893711185 487480595 910152804 504189261 887187290 244437054 544787144 158430828 549547727 159422942 456251070 599033177 47221902 758367675 118142908 238544200 839502358 409782346 367167011 588437649 540893432 267002458 667806861 648678516 118668029 342227202 667528672 731860502 941270266 226579496 99222717 578309317 979420272 364521793 816513345 865896767 608394624 548588150 98667301 906586679 47966035 248341058 655408688 919483794 461477103 822922169 34209630 666982847 429328445 78128293 108817839 552441785 809661175 667188119 231328762 588355301 871756624 249938035 76263975 10035724 930796623 168839702 455398896 777726016 635971011 253640266 434941114 260416088 936824487 404159178 257489704 775555110 835629918 676857301 606013204 737055405 738164818 599227889 544930922 602018301 474111987 20229618 931077689 692363375 845992900 585639674 908519506 207243639 439749218 8044451 407840158 756654200 984726894 387798476 199606052 795324917 639081013 189576856 938173191 259688431 464111192 102353989 18171060 285516032 284463313 655653562 239368863 678875928 311850158 894235883 732982655 210923315 747678022 398301311 65810373 792191766 308689611 605868211 264573320 649085328 973161026 571033 806140758 106440542 237507352 362599879 606952589 509293513 985322208 812954533 982474846 890453424 253455560 358643251 575288963 107399165 260306413 537409060 371241381 586840343 174226714 358997052 634250893 8193037 992959522 577652910 920657742 527103757 96912404 543326560 83544022 642925874 258651273 449907656 580045160 134358953 381014372 46974830 160385857 765470276 433783474 465777839 64708830 380405610 3007018 11484263 491135113 530564110 763494471 942103871 559082843 542687509 234406865 531662689 976667567 440815492 134787174 945748054 446294882 810102065 564610653 483028860 274729506 644039068 503724827 397880641 972144691 87711831 300892104 699790106 922780601 187696868 735799794 135064740 107419169 471630102 545192207 494644508 874052808 551377145 152077102 275753751 439830021 898209309 707092231 999371203 637733081 388052558 325134038 881337207 349193738 723053069 68647067 845332142 337104897 843756423 872270902 357971233 386484496 902214333 727668854 485120804 493117867 808742891 510133955 241265979 483562094 675290512 183817613 892105173 472515995 947864311 495269419 388766372 441279275 351964062 267889398 132404398 122690 924801837 406670676 800008794 573495515 925190894 804963520 142478526 866024621 416689381 739324601 25704384 196031623 162858607 720965257 55721026 430634137 257215611 287913426 52234349 794274141 448826154 260872456 759554865 270810467 429091325 846745159 221345305 575463357 875484530 876059299 217510622 236713324 30869830 823467945 651464487 241736079 466733358 998644237 648221961 218277715 745792218 566866372 468030524 134501826 532902819 351605164 789093925 197809013 126309356 465093978 18970453 274627208 702976037 565781822 872897043 582697499 726510036 579538710 915634086 142500734 395801241 740935483 620681224 944067623 877152785 227383580 841518674 126469476 810002701 286810292 176930383 567960766 612096044 280473219 98280908 178167308 835222616 996578599 142398231 57020589 111480888 464431609 908052723 598130706 657174178 762270129 842052667 696929897 626252514 496653923 752296608 952834245 688039913 574309205 379319091 615290121 126436281 180953442 28758370 353315962 593947321 795587865 407632335 460743413 616494919 731998574 820068293 135519379 936595707 313863129 319510150 915274885 696912793 382295679 202282417 867282752 878608299 947000668 958122884 134423848 397215358 286535709 261895133 255311287 44506944 678279547 235712594 873178381 390605408 537600338 722232721 582711179 226480894 411578356 958823740 171331142 846961779 180660794 582979880 98545817 599974371 727280082 34947690 705981881 641635634 944968136 944474489 396792849 421961354 121050023 905577344 706321166 238782896 398028001 604114334 312206251 407732693 780975594 285130361 904808995 133552746 910993684 513337766 570594048 907029156 199573473 384221768 109696568 666907823 79120144 28432421 285059126 695474022 6824511 897734598 760181675 954586087 542194238 186062231 513868237 681245051 811088789 285121301 586519870 567676550 805897322 230390884 619751312 551454752 276429935 925393109 342004326 675023645 319832827 721957896 78887995 779487353 897685951 141569954 859956543 360200332 146058585 577587602 330904737 601351284 54384664 250487833 935128643 143708534 114487347 361691809 601515442 232163331 184424247 1527504 144672810 838630680 832913523 518570674 649375054 972956584 949787688 393032713 578595473 937452780 944263959 316696832 489644078 85123086 234436420 928332934 808394198 809763503 875721807 749036132 854019297 756735562 831503245 314834763 458349631 500468481 896419996 34020931 271539728 719371768 335732687 159205946 47944925 601266707 953540105 677075407 983816329 15479756 526893191 625318392 355796872 939672352 249615912 957053853 911535194 699363974 806717396 936432606 412507527 612013599 900680938 592511368 789101442 586041975 41362132 796119457 685297110 535670498 336725857 604042760 47728401 226557457 846531929 144692906 877839871 595686952 757714662 550443000 2486744 169333130 572306542 533767880 944743193 564176721 391690241 92374108 719348253 351261349 160833426 164923315 647844995 309642049 608249874 249715623 659990310 226056036 763642706 78690841 724582699 143206686 244428496 818318470 412713566 715845463 173372418 135227598 848804054 15540803 754684394 436365228 707466205 420891339 439380588 451509703 270305587 874560335 783558930 191430748 707321454 314683657 742573181 619258232 847145929 832114846 981808004 982495534 921726522 981315487 18334739 817084202 316307860 494670202 934757974 962382258 486343122 92770296 499246426 411263398 330552620 413577241 171098222 462547383 835467132 963879965 888741356 508093195 991598240 63892754 162017799 974325901 20722699 402369393 896620990 126923790 749451449 595799250 768316784 794672194 597218595 597125240 422496910 518222659 277457229 400955174 51282582 911736753 83716858 331330237 410646593 911072293 831267306 766447248 140209891 23601063 979620183 382960252 814275375 163821333 940026740 694107547 117809119 34753650 953904984 600258504 34739774 918670017 265618900 525318426 960586767 545098506 45224046 935332465 494610796 306538808 38622103 229556962 579794204 191837449 331795466 383082403 401821898 114849083 949720644 661792846 416956809 772901836 516225418 618093161 842587314 411335539 136139962 71595048 574120463 691108465 819748270 512749717 898550198 86831175 551512669 736600753 136324432 181420538 151704090 943771325 785809539 896292343 736902813 995060154 997708718 382598776 757065069 566319822 140387525 958255533 951105558 454210946 235884746 588583407 606638546 928576432 368715850 745521488 758532418 667006577 869297988 92841400 880101930 170716289 159617970 145579200 744628648 342638534 867622707 580091104 71009784 408789678 528806692 927354847 47472294 83138030 898762315 358778644 974443353 802816868 806944379 367844140 503613651 10892565 305307418 1064428 945721453 227430197 673902790 144837368 35854053 978169697 1680954 262673836 727515058 832668357 897534426 730868543 696913222 788164649 879257054 703391919 705807613 616254074 645403838 550550899 676365422 489361661 782064835 446674169 70168047 489821351 810583085 882038133 392466709 832463237 618941999 485454303 507954644 14659281 789085401 191583907 494917815 863451241 800794813 253110535 999044232 230797660 365022059 212884664 622787911 34346261 711039384 783929009 506337664 719383414 466751579 12690311 886316240 87052052 899039263 124545894 624493097 482342959 663736093 932276093 908314453 364437729 67578452 122717754 891656488 412526622 625620420 644044157 97548256 974503819 728841290 115280975 853326967 627938677 437396824 171172267 269100348 560842428 672326340 893284084 180010940 781434507 899238827 503862978 420902279 179632014 485507959 168773854 610926922 302256415 638360707 556819114 445486224 382092256 357828581 269051826 392435969 419540687 540137409 427789217 11178132 288619726 142268217 497409455 36071146 39827142 549688552 417383301 370010295 972401159 165270164 692245268 201273608 273546924 165458613 284468662 248184544 3222266 148705909 624937075 90644049 513543551 126881967 99030208 265965530 143485592 943863308 786255916 883432336 123057963 699190735 650132151 861277037 913278160 703517856 70665311 91976686 503138149 235837776 837618637 222570525 614115069 495540715 197460162 416717027 526859448 295279079 562736423 274280290 181339159 707746519 956415463 869976125 833563165 458161918 562069417 972488413 260272999 490899442 603201862 306925947 706322517 607578657 523709523 612070540 257141923 774259637 63941907 39392279 106640872 886760049 406842221 872607732 712145110 290493801 194270680 386002782 586373412 422521989 598501363 907831540 379848756 211063399 268155609 853270452 929124261 39314378 922383262 317443221 260126179 941551366 956747024 599929939 203960936 615092319 177660762 455485784 11821124 132066212 208026828 901957697 763158084 909534525 849604789 157729137 236176235 612322137 20941582 275931375 700118896 184860420 19457746 637291416 764222665 290240864 205264728 290295280 899293528 639900829 770236577 664286585 778849733 75499164 600305103 739180621 503577945 543078415 971815150 690508171 689012155 614143350 412787701 929152013 559875515 763508122 785183666 66252732 589347752 143222518 281818339 505423074 22250122 934447255 587943884 47205601 880058455 623001969 466130128 193816787 890370505 317395750 271100796 4356654 505371931 811003514 330683258 623535087 510972993 490339719 844918078 753301703 348563282 480137538 818967730 342037466 913003260 845864528 996038571 687954372 789991550 569772391 781345871 531435838 548078317 234707226 165196941 413407493 156952361 295248947 949381404 632095480 980079294 83052892 997269384 608687897 150464884 178891178 200679355 623750503 25758736 664776646 545080162 357999779 282875440 406375056 406970331 814842173 602509792 608316162 667045562 434186921 13030126 149465657 248850808 533833081 348411368 790299714 701086074 943572314 451737245 202412056 775309118 567630382 664310917 840156185 262097506 289484930 776467309 286304557 221535716 911435711 426729327 411739295 939411305 58455936 250816688 976903400 813385885 475005623 87529369 980441229 151084000 978899766 4403353 118355168 452204241 773259364 34723359 908680706 982345201 317172209 925234015 515919176 498166765 131659947 701309871 549047325 140066282 664094750 682913226 113178083 836337678 94748823 703633447 333783640 547446047 331201694 121670998 734275424 46321361 151922707 443456169 314321354 861826189 818580935 561287920 771674527 51337664 777177411 504732890 818305194 655157839 410839309 127405944 552592380 723088869 215241001 687065020 819532411 251214906 341804067 940706630 97122896 74370153 507926218 379231004 454064482 145347108 393532393 816057864 405640490 309897082 471136572 81858575 767661332 704791432 127314798 424389699 408682954 405407014 706751107 28958376 947768177 598157477 493548049 590991403 131817332 419705056 57989303 562460833 955328197 544374607 270111097 568270321 144920468 690436208 738879552 52658597 838502686 195077773 376345901 138693523 390763961 822699235 281337836 295873261 885570284 531222601 837757064 522573801 658070010 743671058 182682240 703561184 736909635 759731229 740848749 241850223 890582071 653153660 180452462 313720466 210416909 902155847 658872625 508267959 98302126 116151351 930832527 949631521 383166778 765459154 99846503 486239664 606481682 241400789 772715024 775758877 202787970 144746137 282698416 679820678 703281107 305615423 293830315 399749492 963097020 778545970 203543241 498016978 866268473 2714953 100840083 389925962 777650006 74494370 181135781 566197748 832993903 393146538 72241627 370103944 517102001 681419594 661193864 288455558 337074825 963448998 304623702 496425548 231048639 592002428 866413571 629468714 446642164 878354058 364878209 774470599 799809791 381866524 943631953 671387902 225964688 773146107 775487799 720923703 549040500 245958435 730642769 290797007 575068962 818514764 190083112 166933135 111354384 560600542 483747595 141069089 450249116 378269219 507236388 980863267 639675485 828110032 851389427 809717640 95725243 314538759 455777588 268228734 464228210 825323324 514047364 182992295 962165877 28270855 739522270 417216460 185027101 482114813 958706964 372971509 95305203 482419227 74520623 925735607 265729756 851543952 147753261 101195355 726918858 976877345 239744639 155147617 764972484 277332340 49966318 916726724 133046367 602419484 653971807 772786081 665676370 9416996 782792969 398060956 90627164 346831081 686028512 468496380 377912605 701160079 450634275 830297197 784106007 631439295 266513111 357190572 316628271 518640788 209402865 150123579 768749926 611581651 238914517 153226134 717088197 510543019 976695309 971950890 526339343 250160999 510579523 532083946 440958355 398299736 397090382 441201635 526826883 638358844 707688140 343833196 647834257 981884825 971195001 664421467 407637617 666323707 571403298 500588542 350160756 23934636 505772664 609758421 137044676 278965457 750060360 831311744 966981284 513697027 133598418 123389316 588926036 675119402 102885282 505683378 2282696 924092657 764895386 525041625 955023602 939419522 546334210 158483867 371147223 192834001 77809997 260467489 56192061 168147396 49978674 741671131 99540189 559337278 857098734 296874355 750223543 330986922 137998223 693883974 698767964 570354830 45262852 479982966 467368556 549890625 530853566 972441885 812280027 257013812 540658799 422078294 504220200 817605434 301555665 31259126 915789514 701832005 339561865 130104472 330908480 141881101 687574813 288876713 901505391 494549265 31490145 644681875 310245731 207767209 52938402 880875706 415516104 801070467 273897296 203694020 548808123 800535584 596583123 997224783 702430671 653067526 970165405 880795210 280897496 222749012 300987078 174082288 550562939 527583722 849229311 458532273 205193752 18046887 749135345 346612403 603838246 488619031 207994587 105655541 431367460 680864658 360334358 20347573 18635520 920622528 450006296 53229648 826313673 629140997 701076946 537670857 306431285 736841373 586614095 358696603 811618108 683664455 59203943 521644027 767822902 225014610 620997986 461023241 646357546 298309169 228464386 284013534 282557189 59724687 758035474 439530054 995158265 464518197 136023930 306786590 405270855 701083665 903245448 137599202 401213575 588253324 210364608 881523291 543097406 370860483 895396062 173290258 672784823 409855324 428572773 598138945 919481614 560162428 394932069 358095102 524534765 500375791 446380913 234935601 451267602 103188827 718247928 340770629 787821121 403168866 372157774 56235151 406986206 900768860 560774313 693363232 639640619 451445904 658098330 633799026 826367583 811974251 218596278 999121727 469722712 510150903 106699077 395252084 543292077 198473056 705070857 67784376 409498373 219182390 921644298 706428402 91410716 21123279 638531917 477735149 922791472 732978441 446710822 393766143 718769539 880669542 195574624 587512216 864168675 816260999 479070060 654781425 388944227 28824905 576683247 937832081 232730258 280091497 273706096 553164720 630405997 880820110 206752003 26132526 68419420 876295100 382625748 872292703 326836674 772786424 358802351 37226734 721690681 532934574 97852512 946851237 411472412 458342921 642519382 523948520 501690890 345100325 381499644 352377332 320624411 390105242 638224036 336697838 901181176 653016569 908008406 829439955 938949572 870471071 492114118 27462022 784704816 894556162 205141747 954140101 752808837 872691450 670010463 729488480 903659520 456634996 346723911 735340725 746289489 137610235 363686156 457076955 196026044 373350210 668577177 163316526 299067648 489073705 473126470 680806634 418889326 781145307 10459422 332767659 161772098 652145596 286292931 752018589 640747231 824385847 683040748 516253911 238232544 26211031 4651001 755933197 174978443 983666034 558231763 12458267 139402868 298377695 785193745 733494963 374079013 892354889 720080942 540631354 309600958 625573765 311668620 218503573 447189692 584516309 620122411 948889063 325218410 524011979 931059176 446241110 43601161 740768509 913924914 587458059 192614595 307575277 586802326 465793779 149578766 401660128 763783054 225746520 632626402 874966061 514587292 580714307 189471016 207240595 374887479 233929874 450497671 869207445 214158852 814700024 738883692 216756741 123906384 24967621 862277322 8346176 283098353 847894677 394408111 68948507 837612800 702352800 885638432 359369452 942141853 937360501 260760059 827019333 915186427 369698575 573987772 930145601 455093596 477772094 873064968 365455477 496473350 112312379 285200121 26715802 511378268 488693864 435517113 53189561 390465713 649614890 82934003 298592974 593464056 121308486 714272614 845931390 444672509 792323997 460540832 233935816 241952597 400939832 71007382 946828658 385329007 960903583 718850209 796116294 211458700 37588559 231956897 244302532 167590170 232276403 431460912 641357981 210161 907940010 580201548 382326688 320696231 40872885 36961994 409909274 840124524 100587570 558166226 780368209 970299243 451591966 642673618 508090001 124222191 520487205 299910639 467044651 676382665 454974287 119335781 32390037 551596997 960078842 123427169 953334887 781000430 426606059 583084139 911542946 385439633 374955463 891731133 467321093 397330239 292480938 993738939 414642603 386376652 89629287 385464769 308738703 82091155 271883066 580063580 617946551 763273300 376812199 172755021 423090669 253280842 53970007 767208550 533574893 778521188 305542413 191318064 42938452 646308595 58269033 234721145 597067303 95247943 709724664 191122339 230871856 674914711 304474955 415564325 754143905 837418233 888884303 744550530 968263513 747125173 894753439 821905062 138152530 779279377 131135768 948640087 229579951 682668420 281774099 356205648 931539919 995922562 560197391 120574275 319436900 687283183 365229987 184182475 963055418 546603402 538779981 124631088 928636530 39006937 244786513 387105934 255991146 481719607 966408029 674251371 980551171 403840027 985330306 526651580 252225408 343921814 612412562 504387203 511488054 93085075 543558123 816227214 43817733 527778184 117043998 642979060 122833586 745500315 103047352 894401120 759709639 758481055 688630455 508600079 166691504 995728028 639191804 230764509 888179161 900089936 693427939 627595479 288733670 220782402 91053913 204100435 606377239 602254450 511630242 481299454 583517492 394145484 218066206 784967884 692203144 630329007 348245495 688959225 691681007 367250143 614634841 230801210 762558096 208285503 627669282 729822048 188482788 216407559 422548016 798930421 600934181 207805225 996593280 659660615 894450429 442283848 855463193 469002378 354865534 434295802 951937619 773619504 92501495 871288953 717063829 635910470 218290729 994704767 171595524 278213400 945498568 664277627 87348512 784265555 104663171 512778229 739291684 405112158 547417456 843801139 294591686 542455388 881546776 174921074 447741206 152496171 766724591 7083462 644248404 75420269 301684436 425029134 35011977 839921579 464123605 701755786 976637954 30216613 160734378 516692385 137719823 424215731 19142115 475041853 208286792 893947667 960933692 649445064 677319049 850621836 303480423 83454619 151698981 64068772 263806684 675565635 298315125 596668997 415201631 110473712 13971820 145764872 940400502 289574633 950569319 766132480 919156134 25109428 651301239 864195459 927268330 510734210 515390303 180611140 687648269 348232870 738194907 905887104 173148927 926586919 186979229 515801034 866365 446064940 949213250 813537838 78485966 96673947 745593881 966660930 43405435 145198869 300178350 91129774 286496717 351535445 909262501 251070764 18194718 10017212 942360221 592903201 32294179 793478299 989517343 154155256 421053590 735294730 498309321 678810662 879765140 407524787 223616998 909349489 446543016 246444611 468932691 556914247 281234918 237901665 848750120 57125890 545805233 190400116 540040051 61751068 160977329 425884550 315434783 445544388 665597387 110216290 747301429 697548363 966115167 106911220 751286024 43779677 141909843 560714356 80320594 281822938 688753054 434489065 671777899 135668582 954029786 775190863 961219467 582433795 530044589 534181966 898798120 842202687 180348926 57515113 958517462 76841878 793773403 282635307 418565056 10317432 640035278 180307758 754273274 595055724 968569352 22116968 302170396 738668670 368498285 760896892 891467669 540381179 755927593 254925930 502610016 693544873 328551018 672355454 927012734 395124412 250113380 825587139 684199189 782432942 380213560 380190241 558862446 965182985 676704343 303226240 530021093 551956353 938502229 663285171 718942472 32023878 349191871 183261687 100375721 664583058 583137033 861263543 958133495 927294197 726005063 901433507 654508476 455104317 178383449 848455876 677280772 796515144 931094066 258533862 163517905 143902375 447883446 467340738 268152150 167047923 594174670 666144971 132239765 976537438 435260019 637789799 361192396 370753192 7877543 462719734 496255217 995355197 713043493 328253150 713183806 838133733 323742722 879531379 780794373 295776103 806268519 495063097 292243035 126026605 512798575 207951125 523992353 266279302 200861835 420318833 371107095 410137003 639464189 982030733 353056 835645309 173867235 440994903 193637189 704260418 786642202 793000611 409876351 794272666 233450523 16833954 516832611 87565923 796248216 506269249 887893649 626267124 100449299 149949162 569408852 517953965 651918773 685253846 160448441 710982435 961811058 111659089 794838152 593318202 532665656 101139318 159430627 273047419 692992765 172583270 393818828 943733319 146957650 190363830 799216088 461164572 543452 481202380 466846475 315450720 515865968 496307983 357106677 516411927 810846350 961691441 6772673 193855528 36691843 648938454 542124562 662833027 907288749 351800225 735506875 100725679 505857139 710827417 169278759 349930736 512722322 237809889 850740822 216243215 904709393 686551614 609596584 56866856 161009346 138395694 497402529 45598335 637450221 615076512 22094166 477868420 529955867 890270476 297705185 927391094 239543378 786443547 37570681 839911564 663886854 401743016 197491206 781327216 565701331 306557562 956188773 734619946 963175179 567709493 111588978 986060384 711390595 824849779 237975661 342311852 925797535 466154076 611911862 670124932 187084046 246814669 185869726 723453726 301665696 423083427 399082766 136544084 426463543 821263151 798776870 828326563 698025452 160541395 687475217 373727598 708765368 699294167 263019487 111496156 395138671 306237082 379591267 851164801 342677036 260506383 978072466 63773734 971625606 600825238 317192995 98592115 296971948 943071131 160924589 863649231 330915746 399456946 253543689 423621184 952415090 563380467 474030508 221132528 682476829 743222963 585737408 770335964 901293853 546490035 412557044 790952648 793787095 329377580 845757498 869518928 631123526 166522910 565360140 211198074 857182249 620932384 704693941 536688562 370125723 455459412 292052931 588690944 957938137 949083440 357152014 396470229 802363509 465175526 651581087 612305894 139431407 921588224 851897355 8085722 878523247 377219983 223758367 31390950 576960959 858989072 748833832 28035141 242668996 663504510 236866224 318532669 53703265 668282242 821449982 250082204 131457131 581910943 519555700 837229455 483989840 366413850 61959714 218831327 585977086 443176917 25016452 171410705 887947996 716202552 560864828 504184365 926481436 633668978 189851876 227342332 63007054 504677349 721389009 947845030 125379819 519518380 600323808 876268755 998180113 784324871 327157447 102121235 420667343 882673064 121216425 231482670 101728695 516690037 757590178 346561801 735273748 51551743 341417037 62382654 57529198 246476082 315218866 993743211 385267521 36640387 792108848 728611423 261803617 183016163 226760270 145060809 268858254 786602732 578653596 847536759 105358807 587394745 296832060 212691742 571529481 111417632 845348639 668589136 964052212 642554802 671955948 265000764 96616937 749139853 799263399 172436473 119236044 786262573 856286398 250995998 774287922 136197839 11161985 505539984 414661406 572738083 214727361 506910655 658138696 868469518 155957577 637258276 700702786 55131813 659229307 493050423 720979128 573294056 298980139 117144571 506865834 359188115 68527801 138278096 680638108 567027613 457712836 181116571 110582604 696525918 286222311 799566867 811270715 585841731 110397357 826894238 193357305 446185278 8155205 19538623 576357037 242726386 907995514 800032998 549346997 263457895 199635131 553420734 935061663 352118742 464480914 388658774 115040923 8140508 530479248 18817365 537990606 364181409 321338559 108686517 183170236 559509528 596352494 39779541 699143739 409239752 662540537 442563318 578566102 735626307 370253582 244624273 68369841 147382430 564126331 66582116 709614989 525838305 987167320 518119023 265675684 508863787 236113760 401650759 139859549 14570188 289077591 618036453 54260107 266014174 962504846 250077826 515138640 365696541 438568587 458533615 190703877 885745716 214473975 800515346 495135097 267629216 559453217 40571145 83507066 286109347 579561886 449991478 365825105 345532304 528626588 91536665 995201672 282514031 139081727 952778167 132017693 835006117 932162022 757027914 635082452 661886058 194057598 706309379 759397188 694279681 165348323 642625349 406666304 507667830 408252629 217848048 128749005 953707789 74067928 406402032 101046480 513684904 995371911 395324030 886251734 324537863 255718017 360995237 484139173 309735558 728921295 361482512 814379357 416099600 121180972 196362898 240449407 590905387 617048133 76977101 176765364 907391174 933942960 117495414 485116462 480112044 171389472 543606915 284089044 198967438 638724087 436509449 640593213 698953767 87814627 846380509 106803004 331957051 934161039 528218240 879189993 896930133 883250643 476559786 703072536 114538464 101669996 184150548 178031695 495881725 287112907 115914594 667678931 284272795 421913054 213199485 335268374 498905979 289380220 772864907 587021677 307490374 316346742 525073003 195121741 320168396 324784159 91123096 310115064 521026366 397093924 570659685 992068591 676545327 236285388 235360956 827093763 325216645 441123385 931650797 990757898 945267904 731055811 82309383 734933332 381882935 305819795 46661777 181541464 755149708 471425369 706670780 275244101 839934000 665856049 217577776 300805718 4470125 583062983 157352290 489573127 612914665 364712931 615145003 870567584 627454074 248425290 8678277 834408065 652141789 523135975 580405798 959585205 891680393 597259532 456623645 178986233 863938247 215982978 150645504 955233104 832026185 314240747 967537773 605890372 875615992 533389924 358586138 573682854 739120181 453672206 728749511 560797063 14186713 858286554 487300140 682644243 857524726 979147827 259283503 879082205 222276574 291236878 528045671 253973198 864707052 161955240 537923228 873984644 869175433 178763416 594643228 869705691 32028951 836454530 666896617 212183048 614881131 628614453 361299279 270243272 393148550 610014547 994827425 787072438 23506487 329436422 466344079 67474182 769845987 508200086 732631589 629783420 279040949 643463632 744894106 811932508 705131274 242846840 357245691 595713205 610972472 6553602 832627747 711884950 726053772 793269504 325467274 625797205 602870450 557400099 916129193 575191296 998932597 310717312 571684251 55857622 952541421 712053736 657656976 370655925 414267997 9003413 521582683 605139458 329205820 464316169 21097250 761760316 348604787 189201063 995437687 486583602 910128894 440745685 798593649 494835325 978130369 55891191 517653045 800640661 818225074 738050523 284060188 362017978 267247174 957209099 388583342 645609880 46800833 162830363 211542718 697225063 565560646 148787992 228606558 970544927 681332114 641178365 379448468 209100963 260222379 733437298 203402617 600194920 288181105 49878128 377316847 210566512 504538652 984718070 682080363 445839392 519373974 987299200 234302153 353194788 201318795 764411660 503908712 984757510 401528772 899210076 854445019 823938391 33019002 772930918 891905028 397480367 978724977 240470571 282057090 804888992 747654391 548875898 9147753 527589627 698299380 450615141 353356507 79574096 694259033 363568523 741849466 973778232 415319404 140727674 493722628 94676173 79557307 467285293 687733699 561310596 380178758 295604892 289167294 208647400 30727469 803483198 367273502 667316613 8894731 504946561 823380984 649036409 926272979 128393463 115065774 532145536 49904605 84582267 961989133 520457183 274947947 531825288 48152809 905824959 244424713 275739993 808519511 615179529 287410914 560269930 70811726 330889697 475218756 918112664 399770203 898977155 861311854 180523477 691669412 330707581 353518060 624194812 800008802 245118129 851682310 515115851 794981553 360644505 685687110 105290569 719073369 911023285 174029157 603684638 253436498 529369770 590170019 77807797 909205911 421807925 720976979 351392001 93337590 837697851 356840547 642973710 872183156 545863343 129727495 445434978 742414778 903250044 698598421 777509790 513058697 904495122 836813400 342283584 801037292 917417666 320615015 121377995 658124391 360153542 456387696 278414410 245509324 881832010 392582335 733573410 444150002 192513754 602183566 539057780 207986074 134142505 697998519 348343892 149739162 241898646 409498529 615192394 945413808 985057851 646485181 228081565 897687362 298899118 461097063 171143885 754598446 885640337 844386055 233767041 656500652 41143045 266319378 172677697 945455837 26009679 706609444 595702460 175535768 123153938 377943879 870107105 72963632 928911083 91619242 423855256 872446095 371902238 168187929 133102875 77881436 65841805 637054764 112895777 606327500 375653039 180897419 156793733 70261893 498978901 958140401 977873939 603155362 54431611 455999414 929728355 257575234 198697320 874249826 979838310 249165758 282265421 72347538 364191337 86284579 313431370 243993384 736582659 84308310 651936462 39217901 791581681 363506664 500320524 814681754 981749672 495863429 500357243 16644105 260891545 268185728 77480763 634069033 80105860 307136783 109604491 581304485 801171038 826642961 371708499 151310835 151922652 613652414 67095040 306151187 285703091 134223490 92823538 51939811 635496334 124870965 877690946 56300630 225926612 613283229 813525747 520569323 183344606 129821263 203079695 886240910 42146996 618040322 612989241 391140780 845647650 342849729 777914615 707417522 82264312 748155997 327471998 187348913 391296104 766720411 88999175 300949894 944519491 28827527 441035549 745057436 118990107 166934498 541585927 205037836 825668007 338311924 116570745 480779872 198112342 982838510 147917470 888980382 404968808 585553928 37188962 228377038 227783963 410806629 87369113 398330249 341301127 726130954 884022205 392494510 333055983 458666658 689690133 716664409 148043992 121803834 309906305 867381191 46365282 466997773 408029092 938163624 29467089 868461065 15533816 75709027 747833530 423270977 162578634 967099459 812963428 956625785 863857694 120448081 154569456 115580765 738289390 115436078 945195444 349362490 286690572 231629346 148438945 852399978 684263094 591177843 772360152 476831252 668223246 795027104 115344042 314675905 237933189 988732406 100305927 330853512 743697378 872854787 621281447 707401790 596834143 194538421 270078176 657692233 252878298 604027715 49245118 834798394 468176371 241249362 539281161 451167696 608639986 573621170 317956415 718415286 453424351 86459489 572915466 859700193 395730091 157433570 736177714 397960418 443115529 120983801 469034961 760373807 610031225 533091303 794000226 427413337 376996557 45290131 908865178 407980020 229962638 872334873 254591302 414971615 434176195 516532878 519682906 793039372 896804864 177187092 610874494 806296078 228318860 225383457 413322860 392303863 379696241 109945269 797776573 913885428 239069948 297848845 38367329 294268105 993954285 167836507 823393018 576771293 707056986 154650374 308016888 543773433 245282522 912391898 21856728 180891407 649784002 63266024 315028621 519668445 372619525 63801798 934041896 478847973 567028727 54550322 201612607 80121731 774001847 952065264 326189991 716159596 124096230 437422039 2260237 526371948 140073079 763127768 348756644 185896679 555043354 747473015 379006662 599838870 707207363 150213783 590881823 717448170 806088340 321258613 806455131 145359313 226252740 679261324 720155786 669204629 262779921 957386257 319987811 566888948 561723528 739939456 602128402 631245650 63944766 469373690 858099663 747215844 162155407 199698719 666789837 933499228 432534135 872698230 698791773 8537184 370460047 557303872 578338133 276131156 368815505 255242528 470146220 622055785 836138374 411514637 825569009 166766961 596300385 618439463 840218328 493826316 15522618 715250568 793143230 88836563 890827089 425127445 663688006 57624343 742999273 612330288 506750461 818596109 619334651 403484368 40580315 281077690 576008123 789040152 618217111 554995375 734706004 666143942 199569802 118490561 340033107 837235029 769492632 527096008 628790313 727587193 121929065 990983208 415083862 763531426 787113319 290025651 799440608 572407412 120675052 694333152 847099718 762153408 426747120 960880509 556393313 994135547 161727425 229339356 56157245 186065780 197087826 925398807 49176481 377820875 143350109 216476382 598652952 977013015 802549621 224760802 43713438 448235869 296777508 720884409 826447340 867678798 114719402 380299722 764358926 91762603 640729462 771606699 171669809 400292639 779413579 77002604 535869557 61174907 473740084 832278460 624539426 586783240 97380536 731106801 418781169 300698770 995766382 919610137 55278122 779995905 429726562 512614302 751396276 232967698 229064802 347114453 240843531 133594851 255394756 70635547 235212740 547609236 366498728 839654865 662470175 273702580 323733445 217638192 970981275 819945220 618053473 867307649 260885400 408123293 310765527 768950732 274979084 780180181 812252788 281502385 317603977 624126139 61796974 366476021 11414771 580209944 466413395 566546778 893292050 965104500 727632240 179014479 494690313 721920207 623707331 522712290 530320912 844839258 943691810 842806719 984474558 643309902 525582177 36347427 235267760 22260544 981224966 293567082 400407118 609606469 928103961 567526819 725944034 218702935 340442251 443793271 492985479 509930619 540933021 19152968 364916539 644210513 188197346 85452406 997535072 603427188 538906897 145065155 651262161 126108070 215714401 375427185 676496622 177101400 933105579 157501137 365268876 210681468 961719117 569215819 995837766 576890233 391806519 618756828 830396063 145751488 785376332 910135039 868558246 861869236 554603846 129022786 921615284 384890256 846050594 617324352 350146064 39650104 32281203 648073004 201789686 142573374 57647244 828012790 935076612 557943212 431516355 627604584 899087619 855179256 884557435 223181518 223281490 982945515 222916241 273897182 735403860 309506576 131926778 481030714 885975356 698594322 268727376 346702993 458754620 816804200 719562823 938012826 584994489 711863167 48414494 192045822 829625100 100312515 358726593 292106127 707722361 786777953 679610799 477069994 294761079 236706219 44157319 790705469 49347010 473621851 759263738 320225317 976546998 177816649 622363530 217767413 296884547 300795315 668436834 736615131 855068387 247829756 134053033 446082060 287982943 754315680 242209414 425230493 973679697 848959615 633048790 367268803 492883747 925099529 78244245 986204100 192772459 464296496 142005349 939157975 558480519 661811135 308944159 906910299 420785435 486746656 994750481 818126245 79031548 302747398 598297541 9258401 129390582 576163892 747995740 171572327 461326514 6759273 883047753 344235447 398988317 955607954 758094575 246507575 71005669 214097574 718532081 633353964 394506741 741540368 587277102 344376940 627147037 973488065 694214903 334017334 233536574 577887207 281893723 471119926 658807574 454150807 479151411 359695360 56452962 785999168 389368209 234035492 792823293 235876287 531857280 583766338 455799967 799042164 995415485 620488490 733946637 182376876 198520753 158639772 793131985 116910306 458337973 15124548 213124777 72143920 207506724 935839402 810120805 848456822 383551215 934430763 185100549 610812189 129965988 308448522 454041695 54556054 745599484 838872767 41534158 462730674 931418733 413701377 322772185 113105731 855987360 869103972 1837829 656290094 350647983 83933733 2966994 703112667 785787194 498226728 229185573 674451523 285823188 63615742 991716528 821065815 603188925 993408158 107896589 829231905 751887500 799729984 457383420 222094842 400071669 593160229 910281807 998836871 743873846 988681610 763014296 631126282 353463242 699015803 961485770 564669054 75456718 165878084 670114814 924844710 849144774 616248556 903701926 187132535 252332913 189317739 269419680 418211684 987740088 48157685 643357524 572897609 614166143 899610259 922307642 925413099 551452468 426997498 281974964 473446227 993519079 816079301 537975588 245231696 475318686 270000761 514851013 310820092 50375941 992785380 341316681 311335459 80388212 637141294 626477997 788605458 430864672 454456120 741435914 576049743 82194887 526069893 851743271 778973956 871550727 629908792 163277287 474356104 725681926 548258932 173014243 750340744 529956154 509301414 772547993 530427373 703214924 686042141 83355597 969161838 610343394 116378850 347760850 423673047 575181567 37780042 41640708 336762675 479017635 752930399 408643481 343192114 97443569 462998251 838890513 798204397 687306845 343831849 591189371 576319935 639195651 147195859 484037514 983961632 390729621 847039610 491921591 275238547 992828589 654800366 98580124 96613539 614886206 107267044 75593068 827895577 608900245 431488225 587816938 378010443 916332259 502137917 701108761 491135197 280782017 370643536 146018128 118920652 174713345 957553703 892409422 195663860 471160093 231375574 778639731 734238655 798830897 253118967 682892562 538431746 167760419 238523335 942189195 263350770 174480957 244218689 740691427 189213939 287115072 714525817 325883126 861909005 688769933 270461178 209758684 341614310 4946171 289858842 29431396 227290468 603913941 194942517 291191978 925469245 927364169 97811859 202798277 28042539 508722762 887261618 493858282 518566954 259916319 460516814 217699768 849292562 585982931 850166806 62128720 386483814 701907993 841068965 796810655 155729732 105513909 863442869 442170974 820782302 591248408 698086774 248249677 845194443 597622841 829726977 717708291 91361573 32226894 855538104 344489877 217411158 753765666 386838555 907130642 882762670 903996921 389743983 176478868 459467484 714999471 555405092 706543937 589667095 899014392 442128184 997045458 468097237 674259951 623424693 111181579 610239433 721367495 829270637 971219203 569523356 928248539 940985786 181982249 883218330 263349486 74526266 273972674 688324414 55289034 102227080 906827009 539158713 153165042 295052548 929762443 368601384 188626659 493973475 139434079 524734783 937701643 846979959 832719766 877507830 379379310 487082956 480645407 917583577 275657996 168110838 37426629 463019136 998340838 681336850 771654034 337960927 55591160 831328023 174758163 804128881 102771570 696089601 571383050 380899982 899649152 76472386 3014433 170121288 534557124 208424551 440651660 959343195 85805473 529352236 125525962 336767365 115665024 563547451 163260200 39526664 606282722 36806496 638737464 505740599 750324046 841133320 851307429 995218294 609097202 94889816 632871844 858333071 954849899 605087392 250080244 371382581 147859122 5946080 837661194 630889915 817970380 402115079 871393988 626104954 8908192 594831716 126586591 549128980 278182647 702697491 587407115 943316813 916870414 332122653 669098521 36729499 382401474 74386973 242124889 867530795 526952099 11750881 732736515 453461365 50865995 987880061 59699152 650193478 318944854 818134354 689130733 272064822 920333280 752847091 276331895 598763032 951843254 966527004 883120828 549453839 969521477 189165847 992597881 536935701 942296957 336172537 254976760 12775331 485841273 412929429 76495843 297654877 550676272 317203618 211830008 4930408 766245025 552378382 848529102 340197046 288874513 393160755 373515259 302325982 3396372 891333534 339842761 843416325 735158057 56324441 110110212 808711893 686385019 552112342 331808756 728868416 164596189 180504733 250220681 4113622 533487120 664651506 431157642 80402383 669222773 820936799 830990782 383874087 192240572 874183371 889984429 146843979 580060055 132841579 302620035 286891961 412054482 749733840 549224 783894474 624241101 162479368 109417735 708794172 418428166 682259168 699771825 99890608 119901537 530354037 697439719 806434848 567423947 733912568 406076339 955516946 40375364 524425230 789905585 882453611 58793056 21493801 302470469 966752065 550321395 967981203 803931649 337533127 68647430 880393484 776588911 730294346 724752850 326681453 948709110 708122123 489858414 246214534 417293859 16740308 778414056 323092556 873939394 560378677 123703869 900397525 349982897 257957646 674479132 911700027 940483568 551858960 601280909 228165777 7722585 416851711 10313815 10364085 54088346 791238869 905095277 176658353 841874376 82479365 333277176 405107817 499402464 367435376 126867956 853272816 105243310 466582631 988113529 457071293 218028885 597061700 403461897 385925758 267030482 228897434 716720112 695470560 438816776 604332168 69619752 132652481 277185129 505829537 784447962 145541196 667475087 888451318 247985932 652925209 448447086 671108215 697508415 313076526 898840155 522658570 122728542 19888654 635098097 101149327 631408000 940130657 423423705 553160088 34946802 854566878 802730374 338455557 93365590 408333895 777392327 55340687 876577289 213644394 999620489 453252215 150672934 740690859 844226745 574199672 907664428 914449276 388220279 152203771 1687215 581806115 375574703 766893813 975781863 691327853 830928952 886013960 691237115 57990403 172265969 217229468 459928532 185439806 953751712 332048971 896083582 483571945 689435913 339159242 507028796 902813233 14610721 863410663 402860115 964396292 472484435 310103663 426419163 199823337 176205358 174041633 570345813 618652854 120093022 896507378 507350148 19108701 909672005 986045364 877622548 500321549 696629441 836095797 351246832 992037451 663936298 523182544 616172985 804097599 306466884 615823628 259454013 951584401 108845052 805839395 939061447 209429599 546414765 388438179 756093783 947724255 839341611 234225916 967345974 4215656 695740902 18496991 510764787 96996292 660388357 322310866 926739490 8773460 656759266 531906678 766315784 645672873 435654768 438666179 100494421 689026700 117083766 148509255 668822493 236163864 296696955 830451447 809066811 245726578 835693419 951064255 608754818 26177416 784296858 548080858 672020716 130785016 431996783 790358663 553868138 94248612 410510951 984369188 444860129 613854828 120021422 2598886 5226158 652729129 596273780 187521151 754861949 787428015 884338257 867589453 838740419 766348446 17355541 648594407 128540855 223048229 739773053 907396876 662229883 217985139 125292620 111508944 31108812 663997301 817354837 417820072 235272975 108075644 104510644 340031530 154206689 924796199 710538812 158609118 273494688 160620419 219489351 901286205 746720095 245728601 716949423 4486289 181611413 218857222 77071298 218701920 259239140 899709416 118079435 428158468 454892535 58727477 307381281 61454550 949915361 734060772 792144058 939304961 171613440 729362897 591049197 982345340 427352249 236618157 585547536 127147348 81071101 280034963 946261312 96150753 265199996 751885226 569549080 882500317 514753014 184840803 798302505 959367923 677017196 676021636 685097003 708893614 400122284 515852844 953588779 175309049 215130741 936603283 262300769 19420372 714848884 548219245 290510167 766137827 147633211 967729913 764433259 926146245 621492246 15883737 304511291 529439450 649516955 883849476 998144201 489839980 116825197 677914152 110116599 224557965 927380236 304172761 769265942 664031385 3258098 51326078 900904469 649842194 196116394 599452312 246987850 822421779 145470400 911777698 180865004 660405059 386758674 411051181 334779143 274501676 935268698 813435837 371898716 165617456 233901842 345508190 891187241 232483971 317805247 155476501 872730922 518214268 497683693 177932172 373294198 201794916 875260758 83577598 637248335 782052193 97455720 980614950 741282471 56536003 765315474 229555902 102932549 719650474 308122098 580716752 960253700 35443461 322674834 843573209 924349891 687357798 651412671 25989100 444610751 605796708 277958364 532442855 443711229 439602876 905765515 264092277 382639345 54062999 482133578 304630375 980664057 534534487 378799703 803936258 515481785 469161700 115656948 72326703 790930136 32948350 223154268 524937199 716128718 543068180 802342903 825750697 960892694 238481413 401140561 113557419 186053497 653177364 644240597 953640961 305428240 856468911 596138458 438911199 801928579 480499284 883484522 148120649 763837564 559859525 899302325 716234610 588963652 336409258 741438401 406958417 897964174 388813199 487889855 667494015 996420566 503830639 572850962 892499974 995494735 325229782 639152448 820593516 613499335 288441696 661291175 636981982 779100517 755268579 505752459 38247820 215231984 93720086 76052610 535224957 293154631 985542196 745037525 196945294 776179589 571145725 10133963 139534076 598202135 82897586 837772958 954359161 281076014 805356080 471799041 372090629 638604575 876640542 904017444 815201941 767862741 185199508 968124504 101254266 725993582 114250662 745318383 524624809 213261288 386027845 118333808 262767040 636692511 12526162 634686142 384237900 99576247 781016393 579081646 980208124 795588385 325799390 162472144 163839181 599769367 614492746 754347579 741651464 771802037 36035881 151178458 543385418 185458280 976374338 317506697 273145471 939252557 455913502 69867656 387675565 824595791 826590971 742867592 763683265 375971509 173110074 762885526 761933070 86635942 286264960 510365477 909096892 770615189 242477247 877041948 440847464 935352546 209857729 119685741 59688028 397666421 908420509 963478410 912186924 904412339 378317791 261135893 752637218 147264426 609357895 692627452 875551755 764375559 548116525 63735568 581631407 298821354 996610652 9688971 340138509 987858453 14126223 258914589 555575338 827193952 95316773 514722506 777235243 365561484 84697591 314710935 986447194 57463225 80226002 341720375 400524381 579566115 35478044 248881513 664391463 594206058 103431837 664288341 807214131 871426408 409707429 615049530 721242746 291432361 489176986 1181027 155466437 19920369 859025532 468864434 480240702 501308131 631413052 426655615 395038575 194398324 414428805 525248811 496786592 280446954 550365260 117600203 862382495 609018094 207935929 647716162 983797571 82035664 903939889 427483486 913497521 633377520 132025128 937715400 546787173 593755560 268052655 863189839 690297398 102064243 528124300 363935306 636626310 660363286 206643127 263957848 149076076 12457028 323018697 82366011 293562389 118454797 405500527 414536764 551027926 954137899 870030255 624069371 475370256 774726647 408546853 764710369 556411024 997565726 733341934 351488307 859119129 866242974 991362917 468031719 331510505 32614516 689430850 329793595 975419327 531593107 858137108 166122333 854451581 34664040 736812415 757868196 364708264 823013965 883470670 612158274 248088669 712038621 568064449 278648665 558819599 291190307 475369964 866152882 878564700 801277206 900591136 220135830 491892070 728507536 595701243 917431481 255492800 103042355 539027214 896943425 216182619 446662769 547479942 38017870 697410168 652486687 174174995 331131424 321004522 554957442 178485239 382120179 82632946 353867465 131588742 610077625 242610469 493397036 108220340 743594957 716594175 531545402 116452761 377079183 223165876 225742283 31184355 743213214 761609742 882739667 356837248 118436892 205494692 188180160 612076275 564626155 354996890 47244871 325636854 836352704 808978787 16738524 204096704 478781702 833559146 946489261 129028368 618700126 873449753 993188213 175922230 110635241 422307676 666326454 391589543 159516807 372549015 526618302 413426523 372680998 137729946 651407009 588414696 987520392 201217356 127840804 762156250 925791635 507677581 702700847 106109696 164834912 797053290 568462283 894776003 816265752 1608654 884907121 685920106 424860453 385561093 992139129 578774715 915776001 259968085 954336989 904202198 112038711 666563136 76766325 581397197 888406409 300074943 283206671 987338253 266632225 108553723 97851298 749710457 512595203 989239982 14709896 920814651 53654139 837906159 856953552 438051173 175929968 94961323 704677706 75998518 452643680 773002022 129493524 291249423 192932946 656470320 422230536 522435148 623016282 215711726 428635651 495091746 517208270 608271540 375450299 118684485 673009791 411339891 883698139 148883097 610840708 413585741 441358187 89940665 751655518 716930938 971968609 874283287 889825792 236362918 417548726 729823126 254289294 63699760 467014132 482231776 339408596 972905975 340921542 698117856 525352057 302229792 621309198 320015356 485239086 467450639 166237687 970148438 606060315 13147940 716505640 183560847 371397183 920218949 928359310 292362449 762104789 616047728 274383526 178432921 187539273 620578734 283808855 521382753 889370356 617461154 592789221 837433061 487812910 487073949 433176906 703818144 173397940 73277036 286191020 333820257 413082777 115709240 593149306 802033561 571017138 4131592 997805860 699840276 863518922 807083054 348957400 635982086 786548353 995444461 958632503 534898737 11093205 403614063 709433601 932293800 411103200 277061888 477133677 14753386 624332999 908206971 490275685 17583595 544712854 999867019 318429145 733763313 605959771 584530458 801834245 432122069 298855732 749536866 20370826 613677834 428692904 653998759 193581521 613382863 743904761 391406574 671894890 481006401 834762334 621877871 919397911 309840801 858841237 601506844 162071164 987272144 671067188 93939825 503380929 477361225 154567306 338001076 214307493 406482630 786467649 654434947 563633056 533389942 862197861 652755893 499695565 494267197 91672738 317029965 770002691 600355362 581479433 756228603 16272723 953725142 251600921 622096439 498694015 83851958 798056573 486075788 446668347 654862724 836892167 914064392 122776841 205046419 338379664 861604787 885306165 2253791 106842374 36421051 859541823 243243966 475754606 954331188 689140025 871843414 656913418 287288612 690506534 370515086 462666376 316169462 77616913 354323661 491457370 100169430 140449382 703410270 337729054 434510145 787657420 837856905 47009631 822673967 336529055 630026974 88043704 950083656 994399391 436854155 169454005 386526197 345319229 379596264 918884678 339469441 369982067 496667408 936170725 489206942 144866215 33607969 220118595 572731526 870053633 558600926 277390021 952535997 804379694 481675225 91185506 887910216 121717877 15004629 219159173 498607064 204055643 750198328 643878868 877841225 753972333 416240779 281276218 802814023 603101277 822192090 274198654 626725086 746319929 919645827 220971176 17401813 818978449 854328576 462892513 921521356 662938470 135538183 632302130 11899475 590533978 691768277 823969007 344510212 191864714 724879948 807825405 351146051 809909417 563625372 636672742 755332050 851074352 405278835 726929129 644428857 454197272 175810439 79921799 190701841 362137295 231492451 936210164 63756827 32041522 787907462 329211974 391000175 157719146 850017526 907876131 516909449 11695466 172287489 949582114 624571114 920944178 234752156 681253175 136448583 853327743 562427721 284568051 346112104 196242695 674297880 506992249 769830318 182482573 562861806 1676888 886463337 411041465 213708080 241164340 936133851 377210958 38615586 479963516 619318818 149069715 157756205 393002527 802170407 725294522 614429646 461601253 45131293 598296925 857006363 512125054 702907831 522027229 150581759 292411932 319809534 322786935 124627381 392093339 42211504 644871227 156070791 792865341 3120795 936253654 926320273 332056859 213286108 224400583 433669850 816597255 914288987 782547178 22117274 992279385 388536169 752897663 954928615 164278401 922660043 477235020 648847707 669587197 764417039 163622531 678436032 587862286 495416689 875751473 202698779 33290429 8463370 981744532 440584615 110703262 290537439 655713270 391957533 86000967 540144070 92088194 527271805 818414770 638993075 439380305 503343690 879369989 868707366 947463830 38390209 158428959 712698614 45516899 748283529 349718091 3228106 62393824 681223316 845953735 934711961 696196518 908517503 96412493 645533600 676499918 277763306 714286042 764497221 207493316 101526309 260834354 598573158 589647218 87401104 100978514 128497792 122664464 749713699 330582357 292096254 919784856 391982021 77295723 205514715 149135791 941133255 212803401 694975609 1150873 276660844 31588648 967893995 447279015 457268144 758150395 360838573 964352986 129473393 805436503 424390040 833803615 804739419 48066312 791142652 334572192 694048890 623500913 949688044 334171833 107322283 373328426 362164746 266106843 127620445 913441550 776904941 920849383 710879623 890948071 54747898 593043570 17711037 87387509 508638146 560590687 649626754 10057414 649796375 864284496 596338085 390666496 489893571 613232993 450545928 276757011 702287064 483166568 856272930 552415758 629467690 981070080 324954912 169088298 711130070 61978110 952428607 154756225 962615127 327139070 293135451 350533027 387676100 554886301 775295435 579412693 933409270 368213249 494705253 736782940 153017695 490221664 3617706 231130021 286522250 100995310 404743757 851402572 762852530 317083147 983307496 436301228 231621847 560400078 93088100 941220389 987511997 913338254 953156210 960194212 744588581 626531406 922588010 646586118 118440619 929922144 636089740 517288017 502587077 176775621 323555168 126957623 283331097 172925538 198246095 142155932 73129836 428407663 426505774 136975869 424713580 740407832 491900287 874781396 364134323 339279899 574113067 776234495 16868547 417692146 170051020 181200191 960480452 22738444 564584157 954910634 389577566 617693298 793630953 476318045 85636829 34843341 790233235 367912520 722386640 502944829 668449987 779281193 939513547 212509408 286016973 991820384 75865403 490191160 94385289 264559113 38525095 835099014 191016541 909500704 460710095 341524593 891792677 91970570 827383605 992237977 61479532 674074913 18194154 366926141 909156006 729644353 452020123 612212588 648274255 252997985 617048519 940862839 36430511 775322795 752292484 687559223 987387719 66782241 857837902 888901751 403072673 40348042 317850957 839275754 636158135 686056419 404239172 653552294 713348016 656228661 748329877 398803277 883120756 400146463 811719353 207130634 50325135 171024595 918223967 487671351 389110001 592580448 323824864 655805783 887406724 627996559 533055269 660176546 562480870 590419783 309922526 295897731 943025437 727545084 383350118 423586862 723563214 95574305 13698872 152650005 582286108 553174615 165263619 539539395 802697771 699432907 177371203 170318040 637588283 57753115 647891188 65291019 591246679 747118474 656827400 652805342 957484262 533003764 328191813 766520361 443015531 784152702 982029894 571006838 589633576 451946389 515344907 867635263 183682947 820548619 455824739 845382291 782012292 407688073 421333157 627760874 864681023 484555141 788600060 587722670 175301875 303324909 958309940 12685772 736711465 827058298 14424896 52144940 119041336 978713096 429890909 712700640 868169373 136338681 273286353 766708972 304012273 45195583 902398051 100514085 386728075 179499920 202510171 728150685 120682954 444550123 990283782 48584939 104204692 575233641 46923593 66002939 12276286 413558607 786074729 749023707 549955855 743357004 349856822 864590446 317778254 409054335 989433527 551667662 489453019 454834105 261614351 496751482 297803983 927246841 47816364 437195187 864053278 300787054 772128874 884029856 890390526 894134285 25511398 658518838 535864303 110590670 852080298 400657185 854206627 764456540 53041049 805606909 732677555 841958668 317036265 99642703 300720456 59599130 251144821 606632914 415646970 351214312 291158758 905277598 647992121 754894252 572471186 79313838 933865095 649754224 530267898 246309870 355672456 130995331 955137667 106843951 239815277 292363568 740381393 922233177 66265979 571142706 476078778 818980122 530192375 156504458 417247310 296002949 679419577 1704666 869741050 624535567 188944662 270401464 612604607 707391768 76932577 378115059 40079873 853529398 868871278 88446511 444893219 886990788 821759894 441552120 737848257 846505106 595345913 810864005 504406822 900913058 896910108 608851968 633572525 136389983 690040334 556294102 126438680 418237354 840435221 817225097 60751497 248313126 676410361 929277239 250574754 185014600 883179602 169549400 548437934 156076632 107997596 671353761 202081316 993522974 463928641 163645777 687319195 770702633 897524224 545431718 794910015 639962893 276817353 196717095 895737468 343609057 398732277 857970172 933570915 804136269 259639849 727264826 774514118 426080776 332315936 79575336 229386590 619103571 11046762 113992365 284133656 467632903 397333228 942951463 480832148 960147007 723549809 126287425 717937874 422164423 919016550 701425099 108708845 319038109 728142453 382497213 563271113 460500930 96677623 738968045 340163441 455199214 946195434 50927012 542764535 450217787 851841253 128093745 443605159 872030739 734493675 717115040 988263092 112207232 864562492 618384248 225618512 511415414 338068485 936973365 456372062 704065357 770859350 646722342 93196570 269201224 543139315 570328094 690054310 371677200 87975358 368192975 872291218 143541474 957591826 166663151 775368190 55848109 591488494 97924166 540674497 439769557 70442333 35659608 159816868 604166421 174574380 823875249 7257452 290830910 672717029 799083884 913971500 745000042 910172655 702181254 195296723 85315966 592657371 62982422 924506446 466674250 986475036 234296098 615020700 108475959 633472057 135976649 529845103 976589145 878545740 498847992 372903454 253927525 252391031 562776245 656855465 380010328 124999420 865093544 287571905 346418776 156058163 660921020 799405385 9999519 452682163 505297796 265122549 338526778 440304068 873523917 443830964 853646634 258538660 28798778 168725700 731625884 78443749 65762711 379621876 693290950 334487620 383925806 609208105 77269556 613499244 416494147 870187526 327449413 954743595 51269121 474727719 104242391 202502033 585342902 66076076 720210198 545671365 730935946 200431454 547007319 41754002 598880225 643835912 657858638 322437467 629230924 689801971 725590787 295991818 111990840 552464960 744588749 746484290 722892391 343650492 549571477 176270645 951007434 961036891 956672921 530919725 265232102 931433797 264433971 214662965 786616700 240526686 196579607 943511020 799931515 468299101 667219387 280388213 374583838 505481794 736085910 33486353 801451159 688725643 711746497 352112736 950276946 854240696 560197639 388188288 196289819 424631804 712737047 694131790 132229118 824037531 118054197 23736372 886499288 701686028 721566002 135469722 74831812 881494408 822318407 480531893 329712043 23515575 904284404 489362841 262556610 236513545 160706236 967596374 880438264 222410308 92317714 352524802 262381111 682242201 827773492 319562940 617140161 380524702 111569381 90176832 289395023 957122251 437676030 783895946 175323255 664715998 66881085 412243438 51874295 284114557 174492234 403693269 285388630 625963726 226637183 842095880 657383766 937760408 921959685 491364553 398529953 500689803 325089238 158636947 824462614 196298822 584386868 403587214 560640489 28064388 757338011 349034959 695031905 340386336 115188477 741172158 750328698 208309366 669833873 153842996 71190063 544279759 82430072 148104621 610102284 773356305 4432008 303939604 556105436 996519854 162230996 901275077 172885659 127584035 405629895 297736355 454658594 48827426 309229488 603399297 792720835 984327903 689401790 7922339 553884060 184409833 962414495 523091203 627836707 797649654 840623140 193806099 497252085 77513148 327080837 29653473 148332992 443224305 438551761 425147715 358625278 487816642 700472697 408314406 15099531 529368382 241592487 701487715 291138774 299843971 655865593 758215263 35232979 139145165 726486887 977211928 569941961 757008467 353722471 534415614 422745472 31733353 407299817 110619692 33282646 744030665 642563134 975733645 362511296 454373569 121063689 879191538 592564577 844659074 278546889 489981796 914445443 347354369 679207705 188846817 749354005 814591635 537143939 726347058 460635094 558624001 81489293 641070546 343801498 943060620 205080943 228840954 652690148 370563230 765781384 138771442 180310085 147007702 457136957 847853073 232751629 835378728 331948413 597058657 153492333 343985877 205420383 699683507 535476362 163014609 94245877 359731256 975393709 513864792 745451901 239667852 151700838 26211272 468012008 671847277 332150380 16972568 912511612 514990603 959050839 718897317 424345320 168088019 89375273 841480718 159836351 230388547 76743446 942288236 192204083 586995270 755166759 957228805 291699612 832422977 250985783 579099788 214397319 120246422 506380541 911758751 733476431 746231229 355770104 404882063 57261881 103811863 439707113 413161823 351091345 21972777 150483147 448070652 723905237 329033641 482223969 924124781 762033263 614532531 851245938 891815498 145979471 344432476 945019636 916625402 871352990 568607491 804659596 837307288 149901995 487309603 125978939 754705869 152480417 95795808 33289297 416807333 548437467 117063662 503224940 192167081 40517772 655997691 172630420 105755842 723735599 211655663 122461437 199713010 244642243 245443738 217952672 353038896 951606513 896399851 478469681 277758276 534431099 918760667 675079204 336085574 401257158 303254011 788740800 437890306 229327781 52676225 953664485 766541641 116780602 630079126 66443161 101235208 363726063 694258312 759952124 908533490 410140050 544295950 880940891 114174686 855108154 943542310 215871774 996006095 172799157 586601105 296587782 983132314 859446243 347126437 969587563 350567067 234716805 50754927 220516203 991601104 393783396 226397844 575286817 595184652 642741208 145430470 58953367 286815731 857463676 750735869 488280259 938676475 985226901 409400314 8335068 3314931 963566250 319723906 921926394 906688002 460657947 584387390 521848093 177197937 349720689 962512639 450991533 398449195 920085595 238527965 779748114 25978610 985321158 887575826 643113862 996189780 768361511 682360075 496983692 592482318 652118001 387942750 151215117 361879694 779471590 672734377 758789503 356108477 229205291 964162337 234310830 568460882 788663460 528541428 328883917 418735073 343052292 495295973 930835126 499660021 434727445 447583874 718385736 294572196 136099475 104319007 381050477 541287854 142425388 363155409 74313165 51755913 354874386 579856406 512144524 704932179 577836815 9066341 903947563 72212343 665088004 960642516 218477987 431308468 100041380 77978375 672034858 875676756 233242701 645970665 237264483 806520955 356278108 725334970 34240753 173386864 82333833 890783622 523622819 836186231 701217852 720041494 418809844 744956026 78427505 509919132 977010156 762422758 724259350 899293397 748586530 983863484 474627607 880980138 389956808 787166899 23129823 476369112 347352879 663014220 963789639 80687741 529285914 777048628 401556382 797423842 494979144 536352536 505003002 905717026 876335712 957435703 165821086 122176966 232878798 364180138 684481776 543903858 795023633 574419017 574029719 185008832 62980231 56226770 769972712 856933855 891456511 831334767 763613624 462475764 207303320 15595497 138612356 862568071 206246069 262444784 380714998 225103258 655904869 479442652 691382958 888957498 397238621 443366787 205418549 485010685 52349010 312206629 367104737 401764300 299558469 380299958 324050081 344795764 443935172 837798859 411406540 655840692 195428072 464563861 862654380 452829132 263265835 41594810 135001204 315001028 457019967 500009516 121193030 126051063 610855562 181412062 98054755 94053159 972112510 311006592 45173308 229810126 249782484 540337783 110946739 984995221 852146539 741619970 338002842 140023175 572841980 103127290 71138313 77588781 335157826 388484449 194037551 773627937 770819521 72721176 719497921 115303750 350654443 529190301 859583464 264096172 157080314 640691075 565850852 412042652 255110392 852335796 637556319 647536865 878192001 601525844 15938085 218006518 507420960 294912945 144805228 610827909 988359872 932769490 350174102 563723370 288131568 211148490 964227641 673698872 185835796 121048363 47184324 566279285 890615305 389635911 156875901 972706174 338959147 382033519 354266309 163468378 33216170 904518002 986951990 752069046 278060641 510300575 533736620 765945217 192665070 130063086 663099240 176426464 644524618 363289257 451135559 706799977 607556431 924564 494430312 833777529 664189572 961607803 45732237 795600940 519967991 669041429 257932911 405200347 461558069 463047294 565934980 441601581 777049330 318918115 975081916 270034002 422633794 941593879 5549889 812467896 475333687 107547961 18540858 774500632 649816498 822812550 788396537 859533065 183364627 794857544 288648898 207952439 192828930 636291905 487537552 428481084 898246697 984055188 14842649 105778262 34354979 419899840 621842532 978266630 824064483 531641217 577413517 495955030 818006482 86871932 372700534 174970141 868749579 865958295 36485886 434863557 910738160 374710742 352079179 126732243 603071398 284778720 816505682 530748514 985610700 11583614 763388650 207694307 883735393 706800767 504679994 325992778 987117878 132249133 88997807 607831069 180565692 368880739 461712448 697014152 150073792 653728674 900910731 432185768 710511156 329289045 552788110 323171871 961200221 974816251 986336297 86786504 950638399 337378091 539231835 874367846 719966693 197062279 818717724 867916286 307974191 303509423 688237206 872506379 387919800 344396254 586939509 899425935 715824235 527796226 946163461 915061222 177793298 618110759 825430883 231731223 617542073 774322346 674911186 343290845 592208956 807166404 905550070 432552588 320372600 697143483 222161346 453159718 252428948 509221471 728968958 550325583 287801119 40922506 400191681 336108549 180577538 136018757 780007360 197898687 742797575 380274206 524299132 288502954 523802003 224787623 883192147 365020881 945037524 448960187 928204542 169180727 262814234 24726238 213802833 272627532 961047677 824870834 466407453 304124600 156085505 184479737 28885849 71942337 837314668 176820486 429735610 44624104 504397159 544211864 939988955 610300989 55905715 701532220 636126167 298597728 595527662 366706844 149377504 509398731 362612707 553186113 50865405 495794069 422838551 63926211 467650041 467859152 401175993 115810607 896101182 360477319 126836295 82193588 610017620 708781512 603804969 789331554 188049288 568923197 156680760 768662999 977278389 339763318 58078536 930033695 355781333 960185489 4398604 554503586 32793572 250129879 914758348 247131710 702600903 578843818 492666733 216054851 653046136 741507487 155676918 577778972 109359007 861922968 980120158 461387595 457939515 403857777 333286088 566234761 792253584 897427988 552414833 899896250 670386049 232402725 408853918 44035540 374478164 920246347 159861233 781633230 201695092 782629501 92815434 399659045 678701470 957440247 489117498 552596057 239856784 843226174 125254465 106723846 6156310 230508712 838183981 909847349 706411754 806069397 565214472 371839541 981398552 147022821 91421180 375561852 715560071 440874762 617315642 912199807 722702905 791482537 643822661 643488686 601827463 78841323 683604840 328673506 102978363 525075635 748122937 754325163 59858755 913578490 774060330 862357537 888009775 525351988 269605766 392320929 761859854 908784812 910735961 921067373 162188518 22869087 669829287 815095467 572310031 46482444 880668990 311162859 742196919 71674078 262026964 73189229 593690956 953966801 265922962 730636351 615392421 97095740 648326897 495452526 939759642 810916461 658300391 765591364 256036529 848248301 914729166 974721734 213750285 777335494 739120414 745930379 29679854 879285519 365592378 712689606 410217507 295935812 667956766 660825227 541885866 768071233 253158152 704913166 215680295 25126835 254051969 974242601 826295168 468638450 630555823 133944431 749223495 538646480 656260556 19659551 246364 558089743 201982786 590496191 17170686 414456316 188597156 541558774 15675918 830858706 645641550 726533091 715397234 648219046 454185686 746191455 868032190 588710918 497445738 24384335 750442020 133541733 677558794 741982736 415620013 285151520 514260364 220839198 961468297 556769240 63673913 556162399 725636960 891593502 466335075 207896687 987967305 803159247 140676387 578745905 71217343 948644404 680389768 545341924 949799536 221201467 138316954 981273613 813563425 684696212 307013111 567687160 628196254 195303224 201707320 338005374 17420161 469383126 710633847 54028457 982552909 683645521 533751289 234173301 827770293 430731695 98844567 603999489 633603028 935551530 178782122 470416240 57358473 64904388 651864465 332354519 488928708 353660130 396887547 427277290 145801325 673574138 339111783 580889269 912143293 262658482 31529775 989880114 745339195 848336092 859359170 42170124 906834719 424175016 946466730 100328555 414740485 278406632 788617937 588873936 939768071 290970346 145408160 314461331 96323816 45687457 97628178 885726262 523951295 496890554 398193830 423151201 40243371 263083316 631997093 790699970 491669533 895886353 733813492 690757365 878641035 299371731 31907885 433951673 315527200 866249396 68171566 936316177 869630571 109756773 138857491 883363689 827922761 240274791 277327617 498195254 426891349 745349046 667323204 286509878 963515455 649696898 284058866 799105852 578628380 613583771 919661536 347953696 22157883 654886450 6824384 499692382 283869224 643573681 924856897 739375388 325128243 871035443 658613951 311590759 985338437 895205441 620293636 867904048 884426015 409630755 853099898 432924396 411213875 556615502 736445713 699272121 395591565 800880789 405522190 410483713 822784977 461199904 167181830 792272395 485394216 364233056 644837547 892917928 990227271 851302916 965528984 351656087 201327761 597962344 669220187 425356766 600636934 350552494 544463514 693912015 878126660 901712564 156990636 488506554 26858438 949405691 522074005 122086380 727595872 855825772 874015127 677065717 544945432 366044771 814902414 274374570 191579578 606862533 392972632 334410608 546351255 826030592 535044508 870989733 132017090 841311244 531561755 664015897 376528433 100529784 866084126 85694561 137580966 878797278 361166030 531186271 188172089 540699814 189983679 205277096 303776515 765357555 646430597 285798180 689191363 833954993 838186558 327818424 243782447 773398238 405362028 12777295 142899391 546778031 731161309 112923763 278716760 589415421 582077583 44461561 949199751 236615979 518554091 964193643 178778444 519318020 625568336 84135322 128679750 897347768 973400329 164329009 350941752 932136515 646166343 966212088 790554425 259192235 660843927 66055722 765581360 598052146 802153226 325938203 870388770 326166209 345871421 836739696 629981883 955610856 525140291 772525779 804425463 685836833 500433710 197461044 856517272 792725399 68910401 13995156 2801781 183966956 133728983 329541357 80040366 985995526 153713287 830386045 449240350 565606295 153465699 128092226 96528066 587515893 127109767 950046864 14946722 870890092 189693806 845810844 766298308 310446456 94758567 931816972 535734569 707551571 218734666 726212801 298444624 249538064 294713699 354061875 391380690 924289871 786020593 837271478 612849342 146161591 715186778 972458536 988144039 212462868 965379134 876362176 754097293 170908282 326767496 478026605 509065160 69743160 864073480 478955104 192777237 555969845 118947751 715800694 843284183 801240066 670075401 407012162 235419439 700962402 892754035 263517620 88374363 94657876 284000596 661561211 300796346 426492145 494880510 940107647 640123435 214289651 212351198 467919189 65595213 905730575 788566029 443659554 543903558 537363973 336208389 998155943 450168211 70842794 719785261 25412068 115399694 109050130 391904733 201264820 57162229 931237296 65337116 484866125 497386491 906305223 130403545 597627745 170587371 544003470 608555581 162667364 1086807 216668748 890267559 317658965 695706179 429792516 990034491 655880373 48274868 554969995 391714292 577326454 235757577 630188693 864615889 562595977 416888042 438087758 861765374 78186815 557616460 949318142 972766437 336199328 833239878 399526597 146898193 185716607 534648254 859018671 574604853 230954676 851068982 328504208 224194360 250319121 713086924 736463589 999810605 862306723 8853511 879321813 843022249 270784044 207289312 958176303 893513969 623080318 14308865 684983756 459061221 545100045 105921759 759383500 202102444 238390210 733806930 76972052 560075361 694787689 648672430 262035466 493612917 537842776 810935922 994460814 816362329 538518196 644557899 357428157 986734983 392725006 679772195 984435315 66911607 809358232 117475873 368359412 92794844 371286803 886063591 292947837 195799774 443728056 304019820 890214854 923761603 201249190 662147669 245701981 353602770 439958657 558476205 515037611 47793387 981209387 544454186 412751237 742945876 809333185 103914849 167167364 549168464 411161053 28593791 107273874 686522907 286696809 848074131 884031222 139534202 295730450 840651553 626783400 926737236 722523072 202768858 344744213 403202672 776476117 203038880 919076447 379730852 241471681 433575579 178119285 891929129 895433959 956729979 768813781 908566614 970395704 896640751 810319497 474427062 216094600 864798045 367128072 608821222 870575740 175816849 678015201 157151433 153267574 528845952 550197793 779959788 292152828 85994826 960684821 201150486 29162136 147425616 773872395 660158303 565292374 591767892 182620 757173608 945061499 459649479 594932653 704083775 187689363 548904911 482655070 819463114 599259268 464322115 361456717 428008309 268055841 378890227 348730607 379941507 962444653 279466740 466865625 124540831 730242612 50810558 58228411 843791898 736488542 168101010 450463890 834025301 889390137 908639585 457406996 101350187 388988527 779152093 82010139 931724210 199253419 296435187 548152012 195118635 457688083 986149327 599058163 563978570 912240784 624811788 764757199 219691369 710862518 186520990 712821312 804882380 826191618 230672021 907842304 488459477 796528614 753485897 249971767 762357630 953866465 900732196 914180180 733812761 15591859 898245649 982396358 230028206 473079001 600400029 761119508 586311663 261114490 881742381 392015668 623192294 881801929 568714002 378267242 40703972 214513071 979154885 964158152 745433849 938158221 983022274 466218279 922539117 26340876 279491846 375361534 957052390 289583394 542768411 705949529 126842419 768439657 404355355 209552996 949624212 262119335 811227044 750494405 704562422 915459978 575228253 662816188 375282141 792629701 278532160 604948681 939595021 587184337 432661962 178274212 143050292 62876995 615265835 83806486 76022438 908595870 349286087 546654030 432282850 461868900 907071931 852675453 348565146 506458758 982191424 801241172 529520184 559139425 549987390 155495840 427336901 626169752 792076044 675931114 756008760 407527619 800921639 443169439 472670302 324629574 896671233 150973952 812100824 847902146 503481562 57623699 740046561 641070896 237107993 776470972 141151203 933015024 920739634 142251729 357409992 941739251 198486458 403977211 670357393 782615041 277150363 232041969 383384439 216309002 590118766 128463083 160929660 931769680 627741235 893375129 967989013 864039854 450865470 129057329 890316220 397042644 497381826 265873482 786735667 763594014 355527749 828452747 55344674 638064994 209256757 583413570 518042421 202703466 661073387 318940179 15798237 707610899 141826618 498532737 810337010 77410644 865899567 48575165 618304768 686897715 861958013 923101892 855771335 986394313 610703401 109441792 286306310 520739348 945578673 206258384 459026085 444980049 846281521 615527897 946521609 360845397 205420851 288417045 662144052 241080918 95229126 89805129 163376149 524804928 944080205 236471059 343600439 275954630 170562807 651259338 712980183 100873892 696210952 598653094 880042982 886170410 271506440 487976654 598523294 700930075 772571545 216413626 214292402 541990944 386603036 967850559 111422725 54999252 94906262 142575898 309263435 686810315 926396729 554642700 138211167 103421823 396605240 807572517 455898029 339266259 475246974 367427664 492550526 696166945 510874055 4948844 869564328 369987427 913504083 652508087 570202808 379677168 292969518 214475402 989257662 430759311 74600574 496769011 468035150 169577726 22555934 722484834 182401392 605433045 636107486 227966211 412747324 43280871 686205591 825130844 15378284 548989683 600783614 45270173 310461379 18939817 415045205 60018592 543001061 880121093 881162794 261188716 596924551 637212593 984531829 697253496 498464151 787904177 12590954 727386587 27106623 644146221 201572612 40870790 575000275 507232284 901057491 189412707 918341770 35207052 836524247 437441391 461252956 521690966 352171949 375204102 875425188 471505463 866086054 305059445 740226639 375988727 424759923 833383341 233562899 682656723 236539108 127792611 933286998 779254074 727608823 288780152 109148577 988070481 994864772 920032588 92754925 999506085 783152168 256413518 337803663 284655283 972967620 372948849 173967597 929722262 350689183 183967417 461081894 5209804 675657139 895004210 605355885 488235512 811048159 627460383 996547057 434880573 350862810 51757453 19418849 652019583 978663372 53347975 38304532 152401679 38435721 258910888 249692843 685538955 647246811 428841713 593319219 686162676 992840902 958057563 129973303 350413519 556479039 576884806 684343448 710723057 549872014 433627212 598017855 552070288 526432684 428356311 300382338 94670496 646287973 153433583 294505275 763405316 954969266 160718368 135771919 137777503 353757668 6268096 678013131 77962178 961384978 920348891 658863824 321761760 219346997 990311304 947392594 262707384 615199876 619516728 901482095 144470793 6929000 256894726 613780086 533109501 680229496 553431566 622812700 15817620 12383259 676302865 372767438 312169870 353984226 636312697 506343982 978439330 532181970 963288152 838690777 119850750 910421581 747950273 471201781 597848037 971480598 238695988 457598962 765969818 301738514 591874184 274966641 114241638 663770027 854756568 988454201 30269723 949236406 288721449 823716320 249062326 535404678 755274825 850045230 184843304 331148110 987689877 100581840 352413338 287604013 327104849 293888059 664382133 230414300 425468625 808571773 699508372 460855091 314873753 361198883 528371677 472681800 196940725 675230014 121751795 585871732 949274358 470568935 771020695 593262113 639112755 744963950 924401942 563383280 655771671 627798412 871208159 295029415 70042542 16902776 505113271 798629142 978310322 289287255 265701536 146850074 844447403 627679667 727124877 570044727 541336586 293584940 950714504 243674198 20057686 769575565 26059496 348468036 930882006 796067103 274886857 661162794 65417358 350913464 484748406 25846055 76997703 67642803 836954559 170336991 354798109 365161600 545641454 724513456 52915774 925669944 722468450 294203071 40004619 106392541 352917351 940069227 277324577 407658679 401130283 930176875 175404256 900387455 224825293 162091089 428324580 124686149 828839910 590747985 425452515 295716939 966883859 345476965 529265448 671736323 854141933 662703990 453813688 912613064 115373616 716875884 801307588 275031020 924558295 95685322 988701104 906843728 425448464 102791462 941111311 502590615 50893445 705346758 232862513 384355573 753640550 644962625 786191173 886456103 103728859 361426778 741737352 881149804 318373347 210682474 480069379 884052736 189615658 899464483 164155551 988537630 915850868 434390273 899455645 691731331 56563208 671336695 479169764 448450482 433672097 54948166 508063496 50918304 208214809 693575878 45042499 80248268 248314375 355830184 166798803 343367747 409662826 823549309 579557158 697517147 621353796 706271114 725311066 783664240 958569122 730748799 519240268 261314202 217980227 381832971 830828380 15568677 476609886 691925060 631015002 68486719 327969878 376981533 900359880 351055834 719482585 545268497 353875926 778258915 843251395 724267260 648937930 501683903 1665212 511315141 918894175 191196007 405703477 910195824 735385659 190728065 112423173 559083676 488888010 274614452 289967577 330651252 6463316 401619034 916216512 529797700 688775042 404759129 582434133 586695641 385755484 677369097 910598611 579865873 585547379 276100745 672880054 940340577 705833782 363720004 708523766 351706578 792431946 153467309 496947254 249626271 446590716 134191110 340248698 605314835 646215967 770349621 499920957 914575750 882518054 53814686 803568386 580128114 230172683 240299692 286223015 458234035 69142816 309240065 452529563 98604587 904123948 36596946 57624927 977273752 586794145 202917906 374842073 14900710 75555742 214435000 179544142 142423530 832438512 514826156 778131688 764907217 639800914 183726465 374072480 387858210 504628838 740093179 823525254 905095730 714476401 625573907 272410574 231605635 291281889 74231303 394171309 404945426 829324575 293127290 920801228 649616453 922673146 920717988 700617470 304920106 702574753 855639838 95430476 638301300 858424644 30579134 303868892 765190312 18332059 604024738 508893163 158697943 585761602 768846497 450970868 376501869 491561705 973986194 253501138 469599001 323618404 782927608 365235328 89653941 205869249 322302157 361789811 57890459 766060 254411140 413227723 534512110 409959147 565030812 311697694 757863655 973867598 761194471 358206111 40354665 684232340 634308437 135008655 700104406 350020643 277122649 182776764 237678212 489781400 254613140 959319311 591465777 403715432 965671094 91936908 354313902 530460539 760973872 837081215 7455425 638890650 892861572 654388739 801461405 407534798 731403203 617534481 450381387 415540987 716056873 90415053 368687988 275389192 778101236 447450849 177601010 651072824 832424149 145696887 222115340 134589682 641114396 519481350 61997369 154659481 319049004 516614566 723223602 502678132 454101938 14621790 220715317 843602563 118890039 515162880 783137300 194175518 676036496 155942902 617448246 678328346 550754215 199136060 485159429 540090313 575377193 61093356 460548488 264029469 887084955 808127448 857794605 228548498 393768688 291891580 699155371 802247340 332427203 473782169 847060215 543829990 379046356 990071999 831822423 702111677 763800451 672791000 430999230 670146357 560455072 674441205 20641479 260464647 355627229 762243790 797567241 289031873 268759986 193227392 341767334 29477394 746497544 857462746 585320508 670582258 864219896 943077592 531542726 194018842 604418620 368744400 571264420 273032476 509715693 382690266 184630372 790712174 250458218 676710116 284070860 675915110 204303222 33533550 769278526 833156514 35009312 39233167 564388555 623144865 575498684 314370963 741545544 555872371 781052984 524934473 422265402 932276281 384098574 179797482 564627964 983325052 859036545 439686670 161026715 567683392 737197831 380350535 927339385 623352746 383609410 130105742 535418356 990489998 613118709 89824944 116003027 230992614 261366272 110404764 717424600 488925680 663342431 291682132 556090385 731773495 355846631 428310090 234299019 508096237 220670384 267238877 786635591 301468197 874611818 368581820 160025203 533022449 658729900 746100183 655073022 352157709 949514118 608320785 356403169 738230607 541018512 68457693 663190444 821994043 796250565 864990488 390793896 585612793 252693988 958335743 695491289 143971010 751862736 984454001 697391225 272621489 46697385 509003930 733657616 989587249 908292793 388158550 314379752 238404703 521573285 367843562 340106333 20454734 584335295 908308302 264202593 8338130 108311254 872115990 250260954 122731163 182717838 274912516 508648736 454174311 711717934 865215879 763771527 144773199 878975356 895828907 961860105 850205855 368812399 346251395 377552889 305971297 576962616 94399868 796641612 172222037 86760857 570413461 809817676 984495883 6917451 301884151 910651736 198429072 38541092 355803194 252908909 727252765 677677725 193474380 84420193 152649421 203113039 174945861 483505296 583275719 878008637 879719992 136820173 255138015 861724671 950436788 948353029 43298151 640081499 187430813 764174060 211117369 40085155 228154443 149675622 581720394 520295691 725917378 436887401 772034883 422816876 804258267 587998426 656744521 630017221 564055011 182801036 16354229 878873014 557685091 785283861 272270648 299517736 130158502 974699787 711718412 165483890 613604139 148789169 455771200 598860425 876344312 116598353 394391233 9539922 657045807 447407532 678494860 15881145 923784240 620376082 675191249 291180344 611403489 457004261 555116638 377330949 777330276 956353738 336609214 365487877 131775822 873156120 154715157 870652932 108128167 838205183 604035415 359339367 179749799 267162991 498579076 708108667 884852532 854793909 967804768 677821003 701523040 544641946 369673911 648415272 629454152 301866515 12297408 180245912 283620007 990760954 697312593 349815267 283752671 166751161 717773977 295925748 613026606 188009079 717226672 263948573 849701779 340222500 96293398 976101974 745988193 230618749 817838977 83313588 396938605 199754578 485441567 221623542 583347499 703065431 567749935 80173935 325097701 98488897 787300095 218279065 132596101 377000416 307364657 190457758 245218064 338116839 312912345 348479375 535756213 668818976 808862153 499257607 760333362 233153613 102341810 777465606 754050837 820570913 984082039 946002864 482848182 753062324 578163711 884449976 914071459 206211317 881691963 313658815 41711445 502644953 408616277 868358496 221138510 69698050 518415356 275103225 995494401 995186036 678227511 753084776 455445876 290423220 502483425 954479964 710528341 105808955 974096201 534348919 765524840 30696785 658854009 652674495 917632354 817192884 352941942 634840724 492626180 778854794 842560215 207341382 36980810 257063870 353839249 816477823 809938627 229385165 340369405 571870063 138299208 802829908 639559928 556818098 423386398 989913206 747211818 940867255 840565898 588112862 666665769 316298769 523550518 339538694 103091668 476051499 496689019 214974349 357921266 794801193 171446667 682958262 191745129 92718838 470384567 339070116 66078597 454413844 974965402 827121429 451800372 875276133 735467961 435190698 554999496 58964067 524457896 630928466 664288338 613432374 281455127 679938323 867293763 343264943 292058588 445528531 597226726 960203222 440485850 411739103 496793306 231441218 587085859 446426256 686342145 734659734 127312606 229021302 528351676 875521826 581631136 967252852 508595150 219170635 131952792 823729173 829829486 73188212 782069316 515092461 146443815 437727250 597169807 698632052 378648010 645577820 897497119 941018340 835282722 121546599 897458638 157366730 197555341 710571243 662222154 290495820 919089398 820862371 107312171 210411081 217515388 802175921 502381674 735661095 686622006 600397101 935727740 722884079 892515253 428899202 21999567 586057812 269398550 868248502 281219099 744327447 923214459 259882119 817419555 257297936 650432056 519506041 955688608 467858293 479600447 279310209 506109873 613733096 599512017 85935386 540309168 189080674 438084229 413989806 414359060 393703203 730022918 714282884 546363347 552524243 375448462 413454916 582471199 659725657 259946299 415917040 728495960 595139755 655228522 833378316 140299379 824213331 571614312 7334267 231116859 874629971 644347118 153204275 667701086 142977725 480778796 385922850 697919750 116498443 713703043 792135701 823513179 275156706 249828677 42146536 63124200 726438669 80293372 90272625 439490258 89672185 103866078 99116093 700397770 18824141 470781864 216939621 15399516 265484144 168326802 8484036 187761886 125133905 902655617 170530107 705828269 638762150 466816279 562725875 737917387 638256622 14888467 689470235 233790322 744317673 169843158 875662766 318191202 669087972 217497491 805481367 739852620 639825347 980569213 357277710 338616173 754300702 551674656 577863161 108460965 999625781 48637784 534808473 495124592 975132791 10192186 93330833 772008538 479493374 840496148 545120310 952994098 238578438 355317319 606865556 938179414 708910340 290787699 741589530 846885979 436871826 303439029 61994361 57525672 185642629 190210865 745651745 406909207 968433663 473082772 661665854 609619626 897700898 610593525 964078 672599209 226630086 236289723 855595136 778756132 881825677 82367526 315345489 534096344 728811258 901531794 305839587 814889026 798732200 58163321 889587377 311221459 444960162 420219024 256405327 314901715 990430574 922670709 513588716 211308737 326276431 743824777 131994612 330736701 18870957 878110652 877726206 321387548 250802392 675155057 564885560 568787742 335314826 905216325 543299954 126633065 429205735 559894879 272994605 953976054 391909458 2457729 216799329 65750674 160804067 438612984 778765703 148074129 417843859 616818171 613957978 202972791 195471773 193271301 380738451 72123153 85093808 568440704 882489795 274034420 758073431 44194023 159372222 750063369 884733579 455780629 452054178 792632079 882344555 478694606 884207475 818835537 477058674 135427872 287890009 950082127 775734296 190784546 860171936 940955700 830534231 886237981 431807701 263405746 495009099 623691920 57694866 843875841 655038357 173672687 887805470 419209978 166665229 314202569 566042021 577282028 748937133 788502092 972652969 563744066 970691665 284029315 912942083 64551968 975841226 520109581 866963562 492304414 256693021 618031709 621596117 135714868 595745825 703530702 821269614 990730462 327609245 921252768 18776442 916556164 934299736 821114957 317564959 360256794 958746185 941996011 23170245 342031710 545367568 521467003 561793135 771989313 453615375 163556866 604766940 56193442 675748651 58039917 312376175 831444257 316209336 386966372 889670301 9773590 974434725 564423333 258103207 88866549 7532321 582638035 501062572 218546202 394316396 877701948 856481679 5629944 74105156 233415280 308327141 243503184 372397489 823880556 720636860 950095776 394230547 991016506 708413462 819131213 62495676 642768071 892597166 182716799 475776314 302019917 330449553 206530714 216789836 431417643 546587035 67241485 532696851 820400321 542245628 345285225 222876556 143485441 650440983 920586683 119148281 26589936 761780563 748405674 147221463 269998229 249609322 695988337 498909808 530215429 914902950 86404947 362554708 762948723 464313008 736878630 787156446 579106480 91905757 433617221 779134955 909960920 225611173 10387205 112471184 11448687 81044754 781682153 397746156 544263024 535524710 418061825 528770156 410977842 381264042 647797743 584178497 453421309 917950971 198242685 873782721 444366161 950913935 552471794 758272057 968992135 494612397 13859809 378507724 457302959 92817353 883283129 121238820 326212584 531727064 940337054 905555019 771254193 500382307 681875306 640991914 211713214 377145861 460987843 382887776 58760059 400321312 199136103 948505088 653740522 824146939 685619312 81846855 147212837 528116778 234082704 269482707 980102019 994620076 833362507 375328534 976278361 492599533 738319182 930133139 617531007 509543943 403848430 627330591 547316333 946073841 833422095 514702634 405606295 38222419 7614047 910667507 678686723 706186464 774128715 895858169 904241758 651567965 274203302 779789847 899009868 37990846 104172206 233521024 902612974 838010538 653067852 67261996 431730298 522774832 692501951 816317029 802638487 478300204 311110585 27463593 659977408 942162278 524796840 561524662 971069837 221129764 376426924 848632781 640819931 58369843 976913584 904312426 846358070 810479591 934236936 820912383 356247378 851095031 220118288 880737096 474230761 997584679 191912747 291830740 644303112 609798179 596677674 571654204 559155536 440792491 132650633 478945487 876332546 634410506 700980286 492179456 142750599 834607593 541452788 91810967 746080206 980680634 806719625 902344666 604049586 27316031 18658358 335578061 20206572 19533442 579635283 111431039 80014744 565023763 213422178 81577034 715674188 866633220 227260642 296427911 286781854 931438574 749979548 451956965 69640137 718987779 734046807 911937816 109665917 536508568 128370858 223483439 419158567 33023641 650594692 648162696 297704866 329104666 814516777 799848859 57044793 920584460 417890204 430060117 908113951 603370715 376335236 867460163 749923205 114569305 431452626 302962276 887617223 798108662 313332258 45297156 609663433 571442639 707748992 548539240 735893337 427645093 137418356 764061866 465452759 394806037 224509057 762571240 584528663 615158740 709478760 701051012 293551584 562470935 792483258 546010634 987986092 900030794 138100994 238205701 673312673 468649723 350372841 664655580 185250746 683590843 824420472 970199529 571370625 919252770 645732719 253052125 221106321 826544513 282901904 210092 303521889 672600216 378842280 651687466 996010981 71120403 213800606 854893616 237313849 672114902 162765231 389205305 363271040 31667609 136912912 211525969 352639533 649343770 938193961 355943135 522996810 777220529 174170897 103073029 590015721 353134826 364667206 413858000 509688658 464549562 353920305 289507451 751240591 198794839 43928012 821079963 860969028 534383484 441572072 322434037 813388066 281383928 829521366 109128669 990779119 988150741 171706899 42776087 289870702 307148553 922501682 406359291 657039706 816848877 692799797 745151920 780897321 614337149 862675280 781036683 849490396 739496765 297777989 890749777 965874663 288263266 70381581 396128867 237392196 855990350 446053197 230423958 946013767 383931172 879141062 87611143 422137555 711540039 874654604 884426132 557846170 161267812 143104748 890145531 926532491 293531036 583427631 921430704 749802252 31155322 371512729 946238294 852134831 697691140 685389964 913399837 589550208 120976785 911888886 335618828 283477559 378870656 65987789 237264008 862972952 320087878 201695592 291191578 988873753 544094777 332647495 377589606 277425917 430908117 527273760 909482213 790023830 920602393 643097852 372800064 404350301 369976341 466251875 302086994 331894348 561649892 100619344 568782923 290000019 986867262 377862157 906760831 581051453 194678801 779849144 216201768 72171639 859686785 281489066 852394161 291281225 818197646 764749023 577569937 850938219 480871067 885110711 627355160 536483578 31697790 82633478 153271117 552623717 631635051 9428112 503365618 331097396 676308978 32307802 333215340 957115885 980633497 108893168 424683333 111547839 869241688 289586405 362859524 166610856 773187954 419265364 454828170 984000111 439327775 954011214 893047031 229417983 182697275 74976055 318012960 955566821 323453005 981850857 548611324 202278282 196611581 391165626 639728754 612533284 785542034 61470156 531506880 105722071 125131548 828726950 346846208 859025915 164150198 505683050 740816952 786297175 67878927 33230587 893249027 583761375 620733435 64443526 342841632 252546274 724802367 590563693 13982066 261101148 781236724 212435427 436153742 33665359 549046538 474743313 626092746 505271633 692481429 633180630 318280683 444793712 164348911 59641046 185991532 969776283 771670473 775489526 761060502 811894456 780714193 300694540 962354795 769172807 53942402 257021860 166989320 330472992 113172773 615365014 989554279 9424886 728386384 916228960 131592465 641225869 280932886 99930046 296397234 802794393 834401233 751965227 50258950 677114047 294175355 662863060 413534981 622801496 368620649 853976206 413606056 729630562 965545531 113780335 335140004 166344881 74866606 314566422 317289384 834013136 125672726 318164875 352420294 658668527 564890542 148157136 401484727 245029724 647316476 143590275 830251433 823221970 252384989 207337630 180950538 925891907 975274682 975988282 310277551 230177146 690864691 675137017 29929926 360445082 344231433 860442409 189078113 467802560 208507228 593041682 31914866 268776989 994858384 437354881 322179706 566842076 372943966 394999705 495300156 740301152 561206020 439631882 203690098 79451045 299291377 278310074 841038188 412457869 749356021 329835103 525075451 810854442 508536046 324430561 450212471 334718524 510139912 457804620 387724732 988920998 873809839 535378357 932561358 488015374 317702573 666836969 574710364 744044021 180958162 76945169 566803248 83016533 735655632 482924774 8252073 963206568 513393474 422028862 428905905 997277005 120098019 974459452 294585222 599313423 753799525 188357381 50915317 569259572 997974895 115629901 96180527 956434629 111703427 852900488 931117828 388489356 60692588 651909746 634352404 91153307 179992148 385826325 292439040 260526056 142708205 86835361 576805819 260795549 291182229 632211663 158104735 784845156 528485147 887866633 597726041 657126872 338265614 223128340 985879218 910856103 106191396 59023108 757596253 613241734 999138946 908125008 412424936 995530424 6229 849331508 983419097 306446411 184371445 862128559 669067367 60723564 737569842 75206520 860847625 901553216 193072658 687934360 666909799 558013244 332869925 492451875 835037923 850416310 196746759 844529466 980678021 73577301 51530313 753146431 791403430 332801584 373008759 75545798 641937433 770743316 62320547 43189694 571727868 929927122 317645618 593968497 98135529 225334167 849349957 112459743 640133421 17211719 17922334 837366544 309839207 844881663 599939517 360124020 533364678 648001838 839541776 196690138 526681954 701015482 484262316 325581105 642038453 205886445 209040084 287397402 805330212 333089692 123949596 130748690 180468747 455451809 301332808 406693844 358608849 428624424 801329643 158559777 243700152 571306268 174354614 386179457 64208224 63312575 486526814 573362719 393685526 270132287 656647210 802031547 949724880 210698717 81780611 237935771 298747358 616727186 758041382 126465440 362514144 27052193 252231552 198370178 469561103 367572279 375511616 651020563 894597354 312908938 443218533 257664270 932272476 740703318 791743065 964356908 832576549 94276395 335840879 867073667 326069433 735697778 564770294 927107825 801224130 923716096 232604386 859609552 968499637 271704328 195296071 216388866 550824480 523295180 972333004 225358215 294216132 807682081 650953551 536807829 497183512 595507887 698715088 17964324 855222170 887996253 890502015 515841087 513821317 91012999 886880625 295875882 907567916 636622653 993535469 280702921 401610796 913277019 556882165 190378585 715208948 130204704 182080907 92544512 308950515 109355862 165908312 345813777 585418068 10187426 445963089 928148206 982822208 450081493 817428201 254015897 275673833 517327431 645201075 282728713 37916669 114745304 577824793 75580400 129605017 338498410 158125466 758234504 321690916 284366046 316434929 222858870 616971602 628804938 219422173 168715596 790368766 701987607 576132253 999875390 934254371 512164973 668144690 798853353 798869032 192415916 924152366 723013406 998844804 512984236 701379239 908279520 952454464 537372993 285837366 624616602 371038272 833255264 247449320 160096046 950751320 566118793 161278930 185729179 188616832 422543695 439608319 735530770 8899338 104363911 840271046 30159207 725675741 130978333 530897960 799363976 353174850 449509369 865360655 831647203 247788163 765209088 447659728 681078805 617035640 920514255 118096890 131545419 94654651 20778812 520290334 761729253 332185458 430399064 506991558 227374887 923399275 771420437 696907144 613071301 783856597 501742293 50489333 114360681 641719054 477435171 649572555 670033642 320786917 622793581 91657623 811396245 524431944 711134159 32063123 956865158 612159375 401798482 502494532 963255563 60950428 69549609 360576877 419360448 295302076 882853206 868186458 757770360 406419861 562814636 44556810 884494471 955646470 629481650 474018865 155949534 470782681 929677166 710634941 838669450 632410082 543743763 482052556 190382898 532846875 584548055 807975746 951888365 786613455 71002663 934054449 584819474 647013965 567714899 697957147 650254054 53465076 226525511 561950197 541668372 753400735 21876068 518162257 404187896 263096660 996459771 163600736 654637487 798315165 625167785 436302791 620667479 589037775 977343370 377916470 364250845 219710972 492717714 157891659 840970500 636324649 600425768 659944454 760697231 495657436 200715755 160722992 566883796 236357511 165704535 29777779 361238222 153989680 622162476 99269254 801711601 318885246 144576869 741841925 537056927 306827334 318411942 111631110 404060760 550403361 585066476 222811372 141405041 294304884 7706137 702447661 733424592 205342441 828786977 945145785 198664511 403477383 65521183 221580999 725592909 882214166 320706789 110421975 796730026 949659496 654341100 576657793 546902614 390815582 939248102 882150251 459333758 152969288 525613835 896383794 366746547 686837827 934469305 530669220 694149111 653026467 853581690 191244887 757038981 142393691 911223739 275196278 193442360 967187026 296723693 973985785 730308694 743355594 209426146 917362032 620588650 401764975 743085030 143447495 691039360 889097523 214500326 752656346 413384399 374203786 693950811 173758461 563679 957420820 865458908 114406091 404807726 764272510 401864462 234144166 316500930 725601630 253777686 389620607 213729701 518634287 921471457 173102825 243837653 49340298 609728018 850277994 200640949 819341680 379022116 577297867 883532836 292888919 813372636 699673532 281126054 907763287 262542654 194756264 935551935 655948410 159918999 353155465 519655922 255754721 720798584 324359182 970543238 74399952 933335774 868413426 753735906 682776642 146868834 900645697 301812382 953295509 72082905 438076732 970696424 271450425 332241638 609369756 767408171 725999256 957619850 337224019 816467995 32396824 386222225 119700716 724348137 28254444 208803329 968916552 356573502 345592456 329923496 385940833 575395357 129920896 231076530 226126944 558878004 193453973 690536538 133429937 768457813 654292109 280462954 731088028 278357575 564522370 466211131 506011799 642581607 537926355 926728889 278664214 362618041 963161528 757581474 184172938 348245722 289915942 993619053 661711011 132762998 205823275 196494366 472725235 202448780 481203434 516004723 729629419 547323898 762224804 979743491 732232606 339193925 368459899 205272146 540023122 884423064 652390879 627588414 273359587 810265307 436368372 270290457 891059553 157726613 514795728 670902379 35172473 450069448 390805951 554982427 339359347 975652459 436628845 599678599 834699116 260535266 913019284 62838424 190391926 38564042 632174312 439798427 61612726 415136719 982899628 759776792 951701194 418175302 232818088 844459786 364373557 552865580 758402173 980601182 314267716 295236094 321392865 740834939 473353828 609998742 996008790 682685678 315776644 324650723 86794157 881141208 976101742 272262412 474060625 147933991 543778486 240714670 522656326 20058347 322911427 569468753 211015597 603520194 959247837 805750258 116223379 339324091 294029176 36573964 543732273 652343199 296743892 515678177 48614036 1255825 913061429 638029293 690758978 157440320 671618986 662551537 174176128 812523749 623042136 147354075 80672890 332789214 293793849 399417446 419037751 731897105 560890239 560908296 916497092 833349406 430642701 922431389 596943031 200523843 641410624 380049392 487590854 876716551 981542650 976125941 847629384 578073783 428024684 209029309 718418038 339021910 715904849 155592989 754745305 867724306 680137180 970409394 127508132 180554154 964417963 320657673 321314790 212839390 839321900 837561437 342997233 229385467 603669231 165811619 486635618 724136181 292646055 309836117 867538286 372487651 719084528 73916570 359779819 377204221 604409315 326036634 528448196 986133795 421061422 475653797 598674281 307964880 806099564 600594470 551777257 539360580 483922145 908269723 372843694 497515088 594074375 220842406 294279887 848164593 49641949 206944961 371179047 874562885 470895279 285804303 254090321 815794329 108116963 661333691 448306752 751662295 535960606 160091206 741513165 680759313 611303873 840235772 853629893 202987495 487113499 537897879 522743787 65491907 507180634 9608147 206413952 393617624 265080468 33916455 502444687 188455449 851691221 723514172 596701907 484052066 227651955 175779287 619288819 259834047 409965395 828193965 874717671 810182415 282859672 928265031 815654557 928561908 443808016 19458839 182413187 415442377 295701948 724260222 907985355 885476776 19644303 366634998 625827423 68060539 315442008 133777848 211083858 288739220 481006499 511363522 467670735 847736871 847020078 747038561 287497538 384843027 192157925 966235260 913465077 611250184 403596552 852627450 752630998 462763975 671734832 77124994 52310164 705444534 427445520 868794950 685724642 318706995 382750465 240488953 552871107 624783328 140583085 623961849 837111300 195586973 612533656 895613945 807126447 137183453 35777482 146215386 656226394 845328549 990303499 81946682 492262126 669819886 227995067 899616026 625480817 325550864 399487829 252978387 638300769 431132041 750549449 739981868 291314969 68747262 220498604 166173498 816859694 358467333 954135431 988595966 793981851 787227207 594764554 201425292 847716591 275051710 763419979 468265987 44074831 635738349 652015490 194463947 704840769 686640026 343586428 828468678 428433778 310572794 975536914 1551579 605320343 623839861 236915026 31506595 856901553 347985247 763595454 16442783 503627062 511944818 208544223 496802423 555272923 438623550 68050313 285772589 358588178 356020553 708581956 796738722 748402792 863388329 828445110 142102959 109451205 323100664 560589948 926730306 228820197 987602094 298575920 55888308 611773793 411792985 657714904 399393947 970258953 935532739 835906071 813839365 326596904 495669125 439576150 95667185 726747130 547603080 979866172 748444134 40645362 29231922 804242229 738605547 605239551 817848042 631114892 158608112 833198064 8917680 844448479 93004525 51667248 977483166 841751862 606506121 888804447 735025283 412096928 444837084 708768743 285681328 232734238 944864257 162791194 652004087 107146163 35858923 84084678 921389602 976503834 6502147 368660949 891630612 426733482 121689648 725719488 74810153 215100953 76601817 497794003 842448773 6443437 796344349 820297796 748394122 593336654 318504548 380247559 640318500 544250605 278138844 546758704 177377159 401218941 41564200 744693774 257553120 256716783 699175264 472341385 947328865 214814695 470439268 125236468 925275681 918228327 3647983 590710024 400583555 397980494 846187284 88862065 741745743 55487734 165904043 722568440 47113107 887054968 780606857 854460117 842773100 11034254 845596841 554251078 196045932 982481880 287869313 771707409 125005176 567234528 183132616 375553478 172379736 210613430 878148078 554899415 208679399 767049202 724085076 348754842 452029484 252771802 545503317 368541458 636357376 445324535 10506011 969047607 763130387 848206991 652719099 893225386 743479108 730124139 835664678 298313334 705253679 658511646 279020522 734113476 289351075 11408066 487562469 942356965 294485154 695645452 48049024 398731112 12388498 176673937 569662130 835527586 753885139 13096106 985803127 322522964 687546735 58560247 21027247 786315309 769428743 561772313 135389474 550240053 878319913 573698507 352717623 774715869 496367585 652921556 686016297 67875932 863502077 201064587 961522156 72623971 723488994 978140611 69225610 172163146 18191812 260579352 627650689 549184480 830359375 316771521 287691557 605782168 843783535 485884566 39594728 950060411 654148986 824844911 143857207 621431592 585063090 372687150 886851304 160561902 214386777 14239220 755640348 604795408 383920798 620027976 50527007 171114305 856723847 339330764 808342713 697666661 967027378 207184582 401699293 884446719 163015221 333695855 619779130 589524831 611276416 488184245 721036013 313802735 747840141 796386846 250660202 420343567 968131680 264157687 93121503 518284920 804760634 707864417 141537912 514516786 985505790 952154587 567817898 354927027 103584261 616635789 93896318 438872127 482097556 257079482 971439859 974432931 576715027 514274234 552275180 446388768 571924330 737591135 502789101 937420381 465076487 651375863 934880193 839644143 276352233 927024075 186286020 903828556 237267024 462118440 146225675 451915991 824213518 460599834 102638875 943284905 751578378 521596020 216559371 849070949 277823448 134218480 926582151 189048102 987979417 855704109 2730099 393960479 651562282 863832134 568310098 124671841 58017620 420057583 909543051 408834050 955666337 722444208 879103593 620476178 912121971 373302213 747322799 460946631 641477834 948890103 623876651 650916166 494323692 294240472 179065247 268264491 260702537 448157685 768973844 178022881 769945851 840545442 286402889 571250562 199347336 349297176 470130544 917506034 248649909 484447864 91753290 831536605 3326910 993769423 236593987 410048222 156106086 527983255 191198695 145107756 619050217 530930769 66244368 743327987 526762298 730611964 393773731 241677710 852258631 842364850 13405322 352054780 991341982 415536785 994269858 276303992 120127938 116860798 817722913 684467760 326130605 543656756 914538529 348798747 636174203 295093563 930015043 298957177 503211425 393790971 377997742 209535845 86384567 48492463 703696411 283751673 308601128 541553082 141129155 328949449 201451565 30412166 656886936 975394709 634882731 932592535 512179108 121571112 217184293 614722108 228957322 50720073 633667248 365251106 943298053 138421122 359614361 569319031 762006810 625680917 985831408 382006691 247161504 664423572 461245464 455896269 444157597 569128294 992503791 849201080 646754827 577688086 419296508 407683040 250823336 246715860 227948701 604741710 293713216 751683694 477058752 847176798 577188834 917441386 36699862 512758900 101048645 230816447 646673591 566756835 716484455 574847559 262929639 590469257 632435403 540236241 924696872 344285591 548124130 6270011 879773043 937407406 323158846 185444447 14125963 932197233 87248759 220464002 870288751 155792580 973113894 352067674 167936272 283550243 530775185 899480551 107200488 266947623 996176919 661387346 202679290 244895955 247862770 545137207 682324911 414890744 650705335 666515064 700129205 465446183 16205444 633820751 108647152 130363469 103407501 603327647 23279788 671097686 498741423 520291386 896486601 179067187 17982360 771760639 250009253 839153570 177708943 332309103 630600127 917909357 721558289 531335337 952408810 165089285 840127664 451599625 562922377 333714795 877155595 542323401 704743768 348757050 763172806 176534370 924395581 619841877 439679405 775374964 117118207 443899751 846703305 513213099 132281045 424788657 403566799 438962488 442787003 896683594 56048128 365097312 837605678 311599774 606377050 941942062 293605082 890559593 962202702 30730988 763996869 576033734 763521793 647894591 887458938 206154478 247930424 335016703 869737351 464863996 165875485 859322184 817374343 742027823 211380398 681690141 70011661 784966546 25018110 725743646 891952068 219552643 928819565 965327070 739870837 254308548 317214417 220024120 97669869 210943281 238200125 10704064 173148451 635857346 359066099 614741677 520357015 361286020 802739019 112590559 722891274 537254824 482874643 679966020 63721820 70255571 129019930 687241983 561051049 260049181 877362588 787692219 542873263 135451009 607139035 372281179 487962233 687357562 820822192 382793347 345909053 311555169 172859811 240669774 331055136 736529173 140256892 522995057 194571052 832124824 516901873 692845689 928998941 525043589 101213791 422516924 156617465 220607392 808658741 66668507 527962703 184804942 945427353 74344567 960448889 900019047 235788267 841456738 551559873 576763763 871034045 732143605 441118801 89763984 673048108 623215854 434714024 865124014 807462746 733872109 340076637 731765824 282867133 357749230 464162809 822259106 891859377 555236682 416314649 2001851 934194635 83806953 334674904 344421534 34421969 9160349 216589993 361266222 622132222 322547781 769767658 876383115 222628254 566382674 420404839 33421356 211654559 309865400 798681099 947108086 280022811 729830129 763706340 422732088 216253182 514484023 712222499 729319084 42726454 39059624 40544126 632401557 341295536 478135441 51163281 752662570 969476296 702304915 309912781 675543173 275241594 867255505 815216430 580584800 957611047 250431579 956562294 976306103 361881251 318549137 448195552 954197725 188495111 36304886 288368807 452544370 808290538 851994159 673289044 945465458 694788666 921109684 720263340 353026737 473980987 318577654 806008796 211204349 903935465 929679555 28392955 502129268 38916432 342747611 936443514 731121287 945550433 93762724 552322615 821443187 381218047 995395505 71035042 165104223 592553009 746966210 315480299 747702367 660811382 871992755 974004096 637161157 823793411 365455309 913698374 483323055 782935145 674427588 312016518 568258924 352476734 854279357 703850466 674713103 683443900 79219334 527109670 801953371 109793749 320578223 618285682 212857047 558475247 911461846 357924991 605082261 81345021 794750801 917432511 687920414 653393833 683760224 128170665 549877614 722282904 806606285 927257345 519285615 898533487 654961599 120303338 731525520 103933549 286944969 805987142 207019037 135333325 864467474 75011058 442806914 967985777 122179509 854962704 110101875 592307770 879309024 943044357 688255133 968591220 354551971 329789026 937915569 819005710 733094522 196799489 577215932 874853822 258394751 908835874 375669026 284433313 500004696 783631246 76951262 301280404 229642889 94215322 659963597 337349919 530717124 23824873 715814216 452392242 873554175 981924291 705483209 325102031 780213717 656407266 496666444 108335905 805572087 569352609 336479786 873154851 850213778 523505038 96461384 410711290 826404263 217024286 144055720 949356546 554930819 642605578 179779604 757612561 957950059 929317863 831100519 919579000 309190598 949339437 477373361 979151285 423903414 562768925 697157719 753433451 333384919 319728884 450602623 581017714 509754093 688902972 305221467 748996889 821612623 13339414 905037557 115860418 34970450 123749140 809803366 557670326 776036916 191265520 732907176 144504744 943332099 497357603 193604051 586730164 429858663 388425281 252315971 667395736 779057398 382667472 935177604 609716548 921691012 839656470 142132775 915086379 486641932 147483276 443937590 783444559 207888097 324506702 93376700 793133401 265587048 305798292 276775948 700495929 70841165 609048249 998860205 928686001 230714973 211871938 759131218 782773282 131972709 28843290 697975662 255335173 404055457 518897478 920652849 549730575 402614230 919031164 555178683 800451577 355229941 197283585 732810467 309285396 287536973 699404757 393224994 476699786 449043200 167112705 938706246 533289205 410903327 311832568 189322162 313731163 647356445 129451571 771027035 862906940 568757838 161616459 159422511 762040266 672848488 98006302 678582395 753140962 803913238 564555010 29752983 79682377 472661015 516590698 140814754 837799418 407458057 371016420 785776645 855390004 777860202 401576970 104105887 557388160 312499508 132822698 28553146 147648012 438354855 543952354 368514950 292556979 432999523 652685919 587740912 313741393 651661289 244692010 43811918 741905609 293768584 847653757 528266683 118950362 412713744 783241326 423527885 930370532 859154612 587704227 463716814 11020622 477624633 346300744 964359670 463600573 499539681 181774338 728101729 943181554 92669471 837369420 937844844 171726322 634420632 603754011 129743638 237416516 380523609 477115680 157878614 689999034 156761517 178588445 144104931 914293352 205459449 317856675 549204747 879882281 74486584 791041114 98717988 423164906 27454655 582643327 262793848 530681083 325902889 341644880 999146921 453023762 258749176 738664361 482420870 947587004 466649119 458071049 133029888 567661624 257566644 288449258 983229434 289023111 691403100 641534273 627420884 985844583 324830375 394987468 596174769 974257525 904000767 734343646 295932439 735140761 888618377 673282532 251164935 134507728 52524014 175571191 425536102 906094810 15130868 272247967 357969911 365943076 612235136 567159946 468690131 436935897 969998933 964330616 906426712 304491647 276705974 11757130 808742407 227057737 799210098 602552571 222797926 131073192 963137316 783717384 412321523 101446697 195133607 945983279 106314732 354409290 450365927 399450428 995384488 438854860 418223596 207351226 815833969 893756858 595198998 649136311 982430464 997771438 594628996 38926269 854089729 538325973 75899832 155356017 259304557 319462689 738915411 459635500 443918478 992163959 961342230 253710025 632344862 494725929 638850956 457871937 730998239 249321702 472330448 626875805 836478163 732695676 960526277 623463890 796860447 325144708 945915296 339197852 937471462 109720203 394120636 772739872 876742131 255742740 796203135 827290627 163144038 255887613 87956061 800094281 124188337 699770385 524482854 20028964 397882766 227285374 244048429 408722966 570971007 757292530 853551127 235826405 754267130 257722960 49383579 266183148 838383493 562818523 182970881 991452730 710984806 258698085 508976683 952314544 30444604 258585479 841852001 378098182 743415154 273673843 984864315 977863151 348832967 887372492 495517069 488607713 154225785 599463824 336536492 40292180 154197742 160942204 243285504 713389269 198355803 497909901 193469577 673277830 668340938 715264594 914347317 969568493 606727632 575148290 747625506 871791711 158631969 30463466 406172878 881919873 377052608 214063809 126999795 189605656 938616352 527684421 30932007 309031900 850220444 523348423 486822685 1440206 727931951 955216333 474349881 411136260 895302672 474721142 91530731 406073367 768404208 195441238 565444083 155528656 675150552 458374817 724950783 717981683 428276621 495382852 46957395 676045211 384178671 38677282 584730660 380620972 239600965 934664176 687979138 352816415 78546224 971176991 993430319 699467930 231642625 502680304 817155796 254407829 890603656 887641613 686267468 741502383 312235231 708916716 498099895 581739828 935355380 729641053 908828311 384849284 12347491 706234299 217873797 842364716 454678282 472747469 944855284 467594121 261672120 16118643 977201442 838189857 74948242 398467672 528317567 31280187 471305459 184163992 806407149 360515116 627149019 588231865 895176823 862198653 488239211 871175831 462074330 509866978 253336988 282660866 45076213 267106993 876536469 617799408 699494606 368678973 86816197 790982383 631377959 838408167 145438727 418921550 511493522 80871990 175402672 199521709 525545620 454779497 73794847 953098092 260638646 794477169 209950590 933564153 117066664 465305999 206379493 534553649 588599925 506515417 256605223 843933812 612519892 648895117 69835071 261416886 369554644 880929324 322313013 790127629 331196414 322500665 632869660 546441447 859076931 124551543 119223218 559238136 95926977 75816165 404052097 807773546 989329155 501997738 525438138 260860247 526720245 325482601 69762444 733726466 629383902 485424544 542088123 658482923 528893393 517851407 777040559 105648560 120753842 845420605 54400382 175218078 41607755 15723328 165570662 971001711 288066214 786747031 89535406 135278754 112650042 485116876 636985692 108132131 878183220 592492313 487843970 900331641 816892545 812440261 865621689 96513612 593670323 601348869 673735909 27012346 988742338 597617432 594645346 696700279 119125417 960400701 475314159 924771743 751207781 282781444 923436406 227059938 910543052 455119597 580897474 784447769 170236363 658929641 250061939 775310490 695781288 861296199 597202933 522749337 117073807 554311747 404985020 551469120 221379081 380093116 729608133 129537113 935156431 163654894 376768278 571585283 549440896 691931677 57862442 804179898 299796021 299053827 254047843 397207238 1215228 440352574 19279800 928146989 943191685 905832874 640587172 886205541 807610564 197051458 584059597 838221245 88190334 514919255 978029431 256590889 565792977 708432316 679219023 317060087 970996390 496198998 221546835 91056955 468759775 828833807 598426776 343298601 652708686 91607613 858194101 795986159 673166602 935547987 432562629 686422198 296338137 715943846 214103507 54487594 4315211 199280477 164881482 22459060 81953668 470825511 443082078 849319329 263296500 18247300 386054869 373704695 22503743 186348990 379335491 597834084 799459608 607165493 635212525 873720569 288813891 726268251 627432677 960915424 302010947 952476406 101311882 281160506 764710377 124179811 906647171 706214525 912756718 861202052 960947944 710771243 182040818 680235359 786204452 690683228 762912398 864741089 431734384 691632224 695515161 627699382 280201532 544968477 886287921 621710285 105262307 478819810 652463546 271394185 271085022 156423724 650606397 872485766 291961854 791392142 582988714 757922909 232555621 199061993 769831677 256067813 990885822 714623992 210542769 193029220 260778619 628050201 770251043 752119613 729674225 167576263 410345744 641309216 521864563 199930061 177296142 897873339 10299968 598835514 79029498 80094420 59108451 554481410 402302049 350341558 683750380 85947354 866905530 698447139 644460518 219374213 513785281 152485568 173440329 244626201 835524994 848865873 511807723 451324712 629713044 714271483 903339961 315888149 711975343 76031899 36057109 628954923 996354179 287067774 341336410 132369170 644942819 68673178 837981561 979789032 522881337 735484443 286433792 264956434 474028185 479425018 364300991 162993178 394683553 509593308 148752411 27840087 926620096 214974762 867543988 856680359 476857072 380662280 121433756 503549613 16277365 935683694 431281636 97780889 773374396 853120407 201356711 53467666 117905840 691026978 586819612 810640357 913770010 529806991 222122965 396290052 936569552 519280888 926353021 73017002 242013736 487378799 268714907 455623052 399494187 752256644 898052269 994484720 688270181 819950687 716917995 785883042 383000099 516025691 737229787 582975964 659885132 860623392 532480690 243858421 808192332 823093475 843245105 589722158 272623027 817748462 783588105 464073772 844878098 777680843 687573994 279843226 241816232 937399027 616582763 889749099 298146092 225356421 349542637 460130241 964020721 889976093 675404286 56006966 478003194 192302255 926947249 586463555 973485837 437895450 133277454 524900675 42390369 329752230 479941683 77068859 139500209 778656551 329140371 169947280 257490308 464833056 573339252 368942821 672236448 912924806 779694736 171059132 449793230 31878287 823415328 335653944 577951299 880855880 933208271 653581259 849153400 18050013 202955707 345883313 114804080 5536361 781723990 436419407 834522646 482587989 554521909 186077889 470209578 200899171 15213033 172289124 165184930 604535756 261109579 981415442 235801401 515811125 81140445 801133806 334914441 540628322 164835171 152703942 638984639 973882753 493060894 601078287 572054347 787100412 74612246 524696323 766251913 511012494 586920178 121211168 718695315 344649024 721560101 824992388 856046549 201555169 314790342 779138993 973559143 364921619 522700682 399230761 478306426 795179042 726591788 941695493 626146447 639103796 629017939 542369071 942894986 193745666 141845989 721379527 768890297 45047851 680776449 769444855 10500768 60221454 853336195 611469157 433331561 199406569 827101083 992610650 521478275 905384902 457078127 245117756 38419330 923062083 594614993 487058622 234090074 684482870 602688578 390416296 79548849 51830880 149325333 603046075 354319394 300303508 229908012 404124601 830373171 882578946 304594806 195573156 769620024 296437417 66722917 305758598 187983122 282345317 166115186 768742000 614251387 186378033 691517764 428565206 747239109 990925891 595807174 550455279 941842763 567543032 721324279 581455577 871090398 987111812 20207892 482182988 883427328 905297436 445747535 437134012 363034597 770348917 810229490 280035678 496518566 835139931 260794894 787638085 679130561 68409611 335319599 184596144 341124595 460019793 845573024 92458923 648828381 903290232 947836868 776124669 310748163 434332183 283917929 740212960 954813711 272457429 841575632 129665444 742255738 332104068 926483783 202656214 897889521 197601208 445787606 270199990 555873788 377919999 321434721 422692808 127328937 427530656 308074750 894588231 138997346 296299374 355446594 661697480 215511475 429046893 53297085 472490547 925969347 527701173 571614564 826344512 757291912 304456638 41495603 657361596 714575062 452752457 496725891 632337995 59252351 409621663 823147571 241982407 77054739 950695413 947310028 406035113 960373180 876664523 100293257 373758993 992152500 567909069 569789700 217071976 906968429 157786744 664093540 264113719 88854410 635486254 271673320 980199589 677132870 670288318 431431678 817101548 723694677 485357730 689322105 254791098 112789080 517848758 993127396 729981338 912761375 778896570 936484975 225288514 157941712 647755573 471459196 278526061 421884429 57886280 978548082 618466581 802248988 832684866 545880099 408745083 744460616 252811787 144176543 971097841 262367782 679303528 81749807 12076375 226186051 476416354 957511138 512688670 339026560 176830742 493305136 715481245 787082878 205323893 482985510 661096304 514935127 752671230 837090314 19098110 290120631 49648952 79735877 927279285 549878772 295022483 289695343 748448012 473805374 763277995 230906798 316107419 262915116 157133103 899956515 372469095 208270457 508932491 403159716 173257304 628625209 458726066 322205898 58103888 291057424 857746584 58912434 161728337 484961851 187313876 318188224 450967994 384025024 353846180 764789361 181577988 548764162 67606943 835602255 555975750 340019703 588762337 398183987 159710219 983178056 260809846 322466629 721136259 399138325 933653630 124117895 983412020 60406606 893764357 715132515 312432232 278642737 982885023 5667805 332066871 741453872 329632362 203941025 98888172 49738666 291014187 286803422 595776349 411653586 999662568 198347888 308813530 271662682 435657339 889038954 74988055 18274283 556806618 184459105 845480190 723357697 215479125 80017217 8215478 288235884 783636007 508323187 485049184 673644806 972776107 499619274 602509705 685520321 447680688 833416083 919718974 56776748 824931745 448628403 522526829 521386528 806196220 967794447 559393798 106993429 363046626 756745365 396149676 4131489 342600084 468480143 874134906 396721474 43871518 187503825 8711247 103073973 76868465 171722082 474339928 684856615 365670151 912053071 81817220 106308365 938835426 21171544 316358666 829767665 261587763 881843074 145342387 958316811 85423705 597263033 36611280 241100313 513711600 561912695 656191462 540307986 40511120 922083574 310225753 151288492 668784077 450191231 26452970 553646005 412444234 975778951 467505355 734670875 963119258 449502133 908632632 463314074 122808703 515154598 770405960 524431638 877185178 909178841 883285309 271468494 712802576 806177419 428013358 584813916 853161466 866693720 692427173 627978881 494026834 385001442 286677648 443080520 447350793 995982346 151326442 266925008 80790032 685923727 565668810 772912592 521468903 55114809 240198038 956525190 107354848 122985153 465091887 771833500 173094053 410838841 651594644 76149137 336188205 716636568 632861633 811096578 858722784 41520973 853363032 334386613 629623545 291002947 615885959 526347905 607661191 247754230 850586837 283339153 154937773 60361764 507905446 34641722 353790712 307183727 168302361 959373036 80452067 451162773 727950389 851196778 488036025 47615867 37583308 400005204 909148146 173698510 740486494 450600873 323143751 855967482 995430139 76277477 443496815 845710887 409462415 767344225 715468424 913056958 18132995 384647288 652114250 739960266 923494671 686321365 607415692 423241265 149453519 507597001 680447148 335847391 577760090 323151056 712401860 35717982 430599661 446687660 113827259 150930451 325231305 908672952 167060051 762255002 305965909 541373983 746409226 286831632 641517174 943433566 566830360 636007849 871242568 956475411 596950631 378884403 299044979 160277575 875279026 236494868 58908831 923644094 464447440 846826210 220185366 857328631 255883248 777919215 908229859 15264630 168345199 780218634 790974603 331352024 429051667 793394762 535406747 206446997 414246941 541527967 524525403 571534866 346167051 947574841 837860963 663464914 151472481 935243928 46729199 714180042 58972551 463032733 545683772 645610045 467275844 813916612 294482059 284594872 564618926 573958075 273024243 803361037 705142120 379150236 11291073 425654290 884684952 313178137 329424489 875507723 13251753 473124613 139917031 896901836 770207221 844072690 819848562 722298185 853411793 822717181 781693676 90212674 344233965 55453002 291024165 39055226 522969209 109064623 647091360 865576258 26642281 467498571 697413756 489809034 699211323 528731732 281307805 126463456 547889133 203950424 521086228 599241491 981411276 846573288 910396521 189918411 780673491 792915815 804585398 978443816 841686674 354028583 172115974 207244589 75640963 631412978 775567893 603496699 72292065 845738 60907157 981988142 923548999 879689161 831622279 2008194 435525970 449495012 861531970 860073385 424340456 999756014 661431087 445191452 31118002 65562137 301207456 271259528 117182922 693235513 788700813 250034247 7857038 239745265 763195573 123913864 288226804 575977552 107349037 177163759 623621094 52714778 137243038 301914221 747593920 570998356 261114748 958843967 191561167 958675253 68833388 828445408 752307360 482723522 62530699 166221130 74621437 250288918 847328511 384672375 720914515 832709301 376394649 57405599 954869458 958537742 582711956 478558411 899102212 123736680 910059291 341863793 787550400 53597670 725286338 37725659 812733806 276809128 796570762 803592060 47141098 606455662 99087608 613101408 677106838 124971762 610679909 598816633 94989757 919233077 466350828 655233747 596542996 893539214 30823398 164624744 592364999 835483842 738638081 109076619 30006432 983030352 75245446 847805401 225502497 243734035 252968729 560763031 980458697 796082647 751839639 105684349 1821438 757429784 662991511 505139818 736195271 748497571 402211517 285262025 388784846 80977566 538423367 414618608 147281993 261086912 828494386 98006348 251687122 665702942 132658229 914215887 288276658 227791362 379465048 801410350 190304614 253185555 660394772 626679534 371856128 670980976 173573827 971421051 635058771 146278530 214969881 204485332 877785788 257745316 809538498 234896558 219607895 303854096 113635948 133782404 104588518 886051974 503104864 296930702 325109481 816472446 145284750 705651029 611541642 8307022 443780825 294402329 491654884 287841510 697134503 799135314 914852610 123860055 735810140 420075325 106891235 754358808 726668937 986490025 239441373 229719012 484073617 966352676 441456029 940843603 715625564 754055326 999964636 460069168 191092191 906963285 922495654 883917779 432799150 566790174 898228782 149401761 784002363 306262309 721836355 129225471 926444570 947224472 17177416 464394224 961602581 543000208 539778363 270408804 440603958 374073361 891768605 724594173 713096212 647970739 732781514 149517963 26008460 98118026 950481991 115810219 46928370 67168530 886370571 130243243 725778789 299921886 609787975 311839905 796694711 518069666 973467458 441050573 586887577 968059878 998880006 402091836 587323211 428011593 258303565 380140620 162934296 828892939 994538169 815955006 739428067 914557559 253922785 521566573 720812246 759067708 133389104 511670685 591202898 606787329 867906798 65668413 974717367 918870312 738477955 936294831 282037151 293717629 760820569 268309529 645312902 20402626 786297409 923927571 895242501 984310232 471096544 111420869 625868186 245016987 812706815 724104685 509795403 92996969 985760760 669555731 480795140 91184008 233093099 618127872 400159587 21825491 935529852 105993719 566130617 465601587 968169423 121701514 94497024 198901829 72108968 843757349 109082204 288623601 759394508 500200936 641097769 200532863 698847565 104591621 484345372 411853030 49066011 499276206 827969808 269116052 156875076 371087434 172868048 230851966 452293958 436911424 504995369 895358027 763391242 900495715 770015780 441662812 368391618 231319452 281388172 795857723 252135543 587576326 489720780 756200711 130311770 844114738 338136898 820844562 104120842 136831555 396539459 845643768 352619713 817901936 344022932 218829432 470559921 72344493 185059439 183984267 14339089 186492857 646911099 450015980 496362120 744269555 536380513 833062557 538732065 913971446 467084500 145292233 61165753 465046398 514885170 607664297 843004468 410224765 639305642 369138559 720123669 579672117 242955281 822174975 853392559 149073766 529161280 918730258 603578917 717949265 943281197 478976184 708218406 546524637 478829291 824960871 430750250 100056228 930583149 517842468 407162770 321825298 724880068 81823731 91173035 100680577 648361052 308727747 554557246 781373961 67419594 824694183 157748928 173938234 539858116 30675186 636333956 819514506 856348202 950069160 718692779 662754560 437328717 211210139 57951015 69564686 220036876 87269152 931138328 753868117 394818773 664772230 574300227 748839521 444958952 45730718 975880790 289335785 325298374 124295764 273090965 545798167 540657827 282509127 710370071 27856016 859477050 857599040 838202182 206311979 375685777 499296521 222931318 229612039 449450239 609388504 939377959 733900289 849409011 737455213 138345979 713132402 690319394 246923440 483067950 268393773 515885909 437804756 953316422 265860133 499419678 471517823 766573269 535245061 979728183 244814554 153331960 437784707 197291972 518678117 549959868 200678898 511792620 956648599 999109429 923142057 876422687 398363975 776922102 111504855 471577343 196208523 802507669 412533353 306372868 408697624 186333631 933387152 233396197 462635503 773665705 553432644 215556848 133094288 706459284 330040651 701280987 681072204 916764708 145994473 284298087 673306175 407183675 444476073 779532377 10030263 724393871 916969134 339374318 829066929 112924303 215687084 486248787 204888126 177335435 84304974 971946866 898924440 165698291 647054026 687839660 495932586 545632049 616848784 651716706 207016525 711596589 282930769 530948632 801078903 400794135 282251343 734680210 99778658 56960474 908192563 991205684 573203 979302708 850366385 905967770 817328173 681000723 368533531 534048455 143905309 386233623 928615443 627695604 715692010 370406772 86740998 874878828 912414873 176711168 983600009 578710026 192527257 531290432 244972795 379071318 308947310 988996805 369699834 892566401 722356923 199172236 248350911 49423970 960204918 175546047 983156203 661767663 129413090 147045270 805271666 748885512 157882251 215169510 50437554 939108277 12590789 22423911 853820358 911298698 684318657 974733812 599071895 634302523 347832837 270635359 522959034 41460119 891226207 815333224 806140968 649500364 516139556 5604968 66097137 240735750 387790874 714541029 655863621 241177131 907297321 856092722 874771134 518364580 164737829 695585620 19727975 212123250 916607318 344326532 846463848 902193236 373560750 772191655 238367575 666436521 777240525 680784525 301431374 775950246 810483495 317632052 287297736 686879164 222879708 465983213 637825282 673515822 91919517 652381195 819843794 217928673 68557259 151950144 979978738 460933645 398740177 439837657 575721627 786622507 667601184 306407601 81781454 635354489 981293946 340933070 195956153 777033351 819033515 231614216 21168892 350502936 175070389 189310628 760161923 340349416 438825945 649905474 879736564 924802880 43475179 697620770 732648673 796719205 556696728 415601892 259482279 541814349 71322727 298124980 99890220 924948549 808045009 433223736 744233342 306652697 913321198 532946832 80425549 14228886 571162632 510471422 323981605 684865263 337924996 579833468 733456655 792773615 343531548 922039859 537634212 431021210 202562789 267822520 105074131 995883404 991340054 485215829 618239253 322085292 836601620 196756699 853927860 661191462 186122337 786971252 60742588 873268893 251988743 375894757 956052033 295918412 749284919 115632641 749860356 776027186 992282907 618804212 904630833 851870226 286934578 492622772 235875477 80170974 632295641 111533433 290862171 572261704 754274676 271133731 345189060 56827880 477689046 747792250 410719585 965267384 909514645 68571639 797081591 201426768 372999936 842925053 886563628 689923787 350375585 413228822 68139247 515599693 546350344 592340511 359576274 84277612 666566136 650601502 506209666 34340529 593913738 390797416 123706681 94834859 581697555 431781482 713799403 464489773 774383605 137047214 610872916 249842629 17988137 772676011 866326887 843300439 864305129 932724262 155466358 379742935 480368314 126560540 17677155 955568788 430393946 600462820 780623917 936179211 81011151 248544967 302694788 47018920 27511485 761759110 345554652 258506861 558834906 892132222 374900421 401784997 193501484 21848647 917642354 344495429 13333909 77378291 651283006 763384038 662077851 637042447 548729810 520475535 346567787 78531699 874095588 108751431 303919951 23277855 201130306 825202227 991641140 231146282 193597323 684866139 213743093 300333005 502665548 481457498 920727295 833927306 824955930 243229218 7635121 395142154 350095883 983561480 889729992 303306389 887593092 482325774 751508339 16492746 712267627 664571495 447537043 129296761 88416283 780179021 664863196 791841289 261634516 982230509 424523354 387637100 875637722 164218052 534309411 375485467 796063531 522888768 895269065 416186515 708132413 996640118 967835741 288183848 319464613 99713412 25584034 415879495 21125022 756033087 813485254 999370980 195258357 270128630 643346846 451180403 649443749 818935165 463746282 474429944 68702838 266424279 266827639 379437183 695331212 586807787 716345723 338164155 704021276 962385050 327465973 679979494 143807231 364027995 967829383 474973967 282357850 606583959 334999093 394814093 634212935 226884752 546856102 126609737 969095947 589322578 257040793 814442634 641910645 24193968 647330419 730031701 128487710 370173945 346782235 360540247 177652598 360617528 155579742 82466382 568099061 26289877 739906709 306384427 339813128 511454470 30226844 385250060 841969119 415240220 703481863 248684311 624515278 720381788 236919296 706890613 854974633 309730825 163403903 139265911 649374444 742701265 244494234 790751168 896974246 415952387 828556309 786393606 929153131 92861699 69883989 982973130 145474613 941797467 327640138 999846181 56820080 106662533 429594602 807138780 600067892 31232560 776761425 251444760 510110871 805301049 621723127 996648459 36573436 530754060 609685698 618628800 233879871 769978372 761373108 649530962 422529478 450378918 925613116 224864949 44727509 308541718 913539521 598513035 414782429 273866957 290371765 65649371 460108371 441970092 39419713 568730983 587827724 253325373 661756454 444030718 887748829 530431637 389777185 490533368 578963124 443525746 732882552 571034748 296748520 725012148 135202923 11457610 604199440 117870535 301325365 744315191 699933763 266973961 169558059 688122018 794333680 277448083 847448576 702338673 102422114 916591996 21426997 107993195 695153918 798277765 410118050 664637742 473467688 529694838 881304900 598990431 671014087 43036080 995679447 778376434 17197975 359224482 941136269 890962347 846723638 419797031 18429730 634518471 972326062 627658613 837421733 454226261 624951987 665051277 919169775 995944060 774658590 317124777 653468763 996215513 172118882 994360906 191009880 650336351 115675036 677820330 797294875 504476649 217573963 169354570 748332512 119041325 906024094 44901358 861572372 136701204 318009446 718908753 638181435 68304999 757845002 564596041 223954907 88938147 102970402 127940468 211311479 382187340 874771837 170736463 838007782 798878572 352971110 658574774 591282238 605192755 561676368 886497169 827927631 719849643 244144879 278213144 413927980 323521974 881810870 377162005 644198576 315222632 332612243 523554230 707842630 955092452 882067091 307168157 930977602 41948394 581740596 74124812 524593125 249259558 686383417 453135957 907275479 332115088 136894357 135561466 502281904 15252343 448726405 923220874 688160752 466062601 328820766 328175435 808908590 220382745 565603424 906055378 7038323 566829719 714852092 258425141 193389287 469266422 905507776 726880348 499648892 985746817 731570999 929521747 261375599 510444307 878770733 579347634 757539134 744215666 538580579 317297059 373192572 817283633 378452591 76144733 750034641 136011455 469202847 857606054 217310605 662912365 768926638 882126698 348349952 70978753 101413295 913180304 296076406 932116633 689173524 463522910 816207373 477216719 675112650 622094824 175982292 1968144 803575505 137366328 82868836 886994882 87924186 118877188 524976498 381344826 425830912 158044050 297291777 732314928 341876101 726530802 135761688 794918836 958997476 725218296 970382369 336635855 542959174 587570679 992086058 987322457 605602658 696689854 915692779 122936142 576138983 970680948 174600161 272217848 188819693 57686333 247410949 271991381 5635675 8458534 395907539 969787667 719031082 757542363 198110713 969287122 718652840 61657000 247375280 367275552 930007158 990405232 123055627 668913702 73027903 597644334 716452989 859439287 676542787 910368056 568342994 775287340 183590339 738904249 796088145 575840478 845180724 607796030 791396511 975488990 225928944 911056080 164013315 396030740 666082153 845009930 998011113 166800561 189626948 475775266 562818758 896616314 278469348 592447628 236343519 893130815 530365499 579950938 509069855 682785256 728069890 442436430 646177145 790901912 857410981 908551754 970788757 412845423 914640624 90454683 848217655 54906076 644279469 110591043 56594901 799251693 792432196 730280923 457176553 830850666 652798355 96100129 281214599 652149932 446437839 573965402 571504658 334862794 227572661 793438389 213407801 934187608 521363428 166341980 602646522 509835630 326828224 292300727 896138030 783487826 366275151 649737360 648758785 526781759 666413854 972962466 833560536 774965992 720253115 194362604 448024786 465292374 410619221 998975732 598111742 342615314 884636487 915797676 805420828 697114308 456818088 251894679 194271343 925712861 520515999 285325715 364881731 978088589 113789257 437151873 907650536 94866698 987825081 838678461 894473762 980033752 376994483 920513472 337220473 337320194 521936325 879589491 993976411 138592516 749391417 47354911 561798164 489578663 385872471 109095683 611181343 331977595 2158740 324560706 104985134 853495796 146244721 727800634 352141457 537704128 541170670 461268672 792028657 951932811 694873616 108198256 662950365 296451417 295578230 912675656 448840918 114260666 128174334 638546078 436995771 283978893 186548553 429971698 269580149 860885327 387856713 784626124 798433942 801303157 354275007 885733508 581635803 94175328 67839019 776741780 932742318 851716177 343743999 692084321 609624951 652423835 244437047 835602839 607802948 78294186 343791826 435263683 349035256 346057073 481077799 539350747 525350240 254333918 331156821 5942650 259246600 429468796 644334806 852195200 324235154 337646515 260137887 694656696 238221149 546029972 542431573 638987626 325433588 374573123 58198294 199570471 966856126 430702728 287505475 293768994 469381903 661575708 221389843 576437028 826944177 674581265 444138871 163074726 308682815 345209962 435719261 204690130 127732648 78442929 269162677 16699871 401592997 729932533 179640684 407220395 443017663 168425099 284301735 485640068 380357964 569216338 715918261 269618524 882352242 54632130 668986611 380611711 125022426 843366205 658730856 344282948 103188250 106186048 201503808 779938468 597256100 629312762 809427129 688768572 654778448 983606038 866992214 985743054 861735960 138730710 999496911 678845193 596210292 64524035 444286631 74026747 816615480 704102295 296292761 655606605 83275893 714666642 637931735 675626595 147757007 532875274 842360664 202523664 857396161 724323268 792187515 483456450 297215105 331338379 846299377 196021561 788547335 485734778 449358651 778429616 927707153 818062846 190160393 501648868 377101285 685039189 206359109 368446755 134003148 409069908 277951428 392473686 518585751 884162507 81166368 957970629 190762020 741160146 245798810 888988150 703471567 314283075 932897539 284241979 772686624 906767080 527037712 986668312 785268444 317042635 142219857 400426559 694937443 485865029 900382389 103182198 396130217 791231884 129906365 682984715 121205913 919241764 328113222 668859754 502588824 522032794 579729635 996758542 563917630 590478768 39337107 972842571 179398960 587741291 86670916 911789859 133934714 379884684 343701217 560023381 147147076 91382123 438670594 504271118 806614800 117519655 990949873 874878982 585829487 168339290 605046719 691173089 719763849 848717996 446416303 991741824 572051780 422689689 494674590 398235620 808032037 930352003 398794180 93917855 119604093 892859870 613807401 392415337 473830628 450276033 900826488 913020057 174283001 945541270 507708984 258037093 775705517 411029513 324334836 968320516 119437176 692724192 473331636 723226533 816201159 614978516 807093647 53647726 528263305 740341454 651716807 426370767 85180648 901965373 190064215 396597517 620615079 933973501 279669397 950622378 29706096 214324174 786115148 217204670 17707987 124473162 940347791 533367308 775598450 200740033 848153428 718887275 538849507 219699587 200617463 233407445 505304068 894004742 168068182 574700994 533214672 570631822 273354068 76455974 346962842 653445848 712179572 536761414 629363828 127194157 568430456 723706118 199054712 247249045 603146834 280901166 281954948 159340429 201202674 131872795 420736468 421966148 958752415 448556079 542714081 213001583 218516696 377444485 298194385 180050251 998190459 828249586 496667550 46620011 448761642 571026551 648389111 15001211 897726233 348660340 879933269 753743367 546059639 514685766 334395802 754188103 306161614 890848882 372413972 245105190 702777285 218022243 910755286 521186128 169991910 302601547 860798656 732254584 739655296 448132426 648308334 527076003 209950944 619777654 92421896 85298121 983203022 740217610 566721962 663836673 767658015 679078291 646205647 449631021 82952822 389035306 808826444 833438150 1247198 89495923 79827644 499764538 786214946 449208477 59922168 261140718 342728349 446905238 53613368 531277324 3363582 414736019 505273457 572055284 354748852 755371954 722662840 588511819 50708029 702169152 152816689 929208675 38139066 373847276 838295133 243945191 252676176 953179382 460464280 321208572 428964278 27508391 789099233 252228761 885289176 883179643 957786315 90450305 17799783 772694065 357045742 665991310 316234330 772051312 111231974 806214550 729894075 639184786 622262824 947125624 589136649 159577338 375102589 997545858 532509935 868871427 760525885 819323016 443882976 985851572 162005653 504966355 3239534 189302272 15151366 628798437 239861433 864248672 200092663 48700742 526723837 41852654 716202417 973556344 357556293 666213590 694092664 961355124 44355928 44414527 836185363 615441816 680022203 222980288 819065040 768979728 540244593 504710187 597108347 434700788 197423014 463236952 374129945 694248376 220004004 782546895 508838388 35960052 877048655 95391745 360768372 975756211 153014067 254986818 688802074 359547055 612198362 428847029 492609849 875489421 225791967 975402391 657769096 286769373 303895847 170910026 187573718 106093722 68240819 730645015 952769964 151156387 36633218 813919173 988628386 837969190 139800591 550044930 92559540 600984942 796443385 864625817 961904921 718404921 925700355 813274223 635156233 294837295 684700354 437042335 887062316 203348590 364209296 181347098 689946093 754300868 531813213 905319261 847029264 922858346 740944737 214566969 184301179 60312654 165499847 485186968 393637917 582126049 330632491 853918129 766190988 839038636 226035219 741789224 974685542 164250761 53575200 408476719 337766508 856661539 158194460 810480165 604307043 24957014 974602676 434841651 6803000 923222812 882976256 70198865 598855408 266537777 581653278 649619752 272020449 339687518 778997746 668801671 287804027 516027047 721544348 265857164 58713915 642356066 358892232 926456104 571442637 463295999 742998409 183612778 723108733 739503461 597859531 277830010 296072248 209429095 455122037 211796090 264232305 813690355 654812904 183051089 443032972 83493191 202664557 747459971 749123525 524925739 791306171 511357216 56970302 916054796 962481768 997368757 580843416 626485020 227959980 247658149 678740795 535053268 187414905 619968378 781335626 867893852 342576292 716109921 993942143 809060894 133597736 416679381 143242583 981458432 768786712 82962985 705608201 507523863 719014992 314303539 633178380 585130376 429263528 35855736 887390123 563569638 614425017 435374164 233376339 956850287 658459561 848590317 304257774 419752485 131961215 662451060 953646816 163311139 291112759 799798250 665864544 379971610 833386383 737610423 979505723 936071520 824856114 598298554 930858831 938351184 84263023 10812946 72416560 688162433 585775746 967892230 441769337 133827102 334982116 35430049 53905783 65476530 365345858 852443114 454000342 863995580 120808397 288719517 536015308 102966796 316161235 754708483 394676895 189219099 790113746 717608265 359132322 323195073 351056897 369789379 922444646 722914982 377383159 677348782 694666278 156923676 951264191 856424964 991415968 624823287 474482752 994070381 764857860 973604510 922316991 381721765 255839190 945256431 811697533 301176641 700236403 935094112 979083728 81330956 64790930 192371077 145714052 521336521 641746138 58638686 953155462 744978470 762712770 809876494 456226034 22918420 583563019 788783731 206281644 363950671 228134056 248916695 745700753 342725891 167801625 58282550 266603673 731274880 804940989 258478907 933413453 389052806 362259125 850206131 785193244 979688833 545965876 83276258 636905540 371083230 653730978 632974707 606820230 540350787 439125485 571524570 54726961 134315977 695283183 818583758 32169841 831921357 103659299 8442450 104119431 909086477 413640293 954917012 897428456 282423062 805025026 389215016 29028799 996729391 317582059 453215875 726142514 198647614 177973533 754609233 191254880 893662787 281456969 406184299 196027286 458142496 58476454 886202763 799414324 900461943 535016856 423983857 126078698 187201745 688691809 681012075 791142743 83421259 315104021 927518845 351709004 59930764 232721441 347628437 851907043 988997323 717621139 477547641 667588304 828266317 237313754 944667720 191620893 846706461 94368296 2317229 420198135 812970648 432355520 944161287 424677839 628190657 603598646 172893198 201080321 890098634 649274144 548599804 180907202 756016091 91577239 127003993 737918157 923944343 445016024 303508328 989176603 630538843 554162072 637857225 969450633 820502260 5564882 712338350 900147151 578111916 303493934 924178728 299339538 699943337 983146140 65874162 610449140 661378657 553815731 367545674 837100440 529925558 933089172 153381068 886826235 311011717 884744015 747892329 26654617 939036531 490678845 939805114 120582849 510141781 593831118 97429347 110550878 272913604 165920331 631516801 525847078 432800512 394359346 247653016 567874187 642571578 745364925 97062810 567403852 826954791 655483393 375046159 808747964 886424728 896643579 239264417 548186575 588263207 788693381 157758256 842196617 108609189 795412605 855726450 489259210 337325566 109806941 24875809 710000981 811770155 586385397 212552854 953670497 638825280 270018796 408514631 98146898 3443313 972083675 682049968 171184243 8551188 228547569 93282321 408183729 374057019 93301814 373154713 70888161 527150279 454745796 672732642 809957075 324239939 141866180 499593299 561691036 47809876 249508163 615959832 406152416 835296500 212067097 102576017 651751303 53310052 394742668 26741110 164438865 33280166 268201505 240245677 118727596 993480579 672879184 825662885 789944462 770682587 830602118 311093670 234937276 234276483 585542778 983332676 71175756 346239914 295564380 125299645 87633093 572560226 94125873 874375865 31813562 285559818 401346450 599152815 775929181 599197684 275994838 891515974 40544325 98432088 243153634 83359628 371861370 939128627 583365457 338398682 804715331 290013937 961942931 279641146 699572225 991225854 871905125 56134522 481063730 911625203 585173474 562782289 636891961 573523998 240738929 643102618 361280928 349937455 225001518 708446541 715307548 902636791 937224729 282898659 696252106 450932073 875279537 690097631 55401164 669843571 46596114 331787308 803820789 185909332 515907758 442623986 656441980 88798188 416871640 353178409 540927238 145351711 24199704 207489472 342896681 617099720 292707970 288467129 881841373 894644174 698085963 807604451 237221251 593837013 426373251 76038884 587921599 563064179 411178083 672615434 30105412 249622890 29482629 941131078 838753570 520966473 462753236 387438605 576888160 780223259 336407015 578479300 621273438 835530247 589842980 15898617 678753125 879467044 869892305 724673189 21800930 806642062 466827276 487988746 602141233 386735581 243580461 335519744 732177323 800918137 196818019 72129144 85043839 340564948 538538714 216749397 628352910 358164026 320277915 418428430 413478146 369580207 833605419 301805458 615804369 549953504 29351986 251843538 368472744 115198876 627596754 653125716 257041751 172428618 945103608 559932072 964618336 912398847 590952328 98419662 326105490 353228744 815518660 581028657 617284837 673358823 784636357 703170512 505010887 83329073 678861928 728869614 907249733 451419566 917719395 945979328 365706502 383312506 347243618 665602503 613069299 905503937 953109182 284885355 703540926 264411313 123649624 334953498 30001175 851229666 681444338 180148159 165412745 789838690 575680407 957140280 338566251 811756284 73301556 362889621 519570311 779923024 708386733 365980053 103463985 990277703 959846529 706087332 195319385 502104984 659857758 47895031 441376431 145104848 20444928 443966315 839785523 557151040 677738302 625910650 668208746 793238191 563237933 69478149 352451643 137122849 855425711 241054328 431520741 669712708 341289142 968331761 401102503 596198835 151777572 87842448 236036676 280900830 135747264 51055367 781674343 225847901 203257702 798018758 217406734 274708558 833827903 850386487 864097466 64106499 277850043 632341249 902920182 537813547 192438570 993047379 964937044 192003221 339381235 303028249 768507935 300429971 956556526 988134483 314944643 961829181 787349695 193925795 332856597 918378079 799003050 382552103 675704379 114954972 62434398 388779635 307896668 771309348 694597377 885316635 526740177 584813968 347295716 486545182 188346272 920408060 443850406 962967967 92924452 932438829 812907011 602021863 184288215 39277624 288956683 193230752 783762612 716426705 778629394 944941945 307252364 398090831 499560177 93900821 140039557 135623234 786693593 103211276 742350680 795171863 166692427 910757873 16246511 840975145 719624246 882356650 154291877 472549795 119717971 67380937 529090632 653264292 630097859 142870913 374562713 798826050 567240998 167571249 468860409 745739803 824524128 101100957 441016842 26870837 43631913 709042080 1446886 807995515 107191379 329952030 643789355 895317178 58482284 890096390 721209274 572699093 311998125 172937884 400799679 769088443 155701723 961878747 85009241 281795884 598026430 305368068 558659804 606800099 927905903 976385875 893304669 179311980 974044414 686055231 540176593 594369054 836992700 981883467 667415646 790762875 864693520 129118741 363258753 117289492 318383256 422587340 612784438 930399588 678457324 387123725 64591620 486031870 512114137 3047650 828122214 928185460 689249052 74015441 699527152 990324169 513200086 218492295 32846421 41874721 955332947 953583 268018212 750991029 87580375 647039793 562418915 787112370 628085703 747097923 537090357 922035869 998673756 188720739 106832069 657094857 399076542 173205801 531921065 991515507 583412353 477964595 746441212 398024937 990503596 281149093 191311034 356670352 78176118 949344120 519046656 319338180 190803316 529180516 280435910 224545034 761548357 664455680 145785025 756377376 392305172 719562033 530556050 880023662 938829398 684598953 203681536 730016123 935038031 96236739 592441597 485156135 306442554 919709948 836583854 688871147 644512563 567899756 935950941 691603110 837874015 478744086 484876347 786071181 905380390 205520024 46635104 483541331 393217270 298291657 789784198 13402014 964635268 657647573 960376639 162961016 268197201 483964157 161995894 120114285 399341033 602858934 795213817 924159804 290542886 293931684 906213048 948680159 400438929 998309590 822022662 361459880 480517537 918283979 132613901 401342394 789646965 406459693 278151620 566746093 120509734 364583259 678587032 407966205 13035026 9254361 179980030 362577963 825933034 463252503 418817196 869611640 308994091 882829556 503723396 959419652 168837326 678585225 594267929 221744824 482349441 446595756 141408797 267572849 593923701 788376719 205365061 23055470 731789752 282662008 357232325 296917088 133205370 948487033 429409569 702732153 836254204 175429067 181571711 91618212 866896279 589193382 625491256 319343446 956071275 233996293 972970974 652681648 613300385 561633851 440363194 41429441 942409974 536267653 250844400 546844596 572204663 653610047 847917734 223551595 569561301 752837171 653842936 695978632 526369669 6415886 853623839 726486687 819859882 855594326 709961990 991377941 157636931 754915597 76359836 117914381 599527284 237436589 833494799 607391645 127083480 668043627 250129569 223778734 581955851 361372856 974813410 769279870 806754858 98393160 367571819 461812801 603218910 604705101 618912707 677604814 775578772 59683191 980978785 953910093 966778348 425366466 437921190 797040497 636772983 417712658 761505571 552605936 736054293 635259420 715597925 177994396 820430294 24457617 942675704 715984134 588284831 609938449 85027825 211601133 917067988 582146034 186731753 804712156 175220662 903926677 258848563 983212332 972201341 70029314 382497308 127008148 135145844 267691021 579616857 675362940 459359748 701261863 623623606 498156540 8293067 523304956 708469118 31626566 796388799 113501386 469235709 558605605 579043125 882362491 429572803 950695211 855050520 828560593 741299357 426492944 113210366 551630081 73389422 178402053 407611097 302606641 47682787 346156307 309416918 871228023 261653672 374277102 116150466 456447657 486809512 298692468 598759686 663781196 513267305 443970310 688289435 545473753 363989880 932995082 988691877 41212960 731022892 253600038 353199128 50208182 994396682 693970759 296207576 131569515 682628080 921577233 824669879 773244522 323338832 140051523 233150524 582907398 645474528 626906667 136892902 133652376 159738772 727922359 876027478 367799788 192993320 871399077 844223199 626029101 678341601 23746254 197171444 307712491 453527141 764174160 714021537 970001946 741124394 831083312 212993646 361760815 287343341 666266862 403609515 336211923 335355463 622278957 434240679 521676708 926313199 189255254 113244914 474857914 427499992 249504890 91353995 49083333 546663659 858244070 440597471 488873920 899799918 161992695 739619474 531594822 887386473 788570341 4593356 606464629 520924648 473037386 485853061 571206062 691364384 755238713 666824638 807221726 713227547 772020397 540174183 325665186 387260167 481114531 908465345 554328270 1391203 857137246 615038127 290557190 831137407 258376285 753216955 803709336 691745900 548422047 208894952 223808127 734711563 782894757 432505267 748659435 568146549 743927159 159240195 31186502 926828915 969493776 101223118 872362601 299782311 699441899 783006545 441310304 186182673 61775348 189664899 812413428 106644670 917640521 740732657 101100713 375986906 956320698 147100186 469729949 161324737 83506697 274081010 966355518 333699782 98626221 736454570 776409812 464575909 667973143 944467216 554532814 869193912 46656359 347050006 889523115 106709986 969587365 446348514 299325473 292512634 923357042 956049450 248564641 243715564 789716961 581942365 556880218 933154508 732328618 501285610 219986417 169680254 507207902 530979208 557097014 329512514 595317161 698350698 77776324 549637160 989023798 958769345 867118799 740916353 417393525 388714332 914888022 5763419 117742361 498055572 375440140 148355049 410828304 843867330 621291942 178400792 244887439 947953094 14827786 948026137 184869858 782328052 505295338 177817789 13789953 534900011 309187600 517880639 96826846 714473214 331680216 839059566 827392710 485323637 253052399 603172492 153166394 947745555 486498055 735281134 786963661 219695105 38476224 125019075 250733121 86653319 94401276 101570992 414012582 742510056 62481513 973160857 134158541 967971299 910192382 502579459 204573359 447274353 129661330 412900069 543139883 684384158 22867765 777085538 640944842 292563173 208453262 336750471 968836577 288804536 149272412 529859579 988479441 476676287 623745998 600785859 628378469 524132955 372086120 335562952 94572305 847084278 848248671 413225687 427462387 201592762 274791129 198600372 425779337 477788806 327744527 933647667 658076867 428699030 375784558 381463111 935555490 385509120 910880931 156877087 827706823 778383160 277809290 850634363 146505829 95039020 242367855 287241748 45533048 648254028 31608291 678180919 413043994 242579139 250750217 613256995 9860488 169933596 239150901 832737931 798285092 135588406 322798519 181647584 195037737 176882153 251455851 172722041 324737930 638785692 581172272 280346893 845546496 935470115 594472568 777709862 362574452 67205041 923543805 356263364 838033385 624762399 620360718 875136818 66392938 7832055 702023734 693709303 676692075 656497667 510700723 298662626 21919985 141906546 63809301 825596219 576445077 211945747 361758801 593427665 934743169 528852218 98338323 416614677 600328899 121192890 706356552 468660703 666444188 464430358 63275179 510187646 522605995 28545112 877391607 735644047 919996996 823375993 923436939 939268016 291206201 811024995 660144727 160169067 783210722 844236760 260015899 850275045 1834183 365411886 866988494 570269975 262867286 114763721 551527041 179180968 40940642 309277021 434897136 44495776 402692883 746178472 457960707 612644645 352450984 323364746 105633370 884145916 861593862 456329059 723356532 320986417 590264233 602032960 688490570 509773694 842904623 696276601 534556129 606230397 840637762 978245296 471594001 989687239 382268549 492070899 428146159 142536989 904121297 130215658 460206678 719478895 585912100 501108529 230716691 82614612 98789059 641296720 186499189 796140599 141174481 862721149 952886531 518514147 694167613 261949716 200152818 291304514 673255101 390790766 254095205 683656787 34690372 541298828 935893615 834295542 236863912 282647389 775627349 199811507 219599925 678118760 78713486 867956369 113038298 558560537 466377471 430644499 556672499 853035689 484973811 446862835 689496950 341542219 512184471 75382077 36456384 524511551 455574108 221519343 393261000 43657421 678349952 421025266 712603916 74769558 755292630 851182371 705121370 433493465 30802077 887886594 104278989 477956133 313437652 350930751 976562224 911472726 381692396 215301152 387987962 356158162 895025403 44482399 672889403 195108476 672659461 811446822 898211473 184020734 243092597 642143658 599815480 520643662 299658636 951273619 813484324 759848641 249437452 155877548 654072692 229380858 826931863 180617796 17024691 555727068 827202969 260847186 500334218 224752542 886141353 925613857 791954512 473982673 167182838 595665902 372309329 221551275 167631926 494872108 599572423 360522493 691550994 283271368 262136397 329321488 468088207 703010805 983289970 811009727 779220602 291798665 609943368 243501561 211142092 731337897 593880978 864391334 314118955 80030749 584479274 494190676 762248236 219196558 651838749 237016826 59540904 353739180 834195433 401781690 564079068 816564700 821033453 135526819 41340725 229028678 598703332 817427590 741774802 397452891 158989874 61975064 981064643 208330933 633257419 20419179 428459993 363643129 431087591 314392991 145073997 431921687 383629831 849635473 605531559 739747741 918470985 34770588 807384924 778394783 585759770 50277502 472976519 11935440 781907973 765535201 663986269 824939544 221875403 115220477 931840084 598045827 69800946 606849264 618401707 421352111 256655683 466374948 923663677 795773380 577935814 944388108 464296709 451900444 244648812 480592336 905486295 844156647 970714028 510101034 503222465 119279136 551214464 414171981 970378893 754379919 193456780 656864906 461049895 575930048 898474732 115061406 557436218 817007843 530523368 279746464 534265470 479522299 225734656 352226573 390171075 313622488 686741548 3042904 684115356 294680209 449266874 675411284 88060918 354142176 411392685 418826426 34814576 583157611 505887678 633772851 739607230 62962255 251648992 827623108 917103810 470062937 841781191 164557423 260658548 31318211 510054155 188849477 919743975 711013800 728211999 104417594 883895737 400773145 43285728 589753631 58200536 971028947 317812699 794303266 150720348 532524135 120801935 885672173 134761346 886516265 671275784 220301127 109338726 543137605 281481863 863841197 923792421 42870487 235882312 803680517 415135607 972857579 203015526 382896368 277926460 992204531 438025214 798488048 843659898 343385147 47424433 89242869 689235734 250840234 402819447 41177643 184596447 196853515 40820145 596435528 864372526 819041543 83035859 313605465 868584307 741797020 217852097 153434951 494648808 239454186 192102124 798645176 127838089 957741044 472223169 35044111 330681457 460642253 557519971 416385679 610118597 612032825 274925629 28622873 107630702 794568604 853895723 242220048 158386040 180342835 383389882 83550911 52570054 126842115 579010009 296615987 361466282 53990121 786534687 302333672 803454297 166505557 237933671 365781862 909106250 449114514 916246918 357599796 225622305 351781022 784197776 336311644 842636158 96657083 560687926 285757413 460264274 86743610 85386665 592558766 786167229 705163556 6546140 786907303 755691447 349031183 282567499 982754910 884698245 52228052 30536476 717259166 814543629 282308766 368053667 428073251 20786881 92287104 875882293 365005252 922359706 277434994 410939703 348159965 987152605 79279179 865395693 314645475 421466791 137376112 759036867 671166825 349526960 955563146 298737012 460342081 951936175 831162269 983199125 847458278 852147453 422194149 902185873 296107580 223614714 351127176 900400332 511144644 963688176 908156792 243025082 58240086 959914067 40520511 262523796 53299448 551923859 416295696 669736821 466443514 416076127 40665340 118458723 238953778 164917050 511495479 948894756 11366457 643078850 142335430 852987469 229656844 348376309 38817134 421160745 581761992 384284791 382910263 794832502 278827162 606711798 303165824 853442534 683880752 182966893 504434466 184374678 642385752 9363197 506585242 683991165 12017118 255998398 359780256 415539156 626589425 67739112 177127165 753116189 652574772 660655014 27319609 820020455 936396877 293264926 721721623 321237253 442256217 507101028 64925872 921151764 141449294 526018326 166001822 252896713 937826969 185671177 80062438 313424873 346623912 906045336 440101414 178942927 55568221 303212934 72737713 804593126 970231186 225659581 225353858 300851091 64599220 127331790 415824989 52061149 885918397 255581643 873925081 975334519 378103524 878709213 154314464 670523033 175420815 671308449 499654377 595244740 117257165 700835622 880583051 319238137 990013710 389044857 67024054 25107358 602530463 679190119 167591666 802181904 837363373 170349840 899969811 633010020 501767646 88215619 820892560 565657364 662650995 79707501 348619880 822707013 291305311 136224998 653892031 579179953 607225523 805270452 235612571 433551264 543979213 342534276 61566423 476928494 80397640 550971834 218092446 299957287 9897188 772387284 313708994 702271644 997569172 258139217 842824333 369556412 992894507 995738385 429299289 838566639 578685740 778469839 752863293 248242126 438666418 418018795 760133035 853895682 435240530 353259200 898909123 146390197 445696433 341438037 94705658 722270647 156649782 474967523 548987440 284688279 543263079 577569214 726085265 701963659 587400413 976574380 857499614 808788437 682695666 849892673 499458767 432882372 769303790 458339393 56572855 204689761 995004016 744903315 749757984 105850686 299541230 593758871 11913627 298242675 262953958 256732672 541157302 295095278 6233417 124988230 813652994 532311496 230199578 71873143 941702848 981619522 625873130 358802418 26284037 611378055 819685297 360174576 559778521 383533183 339386363 104525899 681354110 680331587 747041295 604120995 330457086 953119436 145282972 847779104 525573347 653888380 473963475 715992018 42590221 99815675 46776524 805125688 542404680 258760016 119457828 994903677 851628618 126898237 879236117 876688961 28000056 16920856 609059678 113299693 326976586 569373750 683390232 116546184 452945523 122350522 827993417 814445976 750127049 674238916 223355826 689832803 713415325 881449738 795036183 626278367 277705543 51269502 517263943 441913092 557549646 714279120 380253541 103675739 958898839 63310329 577612646 434808118 334996916 740541936 136713778 401411856 642370041 193844657 828099719 478420284 24089796 258587780 820411755 950063331 447454602 75309638 596003325 295349618 196078215 629295197 432172071 126595379 353966128 473921944 23455099 709350289 371490681 252313687 387846159 635619490 534339615 467408586 623804190 562422844 628473537 779632709 57962036 293467000 519259792 811052156 393801333 661255054 671259246 727395372 597554306 51728328 1308732 530124923 26526149 560163075 956837754 188546787 597737708 574204112 168471755 919891923 52318104 970399215 924046920 169920843 791760318 18152970 311831952 917952511 920440874 729275411 651160304 730143703 673591154 503096985 787597047 491031343 486209876 642906002 49239017 536781646 69518374 404004261 615870980 647706088 729044196 211419774 977727053 438381781 395821545 166487370 240006868 330182701 767020592 494758799 245566339 125046927 831979990 157635714 653740782 880558388 160555791 26728437 808321898 18934523 105730340 415061847 899177898 498587919 37532117 37748590 573096321 854876270 950629972 602008516 942025800 504133357 888163086 284457785 12130528 469781674 863031557 905698584 57228553 763544268 168567996 500550467 761042538 873344870 609521018 846247137 202288090 619111237 867516041 324217305 59120586 275644640 446229885 592371126 815788823 52617131 427314663 623528998 805430546 565945566 205805410 204061858 694643989 988313109 865917494 891660682 800534431 336373072 978043534 335088239 508515702 384887287 263738495 334960194 550775594 931449651 613956792 896652914 368461228 174841196 726438538 291143406 590254725 784861853 519679641 573448496 330796218 555298671 936581259 474711724 720231023 146115242 225028831 610919466 59998131 876261960 725303343 528284394 375535390 119568859 170971819 255038844 805574204 564787957 576574391 361419152 945136983 439106294 343635853 957813604 485403506 428250272 961439806 890400596 719770818 888725315 303235762 429310169 570835455 936062781 468388256 648487933 199428063 840391930 945969875 641706391 869112783 322560019 732821447 359836933 5431472 792746280 190932787 752279214 994224795 377645887 167626844 998653597 869991331 179038437 408921539 15839064 64085265 699523705 721634244 89874642 569005662 461636985 991282868 79076239 491924629 511645541 556023262 610436011 122789166 285179881 122077250 491521975 945413637 780822107 260315824 910369373 658650627 240588919 510331834 192279921 147894606 291507 364576745 316884293 424960926 229240950 107830470 792062698 691020526 969556584 278364573 62521555 769483101 505971635 443492871 716779362 37317248 689768568 369819909 182535132 340806781 595763634 622100709 95553486 671343124 184153494 560066955 794247667 64180231 838565371 844796627 122865553 204149370 128676554 155527838 617814154 948300178 596301691 188937550 638904709 352229274 476510801 456504171 454989977 156972629 624618362 952099671 223160145 505294337 26042276 218476729 124892511 585960834 678573545 924775979 279488788 624103297 335689568 341530786 414966456 281744530 943313802 305354785 643803213 694784867 477870804 115762163 396102409 96661148 856780094 829979567 565553214 117477330 601020520 164975712 762646008 56679014 800727219 108762034 895878944 12756077 881897436 786939066 176983530 595400130 157472431 32087490 854385206 223030790 554554074 273478979 685621866 24483831 449805590 864400506 77147789 550664073 760524586 999226483 699810753 98517484 545475986 886717384 713260522 675501897 458815394 489682936 130838264 255154282 424740133 378114533 931260962 198640433 790205334 603788149 262839450 873120585 965978920 97791416 12391358 509793234 250381310 637776146 863328982 354935531 172082498 181371493 644666214 466096253 829623098 915908022 864053942 758670948 13393914 868492595 889525508 325268494 868279077 946831470 932450902 982961609 171934484 112586793 105051045 627620550 19964014 264854666 794823867 849916327 907904821 775723434 399296316 543080014 474192924 332361065 549990307 382199083 582575355 147471285 168278132 639324651 349375131 307005590 688888447 781392116 488227063 156398377 721409127 301394977 637778548 950592650 291904105 827942929 60639375 459001914 357593123 788836593 661791424 974941561 506616105 86950991 358737336 873790894 365517189 50696281 126291961 481508025 171981170 263609164 669274725 492912014 291119536 340430058 214253943 411743208 558814454 865744154 934007851 389198055 664643582 762529305 970481716 730018718 641419390 795074694 733759022 972721564 935146259 938596141 581699439 934816915 33838106 164727796 626466704 802506820 989043052 7806975 613996493 911279630 515555493 58703508 100395072 761065892 34049452 803702005 584835628 352697581 623714739 554749386 624349610 856698794 825291208 337330903 722941999 645780386 695674177 65195986 410117159 323809302 31238829 101723347 954817719 933159752 910439051 311230586 403258324 404535184 156885067 207733651 83574662 550668627 383999755 181701510 691421726 866438649 232424428 301644151 108628539 237566457 860217098 192441190 900422859 813526971 11294168 604543222 694343553 913388739 3605587 738316327 340991180 658894998 87256057 916775396 828161062 475365475 669597485 143168323 624372867 968321796 993827166 672603784 587047366 421519512 40547999 312502446 812796401 422811052 489551697 259986671 588628052 273148877 977238562 1408391 965939553 325546366 699553803 562598552 164140569 171814079 788382872 614731569 366106507 289123188 390576091 450222708 660501089 548393642 707087652 322503831 197031385 26150148 401501240 756206287 315729486 617097880 794743453 786909079 535971374 845938098 931589033 174887015 961763101 635106751 973688103 923590850 624291904 116127325 95642853 742084231 119908045 953536712 413145931 371859896 771875278 187665587 387471196 755390274 152372421 829494432 844966716 390050626 356378550 57773063 430320161 601752042 87122572 278295964 200342390 612821960 338129172 356167785 298826310 795434954 206740688 68470981 555975759 191005730 36084910 461130402 562157818 238519751 715736291 805073204 503406081 181626782 232309532 781359703 781157952 671511557 554188430 70479395 195010023 942920828 468686006 292822027 964341732 644930386 83434265 483373761 432214814 939195070 663860728 331625110 130036316 345912750 7552202 387548569 38831099 741660866 695964425 102364860 477370630 236246440 370690038 555393349 117159869 28581408 790418790 877909027 441758179 265369305 985802896 432870246 85456907 559693127 276754081 327851110 742009039 633591683 127529713 694877892 823607892 766975994 302802594 49511195 553760658 629934115 412997445 254059121 544086057 679604040 572650252 170604806 170046092 392709302 581269282 603732129 822380852 783841477 815689515 843151274 449331228 38750930 576022240 47348903 155122786 4715368 294380111 224340615 979549222 375408326 503728690 73228948 468409670 751600330 134898526 968754639 135220593 820633588 116001280 539571298 856321021 448169847 607100773 170354381 529760800 834419166 493718627 626894985 584192373 291045227 939475573 105379216 417467229 945437191 349433459 789979777 81781306 592600244 137475306 975172217 119024699 699817980 853225414 696629550 89954664 259774357 176710447 906118439 631072080 532280095 220354225 531077492 870532927 859377699 388013962 343999341 528740117 551734463 601279156 288847147 231446816 247638573 812679275 527775952 21813203 120488314 213545011 238424315 339474594 505542551 612168558 290102868 817806358 616457290 547310433 181826209 668674153 130611286 672658504 574047485 770575322 880270821 790106456 574258356 897571178 678309553 602592937 615647117 286049829 31214806 139914875 476957767 443491010 302291599 343046073 946356263 447974006 843906210 226596137 100696072 106417354 651836821 648873287 318634327 420895140 847542073 112268919 690989922 630146082 137165209 272608895 605727431 246412947 209546646 588509254 733054557 733178336 881507521 432989909 15909761 730738218 112800601 456318257 860180991 4296717 245584258 333072017 697572566 573968206 896422747 977901032 59096971 342215319 220816130 754307461 933493468 545706381 479681851 165318109 41433801 826820678 310586001 528246570 555752698 87177802 266529101 795829535 388494895 265238638 755390061 949027412 136512324 758959557 464101215 118225040 198653294 281757545 936645398 970327614 810790236 574646195 226686899 891831413 681576174 383112064 251936421 304785782 433592759 215951897 393588874 940682547 44615158 31201016 291958078 691168868 673841394 314289546 527378651 830790241 258041160 458422008 845561007 959363540 279546201 66290508 350473819 3921712 675047407 360426183 407529651 474262210 689846505 366170016 253609166 190356668 151212131 641003576 450467430 784168291 938184564 366951505 544819584 796200995 120539776 406846660 743597366 186577242 611686934 131337729 597617841 150320555 950343553 149080746 123008875 897515570 663325347 721696602 976003632 965233512 884036365 956243716 342864434 882318333 732292658 115492975 196796422 202266946 944052710 599571986 380223512 938441446 202196539 94339813 965655394 103487984 446843711 427514673 640009064 278821869 396415081 642700353 841377040 731900635 752357614 940429486 827538244 464537463 419213607 215169534 299940173 348887697 690150129 918555694 277448060 315764480 940703237 874394151 602666768 604830385 656092690 2039459 330643747 829310343 548335475 701130561 834426080 258398928 972015049 952840971 646350441 88673841 399697291 8941445 930848469 274779042 293693146 187190151 831609602 632099978 340499267 637329430 631231148 739555771 64011484 354486746 314020012 121520031 629852468 297999442 507490098 915414368 83658767 209114730 196524332 672302160 31297635 97364976 990730148 358850235 227783533 6858416 50865601 641182352 857782389 292018532 320531040 493892863 415001431 640118113 309419435 890234377 175289979 938817948 799337871 311705443 862661598 262682364 863196214 285766565 489498489 628079391 223172018 52442800 269177582 153589045 11600995 195180093 941740220 124130516 926932023 649059502 728694302 311698609 440777846 546343489 615423917 303537961 731301876 73852028 860800551 922138156 414568617 590661317 43474475 222623402 384083287 776758268 290428322 741169647 971406837 193710392 157692704 851300272 241695535 955024576 276344 963167752 137650252 756919683 228788506 214331941 54053717 438779734 258396766 32344570 400921809 88179946 424135336 393830646 112550147 720488084 426322569 447254244 786483396 387130813 955217976 198392213 55594358 403463780 509274813 949852249 814128329 891777415 889512815 581404811 617506749 319031367 881344879 878301420 457904052 591767505 675705195 31821426 933407838 9583231 793695839 163535466 103779288 658612471 437651599 318716630 574015575 953190692 741356629 574194415 894507611 806469798 981380332 779430608 183644465 306887366 992830053 717011629 410535709 486385875 112376588 759863775 161336850 803380175 937261578 351902489 210344747 943151458 986484904 1350432 69691203 221912701 33842882 640289206 560686083 961534362 597673544 571846083 60859206 23355348 265849087 496508411 535894805 339694961 182369977 365835014 719078664 194215899 95520394 997240158 635766424 411784698 318333951 216477627 461863019 637979500 487090277 298496012 810584155 682082544 605752134 407844582 101423226 366353064 97880255 715506934 554139236 60562979 760001376 480296302 586016242 71462286 25238987 593017964 165363440 190609550 417469712 667350512 913869878 927896432 489988101 912130172 115676868 386150718 986262412 8804720 861492207 554861348 464766702 236877259 680799395 963213884 363945425 254441887 454850174 908839501 973741407 73613989 814007781 47312795 364883281 334673952 503552492 747257509 441777463 340177218 609855077 971301894 823743951 224866142 469364197 882523459 357408859 541522658 877511575 303636215 277687711 991828450 532394562 344126640 785079310 566250363 993502170 66998689 668905457 101141478 938493756 348021433 634296161 197182806 279882507 485083348 457453117 159859240 954573392 43292541 433309535 500483934 578389605 387921486 108230363 152370485 864049214 54559026 205766458 672009893 596820415 309844222 900748401 472434376 86075000 176339926 481291261 344507481 985385180 831540771 519306273 634809347 488099669 950937855 463272956 451248520 541709594 382690547 541610158 80735948 331559390 520451134 200656096 319163336 764621456 259426249 585361245 306891743 933833603 298721186 816163722 749365773 809955750 589533535 660256322 489883589 796578879 256592262 571746412 669990350 668872923 824657612 570805768 855344408 703236263 517819356 269457563 617970273 99688653 912282768 947884044 765314940 258053368 600257748 831794944 58025571 24067859 896787522 165356497 346401563 71818309 329424467 190023689 910152087 887322580 955030561 239184647 362057693 240930588 891362134 491376506 787697297 847617820 993091568 922235103 68394698 20842867 676209908 480179652 255016437 474698719 235912217 163175828 29437259 535489156 178507069 51627841 861906327 72425421 163389565 120447672 274569851 129065672 100926172 195160071 912305564 827003090 259010062 892558241 880897425 186696593 47542132 736246016 328353918 198022533 772438848 751472240 555734293 898002917 158456866 341184670 741895160 12334117 357084639 907401337 94538326 884809244 795618603 885772280 312477487 107412631 701465581 358886710 383595532 980097499 875060619 949122654 367950813 173202878 310547227 500637530 764666169 558056427 147276160 544360976 982426583 51052796 365180024 874064461 482464867 312318085 208039380 926535283 373149956 148200349 296919984 827283580 826681008 429464567 135591469 947868157 660590074 804534218 580547191 501373169 158067007 998405735 542662401 521281219 994638367 16326500 446185921 409228453 31489884 974253489 757325403 939429617 640837617 893975644 267843453 871641987 143941103 327783063 952310484 114412448 874142153 314876504 46655884 104741756 458697198 78436680 496759456 182070390 433808363 965986756 852065993 193103501 272471802 443789376 846383222 953120910 267765602 93343035 982217791 16147045 538112070 988525764 888190814 821304972 378523423 569103315 642666550 215012944 517182122 605108655 232719252 652297611 925328755 256895283 801993782 771306288 930705334 403965351 963844015 425923569 783595218 424097394 441915140 143010440 356345873 302864330 121898508 834501147 575336330 632475509 639344833 826050002 993381020 26587531 953154163 557867758 915927786 371377160 297068925 427630716 390775327 155168106 393235421 980298179 52482189 486307100 833894184 701864807 889762739 643294987 831094076 953529820 904338856 969793073 815489009 750613269 792738553 919525886 486445542 614176449 808709892 555839763 139774522 27561247 544854369 903451070 995314986 311020101 256206955 767670383 2927285 942850665 586084412 600183259 855140680 513866370 258664300 292692966 962146581 609273749 844873703 982758949 672037426 96736467 25707137 64434057 787376312 704662591 118100342 792182496 101442422 361137896 952585011 28404604 764835132 848253996 138686477 805591104 392379994 431408008 27656604 782492478 821885016 529945408 128902710 595280731 274226264 794933204 178264947 70141118 29532926 350036248 208684614 416008768 629979377 325867509 762074034 804805511 858502409 492919726 266432552 196783237 157291044 49977314 789244292 230739163 991504490 928677300 715220454 317254045 695774758 786320756 754643288 665782595 742773558 271852281 468654320 176014377 418662610 571464699 735632137 108178090 57923105 433115964 661077599 930855472 877130498 844725837 685001891 226637560 860223567 802806759 55492649 349835394 570254443 633852860 141137819 305154564 691575963 236598357 266853385 672029155 561855624 382659301 164480258 566056745 919259945 148649766 11544209 585886674 338669933 558647212 256893138 499411972 816234116 800511630 127369496 663366400 806037322 473175168 789068001 223540885 117459060 695805110 307697540 989788455 815505194 729758977 300057449 815479724 222728601 554740672 901031751 901056302 394570238 357251006 281109748 801861251 778032168 226253973 52932222 145825432 518420902 35808700 104897734 397077178 827300888 760767153 481416702 495404437 824399508 571082137 258090155 382369136 433235182 660354331 765074159 566621529 804834427 481226068 922667777 143916604 158288878 779786315 117316841 309393477 979970070 291928529 881633797 176607477 334672960 659236393 694050882 573886454 106763926 971226280 65938345 668492266 248000930 358914842 314393377 576781018 650643422 461022971 6794245 566386964 448858315 783239527 299719525 828073111 866298613 526893007 919747243 226506472 966164925 738295472 532045675 213628138 506092811 334118387 302601329 839610951 783850303 841221111 84187347 327170968 971933570 519822518 12060735 192870256 955945603 157723545 556076435 207919161 345278928 588305851 257097027 572796952 791416960 429003187 523928277 64979837 275603555 886694307 291179078 38822717 270877475 668992488 595245144 916194205 316276371 522534962 521743851 413805047 72612279 291529445 3732815 976779071 303506411 101597740 665931140 652913677 488566386 723769003 758381787 661955519 647411673 632659351 463213603 972465367 774594445 778773855 569789766 687816397 263824546 176885904 610563296 746201907 501219405 696066344 681524892 645237059 938897171 80438655 650461442 689433272 468818076 520269944 686547471 159849385 85536031 343008030 474583011 532187131 147416472 324734820 728492792 357945919 774778941 102834396 140633402 329519222 567982036 406708177 678863645 391937 283233879 690174439 365226279 114352910 187814121 730241707 533001091 488660013 12419798 579558443 523992949 958101528 742055443 623867227 790667832 114241241 821839434 941602370 853203809 203145645 982070652 685026683 166461181 242020234 194345318 127894614 627078912 531205796 345958307 628450315 107375377 58338792 109784467 379887788 440260372 261625556 606229248 131394557 333113279 473180818 501878511 549408830 598317778 362410242 84447626 394871840 890599321 612374887 683423886 312946615 739140046 134110379 861376479 37249210 259317793 220813153 143381084 741317965 924388218 442042976 284576669 565335300 826649743 961441527 349203225 364120286 78470345 896906784 526643117 491808536 7119346 170419909 178161969 641829133 745939564 980523009 425272485 319865126 325602993 447411787 815562836 909483281 42000186 977189266 751555348 862414667 305948210 424964422 301909032 246986132 737453146 672666854 895945336 22617860 703018855 276884304 606802564 629077269 114616136 318531256 238613379 445897752 75931024 830870870 7799887 535884333 691014656 482227760 617522126 467245813 243656208 439484330 837247981 463737309 476868002 495041033 932945029 396287599 984125507 379527056 527768744 569357287 941368031 522810425 490498145 33298375 515723847 75729502 681284863 258872861 229578122 889250322 531220937 856367388 495513608 14963818 366271352 22593884 701019194 413323953 43108202 153872512 672481999 176415632 811875897 119794857 22740026 932778058 633455040 623149038 972055727 333036467 322935356 483844817 842156297 227935607 589364816 739272042 93490831 789177016 769962570 462919271 470218350 500975286 125510207 77448698 427016508 644762999 582821881 911346468 105210674 204675667 865501339 900673269 160483774 541660517 207190695 600920901 895834375 977449427 697869333 971731601 110933465 711481704 25905263 942475027 612809424 908858568 262569933 955046073 39762552 142487387 861457989 37584927 638536639 122814073 481773069 187902492 179063723 64657536 100584742 69418746 50128060 125189598 777769180 3662536 357345081 121838577 530357976 609582312 14730914 659497255 249986997 800108707 949897929 152587248 932502305 441287490 596334012 316398782 844151059 109384798 773864092 613378204 842154031 156305043 797738425 174929455 61447556 336634522 440593663 784541704 53767061 871659339 308050342 945457444 411837975 864351389 14474947 751201339 783049840 393309898 591384583 365794663 907922363 231675158 25675465 290222414 108583174 447171664 997757438 961473999 863933073 808600167 28745328 54344646 376181642 893126500 50513815 368949419 872539460 533650844 378413025 748275657 270761043 17576844 732203224 766039495 240149264 65258987 48232962 140529189 792924537 135634340 475714464 218831156 272221407 48195770 313634136 938109422 545036885 27760529 416740531 644184466 266267947 558734074 85199786 38750391 908152935 124926878 827155988 609001350 323378039 335142126 568035077 379053409 168417845 289214576 493469333 928930552 122200599 370991188 649706395 221611573 410530123 915592520 421885874 494812705 80262846 634795749 336904946 945671179 143430367 702922505 989359558 614477329 451430892 367533062 223370111 623426869 25278396 722378649 531047086 100007727 882204864 161859919 516040987 8815277 82476876 925710856 978507879 340667763 708915246 485676410 631690759 299903037 757273351 587239251 811295355 265857767 889580799 126673880 876258880 732548595 338266363 781227630 465334646 344369545 905556145 42708770 23863443 471490196 671600326 29985913 794838392 207256639 27361438 405174497 967166843 900442959 491489069 727354743 225148043 389903868 998697572 407355395 486549407 527824966 394204273 446983383 297598578 166902550 147372459 162416860 608639624 399290324 213572854 370947727 29448903 900133035 182876415 472005180 105399873 884792246 389648090 665146489 713649458 467197005 254509083 269674330 270201008 620309114 108492916 748421158 762299106 94322501 321869751 288748046 919090094 991218066 89767181 767683815 214882113 429216791 799993217 595200685 619584292 753769700 797575378 395502808 956871685 934205774 774563177 478760212 137440535 3521100 301920101 829598556 888581309 95824449 760698955 411458447 46037236 1737328 549318677 635645914 925978471 18785453 786566692 618513801 58491348 749534029 412881838 560253011 867104337 898370003 848494542 291889535 449138116 270184786 15094745 104091267 370960154 919144338 246387971 656173206 646370939 687268532 128819239 237937284 961548764 32392874 733450381 942758354 451807483 559530999 328497493 418723678 283411289 3290006 35624557 95019851 282264033 400234894 96052064 235959710 976561224 307853231 477878483 348244754 508531813 182586878 69627870 218067414 522835483 204018579 212141072 468903828 364337229 710352290 889114724 128286381 238555485 788832341 389690149 890793047 900831651 271593986 490225824 5362252 159629317 289800981 831115705 340426463 489945038 913553953 951180080 346902555 216400472 47959705 957990553 749517005 625834701 193989955 589451577 525235656 84869608 199171696 458174853 183072065 899942389 606822714 954222867 436849610 742975525 703560149 330235751 920797621 695262362 580997203 112879609 709971162 45789321 667984568 370738209 996366874 708955077 473852744 15325423 953821048 945216073 429735797 36011949 150237171 340896821 994044664 976323447 883279635 168630221 894331490 60097125 217149542 16542242 157017150 382381403 693796433 693635220 41775804 449269864 948049934 420464208 935726091 598274263 810788269 580289986 421954571 837821249 516722509 894516160 849805371 940360303 374144301 502705221 840311420 803136111 707572791 965779579 119680533 142708733 424030069 81087672 269984603 236078024 969653815 858741475 188386716 61591280 972951271 295586145 687336963 349759510 220049548 823486458 785304774 215010354 533545842 750837448 952849371 846028518 545587437 720103059 475247648 834541860 90651736 615216929 866589362 396264371 556096806 185081140 689185351 38052662 414936587 383408955 301989316 512430085 592772608 725214553 465974736 830665089 945744609 29843805 939065512 349754852 110159784 882130493 444018630 47138209 251297273 397791297 725121284 203479168 995311800 798531432 327297502 922280572 887072017 784273244 586180762 69180403 85628480 260445829 552951215 345588749 694351553 852788612 839526398 672472379 833756252 910708454 184344623 716252244 336012733 594470185 300636646 168061350 222087760 629444388 909104352 395781950 826354202 137971674 406435735 515752889 503319805 181412066 191028444 858133974 227084126 657399497 618596189 997398302 796796806 835996277 422195681 376659815 236507152 347105038 1322292 290022967 141441014 461380858 360044542 364818930 27469145 537233219 389907959 579518900 123478135 305921591 167830645 584157579 936579513 774227887 485052513 787966561 548065280 747035147 918808718 382459469 965300708 506081965 813025916 667315529 730427100 563486453 414064580 477010971 312845977 50437882 834513186 331884627 856028826 620598486 804110199 775075486 381638418 299707320 789584827 81466415 865008905 360477549 589564102 787747201 973050920 986544302 668552144 994805012 237369058 195911648 802237041 314765474 388570711 419396527 104652465 107255340 143250861 690681918 790077293 764128653 930090591 112812834 892134958 588017357 113038938 883873208 884502089 168499168 10103232 585436878 923399436 743718642 252860874 577383889 101989497 47180373 124840615 146280937 317877435 513212686 854892489 939430799 858240496 674125663 347634036 505382246 608665177 915900945 314112121 149727334 733842552 765886996 929212190 759713437 706712311 872827362 734638649 21102564 192338237 298486843 43576113 681706472 897927027 407858085 842973792 752163996 563572532 793392011 142512203 371490001 625742049 983724774 326841270 922873466 46403089 76975100 372383108 472855471 620993017 498279876 558513508 42291055 529399500 207292475 357650164 987258054 514701430 951403390 308653717 165594860 665449998 672802139 934653675 748930843 845655885 195716108 987429393 793669362 227053915 360019576 512074837 732182800 274167421 748204159 677285158 528629137 676558470 998246235 390415399 276240912 853527350 184500865 580940521 654809862 235979201 226550864 659904618 434193372 66016164 729956739 105876201 370716966 72815497 709847735 433785508 57620697 377774418 320729586 683327738 978117695 146648673 740287920 853195565 741579967 914318894 365760701 835913429 11108269 335783877 709201192 891059284 872163827 158197828 144942220 195512925 698827486 801506368 923321107 14202557 726852335 135709149 109863189 897173336 438208837 979210784 72846606 603177541 531554127 322422521 723225681 430843300 273164112 961383271 81940358 694683203 624149565 418176104 608272095 35162203 953920707 986894885 798762522 956087964 578682758 97312274 353674597 85050218 342736860 22552048 49627963 591597672 919814756 920122641 873244139 975436642 905920409 828785493 307453187 937559763 565960918 751402009 360627162 929395036 918805247 363472912 753042332 141500351 201987246 362234557 687957730 561118583 209446053 65776509 388925704 337455756 598566138 251627659 599694014 323319193 454855476 154557246 642291770 978080178 182921608 625994809 567223564 602410847 412791309 455128876 808887190 733924672 851272414 422752049 554955951 550746706 171301108 811301812 981175296 501577145 104283431 97924000 346595786 168318612 846782865 781371464 946388093 222644436 429559683 443053953 616986444 591838549 338823749 717853316 275334766 782528905 963245663 44712469 542158479 113614053 767592085 128992055 323872413 816082908 446526082 408060224 850505327 678651657 247807609 468620605 561140176 435701349 99061617 47427870 473609015 431316610 731594078 306769866 321938616 6269125 258185071 259904468 103079278 904166744 560771062 358079909 985365177 323820082 433109776 685322732 294753206 551641487 62355352 393815848 279748032 5469021 354256387 352370433 500544294 50340349 161022691 103901383 12836938 941520312 14086923 722813759 826730146 193396004 9950946 695783600 261712813 555943573 303196502 809675711 254557348 604505462 85589579 595217394 209811549 245034087 613088462 747748736 306352631 211399740 215237183 793835390 880701362 161962186 82817962 878044438 345811419 115494108 399972824 358612599 888687536 497904135 151469003 416515418 700403056 639085428 687305815 215229874 790686781 64595274 629940367 344909549 222596212 760521630 470884019 341514341 999273458 453876948 922024390 453128575 830481802 197511183 617326295 726639842 855895231 646290538 593136735 671099626 771852718 377960835 350764041 613932283 361408442 888652750 689317883 217296574 725843981 961308191 519817162 317554063 280289531 468306831 81314581 397836642 570004336 576768706 942475938 337790779 19527102 369583169 467664022 810027578 98602468 713122448 218287039 132858889 841759063 446095805 195788409 614306892 424851096 648043040 236413923 642857087 3146006 636472690 868947255 555915873 594551354 171073422 993500104 645843065 506855884 546196642 72199198 715271708 822185401 28160466 497073552 928563151 153993095 742990832 351836992 847533143 5841472 439380675 511865081 573269878 452861246 807765413 328199615 805748894 426002820 949663971 173645808 648973794 62940236 679974946 247382548 440192462 618008918 696319561 183098431 807966101 802088715 508023913 664038348 231136212 353047714 800960943 374842828 867289924 104148526 282773046 435417608 825318229 319888994 469279036 67273493 362364757 271866940 143197135 552836671 831126164 252979129 749613734 61108862 227088560 107096379 306670755 103694265 765090277 180193487 104352552 610906941 236361544 93644498 981302191 389484266 243771074 589158788 52333349 732154063 362621583 140826183 845747183 558630828 622100615 830299291 551576002 385973943 138699757 883923455 467851539 4028187 742057514 457789098 866842322 383998533 937203653 35170248 510416833 883256686 310991441 599570262 967810065 457167527 744594868 915793903 575094219 685028506 31535086 32113204 352141635 219726410 810961866 709921656 552757575 123834778 549322130 736298318 948277841 164650609 126019692 380446528 715050627 395282501 724087648 191589010 995714771 585748226 382884244 684905100 164266365 838431160 644662582 318548909 398605673 470480159 22516578 732498626 597655816 253582403 524685287 107676473 50515313 398678431 175695839 551427691 678881009 570983934 326789486 357593437 224439095 780092005 336495786 926263853 892553526 675654093 210704217 593384560 934686428 874482552 229212874 307316617 748862333 588222205 740281127 974381026 649219641 780439664 147773496 369232366 642677537 115477538 333553856 443312146 285167544 812000632 893814709 161668216 23072126 551763124 285935496 45974197 372027413 564793970 856968632 268116182 338129053 921990334 381295904 918193432 585378835 113648550 319471882 280162307 516920439 865921373 447570604 136234695 173272118 939467658 995988228 696221199 171424887 248079546 851890154 933568673 90106596 518699874 836079573 705977075 182549191 442046803 806302690 862562811 325725086 267388326 736473093 142896961 589087433 237164045 900124328 766761282 34821269 726026785 969172053 191454025 652137592 906229507 21566647 897540350 885405331 211543272 814965130 984364251 7062307 310762025 738543542 534588206 608135642 24808716 587852772 502449532 179630124 466788035 965808909 503378334 141887431 831254992 740961741 508829848 818629036 890703963 681416005 203804080 706522249 403085636 234919646 130468014 663832400 272758211 844916467 817924652 165090496 943976877 22840150 321859062 552051344 242687327 550898369 944059279 10946036 520902769 243809623 251749022 207313678 487366919 192822748 68352128 9712136 819902845 395445203 921600298 887170547 844308477 718197 503148371 770673028 129814427 977894767 255545758 413215452 693901263 483932643 149955417 426429953 679049536 940809734 900028339 696795691 362602927 671824513 232374722 585425151 77088600 335922336 454304566 147922227 997723406 360355307 199099037 400086715 499539251 905826645 208604971 656041335 999392952 23349295 608663087 247842549 986199659 725018736 149885424 281334695 817803959 948751432 762925142 266162203 53716092 531171596 543558448 71282537 775615175 719298108 493460522 770568095 239394805 296204188 580388695 758267516 160410658 376152776 248397981 639261102 594048441 29726916 285815586 568226765 912488158 900745603 951238687 919780447 419943939 703111329 849003846 205584092 443442989 935191144 309638175 586607297 717842635 151845481 374601614 51257892 953929708 596814882 321775827 964609104 377065414 501810310 142518628 531797872 914648473 232646016 51853925 907004943 686808488 682096298 198601199 284244254 912217872 666660880 804660400 299027897 196266329 3244116 965712731 388612050 253482870 430320264 688357924 667284955 649141399 920353179 781257453 672681472 78017484 126022483 170494571 170027536 506251411 830066731 444997640 537907978 692011500 476790159 143738292 499319110 992328326 401711806 46062193 674815256 541519989 977915413 677127636 527186731 935074868 129152222 917034674 114860216 90209836 942763240 655912504 104823081 349706936 445981846 787236783 203639914 196512125 720350248 758503750 7352656 291751239 501660828 960156361 709857948 592842277 118899745 735635837 774833940 74162382 366224941 240490518 1941650 593092661 888152928 46372728 781389639 127710362 202404164 591421475 944683743 885118750 116109069 407424298 814980782 658756579 890214964 438465454 737123631 848698432 432983573 101394061 794879628 242162336 904733182 337206389 651359146 614451577 793447998 265947154 487507756 963252994 922343583 286494343 197554499 880504899 35402760 513523668 294701771 8104982 126018684 900316071 361580752 955948990 267114994 29941419 742357622 513230237 15764390 469302728 959900561 287937093 855237575 668075033 370450364 787468768 162988093 326005768 591761368 190782184 315177986 35151878 756004834 62905497 800873818 226678043 511374381 862042567 763598994 980438256 963854632 589423139 926272157 104412120 757013792 336401424 891225827 723716906 806036550 691450788 153012243 913600556 549176967 43181995 418911123 80106690 6679030 830198780 477911571 430062583 279561552 797240636 966927182 59371853 842061498 284012996 480626666 737681431 393051730 666285609 799151493 537302476 878481454 599316200 427817372 553388141 826871188 135184982 976727040 204278304 891119549 135269944 175949733 175947274 149673425 344083039 746252437 168045379 519421665 917693663 171991568 91654291 244560696 673356859 889724523 703281521 755200852 551860011 729894921 3001202 684790501 167679840 832627090 162811425 880339899 752811837 638568423 236455524 558585805 975423336 850483778 356551075 900097431 818454167 590232184 264078008 943571145 425225452 315908635 769482218 831910094 200592846 812840524 162854411 915603391 288976960 430582938 607695068 853172424 713669047 516364217 928264797 748809777 739393324 723194646 729511577 990613043 891510028 717961018 109411104 935940387 173509789 604101806 698280266 709336634 790779672 999650931 878745553 379749613 268679746 172677411 802907539 595995617 817713869 887186620 227890909 235551767 775836637 517319408 705044384 484092720 330658824 459523935 318600522 688451381 161065464 911773248 9055686 874325247 80059344 728045599 744935638 547533297 81046999 968165694 46286171 499264364 12019783 52859577 433349866 932725953 421350537 94528602 733991355 92656034 934846642 327366442 554227574 91190143 329856556 407151541 311502408 425961178 386777129 360632274 282319424 164860284 183063563 699930418 250390869 975251649 887627267 941908660 223863950 702186040 884055768 663946891 153378190 701062383 454641567 374591430 736384138 879766913 997804396 422093028 517980291 58686241 703901863 857348694 544336260 389665819 348163995 208044108 269897081 507296687 451440746 607630673 432067349 91037819 981041152 166754235 856570583 597702112 800552064 332174494 781637019 515572326 473456304 895463661 85533636 735153825 135106979 265587809 367169046 205700596 416738663 568927513 235381714 146325387 804690895 583309323 903451614 247106612 135400084 616213815 347513034 35925525 217745692 671539329 838577843 346935759 333459625 316206001 86521050 60010250 103158447 902748234 680825976 14703886 566878097 53798784 821627982 589006618 701931809 755874542 490260671 722788702 478072871 460130886 567155111 414746934 449054074 189821476 486593849 105313928 861932880 717489695 675249694 695745637 890864533 371302924 447678294 280413822 774288376 626541390 356592378 125891238 475223985 187812995 77905077 468755888 525715263 654294539 551433201 610402909 280052613 516050211 712870190 6148453 994469736 520794049 989150555 227044395 731765996 357030478 61823403 238512681 13908355 458572358 678912678 619868453 150367982 867466256 503660919 598733660 285991319 125356064 527284202 234386888 277232901 889246832 803886381 44043688 562896482 582901114 510924023 64136476 70325955 245666227 831564397 8273059 915510000 635262614 82071258 763751049 493885195 161786440 148904331 971785666 695041592 635016779 701680445 574126702 706479866 863853893 416870186 308967273 656329267 868553309 279473854 511033264 836757733 863719312 594462416 229825685 271230117 365455364 460194755 919649884 356909079 889905700 867764102 163792922 486683337 954019573 222183599 272779179 282782757 262409061 116425742 375048598 601260730 166538871 409568723 37397991 330624636 770615330 958889224 534968690 743770362 727512375 665077181 120425043 595928267 654181977 310141387 23477483 794257994 195002790 444858251 4843225 886951898 628020741 200988031 26569326 367945625 593112999 135394937 84882602 315787083 391299217 164519045 19737126 961985020 711764719 942948403 393672746 799209843 698839739 861007267 653648771 327783427 546635809 19104032 147143073 381784248 425317770 662089279 332701155 167201470 97219126 345032791 631315238 937783269 172086864 425282948 78664646 438432798 449170190 732095711 452546031 446415382 11702912 234307193 679670264 953481808 162139718 343658878 210637599 474838878 169734155 541261690 971779793 881572865 123611935 347619550 643433297 426192034 115971055 187334269 889973957 946785015 434753242 3099626 938376256 837938190 320745407 27618162 294389687 803329456 662455570 123167525 411054487 744695256 326248208 562828549 598800924 491869 542851788 287222103 547122025 898793335 573914923 628161666 939833379 201268829 739339563 55503511 840085627 196761351 829144173 473029151 654965546 594150032 653829353 750460249 407947194 440864578 616881786 427070858 524988178 957404831 959629840 271163003 10336612 241415601 381602724 582129966 820424811 571875910 422613145 223536488 820840753 389614605 289435828 585779686 466681846 180673130 734468325 862830893 215887893 886916519 686787433 795989575 29923370 660070358 87719468 615589645 232891664 267293053 586931168 611879088 327821730 568528543 630628818 81384773 132753321 731082123 381048 7135105 870957045 720542460 527721614 612228506 403282147 70161830 314415186 303015604 272772005 251757978 886582679 711496989 272088167 976153504 21017487 922938808 626658021 331500867 172788602 728871826 754066200 971678977 584159982 661203570 694839517 843458606 782939881 74685740 64906295 995213334 884603337 453622470 925939170 148635548 349433499 176955639 378530129 982747116 714490514 158113630 552996918 572768332 277837230 176742626 734534983 8317153 186163193 673606916 63737381 355263513 423297234 656724030 576293056 626876305 491267835 938456042 919425349 615672341 756204463 47505848 337248260 371893167 709429997 242152533 708612224 291453085 667360194 11326471 695494831 671317463 420130391 107141703 239235125 444286079 278295438 173206805 765276796 363991786 92606674 571278833 772306878 503820932 870771371 741431982 437190763 188915785 531649987 739721599 705527915 226518311 626740921 324936957 495401412 81754515 491771234 309238085 476420992 495926526 859323071 662178103 518236460 543035999 517498617 710243760 994893537 517747158 894643225 852099518 624405011 765531910 775438934 610160078 704694884 576426314 461603314 227333341 826057185 420136920 59202211 290749011 551475281 419158155 7203695 674991135 749710876 259922908 894953531 700679992 34116671 813167801 869801741 775403859 24959277 151101716 133326780 547691875 730016621 539714230 691030021 637038145 993034264 602931415 380355226 786279095 972019132 988319956 763412291 242797323 273455496 672188214 114429632 282021604 790756002 783767125 359868499 747688288 360857901 340104084 966756968 402842713 556001515 489470877 21603796 632389339 768403384 610470451 912876039 535394303 163778179 868699574 255726335 766495574 382305128 709509185 193857023 478741844 794255125 519366262 968888007 793299073 375510893 962361908 455466172 714956136 135330855 958350682 675413194 213813049 752929456 370134410 747631105 670838318 951287143 892903560 448367941 251454570 906551355 4565855 892229829 400249761 89960904 69559495 691270025 987827456 319916102 497160905 218344145 255680156 654834483 38185554 552422327 982765779 406909180 30568395 628703407 618695085 962750219 444190837 320483384 798528114 879269296 720973739 246238512 995380521 884872172 768964259 694006120 50353221 424724242 479833633 491443403 158103530 951012089 359854044 310973526 766034785 318120933 99377896 47921260 143312072 295991855 800541334 429553727 231646743 255161237 55199203 336495660 588263147 644449110 380127143 391004164 713904492 917469763 887426883 536106087 975828000 38581355 502631927 953252907 984834961 886732806 91322248 796163487 714235898 556741739 369106015 178727216 137852664 102268339 799078768 184004094 765463695 893084756 884907689 703321847 258879964 166999494 365226520 441027790 893542460 516166102 814619600 295054490 724162256 605069970 101388920 336175102 401495310 547966276 124477563 621112533 250412556 926766499 461527657 376852997 937838336 858962648 133876437 825627894 893110414 153856085 571070765 342326753 547914829 735907737 942438579 116914116 121140737 872448219 507769595 798660404 40197990 632866030 108967229 301724235 763003176 239256557 455554748 175130550 222646471 733408302 98918843 672953960 422477058 117310740 75864705 627692092 699593317 854414818 573200516 562297452 793158616 865025710 866683370 795373750 962708734 487147905 531566572 434566209 190164105 969139036 198195717 869917906 180323176 582974488 956426655 718642157 726762211 7226345 949269321 735321496 17507392 205760523 403728403 891007776 261951475 543066882 207383020 613792046 890059282 435283577 238291858 827706448 546187183 687621352 700550445 477784889 283472623 887725832 385756720 807523486 464192380 574745164 304065098 197955865 776117248 777385251 344108771 981773985 479272685 929037505 172195208 738015755 439475442 566206428 565987107 148464698 376609476 152211915 227354191 751399062 392853516 127121695 601388278 507868252 193918571 838459554 888502388 277791177 964371382 99400150 207343966 556066753 850458989 585031370 366729673 403887044 735717260 843668045 274050555 509850200 652734112 342128374 366628772 26731683 149327849 943228134 808225244 889876789 866590314 878885910 723215806 534339323 691443764 115850291 620155859 88821244 256869108 446756902 360253095 746398343 513566668 734746218 390467761 209488044 883835335 817043533 916650865 308173709 928864015 560531423 46617879 220288390 436110099 507113204 964072722 878825027 616519540 807985667 541719416 149385875 567313737 902604424 688386221 567316505 682164972 341570258 598532982 17561216 178445388 285598261 362166830 411672665 883394768 92431132 576240390 426655874 310657361 147950412 511398517 166990151 889984072 995087057 323579257 375096854 965096372 176849226 15771609 102364734 540019126 204312875 806210405 435316354 547463914 842607564 842613793 892067453 657004955 125161391 354487383 654933627 244871855 789547793 940108420 667981428 564929116 319109774 610585606 405358686 325191246 535565660 525192151 443924618 200715699 599482997 935829600 952943993 348324413 264979774 321816273 245985330 631609101 597698507 47833093 859806435 234757363 430297567 310800675 945402162 444711 313788534 169342715 552696716 235596099 668202859 82379187 698116465 751313566 405987640 535753931 316162150 401009058 492195327 839963776 95279832 11689287 905472002 652866595 72686136 986070574 497846636 386388528 101826690 11717178 687430094 469901568 813570508 83219261 110323755 731535054 18867855 253304669 922817931 592377261 908876490 294458539 757439927 85061483 25873642 660896960 24507082 650012994 769418506 658627170 696734510 48278337 639502873 620766298 85025745 46009817 33347161 712653555 820901331 237352846 488280302 935497697 398974622 497615784 79403605 725236673 441125840 74486112 162116265 314215927 512717466 691435620 367216291 189890257 134924811 30601662 231888642 409959791 680806152 90814231 463376700 972045543 806394661 241095597 281862274 528235375 781104131 435770635 263856931 726183910 27212783 990406299 513832484 216373797 433780572 271272249 583619475 49635908 198290415 898174041 522991197 998568281 682530105 584487958 735508211 149350203 839235017 515225859 437664290 94726229 99598096 344851306 420740379 115781724 210307836 559342275 947798715 513790539 757100883 96399982 308234958 328986451 107562520 924188546 843368370 309536418 605243684 159146069 281624977 472661425 535990564 663888575 127870054 387360931 658771684 785389640 139388057 947617577 664910260 762845914 513636254 214415443 937203786 422238748 912847865 231524118 582078605 958432029 68251676 985158238 525227959 411746322 757515166 815420578 960278060 874961135 720042884 535757160 545677341 707659452 23729310 702371049 323471676 679648655 508966044 388880230 388119806 498236631 997086123 74079283 963973906 832248819 909620217 214603943 415008583 795761660 641260584 560155471 570204168 22837307 798464770 846844772 924445220 47256802 444508012 246886463 407266780 437684521 899173812 503356341 947966876 697773730 477677757 484439152 314008280 346067554 912861981 760478741 43872509 666310 784518881 947094346 535467211 251921409 704042380 530730502 325493566 77526615 443007338 619378256 843198112 33602653 299592273 102205676 246740162 439907628 706270295 647631342 115651095 684775408 524810757 848582558 453196032 433701001 524000124 570649103 336843431 952227921 572019137 505703870 73209290 790439383 597970247 793401566 180463717 993395356 233592901 614748037 215640409 809311901 50790565 162515882 719136906 646706688 936921532 323955539 288351000 542750636 486666168 974252414 859232023 424277542 34185309 712856841 283419075 423323369 188565556 752524571 109768969 972526426 644086134 647200034 575444645 881145187 761432485 815942621 121877801 152935327 170666819 157622899 943603743 455909743 539284621 342938034 480264384 697850074 763258254 112725723 330210904 980537088 728183912 355066222 171669784 562499680 318460932 270709737 560277004 841198766 625673755 44092849 549073858 830763865 329687296 587683801 62002024 806918670 296267339 580610257 164407693 276444521 933983634 331917420 244499329 69638924 181631070 859194352 161316669 855425797 193618034 376932999 351365599 785594968 99515211 88638459 826887991 241327964 428354065 131964414 991316871 483688656 516579849 392268014 419641331 229229201 147065512 339807226 450567177 805646219 740312596 966231780 112451413 274591762 264172941 976865821 402507799 477077559 443420957 939377833 681053300 848690240 782599311 806097619 132342786 126071243 646529672 398917967 483964056 458955241 366149805 964273032 903512245 141481211 312032490 460463277 204635173 817505709 444626353 113867448 834336730 915921583 662841572 879033495 484801400 642679178 442982425 411981627 282675075 162534314 676338360 301517948 759946072 646586718 570317141 936842327 80892464 845517253 823013506 573987401 448588424 357083399 210762482 312532589 45604941 651783062 734456026 260017137 883909821 973140577 744701573 972162440 920751542 554969683 468887650 278090679 544993691 365754117 325406270 564533954 821882714 735714155 138931518 521862568 444207965 952410440 669918062 267466936 879108378 388511995 708175496 111661114 181131919 125986128 416800623 829106150 676420091 889962301 732012150 362288296 962151828 163171480 5771610 142874673 724096064 455198041 104305377 795500810 755720101 890532127 858188850 297553781 182270713 456074133 270730738 808244958 165270561 801281439 303590107 961306116 727401944 868526467 179816140 137615255 652642824 508343896 58136670 964753251 314418679 24649485 668476152 623613001 162375515 724860012 760387201 844463482 301834974 744341657 680088638 105090319 501319495 865322828 608826683 497306729 51031448 465407481 15931240 986371025 679494077 848230877 119190585 562797002 574526838 610797235 785415843 698999027 127300601 979153321 383725915 345304107 424923430 890511647 189208927 238307439 711564730 119270741 523110460 522656232 77254173 32883400 391581398 457564327 948819540 924537697 153582828 797168601 447340154 704388156 828905034 755959759 243925344 141908466 552924673 778281579 669318986 442552882 445624549 638717894 943070877 735878980 415920536 621501145 44674513 351962647 690929070 815367054 415642513 407888054 381989068 143238239 800693213 810884546 728908560 989681771 538432714 461968343 623711133 763160472 690167233 155167880 562131071 270952375 803962742 314015198 654159111 730205524 606262252 102245765 786732726 275843689 872062003 109584556 240261425 308152086 148083832 878507958 475695225 869233256 817814862 500932648 661161370 527749240 798895816 318194610 730431685 209809626 574173521 875715063 78522061 593570149 251082107 645881632 429104882 186723161 82620071 493612833 475362935 931038916 965103652 239154688 861817562 884779471 940074642 740873498 891351042 297388898 904284508 797878838 582318047 388175032 391102150 320387651 637172105 645931875 597649620 876512939 953787856 439175965 342335179 145364976 997409409 451523515 299259991 156852401 958030646 361769838 107206406 601835435 867717321 528135773 462443939 182228341 389052591 891496514 377736380 92427907 886554856 34354792 788817084 726002003 26372728 551808553 101655382 370574865 726467986 274150690 781785953 976819536 984787032 685915667 131376612 316424217 260420313 958489597 847179726 35409336 381243708 805664993 691996849 725892614 286636348 306290253 791263537 260480025 987121595 853606030 953484272 867752469 891196284 361035272 827835332 952351044 86762221 208184379 764490183 187844143 448398339 868199503 979388820 761527051 822789706 909270198 20890551 35012980 419596447 991974015 206571488 100416207 776262745 544142727 824575313 7022597 602735369 459706625 455047275 325650053 723168653 452195855 42744352 297367450 55982695 244720080 626427595 731976988 244004882 959981899 420406880 252131853 76114905 318416257 238556508 491158310 666928505 661671150 234348901 805735706 703215617 693939188 322362474 630950338 504533094 802767609 421357826 597091545 512505693 707139611 86603459 705357279 94202694 563589519 348139288 526281340 40968785 850394703 951914022 554143348 702682799 181811740 237170122 610764809 959785514 325800379 151102671 395141414 591752504 110762421 946974771 629294782 180838097 806808908 451591295 615823287 523659096 771344217 320455466 695574799 318752031 820741517 711679901 877650109 574308145 211126178 287106975 998323741 336517648 311004402 292155946 124530101 495455765 520599715 738683624 275695794 942174367 85312580 355078155 929641684 333618787 296658379 934793145 43442243 568557571 740985251 220431874 182310085 953329201 939456897 905457092 321967461 917268549 858625360 369908334 981907763 308090536 856021463 89807878 730223979 891253902 83929916 408517278 342388465 380043913 431011434 987423458 785228035 229265821 431155825 894714503 590155135 83488194 544893026 987034435 988310365 43556871 90104795 75503694 427250454 38347888 122008587 517688324 463072693 470508251 470282108 585915561 859486709 842391898 768648157 361754982 872808703 122597448 425527334 892055049 763533777 944657428 157282943 326530796 491771226 131725421 429966856 752125230 435990491 601049503 340230462 1877177 224354326 754928619 906369030 274500720 828089026 97042230 47335583 974192729 578955099 601839885 353805385 239112269 896898471 338926469 902432399 597897399 923767385 536341130 105120455 736625681 126073586 641546845 721692800 751511706 570890596 959244799 144257494 953908948 212257145 289587344 883545947 89637408 79606677 113532196 369248938 904748687 747379231 667050614 748170304 666087340 900226160 632323068 979352193 75893260 630637257 149170909 866440018 840137286 626735130 949629526 733758350 739797090 154356394 795658969 809183083 961340949 25571358 483320270 382756636 599769594 984075050 179166663 754486358 610232659 410892232 570466170 176393481 500854569 293278436 172771225 841375326 392065823 577252656 622528369 622661872 332908807 679825539 564667007 448542424 844697008 885329959 908280845 988940843 346495684 389387014 69752706 961073801 147181728 77190345 557887144 966343210 478628640 312508890 292238088 994633950 645020883 362736659 969467210 538953825 451002850 853670396 677156405 641792081 716859139 484275425 7160543 244949415 178040708 446681732 523538948 801786437 789180913 112455226 753595021 924524670 636561209 193305569 49785975 8465392 222006290 998060491 952365548 987610109 863624322 570674585 833229309 244558072 113996371 564143634 220912801 371097375 861796618 60597807 671168023 92858382 513911514 961732682 716182075 643549580 220416829 392095589 27405690 582005159 496935500 920367106 502281843 600774283 575456472 184803344 932282035 888675358 505812626 121928982 617005272 181735699 764248516 665027270 232181708 373347475 246822976 41849816 282770405 820524589 490421639 110166183 103690486 774515959 542987557 548029813 815929082 338407544 641024019 132778170 315577508 520966057 172413037 15485291 172187686 28185199 736309802 277831412 451991420 131006645 381145106 170678275 386664170 869160476 349821599 627075224 993712326 423839842 519830481 227341780 536876840 416149431 650556840 252929744 144513505 611590628 112216387 437854892 358612246 305794208 334064346 532758006 927775915 674414316 336684503 863578799 960543487 995970744 934666707 33173451 556707101 407138270 440644744 72492444 105549639 771986751 704604830 543454279 717438513 236004547 982637268 905184299 922404479 925724857 630528566 550374885 495767187 438333335 121477510 934958131 409776774 152882502 994886090 540856926 797659974 637854243 383479408 261293532 497980411 832550071 525322389 706334236 92136346 204418074 795730884 259103666 102511650 525281758 861572448 725957271 621201049 670742174 232105700 885068603 870594219 346683691 738661419 575623744 193165642 59843077 918958817 73722950 975267623 34737060 74387575 48820889 640709881 781724876 226676064 144005409 285117324 753367753 173129340 971385336 51000425 805585418 787527292 125128081 881677193 191872090 434353351 621999084 532200704 85094700 749293758 512136379 325787773 623264318 211311692 802775288 538056736 979889166 763290847 993933384 68027683 384664282 231691914 596746985 641206899 922616316 950920095 310680261 959790899 339299708 647381459 345713096 340762390 695208632 385579511 876777067 722590872 859513893 965741200 784311516 471400867 922276628 379169180 68640851 257229529 543726855 829273180 721076270 670780522 398629877 441971083 278602004 753332928 640163903 213427926 493419170 359560664 888268146 344674771 398939292 478210702 938085582 686339304 87433362 164230439 524273528 483901106 959911385 942299966 596670044 42587172 229362895 263230932 279987467 338171618 906787181 547182778 158664631 988014413 220084938 243354355 570025557 139524404 781869275 819398317 327176619 793141715 880006464 607249935 505841683 892923451 446415318 876877176 754115503 878893083 308349872 482313754 874662961 825704825 42376932 573185799 758928953 483977540 606317334 999846951 806884000 525280820 434245990 914846702 851500724 429459927 549338934 281831495 904914283 116087292 467937936 657811474 579563599 832584219 685638146 38628261 301960573 213469476 297038354 484309343 783820563 104454867 973214629 181660582 846663259 563822170 496128275 215046476 273029520 612798538 353440097 822873197 369039567 493121535 828708372 44437446 535335364 460778000 250521106 397865460 548117290 963398007 896016897 565063893 284628236 69911489 992502481 892641208 255296419 413089334 297888718 533482072 405141075 678046712 246308194 977973097 603495693 282922015 470943711 288020479 570914171 913521093 116608862 343494371 301481559 950833146 573651197 692841200 478045116 493592431 756167318 661325666 717981906 171174395 818541860 733923870 280230613 67586546 552278097 316780077 833092932 901931591 844769810 913240483 336296984 846495660 134283270 512851338 610084760 683202253 916106248 387736174 888988052 67377471 839187434 801742568 598008868 599510598 635530844 882708448 976400325 760837312 693775695 807928583 259249666 166131450 912306199 147171836 301147806 458247199 749988613 159604668 415731194 741489876 784244498 29744551 868171910 947922134 391150242 167652770 311668070 299494644 233435023 419956082 445460415 382621313 402124276 53382902 679982784 821431001 401550476 909914568 363810642 241819557 733598928 189639834 18285173 6726491 67803494 46673673 429211754 806176923 249473937 230696603 299351227 926554954 886592136 12805651 887553606 150796663 604688966 742257399 682751517 550271625 151219201 787695500 309401229 659066767 594627427 595182193 764620658 52693631 124724546 878054691 890055763 51398265 149582696 58376769 622610422 667339829 515073336 85018514 483368103 216516185 662798930 806974860 397846928 565048252 467671925 200053820 709327392 718119518 69482608 802787132 366749797 270054477 188694133 749148462 109877413 374761781 682267434 704339698 887023507 875848734 766486518 850488940 10381485 61129812 602146512 928270419 837626380 249962226 306898933 373119892 686884940 38699820 750634680 710521360 798805806 522722315 919247656 888973841 856191639 626750818 328555768 70933470 321638023 262187711 599789550 395565194 454157316 445915165 91649918 732905506 953398194 373492899 983235182 355232806 808959155 862884106 581515388 713749203 808011674 296724425 142301972 85312426 288867266 58309252 619335525 902695844 761321715 617643837 308347270 790501484 876647614 481941679 804018218 801502091 371775744 901349538 6829301 40400479 179551501 441646820 375162932 993715157 71710403 572191886 754909012 18077655 139481675 413797028 577224257 35453089 662341338 79812703 168225841 775744897 848348492 134665517 499812737 171531009 678219225 776465326 186494441 680343364 315983458 95075905 387624343 951251427 767548308 473058656 170995944 106501610 609098383 708121669 549424077 885458470 81126022 139587166 906481237 242440788 26205238 84016368 277240688 69173569 666586093 987988845 817475968 113812550 660511265 654200294 657204351 19389754 421639361 823258403 530163437 572517513 417730084 738919836 267168493 209800767 696287967 366082141 247876964 89656965 694220893 142140023 463019977 923802678 880219110 996045996 870186607 461362923 268777073 698948587 647818083 397767061 514501380 766913951 685876231 485690171 467335905 637588595 263822285 452538643 495695619 339373912 857440072 665581075 410793502 580465336 486305831 558915810 982102065 596684145 286342631 356803779 681969091 423767213 654670117 907709238 887618846 257125578 188276686 5211794 311039245 569322684 263224115 241441482 24572438 509400769 97742824 171509212 346692049 361907202 946386180 453343926 580882989 630097395 675630844 813284545 821003907 199170831 759043237 9196471 68765860 418359565 742553483 457031445 344820791 724939401 892970662 983849725 798032175 123732298 533613679 373672650 717440876 154334570 649184115 598947667 296529142 611778435 440140017 321004288 911017042 260302535 794535448 888367545 334456023 179839425 605278694 452514068 925939328 563919301 555723126 387522218 773199822 841336523 430838640 330039408 272381247 591743602 652252507 111445439 536625359 70668780 567852973 837210668 534599227 152178749 554295979 139461374 912912714 608787274 649024324 512819879 981328840 929318972 246493521 197524311 930827466 230491076 272075563 573607061 655419208 433981690 308526707 892894655 798445259 184332878 521191692 687850967 457926986 776628896 14052917 466231821 126659933 469344865 48477976 116084031 500424769 88004024 748960642 746627606 774047025 36260743 783352923 308895853 982921269 733160712 725870648 130353041 40468130 412000991 825869775 193345491 777277082 229245485 431359401 995172300 885020272 823538167 750701890 264284437 919863568 997704839 925660250 773239015 850713543 881978664 830683707 701486654 730474262 154217364 124324188 726982947 952982208 57494305 603859547 929372028 828314180 138456126 740305160 235181662 236636893 156102681 578491902 797733664 433238462 68399125 920314075 56617007 457862 846688559 856097147 267052131 82664502 414254425 288331865 753407303 388614930 654331050 612676749 450417957 287969992 192016380 777475648 87228666 731280448 885899847 153463753 993135073 181546828 232195982 759139229 166780003 416004181 687725524 735889198 4929904 674434156 892992741 470400042 402764568 904164764 155729724 422920483 807391529 647314078 454782388 775622764 515243808 743399812 618555320 284702966 49044983 213684219 9143979 527795433 723856231 387117578 48653638 666371697 755136362 229297631 449738168 149320052 355977591 156519907 307584042 347838773 459824027 166823578 653865444 135748234 756539103 925708320 101423143 560998526 783026329 385348197 840507698 543904494 307736085 98459716 251696030 76149192 367927992 512736632 501316717 141228338 21811482 742565768 130802289 843331520 656559050 979807129 669383500 769800806 271318250 261222005 336900931 888339193 644216986 711347765 141851134 473049672 663356964 521165843 613499494 514569814 695769194 465821702 640425280 330580618 450986492 806785753 95615975 312919019 492676705 657612043 13905854 947426706 772648175 196963024 882217249 250545549 797033569 20955102 643712915 242704776 781568372 132942406 294825259 994869543 543115778 762890582 507030658 761586084 28022523 29053877 106289639 41404074 387127381 471045606 158509690 913595932 928774701 422344744 234432776 646162899 223643235 220342896 101829927 386753126 28456057 9762969 142169854 655301010 641647033 897649847 255405695 44226309 700738014 174228429 39401886 111926551 656368439 484811484 222601816 28442351 757481208 766076427 999686689 275639767 39273302 94213320 860961556 452823326 20354832 908527157 738965193 496130745 403313366 583218245 239704921 610981390 198495075 248303585 478038007 547036160 692916154 680495404 126295862 568027495 775146725 847690748 606746871 614652865 931209565 822644972 291806982 371848527 280870499 372814755 348161922 68106466 248090403 891005700 302154927 838609054 91890355 222413585 604739462 933913282 547458368 240537412 301850394 418564883 367820841 941427446 284371477 559733814 212957521 402951132 435036749 452040567 800738601 925923571 318574412 124661675 461276655 397420849 596639463 889806112 357028609 218875432 688390187 501724689 648841619 804084469 228813949 13385068 563776464 215935197 535541284 527680450 662273456 900359648 561038016 729140909 92024331 337590411 771406551 696032668 241214116 624727130 440842770 425645766 381127861 602891857 170719995 496140685 874305224 167508680 854822570 844313524 49477143 606601962 753894630 740396264 393268839 816683968 540490212 414649216 577512781 856992482 981461798 698377429 958570040 413177284 16104067 639769298 541435460 137628813 940076174 764944855 315252095 762555707 89440548 30534653 425574077 930511045 594468984 84072448 689445053 868041739 960041521 759724592 498839991 437178290 586639155 997333228 523802291 27640357 222876754 153914589 72699237 930036528 332835148 139395864 631177104 118340198 659894755 741076411 181934550 520839968 727255468 591943160 678050340 518931774 562916585 154130623 835403609 794514407 272248614 348285635 122255951 96267687 463491062 540247938 566822087 847116332 911392802 178102206 456505138 198492714 515612306 719003633 697899845 361977982 863909563 231298569 187750886 837343166 140575076 986825350 649543007 438525698 94151496 95718674 945735435 492947454 785535878 330119866 707708163 212950134 39325160 118508963 752498870 57018602 398258151 392769048 889243871 888763659 580680262 243137087 261197159 190090737 839976758 542944141 351846678 381583104 135630880 848731991 73050662 684341954 451324961 765610743 731020691 646969512 946404857 289537336 976450343 826072348 426790117 658380929 255458487 557128370 854762838 68992709 869714323 774809081 779109573 716725295 980995137 277485122 511709737 241618744 179709783 208192537 540314820 905009973 982155493 217708624 42036144 254090484 675777126 424991890 866582175 185403516 220663202 568732178 770215864 878677999 711975179 955704739 316400814 814928311 893791446 275136036 128689034 410104543 627892505 715436276 403527050 731963329 711002544 661775557 835640633 889281027 337769242 317395582 153730243 880264294 335525054 324936169 93376806 729846304 711795763 325461862 785423008 20175455 91560319 151361527 784093465 551006648 534419823 390854860 630995937 720803029 929789502 84406018 139951376 456843128 465187286 611975183 3437496 151069448 423890428 24520062 191781524 591033981 153483946 292442071 33787635 569478487 991861131 148140816 347932961 6479725 298529868 431542596 959182660 247566050 845678463 362878560 565914436 528542515 459937884 742567694 671903716 727344329 324318635 477629374 374213419 330377617 414000399 996405547 861470815 355629251 168628753 588046631 919018398 235794683 670626810 551877736 207762144 272718262 716199383 165057603 523960689 506690238 494707966 814524745 329220017 926601348 823022859 784995542 96221756 698033440 296396596 918669170 453807367 594005888 345428855 523549686 983571067 16307641 345264699 865627911 53289713 571687500 304620116 92015843 791451650 27903389 204250333 136834767 313491207 853949705 533369883 51125932 926101613 678069861 272356842 985006023 163419100 882560265 881744117 188240088 745299209 603442699 949489085 134184995 218135575 520172459 593234070 331865718 104495536 178878482 253809541 925239244 654596261 622851515 148618402 871504221 958503016 52749406 688785944 753802758 409669729 535145833 345986440 161011116 30323891 212895840 279936576 436417247 45826803 631511218 881773299 782033204 336801044 535655124 343559431 507983582 498134250 583554045 21342091 240728869 523035036 173131022 620905261 687431642 85447694 833360791 838901565 184314050 134020959 125220712 295063281 736342767 449658134 503560538 490578164 930343920 903864054 675905628 676569904 188629559 628922339 915945763 155220351 950899618 977546189 763052437 255595684 179825172 865417332 295287838 829389779 995410377 918493138 951087286 786220170 167520964 724544824 413891517 111784585 994236688 728636107 969024441 22152540 239684107 753218186 232895206 488950623 124259428 407475193 775159364 659020695 238468512 560280700 744963956 281467518 61013323 976462401 215345237 805348677 397313727 956917541 661380892 612030539 875634559 986499562 366242551 578242149 594658453 350001601 236883131 36245886 606101090 920791581 578900141 146680111 279757840 196944792 364682828 64248429 225001139 551258654 150084468 844314679 218643672 883548332 618478339 880413288 236471764 696605558 704858435 554039028 610881237 900185334 566393563 184083262 126532223 778177226 211197039 179514086 536239246 904258297 482333161 995368046 730262904 328990107 6732168 85787575 392674143 990294431 706223833 552828500 508572256 701373982 659553654 418651098 547934285 787183180 394497983 744697412 243456714 696066970 385922377 101875933 475647673 729362909 129864804 37454704 610385519 974385683 644056299 248773409 846897722 759032405 677594416 376730252 617988766 944782755 956060578 967550070 942066119 182608771 324630812 799810198 597454859 942431603 693429158 261269635 381248250 627576204 710001984 441502495 253487722 545350640 373950785 557760855 278377620 913683755 596552077 827630234 119876730 825226640 293390178 216292277 244742825 335361851 560213151 4771516 417390257 392376034 64088544 821970953 725221628 981113382 126153521 237345755 229416655 547519831 630650617 925240741 173823605 68364700 625786444 273374814 835664346 285485256 357402557 390790444 54062858 390533745 491196782 785902555 407014659 925825857 210997048 75213875 708480617 207270323 311130927 789547440 552640379 541524364 671387528 254342590 877956314 410240117 650087409 416887202 101308166 802120258 301500364 615941103 890947351 403934275 426539292 754624490 965304172 514308618 203086722 404920608 416187058 172672964 645333920 45643776 27871127 981148823 8850611 704855954 873536492 245560605 511216193 836257334 413376280 320219361 141549983 192444929 8271691 315554904 924352758 265576167 158217567 42866460 858506545 543604440 586110550 790583739 410538228 383406359 569896706 542337946 689099666 156199969 287808137 668208515 298162769 465012406 128788318 212399459 176373871 471370096 808702225 289944602 40568220 831781110 750075593 852363740 969266128 934985758 923696393 816213528 889228705 539289370 986904037 541294636 993159288 454618730 587566285 117628906 246875312 966048875 303564151 642184938 985739681 979793474 578010937 910472065 34402679 135427829 963245819 507401595 751971331 879294073 584433189 552654684 784633824 51635546 616474093 388217971 747506254 19937215 953120172 714921078 268324146 65368250 972314323 437043608 264501367 484945265 941080631 773115297 277126787 807622937 515463628 244858909 633556950 22421841 836731962 51675832 634822465 904210150 59977311 456088011 411589272 379693381 606682252 133025136 14790778 7566743 308462849 202228469 989130103 423310143 329468573 764065227 234205994 133296838 33375943 736144856 633002234 638525560 993689296 638906243 65137732 39984519 845217103 379632102 960323646 979966580 547361439 306680681 48237590 684010585 23598196 279462539 434189298 168951971 53300561 31156731 171219876 751344804 140945599 194950342 302212248 395511744 401198163 737826984 495310274 355847516 382529847 170640582 253744331 613704484 262622926 886266809 51754073 892405349 573162178 74043825 888165366 429814927 678673938 965305000 68869363 302984272 148290131 740240797 842416350 678548488 265091450 623128325 394572940 291919399 178761699 169477276 770548573 904083347 940907572 671155175 987837396 156635370 251877927 871346285 785845418 446528283 207632546 523993699 465780962 687938990 78282609 504605180 781218314 788607996 623440548 272033239 709104209 620277359 923695801 750987537 21668185 811594992 175759983 28071284 192714596 620912013 558630136 574622321 503771187 231288067 920303544 686391978 912338314 210173034 55897892 355253607 954800646 119735316 899107522 903416729 505501392 829929092 740979684 102558727 581330098 701396651 154427007 693567905 393842177 57118939 148016410 154284404 422174914 149353275 639088013 847218279 332695487 603656998 548096633 714016296 644175403 12500865 845386297 990450049 819814658 306840346 85290478 239730301 196859936 744596907 947217140 173260011 444883008 107146212 199103914 380144508 721459893 29972164 934116901 13445669 818698040 555369446 342638522 122157677 67696788 334469698 304226730 874651968 494768733 925592476 252954238 433297762 445863036 966594108 637015462 451683257 52957876 264782416 243058305 150858845 5861009 277211868 808945856 837821705 771377977 781995509 999656584 514385578 80512652 567910549 663011889 384418530 991715331 276120360 475858352 580395935 664009518 127099883 621336689 292603828 241753601 12549743 455640202 45319390 849305996 191255811 182688963 592167300 954465601 593400942 204607591 566729145 506095623 537897004 645309273 493814539 184537546 160011469 685647736 838077146 440545150 207374346 827347440 866407644 659136803 945991745 660500138 837057427 57055624 262344824 510398001 860996237 369287787 954896680 189507362 197151694 182411300 220739005 420144690 845170193 156727600 327431093 838559572 797724875 639992212 171962733 430523629 284665797 747601367 960207607 418794617 50074290 784292678 821026771 315109198 459918329 378606458 269656170 868968392 889157228 268755290 768846685 773255848 937396448 147579433 120401808 248909638 421251273 570344297 340049402 218028370 127996163 971160397 938751607 666209324 19619286 936006387 510011491 817402394 832905023 715122948 50814694 986907719 857895950 943385852 483595627 176590214 431239344 193117163 996304044 575441985 733999169 373418208 813025917 129266724 381662197 777827640 791167297 280190377 329620701 353794837 732429452 435843227 660454307 976573574 245077135 937415483 121564042 752122521 716481287 877172656 742869109 562574378 805759549 614336753 787911334 632080237 909184650 504882293 612875511 530431114 692212299 843782428 365950903 348506603 496097215 687250384 976607688 162474633 668627362 642411095 257701527 440968104 869085357 788087239 353561382 460545825 873219893 875945306 379003796 862577959 291446522 729648437 188367240 814764495 424050612 305253889 836683324 778195920 279752189 478659354 942425541 911770297 693458409 566878206 699695661 67367441 773824085 20913008 157869027 645437954 613929321 955785072 570781783 511479533 715226264 442792478 980036978 196129936 291831965 639876305 445243448 897908436 188253440 551706931 826061751 479305356 455852477 426866925 618923374 247910222 688748538 677496550 199306807 749760064 431492081 554799381 382379977 5788635 525052128 900509359 277194857 950398785 242497458 25095784 345684927 835178752 542352128 592788952 153355881 786441653 720586779 527463592 373793128 728741873 777913492 977800278 126434606 677013386 976202111 394384623 343932819 828743014 291786667 539762907 322996748 155904815 742494164 646352931 513888332 649735808 645571824 724307467 663759429 172487249 146591323 313194530 688161676 410244018 169942820 896782897 752101504 47393978 50971644 537892756 99975918 194203487 492980833 402617034 739842444 447616453 472728363 114677376 214680370 172985898 140864422 246736367 483861304 664169320 430112608 646574047 92670406 820860548 635670207 94423551 661681218 821151079 16680074 707846191 287231377 447748788 186350544 913394483 5943127 395838317 229527952 167731541 495559205 884889486 230583179 52509454 358977777 287639920 403180152 689918863 280619945 690345813 461822683 41239867 834134999 590807301 172885502 274789847 255710779 15004813 269969166 866704687 622285915 188727155 716115513 177497162 259982590 122601281 199773305 823114490 945249300 476971014 225509322 358503909 908444629 898385298 426699951 749165824 512810081 950094584 924747221 128405874 84544461 765525362 496950983 809655700 20286637 591042900 147205825 248716005 381270774 42041651 758032565 109175038 629318794 728510437 942981285 726619886 632460805 289461903 869033329 709883497 600605589 65873891 355751483 781352386 825072011 382673298 666349627 988924270 301069316 456608871 169938629 459770157 571223773 63661913 545576813 967813339 276389364 90179446 707523936 579532186 473497517 244706164 544639414 876780843 321768439 793433379 275195937 462302168 367391423 241975929 523856365 645174603 840968239 509272625 934365744 50079368 537728500 389745632 910292546 99011240 656594505 413007020 5202640 934175033 318904122 16267132 202877068 306672152 975567501 23917195 330114085 883371138 505579229 87866227 686234545 472278893 20163884 156571461 269986710 577281721 616530593 576245712 425198522 495389542 277199750 977806298 679569192 133629772 278313907 988996289 987768773 836837585 552325524 741885964 937380054 846146766 308826105 109098167 995925728 230121541 344634049 738473971 318324162 860472043 509496054 435699880 541876412 88613156 233938468 62564569 259928188 946300623 654712039 405465519 271506597 184981341 323170937 592607412 677100105 888125587 909405946 182815437 267578129 754325623 944181123 633009736 553578381 957126521 396845850 747543048 131336144 325043152 943804939 272287991 961413967 890551271 922367815 395397028 202775016 660387779 856165350 520110763 494748653 904367400 868055304 106983809 767094261 132526516 563723387 417923960 836825046 655933813 840571151 497917101 126540182 643703893 993952923 368124313 168292004 834049305 59781395 618943905 117332675 350522296 34072677 640661285 363080220 433197221 209463237 862210799 883848660 112239639 275413282 982352157 39169392 392939510 95657059 144469386 886800550 835133946 14411425 423208949 717624340 784783006 473741416 233758799 356847863 933853296 289635087 630329501 590674458 77218808 950565560 170678797 440929108 140735957 492138605 834086802 309161468 981425054 627822205 828138951 231353722 158871417 236183675 181584379 450682827 444815496 54351822 56682195 15244180 274419400 488264419 608661515 206139819 484455115 741595889 983282684 743452790 281128316 93400824 643609221 727680708 730282851 322746352 252436160 291502800 834462516 378044480 540133142 466758127 795549069 828505139 434839783 357863667 791958478 71618105 819544461 100102320 621232273 240982196 146330441 369073595 398393813 636477602 131962453 997397580 316572440 83212549 910853119 349880527 779245652 792632665 34005362 736911682 461793467 991882981 491733794 578549542 695491343 490629829 98324909 395710245 965151275 634322105 934142712 593263150 188793394 565517873 951142074 668352183 467372607 721883121 125395026 109331441 60178114 719674412 723844114 747362334 784500147 123130606 411419071 254042745 570714250 712290884 482881682 403556594 365407618 886073922 121559760 557119004 760681087 812578194 894760947 235319003 753402243 116724099 967521298 228438895 381837733 434183198 784858528 474105879 563982651 453702348 372241863 535769229 662695467 273295238 451746776 695309885 75965193 815837376 647831039 415076848 528696657 944980037 791357167 503140758 142887521 491429003 258168552 388546704 837258431 680599437 221165452 174610015 335023962 421101482 311177074 27072676 659289104 791973308 739826735 855560849 593568253 431275598 237331350 516164747 462305099 339672546 888658930 235497262 599775745 201419401 161431040 541606841 730222621 54410637 727083970 688007707 402519703 581906573 206377274 511646371 931859309 981535107 93205403 330038738 466575393 842520010 370532059 817548524 160859396 281612524 855634778 117940406 216708423 178116833 24798978 349590718 64401925 617507554 278857301 296752309 685872882 438221713 233090971 859741881 866827348 809192309 979385310 990915831 43698551 385771184 275062034 103231235 832564990 252354330 36472962 240852291 231751301 623125683 421669692 882101641 848705879 829880544 766170089 555869328 298780631 14498794 190493256 654350784 500762561 989738582 579521019 211524378 564198333 342826368 72723451 194988715 36963390 397212109 179536182 119416098 144299431 716636679 207756829 897883073 96584714 78429655 689931048 24776999 209055894 711001066 473532244 513126204 92361062 225066503 892228439 91686258 645511861 79857678 379493000 211873249 192837476 271333869 465772911 942934634 828773122 466880099 466603158 971119731 603242544 547380328 254235268 160962000 803196065 430789573 553933978 451682860 686207472 971668273 970176834 489177795 929842721 210369042 57639821 894734149 216960788 429976115 514937857 647195092 107634239 503922223 617364766 657544987 792596216 341855186 397942500 428914915 83721564 678989617 662378661 518775822 395500143 834544819 635753025 412868624 253844886 215493907 199948037 751133220 153982113 811307427 982155172 47541801 414191055 301632641 515037420 47427151 253073726 69437391 821776668 896128897 628642186 772210069 417499088 230102109 133958198 377509289 914605098 117242436 25350140 850734901 427687004 675792492 690370382 196710187 206484004 343805009 696636503 596055159 204769811 736521864 788073858 91012142 556359454 970897682 988550798 376893826 862680883 721579500 717797349 960716855 356069653 657897930 399342426 794675602 470068374 490172271 31508342 892202375 564596632 661402972 876835206 60206569 596183878 389369674 35107495 14388447 236658106 234461589 451139427 195787792 133299891 433061952 760697451 489774349 581824343 67637151 848442589 231164458 497120250 186204514 221952220 271689355 458874927 606108428 37275500 390320653 743453866 558095490 858370689 368647851 189434094 830630131 428417611 612030093 295216295 478058669 841531881 216058993 15092232 896077697 201594739 158557665 296583093 671416611 817632278 708605087 404878846 586170944 666280141 172306530 81549824 328394476 138193903 238090807 96844772 381853107 607416084 15329907 85797035 469372814 153350818 480105441 603072794 184715650 411919306 719146892 938651245 213911869 786033087 761259654 308264329 178701264 474815958 637772443 868022527 285398529 677825426 620684519 124403224 997430277 527015739 958256291 128420953 863894091 377428756 273731288 729345999 104944989 952627426 109643075 282081625 287388153 685705913 942439066 89324452 589562571 725706576 231586668 415027088 394654404 588220019 610314807 923376760 715803308 148828143 905283271 913438143 408046399 954380593 440469078 405649309 100439582 789675691 685305164 996921911 477180238 40866599 39671600 251214263 137113713 310364711 313059425 487414087 524413487 397945914 358362211 212482950 970354720 398452003 44856241 100865032 438787917 467452916 603639887 736209930 128054288 924340782 500185675 972087540 785366294 140057697 407456349 106511487 846367097 55035193 513452199 997261868 228739411 810535155 709029274 275964415 811615331 931045188 348171862 213708123 825467019 309795913 900868660 912107334 80135820 172662905 769430799 877115639 619803536 144088518 57702823 136274798 251938511 5876608 12327386 850152562 399979840 580594261 210887062 307635085 827404872 220501618 246902658 134847838 616298351 268665368 84049523 48250827 185023108 229940871 949029895 594272803 534354871 866073102 541865692 518831724 303190356 183386846 186774540 377319375 570276695 405901848 114230100 378726599 605804379 619048832 542863872 642858879 990141121 515652738 198934546 605905919 880732161 27724759 665824027 48934656 73421499 92441230 738419858 651502731 227137779 551062177 992140514 855758024 407761672 545350709 769637305 8688452 90659030 432231561 492198352 831454216 690460525 917678475 683878896 459805256 515545475 796665028 891724142 443330839 372547556 47518482 776055541 175222890 392283741 111846688 556959199 263322007 152337652 432956218 277318427 255875052 261425592 90008986 648818809 285658084 525318082 707249805 585390693 161598966 194604036 965138535 595238364 994758911 39160049 267920459 462357224 768488108 424348851 626967450 81149539 205478097 991928774 932107060 923129919 728007869 309697197 990324251 821554681 2615006 67176393 134412782 173388134 386149061 165455563 146927490 286441466 94430260 273349096 754218813 292631635 628772300 720705682 863753167 562829596 80217519 721234895 833861830 195775657 86884723 679443309 284176456 506727965 41778666 742408656 628736809 552492493 345018092 472133726 521028590 235361619 284378511 82563518 466220441 633154582 799146789 95074887 327098286 812715366 327188245 275285601 709726317 315094956 502218356 785278300 868908580 476357231 933001824 270010411 784760968 586607904 450277111 550335340 582429316 604962222 840767114 256440540 153103238 795070691 550309358 188360071 146707193 796747258 775581231 921563091 323908503 187742128 41361636 749520901 590070055 782267660 591272645 882275891 792716795 165169897 30921965 32987164 181836488 231601228 345799807 701120591 733789866 350647158 652901147 224167996 262806117 590632627 493009655 21785873 340103131 872559807 617547615 190392839 816722097 162551511 228150365 620029270 37998484 226831997 842438728 333504998 910756307 957119066 506729488 887310285 791720616 525580425 654985717 329512115 425369558 620248603 626789969 695614859 740975326 754630310 238709092 483271120 532537026 856897239 111447506 534250043 528403963 719703129 751306202 93485637 217102553 133932350 180587745 273630859 7169445 166342587 370668499 110050899 203923553 541801673 889011334 791277280 578688836 285604831 634783408 310460115 910192712 422901495 838968205 251925687 724420588 247960476 492794546 659138727 688755682 402554329 748473329 696251446 56625033 967437150 226767278 215470677 803256504 481111993 971757810 140667895 874005303 240153798 238798102 519393297 848158256 23353612 936638401 162732392 549515635 283570919 660758251 896362464 865984153 93138013 101723466 787354466 127780968 671627520 184829426 316921266 829035020 357968532 275181747 30974526 957088136 625444195 464583830 655014569 641373830 298866815 960186400 982625091 979906615 857601405 249831106 939081541 755395833 432412738 47150415 795686003 795570275 696176163 628123390 766850762 743178984 644444467 64655442 875483538 650684842 131639327 755166695 839740296 989466102 359768657 265343627 204326054 514987029 125345938 571861496 195951749 364075187 210594188 659550472 598270010 790336992 84406036 518356732 366845092 389210856 120870067 823974979 961742422 880504286 351406829 843156894 992966233 617559362 166863094 563913945 914852785 551227323 142028765 979583470 101430103 505364266 829116225 66105566 360857507 399173818 555302705 669790596 365925387 471345616 429875876 479599991 363572398 408279224 165676000 537661960 374125807 312383025 706060191 206819121 113594021 153121044 407401363 524140857 945534439 804802041 495144088 3597759 178872011 178245525 43940903 382419735 916617093 814509888 398975129 382973485 747721911 532607508 242455543 321537189 511620008 603356353 236665549 974345691 1377478 474532651 911274385 407212175 75761276 300814032 169984315 23856372 745674793 988521826 678581517 339612305 707239466 97872044 918937243 11799391 455540474 465592174 672990235 279921006 260610866 838144014 463351539 250540153 822040275 821951093 673883515 782844715 700090315 828467005 5235056 38347846 977446454 473362272 69566134 708596224 888164774 940574858 740737249 565423378 114844697 332261467 709410308 226090761 281634846 628901998 962937639 240122794 767656041 278469793 580002499 273606098 644871920 723949637 868654290 931749766 764688862 485965379 810569365 794841551 86396218 570950697 898692586 49844146 493895178 793905684 678245073 484020665 445811071 160178900 637393369 134777311 687758054 778151805 648359299 608341936 97923128 103200418 543523961 347363536 660557218 438253365 600788030 984065305 69899055 317148081 551605985 518255222 236971845 125629024 642518855 88175113 78000972 873476259 683712155 682726078 861824914 72487723 322619055 960311600 762660175 752354624 484873928 271083694 178803765 884425069 848440025 476274078 2646110 449974763 792487749 385048713 554292625 943888279 161623858 341780357 115813938 602714188 893157677 292014510 141702723 734659386 348791456 577575358 482554016 18642382 292723776 27730637 280093445 228674787 553989920 834046913 718860941 445803032 174772044 371897303 887019840 172192158 896584881 765432427 656288346 509369328 796405069 748108661 672289600 133615968 316833579 924886338 547265323 474840936 641962378 263470407 732691108 23267998 950779528 927996880 362559247 909962132 301310071 621159403 134906479 880124694 619820527 407530059 43621506 453796668 180030042 415975816 42226339 9082027 860128960 195242203 721156942 551328798 825862649 831043410 116945640 95537513 117431472 864318768 813692722 97828188 135476104 929684472 585657803 946453372 465260405 598435626 510797089 534342330 468316652 823786707 334223776 111333705 103982041 923033453 60440816 497645528 546724021 872660015 496641298 788201340 72606827 213028074 234009222 852721119 608053674 844465798 128806014 553070376 147102068 899195735 540335798 107724210 234439802 175464466 694008089 436602990 499521763 534199117 675331992 589937216 491004578 64886844 296490180 367114530 713132841 451500329 400472652 129811597 56068240 267464907 826148063 126697266 164667133 676325485 97416832 799879003 701742981 150398144 342173407 135788109 281994118 683576409 570987089 808852940 181639348 826545749 639121036 886607474 284163199 658318431 75639091 553702236 57933114 173374330 228791252 104108213 963361722 938153653 500920569 377480516 766534097 614652826 372863842 598567061 426396088 509303569 357317485 375714393 369658215 695539612 802977847 635993993 380166112 680903371 617059783 162891969 356908906 59469397 213079526 743218654 19807582 30014234 854753498 387698625 600905702 551604087 430195427 631898106 96545396 108562872 141629319 992964511 350385262 607307653 28265385 5483713 364983932 415015906 682659455 710916031 331633680 369629944 769595994 89313537 906402225 604384555 613808190 310415623 452449690 441466807 880385751 509373465 865870127 344575715 607167509 551905308 102989614 560244911 25520786 305498768 770486706 346518938 6704963 311687210 394185788 31845 164986986 649609756 70703201 469276708 817646759 560326090 602611033 580144756 305082580 473443969 11752494 777470604 392877120 194789564 423951775 289678986 189885771 837463938 953180077 674340686 220073140 175530972 744647504 73925073 622381923 964464058 625327570 256405033 911822983 489563648 431913405 580731184 771346647 532111636 196829991 484850225 859271546 921604054 65193853 335779067 635143857 973971350 375770793 784604987 705401115 665042537 5195821 836965310 147550165 605075753 50041876 129923835 884204315 403199309 366980 320388061 780992368 491318983 969666710 789408635 781544751 347778941 611700369 63920402 552906313 366642986 839032174 528486362 642096627 272681254 685703719 576599166 691227001 194811190 464757264 30198030 13893817 22382274 468177226 342272947 93651615 913274306 649657379 143626435 272221086 868463805 515755815 381143145 829759467 210983402 421419825 479567014 479532015 272020486 176124376 27399545 614279424 788968585 831913309 822816957 629232841 361803502 356587804 131653813 719935118 231375113 519511544 532424844 843858567 176956488 189881679 333254688 163021346 670976333 117609301 32093289 78780092 521734361 398681591 303140554 895324878 441447433 691964967 239173503 345587441 965567102 409365461 549277125 732039195 954843149 944690957 789567795 225775825 374761921 930119275 994526775 535662541 603224153 123301582 280588888 449151028 275424696 98654448 721053036 72008578 764821466 386942640 274797438 480713982 462648972 873568837 684734295 935174568 913586532 281985827 205365733 691432741 207146547 547552399 751684256 871430745 853503227 98355765 414250511 178051691 973486706 446271391 921573055 85676852 603342870 302813616 921513228 146859604 781311901 799141013 46923030 561022358 446921090 155745637 720215760 857076072 357150132 934060477 598445001 915051007 817322370 816747492 116378256 687671567 214050839 396478014 944553489 970342282 576654831 654700520 960508172 569229451 829896882 486466322 280913577 578189957 315441191 400072409 653206676 455917281 679935836 11945170 717664608 2510011 132931269 717074711 238720767 549842386 368641638 591478899 293778406 171868889 316197401 718145247 58423142 815768355 291601040 150051291 867996166 583485662 612466726 592942007 160802972 760758830 775956134 618575143 153727526 306130984 593563593 547784 935878720 332779348 672664958 358710663 342417419 779806748 820104148 159246485 974376500 973485014 331036444 923849662 689761246 892463198 92826589 888143282 939074193 14820356 981046485 87017664 400811190 833356882 982731634 93218917 23750777 298039087 460913402 480596881 301068527 366690298 795285449 42992490 669543698 275074276 606825627 230127628 807272311 267284198 492543990 683365441 10096695 386518629 700905470 592481798 333064699 811392880 720910434 75137584 571603023 286703259 728555545 224360969 155190241 568341081 452395787 562152861 253327405 684544322 831051012 618736848 459184320 658362431 672645693 225031057 3763758 835744762 597964510 880766883 424024680 123041360 116009791 349609599 564469987 314722585 16530960 983261173 213094159 599341012 496669468 758247391 797623847 423671498 43921440 437957098 11628001 632062335 274746225 873905098 248460257 674192173 224822339 941931991 129954073 70659335 741229939 777066548 800560314 409745430 965558911 560765321 94244437 48413543 782650802 631932894 954303415 108745974 777288135 70288377 796167335 326014964 214534269 677145233 567017983 670649193 618065552 746292409 176045470 791999139 736493840 197379452 776319634 598661752 602365774 300000812 24076140 967500442 355564111 45064143 500188514 561392993 643845523 638422387 399997183 57373977 809424817 145024382 402351322 387316181 754952768 911167614 523711066 111086130 74692533 459196747 143823460 927783588 171839149 451042312 904643719 658824905 883909801 37360591 827677994 480264254 142154188 698767689 882916877 562471282 881301766 28815401 142731700 512218262 746046473 559600550 714033948 353828557 995468337 22143426 751685055 698023440 4385968 370575571 2875764 390790339 297095640 344496847 908842874 842731865 47200846 203094321 102682635 793130187 612899379 627089825 764379662 642842335 192248361 404414519 166654824 95519586 224773709 221118181 556657590 884539989 875739986 436097321 491593518 711783120 670430049 376357892 80987697 802027953 784228336 199528075 842506109 292663030 556585655 392933153 274146013 967921173 747374673 795842688 723099420 444208747 723689021 774749324 59609323 781494868 765799453 9237917 111547527 765444612 282683146 269165505 981804565 338958660 860841151 534194451 527216401 891209536 205588252 339804108 908364503 572261442 536707447 904853599 309545749 961886941 662671323 986557394 453866260 989167249 483709114 144434040 316416036 229797929 458005843 252773683 390998406 405843570 885847839 943188411 37635040 294622925 259133172 139617870 873498815 693823186 323571084 875747697 794053330 372863331 352741166 192417964 456842817 905273617 288492383 192658642 915005465 509385496 331878828 427352966 708636673 334873322 262777383 980366370 386822617 677040743 395051347 103611757 917478702 294612449 306012576 395432743 483665835 440385903 340347676 292208731 596980578 426295490 246340950 74140041 529651829 159741043 586033126 833639325 674191676 105830278 956178789 812947573 166061560 346527743 874326960 108022768 286804261 649282906 351346208 478940204 860062448 625799531 168565029 891309545 592449628 474362147 80305886 232045369 616868219 329571547 209746496 281422228 221777698 353419440 308907685 554934717 153595470 930122359 939193956 206856343 66181483 759265005 34528407 745327937 794415346 119106965 733293762 840159376 747260458 339160863 879416242 103792194 607890988 910734252 427885888 708731445 789747763 10806375 446522351 680191574 776424359 146363496 42008557 285529758 455837288 210510660 444620841 427231928 69535184 635051897 515161114 779564207 622671002 5224818 78752770 324306310 984670121 349909627 124500971 317636722 178566515 790701289 414659472 566136546 833150633 526375538 445152240 138569466 789602426 852417615 334970075 986194263 518631954 858159207 99486390 661888838 944894498 105082264 840314226 395748520 786251382 781120722 760200508 818680802 477910559 740676298 507937821 114567277 454981814 210449572 89906192 714227067 683334590 361203287 987420433 980136259 476866673 349872632 458619352 455620223 533029866 996952301 9736660 45354879 659183725 683563935 545487689 412804721 251750621 156987937 845816570 729502318 715751976 738802386 341951127 13161935 298001924 267187879 323212274 738351402 89320696 257031307 106319260 995445847 826883125 358564107 70143684 631553721 170485490 495590908 870577960 37132742 346148762 719077598 323113582 229236178 868950615 504172373 148680757 377732851 219753572 731209524 915892746 703217002 276973084 323191702 450179916 641556363 821733174 412855230 745049082 727192809 698915866 832599165 335214158 211062137 111880598 147362757 653023930 267547997 516614931 865740627 72918714 777807280 85488746 551369132 911836195 413010389 160046188 787672593 664334049 110657190 69341570 963374501 428478176 325356783 735425953 436262368 315288470 244761935 625390014 983598461 289962790 206603834 903113800 285762372 752691251 737074848 993466261 179570348 296723358 899638506 761724027 564912451 367547063 150464341 619009539 866667130 253931891 25401603 965535572 319655185 234155890 507167064 489410299 444603869 728432905 167927812 206207409 683668627 708543988 967277627 884329172 733227943 656493696 554825316 280932436 142146260 265499602 425842051 382285549 606296412 901684958 908947213 283395368 45167123 117862628 225261336 585009600 345684237 562417952 328022245 391283946 84820153 356969386 927657420 925648105 598997318 781444027 289068706 806015315 385387660 354251768 209962773 833309943 106063596 454292244 391324442 578484620 141798655 239336414 231036707 556692096 378940739 468954418 557299059 208879996 980966690 482002925 156276712 227265800 906262603 606025870 681687170 823542178 884932410 679291288 72379683 906687152 428667014 330399663 320417097 274318701 913614391 319768689 355124101 398234924 638275903 165907824 26670155 90686494 629108328 310683189 210903265 872153703 819175010 750807343 369315158 92629692 577222103 529694674 734000780 161104797 580823054 152638008 956043183 116787964 122429015 182705924 86956964 89557064 580747038 676383688 650420213 411135829 2266878 379903310 224997880 413698790 384161330 218952589 340144103 918827927 905358859 33176018 517260444 96021561 692162749 452144604 40174073 727438952 698041763 128026587 464241843 882708357 819543581 772421506 490898636 853104268 131707739 826107253 581772394 872506936 769094783 786637413 4051433 52184403 566999656 272346728 520014922 424942990 903787908 924681886 757114933 719697428 38253063 761717212 322847502 673292386 473989230 511675894 705318946 42646674 615014927 793016238 623174845 714688449 510163177 390998551 120584045 528036827 100882855 877774856 27553606 518884842 13620029 50764246 206294121 555583271 634765591 583507792 501140935 368525510 958425760 269521093 400564955 754364525 463269421 646654881 658673488 78645652 663165800 328941436 45170761 204418040 736689906 643462106 738139690 595777306 708136697 34524156 472722589 3194866 962050350 149576706 584971322 758919639 912053534 749532125 547782293 297831685 695551256 514312298 452327824 584613274 697298121 138197036 199841811 549837753 272922920 996084319 619249122 787384879 458992674 976859645 198431608 400965482 617506010 855651720 80034329 12624305 628653458 913858858 354750801 933879966 495735335 543187235 278369311 910941103 511409660 981741260 593377861 104065381 517841198 889110448 243914575 701146265 769079057 116383282 151370616 674508290 309613347 221312064 170802449 833175782 814685616 958690200 25580420 921323823 651733927 251846117 865184574 306817005 58682556 799160858 632947412 239693323 325206651 584209895 765390553 827769585 603765059 399893918 395428257 171610967 848554482 661174910 995482496 817665492 411273095 464760678 644285765 249706252 930376534 686819848 582105117 222554414 841501289 326572590 706576728 263251919 582097104 756278336 618371613 471988240 260994794 140438557 636018759 89955079 872219438 78927509 530502678 796302094 818348106 826499655 611742800 596012432 143031515 695291271 974623510 580260552 855822152 111164415 147674943 53105224 584883779 563078254 43150262 606066839 470114803 943849893 882848906 679003589 316555152 482724163 127897632 305658207 663186718 1121952 865579425 929697963 829855516 60524924 138447715 484001033 776024293 197946331 835698721 930227536 84539426 883317744 558718832 918463961 179123891 577736321 273782912 224181102 189265932 967693420 570784059 914447386 351852344 554516698 390830438 941446077 140631189 809607996 916221781 235089872 411979564 524435213 188450136 248100025 914025027 225572143 880949441 750689650 266192926 73978456 131093724 550525173 622481303 858753320 707451656 9034803 939014451 648148665 435254463 791694556 630894717 461075016 939585532 633900190 785205876 963250235 379926187 234138448 726229608 322630655 246407661 708972937 472706325 620017239 573940168 721740868 538243351 717200863 744775914 195024803 472814681 937061197 658111835 707092854 511105392 113676451 948068478 341243741 328126786 848873429 364831466 44422796 327095139 713071640 551997901 859741776 382187945 233840962 306553965 425734876 531916863 952734364 152383039 294284091 792825976 502069702 887802265 23926731 672189067 76591627 187799735 651317555 921164541 940250818 955216852 245261350 356380300 776150748 980769303 206816778 611218083 967195663 693895654 27552550 112858376 455090104 603968522 754834106 932056821 230143282 928273207 160886214 663672266 278202115 466533119 750683372 250353032 950765715 608029879 60056830 378667627 432057277 932140565 781069954 551029717 20175598 993573847 527154799 216722737 794113224 739846828 888584082 598529357 515877903 758220038 687160565 650382662 448756182 192021360 860758050 803977456 807675800 117613079 352550347 995935184 648622709 370374652 959291313 562776279 606431172 156723151 957894669 815925635 806124454 929230010 271979257 503217034 304687904 232301141 793447969 816063344 410458965 165198356 626557330 335786667 629755663 738300930 995227988 470287135 840641663 872836078 666044230 140689258 394842064 475016675 129919656 909284284 872873698 950100358 88185493 105076385 101694652 541254842 979785550 366361474 229980428 10094224 23213723 312505953 831528845 622589386 384173644 937670057 398711907 83017175 494593648 75969099 804271322 122579037 79853515 917372498 277206317 915323118 958518852 486320830 512889140 927511168 461676356 578247026 976369546 879998922 453152534 421272321 860738964 164493366 465684337 283025922 550296654 18355090 700524897 844616095 619507383 856813501 240957827 29518645 424070032 635240983 599629799 651430234 40864042 109068204 148652794 239445020 543827434 108292920 370073086 124837003 965433915 269774376 468472180 71583974 223852421 559563231 176322981 60987687 874307245 996843654 837900045 801243980 210461397 313254615 477105202 855050783 148522129 298155016 277938744 806772068 11429199 20949391 338382284 855163964 921173713 202777657 785487621 451939270 562117406 163812599 385182979 303259380 372412289 124706361 90527191 784197679 818176435 820227389 457669807 40763767 481031684 140330558 693322983 502505262 413623656 6882746 105906804 439247190 493551894 999803172 308191495 963344653 308301745 840020514 341603551 473511750 41695523 604458787 669893154 822913841 149724988 363390277 82267141 454572118 104302973 260116240 509347536 36209220 680710533 837785263 460597403 769941217 12361429 727371627 404188159 923813071 850779905 671565164 134359658 824846187 456742477 872155033 727905028 349727064 358117324 696233272 261372841 363995836 865123217 157634260 208584250 768473092 287730417 178756025 704571416 388339003 874328075 832959934 118660783 71650239 19274632 7617351 809148073 162514533 726125834 798247418 589098048 161156104 791318304 387262873 82215165 422093474 463183617 779342035 954569263 493347344 392544700 935505773 451280248 472732876 923112080 752770153 967767471 61281314 509757709 259290599 194840184 826733314 580724182 150885737 471838638 105192425 997490705 35501033 252764245 328486100 121489802 513035643 635934747 887874436 899289692 765618534 924153450 254526268 88714322 728953238 486950814 8256399 899877765 608568421 392662088 74955147 845627678 843456236 561078895 323749134 601740135 397733944 656405813 154787782 705495340 690067929 626012845 949302468 4828068 877862459 958241314 345253868 137509512 831187001 650940719 98677196 840753619 271132904 871910697 419625622 226722570 397512142 901717313 514778435 907038077 672290954 85482874 207479485 108092811 243616270 177505967 302786397 889987471 414165267 139226088 868310698 257821527 692467390 192480391 636937198 149514256 373454458 112936761 679283136 849378570 446743943 860283612 205724810 236116523 296797310 145781692 662296188 720157518 583902852 68883870 200740794 617076518 633936982 270073573 461918334 227598476 648849874 937589913 944615151 271927691 300761984 70135408 858339851 892967756 484323995 558225137 772572449 266678576 152991607 573324856 854108179 447207683 950061385 531168306 108042432 736825735 804654357 902284552 605405527 204515873 394218062 358308633 960420027 195657174 179550327 479976424 621910462 71014401 753953916 920253709 313237698 454641043 495093973 967993793 145168425 857664111 324172757 732305741 873922750 727501184 10827247 213609555 204265763 290304830 323811745 10099877 251128299 702717808 932675540 530649143 713597069 632590824 518450483 354709385 927062959 44859131 54401365 417365545 815518484 441064067 632541765 393031914 512171163 757480972 915540289 964490220 688150390 896425629 619076600 60765170 841096751 758492488 201972734 369680070 692142882 241698910 356453932 667006809 550031597 400861629 704388899 647465346 143603434 653762189 212827179 41193794 201705691 96779995 520252942 332864257 747224270 586646668 832883629 975179160 813557436 179486010 459010040 334363937 558488451 152549854 733255695 128113867 161246321 65648917 860936265 523655897 808261625 768561204 822501003 453934865 110837545 28884088 787264717 580487556 324736813 720872190 506903778 167610814 764484421 520997144 850344150 412714156 541436996 171580365 466389342 218222695 446961052 754272633 215293550 151977162 401691777 88413893 669824657 770290137 690298539 298084507 617697720 281942550 948269251 304440514 990426341 37671866 255012938 92691223 213507403 706442135 786473945 105898548 814908906 398189921 880995132 705914264 402809141 535442497 568341263 550495235 454028018 198639425 983363247 679312769 511895316 416852572 876984780 986847721 419198049 139220615 801712202 970967035 158321706 301330778 311552011 944824003 68676051 732868283 761802833 749855209 399759546 843816869 692376467 749227323 51418475 420201594 111450028 143843781 921650497 287157229 689031618 569253044 289737602 933409569 436346114 536345923 636874243 908894672 262605033 583541960 307549958 835825050 856761342 204949852 375617581 336412995 398694390 379826127 393526899 649523998 592283127 877601856 546398737 435355260 664702198 538207979 429586733 570524825 736695612 26531195 238912145 287307120 604910036 649975713 342079406 4987540 377197071 938505787 805323954 203715125 619486030 907329960 64471511 354906400 995719533 809199896 752837446 28345764 225368058 223938630 618589528 155103216 819441976 899189941 421975894 517674248 995961831 662014090 978351160 947474510 279321855 417222157 672716578 590322895 807323949 666209854 372015905 888476643 649938954 928824558 200479689 598491391 941824605 424402415 584914458 655889275 599743969 570857437 789265475 39542235 496607276 54928456 567925601 440148780 557143476 7338655 952536725 236941571 872802164 435056979 829149625 699982786 653651185 794247079 709871770 928009013 42655377 319130094 168777834 494193244 747729790 643931150 989446046 771814582 189628095 904452963 883963645 564366026 343777375 109413276 495014472 300025109 953318276 677408404 185465392 934326575 804895721 65170639 690229026 993772381 691395304 720923265 574367009 443207998 351049315 544155828 449279299 354918958 386544475 172565003 298205760 664255461 713080653 581196769 729684220 533019283 294415801 984925345 169576202 230934285 13963881 333820347 99755191 223807920 865348955 26977378 61076729 245017720 970583667 348392816 184511306 976652182 897740899 102394088 705108981 31381565 854517348 180755418 459915729 648384755 332189276 29955617 260757384 261384154 340874886 333076048 851574557 622382077 679707558 913316663 95320038 170757966 155600278 798592295 769540017 478683017 749555311 143429325 959851282 971866468 566857531 549163571 545850883 713372277 627816861 100722161 181507388 777099329 287310726 713453428 269843668 81889944 257602553 683837979 471899550 220857929 629197646 298405955 654038370 536512180 85313299 740082587 347313802 830809039 892760116 448705327 137911259 8222956 443988301 348204505 988623254 44899701 656230709 204998929 111738612 800083203 873641839 3323861 850365897 789100911 154414437 84402816 700016897 902148065 954429052 641911059 518027931 897502300 230800934 24276309 490805254 867930504 956554927 958558039 295502521 346705917 506359457 882520105 242851540 815580554 30330748 290187089 220380675 838022342 14017216 49795101 644336557 272902819 455156545 754698841 860782345 984390142 243215372 469722305 854718435 718441708 109001695 958711471 166340061 730307606 583832745 621695716 679184150 943175391 792651536 418431153 242154522 200483498 220773163 289964469 330633908 169827251 712750114 70131333 668209800 878948483 363514391 910505927 704501484 665677917 750335037 217753586 299641726 195432993 686672861 258908477 531945452 61859453 850276463 372074545 590382556 515670994 816215765 200451359 377675616 337627905 712630025 60082782 991780704 263583634 83958763 937536591 187334903 759688690 890651980 726890439 251279778 923990724 839604885 236496586 5645643 762427398 658148880 36662444 10595197 318651666 166323096 951392651 382131880 729862854 982064090 404073865 650899933 444954899 548436099 514520280 949081910 18773837 296247162 299016156 3142948 303743595 747681527 813739282 314990707 623846443 794401763 989693263 922817004 125565772 896891263 936358176 639096561 636226747 730879234 889286404 918820029 301799778 40878003 640331567 571597666 421759041 457429879 410617043 497720646 141211549 208515795 740645260 282136076 326732287 996855923 723142846 457854087 820002548 710118787 626262203 369165752 245127352 923040527 424410858 232139942 175009705 616090885 211011715 789299831 223374598 813414407 993233552 909076378 763863444 129007883 687083284 139648737 387176108 329331180 104983826 418390751 595609456 287366765 953722264 17606856 757130393 540761040 147966956 564828856 775304952 779303004 948731620 318917273 154994937 513789951 517386487 341936700 268062322 181409094 160016643 824446585 971690644 960023794 449618618 135302522 801151607 114048486 98944529 47657604 216447969 650062853 71328839 735576348 792812933 598862718 981954608 534171610 267195866 422359513 452351459 520104445 329802571 480317028 401091706 198828672 681877021 732763081 39736500 813117069 87164958 324045835 139761147 264779374 730539637 571419277 631811573 600435517 56332512 804259836 491420313 548058698 910442308 836998745 58375762 2295931 441348167 426549639 69673957 911181060 185352223 401533410 431064222 402929202 390596839 915575814 764864913 882349266 90084528 642287969 551406250 306376560 116062946 991639742 629928227 596308686 308377845 588467428 952946217 689042669 645524642 555086092 657537130 752619683 176612829 627510632 524186434 630564574 310661095 465754967 576023296 599103392 543828523 878513069 340387701 434209622 899487438 312521706 347103923 634935370 154128959 438722941 612793218 305216340 303727620 995701817 80682350 874721464 347635855 690302754 91292099 105994483 622710343 380367450 608904058 715439021 786068990 393885208 779716144 59778619 581384082 387301845 970873538 597230894 586663060 924236736 552373472 924092122 171542372 698654701 40132827 465756199 903547500 188008789 914469345 737242236 579210245 536156450 519769393 282778452 221290245 124312176 306409379 590089957 941817254 921009946 562247473 553800008 228773954 393753487 495279536 732513719 13437214 791232409 395134797 716392940 638632515 235799926 956394753 514551064 373296191 826079724 329627059 744448848 526244414 461092497 289221275 145756537 837275031 866666337 495796639 126799296 526506700 933379763 428974665 195759391 596819289 88098719 796350026 794676073 906935234 714416339 165022973 616152582 586243479 854490372 525976240 610950676 116590258 610762366 587970984 300962271 858078748 25332331 691551858 628976062 454223770 243339838 168860951 71448154 482863174 767144875 155238602 997011437 520793306 594762914 404882407 970663021 609377486 933408126 962227817 14342693 906722848 491114857 784165193 366118976 811985596 555922389 307206483 783143059 959878130 213723416 818056807 178640696 951937039 711420745 446845039 586318446 30092008 875169902 706175988 197190247 356503855 185599656 603027778 806091486 733865850 894560015 630109700 390448823 546359324 928550160 557270356 591455415 532749841 959420673 41677453 817757728 857790482 87397856 8162447 302755819 440140518 200614065 552298043 24984207 829050208 854363140 926926663 234364620 808398463 513037844 860605939 720935898 671106421 439664222 841457855 213993781 640086127 425885158 450859802 441387953 438947839 694791249 563072228 145965320 659024131 810020477 588804928 642002909 7074356 441825195 199712480 260195374 28569209 460201551 862708953 320630608 252000266 750271861 558349588 706947540 746678583 467199942 220139840 726617891 8161004 498460308 992923433 528064749 546517500 510518933 294489753 722273714 828218554 223828017 354879685 499857198 247780350 806113397 136885463 878413023 504457510 791669983 194730054 219104187 249055529 492127505 444884483 324618202 879785049 732687230 876529578 550505291 113085726 611218245 264444812 362173232 556606601 966899774 53060759 52481523 89858530 913284210 449251078 619056878 475162335 956813090 615594227 875369044 561394448 823305083 303951436 756748657 795124033 442314301 307594627 157147856 689359268 926630985 311725630 858074844 21052131 639075353 816817914 368733854 553602638 43353906 147354531 117762176 812899389 993945001 954948456 189495278 26623789 995671679 941494381 325264718 45890131 501116124 183616328 929999788 449642850 810201550 405117124 330528251 327537563 161773073 562001790 323825079 540461185 62997117 652123544 606484802 69364269 413521214 272036126 884563707 905211001 507504434 739517683 149376238 108410 181219552 185091593 44468648 529122105 958072082 53372365 339166755 335347609 749891135 303321027 42911179 112343210 27104327 372847327 76245105 815075480 383911962 939168707 820369576 18877212 736085270 548737985 785122212 230858797 905066687 891112875 333381824 43666107 443201694 931866149 641379425 845603022 790939631 632191051 685964664 535123560 721504968 77304220 448073009 495878456 659773304 899269489 610428184 391440481 65193740 407946368 256850176 595218437 4743296 647692006 869454451 96078944 320251281 257943608 997596595 654531111 410973571 277599243 603309143 953211495 18324897 692694770 266267984 746125227 445976188 442974213 121221883 780421317 819889804 221133747 626198742 736199754 46502763 697020948 888200441 788002774 722892486 608526509 616702233 598230913 2376895 689691192 465892121 836594634 315327834 682217691 830896039 606327171 821484538 827218949 691051539 82233507 365500918 269024560 37597817 724829417 836977415 201830150 490070303 302575368 618393701 684715454 955579499 300170308 236104175 118244551 949877061 945865621 761907554 952273271 907470340 611630936 679508685 78295778 253664366 521907092 657364522 45927717 931984775 651131240 216859998 399249329 60376225 294956770 243828323 70196671 922462585 952429963 729566461 13851508 38707203 416526080 874765082 502881690 874170040 349199634 293920608 190433886 349109485 158938002 154719214 618087338 835964284 734736820 966595587 105620784 49679309 410542201 339225517 879947676 640947969 518877451 206804845 619965958 80103966 273196312 348819855 483662652 714758617 811943188 65698509 340304764 939168676 439539141 172759497 609888793 815052696 822290425 330125112 689980403 15056449 677266198 166118705 903919341 906147904 989893482 465485085 423673403 886415065 200854623 166015796 950501089 804778113 783687894 339582914 91139482 367331669 294826812 353905028 464037632 976108533 925918813 283690276 663277807 836197496 978673811 67951718 887604913 259189501 3993561 968955436 477958677 737318564 136142809 273677717 201484007 701830669 337793376 820350757 24282298 882525579 876741871 928401447 31851808 420683312 486824008 565982449 89526027 276664130 376957097 32195787 625582633 271944656 790374342 930904456 156848052 210172647 16428559 550710444 944135505 662598570 743582015 295243827 630141121 475359622 132534530 769802728 60359262 542580766 411528549 385499278 122903870 249226282 358124953 682129012 23282524 488894952 788948290 739228898 522621454 738337693 884919659 21831353 972016923 596767415 441778833 904857942 193233540 571297451 228711430 549153878 349977899 8988311 13152136 93613470 90422286 734929909 528410319 916534582 18381750 221308543 541680855 28907440 973432659 742997168 239386055 458466897 39953571 179054884 659311548 338302015 882172887 880289420 437285060 126768089 149624384 541088032 260898510 871814459 344367318 597026870 784399074 269360055 243440927 582514496 373564435 521512219 819613933 37850528 466368820 286424903 787887259 775071233 449284971 173784881 866890755 853082551 658273132 410807074 954361874 365454810 739942992 687733086 967048326 122577661 556704641 97471248 371186509 709159674 906410076 840113519 881620231 99775084 789121688 73827297 303343606 728646846 934212496 903575782 113474730 938300283 700086885 45137319 50093981 830806033 278586511 159983769 884740481 113690672 389061759 150121506 812813812 993313231 236317478 44615253 677791813 592624658 729215742 240336433 146124844 679760961 155443097 545758409 431853546 533737843 775962604 465511831 230925123 477027174 532453403 341789090 324422519 264309156 525247336 715119175 628852105 891281978 61166312 185905160 261740076 115254264 773782773 79464623 756083469 52736899 914499137 342799885 147329499 145590585 796167154 324548662 184599760 139497224 599661331 493223931 688573287 861352266 999346421 562290840 494908793 355799550 841047470 438348152 6746325 908596099 792547813 949838181 362132783 3323613 887497533 138935291 881930331 64247743 273794409 206821691 738916175 658459275 30683581 531046181 38615610 883665318 371766195 278836740 327487126 643671818 394751592 964370790 89679989 172857132 371903386 377386203 582320257 62112843 500155180 677622131 455166934 482443759 976440430 842576251 577006228 917859485 689193689 736299589 842634774 230672098 996552760 83062967 498138440 443634803 95553488 814197382 24097573 517134234 471861554 128596964 448524565 215057632 315552105 508033585 906021572 657902822 867935055 195730486 620710557 672340961 872103302 936898439 339653314 686491640 341243755 359148625 30745312 595697026 606248396 225451010 530587943 844789736 965005873 887988790 543940148 455968101 18656639 501758295 412743108 342834357 794497852 387908103 573216106 833066798 436558289 47307167 672552198 188192693 314856376 198158853 577339294 968167193 112274813 586343700 989905454 570211127 724349166 288476233 32995622 885544534 832701786 187763401 787972932 69572768 38800238 814759114 365312198 161011733 356764028 604315777 803243191 355276833 778158470 416517061 905970094 522699409 465039401 547897058 94914681 464087930 464964221 733044335 629405148 745799136 53712984 938987415 368441291 307864951 801022206 88578191 542149282 121483886 241270265 2285519 381083330 69400530 90051763 606528511 899939330 543957603 536577446 480476318 665816124 697778501 984726367 210020448 388252741 863345283 154332694 149962658 780565395 991984375 697970752 629081245 630667214 991695646 881208444 599895493 755664119 784474 652790965 1938469 946134620 971241126 563222242 955315684 338059263 537684601 747745286 803505367 188647152 116620689 779076779 692161440 614247889 512399549 978714634 168110648 592169747 966785339 18307662 96154868 793272350 498736890 536151792 654596216 256154131 921788941 295601221 828742688 104307992 838248584 720327262 45059319 384951920 722180636 261454887 357711545 97347475 203093398 638565892 761542802 900235819 656264542 827975583 478532563 486156274 904165603 540325389 946855611 811383631 845632933 975358207 396811753 589705512 301459343 686599674 677317799 224232663 525548491 38574325 389862500 806734192 421431437 773400892 288084229 852167883 363819363 568767560 867711180 971922410 152620123 351406658 835649376 941830865 826078151 329267659 443812951 527864145 236393911 811136924 486859155 611992117 247096006 262178262 221456919 46801219 875054186 271266356 824625023 260046848 175379130 258867268 520188508 360100351 263399910 366836176 183744548 831555535 174571944 48994450 779521228 5671196 494623652 990243601 102764927 562519492 796076110 27232181 843491709 772726466 405241754 225947070 919160995 433921559 462737493 472653775 250137332 812432402 21013482 681920604 159248523 516321022 265008884 146515694 500851903 330763089 197367627 561864938 77355705 979788455 480450687 512632219 221069497 504395616 71294510 442119399 964848876 568009996 199623269 702930692 744743908 890758506 14211080 481324362 536334311 940117562 951111772 152069419 896632537 641852579 289563255 755529782 600080445 89490769 728656929 65268699 815455842 393712897 906004461 642399186 758648936 332868965 743097359 243024426 10524416 967390019 425659134 459286501 536856516 126753909 492716312 448385485 67814627 929873475 799820517 606333735 502511365 394920942 91109116 700224927 529985975 449315140 126508886 224552658 789127471 430200505 584807844 916977645 609880650 966572668 468123153 771343426 783048012 932287986 554630575 903627004 391094978 3492424 640759043 926770721 204277516 206089778 664868232 128789409 677301606 761582158 646258931 669246000 440662140 355289548 933111830 904192695 180472003 467069898 43117917 572838969 339500647 59147804 214009833 104008257 254789310 806398955 970926495 863720957 871577066 962568265 221737450 830887609 319622096 665359731 388474082 713625457 835186925 724851690 726174166 344512639 906111017 583738001 104823102 385862362 291252087 952485323 377679020 422291668 969063818 52060937 346886517 759189108 921603059 642562786 197557679 143331006 544990703 70380606 620359415 724576847 858459986 461121115 456747867 335716120 167671484 468241716 275815983 17592462 358391011 477729539 381233583 60975025 901943361 451350565 773978492 990455826 653584909 22209728 95700320 763246230 270244136 846289032 341639039 843416220 860884091 306964924 48764168 713348162 48840612 699810110 538382977 813066206 834013987 637014177 831527086 721377197 35916612 955257542 610098241 547570540 657692977 676040114 391949477 325919198 243954861 456618411 932284400 670939671 889384033 340656010 226889710 928564362 187210701 878021826 665049618 760517626 74365095 314258489 875880303 153557517 956954767 541788668 96800996 226362015 983854763 167412178 683044635 141186319 311615294 80120320 983817002 38338628 162673247 48156109 417491922 34794822 865085088 552183801 489861218 527126696 977691817 847567600 854827863 253270818 753264025 140743080 287144526 223870343 731308745 569823989 547366348 476569517 696708818 383018428 458839305 415420660 459392736 809362488 486106895 804050160 853312893 103961069 772270245 310992424 83389218 658154744 432088715 201257427 969201051 53340691 814059460 23897886 139655263 966521773 609485100 155973063 564635022 85374596 250971510 745831377 452378439 236077762 89715998 865731512 467210348 584865957 973817450 634823303 443463763 242257252 510433513 766917566 978499405 27968855 752572192 851590833 894580754 34765164 310794195 92802640 723303801 962045423 802848505 888178815 289222675 465745118 969999848 250359214 395622499 757227108 944597066 839228220 639867382 964263133 988371597 999032994 715852689 360551300 808805516 114709934 23990020 185338357 299667184 422355748 86070981 829694178 605046598 764770750 241856405 922990407 193750197 985823546 520704789 563987449 100181235 178699773 717983740 663546421 579149044 492232447 978438617 432694889 546582986 562549107 643034101 52438179 816684510 953186931 322773842 666694434 330999717 350306887 617699824 367588865 197500258 232654520 128409870 689396691 992436733 8713000 594380023 534413465 572068627 741798074 635150216 691596099 776875230 526600816 699278737 513312525 797085277 948754703 818600347 118979410 105419975 356955747 634080560 644745512 730619273 9158793 328951002 783202313 32296306 993223996 667417319 629634721 366854177 701885661 600890802 588372913 302362806 260926085 364339189 529090244 194995712 672958853 690642207 179096580 710417017 503964135 736667531 800415069 511440173 774494945 573768812 472870909 808296834 470608275 306001449 291415441 683943915 579848655 214516923 823807093 293825711 741455681 528236293 13443108 226892960 89576733 731431687 796671786 989800381 759573373 947386291 717941943 630174006 63752160 249853872 279806253 120960386 109197082 167806530 457488479 612438152 395306671 178944668 220622317 507771746 304665759 923659434 858798164 506164486 839907924 65950359 994306219 78641691 599092436 579108566 259270731 796011856 94602476 976729848 72642692 75917774 581558720 539819339 294936193 731348887 79919352 411662235 750925872 483340860 747501604 698916598 972494684 814219258 369014124 534165852 13835089 586750332 380832775 454154787 836093648 573033382 471601854 40242727 910159019 27308482 573931677 921942577 981951850 770363764 441344856 1001233 458782216 467218701 326479081 113391954 669821225 747540481 586469284 110175450 908506436 410124429 500622347 222784441 156725641 118495983 410973242 621621123 887965285 451258115 62435376 959089979 588321468 205400551 343724212 48594187 868122017 972539171 469195203 735606430 606002952 942318593 766594213 49812421 639045183 192097507 63778832 371745837 642420712 727502897 117637060 407338318 280505745 680733891 158837820 235527437 347051079 49825621 267243887 641539921 824409732 756515167 205673005 853305557 946647528 291510701 289607642 482121413 886582680 942130521 722302399 42611249 395249390 545726407 934054557 518262670 663270522 148594730 647281544 155843740 211643110 981413036 532232954 113824655 198536708 770957196 259773395 125894386 448468947 466823092 324318535 477988409 111825142 965573769 94501871 98097952 157634815 9804906 404400986 959015096 722984313 383537755 146286166 96256144 696767655 608284008 771202515 372901227 865978446 192993800 658655784 569828180 881492699 394475669 893601129 564247544 586531062 56274262 635723596 423816187 871018357 770671641 854858033 433707251 698330337 998931516 31592290 202988180 233309359 39178498 520673859 686356588 213428226 527197502 546293282 849533755 803074293 318272003 896318188 190159903 757510040 48610709 34464647 656213751 116639569 549075985 481073356 754345025 329711007 497236166 192790638 214564763 759912428 949457937 65077714 352052184 250850137 107490992 170682034 912340917 582019368 546348691 327206322 263213220 538780462 491945641 875347062 329085567 509692472 663242169 447586313 879799281 878574456 843791564 828971469 476916120 506212617 643168490 913425946 65037436 192951292 977759087 792765602 134638770 455015553 186289802 994181175 192218028 821165984 370456280 565454789 685330484 374961943 826132692 686176821 979619714 225746423 319667965 32113104 589392543 535394691 123541584 742913442 728789269 688381372 352322539 585377059 7122542 410301539 342510136 270687419 130095253 766926815 644682104 573577322 20835178 587671369 195310259 775517322 36356785 750107451 101166300 731690541 586340424 29335189 787081995 786068809 415269424 937867890 642687587 160193154 957616518 931166066 650807659 319131449 627069564 988135857 581085716 22618700 705574345 279640901 325744059 648318840 992778523 641062957 469166113 159122501 804392858 465536200 127375046 193460423 793802550 480521702 452063459 355306552 960638652 892936008 245762710 350341135 931762221 391180405 526985547 181356900 442132472 793976960 574993739 335213236 937616814 637152560 637075894 56788674 663107260 674032619 735431374 88269425 320142090 779171905 382470884 741237729 528162610 23938907 823996742 817650279 538103815 544276758 137078777 633720716 928857842 541616199 991630025 954948688 547539821 285382093 716407523 617240578 936803050 408724842 11293577 420839545 682420349 78149974 502443976 201544653 139729768 717559105 122009537 853457983 288050359 691056166 651585591 48004171 394654275 929466230 978370247 475967348 101214716 486256208 292955934 297844847 22094914 661234352 117467148 140454574 607441445 804942338 348380160 745820000 905496429 717819476 612335066 413090238 33350351 934896943 690965608 893092521 72299072 42400094 374651120 215538359 753763707 200192782 248338720 402244841 82965929 974661929 966046525 807566047 968691078 560516152 696491297 692583379 941325114 985039536 665387364 194022275 26777101 805620638 281408521 120259936 201326655 752958815 390901159 839272075 443651536 478430804 292670013 637394410 156681666 424403152 899248219 962496671 244105497 285442171 731713964 729891201 738848364 112735861 196432036 293916707 45254051 505831294 464584367 169412741 508658668 744076620 832103447 318824801 578995334 321094984 142737854 436075295 587315872 942873895 16358909 502432198 767595247 836276413 569992122 213976725 206055634 497650940 996386189 647437253 737078887 984877640 309130884 188327436 159169409 813065154 27524936 565368141 136202460 645097973 72572251 548850516 383898098 532253950 729610859 842550450 571514650 230179775 587880624 296675346 425544293 572173570 578019558 806030819 156182211 822069229 503542339 129726652 443944459 641166896 352177062 982844203 367418845 889550682 112380215 321278427 474103238 613267411 319129869 936992114 637154188 869778078 404369947 285085965 88385166 956815886 299680308 899931066 529598740 36931596 378758901 982607382 178636857 593129788 741262684 497749844 400870094 592892085 259681393 712313417 265982810 197617518 938737406 137067912 138561577 629965122 719830927 231660794 147545121 673153900 37726859 693142128 539465355 114818257 417805908 720229232 463571960 935332787 969319141 294393573 262508686 590788609 94485263 447467609 547448986 658627279 775885172 972324674 76845663 398767456 35694361 211424257 246202708 192269837 158198860 643943034 409024657 950506987 631760431 290754728 53808503 434227973 752456974 953745416 805723312 237664993 848633813 182199185 69078144 699953425 677533387 503592629 179625199 562316632 699623267 524088817 512660871 735345700 308547799 788855115 422861683 732755932 766305177 927891194 772915277 15005937 16105108 643107915 103049608 107379272 234523223 218580031 545145662 995548582 529522784 892681387 508992322 767791803 589527904 111434015 517276113 833775399 493229925 330404584 193459584 332018391 866422431 158072256 180607325 148785111 163599071 320953512 651631139 466124120 1056507 299388397 506522749 223160922 192396337 275327301 676571391 657930271 216214606 881595355 553428315 68147077 695622149 727347411 249724534 218228832 687011524 404398599 922956549 17965498 96574491 360763960 219270889 637207136 808961378 606785 355608747 135503539 935506355 368833880 43544429 251275616 296101953 508857641 253546891 121315022 528992905 618132412 545390552 920552582 41885807 837457572 875188925 915413808 681504506 225046964 963529050 147210723 850475397 956567487 632206691 383655354 608210074 496829473 101895574 677965919 183034010 107875585 884321679 168732223 637506554 501946075 649581968 56873338 441532206 675316271 471428967 860711626 61706907 522639969 394566960 949307182 946662178 183610559 991119147 201420638 996371427 961575875 724318097 441172946 646966990 630230172 275726329 897576738 723675125 476439698 764402492 45655091 86294889 562924506 332051451 381626158 942232873 480267776 840504874 562332054 653410098 325369187 345941428 643007946 865778102 552228451 272063815 115581668 532836188 112237004 714208422 21484812 175411015 730897876 744770630 77388048 127124072 652662999 948318141 904057738 308966932 159895735 310086400 374697839 73706921 840384520 825205549 107445239 590243097 107078876 868265568 285757700 29303556 937965830 466127608 789628346 872571123 564945581 925673606 488699650 79655623 897931103 911803204 338262556 541388599 905446882 158373912 502187505 369960548 512171150 199442551 304858087 736826811 719061458 118718777 401365358 839854943 549080926 164515523 374108880 250137561 635770395 536391524 42594578 149374856 183906715 386465866 813732847 131555373 31531098 602015114 319137806 132421337 502990209 963428475 948123865 844817740 159739758 877697115 552914383 721265492 786376352 543080446 532032036 330659833 765163831 605064793 768682615 737454417 56732015 292321921 100590096 687352014 120927331 864875580 464767550 242633877 641236692 246693954 980318262 279076755 466368831 423277855 223670847 17099437 842640562 28052175 139902510 536050900 78324155 168841209 84630364 770667871 248731462 760857274 576668429 10968582 175235167 268951908 463965252 597442044 220912755 867892568 914344439 391693462 284432528 554234002 729633254 633584042 499945645 561681686 154458269 965631572 688199018 553735432 124704934 372805126 402023448 115236303 205212662 511874969 542267795 227467828 515888018 573915905 223525212 368188179 747171278 135549861 409390613 683930277 800372600 333606303 252194964 943262696 102155012 974690559 91073 275148851 555092511 219266043 852900601 818161041 296422348 410263321 924489371 848592002 275613752 569439240 72006428 886091296 486211445 518512656 572675312 116437176 907034337 529332646 866617932 33914623 10433675 859720670 335106956 122748362 132727502 542864373 857180875 755817471 967144292 518086814 627617149 38411836 691732776 199821302 128070103 896824785 622370683 218178354 289502956 26218340 100541387 726787021 595232490 202461443 349943136 446107964 533229902 171258473 378449592 927567562 956250274 764003673 519330211 799759488 945888733 837234353 955659550 216739545 876004308 123623710 808851261 461433577 918415887 548171328 783045784 320374835 759069125 435711116 159386740 200840477 370898029 576339038 698495661 669548421 792502285 139732608 695703399 999310864 597090118 24739516 461935102 473466504 83727502 559308108 485430271 786241103 232871511 3823063 77621695 442883849 478224309 576102085 373187587 71317833 84114105 774838316 867951090 612561477 181574489 65337013 387004388 986128182 925826209 222715167 999379425 78338615 754389013 107036159 802557688 862748335 669775255 867813994 330105797 443204926 333060931 48073229 113271880 354179870 325325312 464861455 808874231 723036073 698927469 932888610 726165550 210701301 881443828 691508883 909571131 611781959 351029998 391332286 971698945 696281769 240588900 737441219 971632314 340640243 529293475 237778901 96056469 361436442 791470773 347500680 236199158 126138135 285232481 290047050 723636847 562635026 775858528 135553161 831820389 856966507 140513686 663107240 205788810 968966718 255146072 830888366 831043629 662810783 111128276 153018354 369676983 352628876 889019237 514356657 788100009 847023857 41693225 468121469 231112430 884130777 794182082 172266523 681990967 826616816 112510568 915630699 353645641 484196799 12593043 397118137 959946184 169036524 700297688 901059782 24857609 120776500 501413317 179494090 780185595 918957073 486818334 86604489 650160847 252582616 983421762 998369470 527505923 360101029 68709763 225558335 482851990 702799420 985020360 892767636 337560373 872239276 349805474 123334822 546976712 477053936 191480414 35045796 320101336 525142452 170923382 3681876 604323435 299211688 66102425 901396883 595714801 352805525 813621637 979781674 502125289 554094817 424523716 676692348 497596999 152184834 770279805 963891200 915898119 155887641 958500210 858645271 812212123 965930804 170888631 805245060 693500559 887028385 297091017 696144239 797840608 89028621 498798634 691242547 620887456 148825287 528468624 457955972 986354787 123496625 59052387 620076842 974383072 870177560 757792188 389233098 550120732 78053965 516300374 324947491 526464800 46183170 16689910 504399496 422519549 284033185 650042940 431229124 493730990 630655778 367658916 71898054 37319744 466722975 764877523 705553993 612972889 279058025 501765073 198900531 635084489 531892820 644512883 188844925 608980923 249052208 285375955 226084439 308502664 423017824 798600066 367939411 738517914 279941903 770254307 723081929 232881733 875344712 157605071 999152231 31741318 851224464 97008777 802114377 639221797 195031216 23846555 853460250 993445231 567476469 646847673 776411280 881871519 90692887 752324976 643845930 498765915 463442441 48199738 294075445 986955307 541246197 968757930 937919111 504404073 255685207 56066324 1311338 975897961 258080287 273895470 251664781 67690529 659736208 924544313 573842581 722050012 196108205 570029414 62054461 247393219 890927155 556069665 983401246 469841721 503130285 134770242 109197394 17021447 978473079 398901948 401148430 738395491 899376153 928565447 515126259 721601518 244799560 947736966 47439952 628722242 440556065 306603593 4673703 404726718 774756907 984619554 502568150 294538023 831099409 242866723 126785430 338487452 436377053 413822025 431238851 841934230 199767971 550193225 389640046 322545545 367125633 113787283 888402479 170588400 717619409 703666225 146119504 957513675 980215437 50795058 892828007 628202713 93764322 574875448 253928553 274755066 975172847 702441155 242672565 950842438 247248844 647910049 787478154 533592772 616222604 680697462 128039515 128743375 186368069 983915713 401428714 602080958 326330972 704280820 356216664 640399583 690867692 188460728 441224226 497434901 549353841 801904459 814576320 746717762 888704716 864277392 776994210 349146398 219425193 8209893 68564580 760824045 843959300 141473994 871402943 706981427 17753963 846173777 444785810 117318098 22318284 261788090 566638144 579078627 615401453 392303432 659932691 419758343 743348968 770628314 81700463 741977042 99511383 117018037 623968526 791584499 83037952 159640424 420324207 931564980 659583 500315456 342380995 370759925 491874725 583134603 972927391 752732162 280598115 938100481 529359000 378011836 145441234 532594186 664492752 630399326 280039426 93457967 510874093 396248107 892943144 145202417 228845796 182151890 885265095 338381450 650045809 11462200 498569085 966690200 148841748 604491304 576303490 582127169 440493495 766573189 527330874 4789031 180398118 519837200 849324429 618982966 464740484 418485851 481981789 190213764 181793666 18218314 28030183 43700967 173223880 751937117 836745799 803031557 365095182 630714966 808630361 741151628 328859825 438283084 283721576 266897039 323288509 631476932 967356479 498594995 801361676 882950647 773160077 102087498 201112931 507813763 145663397 119848125 196524281 962692590 535181079 414933789 501511996 35209023 136594249 666563351 888045697 378807571 405924672 622616377 124594711 327322691 103686326 117195430 885555266 775138052 839332568 171713642 123124688 763488806 176215603 573711679 284598802 577027560 368265085 976825841 497709125 103215614 210099916 4395673 224928997 366728361 949156347 511220746 866730500 980747325 775266756 1527666 199456754 302183172 108380160 843946289 429044280 395037674 718385053 933334751 80831228 797304414 562663494 740268289 31570334 158762821 183596247 576641222 826987882 901354910 124072395 759957130 11453961 959579226 162675591 195939789 461662593 684434460 111378001 328523634 644942430 306239413 411845412 66096499 191308629 516693976 899859620 488832156 860416222 8339336 259466902 646548535 443734001 14661802 66719075 979014093 853232506 597553403 960777790 492648538 897932043 122626895 235391298 40664545 466069854 62140450 131828084 289320354 93778783 832913651 737335531 170758889 588302633 313688647 954014897 699416343 682924427 59557038 88985633 951314964 924779337 455352987 903467604 437103999 819104961 530803547 631089296 372199324 793674529 76029638 466195915 251544713 607621207 113553892 924845449 55802640 457253234 824748622 572551229 36630557 864017378 84888983 424840325 887107648 953534300 712368516 516587014 897507424 119550397 847450018 306850618 938196874 714966335 759795972 588628951 710160253 564512071 363666755 405498033 827588366 458692311 741807666 649037062 564159472 36195522 727182667 137611952 879701442 785443554 579742476 6978747 82115046 243022486 360799273 407645014 733744567 568790903 657274097 516934521 743455529 78784678 106354971 933835175 316551312 679412024 29205141 757898886 935527649 420494524 506966715 483109031 43306441 630248368 49740263 461036936 110149635 240918081 686798710 404370330 707714078 185688233 182832666 909045307 912349013 642073404 696379945 774970814 335877125 570152931 855608684 142419927 745532294 330783313 644987812 674716137 487855266 530278025 43334486 60235540 276711720 517793899 897724416 937680622 524522444 239113957 405307849 828646637 304204966 697038512 458703884 932275952 813080415 571527127 113242161 279060972 533312584 638027047 475586170 61164186 837599034 785118682 198202513 643082531 66219474 547376592 203591159 256865713 728514058 800133160 603558036 922870846 66721094 144259125 336925925 513492802 690615346 684027781 634270806 746820645 496256387 389630541 189039015 342677601 934207160 17757260 931628283 276589229 144259816 412875202 697878338 417352111 196537831 712794588 853415127 453111940 135389018 143892513 278406795 728105169 894496945 44249490 409469960 255262085 531017043 273054952 658392802 311903752 485499850 170127044 756949192 677635598 235438314 839714017 710738497 638008029 366197346 99545112 315495533 899746867 707955385 606776971 599333322 262878183 653345106 320427996 599002438 587063740 870263230 313726775 162172305 267346878 157369350 644606199 475594374 283844571 318507472 485330583 550183532 810502002 504010762 842397144 515047588 546184631 793244475 471310787 49112157 292463506 353982405 46754922 862754039 146026394 511015128 149409068 166495059 204989944 489818607 117537637 884305453 947299371 379105807 693112932 501368660 402653347 129238247 476015344 610007974 656555436 656927632 934959682 201195701 502222171 659408891 884208386 810056805 818251190 149648104 64351818 501258156 110274313 575113748 981283298 889588139 723286058 5940762 129163211 906923373 884825614 679217383 78274903 380576626 64257640 917098663 123144057 208231349 313055539 450970512 292379745 768824163 852363725 750344381 220297409 489923143 351647641 218725497 706084540 334359470 257586753 901242578 681210946 396867589 6014565 678869452 885308188 226262408 842194253 424813075 441759606 768330997 3304159 215591220 282707818 852296992 277900029 261671411 240664201 338078791 776064068 538476780 485432968 426405391 980530779 691726909 568894316 163061306 880125365 591001562 13083499 429002242 32128834 178829148 410646173 73892548 100597198 367989043 228295677 318472230 946017588 888444533 132985586 191119002 787677198 900782736 83725761 95295327 899902953 785325661 269181735 107748414 807501090 71458288 570953071 514099393 921047710 280150656 86796626 235351763 612274112 316902514 544105395 950544006 647392800 761205213 812839120 483100121 3984657 663217350 834369941 133381753 247616209 17780179 548579652 762798196 420919508 612323422 532068686 559136573 534858033 226451249 206002493 303588989 273642495 365061170 114885120 666677063 167145773 741899727 343978280 526965257 955560141 156473636 489141343 328530983 22996455 176334733 980720178 833172902 222623866 801035442 336848629 152362802 320208008 372306641 507187061 306449776 954186473 490073448 868114054 856595604 397987555 696439646 794570657 302044289 77992136 794949068 926586083 485035588 229827056 423991145 417194986 370951173 111101716 150798669 201080197 913983816 461175825 834443911 855704196 58674357 138707471 687727234 497935260 375866095 649979582 939582416 279665401 543419464 753328223 827234616 230513544 794134129 403071899 63153339 537943255 874411244 321961223 213652549 730278414 703950784 9123278 647926101 224169738 841100656 464990047 583580258 186007359 343476450 244630481 573693837 368118849 546085565 919272846 567153708 888945433 415971220 917293646 544396090 662542726 194568961 683467821 141635056 709881589 199201706 812130809 246344941 606923972 636681775 288988018 685191032 490384449 141461825 991084001 419878236 486603140 185197275 905630174 940426520 500439197 786316878 101295931 788200788 261103236 651893653 708755644 626130713 306005863 567828579 259098345 42611029 290263172 370505691 914194123 429608325 190326423 690465415 217767436 724219746 751594582 944127909 454928062 527905012 805489774 726952691 744817590 146471841 250002029 89728434 4516779 137774334 376735314 161810072 891486430 767516178 682724053 313401672 83002953 879828728 859727253 555459805 588587581 999428918 745380178 254731044 534258435 979496149 82194593 804504713 175762627 823855928 672992640 411892960 207030824 721242341 454807598 463739126 981869519 809992693 355460970 642549872 632855446 53671135 608227965 643875864 867883098 926063165 520264021 514034508 642874387 565268851 273557056 493346497 999305897 291076440 389186360 599887676 426051104 153913352 690510539 132462582 158751974 122029979 144455967 594572853 639710558 805843835 434882831 922014694 28954788 995191573 608637980 1184227 99139972 981505731 703617078 341344837 381497758 937722295 562029067 722179319 45441074 383997591 38447046 149401784 392821082 231475008 596583099 864792754 350118811 470827909 71703725 757455431 285167287 278019203 850366567 141973299 158981570 660209748 351187550 482928472 98318807 240660691 461530744 853235903 986021307 924264948 883393735 970160669 561579549 242404186 661319143 145931518 793361616 151600086 117673259 924652793 733511275 223591545 762283302 399399345 854888387 551801519 604771303 397263334 60687340 124243045 690694572 43048794 150136104 712030439 923810982 71519441 847209899 446474196 683710070 450134252 21550871 144322617 696420754 81873366 778883953 573418499 357269066 322462375 525143743 453789898 390778358 705906046 335744222 504084279 212650221 63409903 407539874 63319473 898192902 524580824 200726507 628261982 666079571 844836452 832266397 917500928 810006427 232420276 391587992 266688117 130218281 408561039 476841037 669745724 24053509 901469481 10684494 482358222 279477841 872209283 14312934 234375948 115392269 561388607 423272278 190901824 714491729 26692496 919795971 979611836 890486183 548975105 799758179 880308 70825390 409913857 829454304 733652958 448111833 590541099 725767205 188124388 524745554 946235574 409333036 553153464 636240926 93581107 329184311 701569062 882759535 580094459 61764142 329621893 89059674 803279569 426487927 676996417 901642409 950838313 229557734 80620666 479459158 141627982 89392432 402458554 903718867 907700740 713421174 879247087 791322185 798799483 351251450 660791550 181787055 466657963 832852944 513885169 938897511 478690572 704555653 129339303 103979111 699736806 476502525 990262643 700630587 358558705 30108354 512219359 389143734 357921527 204809395 340642941 701407509 541723284 749025078 609543622 258156465 854656631 483739846 365900940 395055061 528181745 81865933 591779466 177182204 345099982 594658055 15751920 836546116 985913784 512271353 324921236 14680633 230672215 213786251 606107756 304769431 984144432 219875023 140523706 120233187 354250202 212515106 792492537 403670665 757620885 726200828 397381147 955914629 844343244 448498703 5362419 846910718 34665315 936406580 526157909 379442023 535352273 336440199 262790018 426590581 266249818 413931957 191783918 707574907 48848063 409726995 204866469 766828988 665199955 842814263 845973551 601434102 48627025 192455379 569227257 304865990 793872492 458623142 441303090 361558696 137274672 210564428 276948796 132725715 42174462 278863400 803225876 38194434 865920556 283422013 986190228 390492941 174013663 942573741 999345495 246690529 805261259 379458139 185476785 666389496 42444163 870995323 760140879 73457614 811747421 594597239 72922404 991431232 273619226 801418580 160272010 122240223 170063076 34223004 329527725 144972536 850744234 757470095 66783599 523299394 988676919 716681526 903616550 139325172 243180774 226540328 674843724 704505857 266370567 683284697 478618247 24549991 542156324 195748087 807361961 672775093 811600896 406129465 11767244 223783392 166854325 120879548 585514061 156499112 578819772 387047596 361649514 21013182 354214894 40582808 757178806 544632099 438552143 830922698 537294440 650639709 416864237 441695394 591924753 225135648 297483552 782899284 780795690 734038006 936402570 890450677 80224330 240812661 653440173 338069076 318721165 689804527 408067007 163434609 12866407 351552502 646070493 285475079 937149778 918974980 888181521 330072937 587460379 919372237 396383391 534858138 439261839 651626073 827944638 362151176 269871401 864368622 962487137 415043164 626602712 22373496 681891621 988997357 542407093 277993136 280363169 648239829 410189479 198616508 695184325 175840474 597750574 833063290 192608378 346437477 861681030 985604516 952596009 404043644 822605597 916016721 752840785 221045510 11044174 508602593 154985813 304955345 718098253 849159745 413293892 695168996 182379026 228833118 95882156 589166728 805340249 386941597 847190617 22999270 389991237 431896490 512485456 814729323 203342980 27867244 453475416 672751959 888068398 978300055 524677665 3894297 102405023 486552824 616963891 485407263 591492793 988738131 79175972 361857501 285365746 552459752 394170578 316080669 720530317 975574130 246936406 141721113 943337174 363762004 3510067 254885576 932459677 117001914 480781005 657670722 429453599 478663162 686285405 843754639 83749226 544207389 195286287 567239655 204395460 946876109 74575056 514260498 444913912 870238575 529695636 867888214 158197870 220470608 677505921 290052616 104155016 415443515 855443514 667349419 683722162 547378164 748954736 467142521 873117502 895318099 144378486 374093714 180789007 39856774 545131138 322957267 940101725 268310700 956908094 142452326 211792455 941821116 450807360 371692378 513704197 574618391 969232455 263185705 274687951 845838085 71887221 874526779 879605568 328810424 740115198 578110041 701143154 899111793 333416057 185189988 815352447 74005347 769371175 257521374 482126217 233163856 123412067 747200354 307907832 747953820 907681084 715765493 115218559 345031210 71236309 29360189 549596587 840157030 959447693 339889684 679995483 281626929 561888636 126686329 387874219 37981813 741524349 128561850 348173934 649499631 903978599 235681531 620957047 685616935 693154183 933962816 371283610 729585857 733621196 833971161 300164039 88003953 347680553 392603782 105303632 46026166 700855087 276495053 515866183 555740419 325868482 266286059 10167590 8095962 536893292 375185693 277196884 351441402 218493273 196534688 828898077 988587358 580448245 377889177 862295177 786271778 846864395 612018315 962427080 471162569 189458922 419115726 726825540 400087957 530318932 792811345 635921415 538608665 104533705 511989636 555504773 677965004 497435405 389560629 651525756 778358532 635024095 963020034 699817723 873702123 193042394 444959294 63947279 121212530 746983867 456182077 927216865 245212305 249714278 651487069 149307892 274721070 634018620 717257102 937412939 138563922 112951108 906002968 167079932 952401398 335358713 741622715 7526342 127038136 659396922 40054598 572804181 30510264 424345008 894431815 853309981 731400517 116261291 472797961 290794030 255253795 434629382 237637577 261155564 758178141 513568935 255519971 866633016 729873791 610485460 806851782 813145120 853920504 107539960 220193885 509292361 520417320 191786323 93081839 448981362 187729094 665591781 495905201 557610568 562131097 124323701 580168753 663105140 342533204 442023151 869142399 104681675 910059563 36231784 790289770 277185136 876853616 616057721 197576273 352184518 666143698 83062444 80858595 957827121 685069119 172809081 629054264 891305184 95116738 442376052 920922021 421682343 630515224 868084211 658094053 784167582 503375425 519190023 243657490 713344644 972969871 877749650 649921866 931656012 632629251 913534328 308537590 394758441 671174845 905714529 500321140 892038871 579905803 653591321 989561726 83801427 477943664 864596891 179558728 323357160 898301516 22490942 645371728 559914599 417898722 230908611 841265065 428071027 731244346 913345912 763204475 609015712 855159497 954325665 279789282 261178141 225754909 788571431 163036068 572471146 757958589 181740074 736577542 642384702 245196635 159445523 780383951 591462270 807586719 39326349 489265234 904213143 576297958 153354047 712825595 787710851 363325144 480717889 415520764 638098006 257456306 530432409 862896428 746789420 867531253 781480694 940832747 243925046 491888419 671525077 50429114 243299334 328158078 210003067 169012226 77179189 442202295 239241185 458300505 390998706 810564620 626998459 391054767 488424439 361230027 350299765 316144119 740212796 886510685 739246850 559669385 76904050 281469284 732919388 236253444 874106384 708187668 443944609 557969784 524658408 764506848 261526624 470919511 984110212 973534994 721971160 774275091 38108660 558539639 505409049 890482802 555760088 193959473 979542316 309507439 44433765 584175895 710436284 699343342 198810028 657890601 420866131 202239931 567796740 128080201 174166913 694974327 694306892 760552664 634779590 288017405 869118129 254072651 327796350 942297744 959355473 997733340 587088214 947400723 436629431 867643795 957460426 436614937 499676598 903624432 304576574 616726157 940780609 206376712 140085633 508187870 83008967 957483610 335370259 131265071 680759996 116454250 50070878 988537318 575244041 83853666 234269848 887401862 914181187 988386102 864940842 33950325 322885283 911179175 396755676 614712747 141219766 266847747 922482342 601076445 270749877 464394852 985091442 428654228 81558437 54410621 383270744 947403171 176961726 787705697 704773063 753636146 387318952 738600483 150643397 485747875 879468536 97515742 681507657 648423190 175804166 408951595 863816057 670821492 885099631 940443013 499724363 419801278 76390948 14384959 627611626 847930377 865066870 779991784 599223282 53293930 874739879 842463964 433870633 679936300 699023218 356627758 189781234 679696956 496400252 357631209 192480043 456271393 575741918 967933563 173571622 91145618 959208321 344629890 668577140 370585298 618630532 697130705 685719206 606635528 180841700 389433651 911414651 186510577 186095111 385251824 33431645 814777063 265440416 77756442 207357393 616632886 324800003 703968032 80555253 252955070 822250939 253569285 102045352 772685901 791962559 916866013 257938473 545481661 261590549 63822554 215866846 109384416 426576051 76595959 841566554 417729619 177397620 998765525 773927205 339636075 193546599 360549880 34835686 437566492 209791044 315749568 34882615 656858647 683259055 836377258 812654265 577497804 55853930 228758407 608273697 904044130 962668725 651829568 209759150 134751498 767078222 951897592 638976098 19528615 787508722 826516900 106027402 291188726 65439729 19481345 473491269 484941418 858597418 955017818 818903249 490942284 748776511 434015453 145578795 788918972 587659435 765204246 259039828 22639601 574699190 88760647 569322663 544271182 743160718 121383534 118230537 75478804 337737596 945438282 50505696 893401180 23425208 898670700 101239244 18108512 570837118 609571992 255896312 283057183 525642827 856260114 507290675 746294918 609569777 929384088 143260911 682569875 864890291 558692363 963607717 882093347 405031756 223816674 491381529 625513635 364436638 946302399 381934874 35693810 306023220 542938088 503731397 557878331 32757179 104488656 655167235 743277786 663142062 170605605 713531318 662440731 58343152 454594410 287869923 858671107 795041694 250720549 618707408 604256570 48383947 245414291 630123812 89286036 574749979 193494453 820188570 961867203 195087170 369723581 808104115 537750133 722538880 302177957 897665284 962928657 801833000 218723011 172609235 120703005 661959322 373455864 937602591 503645327 812633113 981609614 416479001 426362047 787465337 413430891 598798084 922223566 652042600 881997396 372398759 836966859 11538217 465954716 960510861 970757645 611624846 970612140 567649713 693771395 275211748 701615671 3238251 703601085 306476686 192051308 183437494 627419547 274052175 707924165 518642922 673551140 316051762 759581937 233337870 195578102 164793636 283317545 862147742 411188979 508971029 128614146 694850537 102969261 893630931 999115321 849558900 691996881 643275798 423839076 29730255 325414478 793297300 744383710 131723062 360723119 500578396 619501067 754398480 980008238 545086704 795934808 462561421 502489693 904199509 366405442 721341796 531100118 912090726 232353199 70888110 166140987 931389170 661087328 123051990 32052610 714504023 941160002 183078148 576610519 524647633 377942747 31881424 136316710 915895553 368213835 695159168 760182922 50528826 749815748 934675555 944827095 39661289 883709695 513124568 261684391 909355811 274814410 706283966 899456967 823861963 925511495 256599988 743818646 852727853 78506964 248695416 18701335 108832882 888990209 111599553 619484997 200351623 768633321 490213567 36941056 376337363 877782037 835934448 816182204 801995722 460071070 443108125 522280777 800437684 360303983 307011752 504311887 4278067 245810664 342501352 540721783 211781279 718936543 226053632 739147974 386179017 559620201 499665356 574395440 407994990 771217861 537704478 394658287 746872042 817194548 713259336 570178783 31144957 475610457 595471360 623544689 516548690 448347734 816233674 340701284 736609082 582604752 559233734 459670729 94650705 720502036 792657561 714631093 519208442 568911512 904785990 791512942 139989770 920704727 520676982 771313709 536409956 974416589 758197248 849294114 671975888 597869180 421127240 84263150 775410283 410333023 42518070 40212075 125440140 641319880 296497571 405120666 523003083 334275410 329908991 271141062 162278743 587687596 421163074 907286202 96732280 485783318 307608965 976646011 128822141 522947621 939889514 396381527 382315051 22134590 81350362 280070213 659303081 113714205 603299152 187542533 487370356 798020699 79700151 467128465 91198285 526036563 28093610 18432878 553883187 477030089 744511451 563962190 939876868 831935792 371788477 137554818 645246887 651645376 253720412 217668220 648303833 965433234 577718272 235569135 741206286 109583701 833786841 312751616 245660892 681988444 930572076 2021026 388071333 973342993 151938674 350339917 682438677 427071514 555232698 656794355 623094489 537280150 957290913 64465140 16885564 197163575 368391405 365611079 972067314 89556672 184940402 781895670 909407135 210432284 783073546 616820160 860568822 725242266 816014690 541889077 582010215 138699169 106457077 665597334 853635235 10927776 918473722 638714368 946751491 827367840 906369653 793048672 778864164 190032304 426285800 224465240 903222964 143607281 726127529 392637188 455721298 52218371 489844030 573561938 923779034 682708692 466814829 650753936 511521877 262702488 113842272 143421404 287406494 455814570 601428234 588253183 224395085 634536815 731219050 698509454 895090966 535613936 68765780 889415721 495050067 871934053 669581246 396849288 658568420 237286122 126421374 319314995 62200230 752183015 77887171 794474184 695418991 816497367 643823145 187792055 307744822 859038274 626264415 850876888 95632709 862471144 590334862 237747175 2096641 906342574 200952667 453223209 631586466 596925882 678153140 64296205 875925344 630671104 630945156 494386339 640200931 680885496 679728327 112452318 239959785 300685630 491505445 955688299 184850200 558384723 231681849 786410360 511023186 555567146 197674833 975711913 496762328 909247155 115617938 239479554 882353672 680115332 447180853 334954906 466913533 472993031 959005524 292928815 591848580 103138560 414899371 392273141 392622382 312004355 847197322 566300289 571130919 477224193 205964669 23980570 500845940 807826852 66815377 972165647 746022836 274841470 556668787 520698692 864401585 23024378 211470459 614323703 456393595 528462755 962055061 392386903 740478293 774983286 362000068 676657840 789622723 681404624 351372080 539175706 435248990 110605469 119871044 847977640 187660797 728292570 236647270 324276778 934612383 758548695 419834565 322723103 664201170 192420015 943791376 555259954 854458417 706485388 674816045 215686853 840879119 957013272 602626131 229490151 488385192 590724663 14843338 74426466 133426893 160060232 298246324 807745591 720352781 757637365 106494686 549196599 705383856 135417222 607464335 756374949 551634962 74857642 856055760 295226572 521328060 759531020 510405748 412303209 250661755 834719090 353254651 649840256 95525521 465706342 658672038 531087726 977974291 287425546 31079541 106813475 651494275 892057283 647404496 878265421 842374060 351257033 523438411 865762631 852097251 307893781 650904758 596800323 953220216 646202919 879491064 938530922 171359497 719979124 196094665 795771001 322215782 405994817 61189017 535621235 55999084 456825291 981241600 348910843 624000277 752861954 581126593 437129525 268417356 564886917 120453231 720827680 440295380 353487956 505728355 259673661 674518438 359187237 513680672 965863152 119600058 914721220 529582276 976988955 138037196 546451328 143591734 104166348 2848022 17844965 587099752 45148194 556485921 942353742 962767314 918903132 568722521 640232057 394498159 545749318 331781259 554402372 161230015 652161545 40485550 922522247 87795806 922837577 825515535 967067209 908663319 595751440 243659770 70080106 608113234 24101726 143722215 985104083 735036827 2928037 730058105 233567843 394972917 990214743 423198923 232580833 797369673 68208 282878587 504541955 61757216 735526663 576095277 644343130 399647181 243280601 191035153 110869552 558501960 665288075 537668913 380316639 159418901 904600054 323474900 126268339 447521722 331416274 383267100 982400816 914681048 696587805 280194810 769322026 632307798 496719337 207970959 224396912 763493108 215030281 335237938 927988071 656161840 899658106 791122786 849423429 130250380 599669745 881786338 493640012 236319915 113008517 231287317 283532929 770260569 11598955 602526095 787569263 750028885 826770012 141055946 592380863 936355306 567407962 253504060 194941635 709457532 260553175 18395354 142133100 257935155 745541777 245171217 109767210 349215535 125963115 964263389 407173789 976655456 41161574 116294792 932418637 154831267 754800736 410723193 784349798 158308467 827815156 912776046 881617446 927742796 954834235 22558561 590007807 976046388 750361763 427178983 152502798 909082250 212385064 559142077 107027435 578855443 580794284 730276183 492019596 13818591 785130621 689958928 231814560 233035191 431769263 745832471 939491173 75665317 568156483 451873998 85519457 30445157 470719075 319939874 290557534 405595464 320333724 437626911 505485303 117548179 373838201 13070221 974121695 4282316 817346492 750533906 158912784 503096139 552301054 342424195 768125760 955923608 468865370 809703155 75238974 983321425 397642759 619949310 992816940 982837362 696088311 333331780 472879203 613361404 643979269 355652586 253886976 114223875 121872637 222335927 504517044 997512652 433702411 965333276 996539774 41636058 653792328 704566054 465307330 601152010 660528060 902778613 141486373 270257640 9883922 128103010 612260595 960378899 923103372 637526036 387041877 492876651 513816534 138498584 720742032 30554196 400199700 412767501 192269284 501961679 259789032 258089494 499074544 220000668 502198913 839075488 200873591 554373057 211027375 54476564 5251594 804474978 885706238 811738364 689108129 576806527 878067225 211173394 32891401 201023442 361840171 983957925 50214478 58322387 62606832 314066471 87233750 920786103 222197409 277358958 645726443 638083338 443594676 421916448 516538961 608142968 709138671 799101595 129326216 921158376 10597513 727763877 591416786 246012524 893027885 733334484 681196696 163030566 349834354 950133887 344743583 437803216 309412935 825519661 433260461 465201199 664346282 671806301 80751383 132330209 908150695 423115134 158343658 695871719 199865896 370130274 73499731 840675025 2660248 892211754 622812114 515323372 280091384 404897713 350716655 726032623 567038298 716488112 50664031 43570470 913037916 671371519 481594201 410975141 235651952 556545730 809686447 220587671 583537624 303023133 422636962 44244167 299119071 419828208 338552849 604622776 297253772 605031448 64274492 974916323 584487640 8404648 217903041 959900011 74063107 458758110 819120772 927733129 842012818 218637599 908110668 841218401 245379437 192624589 789783680 884653884 544678586 695740895 389318046 186166689 858667455 912631088 965201670 51839709 596467708 322279934 193604601 500336162 83409774 735384624 774426036 286637904 487228904 232577317 545876442 506688366 152298565 126574254 271842735 468526393 517589573 585113368 594069597 358221916 904986939 406073364 12291249 433921061 871369459 135715894 656126664 42893690 300987203 759311033 478856101 348566460 548926951 279328264 280696862 182743401 522011229 50691197 369882319 606539573 335891493 768366539 785327964 492721397 429021117 825927994 202647096 871733775 816194504 366184184 504775831 563711661 546866027 314039050 284193114 683867035 360593595 639536880 659933914 465954591 155730106 981382159 113999359 226990426 173291745 102064445 504198293 171814656 615220229 335882707 53885387 167231525 264183040 567865938 564933276 416738763 8967596 571971154 141008391 592179411 591939688 478181124 679179433 629754639 392964691 728029486 599237277 646998810 730463996 23164387 774692431 742824452 420131859 160635742 997466480 336746923 512343350 270830645 843286465 450077244 80594046 591997045 344952389 50488767 40033974 245467569 927310437 452477715 414251167 512450672 158680007 45163971 339235327 804875367 324559587 731085840 612042458 654801550 481079975 617298249 534735813 410412882 859386144 228797247 703354030 976588743 782613619 269611087 857576866 581138950 397785273 253749361 767678861 266630699 734639042 1780129 356430580 627201764 617339645 960591059 228457462 529810274 349731168 517072124 805774642 948760604 302988007 880428443 326010916 765967697 538971392 707404590 971239826 340631999 200205001 752640778 224955313 887181640 346186322 434657949 793664759 74380264 890202078 594745753 914360313 413029438 127196496 701668702 182103243 261979853 534832129 310528009 479681903 333407440 233603896 535842905 20906306 336838904 670620003 492499306 167543654 77534092 974938845 348992357 776557838 627955135 34345338 278152159 662103698 951305378 261277031 423380406 816332953 962984832 409556041 975921690 212304720 862886821 46048760 357244134 274612190 36857035 979736877 577681829 471711768 545967017 266963981 853553824 12585908 505199709 407166401 821476282 697710937 927174392 442155768 888094283 231872851 648884960 31084497 375786096 269003705 659367819 412496959 426720152 487727672 8634634 250452907 914489928 373545935 505436926 267614449 481395860 339191427 677721696 144894623 968296065 490912068 977365399 677118478 956360641 848816641 490979754 72002484 152791219 390392489 884258872 415178770 652443690 777155015 34780285 582226905 540986070 667489657 326761651 460405576 866414184 145588791 79786622 502009191 405371720 973041556 572625086 408296274 386508776 944624088 72353832 967676671 135503325 197369142 770460793 44984296 116816522 511597561 558727800 983147379 11239312 206965461 67769288 570701509 806450278 69506366 511228052 441128796 607984242 366424475 827524296 475645132 47339042 316143970 530466141 806668014 810481110 960322397 959796262 373196491 598839602 343780159 193381910 13940496 118816134 46942442 972161797 789933226 633466119 246666471 855983038 150355438 523550501 276572879 296549900 991121069 109985279 661608931 780873282 278792296 843751760 424055840 886298797 577513667 436210875 47834027 391269543 789634123 923495812 242263940 258187680 291383434 167609329 534216370 547948040 721379573 892357079 549239669 895586333 978768378 804627263 764235651 751284253 434840919 401638642 142250107 48807576 772533564 27585650 128949827 898920283 811450006 264890683 766846746 424622569 353006765 206454120 935653511 756244197 740254846 736794778 489992403 907758277 308535803 935915369 225297506 128383313 667313811 565978221 379128691 242827621 883495120 426604664 204784758 608104831 533712478 321248588 36832005 364678911 442345434 696245770 113852850 792670692 122926055 171538872 673540857 205486372 750676125 334851568 135384760 724550657 941239046 868935726 159262285 650184565 962525433 38864367 828356294 212730944 540220012 370878893 256420825 266988856 308760973 463673450 779818437 871870469 678965799 472486134 594241513 863009020 164119649 974665303 476367191 299907405 289305851 89792798 232847679 940898441 438946033 286554818 523390107 423544896 832774845 349800718 410198665 178236884 590622749 999988110 513879436 851519209 351481608 652381314 310492835 736193768 770027077 567442627 72034959 886605495 673791857 247606263 797653594 627012882 664442586 125247408 260800920 740203180 502732704 64567471 783781929 550769592 145458042 437176728 613392029 183911618 628413877 804709532 866850779 473164326 406082681 102375121 908006953 861890198 951514765 387391694 342969742 776547142 801117751 766791683 141222852 128421654 406205423 237391443 946211074 600948174 57383554 705214906 436942748 983747204 240087036 398623921 428177240 180811077 771683639 851987534 660267963 871545129 622287093 768171143 31116245 643572851 667192008 893450316 894164794 312256133 376177494 272920192 125785456 309358755 627893625 315270639 36100109 376486667 392574701 211784710 620740355 831707991 143366712 891987235 524778263 475540938 407550628 297963996 141074885 438622398 241275110 901438975 735984060 630426179 30438006 233567119 690393904 543612098 845762553 753693536 719086958 576458988 559595059 99848887 840530017 168094362 999868870 75238200 334194751 855984841 580906462 455227899 45278898 759539976 20740752 484389262 945116483 606935975 504895596 690564818 147904593 759678033 709022023 419257911 700661924 863140919 887412280 787079643 951006545 409328733 825870853 146959674 71145267 689837197 647534772 35567286 999299318 947583592 958043945 71277215 885124186 363325875 110504180 426464916 619656357 1110326 339763795 533632691 300892256 929953712 45792006 652835463 531691122 356704256 841614236 246337060 134272510 653542788 433748416 821480792 182404040 310516707 15065753 897722797 65744261 614050681 278095996 486369073 423508439 192327341 763360354 144573240 106389125 16225322 277886322 179167821 116413051 52822433 777938335 177851677 211100037 986654916 943888583 928465827 190961812 446963159 45755344 470395965 63017625 215634324 254376326 446721348 783727010 21780332 769453545 783706813 708579009 891015102 48510769 693997798 835196595 878918794 116965638 198815251 906122566 315596522 659220925 500117528 520491305 669850971 774482089 927657570 701280709 790541469 709330194 560093689 290840067 610032937 93379296 559488801 348696062 487471242 252074218 520075262 977406250 881211720 51666691 384233095 304015182 369964744 899985870 319915293 721510551 264063994 939126594 800674610 841510398 504578786 940409911 88799501 253863477 987742099 552439281 637809692 407557093 444394613 509981453 554819269 56908592 445363485 576731575 822704031 163476888 610526298 763151728 402624268 313582384 710804787 510884311 194148140 873883861 691095561 434157397 432227990 405777864 864920750 675375411 362841047 337574224 588436212 765876104 563030970 201362587 623668597 722617312 611541245 910950581 130949813 325535928 693362533 826758722 366803951 313048234 513377041 923241226 190781929 222314293 261316488 49026055 434760243 436599988 84599361 169834139 923401361 404017227 506196622 42508574 183136312 158921318 462338126 627557159 59184537 216997067 520123060 538936812 360045096 518461202 818755730 320751244 287023753 977055 230742357 112781249 273703671 129682877 202940619 488054106 30714727 679923785 470255442 312114686 903174957 372718932 55898500 233863252 890564486 362223524 755165137 689090464 582806582 784691613 637217498 820131506 610362159 581768309 40357695 563299792 835523143 553544200 868069948 447789640 27369523 816407784 985224350 197696051 135342062 452756299 660331546 774432368 500711015 62951288 863995478 806011369 580782930 168048434 226323907 756794760 764121281 922109563 902050436 155457903 512325092 76436865 248532901 213703320 295497531 382303651 13877067 430926943 144575777 862561379 829252175 452870961 273798691 787452913 670873868 575281737 368892846 503637443 207269002 119884307 262234518 935443930 100028057 691612284 203678621 894583904 822958479 113771779 26342509 781308488 339986818 667645909 784883955 598998542 277799381 425686742 408424621 658923126 544666761 799250572 363111803 620464367 837797345 758261760 622088691 351616482 83258918 511419484 707525055 520779390 417926617 382428387 766054583 97856136 588208029 475076136 75910241 914899858 549188496 389754812 549318592 726325424 993613907 714927694 467010316 322639910 566177909 292833036 909136335 700122575 6697909 349493714 550398163 642499282 578421196 562252621 926270494 328926532 456791740 438543733 511803710 699813866 194453491 517710386 342892940 156846037 781997278 840414516 486503278 339698245 381580890 505616454 522649516 277195320 280031200 308570037 799324006 822796738 379639439 896330695 470666442 401737010 680831574 883971924 929167105 297848685 424176851 908136334 485130112 360844980 999636405 968308724 34546026 817771987 453193860 835058076 279285180 551275232 769323308 439255772 802429047 483063929 361319049 726283969 14153997 929416054 138291457 5094881 534587224 815378021 470533891 137632554 395792420 982078307 707779050 885068045 296464999 766700651 87555148 776099623 243998869 609532297 164527748 459942352 437944192 258300364 526219633 968064666 651786595 98938810 942608606 374250749 747389991 48169388 296789211 138030883 569620064 645121095 367759036 246436784 350094865 883025932 53405086 107349404 576468326 595118174 298059571 626850043 33081366 222720488 113601418 416194472 802131893 926712947 584412732 366756176 291248125 199267871 449776083 390387593 278011474 234819267 432719091 750961290 906025557 189316685 402860245 695432658 779615817 17474118 867966391 836601628 43838613 589536449 984539887 662152198 406668910 455373859 55554798 588425820 774460690 500950500 901072708 380315135 551935016 621580790 29193094 789206540 335233304 427771476 553600079 88072286 11761640 394455606 739696637 665007105 282477186 883369644 873387737 883016925 338378582 507309152 341063718 446432116 926934910 69890201 427863592 805350299 263229894 209692395 28886366 346140496 137419867 525600938 685044130 527179442 178955545 501216404 250162926 546059138 60841121 271309759 307445569 337283029 907848649 490416890 225081145 43355431 687877243 405270760 392467301 432025406 366457517 59417353 766215524 318062781 687552043 501975399 846761808 818427487 728271799 455420325 771824182 748871880 389005090 605386476 981771139 36547931 956613975 242042758 343541401 674197415 158318070 666635894 69448741 338155109 652965530 302798389 449887104 251509634 624954536 930420889 237163001 3290424 588922927 138193475 989031848 744151696 630768978 415636203 338560934 999674440 879098280 902257851 570458189 92128872 375115042 436595114 625271818 58288457 431941427 631389589 767978438 235021352 531745777 519851217 549477272 793546188 36322514 5264722 498214308 44714220 920555570 597835677 524786651 316509876 399515874 844813650 402876199 293695087 99354315 386668638 480586423 530156144 663525924 415258493 892043113 39650785 525139186 133339604 232958192 694014373 213821928 772680697 727719217 737655808 881581108 565270078 327267780 635500029 688226901 436588187 586073444 115940290 696020156 277963721 446207802 42447988 260800730 577180850 859174775 960079916 514227077 80405390 543122032 736855832 174812954 873548176 694460169 537278334 136183629 415664433 229849873 550955650 412993328 329248892 476042235 714642902 990190056 899150689 909860157 338347747 570165053 740057316 464838775 689893760 602503892 272423958 840832583 396524213 710132892 391494870 556482181 990781182 79025552 816083587 144382961 549771958 400772990 147421398 646826388 922291216 168442970 738668203 259264159 957862149 978286216 702810301 502038931 75985446 77621422 703533411 111815296 941286969 467932124 189918267 585696062 270098178 552064025 837171216 114975544 721977429 218185520 703872488 210521833 887166277 773319695 13501584 520288559 790044775 278261891 681224791 581147842 444434642 450145017 574630270 994933787 3497737 600823768 873535468 189622042 52501496 844674887 165814531 837663848 11140129 13635498 197074425 432489493 602951770 656407568 484043143 116923170 903772345 157838392 928915808 500789898 980363666 12169878 890506501 847593652 411012528 125697999 619405398 611453673 686895635 872355502 273044908 240253088 414678493 752949597 582472399 486919560 854726255 819918142 156472615 516822218 361284985 729958358 10008736 104057381 144080286 173559822 9220265 133098875 17435969 518623996 733418495 88568349 584060837 716002980 571930568 770690105 298843148 533154096 818832527 860930642 374258072 557164981 985313685 320397607 131821465 115793638 995966011 745758009 99105552 622578548 279584780 42386510 776198115 313165793 543787329 140473316 309106995 671989340 949110217 542513155 329053026 477946589 875098696 617232737 912322837 78693641 534652822 942493542 133586845 781118939 438949148 385561489 922420697 840157824 88253909 520863083 41191100 860694728 217020806 602922253 896534279 422078344 656305665 853232943 629780747 791717266 281155852 403066695 244737443 594664454 695238434 520349430 826205313 486373712 788855104 734331960 471612584 481482859 194488988 917724965 428529690 657664965 267884894 149830470 236379996 65565334 277202739 971553309 983087214 730987636 156386177 930123187 343496323 330044939 428151035 307762488 964372962 528961572 771993373 620347390 987172626 245327115 975467876 749521244 353460299 296728211 763330594 826403040 46143585 665163301 600785328 306853661 424586963 523931038 345009403 554690408 628066002 537768384 423714693 331148220 603330160 457786922 148602409 794394734 695848651 636786913 40673024 593651631 828326823 299716521 126309550 812100368 886050953 930598289 107144753 196377191 922681302 573707306 907335878 725206952 12528863 273532357 826508048 533852628 33789443 53586859 123693551 815634878 335301565 936879615 995529083 732674995 866491356 861962309 488218138 829122752 954767170 941993669 543498779 344982631 554908590 67478814 549088762 280786408 418655582 194276521 255739311 934224133 958128892 228104882 44190584 167340386 49524486 841184793 919643685 285821834 27223074 971605456 945234312 609190200 268557502 51255308 12737175 131839584 478037055 128195651 465879314 531435650 314925633 127338470 835584120 826117605 848239269 923457810 547442301 32331859 142852650 312230989 657675250 580087657 247214539 924932045 665603878 27697934 985266344 276626388 972928103 700973470 64877560 844782365 424724365 360964374 153997387 217653044 282957257 648407671 584678235 350327353 120440275 210185034 577536470 367244490 842711979 170511959 794016450 784519159 742035973 484683720 92404977 209789616 850326244 183407371 7860776 757756173 200908705 884279028 913855022 641831623 825457569 302026101 118522303 477190355 165777995 261508723 141066399 542565637 228958840 683662701 501370863 948887453 689612575 167530226 999257055 555574162 711550549 450948150 961921167 308435057 856010670 673806518 518874783 850869277 101013087 517764557 53651225 636572416 929198834 728369648 773437728 504551737 422670499 967738542 192395367 985764781 3657522 861222870 911644684 330768549 534717644 494465030 69709949 513849596 833169649 308804809 481204927 578242151 783923706 223179192 214407562 563212757 723982492 84485370 234929267 831870018 70028979 928728877 927971351 69679347 237769094 138102460 136313161 418437653 541769603 526732233 557873754 254013157 329837990 466361936 440199009 299429852 417051102 22084924 965438347 336668414 143238971 396723663 895495100 2618290 682883204 927603572 663191346 680169290 214727484 469247559 622348869 675935392 264423818 513518168 724716206 522331892 943780561 702270636 423616475 758742671 36712396 674470916 272322118 600385169 11350619 570845585 736889943 674360368 583611686 462816835 546619778 240005657 16356960 257966543 893951025 174700023 42991150 112886988 370648400 339497768 714613468 965499151 702672816 45506955 145139266 626001779 93432699 860393589 929096078 731346666 480696162 288426070 297869440 261592837 734748278 910539182 215481336 604369067 402390952 67054849 256490132 654960017 38456859 920245908 945333763 875884225 484281059 946032030 906478450 148551921 424679138 181992963 897497246 758550190 578067838 181015582 789652655 389554134 159593487 992388011 877802971 75794064 494812774 192054370 582269592 207339651 400568386 647090419 967038946 645305429 450453176 864606273 625768475 284277208 861719841 925094046 256100160 318336575 400565779 478974409 128362293 515613875 149995693 630769306 684587824 199265900 233364072 709874068 543827543 981087725 494551926 628366252 366594822 444972126 735204734 447265944 909692495 549757968 998469739 35025677 364589455 326514264 781427835 76166445 533148779 802571104 574677368 467442049 858785181 358534579 192925804 130755390 18594549 363077193 296154554 19738108 823550974 913746543 732620760 518912869 366796161 122450891 904881767 249850458 508326894 379718655 867805728 43738804 863258042 756963301 98021618 283787861 266023774 605899911 914903778 735758885 988950291 674428950 537443886 20255934 705714262 33436048 290885507 395969149 160452492 960396929 450143407 403313236 902924564 171824810 89385774 372895895 651176746 349113375 86387326 907639919 603100317 1279778 844130030 171323994 185873147 396868427 671974064 450476900 912190751 529464055 261134889 800574244 49458887 971709906 858766772 743164989 612774083 61980648 577696809 132483281 116223574 943789600 819153842 388037745 297143472 552197563 497226206 429893366 982440819 72674278 174609060 435006084 786510662 71027706 330623631 347325185 417333283 778330308 332724200 183304795 125521405 283268638 127539158 568830387 2480109 275432742 746994344 386235123 240018963 379229742 951814346 167242258 990849937 280615524 98194134 33815218 263165353 838617638 292109745 217014079 721304575 795979061 808879630 515719113 251731730 568778382 89638944 508964304 951334627 151694657 496373948 933500107 341739900 559723772 204145953 915021040 164498598 88582872 140679313 536216156 640238626 599449176 893263217 878484783 404315806 45640644 270568691 556082182 386027732 775492984 436227828 577060776 515474195 45757117 1777042 560039393 131824674 212151656 464157927 813398314 51589611 663701465 258460290 263728077 252084684 848451991 852582092 850135626 812459717 251303630 380810579 653673205 959640616 424947614 155788308 853037045 226583774 875919238 708928376 391878035 394720558 231969356 800117542 782541733 334651059 907082379 525634600 115344237 983761738 399476409 694297644 164000579 178549802 451107050 301304778 60524884 919097461 611363428 249115667 556470635 270702073 51426526 411968842 783646876 352644749 707262076 824677964 341377498 548852814 146976973 659004869 473634082 679266224 24059612 768877 605770358 23517163 789791873 330982854 456914760 170232728 532642010 994789798 34172218 550577256 116008036 211539802 273274600 972262953 531570897 538311593 200184378 503868472 598145447 941431279 659808350 187490220 24094381 485692385 107225522 407004427 411836775 154189820 955532888 871659715 767560253 58547811 248218160 327512982 723702352 640593501 127627159 338610647 180849156 336356047 129653880 138967950 924301719 301564006 148124288 58340101 843662538 253782443 263262025 442994060 566008598 245356253 709736158 343472514 335928200 861393266 762083124 649149551 636131335 1088921 160644453 310042318 613582305 679273085 144253999 442677760 826605477 177438099 457162099 318616144 228034591 366661470 153506417 231551493 806876315 968294044 15261384 986443399 791945053 943521800 314136443 390967953 55290048 889201130 911759399 555858113 13344831 681100688 88560841 630081154 296412240 611130021 246165282 221695659 523493049 69731248 193691096 254973661 314743789 204289421 51113018 760199873 150275762 89721949 397062282 523994893 960589150 507742949 440676884 78154412 502388703 6399892 602369897 100577286 952129144 843186916 409416387 882715737 997024892 370362422 33034152 680873385 195402520 104467040 406085178 473764448 930247071 450356803 209056287 768911044 120231073 160061610 461981250 323207576 794041526 92228909 22348227 903610869 741332428 523642454 358704956 734873129 225586603 7665689 331998009 576381983 794612381 784794231 637873717 25760168 130972541 337672036 993725471 448959552 212433768 617682291 708269530 427950338 701806557 582594927 338143655 265484015 199818374 495363964 610270005 523168365 653253964 602294723 262610288 366189697 80387848 573829021 10852537 253872151 255627263 524583376 109464309 190470911 148441280 514315695 142020186 891080670 35123510 661701359 693198424 366549246 659514612 80386639 172726110 982917201 523567290 280286004 519588005 999305318 346567706 450230860 610798460 878214158 703157611 845760217 404378282 262527133 27678901 686485747 319631699 436386899 208361015 593132756 784883133 69423833 914607020 714534831 580490012 939052377 99353877 502735758 292083485 775879419 724202338 596769503 955116335 649442769 588255302 341189533 742480746 343237793 956439006 85383338 81808523 346511511 854274182 810553669 584838757 1726137 116183542 805500496 268645423 461842773 967902348 876931273 709431589 63055415 967087112 859320583 136830507 13312143 380498032 400376763 889032638 428942951 379228880 424834849 63024166 496111147 611213408 310748912 433291273 655885109 428571700 556323440 103077243 290528983 728831954 55535047 496562016 691426261 741658778 46121452 606348070 656566052 470807716 717465442 238998046 589387690 325806145 507827610 2358098 235002914 947834028 759910561 86030009 906191285 697241546 295986553 861720794 487096855 262587154 454738341 57170909 628923503 753589610 953125440 589518579 164000496 416912167 825265084 314964527 917463007 523232715 532774150 126139668 389368918 797340666 597180891 433269361 462920783 541662915 710090171 121835074 321921902 923937782 373666129 33323853 588663330 873782188 568450830 860775819 42569414 231045481 737222869 394823667 323231976 154571392 50760782 123818601 410707179 474313817 521275870 333928467 12061025 546045229 895560620 10072271 513096466 868040847 56661763 194202933 226903197 804474466 817902014 54872872 832100406 243946751 128799867 927267742 329725159 816313863 527802469 139247670 5563152 905580998 817244696 760212440 217427091 881411441 544930292 9970762 110795760 163713747 606163048 954641546 889371605 508938047 335099514 848878666 515043435 776068914 523265296 385573193 909978526 209151334 913428747 967062645 392341934 698368477 799379401 796481347 647233197 840074659 647490919 987477679 933121852 305575543 948022498 694554869 475417067 35521217 19222110 920467655 679154384 471893070 37788579 182819000 143432889 738079037 49128091 851676572 606933536 656075399 380294466 589292544 436846740 12536758 603875044 601991207 650321258 337277824 318984009 139741872 762444125 462602360 514578789 495064037 139183751 433114405 91518106 800464221 866958869 799646407 205429139 477958788 292462477 743833222 459238855 708417399 599374557 391059734 899964244 950527264 707626703 957921539 938911987 930609413 894347529 419420844 167955445 92421768 696449123 783140751 538146886 520159878 27657076 577525912 411376569 376986491 54393659 820338953 86247057 309626956 137830099 548408063 791484239 96181376 766963909 799966378 794763152 665578026 170623162 851506484 76190516 893702424 343044612 129601405 949726621 573944936 206117128 701629857 952671157 721479635 653739207 152490940 411254330 233928335 39155850 652441396 364201122 86004933 539675227 131771855 116982856 401163441 864941382 37173997 198451815 421163444 819405471 828960448 137784020 714773177 450490791 272171633 810677279 120442628 592898960 828731158 872679145 716578628 326131909 511975219 444912784 457150419 640855101 23600753 715098524 864647735 620580928 380104351 151165768 338571176 894339488 437633760 476901306 550750692 905615769 806824269 975028964 985387112 169942156 525671000 377271406 610894464 212919215 184886074 163891558 703685519 262536509 21446185 882710790 666076818 742127056 21381710 698586125 80641027 727222405 230277973 875067403 815817370 29999473 662470777 553110666 809714650 104370533 975662649 392993980 628053065 45944820 870190387 686058966 26542191 745279892 597831479 575521907 997980169 812138252 48581439 843577476 460079284 952043697 138075443 717185736 968170886 736267980 650348708 713689541 789069206 102208113 49501519 862315212 819972300 856996689 654230689 779069622 540914418 892862391 638113764 457262263 709487620 967104459 510441397 805618683 446671237 670970372 928492429 696856799 422379467 300154903 783967152 343022074 430876119 207334689 84997778 967318009 660832394 995293622 288813699 682668521 750842440 358053626 690397450 219500575 733699389 514987178 144775464 773334763 153859793 39518169 892901123 236070378 906215315 123964396 782583963 600429735 316529184 778222348 356321555 874205520 243034683 709134636 703138284 965478547 238167231 730877048 424705272 859956120 567031710 623774745 772827760 844001359 936147542 959342305 324047467 840044567 860061975 504287941 574201064 934062173 633610141 790468464 685066925 63340618 551689671 508699904 761157231 458677274 427908353 279805459 560308986 726527652 95250182 733371892 8026849 654021559 153844903 517893938 719046703 551247610 528918728 171144475 492028118 77953789 478680737 368266619 109217118 276615868 436605354 175903652 672964158 671030733 122783722 784750850 732161074 804169386 840381680 993081823 17627683 799771177 456237575 937892303 59453443 401481479 266752555 459210136 922237876 370876951 695608891 63083663 668157999 40591546 608774725 153455372 981531303 481023248 647980546 128908351 411900373 981451620 781555903 344115386 810494976 410845758 117079708 806057544 334822518 13243111 385384718 440216762 11682746 681519603 279217528 968684347 796473968 660463052 861056990 637121735 357822751 694834296 884803227 204832998 119260003 608948272 379885790 875677515 587081774 218662154 338352130 438048332 618060492 372163895 487214095 692814754 986529241 807827114 792347953 128161019 426884413 672643272 116360749 651204210 485300328 330383022 984848894 804100747 711967068 581897051 384024427 161407541 846789971 706230330 184804977 639585568 456850276 212862239 43538152 820294948 516725993 34087789 422241223 842124462 987824815 801525008 722944956 575991631 315003328 361558185 135191789 932146325 128133178 852703853 29829213 777171291 794970387 327394022 390480690 418714710 329957948 436268475 475491104 67544607 900638387 7309401 516163812 949803402 395946456 81122713 797493113 152846908 194488636 64884278 491170929 89988924 382713446 912718125 778144964 936066330 27227335 569895892 137073287 317336769 751458665 52658596 616959298 139184596 599579107 967726346 868958940 649622825 772381101 448765794 807325398 863293972 951860749 692006239 203513274 350975436 604176525 563361398 403842015 832198428 190343124 288756770 898085819 628456602 770927425 786441593 937208532 947125215 318210658 317415182 887842932 828737453 838293783 817133769 330138184 892652207 794304962 545448401 340698936 301552957 944005470 212610 38768767 325979871 114776109 720314287 632681667 566591966 432909127 705875034 128610843 402186880 312072956 794256719 311637678 490440680 726923697 763438154 988830353 699175866 614070057 458295295 21682662 224088906 472696589 899926778 290303987 802587413 992709143 982060400 83474665 937452810 65693920 837057894 155606337 524752843 994371350 508288161 875938577 443371928 882494743 826492786 172718785 343165856 837024843 816603307 284069437 965130306 809582748 932451246 57944620 900861506 765004990 501820707 544834532 877580070 550152883 534580332 732474359 682157998 244904970 579664788 173357060 769421136 989174459 89499879 388253118 494195279 685030728 761278698 476243321 797297656 603096543 369319035 711294548 243862361 822823446 221460830 747228583 643742919 450931326 551601093 462346665 535623039 446639314 510513074 552919914 699877761 681815946 184269987 199033048 448519514 221751306 355932327 170959989 372516461 81277711 330344305 567246523 336327119 784655960 862977949 755165386 561192350 525242527 707880869 911100356 665940129 204892919 586931565 294056789 480562608 320109875 990867909 754406920 944007911 398944815 79624270 800308510 215605243 952976447 484518827 903127302 337173831 155878095 509256728 827535839 55193386 195829406 690716209 166420785 584085113 539069977 970328073 415304308 1607766 601924535 499750527 157005762 887914002 587343973 540736571 88236037 749705802 462078816 653193545 368021928 191688899 845560239 407090109 116866884 936926172 305716608 991991282 920782478 925891960 920372994 485487466 642777852 505068324 798946095 343927362 932621031 903720518 542329634 306232906 985031019 760734471 176596182 867890386 344780941 852052991 525595225 656687267 643410033 746166453 385127859 930768093 205899286 505501086 669987271 7148369 792560045 56413854 588177727 40043566 36952825 15397406 500591443 81549023 638963928 758792571 244650320 483636893 338529941 567951907 97119854 184004298 104893434 605149279 1617976 754676849 123829699 765895143 795276575 413236217 254886223 552002678 53669229 255350766 28974061 946448040 92640904 581285400 80248923 549738070 652313982 463836914 558208795 317440602 483421329 209690765 260672710 852918713 32723744 942202610 454275751 731802168 122692709 346969466 842570519 551470841 453073839 663116994 654775422 148993630 172441907 212497626 281864810 302882374 978329947 629100849 362070430 468380160 906469686 957089993 968049613 656769209 197419427 936973706 4751768 965046744 425863919 493781751 39678686 953221398 583231924 632427939 103397630 373787190 5571097 682627320 567199013 134347222 37630457 624362141 79303363 592983172 577665516 247201393 510066493 397694347 286800093 123197073 725438929 854542483 487267467 217040010 732640539 209798160 499704004 742383995 528503967 857256185 377915374 801712924 413476655 745603101 324083613 77992271 23207262 179726947 424420957 172698147 892726680 225660960 822039111 693722479 95447841 559708971 934330825 941592490 429657149 992604041 120820129 690363440 946140007 526412398 677468948 760773803 232250386 12153292 514372380 325386793 44041991 48431872 358366510 501755700 121925143 936967298 795536636 871737365 955224562 966622553 414143701 956841718 485848873 846251552 667805633 927609999 351112117 869784709 785500926 842380585 173497654 569262838 871912571 357264956 109034498 832503994 28756708 848361777 617203191 395456151 693739950 284456692 414321456 732404564 740159369 180884692 523260281 23681036 382593620 938813930 335211716 750921623 279284502 690501717 584372742 982791882 320945801 863829500 445573733 17598177 131312537 457023684 621791467 876981427 963004504 147108720 694596640 450208581 646944292 725592207 300113191 555010023 675933377 919681600 246146479 922953141 614287258 397672509 571630010 545432044 276556348 276836824 653880950 615642138 258774179 873429884 797905544 513162098 857252742 843376991 125428792 789818380 680266195 76432429 272891187 533982920 991052592 556558762 294899078 653029556 479799256 545197092 334344101 468424197 868168340 441351086 282616446 576050992 60105991 721870775 826289907 92495460 76869004 402764374 404446372 75593909 388894928 310114767 521645701 331934777 636922144 696938621 190782570 287388678 947901764 821215456 542650257 570509181 9874959 764184292 705444494 981383262 497888365 330369677 732697062 509803357 61986519 485178710 324161880 500132509 593090187 762449879 543702594 84403961 764257581 739564702 774897789 82558458 132869649 611644252 510786842 873340965 692070534 588859536 775059221 609384387 583975037 595649630 309171448 601780956 602544217 896959157 237621484 906031519 285596332 534909032 299690877 394731228 150405606 226196631 152395103 435656225 582944357 638856873 39255370 230388507 511297005 630799464 45661981 81240002 476683819 645618789 468416825 271585652 548013061 323744388 957952875 702952920 145494328 207272186 204535261 723061134 850905322 350122192 792551695 153670834 815178560 565278926 568911908 78254146 338118689 424089705 375520039 94328065 704707390 314047745 487005613 225316813 295669192 791055937 937085822 945425034 325545207 323130791 794699126 202339185 249679515 440996374 260859211 682866422 12508754 360656954 624571246 889404526 424295134 387997152 705860693 189378311 695851171 151002611 956485767 155303298 979518933 775531726 234062405 277355361 200831622 639684914 170518792 424960500 440915323 229599434 688565748 476111315 793024392 935110419 752065264 222626029 493660457 709789536 678395865 972465810 316545493 686282763 957631045 392672185 501817314 349437552 922543432 896819932 169387757 301478374 711608301 983655494 746275857 660331694 9902318 775416864 99406060 498099971 831644679 456471438 381547125 498633039 995717149 41643850 472238214 342971449 249717266 325558377 2617682 591700943 876354906 2617381 599958210 65675264 839737629 85374165 419342262 903741711 847643126 514049022 300803083 310446700 738186351 372571881 761568083 800363457 464053614 417774473 8462306 845595101 922155012 317205002 723494644 203248 618566154 310371179 318715079 111543684 952345928 857169820 865988895 454358760 27078041 513913000 997951231 786695994 185330441 749475999 920124958 702891913 837010557 940150116 241332898 416661234 229943658 769022578 140582088 287506039 363973432 512158886 197024349 197811741 451317067 740483957 838363228 717067941 518923836 585592531 102400822 369468546 500531153 125402659 915419462 635937115 262087256 972809183 237433315 768939347 856957564 345032601 759611475 494551008 773592316 365863134 661912241 799635314 333835327 799383292 971300715 655542141 471495982 887805819 594001501 990269508 557205784 160745114 313748064 272635833 286962423 403511324 912385576 414104502 988371220 720469636 238191519 989340269 907802298 283854084 693813846 652137891 397400966 795209401 82267810 888672558 318893494 149580143 63387198 668619561 128714303 547170332 821280563 246103127 592179265 337128641 433363899 326028003 662080015 959622571 542243217 639855195 18178163 464627149 818835116 750082501 439300240 214910560 970852872 224618399 25211212 156689164 837052673 277089225 514003599 380766932 391656109 634239488 169713134 723395320 410737221 926358053 780258958 712422126 606212469 428431735 89205486 112038582 729890806 926535490 261812235 23635121 464719017 980128629 798218583 373774510 295991253 470453971 842689065 3578115 51112741 455464425 790927361 527029270 638697438 989068230 102794576 301200624 567685861 834636732 91721655 48610721 198472876 658955128 480622456 300735558 751404679 329655876 907925821 104499127 296683222 789161816 139494987 944780463 45466932 237460732 304123560 833368109 78813355 721457136 787384949 942816342 126531481 91746201 523887093 235220402 986265620 797608773 560868543 650946084 457644457 944286784 434638133 768398737 530845887 842932810 639479121 445708300 152101825 883874346 916501442 881273594 190115171 72136705 225719322 852702522 690531885 259246567 377734784 860911577 486979886 299945669 939736023 292109581 717327419 645755613 276790902 514753022 594266948 563489554 760829376 296602731 847065976 258297532 351666190 960020007 242943304 544356105 915175855 941280395 461994326 179125428 215254434 15439051 453297917 506947498 657069296 774592826 233184745 700328158 115047868 840060964 519088568 763246205 731725876 156689460 692119656 776493622 710743103 637520468 200311115 285465629 553012347 437641109 996992479 585852909 388142397 34901003 320589132 355771821 327247728 607290269 196531168 58686010 181459185 162532546 972725268 388557753 656282631 714884332 763101031 40289508 353561423 43839405 570501986 306618260 343660345 944107291 87392462 463518713 99551214 531798425 26240881 296423448 354278244 826038116 2943301 617374958 182897647 852293313 722761961 188063436 757491458 126605060 803686289 60752257 941239428 951538897 902864796 331586343 195298403 904427401 994384330 441085743 467770000 750004359 768485449 34791938 23775014 231553498 646045779 741454917 927160282 942699399 960218975 577313602 61005605 979600261 898388 585778730 935084755 381612967 316346424 134707466 425446080 516075718 222574306 602078736 256552300 214852596 791827725 560304036 711912992 25047286 835201875 583931994 731371119 246196631 264723107 691349857 764132704 706486101 322802011 835762503 440039215 625783925 291619998 892415352 236046475 246363080 159997399 762731480 80678210 466564582 242990494 451136806 772969122 646192654 284631609 437174324 795732117 716428728 619381382 8456650 297901766 853934933 523457655 166368473 109211670 19381217 230560895 109729713 335457697 536042435 979199618 644723045 629656885 249106754 674697287 322976512 198447287 909222253 807217868 559868373 108328052 298426627 306343907 946555333 329083907 181022418 21019027 228981832 802222510 611152336 220811929 727183962 585185614 448130257 608702637 551228844 187288902 22174508 992965724 422143170 511537401 769887073 675463715 212393660 736260090 813015338 203659087 358056136 587083793 436440651 732868131 253838470 988095858 317481410 564884925 324138965 612845474 765325732 932449895 693965808 235562820 532073813 662534371 544423310 8114154 950091298 872083616 6600746 778522855 478043424 453879373 672106159 960998576 638943049 920407341 53463544 793472908 419913990 127490541 230138861 3139825 196597445 194326311 23859585 510174501 303738525 811707559 343764408 205578614 270753799 68305459 138730571 700585005 810620178 274539439 536790720 405138038 77656378 914549477 918982720 958749333 539099428 39547770 103034984 17121322 810011700 226738512 267723711 532219352 278333563 66968692 367889091 835858020 928164989 307191782 9486488 393605911 883233070 401851200 836723811 563432938 759402043 913442889 546752021 698941325 155019540 990477809 418422095 462980951 893806990 624343748 42777424 133299170 825098249 730898396 661240553 825143957 174330615 875822162 984248819 934845573 503396619 770391401 103788054 484660637 218569838 643745821 269676904 691806618 406384552 586526039 950042850 454409855 864877143 100029122 830512178 280529898 667228621 637926833 115108409 598410739 753655721 750551073 44025172 858496676 901211312 915795211 494359709 154876320 700081238 360330571 462644129 657349647 995284896 52319465 573690467 100528992 318736782 178028120 560581602 338531389 262166315 392891131 589834601 549573998 750622025 298655146 342699425 760780837 847559223 54758972 606863831 198563441 702461633 731464007 841058900 281275336 130278542 880547668 576488066 194538918 58201253 510998510 191103933 269497763 103721739 562680271 57711282 466413414 631070182 415865665 446966745 846780397 257552990 899845875 731337352 792933581 646351101 77375378 198695508 28704301 513259248 314006326 944652812 833833553 373588010 22080581 212512154 407366067 553255225 369926197 481996955 55122705 70335343 265600652 716375324 272050452 939333797 869294152 445704405 557422676 428253591 23328733 293199621 582878672 811933735 192910335 887574158 619841372 244722986 225177557 180525566 314099077 631993674 727980023 776933729 876620192 225940569 902398187 646624198 923911128 850015786 847954133 359929675 874469619 149527020 833152916 863095222 101988239 718147539 280748351 46953546 442106774 935295987 724150223 979768349 917841991 522693534 526655989 709421305 48208564 796929408 705201540 840642192 121062634 390049590 157537470 774593789 276285209 502862601 689436082 434292277 323450200 287063885 625097547 210445940 949169603 953736008 542600165 610626862 508116101 853653243 466829954 529373084 551018325 648547251 684954764 119888557 978592711 521401336 134070983 515582233 946405472 990030594 164353979 884844544 153405268 447902140 356850657 680704660 962326449 151078683 382920084 229224388 697813322 844249564 296027060 81905250 235405943 902277401 373042144 980115522 917503295 312866724 190902981 21654325 673496363 291391839 654079726 517414982 468851302 101922749 424816137 56780611 605845734 668213741 743455074 221584025 103361172 209243712 320128434 683129980 885388808 435743790 978532758 758981452 922751547 935832841 45498022 592012400 292038162 460534301 117982749 838832734 342532948 955772539 476401996 505711294 655391689 838207359 23334205 183424898 985660046 878425930 933952009 526562339 191639216 657459257 47233606 520993371 763850642 338078819 31221051 149825945 882869933 402183454 78472181 445637310 811203526 429698267 646659326 689718536 849087409 930174404 422846782 99109611 835224074 614463397 255246009 813295116 85333746 534916423 168306586 838919957 861938127 743414356 333200233 335981544 50465570 539212749 280957542 798224503 469084246 106003432 894175302 129112771 23133308 61677929 450770440 754233640 468056050 348961880 114853224 929169953 659752917 573742036 274843041 296068767 598306923 636079450 249973490 976831436 478001707 325341049 581121104 988695863 341409536 451201724 54698842 91776580 151782068 16349151 602924495 885850949 450895560 325571272 504646634 616853183 217045413 752434107 227925022 279016532 22222502 555149882 145575699 3616345 209116106 895852944 126550011 288679175 698728376 930611445 680133169 126325739 450068354 821032174 200134935 233000949 383669206 366145438 228666537 671270996 852859595 555829226 247938824 59195523 171966792 274792788 458188274 448809703 237207935 626070827 14689049 77701455 950567303 843756324 574863580 190063006 671449196 112325854 644182946 865875714 119408211 342285062 112243468 911799616 799376387 816010055 861288967 814611913 726190002 44437208 330687804 782241762 579548398 962086402 917583399 736352684 463475183 377861269 680200274 344123248 708648434 236954775 233806194 205786820 29288330 256665990 67167696 871504180 697767502 750947010 588790582 424636098 257802065 238205112 651354024 760986046 172135813 472030853 271577377 850674484 627081385 783496354 889225330 316661655 717358907 56299898 914367489 269219256 745041021 722531492 854448902 910069828 529457509 678489761 257760082 184836552 135008752 754834586 816122402 324405135 489219775 872236226 741723807 664419611 133042705 399230535 70104490 821443698 700893885 6521958 887465896 563197525 921219481 666176031 635612552 916120233 871288043 769152762 577651199 392567271 155651157 548521633 169209721 570858326 915016286 25773639 59117352 832938788 59882038 64765699 952008616 591669570 335119415 998390983 891672391 494278546 942242621 272495615 103582001 934984936 492174588 305970923 772348450 467587488 435506320 639490295 127249552 388374969 622739357 340547160 664008574 62779077 860668025 808029860 711658808 802808272 754811724 560323622 120719096 20549507 939654288 289053565 380588333 944715012 964105828 978970331 483680481 446884015 872097066 136747167 871525742 999518970 845927800 400334651 595467826 651662806 681107639 62255821 657969690 185294471 345037427 327121692 259591223 355945976 905934374 397939992 986751885 281813406 445430417 115007761 924686953 33120243 798511566 359714840 581243776 531204607 868396386 775166015 81822472 517472337 489069117 661410748 865012217 85416989 943542113 849472363 5377346 947198947 461510341 830486697 58218453 708582596 925088094 269198009 156561163 934336864 239090278 774182187 452368479 128931609 902056505 512311238 691684195 418754432 114374714 826698084 480362761 475677674 482398869 3318256 964756817 786695859 754642098 839820871 761056001 503858593 562795111 576295151 614879528 283278669 790622574 138868022 373373440 46278964 390041405 719664842 33541682 769669685 957061950 726304280 7364777 723782296 918943623 181847739 962111241 83626636 111135688 999489810 947424524 241198394 18898990 715444214 971225680 922765890 959822878 795260585 693803708 36827255 876836217 154587828 333158202 660054308 225013232 433470018 761437774 117415327 438920587 956801518 2749036 167629408 650114985 602105493 182290625 918428129 865485333 595220036 357239529 561526020 404360813 317715648 333176341 623647333 546432280 600872729 449409210 637155364 148153652 761833673 541716857 685010511 532234983 671509638 802725438 827507535 565133141 729189433 10477661 65008333 214263163 454430355 739172432 353628363 511538728 768706696 368055841 274884631 239439538 31245551 623530933 596811219 325097372 574640252 903630870 148302402 952936704 915960264 852986387 571835331 87950623 420732779 937550180 258957084 824655968 817709232 662451801 931419401 685626543 421241291 730018078 453438137 864653970 80341414 37969481 537065562 413736665 187479090 643930762 129365721 734436250 390007860 43803168 137699628 187035918 667805897 424836346 224996465 946226909 47940007 423526941 271553994 654399849 230735405 476132661 448870937 905044959 90950568 462523894 317990771 215102059 756924348 310621985 584440951 298913047 11682494 834299294 805385038 601494545 762223985 892077090 552822119 540756026 959725298 823372125 225678337 424233096 736778539 151837690 263849991 500256517 453328487 168827964 628618611 124904847 79736691 123154618 175417839 920253350 90423302 13245300 668257764 894781929 385279152 53194164 498945106 156906015 119596130 686310522 759794989 625629664 125829601 287829831 12293495 338386018 178597573 343794360 106286967 897578122 985026008 683684736 231061398 867865957 973220659 971087762 324088351 947316409 324344467 988335253 718030554 766592224 97182409 368448553 969272378 38056177 885947363 928782330 979765943 402094303 468529953 292381270 638220753 21286447 736604012 398163005 773686453 811461843 31971449 759717395 314704346 44291710 300856931 170967148 171042673 587601703 378762482 564318508 965041845 332244472 967389446 837330428 388029540 955497728 569838312 279937646 8724900 29444537 114632863 787871719 267623489 122243608 110127657 477484113 4782723 120380915 667202121 671782570 151596404 238646911 969776726 292045253 758166456 551010681 996759736 109802629 742774606 481060807 88673941 405596889 226520074 80880047 207377797 801355306 342385703 343590317 325232417 684058009 696365163 431868451 665519239 200196777 248276940 787615946 15720501 97565637 466973048 208317304 734356402 978575087 47517631 728156191 590421220 349528764 564735528 275849000 610489991 823152706 50594355 809054128 923545047 757845115 711227939 457296089 933920809 588507768 477174736 278779546 888212747 909037842 128127458 662383581 653926947 97360704 400415912 693393964 248376952 599066681 472819524 633958450 74971734 281780009 510258974 588093103 116652933 940632690 966512195 544248697 72621063 548564588 423208203 424621582 596755038 567377327 877381963 387221677 638305950 901331160 45529241 972251973 608293735 352189849 232025441 69838160 829562733 223207806 828492639 178784017 226878689 910861449 316472541 858026832 176749530 113576549 817139081 157656492 351456840 495641171 373550957 309914901 327325365 172720145 972178647 777471565 761204191 8343999 234820208 526648737 49678603 554848457 112598504 4995995 879085590 910541554 404892822 284438226 726548959 687174646 897033146 146111242 361872866 954531981 876255887 279812626 336068931 327230595 485004104 445492551 675959083 603001862 13170490 466024014 513388440 390135778 943636882 112734463 278203423 360500096 928969449 190607351 4099664 624999764 227071189 254008411 491070446 188282474 434074474 605752540 854144762 922747531 654973530 195263116 194714557 576867578 66987702 891388336 914707473 683311505 621276692 601084501 356398320 440327809 669479893 655461763 400030008 651324985 804503510 71764880 965058941 4734495 743476582 785783190 931237475 317957907 864383378 987949429 54390293 780656095 699401103 819692179 716447706 193083839 325581947 779437449 172291042 816603597 332195529 280249377 662513018 62915453 903207029 764290934 279816846 776834454 892346470 386204426 708300060 157899344 348455881 706609159 471167563 431133447 781418142 854946349 233271353 612608842 570796053 88764075 444961723 966888889 931879416 64948117 850023347 388533015 888525388 331607859 605721390 333816901 991236865 455857327 320795068 129273122 522867499 536084828 641799708 117933288 654744554 255728040 878087693 91140466 407628452 632173227 833433116 60671471 997901782 607216515 913585886 347383542 19992495 597609466 267335113 774401476 243540810 13867759 2084610 255533217 45200908 376219965 786846691 680071285 300671513 895443837 737239709 525462226 77837744 82160710 338042376 331031316 549650457 622100633 810148279 820463721 757248500 506829554 271377411 336904061 394519041 231570600 440911626 147241331 702194805 984637071 6528390 22225118 546122673 940535597 353255980 366666754 382946143 711210748 75699374 174482699 154598524 869466150 982261220 417823784 97838245 800857304 388134677 127759230 990360279 211194824 476576744 87182161 859203671 814418267 77722401 585510026 754496999 348843474 736269613 3842234 495470379 551160727 504343452 127792238 276583185 928122367 738710538 565007672 896837813 88401355 77798963 753173083 285741886 343957535 133622103 908362056 402742696 812752508 495364746 737732744 967590343 249831607 465979685 690078113 509875225 840906612 293293032 593149884 421937722 243944746 697553475 498994396 489245577 328737375 603848846 294870809 770066328 851429026 479909993 993140000 461958315 847421029 181713835 956232721 861058889 46240710 414197272 443733618 404742575 748786051 823742142 652579418 170150701 611879090 766155244 196941964 772450560 917377104 194510182 584962362 690246688 479151904 962926448 501725732 229636066 849104343 243890526 712043072 244121888 316082557 995413104 261079453 274703340 543681871 472184671 336582570 823995713 968671207 822410159 227470043 413196059 658268703 842108548 612381396 676405849 342153326 896757773 584376311 693202851 479525409 49957850 481323428 545364750 609475379 909733600 315328669 562345851 707557450 303749157 816726723 40126041 742986132 518776013 969435013 919485611 26221052 829095724 173657139 439272473 92781395 12654260 636392291 611745524 868670824 111053986 335493899 719280587 44078666 440831609 432625516 232400095 207674166 543624389 128254202 4265466 982744272 968144270 321037263 430068786 265665729 101888521 227616678 940004030 627083890 935972090 516439552 923243314 175146417 348575449 753659734 53223485 554079564 592663019 895661023 606529467 158152971 86273481 895790550 871356381 377437681 170845338 145476979 68481484 86862201 550241162 214376234 433200309 889139988 287606447 478873815 539283429 56321586 706935828 655185571 246841264 222761978 91519177 212168668 436182308 927360413 9849607 70513655 81643480 746044929 430905077 291897258 894985154 221925539 928385461 306725376 625889256 270492309 649067198 790043424 398890645 8721747 610631954 520433018 364160143 71439231 434371528 615011157 726490297 582676339 75949721 395319103 480589599 505300896 23510482 468448689 224311439 422365168 285194561 864219675 994419348 790571224 381524233 25566434 733022130 666905396 890617357 424394258 822479490 44948066 57647381 429711225 473296059 870772616 124110852 836665389 623580998 459989226 589702132 702309638 225306301 772935177 799847356 699161705 108635440 584977274 154023341 104932720 638363135 950442101 879863808 60399776 252503124 116658292 48123609 484724576 133418254 356120574 94281467 5109743 360122071 336265882 982238874 792377407 21730216 666391855 660316223 70802932 118234007 374195426 270001328 720895414 162527116 831195171 883946335 181436018 293141815 621189011 73525174 369713056 897545382 751367999 489944572 812562399 986543558 8744062 164103690 226857982 844155717 881649602 657842415 903411889 530433475 352549237 135154342 879569270 653964463 334374577 79682799 615548554 501021868 169062875 929421719 178431650 996298006 715855510 164604831 442335407 453292554 664552144 705479596 110901576 341900434 669599387 614009217 11307610 44172588 375659939 769721784 173669960 813718299 893780403 589358397 334885058 620798356 253890605 672517958 10016180 328987824 119862872 117573089 997702342 36250111 990154282 514034982 359110593 132821306 649587364 801369315 583602559 949293439 835091532 257320288 516777406 717276940 449801511 460514113 756374060 184742469 5116577 63051280 41162060 100002017 246698361 504654787 788234274 528893016 932452034 182146142 390334373 120723167 620330082 170643060 468954759 491408728 130053255 79817534 805220073 924028885 129254406 221592023 545371745 125507011 607801788 735964964 163522484 935459706 983453566 337800814 175849927 571157007 214782656 67565519 864146478 100967483 959196273 94853243 876513773 359001736 598961925 47479372 628311638 24643807 240962760 987317897 944111319 346966490 957596171 194983724 847256824 852289324 104247459 613366274 993639457 597402001 16110694 5827487 335371131 571971155 152536458 650385373 658161610 555630736 347306366 51922722 491514723 472298354 780750005 129066740 972583132 342494229 826610342 725885457 270460290 163457761 857489445 606785866 35212289 825516788 432370448 540138250 969603233 651854247 173316897 544179088 534993773 933902230 844325445 575771919 137334072 174922986 934423525 128474162 42246364 176926495 942662747 824457845 599567472 456040952 603257904 606596385 291502834 806548063 756022839 490016119 52346547 212955556 388154847 235347946 444959934 247667465 285869753 927604189 867181470 594316006 375223492 178203468 257315523 542283655 873154790 178670653 34443506 859661710 476829591 28055660 324174049 603834097 889063252 772103786 901308781 856769814 327478638 707901467 258088077 338638343 987361585 368199921 486864307 522533502 116708271 126621058 184250151 966293100 577326473 870150312 994221951 578511231 695294194 493476453 415182299 898294819 533391197 539774747 552301005 167024034 946397873 602744484 907726716 675428411 524540677 735706165 19037995 151932517 547412469 794292271 275211942 261504658 534000608 114262935 636732635 847794011 622432955 575371985 835943165 804919000 213361607 233816678 140428754 797892309 928311274 355134775 844513464 35289104 159077772 514757054 905461146 415418852 856361785 412097478 445943523 24262518 141718938 961450316 985019611 810447814 49961706 145369910 913592039 486205154 400547553 376676699 272539110 795529986 111055627 212752156 147676570 162420028 793877252 478443482 745734909 868419245 236171974 714808568 952948360 68960684 232404873 513355445 418575869 335872170 795606854 938530332 971606837 204296431 643001868 986297049 888509988 988641545 70501484 842623020 471883069 913086642 508188632 866887950 831188312 32844253 824499983 125334389 270286698 701798012 941967373 789091904 376894051 339977258 867946103 395409382 886536369 83469246 258326140 798096380 464948873 170226141 928265162 655329699 533719777 36868007 902990143 933995615 466433678 961953209 313478300 785519000 523091741 211829643 615783761 260774660 124415804 504709736 752875468 861791802 97274345 203536956 911038116 769749288 628597430 118038966 579578386 952845849 504580215 326360511 200321493 121027743 419647230 18827505 167599427 551496657 721165516 284165379 783594749 893641609 580399957 820077242 431327205 292644739 692744532 68539452 116875396 688106219 815282251 161278872 112613389 799513514 958684957 757301857 203898954 278013929 603768850 301020174 262225800 746646772 192581295 738880031 757329234 155560027 141774258 833859052 847633372 213956951 974447326 810701540 410393683 804242424 449337287 531933912 820523507 410573042 733115183 766395705 308358082 328528579 572137601 874825746 183674681 766826806 684446884 177326231 681832556 363286746 704327800 382820769 506947089 813771223 79311678 248503065 350925718 109174528 728412669 664510059 424553769 597999227 6242837 748261274 729588044 419925936 759746885 23821382 84778806 606870961 791533174 375909264 604260887 997092018 540731003 26800317 638785364 956342129 883027032 949822704 382346960 69844942 837538318 37144438 341156722 612835325 814023992 42101946 156239450 982088592 194914049 961002350 10015159 803510169 588686502 815542175 823302087 871190412 246238267 270309269 240702956 20312711 272630858 918864373 867065798 629129323 542275186 601033220 953431196 797535812 734158752 747988656 797802625 787185418 386101097 805269964 54035038 924452057 789414001 44942494 798800150 454914659 345211308 420110540 890703748 319162989 40840932 948032942 433131958 877684643 247553346 5383435 405935949 88411078 795059902 257909940 111756826 508727596 968660513 410215151 588441465 594128723 804833293 225631196 280557479 124212997 399614540 554330940 87982689 940641188 75734314 660729920 280280402 680969914 177069155 827639221 717990555 849502547 376177179 753156264 163923189 46911071 914004065 848252010 120802502 258369580 425045274 954916230 257684999 85612016 899157036 975435743 780619884 437304675 931826164 899910160 96136070 87203301 223801192 589348559 181049336 589603006 281371595 790359921 637873230 119844523 916880689 431526864 189540824 834503541 668264979 161198915 602197186 106951571 708795253 621438533 229807968 307648154 952970710 21542994 742529319 430262499 227407744 560918778 35016034 932898002 313569680 471431595 132742227 762155704 541905832 732529355 339132596 22261040 589960126 296625580 281989928 216577589 219329431 815556345 15835250 416686543 643341905 263822584 897251710 954458734 778316946 711077112 162577786 848564734 284234898 390424965 477364711 649811383 573116403 240197397 543015007 376925843 601175335 142284063 743680295 105147015 154473508 262997530 154816763 923696952 629301668 576765376 267644484 863039153 340648783 730625050 795752714 197831237 398912060 519162462 533176104 587346405 627489817 737432642 508526614 934681396 311594575 302199211 463503802 797921120 195947422 835034774 311427273 289161402 982937075 460868941 237474393 355030213 747276395 320493459 232368579 345419281 168767419 689131033 105424964 831381260 89201532 392744514 4097947 256885952 199895819 216364676 411756662 367534648 954197440 564633659 818989492 358353289 920260166 272169004 826517170 587751891 515122260 405114851 86376155 868348510 227134717 489259433 600263493 403077960 274541549 196561403 500517082 32567504 752816321 930329349 216502147 782099360 356591700 345727772 573981956 387481291 668917868 663387473 998950542 110477251 614386645 90686872 450448952 839789644 440533039 504428378 851653172 910144431 703040917 865315220 387946072 464913681 863522034 993797927 520794750 257972995 416297326 662837632 671415860 570098930 666696399 303431643 642646192 159386102 435789230 653812669 712630472 552400777 197302168 900641690 896354662 993580564 587944204 605745330 214334200 7014491 282753592 38850133 933817765 40002669 466300140 935723250 294983223 265321898 274663099 756125550 789427663 629789512 181861692 518159367 107008634 640996778 899361077 699868607 438664728 478146958 596219495 348640764 334831956 480978729 217401961 903625149 552897783 797155599 694373043 635903993 67161246 653082946 530075173 421070823 433402991 869775294 138918253 334572362 265134709 285337019 117140706 186676151 70828578 274553648 618872409 244896791 139867414 841998881 525751270 934061243 275626133 657843266 607052112 932891563 510505871 762430075 213952642 548583375 400051145 930890469 850083340 997926484 383630835 215235235 794675149 384431040 759134288 237198401 123138010 664180184 989680063 752058308 651679994 656451349 784080848 186013395 233317165 991253487 154550926 715551699 477765415 779620815 83687436 788445556 855763581 66776130 433393325 250123569 613380466 583194815 677495384 624099719 148944608 567504585 47826814 179270014 599868174 252543733 296557794 440715925 156442353 565267317 552282700 546135471 255381819 721925812 612421274 557378887 289526468 914602310 225428672 968348849 920164983 826068916 299164980 636732359 496894634 725377467 935732618 837470339 130919652 386926852 382912878 58396297 60328742 761086538 188116738 315210060 397589173 255901023 804343043 944334654 802343323 713670326 191813176 242408052 968913684 377489960 290984987 679251107 44774090 893037800 36825399 349287820 125148564 196004497 755361235 196552036 662370713 482368587 618885764 330531370 197875455 63853084 84351225 917536521 710508901 41913930 816600545 787392335 193998250 281848476 942130802 101178968 819284300 718529511 484822159 17302236 465092952 94486515 672262968 383535028 663739785 463740815 587109210 700052985 205241456 612937115 548005959 131320004 58178318 91025948 44115084 736113573 400460422 499186351 725037855 362409314 50564824 269396860 104772094 697284067 488327804 862683889 240319765 960396243 585949148 873211522 676807723 359848987 696901871 963999034 313329887 879403289 168251883 627370653 759795577 591752372 799617378 914757691 41690611 21450473 199068575 107194391 177081132 512941999 518384214 977182327 840280213 300429188 262114999 533413214 952886645 386530375 778853819 418540597 988697146 105388121 147283656 294897889 434642635 907324809 309253031 366967123 112886601 112598476 694881797 240185241 890060623 281485542 416052365 461902007 451007119 518352293 999346454 463022058 619707116 243255618 28452660 50627000 103228771 23327225 2741181 43175248 100291198 731292459 639664770 62419609 630249842 633439545 119680689 113503523 443756845 988538724 91397497 461779585 906700824 187692975 632275219 503756922 429006177 227370174 580146969 628597489 221865461 892507775 138658668 624478320 509064534 174567359 725846959 255113595 866656380 373374377 733041279 211179726 970970887 895908514 764569820 179831229 297735122 568416803 674701987 270500531 361017821 856357980 473211183 405242386 511269930 318063594 5621661 499508336 896785698 943353133 62859708 98809776 399480620 800953658 561185533 766887347 861170408 668146385 989605072 386679102 95151087 228315074 29106973 390341432 739298386 376164212 93855090 696312885 228550414 762996034 288229593 627028093 290062816 809267564 774570757 590919021 201194640 734217282 484822053 247666747 544770385 997352462 425169201 871539712 364979359 644350110 475173046 989752944 477721964 256251022 291036122 926044070 298237910 105369927 941155851 222114992 883983768 154392857 381747608 215316420 444068999 567312276 732125116 321113968 159357379 790176705 540200102 161138182 799557439 404331211 397560175 149224494 54368321 756433509 231775496 330507304 836474730 989671855 680490701 727536601 14578130 889424802 840132720 906131085 520309251 725199248 372251513 827003195 737587798 403889136 676073195 441414727 858903465 958725203 627077025 551276873 441236918 914710941 371424089 90273258 190369920 595028502 55162832 497082724 590906263 993852255 262491477 837444677 869374707 652760930 413020196 990765396 802737179 462760458 628718413 150289379 632442094 621744277 365826076 224440347 322874871 859207036 34946642 885424001 104672690 719023190 858311770 649001484 271367568 882225431 88142416 980936551 766215211 794524254 193582096 476792408 840983832 324217968 626470331 458220801 145395151 560083609 25927140 321126789 39537191 77314882 326040803 129991831 285247719 329154203 285302725 906544977 780182473 148381589 88157359 757908780 155691744 489752747 405361483 757201830 556076313 26606990 780686154 209428644 783721878 279019645 317556405 533659995 673334508 641440917 23440448 731767467 713973957 222491447 415240199 612532968 71347758 779964390 685223872 490102373 601285380 809963355 665161427 874692195 587876902 327930781 156482167 542535767 611852239 38762845 58008617 680407271 685759331 183001431 374209039 339360816 242431291 296153039 757924730 550985766 573459120 771369896 635751258 751362983 274871305 239033194 615843909 968728465 218481053 34390104 482915421 252648831 57098436 779628113 360735043 612819624 191878602 511295292 436992406 100879667 110994360 738303269 837078339 960558079 958450616 449984241 560659252 138023356 333568241 351819544 409101937 342029730 739837117 843032061 951900512 873812320 883109853 999351653 722881921 239257302 385700171 103784060 370882146 585730248 145306247 901228873 297890844 226310488 726484556 534663151 173954299 526689543 798156521 624635708 241901799 544041447 398206491 96666918 252828780 821479966 839622662 207327413 626974026 293941329 374970839 242726569 872311038 644624977 970597160 316610828 590748191 403784956 666212564 690115909 931075027 648776539 371542817 636565931 887059128 38942977 575816274 220523902 867728620 621257090 141229795 507777880 59716905 336515292 219515197 139231964 270648369 35041243 888012668 374145052 654681411 54173246 938128252 716603192 747309806 573659528 344384915 438243864 973312421 884196318 598859448 105799105 247113593 593612027 238304566 908617693 48167276 388304980 807693396 952822414 46595274 656972699 679824831 559308522 822691919 259774323 745949750 624181527 771124663 439535197 631933487 453343016 355651284 231780179 160069015 621962276 909816663 870769589 799953411 285018747 242208464 626775058 916607546 436830728 991883329 522729095 756860999 813571867 642843676 253489349 790327539 503441498 396813182 443220189 486064804 20163713 901391269 649384162 829535263 89829032 508569281 79836137 614361688 454178143 227076981 817138404 872523114 237690374 704684243 589735504 118240744 684087262 9027228 199485010 999234703 533653226 651438567 36929723 814151877 609096977 664771248 452822315 774505785 853676116 37136718 432737649 830786693 492192513 370796414 366886408 680353621 637512861 784734317 51994783 347889082 394876867 134797824 125663709 127802164 2454517 971789325 340925791 142208271 830581203 203060959 274413905 105358305 557425643 912101385 390650122 357974857 582755949 405032665 444020278 542011344 530314614 322200773 124246203 502786053 690877073 944584674 853938005 966780532 771140882 597785166 644557897 502112018 212133817 109678854 152269840 2694586 102921972 186606057 169250883 825883187 215676210 208826539 259153893 427104326 586312241 37963790 931102998 277166273 903143040 370346556 367797501 827766929 639441523 349731689 184814259 677262374 344812588 105589744 190660551 439416133 416241471 605133071 582716408 260637620 46539988 607455119 423018451 473928965 839222066 942471340 184305166 927067329 586163439 836222228 842350914 200487187 965980084 273791058 629667425 335247922 340079117 688097992 343060868 115897457 560304200 769569897 565561464 272861886 635393643 462984275 254528603 777622761 827645264 260652193 57365743 401250036 256524228 41799208 416043177 795122879 876741577 684964824 126374626 744786721 818320665 160295581 829498927 656726192 348139227 210325367 635451888 531118715 439757622 405372062 869620109 789490441 379147896 116617955 576853760 23773228 573158410 299420110 486121233 249945951 401084554 406957882 550972238 846597711 795264238 595994342 803945417 257498558 526083703 487272972 236838593 377598598 737842973 100301542 606704195 807251386 376112258 791855285 729992652 645755233 333247710 375019970 839349397 957526463 988726509 313252813 670497850 196445460 665958655 349306579 727951636 755201229 347388032 573602243 908690303 1709291 951355019 124275252 896319355 48854225 773810865 307722208 851252694 182444184 395233839 659874894 29811658 129820031 650774362 626795356 839290811 59985188 125706145 11784913 729217018 143300067 514227950 492709386 571623761 92285638 286418944 375168177 89813144 378227001 473115281 367417316 845782658 432757402 180253474 681704052 293011741 843984339 849446688 812379680 353516233 489915420 838114598 506741026 581191544 794806757 372331715 408201712 680963715 87283979 738022489 250049135 311729082 763754927 699695861 914286997 906167344 734372974 778037288 405102039 709666388 342781134 506568351 344781695 734541717 949531896 800726125 669301280 894056052 168814250 177145462 523835048 21288319 789482463 616164075 114643454 526604109 976972701 322331087 583724216 983884214 19720412 996864287 225175728 645709611 390082468 776632493 764167956 306585499 695498765 227101628 467070472 619176895 155388671 515800000 472290132 556161726 284689962 238867737 352109128 318293157 114344563 993502722 261231847 441910743 284575338 144511046 750934813 155404744 59647680 487547455 426488938 118312570 487596141 248751741 739006897 366399415 32186506 594086694 794533026 227408046 461086939 166757667 631405786 186817712 345256833 658322072 911324445 122758251 820126384 872942050 867828477 508322420 68920756 308904629 809061184 470330506 154691877 381195813 522877240 757211965 419249262 366934051 416110745 716093640 633642402 167877914 980377907 539150093 363212862 190721639 252366950 145930799 563442965 828577949 53428213 370294216 523200676 782472973 53822920 534278231 884657636 934209400 185589812 417308517 610560573 301784833 346064715 127317310 648600254 630664863 490306999 527521707 712039775 57343105 446608080 509185425 724555797 392557559 508725046 100337285 137915618 427528433 955243382 394129028 529726744 915202441 571706399 645865837 137441822 152026615 32408689 721762111 87517309 267571737 472057517 688541704 123987794 435938729 456565366 613577062 454039601 202185600 111694864 193532908 974078573 849834648 117262876 751269691 200719505 692682958 991018135 731103822 835638811 355164529 552104616 485880334 403815006 577067884 499093345 96968138 817477622 650848692 545910710 430214693 618313987 745127024 988463014 487415461 35704259 131016945 200077630 774650833 775068983 673780550 582886143 765691141 505502514 521840983 414702812 259522603 496194902 29111056 482484751 815810295 961417988 329818926 370418777 553826319 155591443 75838757 315913297 689647768 55545722 738999865 777981020 655096659 198897733 405975691 637627147 1940177 792971438 930051930 831052542 810188411 194831356 834677080 546240984 305625743 410221501 70070429 114151563 411349993 372555719 989724436 802523292 879181878 153098993 549831307 502834964 131090803 91312270 350256853 618362 40718022 33514544 495115116 728298476 963877235 355952905 554392174 409865423 853492638 392090729 132145953 755067784 457628999 985085489 412243352 585462543 506778817 384656772 350908115 439365352 150127222 103975951 709843008 459093884 785376496 942948223 966058543 13862674 600549659 970475537 8710679 531782330 22324750 84471521 751950872 523840116 663101544 159675544 784191260 396165912 448883142 744289126 101429997 288119854 605967683 110154299 425953847 768763937 416043646 699974865 662701350 65135242 502281557 309005515 226042835 765001600 881034850 909920906 610953284 897097916 611079163 463988827 213747905 382742258 936039664 180353661 557627007 599818834 830039865 638820612 928483855 919536322 901129447 166577646 188777022 283083413 66228914 567384195 511459535 596799639 287874592 717392182 591282991 901798238 253389279 625910461 361769914 16500188 256100229 112939504 441250637 618678249 878148870 515310530 408135297 725081082 329575526 843598462 403813336 264575730 746087048 43126887 427415932 549241517 786862652 214525788 522293569 925442174 306485542 853738650 986701914 129724861 379232514 889996837 232121128 11570756 456315172 122872936 989492965 142223004 172558977 987998125 240161960 539611147 133846706 367629550 730183608 934087587 655796686 903041439 801687032 76449224 994006354 906590161 174314636 347185628 332168230 753778361 968065121 751715328 77405267 159148137 114904355 292612063 497611832 142306350 60480120 541368492 242973153 942433124 691027439 585827446 671792539 633406238 329951680 289123956 900983893 930079316 232514 932458647 74502479 800921262 397678255 215445822 85450885 263482236 996048452 374932279 452059081 662248049 715790755 500626850 742727100 281202078 285285065 203291784 968872310 527334447 334318209 49687501 282122853 521533881 228488885 868624797 703136145 355036794 159134649 899850215 108374380 64970143 201049720 991889933 72184616 727799664 759888751 277122820 581055349 783700157 363894363 542467690 314066870 856698379 263146762 652742955 696285756 353111510 95583078 342088237 445576348 820360311 122036830 951949069 983074004 131915536 478938967 629891717 17616265 276026463 864324670 894711691 871758473 307490221 851809858 560980315 523210872 902113595 718494648 801073329 523122112 731982121 321295637 53668373 612612465 304604506 317805119 135649432 905622583 252429144 975355514 185294914 942022729 932862326 738087829 306843726 544512046 119465689 552277896 659849244 597267362 617818038 20322186 173109417 345380866 213521377 817013788 165975606 979008188 849597443 857585507 119132857 804418783 744858603 976492719 84454382 259699091 68647528 293282670 425059502 48535883 283855898 50193740 558673968 595182645 547447437 169808257 630344712 570424777 843920565 928204041 952643704 644668604 27820189 484766177 844268356 340105197 432206865 449113390 751348592 805672650 388459500 712969517 840075027 400800989 225058638 424743910 465794363 264259822 229576953 744789472 41670654 846716577 643488417 465036297 973060631 553815204 714219441 491023366 938052003 39490370 526342074 956344251 775854513 602061222 911591300 165350088 42480761 500673833 230850495 492847946 368020223 681090338 368658593 393650606 381399890 192114630 93288181 169382757 139290783 275918789 743080475 746029588 647005517 849267125 31725598 796514115 518519951 691233009 827768827 186753310 53182124 155737448 534010293 244163108 888213364 816499475 964296365 19723639 302249672 350848272 252828356 810314381 215571179 662696605 654954446 199888118 820025061 572501246 811168893 748669352 925789051 630292363 497019617 773964332 211056900 716107217 869218904 228914217 287799808 435243929 421707921 513069140 510212705 273432698 298938260 537677337 358757197 127627226 6469919 931675525 254968947 323625208 373620973 914190012 140692237 713401067 523565192 315281077 940579372 380295176 566282129 388289684 476548445 17883641 210340732 150676499 711566165 504976308 221304829 260033178 364678284 92646600 187052272 801718039 859724748 27400714 31081569 993391427 346840598 693240324 217260723 974097384 648993276 932718807 730809168 387100064 844175405 831378756 745633217 731660202 673277911 549314015 926889304 356216928 780686765 880947847 749185176 233779164 144717579 813316716 458611826 855390454 724214230 698797055 682057297 804027167 768468101 832233036 403268702 332473252 878201406 854858069 204954255 937698588 997307931 512869252 483802556 418318514 335556039 141115668 942218948 916236181 269964976 796670932 424846382 234962331 122812412 720240582 980317187 308518147 257145300 91737941 981287122 753435555 747897918 794628136 168135399 347130735 381394021 895205440 195922578 220922262 32250916 773099814 524411270 314363533 878577382 276985675 168340398 360156424 293163451 939790203 52192063 166629594 824282221 66864161 844211077 292711615 689400519 373703531 81490638 128903151 179662060 27196855 783116626 599480023 192659481 818334719 304939270 286319668 678190948 634376308 121785555 673709652 641016668 891399884 109733759 594609357 414644119 544290565 411318904 214896076 861052983 346630395 895019476 583200375 355481403 50083919 174892009 705754305 519873838 417613331 680333891 912094539 373244904 448647514 372398867 58332834 224015241 458154524 942298829 624942441 86172262 7153394 564668819 323580260 235535249 25181960 414524047 819934158 719278375 196160809 390425886 133283135 463185623 388046819 904095003 776020448 964964794 923265302 460300135 699952556 193352471 655290272 408126438 914997305 731172156 694737879 530791073 780746924 856558118 851429294 985719658 868172501 190966501 4060981 881584320 613499210 667279322 265670439 21178226 14607881 496563773 892511240 844459993 284414347 228297971 683731172 16341660 275667027 37194740 772383458 709122695 118812660 818863601 236647514 526752509 191224659 781181303 542117345 822800750 46199543 349369052 791251300 501289327 824481247 428027081 987020088 888212429 83024676 237861101 968781504 725402935 607755606 332645896 663195504 488405957 844078880 833892108 674613371 365905528 626145446 723682127 807954888 677174928 317010905 394601419 46633215 58349806 412906580 938093709 389472419 35254666 29329545 699828284 231539008 410152218 34860831 695371973 811607032 152358867 350119078 673714518 556637372 528818195 315740323 561805713 553073450 997124009 485190143 857443556 465783621 892334462 621734274 65180038 559594438 996422860 609065867 435991505 491069289 204924504 757219490 79660194 33533620 326794752 258458949 219344073 668450968 707053900 329466125 100734593 200118665 797238093 315996382 592573349 497954030 998607877 500320978 699940359 354109312 220739990 645365938 707786578 44130078 140080639 443373033 491039320 51297961 498305626 951988485 146760842 141609370 673462174 449550175 720864932 17419367 770862131 604269843 530827794 656124608 367675454 649415137 877368882 505450362 648212035 502277774 27173679 981520672 886375784 662203272 172785954 500943290 418550984 666450940 635837344 423424592 418425034 715029876 281428700 251289918 450604608 789393764 826954393 363738781 700282614 994146371 943435173 995787933 606843027 529210751 444131679 524083419 589288598 999656735 811330534 433104379 353026240 581164322 375048963 29373311 204197311 718403350 459863513 770638054 291193152 449896249 946112628 600076749 652821398 748618976 332306919 490953774 223193549 730756487 658815153 489630443 940208983 429232142 596480316 52839036 573116570 550286658 782572758 772309829 820276198 76359800 449208011 732860372 636601845 489512799 67179851 914963684 420378976 114957387 797592958 180749380 994570755 411239218 202256490 53572250 350623473 815783113 261434421 952287507 372283592 82705458 551001745 809843639 480077324 269410825 282437929 998183089 774156486 617925728 559317005 194549822 84121106 727981225 966871227 101945781 406000976 925226568 939836396 798356147 541421626 764722691 620244159 102910756 871619521 673352598 245043086 260558345 140545333 723985454 869328424 467298509 21016597 66330380 766651673 42458885 404851755 144017317 625004425 135247238 760903852 785452836 184176929 229612616 144229336 459142782 548959995 979600025 558288554 246008849 535376165 391612869 820938679 538834519 776454924 872497363 438551102 561882005 532030438 643316142 171281303 676091329 410723229 221671187 578867717 389190191 554565108 219991505 736778393 572640595 58090425 854425131 712555319 605941199 210756320 334665263 587768683 785551460 272757514 156100595 719963597 828169320 506797597 550604177 486390110 466301023 115442012 982890736 409454017 888480576 515470507 790340559 43102088 56684290 191296812 666688878 883758339 275799081 859992188 70991223 2253429 937118226 741495980 42823341 824639552 295514984 827564447 408562843 710999488 443317114 696415284 582335224 626667839 608965794 698984195 665461684 418434320 741966964 100960150 429704412 223765870 955238580 769961382 9072665 245424447 636268867 375748661 574618145 482979705 122242440 833175381 792470628 405492178 805176981 209173144 900933560 985328691 859074837 823110516 950221539 781062748 439094203 927713847 968179094 753411956 956205424 508313753 191157072 796840660 694802658 991800783 359501424 654046203 108116528 41554692 349921297 175794205 164070300 368317604 179557071 543012262 505704702 316877460 388202830 986533542 217723624 823773073 879722346 10850782 500027852 67583778 561361086 639200023 116185847 510171254 602698369 715437137 715328083 909022830 776252462 816167693 222789369 562603794 269211349 743896893 428362553 718226845 628253188 39633908 539610324 354534657 844310106 53040835 161380540 197245353 25503588 636259286 14125648 869897717 432716152 824504154 883664112 714506309 967442138 224618263 400502228 950188500 635204269 690782178 994484957 741361340 25113166 836573109 7451690 43553975 146216942 599559585 658875679 66632640 229706158 532453070 618586706 672269963 968068435 554721443 621025956 675950439 726768598 394927535 555378998 297287583 448691748 988742586 169408274 110218979 374369091 455174407 584023068 970251495 403825170 313250496 51963215 506063539 73215804 992295152 421648626 701442770 390624421 432386292 969733871 743900832 20556472 20014984 70465215 798495361 311659755 79480040 151269579 278270657 11681372 768798398 82518902 52802195 715601504 303675055 544685044 460922694 994182561 697569135 235345741 91637305 950621315 587002835 230129423 884520698 949388101 437172384 311386140 111675477 107166295 382909402 679328192 428834449 636476111 713001898 78729011 569581251 614938323 612746476 786459951 798824280 315142157 650811350 521917182 279873190 51909759 836595985 714522058 903118433 482452271 241307590 356474371 749020444 658084772 203431192 498575155 160039232 981427990 28423313 414696287 42336931 121028666 64259207 787893855 359304677 635145689 420542371 196023164 49487648 208051330 917384898 511228200 334889819 610429532 39597890 417755190 714049320 416911475 319317547 356383941 40735720 623216531 666496051 155711672 546274685 267654395 940248069 454483363 383194518 376199235 778989670 775923823 937337925 629005286 349861392 847288813 566878547 413664617 96450716 101413103 958685905 36089099 77620359 979252613 784168667 718526757 656039544 748613371 378944814 805807291 23467843 50101100 901374460 948095844 644957672 738860580 963519906 523079175 28670636 740046583 649463428 980851291 703567421 321010689 817751304 769547715 64770826 901484543 758796760 579545377 103730776 496250713 302982938 810614401 813757995 204606002 41850081 171867097 964196104 13806794 934594273 699810308 148956318 40576494 807567019 820777929 941475514 200672192 245813376 96708428 439323486 436031445 445850688 346740200 31617837 148361704 372872639 246820008 701432486 439063349 653947977 508678674 363870620 526427274 360851617 231290006 310108296 525975797 51841417 387212930 444419045 978881272 699507711 348589604 117266746 886568459 481379019 929924400 322669442 293372512 67540983 225853067 389236224 635060617 478487703 620118197 970849283 626720557 679102203 94575044 735305813 72625364 532109034 14889529 317789300 891090393 542873374 598490744 204323404 22430622 5056510 710570510 866561377 713700433 406623130 78639767 925330311 287108738 517204987 772625072 625449055 182320075 77315002 118265029 455770399 815037715 454259231 272764825 803208827 480499246 100487173 913655558 765328070 14196065 44245927 507168045 314825864 698503523 672799888 241014199 617956702 690025612 643846742 632263214 182762515 605003790 457889715 467189543 105342792 499181922 20067584 295439951 623899383 908333487 708442720 750238213 258323657 517134995 987652687 110970550 735903208 435389403 853326919 283835490 692121615 335722343 939674421 999594826 218710614 596370994 432061864 17186109 143246449 617408283 132054363 394439556 631942116 251912902 566107467 971001019 160966774 298064572 713310621 864382345 501443248 115178717 79918457 573277026 840953821 306666960 770802008 24441572 601510482 194655053 563510421 782114525 85396913 239029572 393550888 730126204 567297598 771816402 575479716 779366166 923759279 217042455 604077915 311639806 924095216 86025076 787616475 849474735 132136716 311269274 769034979 267314164 9104430 284280740 483121235 326126000 212795627 125024772 682597187 102898789 112710837 15231694 22395233 294772286 477833730 731511661 694929538 441580731 19655682 807368495 490029699 91348000 106222208 616305948 870556113 132834190 214683309 952055566 257695871 648717337 470180570 932341802 478751129 446226973 204988525 410450196 991011014 419873210 655990717 199173720 526127692 33493109 66758704 964370886 792797024 767010677 915837830 884636266 357317097 115947038 824263769 414195199 7901692 549596939 162013643 75247827 555513982 840020927 532100773 778347396 418506847 398638461 954041572 398070865 548591391 959563218 188379798 673716553 708211879 485162653 672961804 638607392 692214897 176571452 913516604 638417036 453756259 445858041 32735032 381882784 829825389 370320009 178277312 406490115 45919761 834092271 124617101 575388258 287881652 878304233 185971400 80061741 603962527 675601991 978207091 625002701 6405377 983870352 114087777 714996584 69885945 838269804 102401201 668449114 742440460 898789183 24511612 798439670 723520570 677401153 449202821 226666734 658337288 943139849 326237069 18787406 734945951 243386173 292756688 558070688 311735296 417312939 787626439 903975887 658989333 309745378 805295555 916500107 988514858 378095104 206424077 853210990 86332575 65783335 850476265 719138764 592489734 340162798 949282210 966384490 171620743 558305302 600683652 752833347 27179739 807488233 191080822 71817830 609196262 190449813 897358697 554158021 123391401 154160431 725169474 704834837 934894547 248830889 821816171 950116279 217568811 203651624 300023605 141999615 446453058 332016454 567641522 372237240 523926237 645579724 148818450 159729052 217080285 194612634 514334413 89936967 248958670 903204654 63132293 501942085 252692695 67622626 97715920 322681172 652279629 698159838 166988303 196981610 480827003 87786669 417323083 87506300 546724703 571211731 18689473 322847917 646905962 980849606 428632362 150247601 871376219 827975263 750912770 612198123 82514686 16073153 656818469 965903782 150665087 532342570 203068115 287524563 48187777 881737722 38852941 965763391 301331794 127616246 319556649 641810599 612529944 644358101 889170628 53383494 196502779 622469785 686782920 747072281 610086053 726217385 969907370 749241668 346149234 298703254 574169441 87930733 525282471 191437363 616679175 921036505 8383223 288259616 293459900 66997038 607685109 165734498 185035451 126825557 224961167 301089702 427141460 255993952 197989140 276122135 849993976 823327560 128565833 879450675 25355666 247162252 2865488 703064454 592719854 994275093 586062523 645887839 947700903 337884037 300004881 2795388 74463459 856003794 410102604 938928647 656685955 109009396 171177208 615950379 487679140 355677084 112188840 410092642 151484501 22583310 714322675 859820115 479525568 254675484 646836975 209957613 825431800 629388616 894457120 356585276 296679382 616837768 425998667 107733556 535325241 786701063 28119589 470226577 481642531 760451305 740067707 998526491 145163117 68775545 342301578 683836130 698575298 308799512 246919698 859639015 744670487 365336304 644282214 416727694 569870592 85756697 706189224 745203815 429512286 247320039 288427606 305602880 501890910 399547430 884536395 251626752 639675828 132399176 74253386 371389351 753774637 70775118 674774439 578268463 702241160 30605546 688082577 276590668 507257275 23936892 496003079 888954296 852522583 473740600 335950274 123311188 610861285 522275542 620938217 637355994 839930745 979104610 742638357 80929426 136638598 250747973 433287627 863395124 309503122 588914647 788111234 490551001 97713331 713066261 993456365 862673586 757599162 40877937 562215513 983470922 626268905 115435304 882776156 852271955 17022863 886959939 822037074 19807638 744149164 562406718 97393188 142080063 689459491 153729169 204012721 347911718 619732310 448791076 329414837 143475194 735267642 388059052 324995787 602695220 120734867 135042768 854993319 31841918 157720602 394540852 493693333 574559914 603786790 985661568 86815073 921056815 383104104 174227668 27376252 142186487 94171452 331071771 72504044 192009979 34554949 709334195 622187126 766701428 391974229 39691979 614928470 703047985 605733487 495125758 739413963 725111560 26556921 916458902 934527523 405929885 647279376 929985796 193161288 267055310 778716989 936225455 699321926 320124235 901759145 411843150 726933727 571810757 376327190 575475882 27123956 103868039 1560739 765269474 840843000 451804362 1569399 160703438 835540672 325925729 434765622 107025509 705022108 992035956 27023270 710377292 301589459 430739022 301230379 899306976 365433319 721030323 78034853 744766574 145373531 376643678 902459290 994462235 848703469 871721205 779142792 810277415 1088730 198416498 258847466 989149461 567669383 779245205 812762202 535837384 958668918 422227319 97012582 240244888 518371229 956791503 920714742 181064376 481430255 564764627 518544270 851403846 782963603 241814402 135472633 578543301 283924190 362357899 159082174 282262654 82539835 856977254 730412246 843179240 937573599 787631225 800541767 258736809 130183241 565854730 196546623 843738536 611289884 462987035 517266300 420759747 996402349 878617741 829044409 336283127 33935432 452670287 892553248 609697527 146552891 347290012 446752041 974806164 519806743 621697307 306435258 840822389 674966784 669110324 977196160 120558007 96764504 66114573 705571816 839617471 649997034 751674455 6827636 925782728 664573850 730451232 309987140 355389444 877289917 812326805 327978687 851466238 990994434 329399508 613683516 593890526 27045980 50154743 243848819 180743841 500537050 115207163 898334246 127184461 454005963 852172920 408273956 759216646 754851616 150513374 806372697 808706478 543759865 349330368 629863815 633106520 290408981 337899018 84362763 899356895 385856265 889609240 289479985 858758739 779471101 130166253 707618730 118621619 464394203 948488595 404472692 154272206 345387440 884618393 487095221 657311531 505845580 118167715 787148646 139255709 495493936 724255077 836567213 515900617 978123429 10568150 871538603 236976916 244949998 512312775 539843746 834780844 203008596 145414323 602629460 331989195 158236065 372292496 591147472 530788222 679763882 223054560 642336801 171731725 801887304 905311376 846162224 844289705 395409059 113179805 284862437 66280453 663725483 944411051 846146274 133746300 602459625 961492875 637995962 133288230 135664436 795402648 376685617 734529901 797812119 949694502 117991106 581573230 229491219 261533929 85433189 380263413 571233191 808006630 240249293 384140633 104620425 808238299 268200949 190034346 804357985 430604288 898076374 834969367 147501553 241215226 421691576 382575576 922744508 468036132 716856715 835047837 886405731 926162862 899395420 265964737 433326988 512789415 962063143 448591536 521810581 293965461 56084513 872791342 856825147 593941892 737695121 828175072 521783322 275989543 483180469 493162235 213757955 769769137 511597568 551485119 872289596 664918414 105730054 793891071 472444618 808011859 510369669 907369731 426059884 367968422 450507925 456198392 767394894 194628853 105235021 251769546 515326964 248465532 893906325 752448632 976232411 464340489 304373410 459439571 868543626 772462872 725263216 969662605 728840323 502321165 302671729 714271978 59540560 306543672 857438122 861847295 845475833 590352374 675954522 724181975 674653220 463276940 655301299 930706284 115247 46654759 992747364 18323572 358991434 112585690 290740684 525167939 617101381 449040415 556265284 53005112 570262803 438602904 954190722 897007899 318300819 250516504 237289238 83972326 988918142 271111456 232869672 600230198 514646437 345766705 673858208 765694047 783815935 237698264 732774693 479254594 365329084 370856794 989915681 754630176 825604921 996632095 442677157 272225473 577078532 100854677 489390940 971180240 661857567 674674588 83701381 373579153 557315995 641887376 604466357 543361478 484293554 676327422 233928035 618766340 790380339 716176675 471902782 671595006 521089620 449799396 482405875 519998219 597990775 976043874 139950093 923767996 931820940 473445029 632981293 217563315 366568050 726725063 305756351 878507024 909755623 15287965 470259697 462675857 390529338 148728439 993587628 771566554 978659091 431533018 481889600 937478441 741096114 335647287 714543900 195230955 561431875 6981191 536427379 78691620 631834027 111990400 134066929 236184131 45993815 346008360 108855660 644415591 809935914 121042601 758639871 65676762 807441868 328372849 252100183 393977185 547392883 595571953 912400300 276715850 442475010 718552278 614796880 453945471 127745666 9688366 965959705 988366905 145592478 791437191 570110277 2569430 710112290 924794516 592541262 394499720 740075505 924163446 438897527 191524813 862564835 808815498 230884625 906460019 792705101 985792824 767532461 534307211 296040939 952377117 472997367 304932694 744778310 386544043 763898086 960297951 347261539 295155293 896287932 950709558 456616139 541577096 908088604 522785204 833611089 711956859 292179516 759848381 387664187 392288205 498493481 659547886 987440745 704618514 693791665 448708698 420482334 319392629 590572405 457375690 534372146 973643468 871382012 873388413 27258394 840909662 744261165 246753552 823061816 26724862 607416706 224288626 248480221 211292794 665703109 604138552 354107681 194583103 712517286 126657496 770208380 20897034 376102353 454621856 502131880 733950475 498198709 572814434 477203153 735217404 587021067 344041666 261926443 312105541 488608223 632736637 140109241 589718551 9178913 275821980 245465665 900386716 59231863 673978338 602778434 763068883 920821347 959704197 247605707 773034684 372280267 725492101 63856328 728626388 920727466 996571004 295819062 584067996 386212264 951430882 60185099 358004648 839562654 929700707 12130307 232903114 95826803 225893831 340516546 398043169 403576065 563429674 255201617 693834527 165185014 79216535 330378465 148773096 496685176 138437135 381532129 279610084 345012865 121678615 960251266 426050702 755230860 862229060 7108622 344847504 444385380 190685184 600667604 312728937 391495006 420969493 160534451 47846 203745995 643424108 727055989 956906296 722877985 241417820 604175743 134102441 930511301 816526541 538551552 83161062 156629256 179151118 176492408 846113805 169986581 911080813 587393804 32413254 754694015 44945048 60540488 106650437 685636131 78744248 659104226 998096334 929359315 242124241 613295067 446134988 353300769 29430076 919267922 337229474 989406782 669733512 883822769 864587620 433798387 18939418 998351979 749628782 758827090 584246363 821336952 93845644 635850791 587832308 175337643 860974662 135875401 486072662 913790961 224521898 750572901 510868828 604365267 65061712 38699733 225143004 738747968 981796254 321356289 446149842 484071912 99494035 868927042 998309007 628079339 660260284 818022944 944509389 973940817 406096909 309516206 978303692 336464071 543118947 827820728 873804690 792637929 205461385 512847297 766809848 168937385 468194160 628495592 77128445 438700720 10831859 463456217 346769856 464135067 62409782 189542912 307465205 123786953 332086305 715065416 967695048 566418763 684215945 120291116 55700402 95455357 789962779 310845986 964548653 86328260 61611751 237022987 580873581 855869337 77565183 724560759 954299693 358216586 440702829 525958218 891557694 418682608 219964717 588872337 981401286 588253173 357717541 280055093 936098205 894152026 169522680 745044432 797342247 665518855 305012057 905985365 615355312 783270491 220141561 679738034 170021173 964398143 888835388 697706389 363856190 887518580 463838966 539430135 541059535 373210622 120437496 546916580 779057937 202791832 416510088 658155165 708176087 596448630 892316354 661916459 662759086 485100689 126193871 981934807 349223886 236397886 678636357 889201001 483655481 313790340 368130745 380027402 731858953 922515777 804798309 868452610 204074768 56838921 439884224 882936197 233487649 507234990 647372942 40580262 255581958 581201424 59645819 235752895 756396067 780000123 806042101 839704568 540169549 636480277 167917925 67905590 148825631 666515808 732846307 543444655 236856645 449433488 921324652 254852115 75141086 875389239 977666706 848907310 607015006 549210880 904983371 336286438 833536143 276024247 593944897 705824229 556399442 619281493 587548217 180307519 552991782 529281660 874565358 807260501 130780697 828769639 937375130 637176743 350498010 546384506 129123326 818600214 456793869 270130971 183458205 818957176 530689022 486286522 746869452 71330829 48316342 50940605 970444251 95709986 521451489 440585504 730794487 136318765 817250833 240735611 763368161 850600304 961010143 308899043 482959602 225932593 250071651 433628798 669809770 937960135 213998430 819739563 655489669 682139249 124765273 571849336 896956749 702358953 614142440 556577934 975771225 842260026 325682805 719595487 572077977 732844359 909495791 173690086 703924255 197115355 376073646 916239880 777754611 475585891 417581685 474920297 250237803 797213819 914001709 200345124 442604068 759065579 172852386 493427661 935138429 519170877 360634526 315878066 679799163 583881052 126417344 760051212 55460059 499392071 362622775 843323684 845601915 772509163 765717589 118320073 83697400 916068677 80462825 470727175 963276101 457266067 838046126 455516005 624447010 536761397 247746591 176342998 573612479 755526362 848722993 96828642 462425037 579680355 252087214 950940598 925074058 915777487 568098176 539498080 120452137 722210573 599700350 791172839 124158045 279229655 814583291 771799610 588283937 408922397 871757110 945954256 703950341 254481919 864941727 834404372 297856864 351971533 159864340 588597399 582300663 369228924 988700734 373803450 123497899 279949657 102866562 280663214 293474397 439687009 431714369 585975596 1649327 824991509 258625553 66583812 668231197 221244911 785734110 31074191 361408969 632107392 535866775 368893033 840010496 372519813 926091193 410243095 125372393 442054732 395554576 880139472 270921801 908918954 718730317 230443090 707648064 649449494 67089258 695198847 355375255 188697327 532354909 840200094 693936816 790523209 217035942 809009007 641969220 810669816 94241440 151860364 985099610 314105666 200115500 38396239 378530249 491004882 994586496 649026251 272757893 421571600 456855891 245667064 689697040 141806151 55831123 782286736 423642560 662576733 419232872 164952098 124103288 546225219 968956129 838774836 989585310 84448819 807020176 171834192 899314698 286084972 275186892 642738484 921225887 710795900 596973916 360882533 149270455 378552719 49753315 2570266 596126606 450462843 335918276 784855614 274865632 269059342 235304730 11350283 935646445 36913920 687514082 866159168 706259184 784631872 796670544 929118323 831302485 97777500 897796574 780102631 841964989 364328043 943042589 841174828 884365439 914381684 68311215 457557886 401899983 100192211 399527699 444175295 438345766 106534006 860422083 193069994 340577118 968253777 144413144 293903309 375591809 355559082 685246385 364425149 859451178 335595200 721449632 955631401 383635782 951395330 559757736 61987218 646422601 870980734 944385168 972186975 634237614 848684009 67864353 116336755 333231065 186776138 735428243 534088810 445964048 776323273 360454808 842731799 330974977 31477237 763570281 596813691 456694468 393565291 480497465 133746805 898048520 315330312 843253558 108818549 672863070 101152537 653609878 832240668 552248263 923877152 627190524 406699826 17615888 356061010 252605150 810166691 474471537 698680548 409834686 820939112 861333883 366736863 816773868 309826006 134950412 937659111 226244492 916848543 547070029 229662617 108713240 768005486 459020577 521150643 602652410 268765891 851676356 324609433 988942838 919879490 148884683 543012955 283086120 390707809 44943439 919024302 831323240 559572075 79804869 792258828 551312826 605005272 285515063 50647813 627371637 105378131 538193738 494619128 819900116 615358888 924187221 492751515 536418012 129063161 605888520 955382749 188936866 826797334 445041823 115655384 220559756 437199943 878019250 481619041 179521346 175297868 543744088 928237422 827967531 879036585 949824093 188710021 768221832 671314307 116647483 658986933 928032902 440964076 667350144 380887843 760085012 773238416 94224741 600437831 246003819 89085983 160761780 318270853 850954529 964536974 186035786 466462701 147596448 314323803 443782745 32924920 883792151 512252026 664512618 26772713 552521219 817751761 980025374 835174991 825664780 435510755 76948741 419012824 472525910 939401295 203039310 836708597 588350078 757999271 724619377 644850270 32982366 528269649 344476253 712861677 556012779 928145937 375524540 661706933 807997824 51703182 461159659 416691617 112050252 329401770 102582221 755658156 447598049 162647179 901255689 416872780 151612936 336228831 723693172 974011475 167121938 270050259 463985352 712640037 456092179 222623448 600582663 16635558 509830526 69233718 938119297 300525416 195077286 855027701 127187509 452442433 324142966 190277110 318240099 71953532 171178177 722819918 962319806 793483691 698268653 45548458 510802458 53165536 800629683 355866875 412353059 671858227 539139096 118956152 712315392 894301307 277317435 168887950 653478648 906074854 240459765 243544328 394629506 616843984 842288211 758696701 155115266 878069341 714567448 936580042 479674613 728324051 861198072 292822525 24001489 377537347 38280272 731093207 456463467 74794535 60646486 765646104 73539085 866418094 988114052 276446855 87979166 786400367 832279717 459520709 342124628 950894098 32155336 984114238 752645422 393228593 581862729 321300389 912665744 10266406 912811057 267114238 962895613 611443197 622114683 164154853 617467404 141637067 82275162 287802212 164382965 124051384 506987441 225698320 364230165 277226686 409243774 976035266 712719897 324605902 69057422 453744965 443891958 563798367 950631846 448351431 122819741 983994547 539560418 229997680 818159672 808399344 190383450 273533201 50760041 144974384 289690231 97608285 565949059 41181665 942030351 989290861 612709044 481806356 191998990 434876700 167864573 51043318 91696284 930263464 547572161 985199123 91449973 747815767 357797176 868603007 400149621 488630120 980722348 678962698 421750810 418317388 773372834 925815142 350724869 464763412 278901862 197727417 959663941 592093213 215625056 490271870 421341828 898256947 844808025 136533291 704920238 845794437 200839124 370911896 823807430 88813455 588412865 534433582 362132163 121844736 902795124 937781346 769805636 462900311 227593046 904408206 952277343 781295239 885192223 824982857 221170161 91886808 906973754 304461590 139426404 147097092 294494501 858500138 997329283 131298825 178723375 458624845 315151395 269179230 802661351 908853268 229780473 74770494 325602274 463093955 585461815 369876763 561999129 359465874 75545379 606092984 814934943 69670783 450539511 219642887 205680962 431145367 320591166 338821604 666418382 579563981 256431398 472820327 730458638 188754856 476238321 608357550 582198972 238323422 175332038 91480567 790322364 445586918 196484027 218718240 261655222 567917105 354121638 888006055 690389213 36258320 789750992 968286913 839149127 862945097 865089018 783643826 787183483 205757192 784471940 255622506 793001894 616502952 739127461 203134715 741012375 739635517 629748335 415334709 343811366 945218326 144363006 359141663 152214650 946925768 801565836 785699037 528327077 727760495 472579790 754235283 365143185 476735248 772836941 6619314 554150999 591779771 69199742 78183031 439755236 797435482 368040803 171401379 688533117 919685961 792163972 631513040 147535821 707528366 866286681 52888830 818792858 159383685 507698415 404132753 116302939 968095392 547636238 604499174 56215105 318570532 574325488 356219447 923390967 457435468 321707536 601971380 408043400 553482151 725804764 889379326 198834890 603805662 611267555 446287691 735180601 278355610 138285957 12310786 218110638 212747401 723633658 544702506 791674539 15461456 747131545 213956503 110949277 160068925 876781554 339716134 953743246 93991797 506450428 252799882 705791762 939079105 226071108 544730782 504685105 736142669 674926147 298554044 379465339 387288668 26100242 344739179 839217975 452324862 59159924 806677506 765140279 837653460 164611732 666904080 156577782 671847944 162609766 661828010 162533907 674454686 579733332 363901463 230323287 976259139 365574399 421708602 658939606 535176191 248820213 636038659 415682481 576775670 246238110 771008181 733413378 831509870 794596185 414045100 844592359 711391724 630151985 270776780 961990880 615896376 3147645 461830030 428819780 732530145 900663071 514230639 627303990 879231001 307018557 640118344 81121553 616160680 579748605 596273744 870838679 227358278 629122508 967428288 678009900 810251126 398146956 75469523 342106724 966355251 8584738 180376765 740959546 682705511 281666988 12792822 967976077 368966974 921671904 597417325 763042995 412864337 698776707 136593904 10346063 263178739 956084457 81234749 968733240 728078607 782674606 759951743 474341552 589435383 297063102 43963615 559300383 961472178 508960260 86086243 901693549 777658459 45509779 152893283 864371246 363045247 753309328 182799352 640421348 837314630 699589281 924220306 534727642 59507402 100341511 658325561 267238195 732482041 897166619 82329296 829509068 64435678 403875973 280007568 991021119 90314006 750839364 835757047 197274920 110128596 91336605 346624796 282943760 723072226 985137886 95917677 132948174 219719850 459781875 449831361 495128420 725103354 776211456 879322443 715905693 635662054 210607283 808919601 798425443 916956246 484287608 527682714 880351877 906285295 13720370 477322582 437873902 850574352 744751337 297456973 581768764 116523504 85725394 463878507 432793743 647266107 30447580 602977678 129945176 977288779 251618132 827832685 129717419 824618316 435000065 575180186 757439830 739810094 435126829 292489843 205413267 550549638 714092775 917391455 690372137 401956392 512434921 838163637 124050254 358836217 578728668 298857685 629181067 917059972 280407630 812996038 544420129 77826298 168902247 391633401 823171368 206291583 469336245 280122106 226081367 836104837 15466546 264605303 806015471 711633660 757841437 525965923 985966117 515322777 63768123 129978586 857177661 246538637 930924659 50214715 935468098 589563158 271088646 410233357 25867710 679987253 264591740 986342102 602558232 880421472 581762379 773319532 490298873 721940538 937809385 232914136 535089838 788413529 238397055 695686346 492261597 882661782 826634012 719826237 172009903 338587012 844759095 894424804 38086018 940677442 92205931 399801980 800996879 263237520 422197160 734918991 641064687 654008877 889165055 115925685 231032503 183890520 987861295 997057222 264638844 6806913 355275939 807636945 14401257 860879674 695629088 204177985 598914628 3947220 429529032 545685303 588096508 616376948 359741203 231810133 407038775 473005134 433309266 610110930 573281586 175905933 820032862 925131154 163759234 651621413 621519906 964251819 472114969 472831997 806683217 608873 987883461 148023432 907626857 548350040 951996820 653830018 647187783 146912443 223084718 294081834 607408406 623009855 96740658 972489550 359776313 416828810 684134396 737414821 35162024 469531045 478044167 368267539 509967045 340257200 833697338 119668519 775184815 561464473 962379002 404880942 99484593 302079303 228897106 539602677 522448262 22530598 418593629 421239912 106283052 314545970 180293976 520958601 989216869 351867050 615315389 618089980 1000993 283425143 205612892 445481066 741809628 24695579 233795846 283986380 222753856 269371073 559658136 439388378 690894650 585192956 581695521 433811460 107878255 767522020 513903519 910898727 868423362 165819795 78009500 747668383 30229177 48025978 379461131 567862631 503310586 155036577 952438675 293616585 780017493 766720220 692601709 469996865 435456775 149873686 748299009 133851681 978969111 291320837 261809222 433815130 687409705 59454895 675625940 275100995 546890558 903965315 306367000 676191409 324484100 587388229 138533447 92577724 549930794 144015245 286945569 423172997 269705117 413495700 449570246 993986968 852626303 950171237 244226798 437305220 535011815 187122386 691498506 972233793 828281129 418015484 138107506 3380252 227863198 346042122 786716387 181054964 410188201 787474240 272718441 364142405 897431084 264005611 873868293 502621734 315577376 817428356 584255113 876537477 195446190 456585853 439269371 742655590 322668082 936196131 461247477 663011190 462017158 322876371 457469227 693703684 785163867 509416262 441353844 718526134 614487548 142285797 211990412 783442649 482025966 706891731 942923150 783115709 697628041 903029210 135172725 786284923 746075475 558239266 131824752 344530058 651823132 152098313 475124123 263192235 33318040 746885574 201220235 365566750 207206309 577462978 95732520 652344273 251565261 178046709 615862540 298198280 684731494 245347992 119143040 987342372 526778051 608598799 210318664 680740597 635379393 585372809 755163161 724373067 973303732 36071738 810560625 832551531 968652661 722664901 581988789 239552077 230349818 32837388 598296023 809567433 975337470 829837884 36264011 283941595 627497249 671343597 504968982 452513206 912970861 891000755 273570808 455980918 132918347 186979394 33234721 122125222 790673501 331639140 74810430 123787827 576675874 265983089 324287409 525880231 538109901 17130741 396123231 764291144 616688318 610455289 370024549 954085486 669064548 746395447 566078508 269176302 17363960 691333091 173331176 250903897 837224195 937825005 339853841 842263238 841332440 54262110 450964268 847797593 693028629 177712737 529952613 168010668 746960426 103116189 346936943 777438834 465530107 137380598 347199631 2671272 678438939 358826951 408439222 990717697 575780083 107115579 382227543 871327302 192773833 703298891 547483774 684759701 456234682 348635615 370423847 744630642 281999143 540025996 571194680 693555934 917577601 526361702 749754315 507567745 835523699 571841249 778185214 982371171 530365220 957444566 575972978 856149921 172746547 988665144 292177487 704922070 305452086 560688568 611917761 840681686 430362387 865188617 60440857 61742497 800988738 482763678 797263528 831946273 497960145 63313112 904454012 800993542 745476127 107398891 685179094 314470105 695160122 193166971 630068938 96100300 297508056 884232621 625841812 325276373 605267828 857029334 130812863 797854857 628383120 399359260 762810274 301342679 100499906 797905612 501217507 817234393 163382105 830742255 213893995 675087304 754938649 38064053 36748758 810190797 769777947 28444747 913372788 203713835 144738092 468668372 440023004 605182825 730851639 285552127 655436165 532982357 893003156 493686410 319163643 94124882 12478633 195989024 242120875 846068654 935157576 651940331 720662173 889844327 985816945 160471229 548275343 350605526 179382048 264821791 436678638 857478138 88243667 436333357 620221583 727897793 274388463 362132353 270388186 445290103 900267367 978105802 774297900 369871902 717126080 848883218 995747770 977733514 601045703 341204580 874891154 482049745 248629790 210389536 555217824 618289752 285774418 121818862 777072300 246418336 84447220 260364995 803980253 174511459 19989682 184546758 738403920 275629035 972258074 953489082 240271822 524306874 939170328 873954460 965025021 803313265 335035962 685161098 860688652 78671121 554009202 471110922 697982803 500605009 381573627 32855868 678218614 339415777 942740075 710140338 645511405 232581001 637619704 709041168 117401495 41093993 53150604 310449803 801475671 866331010 139813376 193172380 771113287 945021004 205031286 621513716 780083095 480454118 564088650 559796820 809154033 855038612 689026373 539264656 962508115 294591447 412711061 135105733 147454631 970201392 918120718 674654717 511371588 613746667 237410895 702461101 532689937 284091178 592441949 908640292 752910901 590706947 907226440 896141818 754285176 146674084 313120290 656949292 275159027 332163289 371027269 883479078 441301914 159905484 92470534 159529992 625106029 507615425 308615022 118862764 919914921 88454315 585953663 744427966 821149086 852185643 24958351 371769567 973140331 871553060 368960083 863470684 217418485 35234130 384119719 989105051 646925150 272047630 465824081 389999587 652984176 913579764 81755458 877825488 63117603 169568619 820556323 130382224 25720028 418872539 128237652 22862318 415316165 49836805 276497824 852584006 113457663 870194986 952489376 484621343 155350564 74598011 469801358 880336356 344913155 141223403 637474175 131318410 229632103 50005774 892794566 870886766 279756279 40717353 194250160 126107074 93952589 799999709 22669005 437839752 373227506 386728332 706721728 132795025 643714319 616137952 117528435 231610516 341217482 168349584 524380182 8859227 740762213 162936187 991298566 656341352 137095809 255517123 870191991 554770696 218505973 993670763 579095137 155550531 153022044 592282942 824470909 863115564 794816772 171564852 365447324 834339120 725038489 881481709 11560129 819520442 134356772 390685219 271689093 317934305 714369224 46839557 280598401 458965940 892609418 265376324 370361658 11526093 510794043 188729878 581541911 284579376 934634901 589619590 428813364 850516381 695869728 606103450 482936798 605442930 358371824 981365289 600404128 594716559 698753232 870318522 251048324 516006655 984388323 755322836 487837870 663306024 819426216 749556005 661494274 904748938 982166125 892027292 734994974 297112021 253779067 49546213 451682500 819164903 914949211 875480815 955009871 714029266 398976139 32106732 669727202 11631259 941385322 279952488 623636064 511163918 307664283 972049997 984368725 887465316 351325016 114437624 454437429 101898842 17290622 329021276 686915949 937223552 546684547 6561157 908203043 577793120 114902028 950449 77255695 755240354 13795775 350675423 420427494 340494780 872104393 565679873 777378361 773316443 520302221 18723038 936989902 860487621 845475409 181513487 312775633 230981313 131196402 100724427 980372328 999011409 444354292 560191422 846951535 901160938 560583251 808439190 238671876 29206945 90724357 985071880 285576896 295616999 876521196 670993260 643288108 58041835 282126015 89525482 166820396 316746703 337177343 636856654 132511842 303677629 774306942 124976378 512116851 892180352 663349541 514416711 653042788 282827723 664214232 282525650 717202536 490220308 474954836 133934510 402017321 803275849 898876411 685502350 939596915 411650282 718254807 559959821 325783406 697698964 550407404 300845215 29681528 464540831 914166408 120271737 807198256 36960983 371097089 423747018 337551308 559105380 218778541 29020015 56979534 277756669 992162638 338887820 319370102 821997525 228464950 213493912 386839458 9100107 555066890 422969653 715724436 865187553 704431207 530129781 597920416 579156266 173454822 600313405 777219494 132931982 593755661 659022022 334925037 722614897 900813 552318236 929917896 756522836 151557021 893322364 723619448 269442274 819946631 770536164 804684842 533584049 564630554 587613870 290461554 333381782 41095397 343768443 131061742 911861782 810349896 707760982 516177747 430317416 408004967 908881639 324129295 863900215 93000791 73855012 971661431 101972908 419270928 792320699 43540704 501474974 911908781 101919311 647395244 330778992 761174993 581906516 742180959 759351508 829310526 676117652 812754827 544898203 47312934 256720413 591441714 721596214 212119961 341549139 784236453 502885781 48220116 601989614 23791426 124780970 448639976 529142733 54606475 667451345 211491160 653051332 360659057 961169609 54271953 935851529 922003337 949913191 858504177 6331228 843796153 755017402 754074674 820748018 756067154 12537678 124565103 757745185 551577646 473101014 718730076 123408969 29504958 725390619 670629554 856947973 837548692 683707125 939499522 223248644 204185075 13152983 2915448 772029651 400873415 75007491 355785054 621287216 996940531 883358191 21249024 718485540 681400289 603150305 319532022 115682442 825965902 260517842 169367962 770912680 127827439 651708977 829757398 65296145 289155589 379528661 166935686 343031840 217791782 462217456 267150638 695279673 722179078 983340295 940093995 756090215 10189797 360796026 450578350 449982016 44830796 31145705 176406344 27280217 627310380 232336814 64653907 161075072 135194695 262976106 555564327 413220135 565681437 826078318 960806986 793813312 43441786 506381594 541187049 20433779 67945137 26232820 721984593 911757169 65347339 994992192 808498994 681360303 843062740 680578607 497820544 924909003 859419272 825096145 683224608 659450500 754727181 245979252 570880276 477498425 673427072 312459298 896614963 370533220 870312645 3262284 623959066 178430099 298832715 445526983 613994570 342901986 121714284 877394165 844364073 422087773 856388510 571944051 13265246 846036951 398714763 746419019 949375815 539091267 303741654 106905202 126655092 577037702 79140862 981856344 195415379 474895986 538589006 187977929 668821189 620759242 974039097 903629487 433407924 959703487 248187177 603198941 499133219 498730698 190619466 681124133 732980104 760582240 308226223 894785945 539266420 496687181 960635284 317669349 390826430 938658268 131634298 116965434 470440868 104633412 713803171 867367067 796487926 590470398 648516754 406984713 689799653 705989995 870872428 444156932 135687770 713584943 413155612 863111460 151300973 782122673 733069617 505489684 213580302 567803006 125083078 661728128 529326872 31361734 394442 233601299 100511389 669700689 333165097 450935701 988058578 731092387 383226388 504643026 169484737 746074010 473851493 379338543 469564271 25073919 975955573 565280125 399662973 594385969 61180416 347807728 348636641 625202118 938509294 304620930 466396339 48003445 854892324 122774746 715225573 937849388 429714590 816066858 440327388 769297566 152964347 954011586 186120681 186647012 443380279 258596842 722891906 737172041 37455745 915636228 104216098 614011489 808858729 374376183 683533362 797094136 822750304 255661388 124340590 428941534 893480744 402295030 436733997 217791451 196502073 807502324 553388464 521400409 358320236 426277023 481617260 792131683 210957547 824331688 880341088 31661685 783281437 520571371 219469873 348064796 453706677 521354849 977335625 790128189 2204246 703096479 962314001 216252780 269736532 263811424 587245941 796888130 938105938 876904143 235579155 279493562 70071076 237477444 492690458 595990302 72210474 969818011 361117874 242966663 136995501 522062074 377010507 21566946 56136833 578943118 784161193 894329673 885214627 953840388 576904654 29416202 966175942 631194974 816271719 427446804 289196476 84822176 912862323 777277355 19036709 143235699 925426389 5740433 204147679 609694243 678000894 373872807 305819107 874603845 736822893 997354556 39829468 264727653 662148817 818979838 730409739 497637044 129451119 564341159 108992944 651548301 538735552 837617469 2871136 891000287 989539765 755177056 512817408 824242594 86135809 976700007 553201221 891288904 532933985 636328301 157480971 178579568 489865199 330739059 707037941 812075037 724845343 504660123 24238331 868181222 762582448 187102294 96045211 97624519 556035960 516255962 561792799 772771416 808171668 515037824 548918999 59278689 778846647 869434109 409883636 102272015 620889617 708883171 874436333 316161798 714734126 224940406 121025626 656438253 160562039 834856282 706023650 386771327 31352731 32828377 771971434 718905410 563714245 628468874 521199683 118355797 953682981 125303749 369215240 442117135 132929865 218471422 332167982 448793802 877727169 47084027 389699102 589297073 20448566 513333891 478150096 966339817 549039450 875641289 976915626 342400691 56799676 423387567 963141023 733133858 569340996 147577962 672780420 208428914 675571899 755855018 118885117 135706035 365429438 541215747 201446849 475156072 160804822 216838430 422167551 201710153 504614628 826457019 540563787 506705235 494287764 984677367 436512813 539272911 470664474 633168048 15822193 823877940 551956747 394651034 703050273 153766545 478720510 523024169 429183977 167103108 185295520 987763647 722813416 268854725 718939906 268831357 670040096 723196094 345376836 895658278 284983402 628079346 74110454 78118763 935118810 659409812 184169792 236988793 585204463 44289339 371202747 704102864 146348532 766442504 78489010 390260451 207072908 720614547 34577216 618703720 764956814 853724558 557837007 796062525 222630131 302332041 334842564 602404183 705723671 81302817 606365007 316110110 539504604 110044245 869192357 111256220 55799330 989654718 262957119 205326788 520385790 71429343 569071360 200480512 552831171 445545465 961395292 988553672 275565156 750708283 62424794 377693999 414521257 684521871 837413128 639495947 106687774 340132347 565495531 312612101 739879897 345568293 266224624 135626456 8349208 731772339 679536501 135508928 532843108 573828720 384153489 533797369 2406056 213315020 758863329 69060635 885954490 917057923 30945220 735978504 480723264 762590168 779517925 786335278 293148256 68030097 669795574 258514185 17391296 890487721 556752318 893239524 546250873 173324339 998284651 662480425 461961781 909512311 133225700 584161489 434771405 214462906 996775376 772678300 604800084 998411624 50881639 532180047 890837780 463789768 732386630 773713 309604961 926851296 291553417 99377083 73880226 991122746 550664940 564232998 576582539 35169515 832836996 741728157 434953259 130301067 757032860 155954348 142972542 615611429 169081578 181121412 847751527 708732167 168853258 387443750 857607783 505591719 565172105 160626149 989625831 640039463 136831824 430583011 390262625 917541123 886624387 311709456 757394098 246252730 298867156 402146263 134669297 349295392 125012478 58354198 663825867 71543621 271700675 730660326 421551031 904029620 634588742 315913518 621188182 914247032 311561821 62543618 382662222 657916620 128109278 422438150 724608645 158324787 800230565 979910124 536226726 51186698 488774497 107923743 195439280 557676046 715841763 337102361 97054871 373176181 659027873 19067067 191731933 127792705 419992420 283652554 959423978 824582584 374345233 131270350 113353617 250612983 875210713 560806213 942691124 743265563 321429950 586624664 627206299 923988145 670428539 951591715 488388769 626254161 691607466 58733213 560857848 665352883 838932167 99686730 569413478 203413897 292656243 858298318 798146341 317407414 961408395 367679518 490865635 114526416 611389871 442058135 613651692 51033440 619667853 410614230 535477046 52887877 392304286 562942437 167828656 708318486 174553579 236404826 225742386 362672114 56466601 489046663 386357570 163830520 208799834 500943917 321571900 244459589 127960928 769688033 768779741 958429957 510124351 667377162 984268130 756296693 157401825 933433738 949124545 285524770 947259595 871156312 1848257 90726963 622504986 837416342 463046734 459417702 743741899 750319903 616002457 789198776 764483578 16810295 921038326 64562441 490849839 657085917 604643303 257485404 744581703 798923846 84915578 216436421 799637959 648457903 764642547 626379597 917593288 906518030 276094113 937890114 593020091 919564176 24177122 699329011 235655335 194768648 219642948 294435063 41761761 616222850 666379399 820107455 54092184 647881751 965722828 642973827 863691655 468998074 855515305 81805828 694010713 352209780 467808275 583428084 86727258 758122523 158982950 845964182 772901945 299016918 519543806 19579652 574460208 123951339 358717054 40134248 657110740 326989697 601146475 731239684 369825787 611769104 693420944 763053651 278003843 436431567 185598633 825823102 226067961 829379056 30360342 367829590 413781204 764236121 913961435 401830364 51895626 6949670 69978724 382004797 834752850 372304773 692796059 122385802 414123611 660128376 594158164 19991469 300905273 355911789 678911322 889415992 188694185 422923680 639475915 658233666 109262047 326383788 764619555 219248937 918744892 881303435 25871781 444488039 452571602 199542207 582803421 916617141 366396682 853524122 659777184 199049413 895477059 801671253 553313589 904537739 930988640 357724245 629293203 527884166 319767664 687155559 16118566 445868132 372205495 53598342 763474808 822180351 992118476 546407401 323970975 233034581 256457286 99609575 924792101 793573049 454245 777241936 565194415 345649837 329612773 796578963 548654571 258328746 806023609 856248618 866857258 246209599 138099961 774766433 402564252 356063064 59042682 40428583 514439462 756701820 618640856 24200182 112668439 263729271 182383473 265530805 364347073 165294129 13944004 502728407 37603351 80407150 907440719 37913629 589085330 526387861 227950466 774643644 322745722 967572630 671293136 940454495 327250969 300595315 2954857 4627535 337042220 303380080 813782065 224772179 810860142 723018419 707799632 230667389 767322208 190355227 935371172 171099295 552159552 763556573 890682194 828229853 102585911 412064064 682655459 356342880 369550139 849136207 67573403 950404926 607572884 605432227 119345357 330163226 669150813 256067199 726389380 661915780 476206527 381956092 525858056 10106806 224964249 366167136 988105608 139773511 692431564 981740849 176019542 634499061 886605108 746815773 266386486 131770671 700614532 748232069 20845988 792260824 957849749 575561664 692807382 411126399 496084439 747773831 599922859 521256456 768946973 606182359 833270309 526533616 105175361 173890034 278686166 886146253 751638800 274473941 356024859 721467870 457465530 418444494 724206331 47556981 759259670 967023986 821026674 801774169 335257240 305185685 453029376 891386859 494083319 702947611 326986386 239856168 608215791 273734081 517082554 269159356 225215287 267038839 29870847 877656427 166352976 520872717 765934677 799261183 938181715 172046630 59915608 958001877 498575238 106313256 462916534 21861043 117315038 667796288 765162405 267610625 615782548 495103853 970629420 586899928 297428115 596820565 323667377 586908985 540909627 399738395 106522399 947064576 311270104 672212163 224845725 700188113 38308802 603069616 526537493 127438054 606712110 650430822 996651646 606700351 978821401 398964416 207855689 815875902 331981230 414640900 400162519 330080490 112004063 864969194 534081909 154121068 368531103 164771208 213558365 41781588 362626163 809956431 838661052 264820102 727937387 220493157 237970616 166402763 460022064 749032113 241502674 591841391 598852579 776628015 629406013 116576336 506193291 163219373 102813600 405915797 910502659 120646646 881852310 37482049 966616623 866078602 691469454 86697878 572745428 53289735 50207923 540911744 108493900 236679174 980137293 216916347 177111401 544301795 232247605 790508384 888973391 563350394 124530406 816269564 898864856 266655501 934360828 544970996 405218641 601523542 151663007 693966328 292489046 264323546 56907962 987929165 429019783 909866554 176599334 953085415 896619836 814050602 555205872 829781855 113094267 17149604 895769369 707760006 471943351 964865768 749240549 490189746 83659025 460159179 726331767 136986507 31392419 317782538 203346198 525888312 221314339 971630416 84539449 447915939 993353606 631146492 671064931 10915712 335620438 850395779 250599291 766660605 437882179 13449748 287160474 515973598 251903919 358706121 118481985 910847945 45669522 87499016 95630396 511150444 405526648 932406412 680780278 518940018 843983448 184848228 563055683 775690321 159862757 516043686 262916980 905528200 929302950 524094275 71024545 956348818 941470782 901671049 286244777 963932205 73751515 190094072 709215772 764055725 828129562 461199460 654976051 463513730 96617128 384302735 286827274 173998435 643405892 723289511 382682484 502551351 397957511 776183530 344203923 60167394 182018811 123936516 728079667 865372220 300472121 203793123 490544374 595715026 584165706 654992880 535616573 166380957 108663489 611092467 80184524 909257498 165327022 631365222 778278582 775604001 368574594 317810286 663239203 372545006 271949301 705963645 716810102 975100843 102252814 884229372 381808087 764947190 880050993 382166538 243351268 131201816 956877896 337631755 450936341 667449329 275273805 301329763 16063888 184001666 499695979 253653573 863735203 892082251 31241201 161064655 998712525 373687021 268507721 270710400 738447013 681693777 865647491 324733447 541606244 260374000 903935824 657785063 370644348 620682995 195387958 759622099 482473521 777851003 287908301 658967879 230094747 681959009 91011984 833953698 523159045 953286476 582104842 853563097 965976048 283330418 151521805 972682920 572770253 892688111 263158375 137165357 697493916 668446582 227570004 489010331 738203502 122341936 769842250 58188148 578763980 584224401 833364549 747467879 889635645 115892376 474289973 831648286 363797948 86113607 72124265 135500600 32608865 738575405 431262705 766534132 68951503 714427894 708458986 413471848 212826827 77332039 510239733 623835164 522569542 731738460 941836772 930860661 955612473 171941662 719570312 806163028 607789201 796667161 770253704 157817058 963997386 797685761 381397331 869981881 97109533 201161811 917407229 427537880 880733819 199035081 408568550 609971539 22707675 104833096 998508085 376827407 516706968 145494634 585065816 612300734 446754736 831768614 685953123 205690685 911905539 253585139 893413778 642257155 447919753 637582288 556493282 427420634 97843635 297093062 101188673 696370327 306280621 422070276 774070871 580792605 32284326 241857156 885980559 157047138 264776205 251479719 730966915 433328800 34612323 908631064 913668948 265657519 466918096 244490761 138858930 217172528 868673172 250675747 163993226 991239663 63826572 433417333 532062668 677984052 355003738 881665509 434701294 927715644 829481304 427746382 467467276 327990171 151188486 250677481 695413049 550515131 887793958 905182755 881430662 439195059 555535128 593674155 166166318 693167944 891669098 177652249 86501760 157714268 567347920 356912160 585579745 727567092 864105091 8473714 60827087 725487774 694138032 653628563 314161333 274517146 299593886 378338861 951880692 797202871 284911456 953474854 40197318 222287554 608932035 622242795 362887878 988077497 746626321 544340779 198183976 285153770 822074592 15797240 238609067 193932649 792711291 306248914 818886460 673211387 291049273 31526593 127014688 772054833 20826987 319024243 58068754 40482317 693785055 222561402 845050282 214257733 58143834 22431493 379991878 818722811 840411726 557219575 13312146 311141702 381720566 846395551 40642371 166033214 137033533 328689049 205683163 404225981 481950520 803618351 11761356 895836292 7395258 933447651 563960883 832883004 405756192 888745433 113129755 699928212 223992076 485352855 456703493 394416718 709643646 85099487 207024275 742673695 349991638 492935677 682807264 319807201 884125949 629141372 942551311 394165170 536453422 86296827 55221476 804374615 147640916 653258971 936690083 643932782 137769121 28606932 495437825 355966625 867326277 642407736 103909455 539582821 714274135 365842779 712115155 179435760 840175975 361035126 980424978 890422004 161360510 866284917 839539857 222302273 309158690 842225716 26004956 677507129 663857696 735031230 965792962 21808807 283581462 851087056 281016210 505066211 200819900 585654659 123755682 138762074 412371131 75931257 457924139 919932327 550341856 710446633 90636775 405857819 964292955 188392828 548289494 997410116 557000521 582291245 125227837 532503241 481540621 693155222 443440280 810375642 626128771 170467236 934686804 957896634 93418369 569655676 413996498 314857191 427444856 357344108 943620853 720955496 905240879 664313339 531341500 332368549 30628117 399325206 689301099 632735260 946859569 835965368 821867601 459350597 245586587 418036592 646245015 439703376 128636986 163291490 558852465 135980729 987649008 989290324 999860898 942157388 523699278 275788060 309533188 391532331 892839482 801240770 668524382 510138005 944422709 752291427 287069141 397836810 402849895 597064644 723609223 332959202 699465082 682321946 524083918 912815567 893317230 289623831 496127268 81389273 994376615 30361474 457895985 801600267 699174587 206796131 120107524 854518091 622385368 303587341 62434905 841782426 737127048 212965029 874375623 583044145 380671802 781645854 800416546 228319364 397654164 546775054 497819936 223589906 803143018 51621874 610959111 386757505 946702803 561305135 910633470 114224928 444288978 742396438 470217681 15770793 115704384 668992479 245086338 557260054 516405227 517266027 823073631 538415372 266037939 861691483 585145768 286163306 659916267 897448446 685122994 675051149 318737446 112999785 577004501 636881584 963920970 472000347 648889755 118903913 276145114 609725732 623888959 146227718 747495943 328025948 296079241 781536715 923575326 12871009 846287554 332224534 416943986 914028784 561152917 360969795 851534743 467461325 164457488 269018547 854050487 772600180 474197289 252168374 602015216 652260030 808033516 219498170 617319271 294111082 943632405 372171296 207623927 815671991 364599667 274323103 252413856 648255093 593913750 417485026 811596215 635190680 772280436 919497111 754614623 930499253 73542935 98399987 582432861 117193293 505198837 494721112 437629392 762987174 582257694 10286666 930058630 61496365 947372232 858663110 69373615 994388548 925379745 228910638 890613619 750410925 67015010 127696027 842436694 237403447 739017809 665784414 450500345 550197443 480904898 990029073 572570759 414867515 448190242 878439416 202584371 300443222 726830222 792297235 844915935 26283860 665802411 97091110 979598435 140655316 654352402 857750731 927464337 700954587 922870019 622695221 376769838 413623273 906686154 610754208 996394315 780127690 402864237 759204500 559067582 7294706 383141805 504428304 768067177 679907893 362766593 105682722 112820001 880059481 18309430 418379024 136196799 559212322 177913680 738791354 671007991 104490112 958123495 659058937 601735054 502096351 27716303 432109237 185477272 795955965 146438879 951655855 334456011 657744208 74459314 829986074 785678174 602887738 405595737 193980820 837892228 720152516 849778803 513635249 437718771 984437931 940117950 54440699 470513959 10562877 876287636 322240206 5737342 619139867 152944639 955028533 472741587 938646682 82736259 944337945 115835212 806201956 696845932 577270396 243051451 947295659 236330221 581742671 927925416 591554389 697449901 374219738 426741434 956427055 252419977 57447724 48909544 71001665 708636765 774302429 751571607 649641090 540851485 119610709 677935148 955446008 651439093 866579938 142675744 132662028 189301017 44697480 722572049 957034515 146170229 182597694 850969887 670354007 354714630 750202832 788369928 494760211 665307023 878907257 363095053 175598904 630662622 877485439 731221634 772128007 177933448 469921856 795986332 808099463 775028969 922469854 836566189 418371110 832914107 886345652 288775612 783310544 80635416 701372527 355308233 134616970 848229022 960103613 40494797 758627662 393757958 982307948 75510635 652099770 338816017 389144901 455460126 307073816 335476708 46340926 374649879 362082818 850882276 439791104 99922555 671273734 588634486 76143749 661758254 919866108 355628145 43525785 526417284 519995666 618478497 936255560 977077444 11677715 998956001 471327390 562613862 646386100 148835106 493364363 249873817 618636373 140831568 207149747 642246117 290037463 150276263 300636885 317071798 893734410 662680387 13611817 302557399 517460473 49539960 961904857 288675933 263957985 380190017 582903165 123014213 504667269 556169649 981613144 455336265 500464563 275797886 222677647 885252607 504588405 736272288 46810697 725390921 270039835 322422135 94239138 591189789 302818093 842659026 665140310 496520816 8837877 845860072 179734827 225525609 785359782 36896566 246578132 200778720 757207446 205918781 179212144 502965637 563743546 897716004 924907585 60042234 465764835 128906843 302311229 631495611 180675772 80000227 671306933 486166961 161376820 27596086 186170812 292569165 476878969 582070277 295458553 169426463 390447084 82680734 515416915 374469217 633249732 202914607 535011006 62280088 72107580 588871759 70173739 272079362 932455865 160211449 37663334 888322881 726605079 36687333 297864922 75896867 730988167 464220268 831529501 174681843 170122037 11114091 363859478 359426400 168988624 298063158 805105613 928133501 887485812 767818193 991844810 976564455 534325342 560288879 469175137 792112202 254017735 741655250 937899997 279521973 596671486 652085531 145885809 82272879 231676806 53059682 123197081 76108248 100962094 742667029 802334539 369322618 834945849 680204772 114449897 818608548 643811056 473700847 680988999 117212976 449578873 111653893 776399888 523599108 981873605 630069655 24736752 742158057 20404495 110882115 437733183 475304140 300211620 361075278 331131944 458091285 531315675 114603804 636101338 624097548 47773739 634091772 235564383 584919407 438093664 695694776 284288613 967596359 557730315 821181088 196954601 698541670 148665778 978309715 229514339 879740697 666922678 197457274 820077448 591026035 631465151 230019080 756317762 644443547 9319471 641441142 685988449 276361046 653635248 57436589 710129864 431902133 627363654 865986352 996655723 82457669 871767573 577635239 670096852 906172375 113561989 100433178 617134366 707731714 863246890 150314970 664560415 954339742 638705414 671761090 980215036 536232098 22050383 358890409 962361522 619928969 603129879 556269352 573500922 626269098 338985201 625508662 443386409 64743389 482076488 518730146 743463749 893565434 492895681 113222256 394468047 181712589 12858397 190416079 901608855 477851168 621384458 12776238 873141636 751749883 319458108 240935605 891851618 272073277 422162498 869922863 447187463 699083213 262852872 474846369 688891012 944292447 570968072 74408855 959207942 480275602 856658454 548547514 657255925 36248513 583978387 31858749 648767924 732750225 963399785 974485708 641317145 518593054 646161572 34523750 186636248 722314373 112416692 219680405 687947909 368598283 632668664 904163617 941464066 614984458 488447502 776456843 676269730 3335220 500174612 258178958 265535075 673079899 582041665 835056467 239864482 406425877 398473900 364990862 946064991 678007714 666651070 776428780 828147832 945880702 303465233 248651191 714224416 729504660 660196161 880144908 709283433 979309108 10039574 713887056 197382054 657882224 125085435 433669346 443213750 882633244 938341241 407913548 316404610 565421864 389984396 80770776 331810675 995182831 592984513 115095188 165924142 584810433 641094695 969698655 288441007 528611793 916751754 915364871 287131354 805662473 567145700 354164953 379218652 698353493 477956209 511864522 237390689 59821659 720626440 683614400 723005432 616558963 722580692 301500881 761657088 994473691 200055658 286029845 674019634 996391237 519109197 357277041 548141044 676544392 331134343 878382613 955925980 233586403 177398240 270457575 481221686 997620819 642224421 30932498 538758820 826845325 75688663 5727750 259563969 812341770 145297718 66524091 440328102 184118021 145554216 561984719 435473504 688787249 108495014 550820817 49435761 759067320 873047769 420389678 91179182 275620843 352914213 271893438 430445961 470827849 810580253 895717082 467690883 889596545 276551990 318552381 433135131 613973332 261926238 663857342 44338901 71152325 606572483 413655192 584820126 841361722 737541827 164203658 823264940 385593453 228935264 956757652 387060376 545470638 644930253 768940851 697750714 731871776 659955329 482314635 738660894 374275214 991525980 806304617 136451325 547479691 169384632 503643267 11972270 807022958 499683849 196819503 788653563 634175383 324910360 692456878 717629457 906190456 275958084 733956239 543211771 831293316 978676192 835682914 387381146 232257011 946236560 163936535 978693753 586067058 351283874 343894371 380575097 32432309 800717745 415445771 490379487 909515404 890070856 915580121 479505384 97461796 798673898 549983836 116081443 719291352 538941336 253745379 921077103 644322323 529277923 118006343 940026789 253565473 32943807 790582758 240926593 346278649 805998403 193954873 205365179 827546491 675447064 150123009 735844995 308946345 470703755 182152140 82169413 878684405 326205981 46978249 685186349 164110719 320746923 262437685 78680218 832598094 452903689 640665390 353774239 955079680 989369106 652316367 602317895 27866697 652967715 951514393 789775294 980279217 682305521 577359435 748936414 924809100 464868189 333719756 421155591 304229783 514138200 459226843 892941201 15636877 858248176 4781547 752120724 650651091 162869051 720355802 797954487 750695296 478283472 260370156 337273237 299191483 245941016 998625921 737796776 458171108 533290537 767088469 398114008 738256583 673987845 104657236 62472001 45646042 18534710 249902017 206582897 503064705 224340107 40664002 533840734 764643289 481251807 953370791 502556918 756024304 765660209 456122721 629534488 216771958 936166222 588870251 392432380 946929596 402561082 626737548 513774179 157039668 590116023 397101202 580204391 509302540 859715151 559932674 761287163 12712599 464552977 276188205 6941472 12956860 1414079 889218808 968613480 698228098 187572162 392967100 156941339 277277092 133367171 794903727 992305397 908065519 846208504 367304341 646604989 550969273 981721483 609374528 561169340 587743625 412399227 677014492 297311493 100953648 675510957 901261388 843848116 84242691 727912135 363270077 309621937 670363776 966049623 518927303 722657364 610706951 767431869 902346761 534071113 595952130 767336041 886729744 418238408 5922327 785186510 501117856 53798438 56600009 939528395 89765693 341413372 900356650 289562163 700622469 136637879 879623452 13183144 165205349 566826420 937138777 215117587 127045053 387080153 57543281 100842712 141953625 657406537 376468489 569826486 532221594 686416337 776061559 43893942 609053960 558541170 748256350 776092852 978353487 895243934 743635636 640237396 855773958 385303203 866193085 166224231 988164014 390912746 760643340 847316808 774248174 679191947 840166045 6225673 633877541 806412388 294345023 323256988 154926304 392811260 97368172 581721910 232753609 282858453 532006431 207967848 453273726 795891223 514927448 132173890 665506541 623291335 162744621 340190944 917078300 13479401 301228672 897339005 654469756 682471919 398269506 888545078 184650064 986063386 707305392 685756941 767833011 887319334 765628333 134325970 136556144 20082701 729399429 326660174 565645862 573936639 382601584 805700449 839785648 339282212 494614603 609166534 333521309 822607976 564561584 13284883 61645948 44463727 433786162 797014301 979228080 92806711 554007302 836623573 219082910 117592012 267825134 384704162 618662229 835902232 377869443 926205226 816131736 466593002 971232356 686268970 969730190 746869088 2160790 151592152 280914216 255831901 566216695 890833222 701381001 20222176 994373617 799705278 44110945 707271807 368216426 176175076 676319067 915081948 54231210 606038472 739757023 650306708 81324369 215630630 661907938 940033349 376735603 746990456 258563147 472500765 635056531 345501387 24999064 794637942 947682628 440982776 476953635 989476776 543815 131379640 632778663 652958850 840919267 69277414 13403805 121588426 935624312 319501421 736588202 173200009 708026176 926778874 966359328 212646943 859286548 976130329 822549763 351812047 494249326 914739990 517460177 488668621 591895661 72421774 743430219 319268620 660638309 74654295 98930524 307530940 911109851 503657170 80444154 388168300 537680184 588925173 918011611 499756825 509072990 608586414 580121431 684653121 570400887 285620977 948550516 622521668 254856322 818323542 447260957 415007119 988167212 696246447 565604036 728453085 613957733 664247515 784167162 237840402 200226943 562450117 827424871 377285851 329558526 129174526 510680063 845319217 127198380 847103592 420917046 118636638 745036463 852346492 516410806 600165199 220148015 715766474 852537533 354070720 238036227 686343173 616058798 144702879 738032094 219990127 758441463 2925236 225871968 64266204 589865617 46186028 513890209 203738104 703987577 171431216 124635940 205233058 534866771 249071664 96405095 659151341 133226382 735455187 847588774 522441844 855680447 562555306 102334751 337778506 329146078 616850233 822891187 610524506 508171391 500968325 62943594 264339364 724949730 984004869 751566488 426564701 526844895 5003501 109440148 520555254 838055961 53379186 604933859 559484168 144117482 753643905 752867563 171504232 20903640 782572361 813577124 968348090 716422353 463863695 806193810 515927372 980625562 553541628 334532503 347436901 655840489 352463754 821423239 944498574 403443143 375043665 413694496 556715411 978423805 832285680 48216227 294863735 433317659 685193779 856896574 448324051 419036071 590952929 143542697 76553038 640425024 735671926 780850092 783791217 379134850 384308193 405492213 21769234 573035269 792380314 912769493 187814253 366382011 205361624 679539964 909381258 968117276 365062304 822111677 621365687 890769444 540285853 823590295 635217370 876956674 288797245 2669026 236455844 652030549 575368837 917583523 834505074 812040895 47667059 680260525 744669095 754081989 7631917 238743304 757278411 127823952 515533975 204794948 11529955 818879475 978832300 431921001 636922819 92563235 849060265 198844694 387531326 168383526 207030224 563670494 838853347 873544184 808164236 826678867 915350410 103902806 898892803 726516196 489057520 538595496 707856430 127855549 827769213 799642870 571668622 324801863 487351160 822315948 763853720 336701419 97753781 883233843 39540527 600568035 937558936 347520591 317924525 585042339 695866359 782814386 208682850 211341858 549254954 161479752 133297734 23493990 223276838 324206336 961937929 275248807 941778392 692417314 230638963 527633342 873275511 455573038 867736820 140230606 597865938 932700384 553265130 766636210 434946844 300343884 941988540 90237157 349892706 105724879 341942089 598527089 494457271 370198847 290343765 513851714 877819711 188628315 576808423 480735401 255666763 275583002 653679973 626789920 375705229 494424514 354321895 951583030 228872829 56832798 504047215 864686520 989414928 235538336 950620821 632278130 867590570 190040671 425554902 172663595 71933888 843939497 157770243 360729716 403323835 124313344 47280635 811575583 405549124 407465477 375227245 399298541 284429868 901566735 818813500 926510059 775027594 336413000 125713943 371046027 646252619 657033692 549415765 642931124 249235511 915326041 744136091 195395611 608981524 550483826 960825647 833561794 747479941 89221250 960832827 777777602 620133314 388430439 527298345 955005954 375924977 610845062 166371713 58186848 440010391 455748952 213940362 736616516 817346680 146786145 935249484 797950848 534695290 268220937 835373653 544945173 473355919 232626033 896890377 512274958 760596325 13731062 439102972 219398110 422412027 755793316 877752466 890805995 665901436 911293726 826382859 724494784 927132695 44964264 760895834 456578386 925109324 889208899 111656786 41210301 681757461 519731005 651614258 380420216 67985703 478770241 899618620 605534838 628830921 191209598 273354536 791933733 778638883 19849679 729322971 307519466 2614215 486848968 64816192 734021936 649045544 386758914 296595886 200887927 569844076 58898337 452536250 966963620 169919756 299545152 24576329 112978953 823983985 666699464 267660476 393392326 173805804 809757907 455865224 111668335 509372513 436352405 962815465 919048243 233070026 95990192 845491039 792333275 816482288 578813760 608302128 303253671 662058245 150094214 397680398 704757004 833309290 280578612 876518606 578319818 191188202 424964416 45451705 841795403 396580416 269190425 229740216 461587098 603942367 956542453 822087292 633479769 86322668 672625110 140296697 403185242 467399577 879002537 65422233 575279229 795580084 738243329 632597698 214483234 156111578 46003451 873195918 855299332 460102377 798208687 331224837 545461539 169653642 832204806 188097215 89710379 712624014 292694788 261442431 201000687 592001222 871020009 40529885 344957617 189468754 201076991 64389664 414659107 939624398 366180669 329002954 406434527 780180821 871211960 413625818 898766345 857107203 191752344 248887006 434374728 648715388 864001976 95671026 888085400 911222715 374832702 165407588 164750053 346265388 935883792 89332506 984702409 734524443 85132608 421576981 262060239 776582319 320014721 753975904 320498074 325341405 58636643 841339858 286535393 514519287 261955015 70845121 427273959 652376596 640644842 366222237 498608316 154112524 22823200 59413616 44893732 792215507 454940412 983453032 636712714 630268940 650795215 414463327 583998854 350143353 801185718 324693669 347200950 829182944 88679749 664973516 472765320 648478196 75256400 753117418 379847364 879823078 250967892 398681781 86921403 295197954 806696620 169479611 523725726 169407934 989897972 902676608 348995193 97240471 120894200 417370114 346319679 133382923 204067187 87210271 734313896 124924734 199917710 927348436 541869193 896681909 647320544 133061397 42738745 714485084 343649916 239498254 912657047 27845044 982521145 644028640 329697909 190590354 727482834 758518700 998399444 354923271 884047988 13418347 711318513 251117423 654251422 504262075 927911077 148109977 844899627 166008569 465590075 114122846 817157474 527314770 121315252 21763909 761159906 32380021 686878303 445914575 322406818 434971835 432240856 468694030 831587478 658362452 508503683 867642250 922313723 939590786 170043583 271877080 535152820 714847840 783839230 395523516 860451037 887564134 648752606 13052922 721874580 749679759 89248388 638295941 730880374 873860115 262896697 353684772 653635461 175435013 874776023 453669238 672720233 582347146 600172428 57646766 629243650 164006200 867590346 663830862 554850621 154211333 931028482 897806400 143686076 395748295 573691278 69863911 123638696 262501862 739522893 731052829 126214486 614260823 133210783 135820616 624126023 676974158 881574280 181336548 570453172 558071533 21215436 252573812 974974938 817574432 463456646 329524862 24836470 268348265 14560952 303146154 883585765 331523385 490584221 401306961 237814114 222797050 718219515 689990267 350241205 870424746 548124271 924622633 777003035 895721787 668822814 396737940 684397819 352291423 439752150 304235738 302640531 518368969 177456551 845380811 421342483 201652545 410737976 28790390 855335804 532266587 337804881 88862936 755241260 351768834 266551216 118222711 403482858 601355894 177750626 677955819 738595426 228217428 510621705 761149672 40071229 701481583 940658102 641271453 861465195 12794723 279211950 369876846 906845672 718824647 714981230 632693819 957198848 889356926 643907272 700596497 886854608 562418828 981760620 410223982 244237269 14922271 411936945 376765213 863993630 752862412 13593294 84167182 371443726 727912387 38026874 556058238 859187313 716937512 462239005 297703131 960636387 383955193 5218143 102646475 235209998 540729128 218028207 933387744 111086975 253084713 981694024 190360615 802467082 75536267 247139722 109748919 526548679 956516625 660141329 441826480 38770104 354256046 706456216 779769056 849971458 806706475 348110479 25818462 405463003 930178818 680618249 210975303 658234713 962587065 426820831 224670437 417101735 757856011 238449528 723911544 843157679 514644592 768730097 227120007 315295741 289057463 708252871 626730787 733020832 671023624 853413955 983612597 344221450 925939 185964730 16479753 641547837 142578269 614891732 523919540 586182984 41342154 897887854 790928797 289713323 586364215 891679644 704994600 764532527 420457506 628173175 615256253 548153110 354698703 341690803 520666572 208260732 956554150 691349814 954818015 469779401 954216720 70226874 630978572 477791181 877209824 113891500 973863921 636441140 957448538 20292723 81812658 460215746 554389763 900010362 593596989 993986040 530290063 270611164 345388599 765937689 800108931 988656022 614958173 541431623 502619990 553757913 104023443 83226021 770859836 976142874 321292001 350499167 699488944 347919912 468361936 741438051 548662891 715398158 482385385 950141319 848241225 459994848 586354889 931217530 23985555 482824042 718412465 987965732 624741382 81497852 922253485 83921813 662797021 545134570 235721570 492420322 892454656 629848734 704851086 750648113 102271877 176656771 975615967 804310232 95268585 408366938 802176688 577822819 661719900 63771309 130585060 731767258 121474957 814944925 747785470 984968029 414925060 188334234 955094241 703745720 554961359 44887881 909271971 730741137 206586498 81488895 323598474 382660311 117045785 784773314 273671155 963082946 14567888 221494682 968708310 327495623 225909798 957170669 604793558 56464476 521133806 506724727 596468471 582879884 607592369 143764754 993439828 563717116 381251618 922412370 352536655 937046388 137452354 277111389 994215788 339332793 209741844 699110198 702170426 862595983 62783086 119681376 111917914 205341322 640479076 384606093 393265157 295399143 637288713 865050801 94129497 557543617 136348406 386123653 218951479 359220725 638342015 239863231 715454034 758730633 345738758 75985144 992803137 660587581 100865016 50418622 330593735 372985772 668892811 163539482 230662115 523267110 280190171 236341986 885865649 745213254 65332962 394802986 394203166 99086989 349850255 188461887 221768338 148382166 335180657 560142678 434110820 305419135 26745820 384724586 613452175 15564335 20815107 323744059 495617355 421920450 237462385 648053395 120812399 635171777 540916077 19590565 682208126 596438523 841658326 119499560 737763457 542573939 244733049 99856237 387202474 675994808 929401963 88792039 429135295 669371633 777223852 425685120 275502876 869236443 440951884 764511636 629717088 215521610 818680776 823465377 454666498 365893941 753425920 713130596 188790868 814094801 120072145 681514248 428147662 435072065 886944329 181089162 469605202 674193601 489096374 829149088 134288661 529451648 214876058 582041636 297666576 64425540 293886257 785344088 324101635 568839623 520447708 503897711 78380964 961992922 832100198 788874533 584295706 432796108 166909455 190155684 542931359 909451265 519657109 186811717 26336866 735080678 608754882 147548288 541939349 312723456 704241225 913146855 672256302 58203863 639461291 694654247 899750527 634183165 644987885 439409222 909228554 863187210 70250003 293418377 276621653 99543898 201520839 785688157 455109794 948212979 547004685 391484009 523838815 548030825 711957005 829896935 180765369 427226259 24915565 394101560 488744523 430672529 652913601 457264185 198941878 564632854 348440951 738330316 867719059 941784622 623245268 471605591 733163611 125920143 946101680 858372263 368970880 643222564 212710051 7566698 923249949 725068584 259382208 690192260 802647168 798309486 73429623 447132997 684764122 948159712 700244161 296188894 943422279 268348012 941320338 235213557 853023423 897354304 594498797 312913898 902749491 297944570 410329743 410854837 240057831 669704852 393218304 647781027 457969163 610671202 18731164 942402320 694860466 585071962 523422788 988418567 382855926 415858192 158210387 454872074 148733579 505100167 680190490 74491242 383634040 878355372 728415329 448119072 787501021 506534985 206427087 798559055 889409775 363467526 714573829 844389011 830581220 111416146 278851492 665220786 98743749 224679238 270823544 170531883 580153241 249563020 550582499 877225814 474228634 989741470 182489102 594992356 432642816 434443843 329953730 233697347 888669344 402921901 480279849 540783312 241820530 540237643 930374979 247980453 478989428 623058068 382374240 133804789 248674003 735532233 258948790 612664558 819323997 35461808 669130625 311545742 463083602 311407686 196060813 598668396 372764643 872333208 216057728 207082248 581870881 178888088 311539277 707911385 386000419 662409121 402037814 346689953 383490923 483972332 977807189 166736091 924127181 370444141 277673612 723794252 744268891 883584954 165303446 329284232 94492197 84341709 222773816 10458166 563592946 899568514 413592187 685173960 92853658 277202874 619078585 727749386 108381083 494995616 833919099 352226279 348459240 567421599 676894942 404583964 331577147 827079926 908377776 473376604 436315095 562432011 317452114 282208329 988248838 62276812 723087842 680825314 997296051 880295005 757698024 58623267 368693415 706735686 65679833 1175562 767208769 877383022 656161046 559658602 42884033 338035751 38469170 972051632 505841708 30081747 98668759 19826139 433712114 416824198 123308338 381555512 460740275 188726698 859301412 446575648 590870172 29314430 337628275 529667086 242609347 498265488 116171137 414682338 226989104 995735628 208339923 46752551 497972079 47035882 902041875 196851584 322974266 93050561 490407153 886507386 451769994 668990720 794632118 655116635 419638169 692004287 280010886 532595165 326549130 116397985 142170087 756398148 918925555 266316320 308795769 598706517 703682380 975621469 808295413 22456138 573173171 819651895 313362177 492379347 327791172 129954116 630699943 305505413 50763571 309319229 672919993 877754782 657716872 11695899 27744296 302107272 789535997 588412611 272999039 761885994 502631166 938996982 815471271 738201425 84896234 425938153 112668174 336405492 742009302 399038545 434534693 893839521 247457955 282414108 738950703 503696820 6959623 737041095 299077610 334646552 586931905 252241869 615393815 939926816 969305362 5466918 275888569 302106166 237160784 720397182 267130754 802341309 303774678 742815691 988252472 114546911 545589705 929529459 661353073 906269202 951537511 816898936 414001960 262445155 238660506 980424612 893526040 662612532 890111415 339456838 353876384 442655158 185627513 597211970 986779685 185089368 735596606 550032498 365473059 98653860 254133199 728383416 336748334 554542191 41223657 538502681 429920471 589957302 277800504 248335837 268685952 625919012 183396269 647449185 502850024 108245429 521258067 5488185 729245963 490902470 606689094 734208869 768061206 861131960 589604062 319104497 13418294 98289061 399645102 282818275 598460046 112934573 816365845 309832856 405574949 967849764 347192688 825804279 439472348 26955151 422720789 150317711 410375715 616358141 590119398 402029026 333811226 989193505 454440607 122403778 936429023 464690000 185692501 218165321 580586139 402622018 436947949 49160681 348994095 54017811 787126713 556167706 454621308 831936813 735039647 858077067 226079903 85820239 723146663 768793332 788095513 988494789 926786385 562768631 715153271 985540534 612594570 401098490 871484277 671186489 371191637 361052492 944827559 683212745 631450384 168428687 629569535 739914768 637321410 75957986 19969703 142055958 884549737 529652949 265434094 774629522 301674491 738521897 216581501 287899307 239746328 792628998 760477758 970392985 493018183 346598958 599827084 249788593 936580083 418886279 443932101 928299896 229097399 863948891 198281153 126974010 220901282 551805859 175130360 817610112 593559444 275105091 640408663 327123812 201562503 39488283 417778689 596095493 908472980 308443710 736519560 226414907 544431291 12976111 917621802 471175422 330974678 762275829 414477836 75892277 176774331 304480902 349972965 304338817 995209582 561495106 473159822 65828395 730590562 930119473 9303621 112828851 782660586 790402589 260738331 268473785 907442551 787283123 905725682 613699189 735155214 375294048 526928133 790999539 307540549 268885245 321124992 92603801 147522345 318392979 959758485 161049283 871951989 39385101 7382599 940410698 885824881 325765554 407989757 337812182 663973986 728691937 557284276 7147919 796392273 857373356 482127854 242168763 784210409 748560496 902133932 509785643 158220343 764148808 391944497 801667903 642186478 474932446 487452061 744534853 788793817 925616858 899482327 636880605 130100449 681413212 642030465 53470370 799380219 206956384 721126180 831213 149200626 177432779 347976058 292223842 814637794 802473010 340284322 600433259 4056697 3085473 356062215 611901942 601134148 705500678 70878227 884537706 672320473 248556307 611053508 454241365 441693852 513805508 725662292 738545976 979197582 309266124 137020407 567655211 369725231 186878038 629516258 189414664 755977897 54339559 6223499 201531796 648633692 435684790 812457513 563830904 552080490 268246691 879739869 57035449 246939852 20819950 322938457 899870974 142419596 43176475 985354299 398717139 986002388 624312427 651784391 639762609 693805683 428165163 205676158 185841092 321942853 426040684 117802987 908119506 640507155 46539809 686955771 67430380 395398450 417836530 796494912 851559854 757351824 428440138 87412113 733259898 66904969 143281674 734753587 543149547 300345143 793411905 645266976 42887042 391908824 190402099 807606989 997815926 710535203 291987541 964042301 594937079 327645163 396185525 377866049 243244581 52086382 352344688 832538657 128325740 684651955 734505239 13526044 407488143 648514885 979488970 836213503 233810393 629474916 158723514 440772804 301198411 235846132 331409406 753814504 80301408 719502898 175866618 677749460 364897185 155825797 695851673 271821205 328974544 774838472 11254724 892972396 974597678 658417455 2239818 565716471 198870672 113139832 381266000 906097828 123858796 526417719 964778579 697990797 530376344 312544261 710654650 980068540 746662446 555716976 620853791 68230994 838239195 365813954 124292157 996013492 741661467 674453041 550033878 731650776 67760235 458112923 906194872 504276289 855751629 402927477 126702710 245151934 213832106 954707804 328816267 942941527 409608616 247735935 203069651 617011050 758270806 46783777 509183188 81519094 791194550 960056449 778216804 425049090 780757509 918296638 18928733 573344971 340181457 150747075 121493124 740490159 362327217 684506174 625410245 516780191 715591007 168299761 264478204 609629049 853690350 286576525 741411970 272873733 63239205 753926992 501607711 296283857 561823849 527650986 424675233 480842254 796969074 318804801 598979847 911851877 881454889 64897419 593190538 540224834 196811452 924382828 984121173 972144714 933765307 683230187 673311836 794079136 956250417 815680189 889344472 907218559 615122268 962638484 466136814 376824497 260387640 631794502 910894319 551189067 194903380 137117430 676148703 829775788 772753809 677903606 348628944 206730244 804096511 208667036 832393418 520522961 826593368 802187715 554065132 297073496 532847016 262042198 716350453 797836795 850577611 436361191 270071307 679800484 608142105 806369856 254441118 586610560 48505247 70424029 809474085 44097781 942516591 244741602 412312422 920219426 823893432 81252765 996681122 692844758 762523125 578861849 8080968 650549706 5797041 216058235 636986687 249864501 497886231 126244775 290309065 974358149 936254584 263618993 209798188 240242647 859123442 59301099 734213205 818481036 959161383 602076838 291140539 62173820 142525356 257357310 218041262 401111179 922043856 196363856 667489998 438064858 559174815 976506196 198272761 762661357 797776914 696413368 436302071 656032153 563327362 410685228 181514470 705372055 764317961 916936494 665937630 541220473 248068998 981345972 417349135 951128378 590991915 855263427 138500119 688170831 970699948 178102371 95346082 745684148 959118527 388228784 787055318 832093341 204515241 426296424 299295191 952414847 107592090 473315734 323666233 50881249 95701689 68091725 518477335 516455736 69646909 95216109 999155344 880707093 125260750 684466832 87376664 165860176 240946561 9878930 89890319 688943988 985477742 799957027 879733467 509299397 221015658 325011281 699482219 757275120 918029169 157533028 892546318 946785551 822502883 185956502 803555022 746448122 213911250 669790347 849160553 685242402 732274860 148090856 48698 840487811 34132076 326078426 304009475 801628675 906174619 777099298 689351232 580735749 868038866 584047961 800476069 455807249 67695689 437238370 480111415 986215459 266535439 945764384 975323843 277558639 688926199 867910162 682976734 577965118 494716273 937055068 333125795 455492476 859171542 880152829 443242247 640945219 18644148 444964287 433089198 818945822 162686312 499765071 576928622 291569507 330710014 990081038 219312692 286838025 172023566 985518775 695063443 176300951 630799854 497988604 309325896 56418991 734820872 697515870 437037718 247844403 116705648 202001903 497679647 369115602 651174078 881875380 736676706 234177522 368908160 440912499 843691556 642282344 367989546 281676700 693158944 180841811 735795231 750240052 954587478 7626471 747026995 390949421 499951097 40825556 270215826 225987425 657586385 6369340 254057373 5139299 847842189 476797033 289745144 338442930 328232051 316681374 709130557 509892426 356320534 194712730 828087112 358849384 189617315 719984881 365387355 298996942 214086422 425281307 134472552 426601224 816972619 513634276 598594237 571497771 223216412 634215225 595417831 181659357 73606102 914464633 719081264 955812651 582728944 51984901 366693854 238667119 758740323 149650623 580191300 129048570 616423554 22161873 664389163 221800196 776175414 348121637 359342734 534857344 646915509 461352662 367620157 162636454 266821065 491169591 99782348 553283298 757309654 417049984 838567754 283293131 857430167 913654883 276296561 394687301 835505133 107259520 126234603 202342840 130988344 239625876 964815482 763349013 41494983 350110897 166817846 471457425 105297167 624239947 149819957 444998722 139026304 797811791 369673790 725209193 865386793 160430437 904072037 587470058 98735431 365034126 152052728 231882389 381385997 608890995 485337237 405957761 49200878 673443678 777504096 137291895 533348900 778338344 139237709 550030570 57347844 967136108 862295439 135509512 142156146 914856585 939639455 144929586 448947306 702853239 743328982 912371900 502939744 448598315 430652633 137812984 379635529 597995830 374086685 567683798 352352481 12751038 413385329 863156541 541114835 446845965 398805141 268184223 282235904 459704660 65307968 318919760 19215829 542502804 561282078 924397489 83348968 712222460 776368414 95860014 638490460 898259071 601069673 682911481 647730978 588078652 588320356 881048984 626554345 373565932 70221140 168475081 728412503 266071646 594343465 741917534 396033883 536373290 229207705 752234373 688394481 128160792 78338284 120245645 362044455 290065936 352988619 380732518 151482570 408348187 945739104 197268863 706307642 677807192 645536796 545307721 199385013 766568918 287901065 745755637 262090386 185868791 122503535 382153721 160744432 649782044 983685367 359544493 404163971 993053879 923778096 94779352 657490418 230878021 439099379 290631476 769876934 361155880 491256887 339376082 788748673 327596084 716049901 248368942 899300840 130234376 980268771 62330441 582397716 283227542 177865271 759175277 350075035 302625578 540864083 955020260 27878736 256538261 812429061 743730331 219712025 849738126 394865344 577369165 443922561 482566942 469698226 601962396 891313591 608279848 51470007 66288715 857040689 874487233 402663920 38515565 847362466 749677456 147875749 162808500 287201908 41633916 252167562 379957564 431865208 824528492 68196356 150117616 169456760 506437223 646016828 867086008 798669394 729722807 808981050 347673065 904420600 691998801 254753169 837292569 664895849 877624850 189774196 698242193 666091491 975048182 517774498 854826881 895161042 504003564 745346430 197113927 190574991 827460992 58938258 144578871 401099520 882381210 374602168 127145038 99866612 844072401 290140834 595972240 785067121 339820854 660403580 221821283 636071860 487246689 488063484 373809504 345141260 525711796 280816676 373956251 519276681 451418820 720264407 368081006 482178839 636670732 419980596 467971283 708220326 67674359 549573255 631584506 306170182 632377611 910694360 227187339 247188861 472308568 978610827 567831422 207793266 85973399 453797003 858882900 554432895 141727614 550841576 211904617 672489053 78826605 660008293 626339984 202967491 40379026 754992366 386758222 650291056 927158341 597504475 353131786 536923178 310856478 200500040 470575980 532299441 333538376 355307276 584348790 3154103 978673853 596853390 895023048 223547984 222022448 292864571 847456295 13029144 747072834 822972163 944779862 367396179 550601289 30368048 604781473 894473057 221817125 661885035 416309800 44728483 897297251 534143646 964024083 702999041 748284229 451786039 251207060 841652450 171394290 164636288 650348135 396613202 690750447 99882284 960908909 256681649 968006066 783066728 60653443 472394984 139920283 380941251 516054176 469947559 372942040 198451311 79972569 509617155 438218548 619695372 180050991 565718511 470763065 479837439 389737033 950493557 873949325 475298581 2042862 807126036 652498052 215097679 421479144 538458925 652006748 138004632 923366847 840739293 353635403 175766619 125218698 294655296 350916939 933149389 80424926 100826341 703130041 988394090 979634618 440310377 864887542 527817442 168724044 303642445 839214941 667023581 123059821 825847798 634623288 105435809 613590612 993478194 25172325 86679589 655208377 451220939 378800715 620244178 166913856 208127124 983009082 25253096 836407512 243607297 969213294 885704705 737330917 434398876 437308638 558836823 920424452 290797956 834919315 297756238 564691261 668526870 573602111 937117319 766717318 4431463 936104332 460037609 983163594 637026993 658693678 146415652 683911930 549267186 811648821 263342779 818428901 806212752 158287440 214221129 566965577 313636642 441789975 808388465 180006202 71464125 288918612 847571897 684969320 783329525 408330470 696130567 275359744 528894855 731704608 555445163 591318805 134919957 209844975 407262595 814870230 693457948 72136253 422116475 377113058 249198338 356865532 669383780 559958677 206484618 270160109 68514283 674360650 667649611 852769989 201479348 354914806 613200749 139554818 865891463 935790383 676111477 196532405 810265197 743415244 467776379 69922907 991914924 454145593 121542971 288896085 75130289 243157172 852278057 259285637 382919930 706518314 253969809 850541365 574488313 564535754 72729884 748127675 889628868 655180230 718061430 119009518 985565569 126111022 952965922 195720029 358349140 146193082 424289590 923981186 416190826 440491095 334521898 727195882 989971741 203914281 794933065 742518872 845990842 923378979 751840470 140419488 772705726 579176328 530020470 396355540 813129910 294205360 905628262 722266124 732956933 8636934 75698258 952075716 619674939 22080679 80249826 392398159 610290578 693713488 234139148 228094170 716788947 435026559 128958377 249846001 749221750 763477937 123732035 558711942 20485967 295198844 312647086 604418848 158267647 943798354 197778012 966695119 418604294 721782085 646189144 69208963 398352066 196823595 290397016 698160119 163948017 448253647 527620056 371558570 213062872 995969825 945805273 399572227 521752712 713281338 943258877 261490998 304025125 57816993 800461770 816809197 709163032 946611420 147414523 438885403 677550208 703604595 829080987 592583106 595744286 131635046 215593299 171863041 989569741 866900696 140596575 647613376 906509662 820957223 646319539 383233412 214496468 959266757 450640325 741120054 190650670 626879192 688814842 925818166 796570588 140169611 285444007 986974633 415478808 740118589 46479782 267461653 509658408 966401498 684137012 561762017 538230714 839348422 297271856 231600841 586266025 40409986 848086417 662625869 563898580 911558924 18535809 624561324 937923634 358214722 23920337 268834071 98923499 486648631 41236141 171516178 499710227 210666637 551698318 342034634 564155337 95607095 655692873 252241995 776642496 341228398 444680765 838621603 467180741 1756911 594801127 238160197 477735884 26140375 43802598 631062611 977480219 672315652 91179741 972170936 145955919 249752901 971549190 841780884 678402002 794647617 828748311 921569799 564975374 278387581 157109368 543494914 584671656 987262693 947396710 830065088 86552993 996774988 432561297 626208971 201552564 834690697 186604141 821103048 385059859 919569950 487968258 543653080 184370440 535643045 60658708 169582032 973899782 927132252 498205360 20244957 391561639 611169327 476610225 185802354 198412270 944090520 712299434 551875236 475845916 951787825 660970766 72139689 23376508 345783764 777258123 382374669 887613721 69792218 582997186 635240154 588331471 172132450 242221251 332927876 998995269 5462879 768086911 157381461 57198371 611675421 249678971 382556611 707505883 555687534 519037745 548195738 479817081 137451774 5030730 610079652 474706998 50887126 182089504 49208582 592298545 978365279 119502542 839996106 118378099 202548933 400076641 41616096 24438480 633486389 813926761 834734144 533645677 388381269 606334614 168592932 62032944 439299858 390231636 263639254 831518350 39174918 495930442 562561483 364711224 339300265 915103066 186510583 455818893 792197844 908925663 254482786 721109174 197863868 239628974 781521806 19676148 732098638 807397158 51360 597202709 451257241 625418929 880011498 152050571 618453813 345878632 959516311 370119036 400878528 279474866 750217001 892469917 751911810 498018028 329621074 534230545 731816420 695386735 148766766 802489895 786019687 321141776 90470726 949653500 500328468 953501006 904737463 931319963 870838598 267762555 193857011 234264149 915537305 171369201 853838475 726494947 737723291 159589252 437717126 696636606 551537968 82422353 645813973 846268211 402196733 663758178 370111655 715762774 220634634 753975387 520452716 443921523 413654228 700856526 595301956 629251749 875024155 267722782 4832410 554488408 899426346 636020422 509421603 455282271 418028249 732102281 156106357 253743584 488389610 95131805 637033166 405256584 469362862 969407249 156209636 424302493 725704388 556793069 840194047 572107902 925735370 126129091 250037294 561415009 5488642 405895518 796772140 722141101 370789013 336096234 221144737 484936201 998358547 615379969 44430396 10495285 339488395 137395033 853716461 824356062 774456842 964197042 236336933 418623765 184889178 157018348 320488208 565318046 376245817 792628938 376029452 110428243 127639188 31608637 843450418 197231035 716258244 741409735 362032121 519967185 838176420 215169650 327195807 131976892 745780523 239312967 921983278 178521326 158214344 429816044 725410498 984738415 334844228 510150416 139650543 526517213 547867716 245020430 764388660 413775020 230365266 594795070 105139154 205079191 522226657 335931944 848073442 818182285 905142785 338162681 301605834 613088938 988963990 861622708 142296537 464374621 218590282 774325948 713814312 162016846 38953447 309975143 317478855 476873177 392956979 981745529 143901271 180261104 467078850 938054011 14075100 65680548 524672740 545098773 419577498 907717552 253008560 546529916 309807552 85399922 205469802 199510406 205707687 475706566 138881582 745709243 198421697 856464594 299721294 82007600 345671516 670844332 440729007 270313297 483112655 128118773 879248825 836021119 582950206 270942318 22214462 593481781 97578547 36499087 210599331 640996309 110116227 450249487 727032437 986255017 874557213 18535700 706311183 742878594 692072348 637274542 237116709 996448136 178977916 453940177 568033120 943530428 951061926 807673361 473565254 135195508 911242297 399097686 865525756 254505013 35620419 910763066 537557899 152331365 542112365 500602268 751284622 119686577 935674027 708444904 859987343 379880676 807127993 963182935 630206755 63984671 974316805 136978214 324095401 359630697 420004612 45139629 731252369 75180281 740051512 635695687 10422296 749184218 567833369 274494025 637518562 370790420 132624063 471892922 987293292 745366310 84739635 529014002 429379962 614695187 71315289 80565777 968685986 385695821 666611318 830979853 831772215 390989355 953352371 582734702 988690878 320420708 2005550 687457846 703140064 11868149 41498563 927656403 991972444 591131592 809295982 943702705 877117160 379291421 541775557 626582005 574598941 890528453 981253130 794029698 558868836 861934276 169812721 348476801 907473693 976722115 195436370 401481238 570323616 156300689 845180150 195626483 680867047 125321477 207748267 236259826 108970608 236742791 349462339 988899518 827565411 273618312 445937614 698031247 261759503 203866981 264551105 369200647 113806059 475609308 513063530 999993977 120495631 200066457 606702104 283966679 676571279 181044123 498818507 282882999 762609178 705943211 152706710 645534528 106715256 507340844 299780705 659647845 845443711 118876735 168045093 961578927 143466399 468994228 909162217 717494085 511202842 426941024 187663706 860909679 297966060 737914603 701877866 564385355 785328574 861876822 553097895 320928672 299414457 732242609 140668077 608122363 95846222 173022081 589732191 92857470 828334918 288303651 936053139 662995702 986504024 780649126 401724229 267910547 50887257 189805316 996959451 538413429 586095715 441921683 230526898 451239835 875394549 901582682 517670804 322950050 363323588 364918722 685993235 532476896 307788635 235779615 589435275 991324056 423531839 264897141 782172880 184869267 199833036 881685684 551889461 118802144 828636396 361259543 613779402 811461822 556837038 309551080 761524688 42888949 560349877 658952693 18991360 753024967 322779195 599704993 305219420 50020366 81997909 329409849 383218534 60014441 190653692 774303814 305737964 436508155 388146260 727833677 557578598 887339864 256934812 283695752 154259698 611362961 323147077 550946492 108057249 935281715 285132166 771713524 107329122 513053070 875257151 873560471 251615709 726105233 153271397 336914308 373706790 675721058 610421037 933936660 299144131 919662394 750976410 43934199 933114279 40968703 383586271 298184524 159122084 373259558 72433388 300994853 265615147 870416040 978846795 47297216 917323522 221765752 376732226 221547897 176014943 52065914 485751463 901327513 735733918 636685236 780412097 583907917 80756691 826737999 75909096 982289172 37139077 818350804 133521600 825193159 72454877 678587312 358056060 540944377 230257811 209800878 733716213 395030968 471345239 725582718 300711006 640570951 469131518 778887481 282421222 475451470 729361611 684741847 907512910 42609973 952630691 111565528 692426354 122271945 959751666 991750734 937696562 733707725 54193619 112522925 390248739 617666028 191268823 802212253 441329990 840780021 756249375 474219836 538950502 27899488 15347340 118230247 894559925 128796917 773706892 935485296 590795343 178538514 145549248 59526742 252754590 580276079 291097468 70320017 72069627 861627751 702867805 224674246 715616381 394692226 394624222 974263030 391289555 977480768 925495129 859773205 521497029 566271009 637554443 381203028 681423865 580287601 707952493 882547786 503110925 132484699 913160815 877078827 396931215 758692547 646874998 777151661 693774376 294843446 599599696 151933593 674009189 327871179 25371526 723422991 937674358 299304468 343201475 314456397 390509917 291984521 296187734 981795576 59513707 912610461 610895748 589014090 984348731 740292224 483348887 620534754 555102117 178867442 133801467 297369025 242442002 846555123 289534446 584900611 997980475 838985643 606579946 954971574 934699572 746610046 80282586 699789702 13696149 612172742 232358362 90887105 949290073 448503513 368361286 500277465 151000407 645303432 253899686 572957075 61625221 435486257 435592491 248528070 573955034 850130610 171418139 260085402 472678628 271146997 209521830 544036159 861252409 801324569 394013401 40508776 551509631 882427911 998653510 940118787 328086430 444353145 243111977 170367898 902509825 761023732 987995525 525226876 701186577 1054380 280046126 122091558 628989744 688850069 196969583 819679350 521505642 232576469 901463146 543938398 438434888 540695335 29442745 193690485 402278689 579634607 902463692 776004081 726240415 840433620 637080047 494485906 418506692 647831046 345324915 855306809 626330867 341748081 325642391 340951517 482687205 782099693 637995534 149116393 374662336 829950200 942574887 895807441 704374497 967587527 819956765 756683716 169983940 761909378 342195315 987058117 485445103 47586324 343546858 604305908 603549902 876819604 662496601 477206480 914085962 624815356 654376130 217014154 372573086 532802793 101744134 709563619 26097051 686153129 272891487 680649355 810258146 794405907 251280441 800817532 882536456 594581011 887262118 749567604 733567460 828841377 351736986 946885232 65329311 151490037 943246699 939483144 5461813 396807288 271035163 158824784 173153365 215033190 673272332 20858701 62937385 34352493 664963492 712512835 597042197 599106148 62459212 887053963 935813547 127691263 825738833 172013152 97934419 437611311 315068586 403560356 737912226 850203906 510981979 528511171 258821046 877498698 519107944 640694169 997908163 326295982 857499806 535018663 941156708 175944440 168845242 369330286 338961670 335941514 174788159 193743217 977170087 836006409 305257346 607590259 392109136 319727125 929301260 814127174 138392972 580079849 851202053 30323043 552104171 978569641 711555715 421722023 671835231 323409686 218492795 334621358 477756356 797057635 372944588 397736138 535426473 156353433 161274761 397258727 969056697 5474931 896825520 216989912 790402852 871444750 572867905 89403308 451567447 421617572 942110948 934084802 645626358 273955098 494172659 128298488 472908782 810372176 668078041 219853350 987938955 491883064 845597011 469328046 456358240 460509946 879490440 797574124 80168354 454026688 545327535 235892102 804874891 631804328 927816333 668780530 631313903 692699610 514245234 876510801 305480443 525250485 589104154 208785889 288336071 662445884 163294586 896491410 197477402 578418988 79592115 195871533 377956139 761556963 8014874 401474076 1270551 865226002 882529770 376598402 548185266 557541785 331337721 994317220 854097536 796295956 908612033 661355988 9655864 283638791 770034210 475690143 40738304 810179801 437892857 344347128 234061694 478946579 70591721 708858626 662090223 420970321 845520827 715647960 765365318 35250938 529781813 391144491 223981836 418227996 27645206 597978306 686326809 457015929 215301851 843431182 927895373 765394079 252768722 865535958 962625689 23772765 355704980 551554963 952600445 936987498 905974785 964205115 541175072 746111157 798433223 390717810 385489095 44133192 413462568 36669962 551353187 736493346 573886134 631578197 178029928 863624572 128827107 972883372 625549136 768152899 201843511 320098669 891273939 603065864 788205747 931372361 23529616 955016984 705250079 509802123 600887941 371283082 81494850 187824963 137008277 554755227 548552798 909397620 312976830 140924159 832465054 910801201 36829901 924177717 797010915 176388913 963107392 14914145 181673805 803049456 560256831 562105579 96496565 58654808 142536117 136644224 267677881 150209585 158505195 272442642 541463206 819045712 971739068 163670339 42567270 718307262 879357550 455282112 76019771 497939996 347370334 438449010 300706496 635727816 274011225 194033053 68467192 690159705 779941952 456347765 234972082 393870882 486314522 270040580 266711249 91483604 730935245 144494990 634618708 59417347 888565257 13069798 308547347 393170354 252367474 226278073 70103495 36578715 753778173 372323036 998931374 319834976 220725374 207284824 327546527 194331221 417685300 962434313 242837124 926978247 966152426 203281747 486111440 87315610 732110272 119917769 824203541 648480996 270407641 66730989 331047165 381418905 229213904 644414991 841049549 841865363 90033046 589040592 344053484 745738922 643800419 451602379 914794087 992381403 137735017 819805302 597090170 431841747 289782444 688277066 568439749 889450306 952146561 196637014 272822975 708396375 947325162 952303227 989038552 869557461 118874524 654914699 130236156 505534616 984570115 458753409 600802864 713609948 959779122 122019293 995694788 402543667 804653585 40490376 300560291 648176281 363132233 254975512 648602201 326463503 717768685 566380202 257973765 1999238 697598743 837412378 147158961 455595142 131591580 170413755 880193591 716719439 523198064 651893447 548481725 308068669 616928838 207362313 980404845 843634317 672829448 521213244 326984460 416183211 710067651 337307604 96831706 286909311 35961327 129376402 185884110 167468676 491717846 704395696 143145303 522354164 288411034 743985921 943703900 942393424 620732837 411507619 161596983 491494977 229361337 802991953 62857586 841044033 848222562 410091734 634281109 524873461 597859526 426753062 522379864 975551538 376440009 983314637 587244112 783592032 113472296 63686450 970002107 842721329 732588772 811457196 552675197 173529298 640126932 292815093 910565127 480024887 476260011 528110833 537400194 667932656 947113398 114268221 362055696 534003575 728751792 677353180 734412071 114244315 774316337 746659017 345352193 197113266 165864014 856436040 285482353 919863486 360242210 114625707 893425152 123601782 309185156 190130464 810908464 62623047 152849760 188527915 811317521 218001770 149499502 241501277 73032779 10965332 465685973 131161713 703025281 72989711 98372849 309860397 387790147 44105505 594245190 544726808 603136236 669253577 643817843 701016764 371388420 852009125 657561050 853673480 323131873 268990839 263836235 147993896 372246792 119858859 221691679 467535716 922653542 2668498 296827811 477414346 649681950 107067097 543379249 942420504 449762648 247109369 309126659 259724580 551431027 521564984 124873884 167296807 913736816 237794659 25746881 338874691 334567354 821879379 456356532 500515913 116568613 785513822 546289351 819691658 869222201 523386326 801324686 551591833 33122199 683115640 744552142 162739686 628404480 434058596 869014268 591935919 566535655 940853872 676769408 982226808 692877649 98677929 837979110 822116348 214796995 845108751 731565134 990443546 228924913 557509519 532361666 991583546 132679134 815262206 226587862 225009949 258780600 959125641 341343077 887160313 48512846 631129451 986724256 766235693 459372327 22843777 934946447 318575993 501745703 567405954 398658692 578665065 11356504 871996949 449576178 195944252 123206697 92479394 325072204 924970039 75768675 190798514 824800437 968389923 106250502 409865458 543766699 330933968 484246342 973179487 75550144 276174718 999664634 750670970 902622832 630439006 327770091 847683496 283343892 698170821 297125934 786918944 630964012 572265600 667874128 339622254 375708190 546086960 252663095 656359532 583218358 832144320 479902821 178488727 933663067 74136049 545645460 763270161 13286210 628440122 39259032 991838351 203920418 187481655 790533029 64448754 770722940 192879501 216203759 11386641 937669659 97472605 602697409 693578217 796477712 60895570 51988634 108608514 556357576 438558797 291401912 299611393 850133866 62437825 15726757 87160675 546642778 787379306 73083476 906795718 448295854 130045754 676673444 51191061 660289527 743148325 181097600 694101210 113493008 541828983 535452440 276012709 719958799 887851584 169715117 689836093 810015318 566193069 7749952 304976056 246287870 637172437 32653176 633840993 925192422 699736786 42707250 914870473 115052652 863896943 88269155 236017464 265788970 921391639 807257467 821337939 744486669 914300128 711068254 839693246 867144607 966992304 49579450 473422917 915269726 704758819 311526226 239076996 583923746 587123266 982767380 126970668 529439289 504102115 825715780 40720399 246599474 288400480 169619326 993155791 308616695 811147947 398784873 155952386 395438667 988894445 324471770 241297241 105662167 319047655 472600454 669246899 297993644 833744442 220393326 457291597 351839951 475082121 593368534 276160449 151836889 906984020 197936841 378635515 667248701 123336367 117160835 838458387 985035103 222670071 777525101 814253541 996626946 371805908 614001106 634296713 108956450 370111202 173078216 8012580 503412920 697710527 244948839 37634434 659290625 609945931 465917108 168948996 243176205 136652204 419121086 465746009 923168934 74718942 988571758 653572619 581163936 741775512 46726869 425163928 588862781 63947361 965174942 970238481 925788800 849736721 972210800 242374761 469023635 917069748 654872097 12039426 702213791 154916107 985314976 304695953 867094267 806201326 224432021 391963476 350597772 832310832 94663844 819344477 120051843 762634295 17919828 292150110 18457469 942513374 557566234 760308540 390091361 566089655 303110680 553503895 776735722 369469616 535818129 855086978 164798478 833195429 632082395 854236146 180008584 606618442 570942783 636683859 421840555 610555163 860923693 995965126 970100358 55805491 418017024 886555139 790824725 871034451 911626346 607102823 542517218 406754615 236805887 832029910 623271663 705888790 881668766 509711010 261348660 494970308 200973417 280040333 753060092 796798354 894605733 27072965 62680616 275154743 39515069 447766590 814056330 37790016 91536526 207521578 165083848 180896527 740769296 1491824 874117370 341272870 75520175 947420265 501098182 95046598 506135105 936696128 754026161 577706993 36934446 104327903 909375399 886817536 144591789 117356410 754917812 105119594 437856092 375384776 122210164 688148749 561077130 880493727 472207550 537445154 746562030 93906110 284392717 963527248 100677511 360477072 505836233 38333062 537358532 130588605 324722089 703194921 505206265 884388848 696275939 642250894 679114328 112533283 633636865 459537759 351854457 784231369 758560169 508083935 836070696 875580696 25000221 269997034 574393684 292247296 649310914 275276504 204856811 573581659 720918684 148650596 518945711 252180754 899383636 770136423 253261451 538454548 88150309 137512006 852036855 846885133 136876330 235633364 32193016 951463663 809386173 85754731 156863700 222613122 847487115 121159155 817478599 231593515 338189531 194727203 684375581 316904624 106137912 95938778 788786055 204817642 759672473 490448965 110192159 37936631 931742461 350353234 152018138 11903782 168157187 868026458 770304391 201635145 145288719 419104455 356839556 225820326 927578258 753321745 152773258 921215517 260941975 823146441 859956236 739554495 412458950 565026914 601085150 870339283 243667046 896021373 86166960 592243937 953962899 149894366 572027156 52054930 84464543 869191293 910908 887198597 135790645 463263075 62741716 890385122 809401933 626936174 791176332 66235445 589964080 283378681 415178194 758066561 92838646 153996147 615935968 388654085 848153339 248990344 326719640 885699333 100504859 466958896 572713753 477839749 536106952 601724237 890290599 886867226 790978806 161292950 858648200 285081953 831168459 519179983 58043242 695095490 693319629 728220269 163106605 378075124 980245707 896515726 951375514 496819313 87332887 43347380 636068636 674232844 462650538 210410111 829796713 71538544 685516097 352441060 691199648 30774342 318814688 379051596 213922457 629799458 690738804 524315144 599473557 87819716 686998644 350979414 312313778 725512186 82307387 148667265 720604940 872538667 409739642 938242782 722395272 335295973 124153243 309462053 668630509 877029358 398315571 879489033 568179906 971727999 727693560 935357644 917643935 829251564 539198409 544135075 222457531 818273829 562520756 436208022 625712 732402137 187362327 542081443 861526517 99178018 90781512 532383713 925399352 610509050 529063984 879859026 508484000 34416387 415304094 321212227 268890494 18119351 296398885 618861052 828656980 699357196 711416438 619785940 197348523 294894444 898580247 317980255 903093691 877329370 251928494 991837871 319819156 922638372 737935518 149244616 474566427 29938638 840716374 164957613 337539757 727727027 440909459 902284502 599905913 306687596 93468331 839426161 160314195 842107086 346501218 758660638 761558601 729249764 658808227 806616797 449280055 367582341 168570040 329391069 282456153 390609219 693852367 301355219 453686813 647926082 391133764 405594688 250953179 149627635 566108853 187781839 305046533 425235261 475481557 349469505 38841492 357154751 651495321 45215123 805422570 898999453 706420452 576564124 845730699 215041883 958571993 278307502 958517910 590183867 366176009 128139812 214460428 378660461 797621547 528830122 567719329 759199711 755775428 27044429 134549660 126182397 887404981 90398325 694765257 849086725 293109281 442391328 603539654 768006767 11491709 248049420 924611252 724349448 261792955 262645200 217372164 66934356 823134617 472747058 67896781 161284376 294988331 114712910 440487708 531420584 654572477 743063876 176294347 240440005 159342384 542736389 793061472 621792496 154307483 345980600 937807457 63984985 858175329 842236993 406856334 636075045 31074441 149027606 408440908 630689780 526556654 736336502 457539669 561637086 532507112 872213541 463914321 277730363 791977052 69583305 119469839 251145430 842022304 73865875 459416157 29070135 204785395 886948031 22469096 172302484 818443 374053487 4672877 287488135 355533305 611082667 128406935 501629734 136257576 104934608 848843404 164144940 135736419 634116432 427574113 101799542 797064992 477890017 171536535 321325738 470511407 166106534 165075800 714378812 197161533 971365830 954371642 565103656 516643306 347357846 607196993 392268616 264263230 353012502 899045724 463075598 218902871 106474966 439778201 813243930 767073018 107139100 512644795 333181703 231602843 260013769 489884474 394257944 477206651 481134938 522527540 571684612 930512817 350100119 437753267 325042103 781681044 416444999 594839911 98842993 728317553 650315302 641615760 413935053 653510021 925424105 156702311 561986408 56887964 86388761 517624180 169671109 388587641 373696082 164483398 712412757 985369526 158753408 396725161 44305406 826515668 230685569 9230885 369677685 726669322 273766700 56163697 415232531 775762455 369192369 453276644 71708929 928952325 966038086 679400408 443325009 226786169 334797373 438408814 739275460 509704240 301719802 560296122 670832592 966957715 673425446 163052801 513665568 488757762 33332902 728234701 269029273 730875436 321103325 586436072 470618617 558502280 546294604 769356351 193612897 143810515 775417740 400717870 942553087 891658328 490855466 984445578 385071568 900839496 920873380 921502591 773807359 264237188 446166654 624124346 395462565 524467770 986541085 135479325 136417744 356591786 534557082 284249611 204050674 126712170 565466505 758578994 50500569 644966737 209262327 345030447 741873274 494813450 309785390 205768392 56881976 742816988 464490054 356966311 828858369 598581180 976358566 556293447 954812239 773595923 971291668 816601972 939878648 796225333 954914749 533822664 508698951 855409895 626985556 284343333 774229833 645328752 112069747 789332630 534841727 695655040 827763921 31807116 74220262 77371130 685712986 653079943 982824058 670783661 892563962 875578317 69519873 47762087 950658414 802168105 224825599 238631484 870367122 693808563 254406088 336711705 608711368 332851062 386703241 9669001 902849806 52279054 74289643 983768938 455525050 430283443 684934127 285106856 553845866 886634904 579150674 965256 855191214 286943195 523559341 549743900 254305977 999793420 669804223 817400710 267290463 292005493 540960314 523130034 829720339 344568538 956898978 111899428 860862617 518978651 395572096 322972495 799347559 621042205 523240701 917660354 395191564 897326362 833226791 368890303 880985863 306639821 693561564 473251107 944569997 403644002 622762253 355951432 167650673 953452486 176462289 865895871 377713656 713551781 765221371 341159593 389788382 247411012 681849422 24230481 126439853 621079235 502923457 488168080 976680564 869660166 127663384 506024274 480439053 564145688 936444255 523454204 899053505 966208375 885947354 747191626 391403016 194018717 847639281 210465532 903692751 687775019 846370849 378860883 631832073 818462462 470912953 530478011 552734016 49286286 568746404 73127204 753161101 73234969 123111009 876568012 327854222 584689468 378644750 769747587 873429215 386223107 473744182 200060003 175596917 333995322 278771624 836196182 364435201 64180157 108478861 401562945 573990092 476282531 752887428 844601735 783791801 76348389 52479445 834586287 822109875 600238126 928995001 230276264 487626168 241994355 123641127 870806095 682496278 703335580 176827650 934024729 872686709 945516717 510697272 556706538 13108150 135658952 576244639 589036718 493388524 568534442 563092508 919715458 861384908 550194609 362892061 820891317 725649566 797496740 976986863 308618653 30657260 574641628 530318157 824617269 213757301 674095052 32355959 651584392 597134725 956309764 590816601 866303653 406855095 227150140 123712483 447829601 612277323 616699962 357966122 108283724 736109880 314951821 603142079 196867993 563227676 861135958 990409201 783314713 358561988 818008363 30417308 550114120 148045104 642047831 469649440 571927346 942605580 340733605 234317904 874141435 875272860 69336237 179237908 90277520 929573740 701821774 668281725 634757428 830881548 86036418 924535947 420369404 630988369 689256155 278221910 938551709 426855837 270162790 982434836 555769273 182817205 30352732 198398903 102964384 500901025 118516027 441745215 562432329 573728638 195870157 804108411 302712753 801909503 301653293 403577839 743770405 334118862 120878127 339245390 640222177 80660060 911021961 237574139 660716555 771539124 380250991 172183997 71871232 325254153 338626962 761700938 163545318 522408687 515815032 434538463 518601590 832180706 405414689 643685220 531056616 477405092 369038382 618137022 185244015 70579189 45257778 900485345 668984534 664168148 608091081 375741468 837665253 289167157 810447645 597155364 610181951 77384265 84078587 41641989 458641246 776785245 785607800 116899616 923466639 336083596 244745428 414821353 803321019 675312946 279565655 629392449 665239298 458018746 36030132 741112347 407989209 733563579 980633259 586161935 647579938 679723229 961772894 407251429 864336789 309889431 566998138 304654917 275128379 755458344 985697742 764558930 374559002 341321582 124619519 600331561 650664402 199789905 744360463 631454153 555776063 591992757 466394648 692629342 762353066 909768542 331736381 390195896 489899499 13547294 902972370 656699741 848867803 580753858 711725988 254830889 404427156 565911115 67628457 13767052 571033718 722954790 299678710 714955530 481149040 306449291 896996607 903747802 711754521 279959431 733072703 269535524 610285459 890446484 364642634 535908249 674530554 335443120 408546708 737557459 237569480 318324394 706658370 687996125 662025952 289202288 809116656 838076557 324922731 676576359 519947475 703994820 572779591 196416308 682650704 447328038 619647054 134272468 392793144 126058653 224372161 860705119 616038830 704298281 395858008 462046723 482780182 444427263 222575066 600479375 794970904 88975002 804913670 414806827 340321473 444678037 287966953 585546854 225287094 723798705 745344696 405863916 807556272 399477041 777673663 327275995 378659528 711953825 306648066 375769341 692226561 158133640 643637163 282766042 451948022 378752644 356066593 780289760 184973179 391685701 764161267 247357235 53690572 103668391 842621514 13479473 248151480 612836387 13984394 58991736 315322732 235522629 733252921 554260938 590483639 25588338 773808113 284596680 646662054 634705881 58193922 768792176 671502593 63225463 85574460 981107890 521809968 24549202 597142287 321249963 466270376 800445300 943367616 601090644 682669525 986679047 519981283 240671094 91560723 356699495 834326458 405522947 151579481 150963633 423098899 72189664 267455208 746454547 685445054 913468693 3623582 459130642 4015398 768201788 460381791 939843534 491258908 955358528 331952719 477612084 422560792 629224042 515235814 922158450 575967313 930147540 743414143 617058940 998607824 756719004 968220525 270545658 958159177 252760688 572310446 367271074 715303166 464281644 31616095 767134187 726127630 558831217 759122213 453369770 676404751 880270305 937016501 673215343 28919998 673614339 28582571 207079285 279391912 653758981 886091286 713778856 537140845 757332328 341766458 61382297 492389619 482999551 794643265 284367992 431346893 2160954 507811170 718471497 229012299 869805727 720156472 902478759 74489911 649366738 745023187 594440024 535576381 69739641 595366401 7493985 249975581 396372066 70551048 922048846 518114149 427859029 747154327 472097098 961470836 519529131 200199135 592086651 274449160 457970616 284270052 489575282 391660380 479643350 323957398 563796049 47540359 672895314 514254524 966404361 967459094 178018891 133704909 395165986 215919562 739710655 406053185 461079541 706631504 976468604 167112210 405319375 400175190 424033855 388065583 959235959 626720847 11500762 987105717 544339811 749284665 679190575 401053617 809849197 663050946 297708914 828474692 95610688 316914008 822646695 136003978 786922847 379817638 633611852 642415903 269128047 554742946 698696840 989587431 763720516 696231279 422339263 443946034 288584470 383912092 989544642 299680536 999099697 907783422 780218089 538574441 591133374 356178121 943412908 175156138 711408612 158799633 949490663 826710905 859465675 692907411 472147158 2283086 806862449 976363226 848631684 983973538 404289772 327011232 72429716 870379490 102927670 125608515 587026050 987544662 823864211 930192323 524926715 250949428 258128087 912429622 63480213 288042447 276115073 179586013 81027942 535895450 316374030 160803569 780651264 903160118 594363169 263796520 989934963 134989808 545222352 264098252 108207254 511120086 7225022 49747649 630082138 663768849 947857173 282890225 832574408 754112110 488061547 324330591 635096696 623255080 676856263 369886918 69575231 822252385 359849450 731209382 995909180 917614672 702143408 858086856 836581287 45754110 800475263 198331440 93771418 752866207 389877798 529498772 619226215 659146192 733447494 473301258 369024447 116732536 52036659 689255154 38741362 575762051 124572556 864573128 945936509 301538039 913333150 198841993 971793677 248413424 938157295 270893118 417030898 849585204 188079139 642160659 769896052 869872179 566482240 181382122 977881883 523809427 103080466 231935881 665789533 76805522 564994263 894352918 574476051 199461336 562744929 546419594 438149624 858968583 240925362 285785450 354130808 645747175 480904735 846276598 688864177 668975339 382348802 693443819 424091075 374859033 278138320 676987112 838373039 851614167 267420483 206098607 141026190 419620231 189945223 343284093 476651930 478844547 758287489 34138442 642885669 523552116 123729363 781121191 160462756 756936496 302574021 150335926 591105755 410701692 266675748 583101847 6335608 269743598 972864990 540248823 801227713 36637941 509930766 3980519 330488111 1433267 887219823 702093094 498859313 376224330 842748915 107324318 193824812 806886212 394844556 375195041 918848125 283550213 433514309 954942691 388239844 221019302 12661732 960553972 519350484 431975874 417545190 281602319 880333402 918999319 64144897 72606549 714983366 250745965 523458425 850079464 476051926 410597040 441951822 857614501 697982178 958872994 820809642 486754789 526166830 334955894 394367972 959172950 798982429 597783197 518825093 366631611 160733772 518467271 986792725 482732102 793832138 900422458 152695773 726612406 876917703 694191501 250635187 428557627 526192749 64136898 908895496 762520875 662889776 354941763 505840870 275657249 794380870 813014354 91841836 938196529 908563424 427943872 44784242 564460936 356934961 444014131 180972344 461138458 306975854 913332320 41729597 902509380 584976425 182721569 46869231 421666296 515736234 979367343 97595897 773038882 317430688 730394906 536742513 837347061 273460591 719615821 674520099 776305976 224475306 703309025 648656526 714999138 705750281 820920957 793728730 915470955 988514779 621571821 536247487 592631698 547880240 5798415 525647509 242090075 957700771 422245479 89018620 895849822 575019274 355027571 769912516 129903908 290568268 822416782 800004109 33644452 691409475 721932386 949098279 874041031 790005541 633961456 297455933 722434951 441252421 973335843 199469510 986685079 47559073 846734915 282103154 639512469 161431125 733980057 937020251 102672802 984856352 277330004 75870434 509830483 733605372 971555951 438020602 64749866 203819436 845135243 475069942 305923525 121712283 434722982 761816142 222304478 377058397 453088503 616288974 524205108 724154711 84511792 372835972 122972586 88334897 924445930 106456326 118690325 27803418 370655326 827237518 707733531 728585492 92195049 252754064 296313818 855954447 620158049 440133168 798915526 754608691 955480767 471738814 195349030 663238870 381118782 368661212 68468792 714800413 767364999 163104716 672546645 926180442 300970584 323595254 496256055 56700225 222064566 529244430 792037236 879612441 422091737 31406349 31822908 473963629 595436949 985396562 947345318 134386741 190278683 769209642 119583219 162180473 179662329 957033648 154917276 333434201 236817899 776203968 421339986 834085095 714277330 455605515 667317895 529724490 621176824 645749069 823406311 33565293 800692644 902090865 760490118 197649085 282249444 155946423 990252338 997399420 780905255 22022508 253732502 587374966 789030910 131391227 311781412 726476913 957861921 664874116 982691520 169762293 27237778 345675872 581686160 94802674 595295200 233607768 261041860 3196511 2666042 429659402 626446612 330807401 393844424 249808255 756706402 531459434 961535486 121628016 577002005 319104808 566079595 424561954 493960610 406316296 45220858 562217219 462195757 733187196 19044131 835625305 410600643 853842432 224317728 942342062 926679690 761972205 38700993 22111071 343383103 121807999 307366617 225381198 24350026 334728449 563207922 946500231 143224357 455517368 431877566 416250481 789876275 310458602 143637897 93917347 967080896 563768999 520279520 124353383 694080233 312974608 106573283 601771857 667618901 940587256 952279947 539491392 494673188 872396890 621065707 670914165 344252667 191806569 444897589 867359581 408637417 380181407 689030157 790599010 280651371 188045683 511045125 904432951 773532729 205023347 151284439 497184666 230852440 623336798 307848977 382971536 42859134 731332828 456561028 894563272 893279917 864665411 177180955 457708386 514943904 209835862 829667543 819095021 715368690 844224270 44170375 801859354 873930662 14470388 675426678 520398999 772847882 40161176 374088608 200367341 556992807 424735953 312398684 69617475 642531932 981427297 975998085 229488647 440813267 430662838 34927913 863102076 147277658 890658785 22429020 757869335 434971779 390354135 834466947 666361544 120488956 765658069 620752981 55273166 857697300 936501595 667036397 13989250 672780482 468126748 356949834 45597759 367599089 950953421 802396402 754219930 88925319 210660305 89516138 548449015 931319789 23534646 625837941 338415829 259225733 974563836 406536510 579073923 706078460 757563804 588430520 198559010 774773891 432068291 310276563 662945785 748052720 73443499 124129627 626560029 288098752 599997230 706530549 338817613 168245242 674233941 299405222 432531486 413103877 955759039 517975775 111757386 63768331 248370986 199407469 319680632 186420159 231949521 572944962 515976780 392800913 324615350 261441352 666648927 983819195 305196510 423269752 880517149 629519266 623797543 249672800 581490439 322526023 664871015 380541205 799941921 189965889 33849563 833501048 20591270 333671600 665699397 593708497 307325124 464668128 458673059 511873465 649687475 632541530 73343860 361785737 644431507 904453993 400246224 521516892 267513230 628181712 899663637 718833949 910435244 908310392 990135773 110264275 789956380 726945385 320934588 787484227 864849753 383995958 513435405 890579304 655693490 197613939 950267100 292251693 557533576 451192751 93752214 160449291 297418804 726407663 822855102 428364251 314523343 900162631 92770327 354865103 336154754 637488785 597765100 845182677 2808034 774060150 283945615 763482318 805366663 171414567 546822531 116615625 612377379 138954570 811550180 488654355 797642028 337456413 176385268 783082041 30935505 864778840 235395458 110261637 620250621 893989953 647458628 227773675 550795172 729537719 84549585 423487534 591896969 595823546 973684703 669907860 178820899 624282089 89455990 524992895 343110511 536339506 432092324 461744958 927519631 312904855 249259941 57996316 341653673 583053741 777336729 12206379 697041556 928554206 151532271 456552677 256852721 231677694 139259056 261690140 422662439 277572635 443719354 633166792 744265860 403042492 712217367 896981849 48522387 390598212 28115470 182819750 858966318 79967202 246588318 691775066 901865355 95097495 315098638 790194544 805112733 695147968 492690466 99298541 544947616 962349243 780360383 877504253 622130309 906231716 747007038 798181375 392751751 688221985 526084566 425154685 789491963 37432224 589315078 120746065 639394505 854929352 846323286 541567188 807600374 200269389 681351326 834023945 436050015 98611960 503573220 156231134 479852150 681634253 293994688 378144148 2302797 7739994 445486851 688000107 931082233 962204767 878449388 141305759 51139382 13729089 265910139 402988819 325735177 506271470 736519237 469855266 120123051 356613669 218825096 143138213 133203602 877425926 490997742 111549163 580921494 727585070 589582400 699654275 278247699 230827477 244802665 921005388 908539591 684395066 492853944 813211678 270838493 581453427 874442252 493638683 735000766 226305953 720391408 682881991 296953045 33021314 895894170 864971066 832461709 1429039 413913420 183238278 878048109 168056743 552264134 160874179 99752024 492479728 194458563 959924052 874539457 389312292 711321091 761252899 997364901 684212725 885490194 802194633 55541391 389701004 617212364 322150314 349658504 610680851 800798630 819245714 149229794 591689109 748619182 537693740 549856240 832470677 686356677 719074212 694150079 789470056 767990912 182846070 22656172 23274517 730034419 876472495 882322461 987733574 795135461 415074394 215447258 897834277 892184809 577720426 941907443 508639400 172731580 454445353 738504715 386964923 398557593 339431203 472166519 293618928 971584324 678664234 227044155 74080709 901478925 529715914 471028271 608933261 873908872 446833151 964732471 101960178 190853906 480006717 9385696 964449243 333459493 894418478 400788482 611344891 882429582 132503541 847929439 870513316 498162540 977947542 208958971 357850907 511623596 105676162 514590186 112514010 790519684 459872890 316341774 899990986 46315887 665303122 814028767 327712168 277295099 467072704 931620568 546998122 84988710 31998557 430246304 730920148 422141196 806822559 860820874 539116898 673264898 299047074 935974046 644668041 348879406 525448303 96110597 357090367 54362635 161949598 806986507 170131085 702912012 177543409 358805714 58106921 308246530 611770126 204828683 445977423 381382488 734020295 638558551 761312182 872646123 609019844 390125450 212400335 282814795 133476115 928491174 387134822 888740960 424522126 96783569 737051360 670044384 841068172 671953648 20817553 586600784 248113435 145499120 272275275 356639703 25518553 789318879 955176564 139784643 58336997 846704120 873082903 335092065 553614321 823234798 912241327 978618133 488182703 505620575 169762584 124642760 861939509 476033335 795115642 911399129 840013392 646924788 956799021 577824999 319673119 611695294 76085439 945032586 87459305 944997813 748746234 899480101 824607251 255616485 71505783 71016592 548684363 325271072 464497337 112063885 838799260 796901480 670811424 159288662 25014311 441366050 623471119 7164298 271568265 201033853 566783184 495999569 307334174 566084131 955942649 239303770 291197828 751944171 464359118 435324292 101557737 929142661 616208850 276455348 213296226 776782922 75427727 256824922 974774114 853311368 549130349 309964766 121622327 723938002 780152750 980967676 760734528 123453088 931439713 977725447 278339944 205772778 630173333 810050124 117291830 729934744 759659745 521736369 678849780 285616833 207471348 196383727 590735841 305730034 362874219 999558224 703474074 697309600 643997602 111377656 675857587 169196893 172083351 517971104 752816745 518003131 830440976 32869554 365419073 836830523 539463377 400695803 896891657 561684844 66546122 699350807 808449099 332838137 907395368 457071463 486943195 467717129 466639847 604763095 122506558 92975010 793830708 52641945 821287014 260084683 130322340 305874898 526839555 495389746 608668586 783554327 541124551 240344705 903172766 240116040 190704589 854693379 783357769 185234899 479937336 306484125 484573855 735662497 601686279 252382432 579196331 8886147 690840983 353402799 316437303 59031695 872206414 412157493 661214 909025833 441996868 421188240 80999530 99779313 43697449 36335960 667208304 511385510 21211881 919949541 549562572 85410459 699063786 390432870 138772312 172206145 202995572 480914317 292564827 970063338 625629000 990028740 44478007 479508263 879599970 406600899 520804770 766627747 70420757 630811537 677146037 624771471 325875873 753450831 951535663 836317634 286516456 447032019 598489017 887119778 726460318 916238688 643571610 944599870 653918573 133892312 997816658 944602385 639393588 953669037 576597283 77218594 751756055 544922060 971523579 304598318 427779413 568461498 322327958 64323424 758872377 307087949 349700345 696237635 258253708 246788769 95473146 901703823 358192881 516878226 652715276 786665179 283807790 328255776 241468598 846188797 22964592 873910329 573527420 93907697 746454766 917640566 922460698 777995572 43895644 701556717 834817374 376417806 569823563 938655594 937370922 908423366 270591330 595219029 175912842 410976282 25103954 971611285 351781822 986529430 897037683 103553159 417431361 972590483 986424683 737044614 92686660 184271508 473238876 785224830 426744468 904729062 645735666 533932038 570806084 672642580 554232010 965521372 770078622 824209542 516629642 158552318 741932307 316637257 421183672 967578755 599249092 874455461 127556847 513444874 811998494 742529008 52370140 174917154 996284503 20575793 816481244 541149207 658020705 103201283 138332100 569981427 154671783 65383127 983187900 839941377 615387845 134375957 193504215 6385816 553585506 233454189 402020975 451276187 440331890 388807744 608243071 687095697 627829803 599848823 837672634 611540323 597048655 208362999 843392508 460167469 300759876 723908582 708189719 873805393 36204895 417394404 658725314 197099113 468424838 404405067 636791274 187638323 464610708 710744237 93246214 908171725 288634255 578509108 167405983 185692179 134165425 618184018 664734746 763111726 237775600 43311833 304873659 778313027 199609728 371022373 718167078 633497291 954192530 109074162 534382751 37494890 362454312 965407271 192087701 617567468 476753531 760419836 487844484 333738024 456871010 953943173 152484132 859996804 130264943 299707999 460583320 536943614 4075780 956469568 780485080 119779517 514921530 558347249 249222365 942627645 233393795 508225914 127180072 819006113 971507955 987377327 386406064 310471334 563704325 613338321 100736970 637843022 463301331 236396129 817566672 824883289 463481936 693281532 689134675 768203983 883648283 471144048 795572811 355168789 666667625 680821832 356500568 113535242 211083921 788290381 692332165 564632385 996669859 934311648 58113896 298331098 23663544 331048895 93757349 76714740 922565325 654145384 57796191 819538199 710046837 107975657 2973079 392243511 157156845 52944613 233434986 961660273 104542058 260993073 31241872 308305932 676616356 661460842 889724506 849721591 140264999 571088990 331974954 744913658 417918446 255180404 511505189 932389008 117860947 755156461 201240908 952190930 245375777 340506942 885851316 70509094 491767120 500039554 983719873 488378554 294273786 108007533 464027264 128432234 42817276 51504576 62799294 361585830 772149568 455614693 261790265 979232085 279911424 894170318 796819388 524140989 92657521 534567266 548159054 167343148 903679848 351550580 260211723 457652066 726374227 1856870 755535536 700676215 747465839 437868201 940368018 476926545 359626766 389508714 122028674 349019807 706578471 918296858 121534474 590027106 342321618 497776528 661276092 313529363 21126784 595708619 110762799 554572784 311541920 805510114 155774037 942087770 54352513 389371819 663022082 92973740 988387604 738533668 237710909 721496144 388791872 607463452 321697982 993310223 246436579 708712487 437921044 971687936 280486926 845301351 855554019 385981172 450718897 225764997 667406383 776007786 255891313 356110061 319972907 552420005 791404970 856782684 910829300 480463538 356790825 438412368 728034269 636290867 530977607 327308062 412385637 809782444 319451735 143280289 409705484 492421116 709128939 665731004 341526500 882792580 944715758 985225832 131689454 487474646 436656163 991954743 911084100 346932313 211166186 270356806 263158197 943478455 447668778 924000976 59541483 908532265 965536895 197232075 365679078 774512264 258112330 426701438 786588165 864647767 121697512 858933975 736161395 262668665 474113131 936130347 607010627 303062973 346010241 112886300 307114829 697527119 245980537 526101220 64847803 540585684 203025645 480021840 733732186 722910279 706675310 812360939 412617385 92761869 391353475 866008244 377301770 670234279 106012446 50461631 54760487 13763058 921105612 166239066 147529479 410514035 234371351 786000620 918764433 536556024 896454548 290499834 520728577 105923668 553828063 279856995 31469138 312708432 777614450 390412328 883674983 757362809 902045007 889034249 846836471 753435627 952099687 172989369 90446224 613666060 404876431 882719681 570636636 564007483 412478737 301294349 15196624 89096701 856592839 533982878 191896760 434696122 315427570 819255041 897147657 833086095 46732395 87740303 309406142 797639447 807052889 862219207 528399647 967776102 987575799 913249274 915421802 520376905 264787304 187187530 424762548 75831486 421349917 252559237 925969955 140202273 472539700 11073110 161021134 836373903 90410564 899696215 946749206 607399685 176285808 264664933 977750714 19719647 599089490 445095095 819381603 717642323 518350171 677583041 775464759 378820229 777886233 375604481 671899263 399194882 383304080 753313907 920366575 335576008 579853503 793565675 606305995 70908760 495082472 580870406 790889015 294991712 16599913 761786197 894457590 931289335 16894276 112700774 806519010 921863130 387903647 879091078 826704951 259818803 213444240 177676601 752982278 406547696 686992500 161446290 833713957 513855105 870235562 406387826 327107312 865113879 824883642 265748007 308530941 669592589 996085393 453780806 331767146 808648282 888603291 449024104 482338223 230286225 555564610 521944363 511337401 320727243 377083427 554489147 669362233 815509781 556567208 648756655 343414078 55736597 738115421 574437700 778629050 83614067 924622141 210481070 42443682 904885554 211698545 134619860 399808782 422838035 14428125 33919536 425292530 871848489 27013560 819167895 59086907 50819634 930897907 205181302 715988582 37200989 707164850 790431649 628605176 890688005 326072093 418202692 740869924 812010298 434064301 489075315 983893833 939924795 854436610 480183144 417524312 287361951 892476477 167243044 640946607 529029941 795167961 166764879 119578124 759343285 974819049 620855046 748410779 757975962 400437226 297362746 746223726 629810965 483342778 901617290 579182497 732537791 126448759 355336820 25097647 701067087 668589068 100454776 448373632 648263256 312551348 869007462 515108374 555653708 543762040 412610098 358685455 452115463 80142829 867207974 226726721 811159135 674690934 592943219 808479532 109581888 356827186 208644768 759446804 400982231 231381266 814623093 713581733 874158736 612255843 504011041 258159434 195516302 726151450 713660956 620167698 807092616 783101265 747756092 636045268 476974492 87555288 444037849 298324717 433304327 421244407 719897166 287724529 706163374 473594227 302318040 817985324 514313312 414757993 91719396 638811836 874098905 941954449 678439277 557966686 240271306 411407233 600676458 478886380 828320114 723754762 912451439 746146204 112160077 824664550 802581161 841809303 198659080 388923799 4312007 738778689 183011602 85169596 74257855 405335997 38490633 168902392 985332963 989158998 895369304 804298364 554306105 146238201 761343719 772047760 752989348 265683226 822221291 127790861 963626510 509554935 680671860 607022424 229720608 875782262 59858177 506725324 553645540 825206651 531298589 450839198 673195331 596912621 543251773 613352712 647200823 730259232 238761678 200234786 563575879 627946382 111917151 804930077 385314202 254839199 565348646 955448526 648835025 5788633 594938731 145865283 194692715 737461629 864387677 73619818 667763969 276743785 982338113 757362223 781309105 839338401 478440162 72263142 459553693 312571582 830431613 208546550 932614648 908437163 331828866 354437818 541620503 452744850 161515151 214117624 159508804 535608428 257563003 192430937 718059395 696138703 457370732 412591578 110029269 627548917 767938647 681977699 549027509 474222243 563726813 312299378 879437526 835652562 696786245 458295012 776581098 61467559 303269654 310608123 348080707 471406535 510938311 606969385 844260729 625021605 408861773 482676669 456560550 496136663 990393364 526020721 118007893 316939744 159405683 156389119 816079549 901487083 501508898 996030129 72972803 378560716 464670228 832769322 532402936 718860582 817236343 36408182 28803420 364249882 162990605 28383295 357872953 159456003 105566307 967582090 27485155 21654695 933316791 180069131 927021642 536396979 193637866 535347230 475759101 94852193 750900422 184273899 502607694 105955633 715946284 134477789 575572828 700273746 916204955 40494927 926145979 222201027 690334441 917167989 125056395 376517470 965274515 277723960 148556363 31513090 911360904 281135708 726290733 383366078 121394049 178594647 169099478 286939956 155580799 558994682 476129785 732831086 611545477 99966519 467661980 921826919 664454479 598878177 151046726 775200252 123191319 960257876 491429558 197384292 283184211 398926926 785728430 571149703 939983360 450950230 273190996 255851795 63666572 379819070 613803749 35795771 357465726 253225638 767256100 346317744 143198654 850150276 847496085 247477390 748254412 739055013 19842973 227505962 811333120 926163923 538859674 249457337 643175370 507802929 660232680 481708538 701994954 863016693 571567775 38201490 93810354 288125481 505316755 287420005 639355383 144176430 716717215 96912348 723911970 864272922 279596015 549425536 161596345 326775576 15952201 401815970 752903395 965402201 46633659 677569162 573472679 987205026 688165622 135369874 277212034 996242119 970423141 347788388 719223412 421476602 141911427 332825689 456260455 9959302 537116000 678544479 751302191 431969001 350176784 697105215 620503661 173432166 334796749 628025263 174507741 596141870 869511899 694614527 255742151 190965953 31525328 459485808 610776309 410152200 378676440 697448283 395691793 495159501 134031315 484915521 363525359 999269919 286017762 365092139 395742569 128598554 16700271 46676121 181188020 548928024 210361415 463482526 169578458 255916373 815105422 55608527 260152194 352658677 472438665 515242494 190613690 760135419 942447152 860852201 761573777 732864900 648525271 412741491 350459168 502895524 988895591 963466454 481688156 769755801 539519374 197458093 979770077 360859423 201490699 48269628 521679351 541913759 394546790 431903364 119034403 198653547 934270033 783177776 614607029 637802620 486858243 553761594 130356466 543674683 590237404 595538651 31690839 858667094 241710539 242129400 145015127 761802673 249001314 937136279 507629344 941801107 286361867 150663565 706563234 690662576 230053821 518640398 280207052 936246293 135835448 531277668 872357807 945720181 495033105 377204093 744336848 796899849 12369804 490344130 922291590 444601164 968737444 702115071 613285069 44782539 864293990 563373616 959056852 412261626 185178201 536265924 521674924 231229393 202563685 273257608 228057775 678596782 854443994 765265080 514234915 955919033 481012613 760100494 251854797 892590056 920912997 983672766 529098334 927964493 994637542 23582350 112357876 140054250 739981971 646847649 28049358 247847036 825082554 887238163 338716557 453685660 626158159 898815604 709916044 720617005 708664105 309090316 778489626 427694024 599180761 874519286 618895876 435259282 20091140 562842038 256993374 337273628 617592199 803819846 687806080 538527208 214228555 792367481 891644353 437676421 236297825 975611280 519204613 856529247 950622074 315739651 617527196 18225362 29536231 882098148 114247775 721188320 726856564 630228216 360280634 437698145 999625331 188031718 840909654 603833698 936027051 873901612 727373543 922734145 71684569 457602572 504697531 249054019 948578974 660363926 450455698 960612606 248547921 798351043 461316688 641427025 701454200 533222722 814097476 241175753 302503383 734874249 98528888 541078904 135881875 678588995 605697688 459219428 314814286 746993912 250296906 67631703 216391652 219934310 26166066 867096562 874150833 397316627 41380283 393682546 895793418 584043847 560920484 716856279 135361289 323975667 418245867 570412059 71331506 865111104 586415988 445854782 374596160 474506676 742088531 882982887 3584895 107791882 664930694 173002749 705476817 622836922 903306643 160880449 186069087 857853899 611565736 623424576 85376327 971761941 168056380 732607647 282447898 621621317 267372165 302740939 21544183 127636635 250040337 757524864 765192119 555817889 675510700 527056858 259434995 126899322 245501104 100004379 52166783 57011400 962678838 511405583 732693963 50519002 751693758 211279335 617377542 377331104 806034549 134990957 234664219 241058893 247758523 757892463 301696936 723225949 398054161 345224579 931582945 769845970 44380755 947682240 981916020 515155569 989242706 846022698 150424226 694994338 651299331 651892937 860777416 498716411 715108735 639565196 751242741 993238036 382723412 528844943 967361687 3273982 652752209 899662756 309907902 792019747 124608347 248092040 713742075 734143073 79282974 858109490 287742172 97659876 858253895 866833503 168678092 343978416 176382824 620757361 895573036 341955489 61517364 132420570 516388557 31937827 719293094 289284564 627559838 746812876 775251972 743724974 687797265 443590908 978029221 299065440 561658453 623965039 603175237 821274321 922856513 421274742 513560421 223309655 359423044 47424392 868979790 488580749 398984710 724802481 584621681 163310105 771852585 712380781 920833321 441561162 732511622 511147202 867750215 515431206 490915054 392921679 358870242 410583377 979762961 343894800 34677376 263336788 334772247 71027525 11772947 43164010 78510444 282411309 222117005 88585979 395320853 93928109 927457143 118956975 298138350 949241027 8786601 244478559 363289875 133344497 640938911 983895727 248570808 125564512 16898438 431179020 713121795 693019967 916930077 162859233 468344130 452911678 540997978 818577582 233648269 128804270 371056543 324839976 363556623 479232472 360317564 862574890 808019515 188399540 132046135 194582758 895620936 496026737 804637998 187698852 275235069 677566635 698224007 808288668 457691749 458937986 300169021 547805244 695748946 417496533 357924724 235560162 585813165 900727101 189929339 830473228 274171163 789334110 671141036 349177964 770994928 152479396 223083493 544140442 583887622 959221870 315942303 599451902 376187848 378780190 329346680 835909038 217254559 975075579 692069463 555767886 329283529 386026323 412232860 460641785 829366726 30996594 177090296 662680835 714830659 984178812 778687798 17006052 226726256 899896225 704687068 8290245 165527502 542475222 905165719 700150404 304656422 718844148 400462621 653553294 915443266 519315877 153699042 403180555 519017722 410025321 811441376 41681036 841568950 123862958 944224459 43776524 352821099 381857735 223252416 328190965 596094981 347183212 263013371 173625568 854288267 482973098 172057263 251758928 371807559 533663725 817039886 784298591 398218883 317654799 605136219 469242307 977992458 472502861 89873265 554891058 698250768 141978450 34572960 457497285 143885043 825479156 920885341 393526254 716532364 885412958 15578256 75877055 411370291 372600135 53936701 986474170 424673154 524229259 47151754 354970847 838846354 854408666 182884208 893366201 525034502 996380519 739738125 370702923 625967502 724547163 27171887 404743201 633252321 639174496 310598287 78793315 615740879 603666209 683667898 555371403 817082048 972289155 362584389 471634925 83065334 795676292 581380306 20684462 573723658 419912061 532452900 911202946 273535787 1887497 654230285 236072464 506936428 163939726 850090314 65625784 775217317 921519952 697837414 605256016 927814250 258097044 564348477 833407828 609710904 608188125 453503594 614840942 323295410 759665091 972145903 166266289 138888895 952808679 932855863 705979067 531805723 571432356 148268945 545816415 316079571 587347611 906895755 216283502 294709800 448852204 115728511 896322053 993489824 65764390 895451558 194077651 300957957 509938739 304646884 695574223 175981417 669999829 867436829 560565488 982088816 37270228 479881991 854618726 819667181 490886705 608550881 208337337 11765211 413990853 846291163 302506347 891575678 946273395 943763541 766737590 203504200 45082519 316088813 479712148 169289368 703539924 628324603 52008690 991641628 499416214 107298957 829609861 232366283 923108413 272859777 710269612 5661066 447360827 935602670 379628681 330278386 882678907 326951152 800638117 165523862 744963300 420059129 561577423 745642450 361691909 949464593 539316137 859833314 261402952 223187435 561298259 128299108 135945345 640455185 238003005 584415594 165240351 258415232 1588515 810026144 374039464 616318388 998454835 406167638 96270186 957695730 369513780 304374103 259055977 408215220 441148895 779192007 223378971 470489401 964324998 354772241 37608074 904879484 662895781 296716779 52474765 815573521 279056345 544629680 150438120 530158661 692282106 277081569 313517696 777745512 294571800 274821374 592145365 542822448 882836694 113007036 719355973 119876879 238668536 328284702 87539008 457831228 394289552 466191382 819296210 712370306 677458982 15104206 507350019 330767164 961281744 920844049 970092680 782975551 149567632 581792673 682149054 168712575 977067023 129330523 754908483 971078610 224267915 848358838 490162904 256545514 845039448 618617839 200426076 899657713 846643086 449628793 82998583 794955273 309030992 834673403 954786795 448328098 456519556 319624954 731915587 920412243 725174456 647068635 438154149 971990789 303564222 882935139 742492482 506209168 579419655 952869038 472590569 773251970 66601636 406608507 862565229 854566073 585566679 611251534 945098325 197689482 150781455 948188503 167734064 820020779 204715621 365963504 8085837 589618763 793396188 815404185 284891895 516811013 724743220 328660184 233446479 935659631 687859568 83609928 573095023 239834715 999223614 537043946 305468416 21792153 279878384 364560384 400112273 869007332 681762418 94122753 103507992 807923494 15034504 95310536 126703002 914793504 302045705 645289752 166225498 924881937 702170854 501741731 154552228 308119779 336477383 718488074 564939143 494763194 155029662 171388547 254315811 351104727 390231248 337995054 420464027 703570176 601033529 666869730 477909151 68396685 891688757 456950644 380279215 908231634 454451708 838785066 96074476 25905634 247271711 356842645 965020101 467033493 724046013 211647167 580153009 681351572 887345257 379742512 374330316 414564050 261799840 238519580 224854537 954994182 305528140 579271528 302499874 89258948 278964199 481747140 200699819 616082641 17679367 805747584 822141951 846275302 371807071 303091516 7008212 425701509 717901319 464544107 540400750 635260698 201899097 19685429 322985493 26762454 824848872 347575019 761518470 963624316 348398800 836381141 482911353 291689309 711642851 619142840 27883823 490387567 139025029 225440138 78485755 728305874 111524944 87363630 420448346 726718834 516716808 285808134 439914395 715338059 290324035 48620375 113062888 566754618 162711838 822370066 699082089 522208096 348984305 599983090 579454706 130090737 860986673 512016051 981977260 964891115 550454106 932462531 82420846 356353315 383117103 420502784 299375200 107101824 426901102 845440935 880452163 746054799 197361569 768375833 826923282 65148011 61762988 895591812 699172461 62350015 2271551 185673202 944486317 730469753 737752780 630336081 358806923 317922409 459385163 671564585 139067020 294813219 31944955 9176258 211476010 320569999 429013277 531384649 421262322 601437894 252806904 881395342 137228972 698682985 399172340 980619175 591389882 824984508 25361197 497536805 390308088 256298064 439234910 473883585 495412414 705330456 596667766 843646719 512489770 340551333 204507217 714960946 944363633 405864464 752978695 973976855 837758398 547109625 586427949 355436386 908668025 466535872 989836107 937293487 517232963 864187177 305053120 635366873 753190457 353833342 578011472 431162074 217231085 108574174 493047131 571295758 607094408 797384906 666410387 606913445 212378278 76262531 626223699 121900983 11226614 636173643 901146596 708050149 476638175 448647896 54937196 334869965 197626082 254637381 942500953 756333774 200092875 917258260 102569019 307243943 964410920 562441767 460826729 157429763 117480808 364204523 780948083 997407628 895441987 879014458 342974115 169901759 796537835 156434363 32642644 298655894 260938278 828064012 927344651 367254357 661617126 73350008 285540208 427614841 683358831 929476249 715897631 643033229 213009680 278529385 844550395 399914753 29146541 690777893 572009822 509041373 100651224 370843685 932380788 627711826 368246055 546405229 65153002 150521470 561515295 897411354 206612862 874034589 885081889 802666725 370505392 322730733 312448068 309002557 535235502 209035808 762239823 342222837 391119788 857038909 107575118 582947045 974871320 122763349 659078352 971072917 14738564 955881683 40923787 120496978 315605577 371925752 876804542 919904834 715343007 203407097 673314224 620602136 344483270 129276735 555300547 120175853 970885292 377545452 904846129 182030084 611397902 205301636 44554607 545915885 517452201 42492566 112674025 643578707 320934557 38371012 489973128 192526916 985678176 510272213 895665003 972296202 368291844 16331286 68022481 606762121 868372033 802178832 228290090 313112383 872635827 667031973 633544130 53006484 682502196 745276049 841058299 608998299 22060590 754773156 666528331 55055380 607083210 820855533 329106169 678379131 666799514 445077673 7392111 868235318 105343786 517281700 905390140 312950269 629997467 866768931 168636848 927335039 99671842 174461856 816693126 397937048 489981750 761728887 797217549 875329797 833828221 437728385 641288574 530481039 616280684 358706129 206630748 281915307 722739231 790074113 4480292 706350777 51707373 408444961 658553844 747231946 518609844 357804892 222722412 649878824 176628141 28381329 511809874 373718038 436328738 386873154 473092433 523771527 441937629 875500650 8722380 292871074 398136732 709076485 420013906 817943990 956232821 359512259 814155220 515132491 160060160 42701366 560467959 302711792 343507421 625627487 575039673 373598998 973431671 987905444 64964762 136866904 170173384 861129786 864977029 705810174 217140902 457364305 49243899 894569884 171305493 94589923 410123584 595475602 474432541 249473461 912120441 933239716 845742552 90832774 934436232 320941860 758439560 343020449 465910190 122769935 904497766 263817143 443225403 699098281 475953211 261633214 864701020 229513440 82078094 125927175 801219886 926832391 721542952 583728480 974344429 670593847 149581354 482880080 780043879 803022357 910300621 410216325 283027947 738380762 943486850 402353808 282345674 767768771 598881003 827709702 58707130 608715455 562576559 432713294 108590409 716748993 217907971 726410194 885081166 288076127 793638307 762194455 735965111 193753854 311813058 665281590 782991373 321892009 612280300 486592480 175152779 292179647 415203470 740619364 841205356 448157919 107944095 502948901 425004234 475894791 454687146 947494556 442251256 165022799 334882877 88921795 631641983 200459624 319654398 129059479 826746856 650063529 132228408 349595200 245874515 178396706 856222637 798628069 469597004 922082968 379763172 856780948 144836183 219464066 548659529 387589319 192927887 883893631 62724571 905513948 892287050 248361107 802769537 706194330 704935801 530982280 329387681 273294993 16892331 121678479 325520591 886153685 960211325 756147141 493539217 325191313 182852193 274893637 315623773 493255283 742850837 73652342 248073709 990555810 878003774 3845300 511551748 38177042 374675494 711299728 36219072 91740994 955612708 4326313 785573084 942114409 129254749 136125855 129732646 595745607 399407992 215825203 627516969 829440578 644818074 665959416 558832127 42961974 256140262 289525102 494870784 192111783 853301160 729294603 249500751 203702183 102707751 788002650 300689641 560991021 445753319 94745173 423216175 37978566 452663655 293409139 198763399 703051650 137334112 708576698 667157339 327382437 227008305 533837637 664253255 634424643 382285121 740613068 224008971 396582964 478154917 833978484 897118134 247838097 654564893 967981183 514265298 181643704 982879663 342329469 535675014 917753461 515097953 776817002 433088613 599491253 337154810 5547339 601057559 531982666 297229662 430372454 849408155 776456889 296759022 595034367 547796493 257839724 698871630 455294485 497419206 721820538 65463271 447080072 155175023 843269391 539258470 744600285 521294341 611187856 859858447 759075898 838598937 317378601 851664543 113483353 522222759 614823171 319834466 237231819 904168430 175591525 598673343 106352138 335625601 5350937 499273279 197468215 633407474 310590137 88353085 796678720 712550137 438284193 202027505 911905168 842570655 351816994 467641294 103504745 763216265 252388288 563150717 876229923 545600046 37177552 492205819 768200845 545559343 58473033 902175 328826425 430168525 525757204 225107093 856741966 963447817 302570171 973931000 234549130 580019973 937029496 537533556 574556789 863876546 770909149 785650299 487417951 809709806 349975360 748915019 408188625 772813242 834259436 156911385 679054640 549124511 292849671 55399456 841926330 1520953 29450163 302798409 531819169 176074793 107617289 87850278 501218871 746090513 821413662 972715300 644781245 887150811 363485051 842564643 198378049 968951235 456122711 269678820 245100103 739513788 585354286 50185562 911668815 566923427 227871463 663121272 754276034 105621032 767812908 618339107 185348020 919310322 551898462 785747880 963838350 276235230 477343243 78350161 576714985 977188831 138731997 946846857 343719008 974278660 350491592 193262434 820317866 117274776 367582611 975737617 701825319 230746809 296690157 110626800 267553754 131588882 284188193 281141629 51003558 856597290 280051029 185733470 73738826 948479973 550282616 403956662 228727406 431728722 92775033 639002512 825545537 171107354 974889453 463890296 718587510 223919832 486890761 606314079 399910794 956985616 688695444 976229569 649012494 384125081 702973518 401014013 403602420 315776190 97607246 274942096 929496848 873547041 955187426 331651337 695751462 935883979 243714761 663601800 527152450 498833020 195718744 790474068 206049889 166129587 171759874 758584311 635310338 211722815 604121315 748500411 405116872 36992276 286011381 475408484 864887197 658680147 159120184 104937435 371518744 662945766 706785609 275889587 236360794 220607286 55468276 878471106 805803525 76024257 867531537 63969157 72860110 196629483 811420582 18471060 635837113 815008260 129582284 644777264 30120326 793314592 554754761 878653455 748938638 182283217 237529825 781212956 535204022 926519177 796458794 981675925 786772886 540649197 492812004 503676821 976662002 871027803 570987038 176010944 193259339 284119395 4388092 112452373 260989543 902486939 674146261 588313479 727468737 749955173 165324296 537947081 663431816 123537557 825753070 654412096 29306339 319951105 666686807 628044537 685671576 503366530 249031451 746915574 922144934 614587762 587939316 296890744 28895266 607907223 331137871 162663577 995831140 218773255 263682155 577903455 168873806 722711924 84171641 22603534 231755692 40014486 37659092 449725838 199185540 822725661 80867795 549262880 457781854 703251106 145649983 7613434