8000 682152023 451794314 2028037 288974909 111681588 291303632 155763712 177741457 164199418 280452914 745629015 727272894 383855815 451963117 263419161 854025925 625817844 903511050 636159790 788165373 442332844 275132246 358996390 239303569 23523747 398318281 935986353 142493592 695297770 499848367 7061287 551242323 622426888 79384002 19141560 513456960 313082157 130997331 463541289 120030523 986922531 112618850 230228300 678849560 504459522 679335110 334404235 867470925 674397136 958197434 404243924 86377174 618061916 863589554 791513591 435167767 915162678 71459492 341562698 951473804 52898442 401242089 794478014 364178763 453002785 706324970 720922658 653545259 112784412 626625485 423006839 483894301 669309742 618420173 342823400 63159789 669473697 552010351 785773594 78145328 581004064 943346726 856912692 227723599 266280591 128456734 832249497 530649785 552244092 760049622 285284864 907915613 571051694 550324427 172354129 844757180 27279851 835825143 711708323 241389523 601591618 95282135 388198169 895143571 122021473 420267989 870020617 207534299 532166635 503056550 66284175 660803648 200677819 118884818 741997440 706435381 66950056 578541378 975233884 175415879 620832440 628486949 510176861 446057125 926002845 368100055 867115953 621658024 257571540 500057709 658107225 864636173 955201485 957474455 167265452 399008442 497916596 550847494 458109739 758608226 568056529 253805046 617776915 860690631 433527490 86561732 438782170 532703055 330922633 464996346 459050659 396169942 448906708 277614808 853056579 626274617 597214909 510226327 461020001 180426754 43412191 868977854 542275936 209267734 120714502 386859145 84098970 314300240 161552223 119634118 30107399 809928697 130763529 549763654 582647216 556636623 622786608 123862180 846344645 760720366 770611024 160906495 46147265 639857947 431937569 294403014 260015621 152536706 121038459 919321994 851501934 721753845 474964155 587182878 550621781 433177566 989881169 949027832 568805827 195162271 969391498 910191630 114548429 474202086 64884460 459208762 935590236 364830411 552865817 688217587 560792314 523106616 739024885 980716431 152225730 99227632 423647480 59551364 975997760 587481860 689797242 942223509 362895767 204797314 532352218 634094070 322778310 715453291 14371406 894999939 327962270 842741243 434672391 105983829 375024120 531433894 614069541 528901509 808264285 996866914 745140973 56268139 759836600 78552171 111933668 204658092 28006754 764401593 732123932 688293139 672712383 468924696 777760359 338013330 700743486 608345215 815071559 180352086 336664642 280134951 168859884 576353231 761089112 310076619 304003094 83056178 307780515 98992432 243035791 476132273 863471204 819145862 859516181 701455874 205980989 942428387 72726621 87302527 956897892 985380244 582435991 6608577 464022604 175084790 683266391 501862907 967413623 484718004 617253574 825068049 495045358 880548117 527208105 822668040 975435310 978633468 905111292 478112150 284212393 980064651 937789476 305802577 763536091 336975230 338281497 114673431 807004526 389190500 962890489 108514522 78431292 878717496 403000081 793108760 281288305 928598933 885567777 339577893 88841466 159610396 205321258 373371890 104693224 424187352 804486637 75820195 211866651 180200905 882036385 726140430 867745814 843037105 208630878 944395334 271708931 623265243 816371134 747264388 708077556 90765576 209724128 622903804 344839669 219853290 736616736 916270961 196958284 440001410 214684343 305426945 229904901 346811905 237084800 907324872 574395368 291432308 35586196 951947000 458646504 304064857 28039240 686130638 714159284 611174939 286421937 348381126 625755426 433820206 861275723 289979777 682086095 380623619 408305347 229586856 502129048 25446519 452060401 897933554 141870084 15243388 702028202 224743464 311700320 571143618 455987627 575524419 76108177 804158521 668871654 211336246 457775452 443110257 863389868 126489395 928121060 561958531 797463832 366334868 587464493 566463001 681172143 945114716 413896427 630528597 337985086 486347378 183660185 550253103 663568049 242794950 840665883 57760879 456838764 471916299 38786344 900175864 72535530 813624950 691649051 820683815 949829213 255672671 519859899 145137747 423646247 221160680 214783203 520235535 60772917 651799233 475281636 498349028 328168952 607442521 522769178 519973516 933593593 617144201 133150763 81723895 74330508 227500971 915828242 631320900 620907419 433606847 43215746 45956407 294506745 231641038 546614342 603609299 563751999 781857813 545181668 764184675 352533199 986305865 72715382 320611471 727155376 840677449 51268766 183594893 45193281 87091168 870012864 947432470 883101076 962033506 676294055 373156934 114102533 83925882 781464519 753373998 972445777 785060110 455384569 274344623 791371508 617382207 838633726 570282763 514430966 372484525 634425797 551526698 455824776 379011543 299972613 892614481 81335454 646920332 282117799 105985216 146743806 178845514 330235168 284596920 301422341 623894365 588608851 330146608 533413148 76470245 247849260 9246293 518634012 233187234 326891103 274768935 348647640 82779480 980656692 449516480 753554428 882617980 535805318 524334374 823734889 973035208 680272033 307300651 414219239 97026390 983962743 944504216 844795215 454254099 469367460 603046378 417499075 901499443 989010486 803124886 121220623 798998019 548236217 281817041 240553645 261052324 529457076 519427722 161692015 976242165 226544419 175029763 190714064 287964252 229891547 20904054 8696408 529348415 607373762 514539007 169566498 657279947 966631504 284016191 351748042 911413982 805263381 713580376 387302907 502855668 930031589 916421738 390890643 198825250 458864423 263814886 54240430 983167857 247517286 570280523 935108008 308153722 276492234 353591171 940800475 367481590 126401822 485594138 346645790 189381340 59895031 846516944 54422822 349828943 704698251 45911057 756238549 763158411 970495810 967629623 184391923 660040477 561200155 898560071 319304770 757944538 143115213 663391954 69550558 517196077 965389227 869461847 546809021 781250678 857579872 768671327 949232966 578716138 76163112 509062848 266371939 565850082 590791380 422058884 886502527 888402029 16414169 407960965 379599081 8122209 272522925 855444945 102385502 402157115 781034555 118599642 862078786 847989979 742385707 813864068 689336981 129251103 436653166 305164406 633982232 792637559 653151242 222757680 189059423 847572863 734209400 717560536 346612591 543939555 517050858 24589830 952920737 444435482 5765982 833739360 29103290 771252696 499383243 628989318 730863911 668912710 92465847 365769391 443637556 878870393 394177327 400684388 574053282 890762012 741521257 524423569 794659667 828836522 125485645 430267061 111038877 62745536 236639111 51750372 659612221 752844565 14852799 874034905 867871519 243779566 505721960 707299722 530860711 481744957 50580741 484149522 379745349 46814191 740544648 722766541 896329310 361788372 311657544 610996108 888091496 430365405 420512486 939326259 578918892 252382134 371400837 355009277 576735036 81606971 619194106 594260859 641632566 292458897 929186387 895851276 909664680 812328304 538341043 410907375 941994331 620296175 472583135 345793905 283994406 355607742 153994991 914308831 368325515 537456926 275273408 653684611 854254304 767981759 67449960 340500187 719738719 851351537 297097408 790261126 197704876 549323752 172054250 739248108 227473335 354972145 973791991 287017167 597143956 695845980 835832999 924228916 952414871 318174198 660733491 652354802 96757942 345279394 252615446 903576476 343978817 768224079 507129553 757838074 810269014 440470426 624330802 742222123 450117276 977013510 898986217 976646162 491907006 562769062 518587755 381270183 114441560 827240641 154476295 738077341 71542195 152230062 372604976 763760239 903310376 700259064 912266932 856858638 659149431 458318474 286193931 662641044 234686172 613250184 442747050 34144278 201890138 317002777 168156013 475319310 575974608 414690587 683797231 684662482 120433262 910337844 413813309 175187201 961781164 816651631 27580293 583134523 419456212 503352024 375696989 504780461 744261654 948566844 20546462 44708484 86797739 370187103 560483621 861865499 528341411 44202244 851907148 49543740 2624641 245147211 982513114 994952889 742844587 779168174 353629233 99930807 618251865 238446186 491431305 379364414 608071386 334568773 57735655 260476618 494415944 875817069 910943462 340084278 196282012 376039495 639692848 593471189 584961746 764578 540554830 278067627 437613621 108548066 451481881 386484282 650879013 16771650 327974806 599323037 322810004 442802927 846346046 488250817 205601782 106686718 909395890 681940431 895001824 705408869 491246676 26114517 725216553 981264140 720284579 685457622 244939119 782462812 606993113 401836482 557809667 278191703 631159636 265852919 4893381 823009355 967949958 936113153 80948787 517564089 3705161 235569558 868546767 203145326 215798249 293701661 33485587 680057930 844260210 932522190 652046446 791260430 38738491 628698930 62304196 738594186 611435427 705473032 406018632 654534851 63791233 833300133 635402901 726255392 734492223 753785395 233947497 784785662 887052363 66930935 26128454 225313059 703351677 435125464 325242292 892188133 293895915 64721009 294884590 561010055 769612201 988165342 384774385 65483742 402768782 348058905 867762245 959633039 883795633 30240740 662547681 760257430 828874928 253763168 914879411 623847413 362803244 858150668 317023509 652282203 960531293 110181973 706402033 729093676 149989169 477980908 942605819 897030646 450162229 576438068 853182073 484318300 77512525 455932472 354179841 430054535 16586155 886014425 657239849 839924221 131376520 856009042 858278041 967237220 369131235 70975543 59588081 620901497 585246979 998198889 444414348 304556314 154086711 694457663 393515271 596315558 97938864 231792465 571774243 139853651 56361304 933263032 487174132 860831799 46380721 234895474 246192641 729409762 265981018 853391349 225681732 197695833 493900182 387415318 886509792 347299546 311874252 913796254 175048697 627516190 17702021 787669116 162813001 426633440 292151786 155821378 115540099 726492303 70147847 922100324 860280508 446450229 801616369 245616013 853893597 94989516 135767209 957243505 392040834 692349034 825547009 754696782 621250234 992140983 789617230 65211310 110453295 841214656 456164875 101540948 778277113 522012836 261644220 575194085 851798996 159192545 450356301 36273279 125232829 885496679 454299088 183561275 182729218 904263356 417080962 177443204 461619084 202304988 84420143 487923323 257834256 133748343 561886833 388138416 870264293 527080065 317172491 866707298 812980618 630548469 373637382 286401206 459072018 720965021 585966380 932670588 491329557 751243917 166094065 137151442 170507052 921100533 121962836 677493160 769773508 345091371 670112610 241152273 879948736 904060581 11664155 345025415 335301368 235821675 242969155 552124787 457963172 662436830 281475226 182954029 433686943 113723641 340926210 211129347 993049717 912861217 890320626 259695146 347086245 36293419 878985001 370746945 639883606 976484256 394522229 82547243 114267292 941180525 584170081 724840614 505964067 271211267 344378474 611380522 306774272 419738113 699166131 77386951 378682755 495408250 328353431 694044872 130585676 474737164 194385992 637912460 340924827 494379799 126328174 111182340 435937675 325441569 664481975 258115640 771724737 470101686 578701581 742127108 754220216 396036721 894375153 654620792 757225950 580164875 837007508 942431706 844150821 39086392 154012290 308156964 102616744 716201384 657005461 260795795 766449993 807890232 751514915 382097010 637628393 660105891 869093487 981528456 254801956 697633479 183419214 379631872 369352476 951676443 90970654 955493913 345295021 158324730 537412321 321215648 256522534 464105562 594862729 848393239 539193011 190874781 147308304 643658286 677508645 844950704 933952024 983801730 804837466 188393542 669323327 165837528 793449930 501288078 236332297 933167257 371019562 942912202 466917556 894298138 984946209 766651297 326787475 741091912 786668297 513513369 582989041 756199251 112203765 339494645 337779579 105737295 81873520 797842699 539615230 340335924 155391663 868437441 568897165 215597145 760440260 833038624 128258 176289572 257766566 639709358 729335421 172758280 633303077 916947760 489013666 685824385 469488410 775776431 154367658 356882314 835785617 353635634 723875827 56090078 279034344 955495596 895679794 703811036 731443454 735589433 681474196 881502301 245908593 513738856 255164896 929925657 353460885 914423278 631664904 395618384 330915559 72673733 848685348 305633267 200317370 994385016 598153863 358760597 275810710 948615695 82905156 503528324 324146325 667626192 982852566 4976594 972537500 273401550 173831241 96762746 795302614 509840875 42016199 952161724 699907088 701341470 499692603 335225062 507531979 160659825 207671534 183191834 652880394 359007647 240140498 82138311 221915225 729462563 545443505 324752557 94821154 682475087 81584420 367592294 341935859 768335439 182493834 770796680 993588165 912371438 697961499 112230373 740977150 866764510 150065434 82938852 721875350 509999149 715349064 50490392 354625010 8672210 589742956 218469565 769330344 843376472 458403219 861979970 502477152 563815354 169266419 54934515 423962069 590724965 734297010 735412362 276486270 491768240 187904868 894436612 458949571 587954329 689009390 337916162 866559916 727947851 157691725 300488211 490705427 654886776 110388030 224087428 679993118 975364968 922835629 642502812 655568858 225728267 351315953 373356243 113081597 138454344 537234243 816460707 916378949 161132075 821979038 171570644 755674767 825121686 114698758 961073918 627855851 847545483 22290054 473366666 252567286 737484348 288494966 121793 664563471 314068722 370243858 84374181 913930703 563755869 793183658 254405848 21718124 659512811 591776115 208575080 760637832 477365464 110209022 463569464 696565029 799099894 475323861 380306104 561246603 816037412 266258022 759875755 10920697 175549577 692811963 82634044 424431051 746647253 983551974 354673442 768917045 577769620 286333823 492817205 672653511 676648358 518936665 343165129 856009013 772538317 209047857 296976106 463732753 524122623 618914966 957521004 421537295 839928596 364803493 207387694 644306509 752298283 613757709 197276768 750915000 195108692 665595047 814320540 374106389 840989793 508871638 317900773 638083423 81505502 489612888 766408136 302921316 29544803 793640062 321789328 50108394 697284173 424634317 335393825 218136501 774076873 183985956 57965202 495551114 133737119 322838698 856751254 612159490 900322021 128998531 747048967 370431949 890858721 910267853 184371911 664979797 467553490 53258533 491816387 556316945 903575355 137710787 925480168 936463604 644512977 300614129 920936078 931217463 203570971 48544085 282775903 910037197 81941724 578579685 47788696 659003054 183416527 384230227 177716842 724129964 354690883 364273509 321516065 882417804 542339858 124096761 537534999 398263015 253507674 13383963 65901969 831348881 564669474 76826761 848142994 529735745 324544888 568633616 583455315 988063437 283386683 777709999 563133578 982458068 687075482 351206547 2188320 156211275 2923605 68611613 700439537 433732224 295725504 118328444 988154385 904353904 769067307 624502763 441964570 784205020 814327856 776138031 950801488 762666511 462022263 879757837 319623627 63994635 887319965 769136867 264389059 578747744 97785294 297680229 563709566 488383413 114921171 618079688 77039814 292716908 542900098 213986600 399434404 441537157 990258624 704595457 500955350 129858962 156760992 118854636 183490785 583866524 813448953 384135442 879965705 838241018 316399854 345170534 635085621 954980109 368390735 538142897 737200850 459089971 108667097 770698681 653326136 243042281 250840088 79115219 961125936 505410550 621160719 796460858 110910278 565080888 38990527 758579820 913070089 966762001 637670682 963781998 387127990 2639234 586457843 395829185 850822563 423874899 51037346 988990733 302521658 456388835 184724277 761926983 554630039 992031137 507972935 796874202 383275355 944971461 383101472 537796772 395243429 405084589 474295775 485477222 146933050 163479400 662105272 430395920 83931051 90729002 320661961 193845034 447236497 997373637 776739816 125027304 135381826 442223274 856817713 434270290 346899374 944794916 670408978 814643062 327005109 239215592 827148972 578543558 355141343 159235278 52141651 393452979 145510325 434146433 450694315 307604118 353069775 41393010 701290127 58250910 365511286 544660282 656416753 221830753 520020324 700827113 740371297 684591266 279037785 368966432 25212962 407268235 627109941 419201196 844276368 646545973 55778846 525065886 539807928 460712235 288395979 484265422 588638150 220713235 441767864 483790392 805211749 531022350 405047935 886345240 612416729 608160812 957322865 670217152 379076957 313042741 803349376 178027541 160574140 685742817 814557701 8069699 825309174 913768337 489130518 498856412 937889446 477092258 335236300 774127232 540161685 538460412 23737158 691874099 526104534 45907502 437162938 402934418 59462073 702135169 965064130 437455251 996436442 330077983 198997816 13803840 152114588 44016557 496291830 357266634 807406894 389043558 690277338 789521226 880535546 319424831 860348620 372972338 212529947 598754430 425466212 770739938 927566744 289282539 613009066 386921759 95526534 839905914 463183514 245802781 755160840 130003749 126401762 732278439 982142700 141510978 393406903 285866758 243693087 867095867 272861427 81467582 325530485 590887790 837796832 3950083 859796220 271711840 732888658 917832099 633602574 994403486 287201390 937688001 270388796 661902701 447176165 239976799 339604960 753148198 798338445 649599845 778239454 582868572 400503667 863519261 986698041 982316512 650600619 442967485 98032734 256540808 428699977 181726585 484276348 888602040 916817675 765119942 865234955 575117668 559960518 426837366 311485213 25720454 302730665 861019975 128138853 658832227 695519885 843017110 825595059 535372429 404756819 557946322 150803473 134496758 641624642 71637757 99599742 320403156 351386748 648749317 652732796 240310986 255793095 925308162 579496577 756492085 355631725 151651901 561223183 920056113 551879193 600197100 38875461 140078053 837794599 951542626 21197528 377356506 837358700 410740931 313784048 669944935 747815440 306804400 84537757 784806327 86792988 954016546 983683746 373865992 89960101 634750662 364609046 463411917 809714940 930471606 280324455 103669290 37551426 772588612 171394420 713335534 646336792 422110944 774126169 324192725 770447192 641214101 130694881 986479257 427036723 83062946 26656091 857907483 342029453 308215944 865849344 537585949 209476355 989312803 711955010 79951244 871413278 59336506 749198799 30675188 52919989 866615738 653977534 728120897 619028467 309277966 376997052 243217323 129640193 597216553 610756116 137700306 591029193 348438381 520573690 236249901 282268718 184012728 929943645 776532688 158223415 746008461 261748694 910268942 828836887 608294155 41723008 160248577 496064638 172517437 116218422 256748458 318070943 378511426 468724141 314116798 566898670 45742215 475115790 278131290 556911579 121551852 40625644 106313155 199175044 252241222 561139164 911083610 735324844 335108676 509215929 830680466 137909211 723275452 609667498 425888968 827442002 837869914 888891700 134512119 696737326 185707674 78499341 299460902 854589946 510579442 408804740 552063151 725715884 73341907 259092474 789756378 300046275 44417620 495689088 219242027 840088176 389095662 473846510 508287608 426359813 714716599 742191536 839814257 587471749 294520464 963640121 871850081 882527791 122612472 952974083 437826576 497875500 483778916 196046 63393520 642032320 234910533 180902473 601516217 904565660 457912723 166511117 434873396 830685064 412160424 287248921 137102610 142160342 62002459 827893500 8622541 436093928 357318722 448968716 303916631 193434304 974575739 36733809 263634573 913227686 931966778 563568419 98663564 930698710 274705582 351094784 192615314 380905540 431309989 242298079 271338189 828095812 998172642 330321016 480538553 356173923 808428242 810658604 832672516 318946702 971527653 941914233 105938333 369187461 310628583 899215082 523419338 133003094 205179617 139718032 485136543 944119517 779830305 567948880 788420221 719606001 819620819 868027801 608028306 639027289 550937586 412537349 596755268 613092426 298486994 930501489 266130147 473038811 629547562 512194934 821008154 250566262 862729557 607601557 693799072 222086428 632653013 424289417 512584757 594332800 677847216 301246439 82948379 102943305 836547880 817364761 147945279 122894473 273817997 185830989 717140860 112251162 439657282 647220940 92389370 456460080 329143252 572284454 285009556 979392734 245391619 108460272 128607065 976897132 229564212 407161648 594573249 883687053 711996485 287959681 852053126 791875947 37257330 789744656 184263009 1478415 526277282 813407986 990547804 834442927 844259619 856618326 749766849 361916236 882411248 306318214 970433441 27622467 1471910 755212680 472530275 664523060 271850870 997701700 974864327 730785310 505832844 757346108 334040782 311693411 812556179 215325424 57020751 910239074 199702797 841957289 635776378 860061623 975041571 591863320 389556672 818333595 401265020 372308242 128451626 391785850 788599471 108152846 761622299 718903495 784125447 108066177 950602806 588089869 737458821 857758358 332612860 444232738 489760231 657631091 482301701 933630373 209007660 763928787 919327979 717216348 308348900 830605114 405689484 839122148 789637299 525195001 489094336 829525210 707971287 111325382 723163169 345014592 431469727 704021740 580734269 708200367 358656773 128614245 562308193 338609896 638340099 639795695 458087738 614512305 187883645 800718405 428955896 884181133 210200586 672901789 391560741 374578810 381298362 403144198 869431296 873942925 937181447 332922775 878492331 812032817 968743354 836127387 871605418 947503167 542827709 620480429 913180420 803512469 186878976 463761750 222791796 536497880 780299693 156251579 249646793 691762919 204319565 343088267 826350960 704493510 488434999 159311470 230562158 506915926 517057110 69647555 67611210 360723806 400055528 459997074 949031917 600968436 912451199 571000596 152183575 428433377 210305783 667574418 921662707 391394330 412960044 71087224 911173911 768743286 942859049 127044044 312190042 571227038 720491301 940052226 329302880 649156507 430301937 167986907 652830151 829977706 468619517 409955125 220238228 76603266 818763474 603006932 560076171 642155651 373412818 982704298 290719245 62496753 366159378 406101298 632082483 683675776 857231846 422102802 672946528 540558411 202917157 84607491 945021003 388437706 384962531 451054665 352838171 47718146 254840551 276176155 768355612 470260460 438863609 501229156 30066756 718078116 549153599 620380097 133605122 813177 807708240 941322284 495484771 722140867 837322391 459700323 565125122 485074252 440446310 386587236 740791192 106286083 650223119 789850494 930287100 455739350 798974404 111230645 352577127 827566347 997734655 122146104 120822459 493437408 400483399 768366634 359781966 921186281 509935541 495142584 36081228 398618095 689989624 361196044 847123439 526322875 163642292 633022927 696759608 259065567 907599920 562381213 596122996 993539847 524514322 880952981 829243764 174108077 980611488 196148907 797678300 858081733 547065550 709601331 941433872 360828767 934222734 1051207 547710771 586301256 409812743 991939902 314077763 23460163 385051940 662635867 762300023 877328693 51653054 268981164 476365217 396998405 283627265 731641990 794314384 231329534 980761182 465719643 606504483 24647718 449575378 793193811 983806262 852010829 857300267 479005036 62181407 579747686 576102603 258454500 323612855 341263052 144441334 828478811 820456504 788211691 483097973 305222662 318653776 12549617 380507141 934163762 450737015 429407665 887113548 781165866 40562569 569024615 970339253 220144981 178514498 995816735 220817784 530684760 375021874 290799714 334632231 525432291 903745464 212752329 377504553 482990690 370083120 562740122 626202646 627630005 768432312 392725367 200269211 897055001 38147955 388208442 895320033 947859641 906971748 137498790 283690400 809266501 187696376 930034799 54079967 117967048 288966488 583612913 839753362 986058461 216288881 163508350 36367855 495489430 909542853 984659715 314175588 468692557 533429250 343170801 472363396 837827740 53798400 864603872 196436556 611850379 201741900 705739411 448082434 264988975 243682948 716027773 733953827 786402617 591951452 868072828 201529849 962708066 790511613 509640178 829701443 131069417 246247279 150697756 381626343 283522659 157499046 268055993 646743529 938388694 469707688 327470339 799435338 132994204 207438763 158646740 812817956 51322674 638324900 646527139 654115098 86264113 865973240 633615243 546095012 413346163 960606078 96522964 414309388 28886103 732629210 657129869 355917381 567504272 527689277 717472540 135623148 38330195 862296125 864778493 432372952 871747717 438933768 326216449 336000200 507081197 518198231 710966389 561028243 655864983 295653965 957720880 60659852 370886176 35687020 498688216 13997609 964903488 444066 5044599 710935416 771983737 663112670 24220425 731153826 722495069 971182045 464346602 650811076 246027038 299726108 551286239 917947876 381354423 898810984 219128381 930165392 148425528 789765405 924650441 287515391 784721751 34612525 265633931 50117991 173732356 546372149 178866803 603365599 917911866 601572232 269771648 762000843 51015557 868215446 346831574 17709353 971573050 894987269 21401747 704292751 442434731 144384649 226433063 102949688 4972244 616932542 207432305 358154852 357528049 214174102 67299234 660927431 319245768 403083163 159008450 702694050 60471536 712610899 112491239 714088221 957504875 129151140 775880433 828610165 333422599 992056096 359177387 306514515 629172694 947799281 254176557 50851253 46915217 513228502 47042995 134065559 95113935 944409439 778860160 451828569 804889910 949492957 172499293 458167017 484383108 318102813 590269357 708515561 163299136 437208962 948643456 605804705 665967692 385933078 432039550 316134982 104667286 975957665 750592290 555584528 350491761 325423771 722857849 683357421 30631073 605077766 914139025 626221878 743749482 671457517 890961065 494037988 963811300 191439982 462911265 193314969 398282223 272413715 545936535 829872638 545232446 672033979 136654792 157486081 91457747 672849246 729640561 368496864 402780498 181357218 308690152 735717437 399014723 327069918 246025042 987558242 276623078 146697880 298146582 73067916 121289420 425316950 889812429 255602004 71478 30157628 207918233 391744635 710818304 877031890 941027280 889032452 71627256 719624015 42280578 842942801 603353791 810197549 946485047 317009129 95101763 915569162 275400343 158172907 534559200 568318800 185640301 613688524 246674190 882729580 598762034 762755764 435617363 804260878 776762751 966543200 882827343 413481782 970363828 216456750 675240411 455174197 134479858 777252093 238140485 96114379 842834603 726984824 266557087 619864563 701972039 787912053 993637008 962267576 544082122 86317533 123401377 645042074 928646734 887087002 349009499 63579940 25564785 881029098 94462070 115019381 607616008 703731007 494696193 860535810 402293877 175682092 120960918 347088778 261647464 139871491 552598762 612059053 632815428 658061735 775640889 904582298 286391824 587604620 363633174 735161019 986101697 299257164 982894352 167941530 209275066 764029341 378577885 36469154 370516907 105447298 395991090 382930519 265444276 508418870 245428407 732945981 752606260 560636776 335825015 699752648 45761996 985910477 557142992 227630923 818715143 509853072 181228969 926888396 60009402 945383345 39928070 292875888 769376750 194990239 501896236 36585222 939018412 327015783 833728397 843616141 173470333 257799379 579359255 690050294 962440509 516371430 225712118 983408323 300883934 883319844 57721923 423740476 875888821 346046634 900615178 137167212 168223472 149371882 150014737 503392004 408764350 427530259 140195941 846374992 368885795 112433766 841623729 539769010 107354690 96372575 523304599 855336540 775794389 959908471 859588537 8881564 751613387 877468106 167574354 351386070 560324765 307000909 161411433 901331941 802793224 684904400 488285970 177055311 631455226 8413785 800083915 424786483 892747576 337218860 182589599 972683425 124480544 887172747 510901261 157618677 749998128 420143851 765649476 84781463 804012294 91727832 105920359 116189006 456669485 722970293 695026479 297063426 984205912 434135094 403177530 839672984 785276521 928925878 561138831 222587696 554446729 603667854 151574815 237302229 289497462 203425373 808752629 782053330 219007652 617527293 462956291 686915997 601926346 89872118 705073504 259119200 537136921 745709471 751020917 984301111 49954088 431892545 378257905 840883687 850495435 62062820 108731906 62835203 83184659 100976037 964404189 524862439 708108361 563503802 637398279 567102469 367737374 330051119 256049755 863992251 303457109 528107801 883802124 573212012 846403618 954612530 421406774 829746250 206434276 709130394 814360324 728806501 106942830 834953439 149615284 109556460 100891979 595422612 65282875 76827232 758625448 151663855 364647424 8077938 893189329 765394667 569142063 266448827 580085362 68360073 200154474 346871707 238980940 421248379 106388581 746747585 516488730 634335867 149883985 444197347 473414335 502808151 634070484 265288013 724501333 513876652 894632922 666396114 615359967 3765681 479634428 527010665 584952195 101425243 716033939 993649894 133222101 243425992 626631005 193675894 863577371 901244591 784900800 261519445 820325074 814930716 344529707 980848404 658960196 877070678 819772034 39959563 835334199 140904655 240847441 488984208 382078963 820031676 59919139 45413919 441056970 112685016 796232844 631078536 283063010 709762452 327833504 174852345 311080304 755538618 606889595 597697159 8654669 38514260 861548670 120503868 869163207 561305079 700001730 448689469 76076088 716879292 490879657 83259021 701218279 331848179 658173108 740140536 502165188 992813616 964785532 951015972 416839458 166298344 902243376 906877567 319978491 720258001 169948609 679425362 169727021 315018065 887394542 893312114 378841074 956165642 685496608 275656207 295989021 313677140 691082176 519964581 2492729 398451022 889476278 5135366 486945660 696292721 522577242 477392696 828793470 43662932 658143132 669073253 776603800 471392399 875080376 164806356 342518403 750897369 528555520 191246169 76042900 377603291 314583372 692220852 557804523 234651060 637789897 348114890 770321348 392901095 324623518 527465103 248027963 875677604 150804366 446634342 373129927 481573791 887147056 859700996 779221072 877620659 381843183 355950177 296447631 23134352 47861447 848243497 862460454 207076604 888525614 213051769 164185464 335132525 583508801 251199891 271292862 829255281 14797379 966727213 255893313 620070750 680426318 221242 907680236 360538062 357077302 16244644 449682450 21782972 609644650 237558818 209169872 744565390 903109110 980780812 719509587 424269153 143258425 667575633 961653777 879757027 900875413 562263583 408637586 495927618 221925493 478126816 111438481 29695532 935113809 259834973 657496979 90981573 117956743 665788132 128200116 592678925 82608363 114007542 659459763 101048394 257852573 185054820 943562467 995538757 900576967 257933666 55015961 935299594 622842494 547377767 357278626 735114650 916829311 969666740 90869093 968704397 910556920 381622692 841943540 440211721 906405722 154246095 321861406 934638281 704638135 215503634 959977989 532713733 425421903 683132519 440524113 608645387 271103578 734405458 147432471 276742133 108543624 569813228 522007677 907541033 688642306 94479851 812896640 144611325 303127473 923732982 165146784 884361770 782679570 390598135 357351582 505667090 901586025 408234753 50774844 820709167 82387329 330315565 664591472 670443334 701101667 738634377 153429674 285217509 81686789 52885913 782306199 675278359 710071445 36727340 245380515 860375814 970213917 25930753 724365510 159695447 3510130 253430734 820269481 318574773 175465651 765707383 624272923 853744383 914401172 716023282 748935441 430951178 227352392 146871310 928602450 466849687 518872330 808726475 769907251 516858041 787870808 994567897 577005725 293613170 435478502 992972613 802002225 670838966 889027000 960026734 123863041 773420804 490275549 605627247 986556552 904029630 700609009 768383982 283546669 995082553 692483622 911624183 863691369 167968762 453259406 681681767 869204631 696101651 977731011 717383421 890226798 458163814 181120268 302376390 172833142 860063815 551065016 865334410 915606893 380299063 497140922 650391938 789380644 401336447 717808753 909401073 904956071 214401711 997312678 829352208 159025364 713678831 440068319 427166014 630600993 912512116 383105075 692988654 224455874 529275093 689129941 399097813 34061071 263892124 363705329 910058261 505284593 285030923 909816970 566361738 647272985 364999112 148804627 386902605 671746982 690356471 601403382 59238536 473595337 610782336 680425862 151673403 631772448 495340011 243889117 376281531 164698406 919400680 602523912 80138900 987885657 147544045 43740284 297904674 934084214 696279174 611721950 183339132 255315848 117544863 378992848 293691918 855887189 147457382 61438114 112353757 580075589 918429890 56942879 102334278 655032555 402609910 881715840 627965776 807844217 791467652 275417397 822287688 462801315 13556878 411177045 678115897 897591725 98765482 768487372 304842432 579304164 22183694 833198122 410554891 664116984 30518604 281581767 663232271 153738926 385240860 467258344 619090821 400167604 97686516 417683464 904356385 648534931 696745813 913061491 124513598 965059399 309128631 557575058 753382687 997928378 381172293 571329901 608013199 817953965 934130652 760151412 498425870 448245166 754075019 645503411 691312286 726366897 245353637 264948622 47336005 937990306 436263432 99714788 366294941 955882975 568066372 902091404 336914139 681015187 715042184 139233993 873199242 307884289 235036405 849367228 732288928 130717448 330881092 26169722 662085750 20974594 566166371 908652906 113838901 231126577 822806269 45221169 109277307 917574746 678093966 875245480 44095305 403698640 74144164 958413415 95036998 93781710 485074596 211215186 883637370 600018489 501246499 521026543 540499712 918216008 461623017 223543957 748104207 629416556 677292911 685547927 69992887 71408009 630975658 828371160 765503291 816401761 951749013 605917348 233887514 934489686 1736602 427303636 83926899 480903432 510137913 855634554 761750510 415992882 881120414 204169702 643292241 859891847 645117490 760511840 506338795 689239258 79676960 336781934 815454190 195526283 945306038 13197899 159297760 78164437 64551640 502177101 860286878 637262531 587913138 177565943 213814949 985911773 982538970 243725569 51438588 552859611 40305644 818391877 89542995 21313432 841165802 934288739 929425480 26016523 56669171 700601114 401523239 566573959 504104212 851155109 753231625 927439120 437897106 965706960 952322193 850888857 121538366 646214926 142309125 321703109 983922697 990465379 310928129 795909310 604187407 947517201 236907232 974477129 456327978 709513038 527326820 427253379 600478080 716445180 272850853 68171417 289284566 115253673 292676587 311482715 958123183 452265716 9084477 753760114 87897660 695503612 186599380 329576764 124329246 828101318 636714171 102127709 203062066 924694288 312772012 23515052 218229204 639901957 46369476 853300500 653471871 360326576 741183635 917782284 380173965 767215190 691831666 362325700 507093846 736791012 119073232 856216399 307940847 343263593 243990291 739052135 797642323 139279444 946731309 993837187 564657506 349147506 481922528 8431582 736868786 326568730 521505341 581719258 123825634 941084976 118239573 595051519 181179513 896949667 20465615 944905650 240851821 310132810 481006999 401987089 36762710 602141469 179827297 733525107 951756284 233849642 946597474 561356547 736761455 466351655 905070000 454055760 377744708 659995304 871730649 283486692 508750111 547574797 983616366 662158426 643047086 915056670 832026473 278494918 91208702 673576732 390515093 10139084 965182842 374680595 121562841 172222769 912533858 793964723 620999193 73832261 813430849 345115978 881862374 555154131 426341747 24181835 745031107 303249441 762621411 800477343 432659909 854537597 467140996 137900687 196957993 417697635 608797487 247833945 536999439 582232224 210894787 902349612 743320303 414969491 554375282 803565440 745902902 442907334 656937849 784894454 403755858 995707889 976037751 653053085 93019450 610207057 444115172 365397844 410008329 224100579 189054719 751519442 842060746 385833486 764354826 67364688 506704892 873389514 712974275 717214830 960072115 51741962 185955757 121380883 166994460 470282695 32484041 607160707 804934394 692874320 477788895 219432712 737344159 775568720 604382711 689957218 431817699 93921741 924168221 796520008 266321034 421253124 690580594 908476503 157845222 482838097 248603391 150477566 709238379 712953681 453883092 247161933 19614120 334877056 218934191 650471042 747324943 410877535 15237390 712129387 283279301 961406844 731820126 367599223 705929951 113221345 541023718 423819594 734533356 175641873 960245181 145604237 562120803 933486677 804620919 590615456 438805116 932880107 13112501 665536774 316210021 943929536 811649492 695107333 854114886 615724810 995744021 732436675 296073933 210437332 66950811 275090473 421773919 951665201 865672613 85253253 445419965 467003769 352153248 379172820 463411621 153220733 668963966 468525675 753669066 882042749 254870483 833383677 452327524 28932180 648793427 366602199 431767571 399735648 737824761 512025695 966142855 338525270 458082929 478538046 553884528 626500163 29654799 96780471 257927807 803047915 651577299 577134552 404366452 688898229 492830501 108111966 792407323 293658502 614527340 846007228 517812257 943682561 561133599 719640740 224903850 446599116 289181117 952646100 452954352 980238136 853713658 913816592 314902039 853262895 884176697 462249885 611762957 614557306 537747321 588036070 215708894 908779923 683217885 946733506 172851861 47444085 95637437 801826545 803653440 547355033 609927616 155710894 848480456 639920643 27342105 568353130 183651597 175056657 73140085 885914061 445099976 475739093 307029931 590414966 17082560 984909715 812992409 903809511 687387417 816460474 101601121 101099911 275918344 729791967 947982604 425530014 311750577 370530887 820476808 769570501 140530023 687928977 515458866 213575170 902579778 586555076 234309474 229501016 766712980 872854560 6444336 831981367 810440440 129645666 68018812 959754025 555718733 360006297 196391519 286341870 618452246 401957710 199664071 362042554 367913774 232982575 742987714 47123083 781190425 16469826 595823786 572111239 622278863 443284181 636103612 478083319 638947798 250259588 148402420 902263771 951725388 633318969 892909385 203263030 416123864 858993746 961375822 648332654 250364894 994394083 489210023 852959393 162046838 292089159 673517506 100859869 793236980 396346180 539210245 197627826 725253977 252615359 818074427 663594121 610338597 535701885 385311134 961471225 757714635 796198623 165481615 819736721 786669933 179060030 107388113 812137591 599264498 450160155 53886924 734926627 671510487 131248861 939367480 306994232 416576813 494066757 571633761 508345328 416377295 872677864 346930845 643694415 258820913 486335381 746513332 107764785 753625014 866394073 869650513 578885572 328392748 514343748 448029348 936809804 50755096 352154833 383629992 265452891 830709326 649507441 206802881 963071326 502526719 268059171 550871627 134295169 822565271 328626739 952875511 390427859 18171677 659933081 602557108 183531961 983797448 3856343 317815104 539946037 233876971 499935747 881260766 655159966 164821518 200045191 155018737 21177347 70831317 67441343 651261551 657443658 77897966 588001707 386189051 703101225 959307896 48285381 409971381 602031287 119794106 479795483 930740733 552111264 974248460 52513003 557472415 794277620 409476383 983499716 166395705 983827316 189034138 774604158 434656065 653243150 885295511 946378320 176047078 328955259 468777124 551279108 185117341 443049229 878390037 544957567 46622146 315946222 812254819 492740967 360441613 466692505 496454858 715139189 913602087 59459141 519182854 758641084 965051094 846502211 223396290 913741834 405601080 913152884 919267659 806351708 503979123 784464510 566212056 932169543 289229087 325140127 315091747 410360979 273749728 156802837 935563246 97409068 223626280 558475349 339324204 252487730 157111362 173883916 915752255 294833943 59429314 77789581 921062916 452875536 13706307 740562042 129413873 503030877 54068898 916698716 752444376 243890052 112511463 278338650 808114249 409653026 723781387 810867296 209617016 275001392 44093716 191233760 748060238 747931588 533237269 572181537 498860659 588396234 927684345 175564157 95651160 384547773 405685923 166505031 635585199 946152529 673480144 120232185 587750200 271921478 392623776 978176132 173366859 33970037 892805320 779257371 276314144 543091273 142955028 838288345 313882137 8404308 616806765 706562066 257119702 313840392 914323292 843534111 668089887 954000064 603722550 65422172 122320571 151624031 647670332 867075569 969254665 36943550 232034495 460664420 911202128 970801150 212672737 748186205 25478518 432437076 630631656 557951291 229117482 63776521 148548123 931799099 401646128 704613899 696600750 814908714 997019806 904731371 756923150 528948227 241392013 383491801 169998827 654690890 239723011 240066133 620086364 409613457 283186397 455654290 514313079 694293414 424989579 826591331 832407196 735717687 158372179 34725067 406809823 908045833 567488194 245703580 201001112 521137460 305661311 392777448 499019153 20790079 958697139 809031662 826015714 77884379 259373412 893879994 571808224 74589418 963547997 61096658 914674271 43348790 186751157 523663284 249177182 60251544 954806196 708540082 393849599 33126332 58724305 921751862 182913879 947318577 58618285 423628096 715081295 264204591 5322670 397580008 781015274 222689661 123026159 241945159 581269995 399253566 5757294 10067071 434866525 293330457 830093857 564173060 261627329 554275041 358660983 525772178 359895610 67602043 111825275 974808688 166842989 241577983 794175652 430681846 497338221 756413984 133756143 2970538 96131964 670844800 68779472 828427184 229769179 850440725 1692371 946167269 288878051 882863830 820577531 565445770 128936585 16010136 53794432 806848443 839792826 987740283 517058560 494197022 87472084 181442674 417365028 907070499 643715181 303936635 743934811 120868670 850115597 268030529 824711627 935776508 102262510 241071770 630587594 262522588 747874669 759036609 812238706 951484799 12690337 296788982 476622761 760967639 272667682 935628892 761529917 665018989 518665694 772647854 595806538 263069052 313852258 864524802 366952852 347799631 956636369 881201200 598284237 997538883 367770977 944325037 125942055 315085674 569339375 644412918 227266915 813548806 422957402 885097370 724673856 38462607 730318037 904470798 120903254 929369889 492005642 667294561 44108756 747135483 229059346 24756745 368128599 750470243 493323606 224372188 233515515 243398856 785733423 990337858 434874808 366913427 120961351 1425355 707108508 609188846 987366297 745938310 907389225 528535906 40893584 873512775 669572721 832429491 740789952 789393447 472773585 278937517 933625690 747016395 76657036 679751418 74981569 166436312 866720972 171671164 6750463 886803132 574257931 920510837 667226741 46291850 8306754 389712341 815479632 757591938 693099486 396177370 614081453 730160640 63992274 371121160 560969048 960677996 588486812 644888124 841103999 461814533 537684349 746610124 132381941 854153413 945838515 210472346 615056007 337925726 744305334 781024432 263844650 38464990 795608640 976708943 770786530 512772364 481930580 293782249 767587923 94372190 902719513 41868539 170948060 315487312 115407994 152589133 915655139 546711894 190527188 626540435 481219418 250957443 205917323 993188330 10247434 887569374 318059470 682904113 123284238 645369293 183945640 598684132 546028035 489308538 912642281 243227540 27101807 843828817 439462320 892311763 467776272 107310033 98241813 100173672 852957760 435647517 922533762 786861112 327269023 544847266 205759767 332639880 695305115 172033041 257067992 233110071 846911947 59862079 953241350 214440452 295945809 510856405 248628818 866674754 396858696 216016247 778185717 507838926 519627702 857785709 18701124 365184450 353204752 243346182 284148135 536665974 597282277 957304945 179444419 747289485 728456493 213970992 910927744 865059426 406425159 248908760 293231584 842450150 471643459 967456971 469399371 973744840 974588801 411027875 99665965 926306902 929722964 539823752 900298737 806434152 950842406 614005916 909094245 756051509 806742517 790761991 518377161 153790308 717847559 853055777 202372735 533935236 602099367 649883191 777811963 872921033 698356502 924076008 556499523 33204697 387912401 823059360 310368177 843939140 946704513 130384077 407986279 665323301 90825949 240855669 950021227 397267734 654893083 193263984 645048307 61767986 646532542 292227542 416938735 25558605 384047210 391100194 734603093 819182416 477615953 176285927 605124879 762328374 892283368 129284062 153868325 600628767 213535061 749105297 410538624 347849534 728470724 546390847 829830219 236107332 652554049 8963532 897616962 949313039 670150424 924873125 449308645 712848985 510019113 541449301 665726542 376047331 348134281 695642742 389020163 949112985 969691867 620169131 407996075 582181287 964247101 955531936 683573725 543943863 50161514 110759200 2265346 630883847 691260896 295390787 953223857 333745405 699761800 757424327 812439803 287889542 174424802 452081385 789858978 141048394 66548547 452495657 371826320 254676759 415937907 77468865 447415720 889981704 221646376 555781268 510982825 765238928 364087752 165610509 248831956 812667851 730315929 920570030 112482133 786624464 380359988 651268429 671149061 594688185 521877819 793989189 626377632 748622121 707550054 768950353 553189406 985035616 659101026 854986502 427869016 15665630 12832915 819694418 508418901 921348210 440754615 261960307 53601872 631364693 430116676 101370757 891566091 963163193 386257548 318738716 123158837 194836715 709221924 595513876 256956481 787440670 355675464 805840993 117148346 928458406 588045008 613641880 42181398 236376770 343283433 808853724 617428060 580249344 979507578 997542831 837603351 322820613 883598720 618504617 60888026 797653963 892508214 630184943 527480459 186521563 801684764 520063270 737989682 340849959 934438050 65167177 21894852 72967986 40739873 149730249 602086053 201852025 340306463 707537251 914868532 582024419 365539518 261895804 521793314 621633037 113538024 441791397 132670106 558025305 927677460 653998017 761412598 893582612 347184441 981877993 893716940 465715998 558499544 59120284 41903679 462885474 200721315 639898995 970974435 2848501 499755266 420624371 746125719 65715915 152820245 773348710 413789043 933657171 779285101 527876032 502303927 848392653 706473804 159752247 420909378 543031729 212642407 289087894 855005447 774047126 660248724 76247102 514399788 40237680 677464909 358114635 264665149 420028235 443527372 949722903 811618718 371545315 707717174 941357729 958811857 38362498 299728319 391714791 988720512 309592248 183398500 33791010 718520156 887876256 549325796 556425048 772232370 219742685 775149892 871726704 659741182 5347300 905557879 396149693 408629418 173843192 727065921 915148377 461392729 578808936 252622574 706200000 197585600 138025053 832043273 502208355 93619615 285003260 431835847 237428210 545804682 199616442 287824643 287224338 72046877 352883952 222689194 183093169 304699719 215120992 578696200 910054791 466014300 29949964 632974585 572622081 974938658 606572429 640589795 63310113 110080229 228686093 211113451 808074827 535863719 698202422 220131197 630997608 35567165 445937015 741376881 972262097 153504837 508630211 515912756 689588970 742599408 444098690 216045144 778531201 617347613 645786260 521638084 453608014 422278058 289881455 725577125 969915887 907903645 539395079 518335343 427393121 92513984 59845986 980610462 658801942 519617872 682115435 727042154 373926066 94422978 332339131 506001150 195450401 361814717 866190543 69465310 204804581 522390638 324873677 185811288 657560037 299964296 566640733 758716201 329691313 68502959 636041535 348223953 795404637 996683565 184754003 707622350 777831531 799641767 907431420 523263047 603471986 29967702 16173261 32480964 68155499 785213293 225281835 25267175 764863626 648313220 747594022 577157036 588195841 614983449 437865524 268497677 378064367 558608315 913113425 792547649 17243354 810925606 77107085 42947815 716501230 344789475 970462954 238182107 956737259 725636570 140184405 56391617 110870072 685505682 42460153 268539218 760273612 192850259 757219484 810141248 671312298 87692348 99244359 610554137 449488073 603077888 723391605 828767701 184801303 22019537 427090577 68358437 272915160 259025863 332050551 638605497 78140169 919941431 175012256 481731778 228385480 56269129 294763358 839574150 523914155 685696046 228141050 838444106 229176151 689046598 646617206 187042056 382494768 468651048 723060962 291357897 101551239 932156396 204255979 48402965 803223987 465690738 956025268 745642789 22365855 665275508 952375378 724563263 466909352 467535286 837779817 721489070 233766075 853649383 772718112 354860037 180075375 413766084 229030441 417361314 890660732 484596410 245147475 344722656 719771330 144264760 98959005 458142792 145117320 248774985 42234102 61422278 793848475 891127598 347828765 970965178 337658755 768340810 36281673 273746462 818078827 636014658 738898337 272214799 534478621 863428630 960219441 291064428 257706135 737341360 562441315 803044018 407207358 427633165 216762574 641686013 122849602 706028388 788566603 219890674 754838688 232641416 384766082 662047869 152122556 621931934 470748570 380607998 724087088 903832658 911959359 565604787 752791788 987171268 38491516 844956556 523131204 939415399 466766729 52737599 241238940 884294530 621274971 369046725 406311916 712543113 676614303 72955404 437745490 651941584 544110860 197933143 887433617 52542263 777181648 549396098 717861631 480070097 945100672 773369511 855052317 992096116 586048443 508641413 457897574 669634942 775918851 629064306 176055784 963698797 714316148 675762596 987181808 132794676 268956361 568067929 393071088 12520947 666139581 937111043 362464923 854096488 981 388317822 853988012 456355532 216608757 179508908 231567459 19177785 822933738 57814825 461628398 637840019 520133673 70417780 691628429 130584609 366670204 343579363 643394250 104301516 79232750 161198137 693387600 326384679 293794707 26354593 588060445 347724093 963929846 621318053 605227757 824695169 102968939 221673920 293461547 978231128 592662529 485661521 535577362 313168635 205304565 894299532 608062274 294985862 411250957 115224010 97254408 109119619 846717096 698227674 482506831 355057103 286056055 691223820 24979029 494771659 753108544 815535482 798787549 265374442 446437725 194812073 759172682 68950437 52842092 307246340 440256951 36868280 214568996 818163781 701892009 788152780 996082985 423396751 793460763 927964225 559801907 214253798 271995839 751974055 479673873 99249760 275163273 904906331 490526391 251078499 639614762 869241532 731885459 509373594 546248465 813617647 987038210 464088800 399846488 498886248 217554906 75675180 447677464 748436951 962123830 356463838 673371656 410658646 275123014 289119872 134790565 355324403 672354116 729596486 646350871 840010858 416986991 157866764 887776926 37354134 867775517 405382935 507944745 628821549 417005162 40542268 878814847 831338735 79943948 92306425 915959128 742104273 728754434 142333355 228589849 45990400 629272873 790676007 705759499 496451481 234195662 752010108 991211400 360529230 843000891 865531472 747994686 780030076 337804258 417547813 607158134 847297577 52126750 153522540 931353125 315332991 459004646 199680427 398248383 997959075 512851868 41407914 479307395 923614092 168730898 593265257 899591217 317493072 644295879 192631869 166116616 263587859 515611881 251575543 368810437 661391404 336484029 181598018 982588870 351553096 525719242 761522447 94176582 141637480 524978770 796330714 517830836 274844286 248215829 208800954 72925447 60433958 197011735 437104578 239178094 619670360 41492519 762784419 362982688 821772037 967320708 434312074 481205211 55749774 995396642 985752424 809904347 947763527 607825491 447606957 502826876 638298679 334119266 856699558 221435596 26073468 367401080 829584308 173938519 16143517 937702306 561666676 83978123 236243759 827069670 553005042 937233532 787428689 592758708 802074815 892804661 85872268 735883542 679416193 279771834 984401464 254590399 38180522 525230251 955112616 663587285 818734163 805194719 679310643 715634364 516662630 672169739 776094411 673619174 634760346 245210140 402830738 658064270 204566668 473899537 660069877 529343475 307700906 74362056 256063799 847868860 418108054 902962341 751664683 220690168 314461660 61521182 945598985 41687225 380258287 689961685 355430336 205812643 528837901 9667507 133825457 741096907 563483183 989803580 162806190 85091148 861687844 535769874 584039730 94854529 797455087 51902856 702953087 867069053 383787239 980102537 690389830 489867570 784202212 906592345 528435668 514109932 614654150 360063448 955648874 563591864 331748326 922239758 632139950 661754434 870772484 768032517 645421922 189905183 11272724 691568784 275687977 628900044 108305893 74844807 18723822 495255635 722586164 208565844 75919846 601346694 471632502 186293193 427003681 49165663 50432270 882125699 713326329 671893300 819877159 607446979 21318869 480261801 583841685 779424051 717100660 543243558 744681870 197429740 918251050 379687928 854389614 594842320 193561969 690032461 875203625 971948971 115151382 48993306 406863448 228536295 567568713 132648057 251465123 911018928 64121352 969039422 595251970 844342857 312742914 142489454 278584369 987382280 216374096 365859951 915630537 926363195 387646066 468994923 120010362 856297984 86358181 945902536 159103471 134054577 196317938 496820335 573603731 706366059 51287204 717871640 886971231 247047763 447546408 947867764 134693091 704423764 37904448 802431515 596664273 656482881 955592874 128898721 555933709 830214719 407749663 117565706 736503237 588646906 267173576 136178935 906732334 475599829 486705159 236351993 69963147 70628207 690364543 791133408 504280335 51588119 700291813 805251651 301960416 810299833 372392581 566552695 645378439 327910961 572287385 357143690 374248739 351171418 108053364 329086199 702536318 945445551 403665687 892691862 852578356 801492801 853165004 359270149 331744429 500164501 684816416 343995155 686977319 420147480 290631148 931889493 37543716 10454651 581943225 252247293 739049521 695719430 533762606 577212928 630479528 476964097 527888694 559292469 195246166 585871752 252629452 984236404 299000469 397761766 532976328 770080249 469844871 652633889 466101747 909742648 681022145 244916815 65362545 657702484 568123448 566888949 609681953 410279452 922707863 711521022 565494248 192672477 585775015 751530369 91405788 463697769 166670091 837544287 174351337 259572719 900683227 390306116 787897315 357270550 518527626 463051259 690273814 279722857 731146386 574452181 958001715 919213679 791103097 745617203 463439506 14716322 184592848 426954037 10167318 123189690 78838535 939796221 659457973 587683450 372576620 455583319 960712885 451622996 285680881 497275805 597221532 850057803 176766776 689570971 511255717 238676879 187951774 362477599 324859748 57825462 745584737 884307413 397144381 144083616 867399834 818759881 760280351 35300690 30399624 212929150 302332215 200962647 391852577 227269958 800759273 947087103 624791621 456554608 578792239 582405323 181516969 97736531 148173379 406173911 90596429 86498083 848979577 72955159 960660208 893201125 972342166 349253652 974708550 521498312 994186065 422729405 612910968 308450060 396421946 228663960 855056911 807404065 120521565 380732944 213340933 897397533 331065000 703864810 667509788 97437817 506594878 911275480 906286891 73787958 100173025 804080450 562092883 464261936 62765292 726633117 146901761 386796799 523003420 975055552 421374434 185466030 128459176 740823602 227075063 21496483 703177674 78421792 662115401 915803454 410748124 100227479 371199171 756963666 663572478 111292788 285293154 242087931 899988833 254030101 110469087 427586830 923417469 526246862 950676660 667359801 329721328 462917858 884639879 757298933 95878851 793321403 684843391 972275516 233566351 241292938 806124135 457741604 440745814 521588627 556221103 628847328 482181765 813880084 176940399 309351428 123480001 880019303 289691348 665001390 418998628 552719228 601304812 447397649 645810991 684055325 775037508 505267804 131242197 247053857 843421062 793311422 596835801 519890275 136652705 465074821 444872571 544310972 439659543 434135434 823958343 838514518 844668175 278956623 477194773 157833096 120143539 219526052 525677062 11452119 317107986 132949102 148549622 496881176 275343630 514720648 592023692 776847880 858605538 308308887 438550297 37171718 767057288 625724976 102437530 268705420 710398127 88064843 601851342 75286230 127087893 879708608 74019317 402728030 867189838 262619513 164068924 890297464 72754002 936212301 826103898 427539085 537597468 466432344 83490935 959150010 438933421 748294251 329258087 153561940 870372852 995027061 528870023 867340807 350675469 387201937 139076897 857333195 997176918 491274791 131733571 733173467 435994006 23046990 737804089 384231102 329702645 689400979 313969174 325174267 277336832 996459893 257178231 856611420 889120315 662921300 336918445 38719796 221891634 244142915 858108885 131039250 373292270 199638201 74820800 706470438 81979874 691180037 666616625 765946455 213506825 574395041 877521295 715951921 416538662 859105712 243608990 488186090 681051357 599004354 744353072 142361101 515754798 85881644 243597107 70670885 701885736 755932904 253123850 273819264 875505794 625715812 683402350 27973627 119854583 6634634 899279555 35773454 479843315 259323665 256269923 677203612 331442606 383720661 448270594 480602693 780911813 533927349 334702441 770421902 881466347 325170739 269163142 429731245 406416765 572366316 381971952 553228692 801213835 286565025 667226242 50683760 4782019 987363423 36379911 905803740 38139429 657874717 679116335 181678186 292830835 954569160 410214160 885202200 659511996 302238337 701377634 64145408 313815667 538852431 191224689 62317396 779358348 498924335 884448639 984584753 870177307 676610767 474958602 623218503 602522597 468947573 121936252 819613039 30500602 67922475 863758716 355710132 426128602 623964293 177692838 162804444 309716648 140485948 264529771 406332461 982626265 593919786 550321982 256896648 727080211 953644443 253385042 992201608 780532180 803161558 474874946 750842365 802137204 951951662 645553242 106132829 494757790 946473281 268283024 827567460 463390675 519707703 457012598 378146082 124437692 980812802 706352628 193782984 553791010 640870265 823438404 200205415 558983972 233676381 101200289 436424042 701020148 475390661 985568678 343098539 833720425 810325170 567767542 122036398 310493393 754270473 890511011 614753824 512945800 480366517 996961015 793162606 932434642 697883178 225288049 528697755 529941716 584022678 795216137 100299844 346773349 785992297 148051059 640905838 688620659 330138189 238781896 567972353 953345671 450846215 691602365 556045713 44645019 251835742 323862111 904154069 18799436 964948291 150697159 97354516 534815103 905653230 641384107 246514348 902410531 505467968 957386967 33559817 449464871 94949673 281058682 268800748 835208987 548890649 712816485 977656304 285359685 537412815 417220202 193326528 81497413 809444775 760896389 48101798 961343642 219748618 517995941 573970523 411358044 300102503 257973031 221812461 481573709 781872090 148397520 77560037 256312287 348860009 383893859 598059555 693737971 846845949 61890946 874641915 500869167 741083859 436936972 204742984 798434992 554786491 90484590 387081327 749812289 499945915 232459055 107687479 154269159 761555899 577766029 773495705 416042349 718386263 899833520 112037120 4158280 63957554 470167713 646107594 114078554 610596509 822044435 447907093 654557060 362759416 220162632 239796808 716937565 737454485 422135919 979016449 374259420 82540035 911302202 214951859 212485139 988721563 31772513 164366415 512744726 939715625 888245247 547329416 74514736 515239403 176400700 789507590 37142372 766426548 759922895 236374102 726454784 115891488 442093784 634793643 735987350 563713248 420191294 26788023 806712185 310716588 158944611 123967601 388125614 435560836 736285489 160741427 32783979 20705019 270167046 715994162 725832835 203959544 838409464 105464894 484247799 99765923 229543119 209264503 641584861 652615843 748778365 517812213 717073419 599369641 708574202 169567245 5301277 994931141 937585410 918800713 972451529 660989938 328010949 944957580 552567782 178299050 341317464 447377840 690495396 604016084 718654051 704960761 150289728 188879898 105391701 420762029 142466944 877970355 644269237 570041639 365283412 592780302 988143286 391930477 743436937 129704561 991588790 83167647 460708731 960598931 287803630 229795390 590951071 529643658 251195040 669767092 852582478 751210335 777938896 277868089 710956179 414835187 790396973 654618029 618391779 928391194 342628458 138379675 262948128 242813661 468781256 539475213 716863917 54537627 394406357 572672445 635263347 235290289 917665568 785956036 108389310 863192052 59408252 348684074 750735556 136352625 823601144 332667356 667515327 576131402 404693347 697723351 411378424 691771988 179535513 241454663 712159231 232024520 926518244 931089328 684954781 944325894 234564945 152565002 949960436 750324094 764099132 13422372 88675664 34699853 498924201 118461924 255407305 900884407 233749156 947723367 722509222 458390781 886556280 18686411 311412727 402453101 280036115 772298125 637966726 477547400 868891940 961830615 945368581 238178615 633969545 671320636 731832926 227866820 279681198 81832453 197286143 937408184 688894915 41538962 445017190 824833388 345298852 192901650 265781622 199942705 732965809 394815955 368826650 920727934 912813568 87701109 356767539 155829417 120635551 772634095 560817482 568074955 937222829 473957379 801039598 345619582 463544288 660823414 309428123 254111808 243645078 858385685 916297653 339616822 472223329 901643466 977812392 357629386 627374989 361011191 703994488 96873293 425756002 75405120 680018793 606124859 775806230 997796827 468890159 75531381 325547449 949732354 893682210 995132111 393145285 883118259 656979592 735638666 873581152 920272163 608231101 295739489 30744294 887173097 929714726 862650872 683258607 930541918 907361363 372119220 840767039 769747897 722381202 543626441 180321103 111762979 28523581 334801492 585843517 955385510 355617101 704081949 286229617 394367230 154728119 287236289 694198817 378258568 767948800 114232926 782555475 829332144 567925768 926980182 51514861 800712201 37348668 91306431 794768280 359699328 202236873 861066788 781318119 557075830 248036845 436596384 679191784 403059460 76849946 362012444 213753647 276174295 815211118 205197453 612766551 993333016 931649382 424159351 121959757 476969501 41498327 697082082 900633855 777032984 899355118 104322768 973333907 530054939 670019314 596349913 333899267 408851118 801946940 178197647 338386549 707201539 963794554 14640120 35652537 752843020 718615569 67604753 269231487 948544319 755498112 628784331 984022427 103810284 986763574 619501214 757862548 859981684 500949600 838468123 632813218 422381584 393685560 383258127 532744032 434466418 543061175 658181843 463671061 970381478 372032177 744386971 811156584 821594955 689747468 457383668 856214660 77060176 117229558 268515087 805529459 923610258 40034766 94798573 588817792 874648304 627490928 497292633 458221145 286527670 505141986 482585982 257836072 313239691 559215747 673325537 778263278 343835970 430715302 398683093 449241807 216546901 535726921 92010336 729110857 910321444 377949778 57398882 11408614 949109160 646518189 936271779 928251351 814979043 41900706 348029163 817382927 6018051 419192052 324324238 407018817 480826494 165429468 920699667 329081655 154003429 555619905 539234842 916212073 50408265 301052254 795092916 214460652 769349136 485451475 764301008 803298337 499180736 498066347 304455194 972748199 846924331 95830089 793738981 36742669 56717067 904148843 399033080 770543945 864487658 808710573 203529176 242400705 622145257 34502547 2101628 107407562 956035483 227347484 988388259 896176575 40907864 57184552 334103490 699679850 180135776 494367413 132659950 306157986 76274880 584069015 260636187 392083585 467285820 920926171 913796257 880539289 71828319 928482871 869910207 628649915 726860816 45646339 436572057 698276894 233991379 178234477 584657403 28477675 119173012 690897003 550753282 438850446 207385860 400432440 731338617 749688848 533991089 819804232 29639714 929166562 282088349 144462274 930939463 38226865 536570448 529364809 929604278 929137078 913245693 73922974 809245056 218121007 229689568 209133396 86831953 637450119 664863016 730062508 588076508 270710177 839829538 870030157 548177591 50373025 309820651 960980764 742872786 334113956 60689555 703725538 901581575 328717333 482738924 812777781 471395565 944174001 706444808 19037021 990958169 434720254 959987120 276295801 950560839 4624602 260855564 51662701 878220982 271040096 915144142 876405346 507061456 929875647 404153896 976561814 258698153 519344750 976670289 824324880 900712354 295476127 18073886 7008076 487775283 224438484 128358946 55489570 156970228 138721834 793554621 702424443 706875054 826582799 123768004 318387193 686413921 942761644 512703091 957510119 194501631 99232800 85242581 294071685 46181088 363922660 68120474 450670817 843265385 606460276 909097544 62240237 971948643 988943420 545086640 646376260 241413857 54743285 525495314 398145508 515811004 722676885 502350204 80424814 830884675 708938624 56713742 980918024 471947706 529219257 835353201 698571750 841258771 745437282 730846068 805265310 492289170 333534568 760734901 677284956 352133403 617769502 55304277 987362 831444249 638568719 380150747 485887930 25907335 194249652 395571395 679847993 405160450 93343035 214802912 970495937 656103990 28032762 478218046 323461519 437714093 861050055 929277001 966270888 776812036 850189886 627681202 434116475 26460108 674285015 84828752 226629061 539476791 753579767 488362391 599783109 500504718 534827310 298684844 422296674 349496477 681543817 601591168 347725788 975074473 914596377 647488425 810036929 941062846 123896548 655013256 940461552 21768790 320794438 722373659 140200669 162383134 595627813 433101774 353361551 910012857 898675173 519927538 400746416 672283172 535353681 35585623 863108723 604537769 982637431 736612036 310740748 211657461 858918046 126965265 683946844 307845398 138877011 274310100 581596080 623789157 655094227 58123581 707981733 205383420 672309480 568506103 561755062 854817448 871018813 647867905 668507325 21371569 199351906 273458930 846277925 103948801 819617918 130728788 620793797 136721971 359368847 599592519 842226298 866944997 633043262 182804564 885840704 101974484 920894129 597427011 530553271 120980187 847501321 890360190 577993769 773998802 950928692 8211943 245745417 562282067 208835308 643336854 348119650 729413446 598247930 500139489 607449676 648263048 367075554 667120409 483823375 348018162 54635459 471118025 62228464 527151701 520094218 957720567 726885799 541140435 400080385 662512323 767970775 623954894 958981631 901803064 90342417 589563278 671579028 359666980 390232715 215689194 141617640 506925014 844893334 822619847 545048554 433983291 583936320 25563711 819905823 219093286 601271945 945355200 360114788 607217600 14586479 513187639 107503605 733646745 600077070 109045245 129395006 978077845 440320669 577054746 504442359 424638531 402492313 624453666 709364445 945916006 817111674 746590569 772842808 285863597 870511643 525237443 434328828 364249413 756030440 804378225 366126445 794526824 14830706 441107872 915911541 688182411 795413494 112604820 402745360 454847574 255524800 538504640 837952391 716652998 422686338 957465701 738320091 505296947 572920253 733692561 242074767 163351985 406445049 120994370 832613474 727506924 266478105 457430197 504837197 518015317 621841803 482168820 906968809 750290376 588035706 312879673 189713352 451870082 811853576 148548159 735924213 956134250 575731866 153666813 932376680 428649047 465970241 459591431 963072710 426381709 432029141 65151446 437412993 440165203 949778908 334675733 444943426 341370910 842729204 779638584 163033675 757299575 13871893 554152460 405730391 806071589 539891211 672253500 817996369 695063329 258901936 692352042 616169482 433059444 703204386 252266642 335356094 298224360 572949768 710499881 32251460 829151072 234237019 517585339 268482748 138047341 264522290 112169741 403400629 40356911 75997696 277317885 143727666 238094171 652792624 447965150 901962756 580006548 768667885 190726334 751988073 125811200 924687472 411562358 288732241 880731653 147224987 309686384 517156720 529167489 938414667 683696549 413269284 167637857 884696810 548764875 757716971 244604870 238785373 569851796 520056929 472726233 16281530 902376960 70814252 95739957 212863651 253630202 98497711 444415588 506122190 764636747 581875774 669482292 16993849 853667660 898673998 938513709 530493444 815330396 452069173 942729752 70198090 234825594 369039652 680539169 875300830 246058074 101015179 764408933 957054150 648481980 690793166 549967712 344707902 825374032 265659294 433225098 668454492 451891765 136584149 941514531 20037617 413029420 991412995 864307370 211345210 876177122 915754380 13682512 734303257 560080852 848596563 479455699 142683232 221202388 218368173 373861430 100308881 109436017 746451897 580297104 476636233 117797657 173982071 629619805 673668321 672538417 286976354 476672400 686179866 276430275 128481513 64331077 431542221 925977917 295504667 865484973 457411827 368262810 951875587 362450081 511283194 858596884 583351768 685123099 651439456 195746552 715151454 964025317 486948210 833759931 688820679 77284617 124055272 291179997 231415130 1184965 79959056 963230004 783567217 649088373 604831034 865102762 63011063 80091379 218716721 522575435 327084128 563336386 994411444 375472500 344396618 361133028 122253865 887623596 627979203 92654448 290817260 464015880 253106636 584352175 369244028 391475705 374046119 392313283 956289634 419654345 558079908 199333865 521677037 882623630 336330070 941338523 446271626 775975212 500758240 774884329 260841723 176567826 252979881 115963217 994554202 17258757 39673741 225171796 137973775 415528124 658705748 481245483 547833399 850214198 378567877 817503777 417645394 519074677 568179090 528633242 468177761 787010745 189044720 401387197 99540056 420975785 638978427 616071030 370950515 230574825 439312478 500114493 164959358 518724566 48790724 809034450 387798834 453930409 235566209 246410466 776952366 572918388 128611995 271841778 305625699 737143635 744134497 349378263 187149393 850673521 498939605 806521783 759026036 405096944 693706140 798743801 431029880 295904679 936051037 741679588 664562291 829915660 188216086 3070221 682527670 927149920 69786882 363174284 274228443 408534937 323983175 904220417 328053294 597871645 594936985 981890837 526382038 505928815 964078043 792472727 861032448 262928774 972938895 992563474 667991748 876466344 119271730 492400298 382432297 72468105 261856917 688830139 752860872 982619617 181914557 955834986 388952372 105227935 571533544 601808891 637720934 98536878 460243190 672272925 919378640 493945248 133479684 846500603 712578704 444563496 846670953 946755306 859982794 956748190 748644593 344587344 430940950 602278959 430197476 551363719 446832813 597348401 300839430 581957100 910812294 23133049 939914050 684998696 956294289 494980591 996408423 330926949 202688734 543739381 47677819 368801559 834066464 907013078 99630203 556317908 128889773 728108626 204826331 706162992 899847523 689606368 476551737 221550419 250458936 496946906 813782528 45560462 390074327 971711773 880694604 394749428 58957140 998036084 459603826 191173650 201347159 922412153 907909867 196122238 240369126 374330832 455027442 690909099 758488353 144876063 275665474 22097294 565436196 844305671 282231238 663601952 613318952 675259323 508028712 903310290 535849436 293567641 980255049 992634971 188335476 448972278 807330427 17487234 955800104 945153188 646395831 398693717 430666964 950007791 486758844 526747475 197021372 160487409 695255802 835906755 299147871 416999961 804577662 487342955 982172310 771860933 413322252 176511425 192578218 936709240 119393555 432326619 553566801 871717343 949960363 709955248 195811865 319666306 743806359 407314422 38406036 676977880 453343240 397974218 765312998 603263572 313357355 771128136 483662477 823712042 890890216 503490064 647685725 431168289 11093205 60408969 505967575 906544936 950244030 103776567 272202774 378586379 958602560 530014100 405175034 797961556 211752375 483809440 453982477 886799039 444594539 756895414 903307580 155867727 230275344 698290899 105218208 702599017 395246593 355486756 339629013 849537559 934142566 298318969 613819322 96621982 625793048 244355671 204871272 102698968 539493958 652125720 98087131 992390765 885145690 21751662 696026141 81112806 301049735 298604110 382862671 483364630 75026150 559194254 162924160 470407978 670812398 34654918 746223439 894838706 947210095 182513431 811315387 698340386 370320117 929917955 146200423 33889237 161180481 133984294 53726680 420509364 485650526 398188578 492441629 745397152 477081679 93192138 949853518 413106138 575455822 831215939 337253362 182470444 73800357 335743359 917008183 868035243 993247482 599940788 934174424 785691725 889991975 709231779 336081341 681228851 769841363 107926016 63908004 345505521 303809724 800052263 214785791 68391456 98583213 669689128 769597884 932887171 76895423 779861376 813549658 372316289 949338754 586043823 438522851 553125892 421607137 592676792 442975175 508064438 649021479 55705281 406114272 419867171 675032050 990626700 368151596 319676405 152161239 316650517 21781114 516804651 252821285 358960891 176378508 55337505 201763357 85666023 824263602 348519286 665600055 649801708 138415413 738018499 141430862 299111065 61187658 742135273 927542650 718650716 482805923 602486680 426155797 954646373 535191171 555407981 956697624 205059331 918870118 66753530 579403477 127592083 297112275 510549195 718017797 763480184 783053814 222082320 733215212 507383190 888983355 953610302 839343046 472103553 972010382 796884635 835968801 432803588 402965110 421598946 186180200 656610552 375865421 810351101 467761430 337928597 826234050 837409086 651709193 649603596 192914156 474907163 420514016 154667357 571936177 933869986 321172557 430821309 184653550 488200412 675672714 102624120 676517956 725628438 286368932 434268780 241948645 739993559 948438422 939300288 417007823 185012726 830402619 454420993 485747816 408037278 147658953 23309981 205562810 448522396 179702490 860875216 758233499 427130568 422725941 799583696 434460328 831818276 995065845 495619943 251636003 8589664 928012385 533265507 499400637 562507189 615749542 296730886 944123474 918019291 15264462 906272541 294672245 410646782 483867279 792494001 721054667 132087507 596693391 247823862 42030596 436923159 352972291 84517395 786169524 420797246 997373916 712927799 794505315 48534281 564696500 70883952 163059913 402825953 300919690 486392304 348539708 124245800 737578066 854960303 581208863 38638151 606500654 416541445 293373283 670470251 124110304 174370690 301793056 156445188 102183672 372025601 588996037 419681642 387208636 617607725 380644539 96278532 329528536 225462602 391507866 627992883 420175028 555436757 868761196 645291254 99293080 67542391 72928128 53998893 154405264 204532891 667434104 783338972 354337326 346793102 908964666 935737978 483401963 996592817 665460449 954002097 553372342 840023085 535844378 916360423 102898497 898998087 679035949 166284531 361291862 787234439 573004713 799602332 270875738 324615481 794009782 8771370 590625641 252710816 900569781 282428968 324308027 804332692 927868601 863806407 468471958 135145901 359360106 290424756 934537510 671880020 783862111 92312700 287589699 665677635 193573884 153018624 230665738 925384851 548578336 285989457 84271498 679674672 408429497 339775588 108640493 355721553 120245734 849922851 537617708 667655802 503984257 4065582 932367319 123757415 677045320 978152858 501152382 798787909 124079647 754752121 404405269 495467361 608999636 992277760 206849509 540299814 967635259 538507539 278907690 806465334 228021916 61230548 782913109 146266277 568738807 930192485 654969980 259700366 346617375 522358098 339737614 690409120 813705931 703437909 605604995 242240847 61175584 962900786 152109922 524894609 913339526 570496801 866247384 504115152 559546687 373210345 450383535 984003799 956122199 110602243 105064366 614077286 860012977 53738905 799067606 270254157 645921009 92513915 309927587 790997032 929921013 291382338 607337894 136795397 870053344 650494125 5198116 242455032 781128362 192972575 543462120 967114821 305842972 926378537 340594146 405713259 43348133 588151231 934900035 607890690 900081738 922868160 620405023 974502644 173423005 550056133 522964493 320533739 87018302 216162200 464949963 633452756 101211796 438748214 167215119 316987365 781990584 664501525 815781577 186685080 231017733 694777677 317888623 617847520 977718006 201297993 839303683 12205176 326197139 55750642 898171635 857612684 607149398 598217530 540510726 20056632 855436810 345747583 500867141 167021274 158976149 722704558 824183936 291173367 235370785 564919695 424456531 922544741 584386570 847216490 757892127 178821537 180055779 876753224 979529493 334772967 681273339 631377518 530226381 444216233 510989774 588661599 970670589 519198790 727173404 347220508 431168601 593330689 4910433 422903536 167307057 138625521 892433539 925673141 433011516 766589791 271425257 788069195 159569047 473522876 688447680 161458498 236028136 947404748 567704775 925203743 431935010 524249682 178449630 293038401 493837274 535154572 431647828 124659717 618130110 674486951 925958864 402706642 773645201 837604782 218601083 844194781 97858687 977461399 120539110 935601742 778453348 670543885 90395263 456120459 467683061 116497657 886413584 817215830 268773355 879188529 940208374 737005668 665431425 536337828 728992747 319330973 918586214 743194444 946968327 278999807 520988442 252684750 765730941 299555724 667528824 398789996 217635138 951899882 143004453 771211113 378774610 46879304 171625707 184261377 246142377 902977164 12036648 532704934 45495212 343168470 474815957 778384189 488036811 650756393 58053036 329832739 98207411 73575064 630850896 909431965 522440084 976226147 166186606 852054374 733043236 322616897 933462996 958385857 66852424 768208028 889081794 558911894 359464257 842597693 900312748 805821745 725102336 425188265 280066350 262870669 130775620 646107429 973068518 572594142 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 679054898 62570491 391489863 340288471 632044993 70045755 706687624 805071895 341855466 525730004 1397057 55421754 765324856 989101946 358589120 532030040 468704051 284077474 460549358 777024088 326556822 600406089 184551214 358381283 110434654 69804670 115701959 595926821 834399766 710469804 57336919 560863312 907371850 745334303 200771789 221923978 484072763 409301874 855656483 434595037 478231614 195340016 799450798 594123791 149789742 862223993 564330849 544095316 124494038 47204694 912473696 777547626 743497927 583040806 734297160 157771755 990798003 85218309 236954215 402202541 451988852 691789254 969513183 415682799 243369081 699729604 759205066 257095408 869502177 837926171 138820233 98502952 224326341 861789782 206598032 556783673 14825491 154487321 297126806 810560578 627878798 485462372 231594070 186102010 627579645 800002777 390632486 663503171 863531907 746745766 872357944 762297043 981818289 324306001 569977496 611224551 715826775 484563840 417021173 679670341 202570104 105748930 668865949 565276216 126965090 465512497 394387931 841166441 589988293 22904155 126139182 252562131 277813212 397320948 532712547 613808132 245359983 886500113 482676140 869948110 869455022 385820747 584932725 859635644 499035470 33123186 151256293 64917279 992549969 361044270 631527167 485422897 939811 500533292 622445785 790566258 711838870 349448254 447813591 499952292 444303436 117983176 849560640 911169174 304844054 521409602 407975875 782633555 337296176 350498064 531278528 521828866 516634148 61312942 18980906 192076129 669795557 611560596 419443609 802584975 236873418 55251523 711385012 58973430 672166677 785278819 672774634 89442080 663991765 298128229 423632058 134024425 68802962 608162042 686127118 825458315 689139814 752037601 818722515 767211883 526758203 630602027 242361168 702332837 296907308 431340498 912407422 356211379 298439677 19362133 944933797 809907546 591484612 183734833 129440483 453907841 385249949 251556361 466237772 53801278 296789182 912590471 911442243 507072682 252165680 356105579 710997245 159885212 521244255 448557942 860946689 768127929 683637077 474615639 184175432 804767379 831103036 855613919 889343086 836181920 830305429 212349744 768330312 243982880 602941174 799486068 131599748 67720254 309645430 249636605 449840873 507918846 845994648 429178310 167476731 865202661 465109180 871780249 808423398 527175412 799375249 593004867 170209800 201362956 448056205 687870664 693245384 956033496 549193487 95001924 186417557 595062743 415690341 560637642 986897484 425293522 363329376 417890032 230054103 167493128 805671933 175211552 644062425 499254679 973701691 430884916 31525887 741369379 414975134 314370335 383957933 336291043 859237528 276730173 452679660 547400950 266391744 632072626 804462536 907952219 270490886 287333567 485239425 540712396 141730205 300526238 489664743 613607096 885582518 669928911 846544746 307517191 796430968 331661723 854646937 400896646 343262185 597662386 117517732 181572136 518547393 566852731 357132097 853236621 639951564 743619754 156238511 409816497 438565224 290092465 341421812 679821920 345230999 206820548 101500694 59337147 142524264 489433069 863382759 182911603 549853594 840669566 669376908 663676720 756295420 773743472 774808530 444668004 14094801 392575695 500566419 468517659 686479889 275528305 271177872 386523937 879773851 82674952 289156618 755027128 849449275 989162693 192098834 923563057 164321805 845016807 200091339 404483744 861031103 282540039 774869988 380439600 452061352 309416852 336638047 538508358 978981176 269680498 816327604 906526445 642265778 600916741 509244725 742742798 797712157 313152091 468802202 281614249 638758135 977772462 548262785 250463205 165450029 580005068 38492933 344125564 818688526 364618095 131918216 231153778 796774900 587156097 112393455 634165462 60507579 576954816 518861810 209417288 322022519 924589883 785949177 944556435 599099953 590077647 931288802 980283314 312856209 380642336 645885575 885170816 951106817 311211906 941463378 593355453 769226562 241090595 808446764 412008780 243334532 626490922 174481028 90074881 49337496 308848877 930284202 30027088 368257648 79565771 856788905 794254227 890726600 930028609 730151231 247015241 561263661 731269365 112113359 952832616 915627500 682164331 659425068 464582419 796898224 740623015 74478986 13128724 413277534 661060773 592324032 804663444 717855956 575453932 491347350 953749486 320661930 656413256 37126576 61415446 66357411 965496495 588591697 221487350 300208897 537679724 44244154 299126570 726007725 678475129 858574612 775766527 318794240 929955058 524599528 650810695 393835334 321976125 880462181 230230341 480210025 804862557 869728570 581338166 841284629 95410269 628933202 955039962 929086585 621755852 920638676 590829148 92388258 264782357 934331122 592403575 649243462 705972203 286673629 777180655 485569381 117331213 514504183 974266244 579125051 589054420 532158243 427960942 904751333 387936632 882882870 639313428 718189802 811501273 149626065 824981206 124697356 552414725 603355845 830048727 848073067 193257404 289829676 325369531 400096877 930511733 350595861 926708615 302807601 882657859 379388616 233974712 16306983 281233978 738478015 525472952 27909574 529639991 695053058 481586096 839060122 379214829 752538119 485382557 274463668 267848275 713269191 516721210 514765506 159703343 190132460 489697083 670591842 228285013 20809488 534447978 598316604 327399023 853747178 733006284 924931774 337628836 713652254 734624429 123655839 983757503 348032148 573341013 535731054 916373969 376735049 902352210 567200246 255464137 965089568 907597397 672166640 526802314 182374681 707920870 632353294 116208352 789775036 86658944 538110413 457136360 215233384 878412150 665771770 526089572 92781191 916679386 632814437 758636269 547726400 660634951 779055666 736019232 146414093 550694148 584821132 165379914 829913093 272069275 856143165 452249536 18575936 808493747 556093820 207530302 68216647 147780338 892241094 994053876 845545094 986559694 689848628 995062326 320465710 437468327 998201198 824622509 105286083 370788700 376374561 66896439 965795718 292493307 722625148 172428105 943215107 467378891 285924689 955220572 552470827 141233811 814664699 78751684 63275646 159662086 602270220 997063835 366363171 612232120 837102916 449701125 694769033 637519620 413926387 241662857 969209018 836590366 200024030 274279472 100679701 203109061 231123219 126281307 934310255 495893245 576389419 660607462 884782029 149741323 631824995 687348684 803405709 617203665 191615106 846025010 92649873 37448744 731897089 347076627 554014578 815654646 219975406 490500421 613161214 233386415 746111145 784636441 216262363 970433815 616422923 632157341 815395646 491937698 962612855 659484846 376141253 759896002 83739734 24037257 967116093 454542509 717687834 551167577 143008238 259846825 949008340 400394156 361110804 570535858 112439487 766838449 751982813 735296169 843888362 946296019 618350807 53655323 456957761 93346244 870589975 333768955 548342172 304198816 501545018 604416668 901697536 283510828 846793725 404491774 258112236 128836941 893639972 191278385 153385407 184239369 845911228 982832008 433492481 365738854 858638379 306764604 718749542 941111900 558202180 657893224 295930529 899066476 433132018 570238098 95833936 948800640 716365819 889135098 420242066 685924761 830383734 469344267 865856571 582504196 758004492 437199661 747880979 357431453 826258009 759505222 392347273 813716925 645434169 449319467 713902123 940767929 582733665 283315203 352580925 127993359 590319640 82957009 725121195 15885874 152538343 906861330 141344741 634808157 935729152 374655145 530275866 352448152 526516750 29506278 226231399 247166015 438926855 889717903 52770592 469550856 377385223 402736466 416230511 432036469 766833448 726259172 326379647 798829704 83654697 793031636 328484349 333739017 348263127 645705788 765066840 566674620 905421739 512775556 539852399 866319948 303631103 834373034 888984814 281519363 392559728 831013191 240057080 153104990 640206788 645723069 964953484 423076679 391506001 3861978 563869750 851219158 522727127 67078778 522925653 747844994 734489871 653926289 720046839 959587301 480874840 12664559 826657760 64366607 696727359 470998021 111820055 230118294 855730557 636173881 922299672 854149310 149020887 127718506 915332353 559687308 810190533 90818221 628829614 419893252 766300766 430239570 21582887 823231979 645290101 290893777 233551485 245941550 948574148 280477508 597334259 28343742 511502800 269307506 909919504 980648095 382626329 298654525 684536650 623365310 576808084 488681450 302739613 532137832 739757544 910314289 169515801 455757921 54944145 469443164 45951649 680441383 280363961 805457200 371129466 988130509 953913189 958170580 888896716 361888276 585563273 274420380 152697099 639398301 36325624 616777216 774429126 335178235 62962850 128948112 623270469 416066626 989266871 295609366 281377251 661512443 191863267 892066494 295513965 536661968 609413049 885291126 697597477 489398020 939006277 927833402 392039317 375180312 863507992 743420754 211901733 7075718 178454674 26314336 478819027 447501580 854871136 728691102 594824873 259605784 506286119 174265266 292767628 285287130 214681297 218256952 906436047 657412890 931516726 764252354 139972703 734631311 505079233 409478933 670223281 469760356 27355332 393291111 982622616 92935797 770443315 22978173 588988451 98474869 817785456 584165474 61466402 171479529 730907541 645025814 359502412 18416329 143176767 716045484 653023411 637012765 601414898 899983208 236366435 445238062 240020601 560773601 400033247 98146760 801633632 643387776 672439836 428137884 625074869 181910956 675175766 271478714 687188921 263112017 531143245 991730156 287169303 850790269 486037007 257921673 404784467 976566764 230838068 358223028 735630375 443868557 194260891 535595838 379885458 553031123 418029022 46354869 917309375 427403132 261488801 784890892 474038715 211452526 63593007 110054064 373973965 327756631 486639788 842750475 262202681 611249677 94710401 5170374 232840559 512158380 630948149 499090655 125382768 656311779 184284037 189233889 174921242 340349329 283056971 285953225 293460448 689392362 326411758 496164603 432902234 338696997 294229224 39254093 599936807 703582952 580278858 419045921 265538763 536301931 941606250 236192784 481994417 412662044 565867218 316738103 958247058 73995745 708172676 814389794 169799728 738437584 983951603 843084915 311415463 477255683 388783500 818496680 129122104 182979945 480596521 650209509 225684609 932185776 442701158 7438367 497627197 12716037 320217382 531197299 142367530 468682572 722241752 457250892 659368169 98521438 20916243 162589836 214144802 363016157 679245861 964466582 961612921 622660828 270096170 366821225 955083687 728554281 649897046 669300139 135575231 250875783 840479188 807602433 70160885 200117027 700802267 518886959 110663494 649993638 98953703 852273089 595582347 147451661 323020280 789797853 55092112 151841830 127989523 449042012 760382456 944245447 222664397 985651025 970170348 673782515 475762074 853036693 933071444 245367819 330768245 415103477 266008999 242695696 585576246 854052554 761528420 760961935 639020520 758034903 658601610 363472372 109844799 394233514 673446728 339638495 753313463 119199471 608849775 763757624 110900634 633077398 96029361 792548610 864331154 485008620 676121426 219193499 226920945 954498883 401013913 965793626 8163831 101000039 948097587 601697550 367173722 223928201 453886902 537063707 45345220 100496614 87298817 315152760 645587940 484698715 15059455 662843787 869520763 896907480 353212540 193646857 881298070 354256059 42597635 904356327 451102725 38762028 335704087 47160429 611071401 227677972 103174220 391967736 980255145 701379169 569485304 254578662 211851984 467565840 330213273 119379858 304207839 115801896 413562243 82827873 218526615 588350470 533309914 328763087 96620221 195367402 583271816 225617402 668825651 553413851 709204643 617001264 641497868 995922714 129627924 483859246 926096561 541832319 245323618 308106690 276004456 556462377 223528053 564127709 818910977 696354537 954831497 249012694 91676119 48568037 396168730 567931203 865940468 880907773 837275340 201369922 483194521 388574992 409839 834173097 303556373 715768255 535683837 211870624 301310503 162899039 789111315 107456340 127447253 759634383 596098414 512278771 455162834 410655246 255175046 877561991 945787223 228162196 378689336 684591099 662580386 357612023 389463247 748057077 291786331 952131778 950490323 970709399 114846340 268597275 217134849 6072404 128682652 326965789 901126904 677080921 287496769 941892900 865710486 6334524 957656492 913605706 866262332 450294643 910461463 44749156 558860140 280616008 691490931 633070989 901003126 871817828 517409459 525022942 215971464 355775939 905338686 167099270 5866657 548989369 818767158 763359081 874795166 682374961 9992081 365559984 497398445 909613175 163139094 594240030 322313985 954141810 624830762 83766986 382393358 918430243 675061004 598470831 968163551 511856109 907248117 780196598 340847900 239404546 290152958 392437494 765956277 479134167 63525868 777643654 124858524 1984547 455286019 514136077 344122340 406522011 563412107 223330341 831965482 545317271 463046316 84816331 507497984 130393898 988395163 145978820 521319889 38258883 333448577 856952642 63493775 731781347 114387570 742555257 680621552 117525522 737212526 407292090 290538903 874118070 67208612 443717737 215494759 412103916 309222458 13647057 762452354 233938011 317419741 100754188 287008769 355306549 55731120 334237463 225459118 997775715 965383189 251763471 515095071 615670507 771849595 468162305 285161505 279322123 774814406 221401776 686720697 291131943 633930927 389811072 325434895 241672222 869256277 876208454 963840776 861311397 781420864 600109451 78180934 93062764 928917118 965719058 36159802 374914459 939954836 8505287 583160295 447455993 721183275 991970014 393632062 761966580 275833739 889397611 674802253 641088732 168725491 966589556 664446547 992810221 721266910 258089006 884435006 568325291 317521785 698747133 701216600 477066301 785125429 227975221 742957806 402002254 474180730 401429256 409509854 88330994 937837492 32268895 679302039 623854792 945781447 731395506 787305928 814169699 973423132 559212042 200290833 831527162 11538635 579114964 251326722 200920191 662378071 146407932 26391209 926157992 407710917 220997573 703927850 678746389 307249393 335552659 915680488 806733154 667298913 195491736 271376613 690587248 337401266 834572211 669341838 631178161 551037483 695722373 324246903 600405126 973467446 338299762 384174793 162990507 129519928 279516360 443288031 214954902 447455363 914489939 520426949 687408908 600656824 497100876 522571559 900302725 959292013 480932426 168149011 769158473 102638387 981661879 892600158 209642778 899146978 979249860 492378362 784171173 682148740 405806554 803417590 894375421 691481935 569836912 961138295 225286007 543924439 230620551 873574947 617439339 694071209 647443756 975881301 757443787 552064284 287222035 512930123 475824147 593216816 163759653 831528875 958882846 419453836 396604927 760855753 970002811 594123050 577768635 224982036 57443509 638932348 54460427 159675517 344895483 748119075 611227543 680131652 898520688 358233754 17379419 651704247 880957244 284946018 885194508 484753399 573238538 365069361 888358639 731573806 761529445 392168213 25273420 766860808 889127346 36458241 105001920 315173660 210849056 796978801 356073095 806305224 369305234 570622605 724840929 486876109 152934769 32596801 35853175 715222721 246903669 241893362 840389315 157191308 447008373 89873578 496731692 817923617 25588485 410045760 894717729 926970819 192515363 637106402 809062503 598501406 575102865 986985293 719095466 320053836 223001590 588820497 673354372 964045031 810715019 780529298 157356901 132417661 379915961 981451305 453492400 939387769 133664864 804307680 178750671 430156646 261330324 341485567 460900944 551558083 207074037 655641506 885952757 347977646 508673245 681172880 793191975 797262391 60969545 844309443 855315893 650892061 160699927 40032894 891226592 393926775 537525492 49868186 686045902 880265654 71347289 24742743 366146535 601561190 322347339 677397716 893443298 809014159 526042433 663813141 498585924 410534759 480560596 352237033 662137452 870992572 988767172 996996015 907854942 232939652 319172647 677474119 838456133 462396334 944041065 261965580 674369597 826994717 247957436 308696224 254165991 527131060 526216905 528747692 355208904 720982637 635447635 90857864 442512814 614374713 71521127 491918553 493683887 612957563 263145598 493397160 501578034 650960418 894963492 988993628 362455547 283933450 892203380 162808324 474719460 592512786 630184136 452440016 800314533 532134725 26636921 303322327 613796937 30648059 191234086 221658992 343193095 516289777 913625262 653633045 991399763 819938115 406161170 622477324 711528579 883114624 948108839 911254288 663277273 243264201 496379602 894183008 383312177 567119693 530760058 58863040 664261858 238384460 311900066 888371946 492418807 763516137 619847237 980742303 663225880 692122886 293234034 643439433 898368246 795873359 465629553 847354085 952169931 677167657 779621228 809798364 69978616 921640945 995780231 770864812 412606855 806927769 409725268 208479319 567993396 600687856 51314459 666471631 784313783 772152140 829835367 983852202 716126064 478813043 847140682 309670747 984279445 541135122 413570424 709710218 229371868 734868443 814034541 704010400 129738343 447648700 812290806 174848385 751209306 325536030 621613015 794948013 4707789 667157485 175483284 521841208 227591787 514621478 377197758 699049263 479438033 745583184 885872069 626082706 76485361 251960959 861756408 785036044 905200014 2885152 267441438 308523555 136664604 894252106 806801743 539281338 719544700 468098071 314821806 976659490 391290759 397120232 427650248 895844598 514191569 937583819 91514883 459773343 165548082 545737360 257654171 254239805 503033053 350619882 893912019 100436124 163642748 714845791 593766927 19667052 853918924 230122043 286374622 796934943 401100375 90309166 363944833 618375214 370169898 115762099 67490846 575243126 764553042 404490284 365285830 858805817 669452905 489894451 69027436 335499765 500084594 261548572 936890922 443113578 966529652 615156045 430080343 972440021 744263853 466782094 827676383 696844116 85950008 234977658 813288835 461315320 995110416 724033190 45222449 650526365 669820613 634401283 690761460 438818759 430864233 928147191 937222128 510326153 502336187 629662544 603212738 695685408 83348325 144844115 954032167 720196715 539528655 589476906 885709702 111120966 729543817 623683561 277211500 887555634 341128383 512727520 974029224 182274792 211736206 24872876 578198073 253052097 460767260 141954243 460977013 368595266 176631857 781239259 814630084 319472918 867508423 715220133 40109503 310202691 867436753 950660842 88177638 803171718 816781755 646640998 125680114 179309881 783267324 199955604 930876158 807157142 958374212 552846791 847800584 825756615 391819403 746948847 470130889 767984451 868736296 593719603 686737848 853641830 284349501 462889982 996547734 26389972 21553237 811834458 131719849 830927995 599749818 133234035 451307894 371881115 199458018 359266061 534175640 909809793 871212345 380823972 8828745 885063704 367252699 894567226 401289164 360277978 414679591 162532417 283879460 668553173 609668272 691629038 347788724 852105798 93175401 678448952 60074175 191414145 386668030 133275919 504857063 644573020 56512535 971845889 184623072 887996357 618406748 565801142 972663033 731618055 718981217 369159293 915316943 427634640 444794703 54144335 559130616 519228066 498696774 588921090 42208301 276068139 702922872 426124760 167761704 598482859 732838286 52196047 826990744 573107864 228062899 731040032 256116882 301471023 92841996 672218974 309477232 582818786 893574877 68287248 8837923 188962885 786220873 486484230 345949352 382156975 687698205 881862333 898276445 859599296 818090621 441805736 349332731 66288930 957727081 959687240 860746878 79221921 964056795 578121129 347485753 502052014 216267143 727356833 950970879 243818015 603546664 881350503 730060856 751990650 576794436 101556944 831753638 265129726 470890310 508289054 329036197 693922220 22075407 535916936 284367017 420224792 913301794 210078565 121052576 485895561 971701138 868934235 340381071 721972796 767638562 776613769 953888911 575098592 799744904 193713513 313576775 362136947 263924241 797807762 560094963 132731390 834886430 774976966 106652821 691275019 110008549 239471574 786583377 19370122 6458226 266579380 742562416 337555799 348937608 655459263 705247386 423154580 896102820 928963321 411690622 315446816 6574175 956593882 837479823 29995708 990522996 305177178 463486551 64350103 347533412 124329866 426684944 116122252 175745176 659010090 581978789 396929356 890187784 211753317 694012414 732890843 873648368 338800805 254416430 987647872 400058315 177622005 492445530 827800486 491701999 852695959 847995294 910614090 626627885 803295540 570395056 817501077 803540315 621132495 550239306 465626434 146818414 578119102 61230391 288895279 699132291 7618295 333712731 169105788 587668600 508549880 528049275 741291678 92646978 748823880 913957236 717248661 142980883 97558068 709091538 958205370 827454906 703786636 833914247 111578708 338957795 698346237 12569063 154709761 142241443 158790792 627330268 362782425 907646380 984084003 101118524 626079095 195856767 523997543 996936952 663840715 606808655 9821065 255911482 878093263 160712581 846485241 148211716 89011155 479020122 676260497 184943144 183614448 897240260 143033192 685234980 518456095 642108560 504075372 841010853 683193661 10779775 92724974 541580164 350417876 570745946 390474489 476814837 530003446 200085785 703762264 330689879 71418467 143056051 942152633 965375597 690006523 290017208 477791814 158793657 797304667 941255410 349293069 455166720 269962425 490010935 256277498 907623623 590511315 122533424 843888201 706014082 605725558 774166970 92540715 177445419 512661555 439422908 294913930 143750812 368940747 361594919 682029809 223926883 500993748 563993265 387696911 162988170 570900550 440962928 771665297 939862070 574430772 443897463 714306694 25312395 666255900 232739532 170323697 81014671 967950134 429403827 667908944 449687851 697997118 570475112 648582254 3771805 919646035 438875337 391244368 254421037 434546330 110633353 774558280 407211556 290103708 294408682 63550860 51466170 82773850 397584399 912740959 218782399 1562144 493255506 792441664 608107201 147603404 244301703 5312188 591800200 268245514 853610499 820031508 578909178 976191429 921041733 227196605 396500085 841731103 76616261 525994917 985650602 582062704 379200340 918402301 84746124 330281654 623703750 98870864 99298490 188813743 114392246 748316961 350502851 468754628 431379272 331338463 276568494 355798438 936769741 83269049 78767488 292430348 631099633 129401068 89683337 725737305 71809227 75463823 419071406 923222788 588764468 584022042 211061834 600909039 300623198 924762152 346429329 670871353 84725985 301884135 697608555 16119261 892732182 189482282 203813358 727900333 220997437 212706247 564854983 291531118 142734499 993981541 380646149 813202136 777971286 665210057 736490795 179376387 608110638 99083949 911856908 581316512 487566487 147658612 445180368 996055683 425379089 771967500 120922904 158711889 976782955 98514731 509281541 693546558 656749179 610877186 966223446 202976241 550346075 274141656 168894197 823658306 101826245 623356073 61536530 741171061 874107754 592766782 955515593 437607463 761207383 775863452 358539683 354449236 794829502 587433318 295946763 256249243 908509011 314274983 750155910 994346553 768829601 236078901 878781563 240967836 106941253 414329379 587866215 421043558 94819524 720923996 811072011 835076154 592264905 514130909 133632151 244436387 210830243 612551667 373443607 682755550 254943920 861360805 583492092 37210050 285137375 235748105 535675419 911093292 636029884 706852849 889579051 708194199 311854324 12384029 535977017 623431672 983652138 792514910 478756307 810817897 961428648 232923265 274405068 50661671 665857714 623658753 530815193 101016877 624819193 639368026 828310435 991658295 920840548 162781972 518487726 986518468 643971162 307175050 801387044 569256634 431212409 36276576 310637535 574908380 540650815 690597415 921177200 803498884 527817026 515119820 53014850 89197042 286175426 946569026 793185621 491269556 800884016 804507628 730619192 219021826 746797922 382921443 289295798 11550578 880289155 111793508 621838660 417455774 722280312 791977246 223502054 104146984 731635388 608356352 5237108 617383927 449138519 380296865 950770051 954025107 901513888 832393973 100500932 528737903 88065632 455343422 325390579 392627195 412999848 724757004 120362955 740950685 401198189 577039177 445673679 753795393 65712836 114881859 832195650 826977361 499334509 828972406 669313491 257541799 24313798 544160092 412592423 974617623 121120038 13978086 120831861 365132653 978943792 413552256 892565911 866526015 397053689 450562460 499151279 491689625 95287079 673375207 134141888 71600242 159330082 843237037 233246653 646578795 71594040 91881160 979231710 863504326 67417239 896251477 400624566 450458655 943266108 700204993 981277825 760461407 141445926 135839833 163065883 509545178 97324624 187802579 921511750 337006387 633910505 160934827 766070367 596853259 893279564 825217295 9121266 454451460 730995556 858253669 848518964 587438594 764565915 274359780 655697607 19066420 887867592 903338137 368476425 210586566 839653739 872970538 118875629 830405460 114991557 131974582 577340931 791747203 568008166 496232089 634590397 121195135 442813302 639456976 821517223 371380313 849058379 30177186 69809668 817414825 136238463 845651041 528663658 961746854 141278895 280329953 338532410 826390547 371256390 635928662 99698274 493290981 262766087 950447694 284461031 955914644 695256074 944629507 368213284 696016998 179606336 575416302 1699660 137704896 217934057 379001279 419844805 778664640 968862352 135997187 992245196 796690799 313126740 115560492 404647731 526998282 849123873 752834161 871738477 728787861 760573785 40930883 207229065 949067528 614330040 251513129 92651287 906755740 287975339 714785830 6799618 278152190 231097429 141023826 71690771 171305960 53070394 675981374 664164756 747597605 730518796 616966400 498777488 308373192 242541260 60723935 562414935 764151311 373160837 15887796 265132262 303434983 26962905 168959376 567467434 256706350 660977578 883993715 643334365 997930804 540016822 430735078 624702916 688164386 302483920 206452675 912789058 501563621 195967220 427414506 138602091 538056468 694272026 739005546 604047079 283522836 265985853 699183368 614200317 437815577 319861703 486928377 827562658 268006359 611349911 187283181 375908879 426583176 280769405 812816488 353212144 790847930 570270568 692335377 102066270 800012468 854757017 564881762 882207539 325955056 129227583 507851175 502496355 489783855 723853392 745372737 87534802 473554828 242710059 318366858 240748394 12085845 950156937 427829323 242275366 18839166 500129485 699365330 284913802 903420413 187548627 283039629 519474441 38251118 523348086 940876234 948975898 728010537 878673809 192794824 811574019 673440170 565101960 400887392 933216030 280851990 106423795 63509676 163048039 739171832 956450403 821522028 728476311 61753793 45189648 181216401 473685049 423922557 242915966 76799720 58226188 243401104 393185103 809649463 725390739 280093336 201060736 731969830 15041446 390063879 894588257 997076894 345614863 881426419 430395817 268481641 944504659 861175015 451176619 579564089 140717924 478871195 100714119 590489588 265412835 654296140 721525536 601119347 759766515 131721789 242158226 625815737 55032670 4001816 719763446 860789954 834270754 101086818 726059411 627013147 629102066 680735576 832247598 890363738 926043525 179300194 95427944 848263803 563712238 242574440 416736725 474057744 596620762 632947992 926660958 768816434 949668884 53446757 166593270 862397784 331157595 748754938 271970921 271458512 900581205 900304641 304520732 645223465 358891323 658539115 756637316 410992015 180266173 728701789 591219401 800606335 304359752 342476755 936296479 351722701 945126978 555203857 566485128 827297771 732086971 488196065 499070454 991353509 4850781 68506873 441696421 782634344 572219929 234120509 911787957 558711468 705188845 522235524 130448001 278329268 210888470 404718320 509702065 537179430 942443657 563226135 562933386 762573995 398850005 211388923 161831260 185759638 656662342 95749679 98584695 769618305 706919695 239789811 656687079 423389844 587323132 833911434 762981817 412370665 141700658 572827849 968616986 669226565 356690305 801043425 399263860 941016072 475267138 674939716 692839758 173703269 674149329 264375958 431428902 331763584 661503942 533685007 197622049 974919691 791525081 71553417 966941374 161434690 881142856 894159271 185419161 854597180 101651405 510076172 192830375 682976613 93355540 732201935 687309935 360305244 949670588 365356541 699576750 421661755 453980673 884348736 681515337 608577996 488019402 674597390 310460708 423040023 711802569 563659930 808867789 497832081 265533851 713218081 339600063 328516294 47931400 296400581 319106947 719663959 322513786 43510526 145721402 377393396 444131776 795274986 322362806 384430617 981763488 135902422 295770180 375613472 6256668 398464454 56219181 858343289 836881379 62788522 507264813 403917033 486635737 437273211 291594086 797450588 758851310 376213751 430726192 881607171 359403595 544297562 399729458 482186805 174159499 238391915 27784490 447844041 917210197 307439017 142262835 634276954 115172778 338530864 827298409 904441128 369288852 718781071 211268987 257884100 142277775 23176255 124643883 376186769 123588561 360957575 882087303 845191110 368534223 949797537 74563055 544825793 947169422 199719025 821797088 964451941 53357817 56412669 814279227 448406210 332775359 930889359 783980242 939964648 917463359 388401399 566040378 132213312 579546740 390528058 181935029 481398658 229611866 779218574 696604936 243597186 235756333 494914015 726737618 403972588 729663587 707832195 253778735 853975623 849508182 110728170 331983509 449299280 750663913 250977842 56215117 560553000 437100961 705967785 568733574 930724158 468935418 82051559 64316047 21482819 641982440 526218045 285597986 790886508 385820211 442751335 96614217 981652843 521698456 69361129 187757271 470822935 20005607 707688668 486810461 780467925 113645362 828852996 506211341 447104410 821864737 641074807 587981996 5756566 986922180 523569584 629460302 14152672 453422274 304285190 617954051 428980440 41513901 13237015 712205838 251134201 409422730 330159571 991654020 240320205 821308029 260096397 721701504 253513139 573162233 317778661 236125804 613054828 733636027 317273567 680392861 280613020 14239899 522375515 540517853 951306538 667560078 526293527 462022765 659471814 917619922 691203514 652545975 955673185 722125843 76469572 156017814 101082947 771833660 744215701 961201574 475355179 241898074 450440232 156347375 932338957 979372701 648134544 563236186 71798474 432799471 219296767 199619260 153194478 755355772 807273968 840413343 210005177 481561399 414140480 539011243 980408765 761468002 678612913 613286605 615662742 177790855 636636309 968855211 36536155 264608763 787908858 241564108 403121099 446666379 125981642 325653594 527295858 793121602 988164785 17559619 16678675 927709788 407051033 738446879 226744694 774483680 317112905 734262253 820242951 205124244 110566679 597609650 589039031 745353125 593414836 232989040 862150241 749694574 314582108 307558784 536022320 416137155 930614538 320893269 390589418 566753069 761082171 641756535 484060443 693999445 455360235 818295317 63722502 578603760 60622009 909123732 163724723 661221405 122585998 537375718 497443690 950684587 943975673 927170882 141178889 865357964 76373311 85842349 276618134 780912997 20675498 950991903 694624560 720878474 515506338 200776944 68681058 510981336 672190385 469540054 354976056 302849645 393360468 403179421 980845160 138998555 891176568 684508688 371572489 967597277 495445569 24303232 248877730 492978715 312828366 737563325 28652529 256691172 699383944 110606283 717363506 681256382 376384699 434521581 576814207 257191980 21064224 437145647 860559300 214376204 963779182 706256499 975020546 966310479 47063196 306417210 661174122 343392935 514873467 637300732 399676217 825306451 538054461 804198322 939329015 349532516 741046917 515155521 76454565 282307886 161589268 337886183 307023737 707764424 159253746 502623953 355640238 533471893 623645350 875342381 392920855 563408915 902659896 534400502 21221333 804741140 299203908 84131940 345444963 422653795 212090134 585225196 626931095 524327055 753029781 46536347 212185970 366155318 649016109 229955726 254670085 426574830 775160110 872159880 272296771 398105485 913541060 769062292 475411888 703089799 875974097 638652868 843788022 148838446 867056739 81200294 417740091 891205380 152878308 609412930 61119662 887004077 176030053 78305576 787664682 517123791 36835768 292523158 409099497 154044626 478156485 297158377 433396229 271092953 415564596 728175187 203884858 167644283 932623727 21243605 750063639 651879462 39979010 139113081 91349116 896662873 990601917 802732155 549627926 968109672 649021919 624371368 8347619 15612883 668262650 877497122 963211805 102086423 856941451 289900931 907772791 233729930 708604272 458886515 39565253 786306391 973922310 524916306 163070489 730808135 571454464 939059581 153209552 735506900 368468254 111688194 791061962 373630389 480990542 255165745 927800704 812560805 338472707 338477843 926903847 23080578 837847105 12350632 236665516 298861095 603627631 471036634 714587620 197001140 712110775 330525858 31388715 458262658 251990729 104999437 80802013 939507842 249297800 308213014 178588732 37230675 386199065 47012380 381913056 208666958 948162494 723065433 918134779 226797018 136527852 94151321 336738073 917028290 820780881 891657048 807906040 875553188 320079541 18146200 598739375 577639210 914658233 102959401 436499836 903812174 727053236 325995739 152287714 636741057 833205914 475182406 346787009 492215075 617740011 242426115 707654753 205327182 340932362 948401070 663421399 270043382 332212573 491462757 145938076 402322067 418416646 881722582 570711110 251402017 225810364 875533656 58767599 962837162 382226496 395460829 627822905 350675525 402824866 960808074 625566754 740919893 891330764 541980730 509965150 682450609 57100072 570940292 412329067 241087133 895040886 992594830 967451335 613924351 142489657 84335917 899486733 365311628 66742836 442518012 32244159 271808143 927618583 67209864 276696763 340650167 500298196 952696801 629920472 603056389 250698199 981051792 615029950 379927377 336648390 766389849 455468530 5275264 669834744 481044758 942175341 542809741 195362012 942801851 413736765 816426535 125234043 958841752 484892783 819248015 915368942 750553444 284600143 260176389 65571496 778204598 216865409 648972675 665202787 271284848 749450333 986696501 27763572 409431172 824871 5593465 725514459 904126418 895763368 135441008 948288205 155456688 529191268 37648800 895773981 600775810 474570885 282672312 568113900 78403224 99075826 38233701 701889017 673848933 534183437 648542341 833215735 279322057 963585931 309304318 730437597 643509232 92533249 607259791 86310742 372458177 28044657 821318625 510742262 311014766 508685857 180076618 90647491 273282905 58819829 375908966 609614591 452708543 312794367 405528071 941711435 954382934 915566329 679051405 962725187 452798988 694138538 36938433 603731333 71732446 546234290 542854401 695664454 573264964 380893326 963004294 497813966 547215126 194064452 5787524 542874506 100147125 685069316 784751273 187036024 60940890 692926068 631038738 27353740 608560344 229485132 315974533 20517062 80616420 600450960 950447939 287876357 848922917 351393844 178738891 703976282 936366957 454393953 525596224 571900733 68547215 627451134 283898929 770166098 314940055 403319020 809081071 601294128 836750711 5545139 126142274 686080327 580714551 453435775 946110095 370340604 371835077 594367011 629794008 697335676 804433861 368668110 576792321 918579452 886067982 4106371 160543072 807418486 531376246 445420442 848131151 465090037 422025869 115643565 603105559 388544798 53915518 514514461 242401866 950341216 229401273 975778146 582172223 993113734 165346793 600520909 959902231 797754021 626791646 952130398 569320178 950604641 611078100 329456902 922387669 87903515 215888236 887704244 98968048 460305512 528412164 292891667 308373489 349990511 904066776 879527856 111760890 517562922 535256740 868949101 621003194 980081637 411847622 530299431 809609828 679265820 882775319 965845257 573924865 93581691 406689569 849424165 49621021 84022299 168497248 941362046 995641315 57637419 753543561 829063502 391695028 332952578 971615958 159727459 373481871 260778168 378305955 184045838 180243711 656893863 825279179 148634999 100159282 616091955 724720457 339628499 578010028 32461205 938584630 477853503 227235752 724713967 434884059 74834766 255759567 216325434 797888037 47860455 929696189 991856150 874273798 41182472 544038104 126631846 104666520 956458169 661243963 592694324 294666221 661071880 556315190 864344937 725351446 701898215 232772846 501589807 972188270 651477030 672495932 886398655 212672463 244704514 129574335 796757279 778509220 145329885 31948635 481703341 891372415 196691673 765602270 896910781 280510873 758503971 653585521 144718999 417357120 84971727 194400823 362173046 973285993 763102603 367517986 287537925 712110018 424186543 554168362 509171286 845644106 164140818 201736476 242844747 107842324 865994911 790289620 380346534 883977191 379133323 400439556 758271060 121637431 571345251 144626953 356390039 804429312 706574687 918055318 961034248 448597641 277252680 916708307 755670936 227286408 4514022 135221942 802495303 60825508 425030463 880973858 594780699 655202938 844425773 84322078 558836862 647638324 302467061 123843762 255942975 978781151 515661642 543041661 792574908 849867615 817219489 51080283 97680893 933988537 320300596 962608378 555717984 798547496 245842065 843652675 350815923 617096676 448733625 838926394 404752298 15757020 507456 797136190 28930730 292245737 257272016 148605734 233951340 952471331 438816381 555291047 178977299 441157027 334705959 68421822 260534848 123415036 943960033 866448351 903064485 921284998 471662772 603019727 641994751 762477030 978362589 226935537 855786222 144971510 528320302 696749019 289050374 22522347 45075095 472333639 147663298 659120189 936246765 792846186 25742390 390500066 368840187 465579824 68444781 378746679 181196183 610671216 148501149 743813391 127055057 650670477 750065036 358821829 879166771 898660482 425328052 370646824 729690789 17520948 890847049 151219660 662434465 926676343 447352848 119217021 597446517 410881655 706006685 438568928 804188291 59700780 762744900 462971876 786807690 561705783 716781134 43668178 734943100 97615203 850069823 98378682 740253076 760130365 581457243 689430322 274929868 674524094 753861632 578382335 581113486 115818760 370360468 417750927 634366715 625926808 721589697 658988906 352997601 119309309 922753920 49663199 479983348 959322667 107910957 586688488 729320054 140776143 80363667 472155209 493932659 402241777 862394333 281087666 261183072 30075592 813238134 79888199 330905173 398023054 869876756 16973664 5713301 70572871 96648160 551770222 252036630 5704316 852151101 565017842 159952284 117267401 989085677 160424926 796252173 24636462 285562293 437337551 961159216 539877276 690584794 319015638 586946242 324281490 835628935 427658283 926937421 539991733 26440847 164064700 692323078 556994423 30719315 26635671 768226992 214430909 122670661 803960660 165720401 268512928 759898438 99289764 670883320 90697770 488545658 246294215 199563480 702569411 55425983 416176066 129214881 582150681 569660770 714077837 781005161 468483498 182638968 480932472 133415879 809428573 798519800 812455044 474570986 804857305 148456251 646912695 364705150 476325782 572221166 276126888 385384306 288546567 941573455 912217786 191142761 638112316 698422390 827481522 623872493 356274364 6886324 303578828 172191938 475623422 808382713 30494614 95440420 252172708 599293894 483183643 594063100 970467112 522370313 281997054 720585802 440316270 307414758 692375961 106042162 806952955 725302304 942810744 154314708 567856273 252831575 395175070 916347319 473883417 479378711 781176091 648302892 794660825 732388518 380609717 907730698 24035519 937785268 537860393 687628154 791253893 891096352 703774538 284045869 610187669 339389924 819033548 614089037 705945037 589775696 838603656 496634269 718543974 618669855 889736503 728302614 300269408 12360990 545353081 149546417 82883825 427278345 4257021 419511719 20206225