100000 56789 39683 60711324 137473478 283084704 234344870 490319817 511184246 984679575 388228873 505208674 571967225 250927245 818254336 884285692 990293894 241822402 287969658 406673695 851926372 863173545 36383419 95544520 889504883 584837478 644058074 756295655 832294052 430301271 208865348 793505762 143353980 257692040 29185335 65767952 290001302 46790461 690754632 228100671 596273950 253056364 490217949 928309039 638848598 478340160 632614836 814570773 988748564 406123671 22862682 322621465 169482306 748001925 811890869 115812568 499794013 813822415 233528443 394220770 270492151 117803121 572406456 439831357 953702454 625941273 133975372 724838624 344666962 777892265 627029611 689847609 127357722 885560249 563605787 107867816 196390256 105823506 129622969 532203777 539050696 86256180 5468788 672734734 371623085 589598417 947291089 576235531 482323005 193116752 645701925 644020776 859185832 365603403 954513182 650218251 648377268 227959569 629614139 902692683 968298556 597079076 690238799 112543734 768576684 763256508 795906050 222804236 837518727 375787075 546954576 506677249 712456674 640024792 708707336 480303167 113412582 838309324 560695118 723220898 33198929 129698343 641685785 223080698 223704566 788274468 632356022 24328844 494787640 733849264 600523587 383122578 170980243 689171439 752470069 272782262 608062228 519692215 759617490 738313115 479288796 964444436 942581176 274752852 705986464 339771842 976295252 34912235 391170860 110678198 303382636 477289692 368089819 716006038 328138646 238170775 550330145 703666748 260918974 880200961 396294914 729221943 226745252 146578419 353952920 676644937 493170779 975492538 883345808 665737706 791690700 423244181 142110125 288238787 558144561 466468411 230756676 66751029 19328922 559808082 463979455 955712208 518386283 473326329 833733146 662108380 961999836 574480447 513894249 990858451 57258104 856498601 747097424 399162340 780387998 863823024 496713865 611439730 788062467 283850048 362980706 632200339 734239534 664574011 786213436 558984338 943716347 993557492 102777357 750316910 430054425 458033845 403397855 75515737 609958540 752521529 912496719 223972409 583500075 275614514 992987151 590760490 580719907 418627524 703205988 30548473 601874802 141934088 754181800 791688107 541259629 522621834 442234313 870565108 676758842 764689612 999879880 639556545 764376663 120645569 360418620 662777519 744283153 435049042 161699276 451914129 908695054 476022493 926834360 94962157 294220996 203493553 793585233 418293120 487552511 789091987 757424509 180508854 192793951 49591611 38798900 639932210 123892439 958812120 730805253 769966156 403374896 535764616 537927314 858293134 995769988 694339809 6456847 719384886 659132099 648462443 710015431 727374520 74140209 302326564 190577303 285286713 879561702 711811066 338033521 518315541 736252493 655186772 166093787 420370265 310256549 801765258 402562669 110405193 2255491 559748456 587200855 742864348 525546574 312619695 379334872 156639035 702064066 249689236 939646920 451106886 994960750 636606528 266859535 770314766 81033782 731536206 583228715 537155932 454687185 42598991 299801263 214023977 476856139 918865737 103462590 843384100 715072389 260900916 675480212 580186671 944727984 38603644 16484606 571666146 927809494 746549890 328994012 431723527 319490385 512534555 891700646 631217436 149332818 307983119 737263588 903268564 986792795 852147867 969108917 210253718 749232069 659528432 461789513 971813885 676895803 483380657 769363303 607097686 892193341 751769209 910864872 863606821 356461470 362703699 501127226 825519776 826049287 33318208 482385885 694549298 889557618 147736245 809594601 373710586 843819951 119616026 690635911 35534409 66882274 585271884 870178675 91896104 104568579 822838043 336023681 478881743 39310941 410202573 982268181 693871407 382798607 710888857 739367337 837054314 855695246 638762541 572154443 695946325 573603105 581340713 786662172 718081021 818934884 956012962 836850386 172968735 682517446 517232288 769153335 628005806 873364490 416358304 252454311 196026192 658475210 219108370 212374422 859406818 334943471 324215004 152284936 981426160 450511162 964161237 905269527 793536829 278212799 375930699 470673009 753792321 734595940 241186430 875604952 219535270 661929575 266331170 66124960 893103819 183271125 248294881 526419764 661014081 125010452 205250519 739057553 980425040 76057178 375902996 583317960 477654899 160161587 850539550 175205505 343516888 762677247 353699180 948621683 573070561 904462961 457508332 564137453 380820645 759880977 702895997 885004624 269854063 104541627 774511478 60717459 792562494 372344350 856410909 336921022 478035268 106005566 347558449 508716143 105036392 76696819 721190241 481599064 472340932 708040296 585562835 809541822 696379175 566683292 722000542 448075260 377014163 722832356 582356816 611986430 139811264 54350695 894806632 917337287 719128728 958442913 113981149 41325803 938595769 920198881 204978581 947247637 404338678 14947274 23397359 546471299 7409622 698556374 123626554 556684421 865244179 112907214 228250683 585637633 568214045 847578195 553840043 982924274 768297109 872787033 516516023 888448484 627648978 654383526 586966142 684185978 872420959 579197784 824541591 853770217 622347643 46192220 242461832 447308154 850397079 344856056 65300048 372853259 473623772 489890881 266527454 136152975 687011747 894923430 566238103 17898121 796440314 472757859 928810452 664880277 995854118 42824975 796444513 502405344 325398555 19769615 694441728 238771883 130319878 789446176 254239460 674888140 712453572 168977873 769171254 661264684 405990760 742273542 72275604 895067466 762994873 300220791 763022477 377464502 524458929 45813294 62397990 374702743 967018239 509874701 635038296 550849318 784239238 252886854 458485903 69462065 440848348 110678753 630955820 978732953 608410828 653849913 722179076 175189972 905322964 771419775 434241248 813234795 202433704 770225462 541056507 296457341 387488941 555997877 660187271 524282171 746407807 937737640 360069416 513708138 751344491 87099023 701115511 94872804 514342389 493936190 123554688 337321751 547971156 749938780 506753604 885123972 309021169 96764388 495708728 640844609 118520556 406831014 316516549 779028088 872884887 30035655 725860294 201352422 498257912 870402364 124551181 383953500 330891851 483451476 610810333 148304706 526063998 956287787 694822257 375897359 202529460 769186104 626567540 653885650 370721987 634613440 732904327 168469420 170336438 495809376 823071935 549413204 171583563 677480071 411428901 745822865 479520885 793240569 185727284 695579587 739480539 901411917 760334941 197868379 781851479 627580272 999207814 287917151 379733625 296893728 109215367 658788583 919973890 543266162 889627564 536275618 292337769 139091277 648816182 433335634 543657561 511042285 685535450 129013579 390017329 636719201 72684608 500054008 83363715 216794124 903098245 181280855 868994453 340031783 100913337 988778872 230836707 288631870 320408930 263720705 537701787 630453679 422736120 303032749 469297951 734628398 198629735 234450376 718525575 445661508 21096336 714867125 351589916 188629451 605869511 522482280 874540766 102240884 428344918 610746861 280969983 377516097 440668665 441726431 728741478 993422091 441672289 842728945 108443437 787007997 374769841 939364457 759255588 939046935 94815236 629261984 336599372 209015980 194555877 400263043 716923484 763693540 592118996 782557717 285396286 263349563 663810760 591798251 675434643 782820864 453118376 48523694 895382059 301402583 621281233 217115549 709631375 833999159 461632659 579961352 316812407 797560301 705673908 346204118 300601684 979304855 205371115 976192768 553987015 962282538 976236134 175621907 545094952 594005613 457762117 182812082 444047616 814541948 921590556 973171986 443232655 332758597 263317877 729294973 352529991 941722126 964684364 313691344 420994638 436275949 106015377 841915132 574465792 626352463 974598825 344760968 949262443 172179314 955996398 163110925 917955026 633442794 696641578 217386425 851304491 293606944 331552288 276369357 755746977 96786126 672606723 760345887 811558674 617819268 830920957 786465177 691250833 405383718 391525546 869511352 187078629 147086700 722484634 332485133 560186377 618470753 842652626 949924288 677026474 594871525 974705995 488064264 714225836 612176683 254073970 399563444 470365862 990872123 987791527 842179493 67715937 711356785 992594110 915521873 798039644 353583612 892562305 675938882 765846603 545068384 435051563 423779477 590858132 772205557 424574702 505498236 413622480 154881893 642114415 456702652 746647376 422877490 746327365 112907056 638144406 678409517 670931581 219648836 361082839 758912512 54765593 664091258 1884800 237452198 759606412 711921385 632472238 188508141 542470719 483590585 830975156 59954939 456089616 837941160 10314393 91246534 63126990 565232520 326890135 741175451 537874622 130302654 467841950 130405784 812694553 998227909 658720206 282772785 993387915 384219305 946842880 546700974 668485046 859343245 584905534 278006956 37367981 454743333 643116359 926184344 513869433 179394876 63276300 469297207 754712472 204728112 597299254 349349921 108855161 193676401 51203229 148139585 907021057 658479877 297963730 2331991 923134217 748167687 689243286 187690614 544515293 410206243 111803745 956553606 135732414 642108444 174638300 481403843 382691425 749880135 729023335 213396540 805051759 845062157 387003028 271895637 64236547 53676653 144045482 936888389 3102511 736942199 169407523 955757977 787714935 250176722 767326254 71281583 894503251 569448247 282001197 272385084 610955698 372900083 623446584 621471175 958085746 189199209 169111193 816863787 957962985 628915854 16752206 7640345 411517023 53811051 186060939 15190675 918071441 36001439 341935157 891697522 32875568 982233307 331744359 413881314 842686304 987838308 710037745 218012641 247055417 207187604 711973076 363488707 579439946 789522008 977513159 331815089 359398417 250856115 353616309 661547813 233562500 132391482 462859069 144057199 611889803 592422551 358329393 435152435 264841347 379891975 283133719 448620777 709333948 418685659 842933931 346581596 797565948 51692538 310447707 858720556 318776059 543571294 998146250 375687244 223937253 428099475 190841421 337333636 975072475 595843387 219186033 65402864 525477234 325730188 154774899 650197119 719637810 56145616 213595334 759470196 683985176 265356004 383720849 461905897 893489428 614813625 283903534 383106119 555630220 291718103 358082477 640493264 356503255 868417749 82726479 982044950 147685827 846362594 540861451 334638976 210213392 531240511 469976332 913578956 747429875 987056579 324866608 756157319 140301204 30524758 653516683 472640663 161165200 999611766 336060130 928523698 180721015 54223029 943102513 1430756 185397327 971950136 168449573 674248717 610680591 993356346 475527843 765191521 943812901 75864711 19161919 703843302 337462513 429497089 582483398 581758457 633943112 603539999 585037493 484730313 911708913 171686249 952951743 360341467 99897131 710999549 426932298 317173636 229556774 933666573 218578418 98483058 230304389 583188575 509867269 929197604 415934178 37012171 994497798 291687533 204086346 500147905 730829611 446327797 886784189 776400577 896836319 352870328 486442415 638604256 170365504 646479493 327041674 718397001 471111330 157915008 899901226 230912954 719482122 701119136 507433567 877633539 469901491 385902385 26535023 320956299 407664525 81941588 36047249 879340491 595114169 13433210 929312882 343931344 627920142 645549805 186502324 308534973 306174871 267351624 688275306 163394631 140565011 30365945 939340702 591932727 717311348 985225414 195915980 336974828 111648352 931424837 454672740 682178262 879126963 693915490 272399691 728882428 55947515 884709853 985277530 751879287 849968891 22965705 766779614 506974965 403215912 206247951 689822742 582512183 102682927 366017769 9116345 479826067 737216877 84274791 630787437 992489842 432407413 31293677 165182801 64615891 717561742 365751731 189569652 929474758 28221491 471650628 291936347 187204594 367502481 255197695 346662015 681539601 244582668 978968729 781896909 422663022 139343802 873551513 125386276 995826286 78537958 393593563 314918618 780669956 865134479 438266894 431317816 414700602 800390630 962041142 909977593 811051695 966645204 620984874 747684559 606002964 534967153 97038359 978204894 289804718 861461390 510123003 774266175 331523543 95673900 876632875 505226623 466739325 683394819 388276173 142859293 51460770 310185980 492319071 219119375 38949850 965100471 217835310 162773566 540518608 337283590 161720544 762082821 410639809 759953520 512642795 856841142 808100607 880166063 806773019 157810197 859381103 891124018 538530576 672289755 10061068 147965852 43074237 719188020 711336802 303573315 486451435 229390657 439613971 99891122 466795444 420183703 106713430 560622887 950996232 447929791 967298163 715265302 45143339 684901044 444952136 208916132 596890933 226125416 679217607 584658220 171019664 493526334 563099253 42611390 717167742 371159953 181096685 191463067 568425617 934733356 284004699 996032954 497820465 319938257 821444610 85722951 330860314 499540659 530000310 5029662 396164827 279331067 145868899 251158612 848375127 541775686 773386628 477127599 355210312 741493797 976268972 380314153 978186423 534270363 373093377 18012529 568281989 701639587 312739003 844152937 76196838 893630632 614826 106261929 197130721 928859147 460948910 476567035 707113681 363680929 934162492 197549789 980434919 359437618 396050912 203885314 207310501 799097083 457275061 513065169 226310500 589965869 581760751 666957028 190493135 483046508 957946193 313942155 553873254 326688592 658813879 829125703 952789500 585365735 320348558 834482767 747309114 775299121 338937431 523356942 990841370 61674915 385971240 822432674 456004460 407632805 462396458 320193119 122212436 954910484 685497116 893385546 415996874 598950336 563674062 164216991 202657816 15217391 312515495 39297356 619899744 715093465 396256032 486409587 494784020 957914153 818315847 268609260 9638780 789140610 64816445 353676224 538039348 968454392 160383160 13195951 959134890 476268435 750244482 330674603 76513700 390258896 89071608 724967515 713950393 811173407 954825867 767974553 133102803 683697254 108743747 223532788 214701235 698387068 267463223 936498991 837461869 316088751 95353110 299092672 843660007 977132607 835683745 958497106 434334815 135025632 963448110 12354371 826863842 353188412 41749543 835650599 187250646 170198895 6926985 157090115 553373041 680286857 36924006 772567571 208283455 531127824 36542563 165606084 198968480 774709371 997592122 410814138 882440519 166991544 295831353 401213196 480611772 213705382 627126978 200626435 573937627 464219548 137760457 46281887 521284435 47099105 836490329 251924754 847521832 218730545 405490191 460331842 103152946 918169150 818935453 866433611 757420700 714723629 199791433 891377147 498402917 719954197 371078763 156413269 851394274 663550596 322965490 961497871 789306682 61911289 888984544 387479059 212540905 115131755 600943818 343172609 179910462 154828992 923780697 337422252 622624732 284619351 744048587 708073881 812890429 572422783 472390770 655309443 611892778 423959293 716038196 867429849 503585604 897655178 945408009 196099646 157336959 84208211 55629953 858435593 75588257 254209144 705398843 504582083 266811848 762338445 300880495 560179883 815341025 197574939 426804581 289193781 317642801 237449504 128434940 44925318 878977232 503392907 94175524 942296570 181927209 515958977 203495012 378637215 403568764 944560411 976384597 196982455 895077981 971833701 513959972 474345786 215032114 3304545 534878996 81809233 86944440 907832898 494352634 620001756 576683646 888126770 125148863 232790254 268584552 326906828 583442146 328443467 509718317 571624866 776958451 90773489 9635546 696518584 909802265 17812108 50037070 930156295 702255245 116992000 762213052 498932475 706771997 696702947 935390251 163866102 641220522 13807103 796820473 518674379 447530922 922886869 609062484 786181699 99416999 69601301 904389056 565310363 900996797 937785640 427562388 664147204 556989984 900421030 799628924 187127586 140278676 416985568 800999672 443888782 364495859 943279447 923494364 925626964 491653547 479269698 409065678 101667957 618434877 466012429 906275020 384113766 148782015 419441364 403913379 400762768 89025883 96391148 253198201 366215630 381385166 515464539 384001859 647833074 85009130 634497115 948839247 335638592 376141076 622578395 844724924 587755760 20997062 473412094 822748413 1017008 702287886 264030873 418952283 36681505 776480014 523627961 640713328 733660502 75434618 675904283 88139436 740979288 340789533 543494067 125929171 586789796 486494548 940806182 515072892 950353834 517689745 270663503 152006292 837072464 431888089 132190910 374551001 223815534 632241479 563873588 212052320 90042192 463798407 476936488 961453584 161996087 386285659 633347397 338243109 993729496 775538458 128329962 936818605 594414555 7386156 208525992 189886734 997089885 52863119 681221832 768270718 583449454 214773589 888617923 99936650 866438804 609671204 798837959 261127568 552813895 175481780 25738297 333046852 175320947 125141077 54389805 358095663 416558073 85065830 638295792 800998699 186055981 154655967 427767679 640652008 650632537 386425288 219638285 798622571 561052985 93158079 326980737 187253386 999267454 790803831 461147381 386870641 392931915 631620147 13581880 738214175 35980219 909280847 88304717 307357418 259398233 624156856 735020266 318319351 914121894 541953646 573467642 935407299 639153302 363132681 38232092 398061981 835917843 17922353 619521313 161951017 667159417 809774373 316396177 93497822 727668760 640807733 211015207 517884297 417305270 323277384 579022417 550377416 689231370 993271383 381248177 97367696 805269826 990316784 76071070 630483624 431565950 518638516 206248868 229155372 252047698 152797913 413445119 379697930 417200456 168625064 588431652 708503432 9901660 851567360 225338937 787094204 494395262 287616465 27212952 870483218 693120276 346472354 542735440 137726667 819073397 263683853 256929956 480550008 955748206 489235005 183857290 174949762 391626945 803742070 462459692 632195238 609776290 929041294 554136171 558705777 280443448 479639660 598548311 676353480 413394722 791743888 229088440 731414627 750809071 768348811 383162248 443188557 847516324 978272130 90344823 499188070 741933883 461735343 526403430 76516321 597060126 671046624 996500972 870269126 767306416 889616118 939763156 622139761 18431940 302445672 734048413 220422929 535630372 836721853 741553913 481596714 838487307 505718293 625055054 986053652 579052203 386658465 551390264 707170681 197975721 368400167 813127429 71728859 556214940 114598783 69158967 6799371 818952849 179283224 708877830 131596723 75149194 310758772 591017692 266644430 575472122 531347111 358231511 58995242 220281419 485827036 663338826 558754029 203359576 642978256 454918460 210121485 117231859 742491989 741383655 324090070 692605536 862932433 8137786 304689256 35469528 154275260 478132824 415434807 53606919 155089189 920672279 435433353 317307535 11469358 877328258 393356028 53514371 32797580 84050264 275500285 258153964 444515080 701169034 497648721 398165832 395424256 948403136 285597840 651980806 976360934 871059925 392733349 347582219 771816640 393536087 498336592 260368176 903117222 483557640 238702500 20235713 340445512 820583775 395087241 642194687 724047462 94673160 671876667 186665631 165281365 199502944 735435465 954269770 33591169 948551418 620475031 226755611 608878053 339461660 386015196 680891684 802999700 643750210 993010213 22627305 182467892 260476058 787643600 232858339 477567614 454253447 542826898 143902462 902108352 280154911 113914610 310649883 210805595 554068653 764130507 179516303 750221892 57891887 996932302 827973282 256878215 992880344 34322173 206183185 121774784 170851216 274100273 59304333 821027744 658939759 55662742 392034362 323247726 947692614 827199530 467460913 249138563 576218902 381702977 750785278 191044813 463106198 865778948 610888994 3512909 116684721 711839213 47696530 809509017 962610694 372728396 837092406 317794650 30010983 805708997 697954667 942061519 199188826 730814672 307999362 646642505 965593499 287707960 511655742 831426989 302532760 163346589 970305882 627470837 903186675 64687602 116711681 419641007 387975428 304573695 856301908 514359420 370109781 785896159 927419112 666396306 321910564 258486915 472825413 325726523 321114340 480412974 444202600 789859412 205109436 722835192 70015809 307634639 21647110 202434379 783904310 945214513 132329681 100466537 200711327 792178964 930217056 720864483 536781384 93031846 833926057 433623587 739088370 740135721 162847447 444194532 51159505 138282865 322185929 565051060 157745679 370907497 138812816 692171129 361170248 139682190 878739189 577297385 32380172 793171570 817685232 483529744 560891489 499347259 69473842 462713294 705543742 575945761 265820316 125137751 759865361 484732659 572267974 355433905 868281914 344577427 560041849 636256057 231042702 353187445 704307765 886476318 180401365 531783460 662720428 346871525 417667915 3838654 974528837 48353507 404631331 966951027 692714650 21102790 773791487 135813641 797728762 344582413 280248186 754669659 169399016 358013067 437548958 213812181 812492442 145575656 138448750 31426298 669929083 451028768 826104414 192308447 986173609 947347970 483803605 490119085 375426679 642825905 533111218 434424610 301281004 781745447 228907716 717463312 16144707 944692397 414856017 498894813 177005417 694280805 87701904 727476482 692181634 262296000 504404015 860610444 829682533 428590856 803419341 146800286 962313499 410971607 255185025 685888493 579197284 490909086 816046673 946921539 930304306 903641632 985040828 185602044 887527723 732682228 454432049 890726796 198492715 430599430 83312789 401586166 970740672 737696534 765904833 616453462 471974572 122455095 445556482 212793177 459368807 540819794 228826520 408093120 390605467 275620513 858749495 911028961 225992102 201833524 231360393 38983205 89226011 143239791 983573673 456331403 511784257 149551242 142157225 126000932 865389202 980155152 387546125 320743829 964646462 431607392 805649230 316056216 423360166 195748143 363296601 668061819 620385761 702266116 706133773 200832927 511733818 680348347 841428672 103131386 405802671 563608835 997596347 684009110 292392308 870107360 786967993 673774096 247246958 661564457 284953964 808103705 346132409 379808779 779937528 318246905 773922339 624315780 27605366 142994439 151003054 837801961 814111859 168052274 529823250 993529696 126226542 656776059 46868792 394298215 495083869 508522872 864072640 655667019 322338601 148409043 431242108 81962674 388160045 34448329 736862707 507728914 101128635 3159724 708494559 451219767 4235415 846174305 423903407 797799361 197099898 510837475 196644102 87965603 390803856 217205694 206300986 687958949 232125690 542206613 695823061 585229283 510743373 699867548 591860760 177698893 404107794 950727198 182059123 538818853 94621508 942956280 69145358 899878276 620514773 631457052 82470212 76735444 205781033 622777872 780346146 178637911 33896600 620570220 851928045 309509535 438397937 742239328 824118937 829062420 943384562 525556267 344061522 981933938 900674513 220303013 469887735 745722184 159978166 914814902 459814298 738067321 388740158 863170268 397920513 390842303 108152058 917814697 859888680 277589283 773880558 773296707 444625597 504264838 503387666 248790499 164657059 785522972 701650132 229128022 86370672 411411692 252963988 534515071 106679534 89375569 72592423 953078739 228370333 81202044 800438869 493869787 480905776 714211055 739379803 27826358 101677836 128405507 858866794 699119508 293547724 531333219 61547558 815003196 851396287 905204111 550989095 444290183 727517544 959591770 107234171 399693282 585118973 599820909 937593890 645218256 585120745 785272002 904487825 460181094 856972107 966962729 597681200 739255502 223026549 812371654 46170332 398783428 850419821 772741009 882779494 65106972 510931567 989234900 208293137 543720250 756736617 335684273 772652312 485577624 229079165 255866778 234391846 997265220 604156546 704154327 209389020 834359391 441456772 955842819 24931150 473095071 978602816 66912911 855462278 97871053 882906793 7160894 841551104 751418184 809315942 700661159 429018924 765933185 628851281 642460599 870412528 678710909 46867705 820751660 316191011 408133718 441972769 694543131 538817811 533180602 733478719 153246570 320769280 537258602 239901694 807969623 82832542 131394237 628764348 947347439 167291799 751253018 364801292 78721688 434955783 871105665 439203894 323459976 185849086 312729091 572230578 236973643 307110146 798903621 950912433 432517184 734674570 976997378 604564372 208472349 936901764 843754886 417747058 30137703 796353232 330066739 856285591 683306235 752360642 591613184 446468351 985544584 71746468 319554037 9098207 999383314 709928241 571336880 467034909 934438001 955632668 220366307 19421139 618080208 287642759 963680979 398878672 501118254 928425100 472837595 394070038 552102624 929578168 805147879 731049309 736850445 962563211 283863545 99029647 72459057 713760505 848240552 256524618 50911386 509220587 23788444 971733601 495666926 552730559 735318291 290485339 279535523 973956036 387915615 164636147 365423494 731227839 387276390 116307606 92028213 354249322 581073185 62970600 667798949 333298927 896360989 564118335 413020828 385614193 846312957 629607462 362819895 71350403 451664374 616297180 235218022 189185710 781181521 480976339 740452203 869998320 950250220 168941361 173154911 184184120 506218938 583431506 348143789 9189099 56550206 950624580 886786965 731214178 551858964 332292425 976229034 77283434 488974441 615112537 46004821 550243010 150572158 987560349 642132048 925780640 503009064 968345333 502998059 715822637 891072339 248474995 733607370 373187076 308185978 942659806 502960100 907904951 598635057 116262704 888936070 796366410 39622812 390915864 615121295 405647030 219366645 167664761 317554993 60133479 249857289 1963241 985912438 81676735 501944507 341633587 28726201 857420433 394675328 121789653 205762345 174933158 546353634 685372547 620241737 809235515 329252350 888115362 257270643 478603905 498520581 993669326 555431504 641115164 953288638 550491476 625645153 11722149 52698115 448429497 710630522 31436328 181126463 62741809 754721857 271606183 667206647 709723944 417846964 472390549 47423806 479380925 532948128 770559835 94246206 487197250 175889706 96331478 814342070 814088126 484672074 361956567 730132087 653554539 257977675 313259938 187296230 475160376 512912205 146491247 648496510 992589383 979643331 394152685 122891851 432299376 700512502 439353274 465815407 199028157 386760319 131209452 652421280 229924076 7438289 191358347 246746280 877090800 849377965 744988436 357649892 750079344 371117995 25724408 890590918 217689159 351937720 313222682 630578260 221309442 638408082 605341525 983435942 96643941 343987278 776189428 137890667 254205670 927702483 490983224 869708901 732459313 968193629 295374806 363578856 184863650 19976186 767242870 993092959 855061710 394739984 437015605 243666887 398237434 544215765 858471204 266563123 598820514 35575766 226001606 727093830 645040372 802792049 892220054 481704124 775670866 69005658 476949119 229365729 841298132 966344730 713131874 668941336 167672004 879030155 891133332 298414165 255130912 279495773 495602013 158522531 320090139 331680149 378810745 50713760 982060956 865018121 870133659 445801468 611412925 121237477 313765094 951393022 684218701 316153640 769641074 625724159 587585103 356855848 394741197 770888940 197651065 136530698 706031991 141836744 314546102 633018187 209845604 711251240 934016164 879612474 878876030 882569653 594766615 463896443 823978017 957381549 252107924 828712325 621281949 73024355 609945303 299442725 316047288 704171963 362743885 385831161 894552617 550306991 388726938 581161974 78329118 354400716 739995925 783520227 637114039 295495349 58111815 801097947 687846536 358959007 8111984 191270095 339130907 923524564 399160066 435060738 496529772 5908528 481429284 940321163 447347563 18253735 953364784 984494038 792563838 748054461 22890293 286703395 238182652 928758540 317521013 273395718 494054323 914522050 58305512 811470309 928773218 581136416 736390840 768272254 672130112 394246908 289963715 760793950 786894451 20129856 413114141 430023274 419015834 764459368 675248267 590847578 39576900 656351240 239344136 353510969 331966583 352925252 734504772 983104231 830978602 710750039 885701920 368073111 426577610 946876429 23178803 688987729 457743289 529606984 538706760 883973233 523796938 80597630 860201438 887988518 145690567 171936825 375757478 428294132 530657515 594401942 871017993 837903154 602981737 670479815 398452896 332124813 425848035 972451985 742480826 270494595 244211955 53614286 861938137 922787817 297836453 492315629 646460213 387785318 813216251 276311405 672911927 413865206 145123944 186625381 598614015 872497511 290270550 656326911 469437151 198708703 730610080 638298873 919340766 920608084 888028440 227085859 653029431 258711570 167395586 558743523 715668951 296454713 973673111 450699444 172644322 805105725 36597636 465201826 563425838 458143588 824322152 712226767 204508358 855017547 876916569 275880178 77086824 688304994 436467296 247996883 161919240 273004907 515678712 657536976 952463435 622622719 342563219 83984988 417307149 149990921 110332949 963486586 833993435 987666505 265951319 617476166 360476794 496063954 66739621 498434412 672863326 392695436 490142785 263129519 633321011 449022387 36122590 895110756 506766424 924584022 654298149 951557108 746090591 36004825 68770099 903714398 231474063 110634611 884685337 575818162 895041890 590317489 931423067 664175767 833392647 786039025 653378930 165524166 495689953 847861736 408507722 294945676 690054406 311404316 236325060 422056524 982396864 585152107 904181557 510355707 963623184 855200131 943269861 171308706 897736230 744381031 406708882 838159328 894701546 927107568 599417834 121658725 955537271 186805834 876331540 608454264 112517786 509857139 529645864 952044402 204984407 282361791 426056114 189191745 591922533 856537686 885764915 36506854 880259757 494852533 417394336 654536183 747187662 394623017 564993249 993106206 15789980 230873687 778719571 992773016 29083293 788985783 60845127 50181302 370914699 794259220 771323777 96112223 797255124 501478669 419283641 525155724 611483165 98045592 63383069 418814155 693672635 791166842 844424397 187703486 764288568 554865359 601489246 674021017 616657364 32749960 273369176 429449894 142862849 103545064 508731576 328303812 669230310 231248647 509645423 993677028 497206494 135100751 368206048 718943627 652492534 816589058 733768038 603568212 864642418 290081713 431585740 419783275 805883976 959530438 236821715 121956626 28362147 500859644 678082223 690325024 118000737 75240673 572775306 391318140 276873878 930858331 579755520 746883239 498512391 985005344 869716898 421267760 556815024 508795452 567524211 412069693 957115711 638246031 136519278 515854600 275159958 235714124 610629117 394533472 509713741 392003196 717934211 828932900 356398637 446131065 972573140 57732044 275318454 153212275 492997560 653355488 378056858 358972654 500289132 179433598 863186240 85342018 645805856 739460312 604028994 922769178 872577657 998793396 455557615 861136630 593352977 660541674 574019529 264552361 281789938 275987946 824090376 58476763 652990239 161038387 189068566 520361864 205613068 164706013 914934801 849538686 12223008 481029648 607669581 168786147 479247162 53014923 484024783 600735918 890424873 109783838 128676051 90772777 482456883 196733744 952890438 444750710 221973647 281019193 129358668 465083142 758115563 486107209 197381307 424064035 449397734 728630656 388452767 638541927 792371351 360325268 624612788 147674435 291744772 209855054 516376047 217261690 662649772 499355916 349321974 820736675 446156286 978991425 615473571 654798250 487241440 429027825 380854149 913284943 723871273 769862966 392913758 18739109 947986470 325042365 497286054 687860628 157145625 199889993 193767686 573895001 243075765 162746415 387675871 418311425 569891492 498635737 163957697 854827249 512522497 850820676 522038260 688906849 192474590 342914177 747272690 207543772 159601343 338440247 838277866 728398273 32238365 73461279 703809855 922057413 930320613 859844743 589425927 378432111 409361654 128247760 922174605 501741467 386964391 329356528 953794768 473200376 331342142 247958001 486058498 476218250 484395130 629287536 808634377 226724648 973500682 249549343 850817281 54556415 135819283 270459203 142489015 534818829 570022574 7769398 540073520 635297702 638231655 862883558 236239904 86993907 4019135 829522772 623512436 728636526 903874219 609982487 497210057 686487656 784964884 313206743 369594354 102684036 191068501 773374674 499939445 977068601 159373504 200607066 440144398 187876435 892399129 721128532 854671660 817522546 587813401 826854842 214856047 879915913 453815276 886449946 155548720 38797664 239497140 590795286 236361465 340786963 742237956 443129058 241816072 849085586 559801701 279340233 319603409 429373983 654984916 135294121 340977273 337123026 819263554 982704498 130267228 71393560 96413203 75328170 600711 956926768 185673376 118042348 961633854 322446253 256683701 45406308 165597304 581051895 609879059 322485077 667904606 222131401 546118639 848387219 270632912 109521076 471849329 343231497 54681055 321065627 426805814 859326773 736126804 841575478 622900943 763401127 652399400 689806479 88136000 885281158 636226826 362411655 177694593 26671114 403248092 866393426 824707072 922465283 181860406 153829623 996794910 556611153 639960802 888651473 322984621 602646633 435313502 513756688 820522617 937193687 393482333 399777337 383414972 384257974 853628486 291552162 118142887 624412985 517859764 335485431 105749216 97846310 403604468 81297080 407290878 511597142 561789834 466275768 696653583 370421047 478689452 433313696 114941716 549605450 634166213 422099049 915933311 417814437 480164852 875242982 255470523 988248177 865219978 30395960 826026916 34860397 392059536 822682199 502340619 766720873 630762814 150962832 457945139 394783692 317016197 357492482 387583319 542837007 773856391 254711328 258381602 731977536 629765913 707631922 253190197 90159232 321917000 777637587 211692708 417132933 632586961 350890868 131785337 155685401 376514727 259609048 913313840 700742553 199459696 442592150 315997497 863296374 105298185 760914843 468727418 492349879 688295934 541466277 237372106 4244342 750144530 811715529 650668919 23425375 5969597 380459757 299495617 851814964 806024105 488879438 897268317 802797899 301965621 510575100 339161074 140040974 601353970 539703897 19217311 583599994 158804520 61312670 93012596 34632865 121555026 140364375 634951412 173658408 492343709 612744417 465239961 226505 595260782 841051635 819253584 7739602 675161817 301666322 38800377 571095205 834635562 160534299 713133800 206634038 579114080 141796541 365148007 387074192 389126061 3137276 696376626 24300624 872521208 241780912 915139833 481375784 57350747 646183940 586188001 583137118 33632932 575260407 310451459 598133834 412060120 334974430 309071340 999823579 279373996 85909984 321662748 670960915 182977547 202066296 715459463 743677830 85527955 602102519 579565591 165041631 417913879 657271040 258998823 760236380 79150622 616211722 141178377 240201549 515505762 580674530 18092930 222737304 240928851 194987046 292960329 730936120 502831762 795326155 598719627 348165818 836681078 257389975 557091690 231957694 13119882 262483879 143338361 232691836 219417101 75991019 384235330 574187068 792942448 337748389 351284672 579451869 875964380 916504302 207578341 450684239 989254570 451758385 85549589 602229529 584461288 620344750 94535337 493395156 562066139 198829048 294216302 771272621 831398007 394598008 501855267 532208359 164719849 696762087 956400126 974362199 32693006 193678552 590784552 424563942 81318137 298231852 780076860 371013395 927137905 824779675 842124492 66872686 711157616 763741490 992250332 640340254 4879525 779676879 902672229 495476828 973156851 887949991 614713044 478967542 586305776 285614017 247733896 563304653 384626535 62390905 237744727 256236119 72960470 38226174 230222857 915293981 969222129 220131795 658157532 438981182 966271773 295742034 59474174 864453867 167262965 225672996 18962966 675405033 806324169 841370826 387235772 288684818 332286234 675392024 499775741 587770836 558943264 990898356 431438296 30073264 619130948 314931099 700811203 282168764 301175206 287964573 867481126 547653666 961012120 370571740 212795614 674789023 443249952 145387601 915067580 536169221 640506746 192913479 131806724 155447225 884249236 241938142 54915823 969250869 238658449 646087049 715777577 978864007 247415623 790098576 946477395 116245712 537031361 994532239 837127042 72263111 687488957 520093685 124439486 802826548 122894126 963436422 662696836 189397365 767945147 443274970 49930053 529652988 51474494 740814300 302473445 219183822 968926279 656236107 959521852 684302597 778602135 161652284 739008408 322985808 842524581 379521686 517952569 50058094 737530396 692354964 523211988 390810551 854409051 407334727 879987217 766934931 666307060 716858386 652636941 855955456 501822509 488085804 421368793 93140496 935967874 284648737 129441273 392129384 719473697 114419794 292660453 335088835 856030060 571385712 305271947 312310893 883798651 868648965 199292363 334213321 678227863 265708779 509371130 592891084 87846848 91438802 133207136 528000639 811830568 298619071 469680826 742503296 996647350 992912519 990605752 722823041 385801092 500535640 854809728 601768136 115597666 558198321 288962089 892734126 151997264 577079909 494571585 866721312 200565512 257512477 812366664 745647137 837828721 460242642 305615667 156424262 355078701 830574551 752699881 970301752 452403724 380179149 813453257 79762230 696049047 301559340 194658339 253745296 45949574 54443457 560384954 42982957 996950858 482331434 665509193 607932934 744990084 950042716 690153978 910430633 364012172 118660638 210125296 788155063 179843563 220598923 180556479 693575526 775567841 837129108 751340014 53222655 301656032 845858172 407360380 897806945 369301262 555135322 448965208 261971068 356338887 991925146 867840232 129962711 581402905 206462588 348700035 145328651 260010311 809432724 527627511 427006022 7577671 794630472 515135748 619236809 44430148 191480661 102439134 553603434 409348124 25130827 98865071 583016211 238057954 387091468 237671698 349694529 992276317 825508689 218858393 340487814 803290504 698824741 481601865 950059527 87864848 326202216 373450265 218336254 683796441 725244493 100152439 417367865 75043194 359817436 72191426 764551833 217091516 889106545 892918480 463983508 302717470 418402875 207245930 583538356 618058068 136738238 46630860 248101398 231890884 424111441 447761190 432350700 621084167 635687585 763367453 996044027 864076142 714094380 168358986 354126110 464199803 541389511 871408058 379940289 694708067 431983129 983322988 709126246 976285843 657532701 558577110 328187684 211231528 242661284 523623777 893279011 605170549 313046481 299783912 113567009 272833409 610265243 703088189 685090288 754461574 737152078 140311716 121025269 241131636 677239050 46351190 982813867 186206827 528389443 856681984 937532190 947505476 520089663 314703681 841385585 496874761 663251099 593824047 6007128 35880569 99572423 940365267 78716830 242371973 654509957 959881640 246838433 210125270 69311086 419436064 729629649 83845956 198193261 224350239 534040885 680850528 302934081 320518782 713432037 760187115 772290816 325223049 212933777 62371933 961449615 946209922 985615864 982086239 514367530 748704796 757618546 90828625 861793506 343697664 789103463 162634437 519087642 989915467 335416278 716448258 490774026 814906382 709423311 458642050 372451900 244446157 855899385 394081908 810342418 678158593 456258573 107572538 291206974 602010262 316598616 538076140 807661639 758744685 814807613 47380948 532978955 210676699 548451505 994844912 74213688 517295145 128704446 950264436 467297489 800420114 463521792 811632453 701817519 294583623 124320811 612425342 428316925 607571694 765576067 694169071 966930363 836839967 455654498 885700249 759870269 234398054 835831989 754679091 898565801 498861124 923343488 273024680 554839676 747220398 478191702 954106007 428385030 816556172 360777697 426307538 588619497 903758907 361917024 657132255 845886878 720571148 6436132 441501306 663345136 589830851 319390226 545346065 134623358 214916376 902292004 397662791 576465981 398882873 333017064 904949617 657181941 105284934 335358463 167345180 207763903 794224340 10333087 582830981 337607565 168593259 546161938 50557471 763396002 560877576 557070901 656632849 95554070 551247004 610636538 534130101 649355859 612997770 197879782 845405723 926984603 176021293 849387667 901060483 901733759 488357968 866435631 694696423 533947497 720268468 277322236 268568943 624813587 161417357 446370254 992038650 232997390 394303493 271356048 986421404 354111037 351236536 678218943 631971866 846224215 917254967 308114157 309886832 396488552 245669765 176227903 754444107 189980752 415156637 766184688 694708112 745383490 708405994 175451340 915951571 841438791 454798284 440252854 289453537 958922425 97539610 931179554 599638582 607382984 769673115 707717019 308884103 413063672 763212428 535733054 961403450 524496545 759254045 476325949 353954025 999360110 998943988 519374430 252913891 203906015 333349800 879314554 651558315 656002503 390055751 18448638 581468791 799087566 34185680 193996909 208580274 679993071 710464698 535840731 669036666 111922171 807621484 153644916 853352739 633350677 705284546 491446003 991741362 805971765 264266895 421185067 645353826 16255653 548109845 133374338 95567395 909407111 973006478 780506225 500340502 997884748 485152423 583074309 133030674 827675710 565667840 638828897 779862818 950322167 681051053 158464058 135176453 350220264 394177208 570123609 853268397 630967763 666789020 89298205 956970944 464283218 78744523 164572150 88298010 4087630 918809130 1179371 642769993 274213512 129232784 333781525 788131600 79623187 180106826 497576738 205664484 253895383 621796250 684164051 438832754 936760592 684770355 942649470 922605335 554337486 525132991 856558220 150195558 611369075 296888921 679959292 354240934 103523640 135398163 648824543 658460754 488140199 923861618 537079258 41626775 149767202 583167981 507335335 107768025 411357019 705814897 207908756 26362670 945000154 224058336 355342082 207150561 145468283 470435213 248222695 60457969 654292461 782378177 152219725 51085711 371664180 22708282 220799952 983598756 282661671 159724967 576080932 59970888 477446386 917652525 294237069 871401548 947095958 369074917 620887398 845283249 78623332 906217819 637747355 753170223 412886406 206170129 438173742 514538159 39585910 105858298 418888629 591963345 943525509 191676927 367266778 673046887 251600726 302589821 496473306 493307384 293157728 643570373 602226439 82298942 339016303 135048347 658399558 819061928 158692899 803702712 183587730 776714969 519629935 243153736 776210807 978459175 14578203 122382701 9895575 226806813 304080707 946619834 293194025 939206393 449394647 966854584 277207669 115156527 146305561 58334564 553123161 874835172 307481377 900918191 670655687 401854579 503627612 174917885 540369476 185499372 220284169 636772775 220315243 680862608 699655867 160947833 88100200 288555350 631180250 746342196 953555326 144202602 742435105 238452493 627505538 242282408 143384353 258502956 896647517 399190821 472330429 634998574 879182477 108207783 367341484 360521124 32373924 132918568 414481659 363148946 880189896 75693655 136375176 266235889 39674162 571218198 411981448 295234093 980493231 62599165 892463617 23698087 969828386 834502102 227830609 909152308 862156800 244084255 635188645 574579612 42561490 301281163 695012483 411495452 84840886 791678081 252299329 588552164 138062303 485522331 63668875 348254874 234175249 180318249 657454817 728470998 840196902 784179372 557730070 117449636 714048395 745623899 861843922 286540037 640667587 459463841 994838801 741316205 644461539 669239708 234683043 6962246 112082196 872033952 784419498 851390316 708041749 422201778 547832862 199789488 60712887 771634446 760336716 792497238 914219359 930640802 701571667 829189270 688954759 4884880 832762790 644719134 944913980 37899952 480619149 225588110 831603105 895359755 708715939 905436922 408966252 679251297 160627033 38012524 967853668 608343460 137712754 13467232 897849577 645787003 28569221 121008199 340379500 621342400 706937983 353456900 824604658 909846018 944616222 397855090 617660309 36359428 676401526 147613915 599880963 929398076 862464368 884977538 920198397 262953045 438913094 690942747 650685145 471973037 272404745 752067406 393737985 363995096 600925979 886946359 311444338 917290267 292182709 491621097 442076734 845321202 393484642 804804070 791723530 843129994 303655554 787985320 770603153 814805063 148736969 446958364 403228959 277491776 188405181 84297250 222450966 648508350 968223803 455383054 96793708 965440193 617996530 572093994 810844203 326546043 855620582 283497010 567911665 415128530 136602095 412451030 692415342 371110882 727579447 507768891 351179496 524529785 131325888 128557691 711366585 343552154 299961308 140727328 518670288 407254267 725927091 313339565 773525292 263487110 175740608 785115413 803007077 258147035 56646740 831538242 384928035 606735053 690442770 500560783 123529892 262389985 230059889 271500110 530518586 684975570 584438078 443039556 76002251 26669839 104094743 412738344 60662864 534506811 456235248 215401767 604372054 503266477 234049426 644038243 171750528 715709422 540934935 49488751 186074626 913355325 112346736 270239445 544475944 416939534 133481695 549002128 961781709 901319558 922465917 387280786 720042980 603374849 811278517 750016575 570731507 766790541 187076295 879451376 347795347 51104620 510073926 248765298 730285553 96322198 732656538 725253252 660345936 84696372 382008447 511822429 685992069 827931174 419646085 561089827 495157626 274620799 242964878 962274676 594283435 158661379 130589778 34479841 115601324 875110064 398022878 725572206 28321953 192837426 832323856 108131604 73622212 104568941 831412509 374972992 29128162 709533175 897027596 85192273 272411102 900877210 879998521 488587037 571312429 47842263 899216339 811974252 817744217 755652702 575253853 407911036 488968063 635207320 224749617 473254012 174888656 532186141 886614264 497984785 63939859 103786814 168703539 663629011 722305825 452632956 317251766 98989777 787556712 928943630 432165415 180422409 150379113 128428128 601552771 894549745 943639867 157020302 727319450 322007025 61507589 53605357 135826830 387616230 337362055 421945219 168291672 639256481 574743186 587474058 915632707 225149286 329107595 320671985 39012207 142140782 219278829 65636827 168043599 166143077 602730948 256618013 443225387 264125420 722639154 433421508 878872991 347728152 866527725 462253453 971144986 832806129 907972287 672202604 481510752 183507700 382733317 159376134 115336969 407028626 242410545 875472182 331632128 423836335 767616072 757130636 876189188 81575971 706772069 84579529 772530474 29760572 792555060 520524644 34015321 949728827 478244216 690321928 331870668 84818130 705609861 102144531 589910932 585722540 519055558 285598233 451811860 462692581 321604408 563249248 129651331 921794446 463629549 850003809 326703469 33222699 320666507 665302605 20338483 280747572 703800778 412788102 948423302 143457687 579354618 16565537 402926320 168033076 367704698 242603883 663314251 290318688 147538498 477262689 418507847 32887907 121428826 509780278 555570921 529019130 2183009 288946897 652230918 2051285 447478791 29976140 850804172 473283866 359639443 96860790 289429050 121308896 670190941 68971858 918238115 222679989 143392341 429447830 425482288 962545177 922371451 912704045 701010266 877279745 364146276 733903030 204750963 358736213 463730620 8106498 788772126 442273393 746484670 387310489 320207315 265268904 684240574 81500982 994580573 308803260 403286944 407724871 541576283 816149352 126782557 284473198 714780098 710834646 856253061 189846786 376356697 431542825 451259320 42099599 887439163 121938421 263086636 729945937 237185881 141343426 296374058 253051837 520135670 310600844 388032401 34345465 184654889 872761926 811240018 324524895 96185950 783220306 521881842 995364862 740160725 396580618 870261771 539647257 476048418 827824955 780576203 705307558 296788907 137443493 919689843 708243151 883251245 553539708 60554969 632208501 977413176 259913706 523248358 701652904 123032238 284060810 959743001 61475120 835007304 393560303 635071491 70134279 678773521 302151451 530752713 518204381 932200169 880898312 527530405 196820371 941717507 504993059 302962021 821962176 760902759 183548619 41560811 23457071 495587697 219577559 577118123 628006751 608947280 614864909 537808432 242706178 738445960 947083180 315536023 730434686 841035888 594470883 38107922 65427055 698638773 97399383 46745190 246959651 123055061 751467681 815727213 28694556 507301541 13044942 878963349 669466770 843601612 445049821 607837280 135847919 706704965 641005636 521493474 318537041 108226273 926241900 958685766 430958347 174742723 467791152 768512073 124326180 221941474 805010530 33865917 302641622 541458314 900000071 973711624 350320144 163803355 637904662 16763298 107996661 666408777 568887164 199574171 474925403 491884570 674392858 539038226 945178701 903288299 726158854 869844159 818796426 153828140 827716166 950714986 175044867 381691039 429143128 449226865 886361184 569264605 61180845 571086406 123872124 285495249 564449065 942811631 581037797 157134650 839350693 872467077 712809565 554805549 287138925 278503093 947166555 883224978 447860675 767510850 887762827 129247138 111928666 690672001 801769802 888337519 935865563 296182235 131967531 104971100 984280675 626307662 391263604 351171233 851846915 562873581 763849889 968704456 567904575 644358747 730932704 420040243 428263312 758127188 51415188 796710804 66873058 762379813 628768211 940604530 286000406 406521647 522175208 719956139 203326849 414152552 173221841 581415404 429554540 315443161 969904577 759716923 82672786 981261601 814243744 974491758 230879653 30044656 900875398 845912753 457557192 942408589 627012675 648079620 616922646 134433361 81147355 434824635 959218714 927031338 482798082 26529276 564055125 532495641 29723044 295347268 398056380 95713204 985722976 812275427 52936503 43612581 337559815 906662523 529947683 208996392 826945570 13691525 104648401 166420113 479503978 627304396 565853445 500066500 622630222 204670191 581317751 749639099 434811248 856456931 343044437 945511940 553981736 963645295 479635136 967255616 314776320 994629551 576810826 482285478 89340470 97489554 470663038 735091837 971204413 338691932 168847960 926865061 197609532 274416165 563815369 941946895 246414733 538543703 672998709 966997312 342936639 869263155 662846964 926696403 204272277 943208013 303104980 371266292 319221381 38785036 466605973 327496165 354876474 942711339 158520172 94507644 514475667 108728379 960855937 66484643 960499617 947468831 535022192 636431319 190546221 666623630 980414924 537383850 157005615 641219988 596538520 373030466 824719448 137177361 527841740 455388119 650855049 187510584 675563222 722833976 50784090 612011282 502028822 630166343 151942804 742229753 549980000 657853304 513038519 640723229 904996478 751084631 554546037 226077186 767113644 186297599 31619125 462174464 666247706 693127843 352960145 2043074 304597102 420223752 254324952 653225928 187891519 655291657 969350285 352410853 936237467 367421202 45697254 976945601 432063874 688744358 42598221 348532055 430674536 806400986 665899491 532532856 901506999 705639895 882960888 894910535 358068042 184606043 873552020 374946492 298065908 573546553 233204978 208220449 349690359 942745812 665797887 360300695 725201293 492082344 954111967 941823634 295831395 629262530 593934441 800487257 982437145 282328643 917229478 171221639 857730499 726970592 814991190 888296333 160124011 785963877 742345322 478740525 260154508 831261741 901054347 901890816 411161241 810293164 635446674 397453810 402573940 538208998 398899726 268636353 507848695 985172469 362655681 827174785 43435887 469222534 687785251 281121562 799920667 856536668 727370462 475809224 701989553 594151884 125571152 656218011 570290650 123024960 725920780 298369781 40313521 926393524 310304345 328718606 205995849 543495740 728766385 741683827 555895076 957642876 68114756 669784963 574985148 295394862 516365683 592014065 297083645 622664608 586000981 295177797 742703561 604611379 545362485 984196187 755974771 849564637 166560273 184070626 225690948 723877288 481820189 993473501 657071866 756804145 630094910 500604454 925185860 437958442 629322896 948910566 432912199 131829464 600058849 571129887 827992092 951266453 84702771 122506274 371351887 959097167 321588030 305359385 876683106 761267207 313984235 201010558 765922888 630861908 845657050 85616034 123247082 788168413 422114781 816751143 709281445 29115874 751024763 8361350 956605898 999736244 867818862 261557643 181116445 956279097 102450469 843582932 953783383 717019753 345754947 393741909 683685285 225040083 767016222 765817814 166244390 514471449 988071488 579924083 635266928 206758511 82623210 483952667 642464523 567886112 55533196 563820819 163326196 647147785 436170318 769618032 794282012 363646236 315234187 841688224 185948903 12941535 411619920 376194018 377346478 469672170 879448034 88848073 72290621 953822573 831981877 720652477 514853205 574675623 504686453 964467321 75222827 100522864 544946817 618232974 678595559 604919216 6518635 57784287 987825447 514900197 390947065 68263459 981208953 658663074 301098023 211066983 749872868 74390282 536351907 695672201 50364768 271027545 679859536 211455166 56172889 623652956 992908484 535584268 756828208 926309619 893105097 494643409 629909178 381287574 71349727 947811898 282271679 425998285 563968441 902264781 824488572 273261751 528522172 107004384 481814817 755647364 303000707 501696031 235738452 836077819 690775389 174334986 312761517 259808501 252469453 904258932 428415288 942217952 346991881 905014533 166745078 212005948 930437244 357773497 56067420 230745377 576775749 403125856 33407442 158689464 334527670 792128028 978656821 558248382 400033237 626200293 657917013 433289988 75409886 129085704 355371384 525961201 808115134 349524132 631614165 604659966 71149466 515854380 452950554 699241017 495414086 38953192 567813095 228909507 357055183 163921779 927572049 945517650 827217650 580838462 465699680 142869424 370719138 791064588 844898704 778380601 753461894 317222004 608048212 679623777 725147000 78941795 108967566 15190316 773032711 333131415 627504409 925344948 595579638 545827364 80914240 621434279 602526395 615850739 664422723 913380551 827800065 364116030 687044825 343563112 548675366 873596182 434506153 971847669 855869373 117766365 27712976 7158891 21092110 280999372 881583710 748894939 843216017 480401262 568100312 509692909 351468663 364223267 964681912 961324888 439295521 350343838 166997992 825535595 169990310 293113448 926351179 6629511 600740690 509168219 498017845 341417891 627111457 350624807 422346733 632017607 50863176 173730768 602317874 660405905 137199789 880065070 559251379 354001843 86748778 222950763 479477398 159800178 831542606 204390793 50814706 71902249 211135579 221921498 763243348 302977988 650631241 251376262 897209150 460029510 404914178 691995912 878063523 281657411 911897892 43253425 461452653 866059622 319225986 768122404 734291448 514384109 425032355 373958872 297490324 785743912 495840834 28599706 49454598 711161597 814196428 85376776 672855815 120821351 467267813 336646678 958468292 867345138 241274083 224156301 782172764 820846913 767840081 298467719 36338277 678574217 156955502 858649589 719171944 456310035 900034476 852116249 146456160 988135613 570266673 880344332 652094783 247471994 659406169 484889401 456795498 436451278 9862706 434656992 741982776 807085906 809946878 2383764 306741110 384743734 493584309 647123389 912198630 716500666 659090048 269236503 420234171 766179252 43852863 392013105 635651870 273414925 901366532 177925616 458614957 424934724 108467350 405415433 969817078 674232041 573126895 841680778 711612929 789295395 322568894 347611729 828541891 82254891 423450086 672269459 813537452 676069839 310873597 693778775 756884250 336696304 473126606 309470969 968569571 694615300 57555671 598439 699657680 14953620 964138956 137699303 33756188 217353151 67426066 585361167 786439417 500694454 344647237 148717516 524854539 991303230 772247986 742754460 823522027 922957873 257187550 11546708 738128293 112257533 398653693 542836378 642980154 321725475 286908283 366709355 553686815 567170489 349238391 59112599 610355900 538515689 975653187 484308032 622413807 121851248 209360614 116293471 72089990 507411231 41866394 498630463 216064968 17113182 144676430 185222912 497599725 378795684 182317860 361794581 954538401 211921152 417210356 530505926 397855109 19541651 233211848 450107567 779388334 562263828 997998174 449828159 88397092 170677066 607790761 433576506 420373860 778845590 114952016 771097144 10760415 92201574 938359086 193120548 957672825 320622787 497694160 985655485 386784011 462966468 159795194 403722008 554483169 341157912 66393634 673058588 933328188 765430401 72786676 143556868 617966544 805652563 782669260 913497313 23523400 439598329 536140607 339880726 591911358 773003121 769331602 24290010 855138371 767214795 765708609 226703545 107881309 399425197 535757178 559389971 528318083 556004818 767267487 8868508 898296739 940907654 44146888 577482458 762604445 932102444 603828287 914831531 462437062 336649400 419436034 42921148 249500006 830217526 173126724 124979730 807471162 552830017 571690220 104136837 990548210 385126796 259919892 797568320 630924468 932610909 382505099 950468419 229719703 367204109 61612116 40090593 597189161 67355529 830304549 85171522 445795306 690225620 282953449 314157282 884691919 585327491 468327486 340402704 752593856 135402815 902198520 127456880 577378842 791958343 359950492 851605626 466196525 156228587 693656806 852192761 724306110 343697938 380442179 299908748 455488647 657423797 620453463 821816872 330078387 979649121 480315001 292541332 616954722 559580601 4956210 372230891 732921899 724702194 859772354 315870238 266016917 716726870 445194907 481843568 189042844 892644290 391756260 783025656 497797939 39428903 561854199 359980578 428582076 948977676 896643555 30440494 51401617 90551562 731298282 480761008 725812351 199439439 89970180 234500878 107518790 642923036 669556059 679790597 973235482 162999111 678463949 268944933 283472677 425972154 757265518 393188944 981919491 306384626 499305987 864690751 44009796 324289152 124499335 903066365 119919085 86278796 653625002 670614890 484932855 31625805 431546957 106146489 148368591 499006610 793098503 360322802 800385236 68066364 985254819 390633329 152844765 629488321 107512224 521744229 963629744 650772139 639494063 835251794 87657612 654462999 539153465 219678863 994508704 862626103 137433047 276664777 870098833 996965584 690817496 482744702 796289016 858071229 562948798 610445187 221731554 505546346 386581697 412047487 767528782 411269977 205409866 240313965 182938547 532072353 483175033 237100830 124086391 605511786 627794336 236641973 91028089 452606578 227973062 32616489 701236104 939488907 990203686 568775110 479303401 755250714 843673773 152334252 992029141 528244122 646807167 890221135 523207672 169270039 102989426 714458869 729078260 804571828 714564241 430164539 509913564 424566053 980194202 786046097 690589625 502610997 466334593 463435449 331383304 960665922 466718187 801243724 946822714 116403644 521221300 925336629 710477107 490349993 296583785 413006643 617666508 356960292 68595919 660642907 713300306 173646298 690850650 465060244 441597444 894884235 717205430 290155034 88660888 512521359 344446018 939943164 339680182 73002318 447169168 384192414 601244284 28394951 712094183 512045112 615033080 345484298 760609217 3847252 187431857 480601278 756469837 888689492 165464351 184519068 883255534 177642217 295302190 807541233 796804794 458216349 260828864 919694112 744261371 579003211 815625768 41560350 614428594 864056225 880127919 772678388 891194383 943569573 944303890 819488577 940359418 711326509 194897666 493609142 506743182 325440869 173954467 30943896 110256024 959282509 427385613 982906177 193854492 561438521 204056526 69948574 461963729 134388815 101214567 732436146 219229600 995785996 479499466 168076306 864456488 764938176 620191459 228741736 680318781 353424141 463974156 218677489 273095269 250311276 295389078 22365438 572559194 752606888 862395463 406750327 814483850 417836128 512405207 173054547 587490202 743755913 935831922 18472737 617654751 6298346 988095801 798358914 566658275 50401951 635976896 781733036 419679206 82563735 226902674 884637417 712192858 699121174 315434408 118586902 177228646 311915315 775640054 75046948 52062309 711106395 292862687 645915547 926695780 781548492 444719035 647137810 194882215 916989979 532085848 388678328 767676964 355953327 757530486 18321614 754174470 435983683 762418506 262574123 665553195 909027176 465734140 806560183 682157479 611499264 110138409 893108720 315860287 435747525 99332449 888744808 538014703 2441920 805728938 173620548 501076069 468969682 571539707 976758207 300117123 56296238 279692226 261641381 438855137 581865181 312906591 541778392 552214600 478750777 718642598 887431631 876895800 870645106 348825697 689931794 769676131 104880396 927444428 569781183 96594224 319826527 728250135 170287112 147704121 571406358 522140392 18461875 678580173 634655920 955210198 378000537 124856430 853250306 833903855 509454887 32621140 761396916 680598067 823783904 625317097 940069567 161290518 656944344 58102347 310432757 624873730 744755002 932777422 671151481 144250835 541776068 588643447 960060226 349519449 83201350 174798209 268844701 175844569 613109543 874086620 668454568 902122893 951252448 639657897 228279512 954731295 102422654 687139519 102532468 880613682 833867300 965696810 416598039 848850649 182828167 667646118 846619698 207261982 606574704 830708776 324756871 436082045 271467070 196801622 102768303 682240102 714651233 60886026 142860182 813350846 379831776 860501203 434198521 539840350 281382100 706415475 73909743 33945491 774216939 307251810 786129501 663184796 883460582 246366281 922693504 381735984 380214299 406462088 219488616 323794421 227857139 239502258 61656183 142431754 727031661 841883660 74131429 314242174 830696601 903614481 447722559 777007830 21052446 120714992 27807204 89591947 136444598 366023436 858194311 491300233 604457644 252758139 467396784 663837362 158359653 719002504 865429051 912235609 772516564 818929970 959851223 130720456 153827331 597701546 373128071 373290170 485540753 375881433 286940709 471059425 780409135 680401624 120081370 698624865 375742242 262827125 402832808 619363923 253754052 985954229 422187744 252714051 473255683 917625932 944303020 450010035 962243297 381173799 286844806 544435862 881270770 541031395 451020223 70956757 463556321 132985683 676108281 247957710 945389547 866958333 785623725 705955792 484341090 68728733 577259942 48383136 378857515 895760034 433185412 292295158 238041153 496089260 572830523 960598273 880013616 348362516 208318609 506801119 264197274 290297188 3770531 764267558 845551286 540975578 731965280 924404062 330221772 362706922 441028877 657784197 948525498 764826809 382711487 133191049 824021618 834659747 143760612 579192785 403112057 15862453 297938875 213158069 677756522 272961843 586961879 616845057 686911089 623772692 462018720 902141046 751819985 511213185 279724241 149457481 920883294 163386458 745179387 515363235 818477316 535063728 537803265 199471135 708455998 200805964 44464538 115034702 571679647 271687719 164107987 993714742 49090893 531205104 444020874 182335951 968800384 735945353 652955124 999250821 482450952 757754506 816111895 209274553 428454597 133669565 111465297 314195008 258946604 783006368 513748943 658298082 993977545 575855334 183177239 37845980 772632759 672337398 956543615 163913055 552556586 376246379 110286003 505322254 771445221 414087570 241885235 142782596 309702596 149536751 155078354 543119308 651544372 684054456 467330360 645263335 971806134 131024216 339578209 950202186 562256224 620193262 169568028 665800285 740329307 348279243 946557582 764736509 139985510 199324920 300119212 204294650 396266321 939755949 39256516 734699930 278522755 305168091 313078261 478745108 560616309 275896996 560459185 883327254 622452533 254579421 283373122 110072640 131722468 897754515 668678211 919637159 998546232 930332035 106307619 62649683 870123003 755454112 963710630 811009473 888556170 682938000 807441763 870727009 684044886 370421552 804950342 640200473 219433831 215234828 244656912 632048576 749485780 688122343 52639698 946541732 147486028 273859897 977783670 789366277 527496592 807167660 521304374 412768663 969042166 527377055 390581795 590322948 354961896 165023395 975729567 140638824 547329635 67089408 672631267 53257939 899561593 685243953 171110522 360216778 223324367 105234787 63485636 376718023 395332383 315218171 964173940 582157748 744878775 482298893 504479763 7698804 355677945 19776485 925838715 64980315 490149849 414961282 967637596 675794608 742004834 941325590 663856314 792905522 840472369 631848584 848431468 671815056 971171064 180568561 167888543 813307376 11570429 303621922 204951634 40260713 644139928 451984157 495773912 515316616 669457081 985637528 846666585 687592655 744170591 761105534 149859920 214480177 255188770 188815469 195150862 640015768 86015658 666027832 178348342 621654880 497848373 165463398 570147647 6493913 912694037 365350321 790722293 260664264 276763952 534109065 425946873 477295590 752427902 734522767 652363324 872402272 629898895 287911962 558097032 697148757 308795138 789910453 405180663 55456348 256821263 53841823 499651706 778356987 638278654 464200777 517602387 271662641 604255406 763355100 163388571 635856365 115891215 160766128 530776253 950540180 779844264 655096790 91145209 86865535 123101714 118492048 208370146 649566330 698531706 846561235 345002208 664962119 826455075 944725196 160007855 338990617 577919458 100890968 176667870 447963673 84159392 880276874 383620945 273730789 535583196 358372137 163964096 13365260 266629414 334542383 854167350 276676243 384852133 462367051 319193234 900545907 329252498 531027040 63502601 702516760 614626491 940578052 998722466 91511011 203270401 479526658 473697465 356889001 314986970 638384856 844686460 78289971 118428368 954347066 774143857 656177340 852795135 580656269 33742574 659979894 772035483 160340844 502827936 537208325 770096744 466169639 989083141 814889986 429911616 343411007 697941233 70437753 928291729 814044908 902322701 973659243 397522140 113738135 614426195 58686029 388607799 405828960 662275220 883652744 321577164 378023321 454275570 474098423 402892632 564169032 791536230 686363755 405796013 110902185 993313595 393199914 938365232 2439850 397331345 954922860 273754715 622588270 308462811 691280349 719857980 101080779 247646561 88383006 147045621 686962123 268304063 359062340 686520122 823475759 856472164 363664983 635107030 551153383 123488276 371150037 373184038 504678043 679250535 364800300 886560668 818424357 813112135 82803011 888306749 397355797 137821814 255781106 44433444 999725100 277808134 804629125 297555197 463795681 458466015 175575357 317303434 931204831 833459004 940299727 799637282 626446469 164077870 256530147 273996333 621078885 526891800 4256150 52092585 571724741 257061937 871052792 773020072 222960673 173748485 639050639 79452880 683553703 850869236 746372563 5090009 501113017 676569522 57476271 196801555 211282287 875459525 981032711 314229469 949639698 128086795 835084076 124451375 55648674 41864241 658029929 695520273 206725201 598135868 590327418 933133345 32444422 605274884 447720976 331251218 902193371 812091316 195014990 503122983 642055584 806588748 17424207 238621116 862059093 602397471 982403486 579900862 234044084 160666965 251858619 327747885 12932772 173547882 283187357 45270945 290321607 456173741 510526251 432771523 796091629 269687490 205327042 76199887 207835807 853665825 289818802 901619224 705212309 834455188 405569985 632825220 550735936 313802685 277958310 891129868 177301057 632180110 323008143 743306558 297274608 197600975 871953820 123050171 654166998 70236059 110300513 35118265 3830067 433284579 287782760 903192705 570376313 895637481 871216045 392029426 881891534 454136519 547843872 294298877 481809806 687232230 403355174 440934951 802008263 920458375 884211481 613322506 405310908 920509502 997465795 582709203 574877027 899742065 847763175 350391494 365132519 147945181 608816312 369155766 532874790 675165970 98002272 201426829 63295027 478068466 10787451 652169930 327776725 14682166 539954841 782262270 846420487 280898537 795409855 817907022 267452534 125033706 282519014 418883060 284170246 897120367 943094651 230461630 243735886 181446269 200631774 996211341 155543319 842356849 371916771 604903640 461906144 659107706 178234964 828902950 467574109 439055644 293871212 78956695 120999668 946846126 569146461 126517852 93310526 120933085 113555403 719115323 84826764 663433255 280924240 725461516 369456224 85452129 265812470 151271230 247313903 571508018 955564480 417544531 494586790 672450453 129166881 920864863 7467682 862991963 298408322 441497485 111387446 947069863 281694401 865579930 602769257 280106096 864560557 58997592 219333493 306181890 902026635 594609197 192019529 684686205 818218900 907537041 541557768 430692436 334479220 914305171 643777160 503135952 514443725 808204885 30427604 654204811 321786034 466581644 233214635 610625781 5957164 633346817 348758782 934237651 74522297 67053842 81523830 294265786 285069256 288214065 969280747 570904984 426670142 781212260 769386222 783545388 775779059 698650820 857667136 457608329 654968630 957764094 986639961 723545751 334758725 508581589 926759650 813715858 201576662 41416861 568937531 507627145 703253905 604674498 786220534 357354208 244960660 268521023 865753946 943357647 629981166 446439975 134022625 517236704 713754916 960898592 404306362 215968117 971663790 703599075 479705671 652816703 890082939 542362814 256799392 958737352 411896169 786372114 337050639 367689451 151898574 540126676 750195346 439513174 598777586 832012048 648671581 605626895 525379730 662115938 492644693 138840300 242589535 895914107 406332821 492426521 598439805 324201634 223489517 495423638 641332484 820247856 131312990 354761655 337734787 650584083 197991071 402034594 839758712 801703244 20998299 764735188 207207129 360775537 842920689 509536157 99093390 239482411 830066803 631527071 132587252 665561273 329125799 108111187 335941467 665476716 992691529 241908867 932909193 183471401 461572807 356202193 817708086 282914794 844397252 334548783 952368270 779872061 33690517 115527525 766385842 843118531 393646535 210534543 632843575 980469938 967919767 952418716 894701733 468612180 350272120 458568656 128652793 138230406 65974161 871748930 666295075 943113530 329910844 900135775 336860553 520122613 224031625 951707493 891728514 583121233 182915512 505434345 506466268 882556284 158407363 397488722 755121239 911253688 673030354 86061403 335500328 519041753 169709252 259590549 922370423 106854602 660051117 216643810 196316385 155512072 624375378 958751739 938722806 591094309 977729455 974765292 729227196 894365511 151293297 884043155 92444970 23074470 388945277 444913700 292903342 832445457 899775847 219079591 720651688 891559274 103135996 176276601 842532589 603724069 962653368 94429895 435920708 400605901 463683664 360859414 509913324 954006400 179089706 758137534 601691924 718350958 588847840 463136362 948504674 476947293 880655297 723498649 62636397 616837928 416051536 123792416 877006659 251159611 63118531 761979046 524270564 712847641 270870917 838570279 17935044 323317975 113322420 98432114 723300173 733506462 658188964 333739 885584219 557652780 715819354 128741065 631100862 607187795 22062353 689726745 349863611 188460153 930938297 810952121 148494476 283456023 150673523 237861406 106813915 805398843 929758230 599905423 526077515 288313093 556207533 951552167 180852463 168183597 546987255 984814039 127660753 80641148 910684902 58287073 867332973 700331342 154409504 600451934 250431795 950022167 763036033 313555001 470665224 536150490 934827159 928605746 785712069 608925363 699788837 602217821 57672887 1643087 462312608 665892512 948539421 905781359 922483381 508622392 977324718 238703977 55549889 175357492 369429264 916487847 629243479 496284409 37524066 333880101 700120254 570046396 840429235 159933943 762047345 495869707 347669896 793897153 992335261 792358213 833470042 413233725 503227302 698073373 40993046 623507129 91504546 474481691 425677467 38568598 56514524 72343323 308384063 981306058 868400467 943721675 697546571 478704479 183524408 947656241 571751802 420535282 523623540 312899364 28647806 103949876 929188895 26549454 881560187 208415853 763946506 447154736 851452810 937459700 691244086 197236382 303585848 672283576 47098971 778967615 915892484 759831738 605112418 21209742 396732388 865735824 375410923 557868252 350737088 871009764 445983176 852869323 490591734 224927987 20390528 296926932 414123733 138207759 247501517 753620674 335524898 929459230 279334174 479455285 73477782 446962968 216415510 3338529 298244957 789234828 514995723 377499724 14930584 828812828 604139400 710559699 990223836 161749500 448013771 848502181 424324785 38028151 993809992 177300486 524500245 467769194 181545508 990328334 876574710 720117447 523357370 173062696 659111867 855663892 660220442 393002643 399200444 271753449 171429253 841706980 565968325 926156918 777753074 741708162 625574552 640897018 520093324 374669353 823544423 486227533 227585842 444887656 782238302 421953879 352776950 782828835 99218455 346979990 269343903 430712849 276970531 320925 714727207 707963455 390852232 565369487 538611773 695648395 208343870 966477480 345221315 410551338 332250801 456753844 916426065 52382498 99159106 188214678 754478256 346409680 316113094 734746819 650497121 835313764 477610245 507748548 256416532 554168673 436893244 316575160 510725937 777657374 406375580 608697295 111210834 970218567 39352777 802108368 854973639 400763228 316252507 674374036 307557392 535782192 375130464 358189192 692274023 132721771 551549144 504117807 370839860 799054089 658959928 729617054 657104022 742109401 649719272 609966335 679254497 401066495 471572165 447949838 14422298 811924339 81521823 21264543 31699581 387993984 398998204 40548374 632304376 18546757 609758803 502394093 908817581 872349751 845652242 632490802 832508276 824169629 178498969 124844806 268017494 928277523 703040509 64974623 551992083 941368584 536030278 612883782 409650333 219827776 909654257 518793434 39379355 622699346 262976366 156658508 130936295 628599594 796363427 41891489 152742928 127346825 206707047 356980723 229010393 603807872 205823240 536923120 606488248 259820793 962113990 788293977 422686296 56715054 536013653 195629445 112934167 169154096 367630175 442775771 669952137 175418209 70069760 474411355 396358131 612390650 801520200 253135126 616316113 389870726 492394173 379146417 417980752 845831013 21023702 921173479 878993620 504010058 69545601 661603844 988839540 720230590 176623261 846867562 273223545 180837274 115371393 182123792 175304163 405515153 96844916 622150910 632984804 647927460 251129650 241253586 646450530 7897515 716602989 484631358 778617465 623590611 261444170 119056775 550040567 693248027 94578912 977894408 789201119 46119894 885387453 704621741 772863975 546464044 793848672 609519480 836608505 948360344 454733248 564445952 926929589 320917611 418317507 77665005 577912558 504126280 29591496 908332157 103157033 221248166 326561054 297540867 270561313 787532625 825088138 246451298 672297797 567180778 930554309 916115862 615417656 644795234 467485436 384847147 884907089 681356163 374942030 90236868 847029529 371433831 618220882 992609942 327699151 575324670 495118734 709419498 886701543 704661133 52637441 111102366 515396230 460903210 707560346 968029093 636035848 152348481 796035262 70786690 624808571 709249042 899732422 838126033 577213729 194846000 198341246 980828351 978629874 413235971 115496872 291341965 818556951 770912071 920928119 364591376 573740400 839498635 896359444 277821748 464204559 200809907 236904989 227943284 84645563 651583095 680096545 822204516 299713646 635126242 576234533 281102632 95109336 881426387 865819170 793324026 288848857 89247359 104469636 920015015 832841995 835227373 546872237 579565842 943009845 350343032 302615920 377073072 946674649 933794385 252504982 744193547 825620903 86422011 981074524 428401472 783074568 401409997 10628339 359267456 230956436 849856116 276687359 127506322 104854940 188024942 765577241 482951504 274119329 491449999 415033421 272465445 811093466 5063808 181783196 256786070 838079667 173378363 89497211 203607478 483889992 154972561 357793619 287792560 941709550 468447908 59388671 355052096 910912171 581578861 284485713 781711674 782182841 292308023 784877965 141377282 519051271 511715618 928637163 879852307 240465592 943946913 726363417 198745721 691873 200419068 16173496 544729686 575358159 153852879 322742746 330672736 677434111 135088777 100936331 349947233 474485797 115422958 294013253 301903798 78942438 928622998 118047353 838568913 614601757 80467051 524298765 70705336 662854489 900459311 663655897 8519299 784233310 621889012 981202985 725666529 226077344 847019426 708388414 300316052 452561867 248327796 279525581 629950192 748397629 272860795 608205438 71687776 918908042 458158106 984264302 146037985 426602744 357737608 200086701 575262598 466671104 497643089 378162881 401731570 337272531 903492053 12294178 754380001 20619219 324603848 258426556 372545183 467744021 190065072 551983984 86838159 348159718 710392426 781944978 590270117 672406595 197555366 22884972 343906284 254665055 561810790 863392186 866170114 119098913 536425603 604871725 81336215 347685027 669641512 477549288 663681522 634528180 597898837 306755334 398584172 902967639 115175773 426571794 437930226 731897154 656508520 259897485 848635271 577063264 938532082 292942443 704438464 892691024 920451146 978590614 568574790 920044003 802988564 867965034 283875671 670057377 878752968 113415223 831747910 948000581 858094640 660822979 709665783 409015101 20114926 657415109 498085732 123582763 242055668 614489963 524941082 57802854 122435849 102062805 446566588 200065146 676202827 910676375 706320511 325995427 808826024 548932411 64743853 115410774 195533155 634879421 592695586 975235257 451619478 246670349 953737170 467748646 400967338 422067344 727952193 608167596 292534752 824909728 720535561 311901838 883195083 709109767 718919768 98503106 59324628 789616008 198003823 1539954 388762805 258342743 662081316 765617023 697637118 11902107 319660129 547500793 983271060 525040883 854102947 282965672 534847789 246624494 352986235 320521606 157137877 629320337 866654480 577723203 280071531 524883926 227819676 471015104 373167396 366314279 832866283 553293972 132543752 102410215 563554271 882348426 828423280 680126185 708332014 107855649 83160207 828155639 388739746 641902091 6467813 540984140 331676184 348991150 388255181 679847450 755428482 633978278 726807793 829732614 265473701 83449409 240423376 187993511 692327515 746191617 897593919 909113354 473004819 187125790 371712229 723513137 625294924 647124994 271980989 300345743 898111005 718900683 484447896 340010381 814060976 682348492 318679448 746443273 707161539 2868748 57001911 687326418 728855846 832408261 505599294 21143341 390557503 755605222 742461518 770234963 420786825 385943698 219202394 202953200 207397648 349559711 313944491 741079718 549324534 493585432 990253019 393249928 787780850 427184827 297699930 951304095 506705612 324195196 653241837 801639017 24162786 925876736 876834345 429852245 179981735 421760035 850738172 997908552 975244318 765992563 396330533 19416859 309660771 930274994 57703863 193531418 549551906 933296727 846103194 573846918 484607262 408443662 551199242 678383892 70001580 620291892 527116566 380175469 81342261 347747420 764736802 349710252 34364856 568739276 25136229 396600291 634864453 898804992 133644908 17922966 126232707 877415462 705559189 143277885 578499371 422410401 620918933 228323271 437063818 693683079 745440499 147293970 729051139 753122851 488808330 731054708 138920331 426836595 799556107 349910837 534597675 766808490 482403449 366994194 86996610 949115056 548322731 190673084 152060736 285500061 703034829 368100439 9141164 430761793 517256415 106703356 901305887 586500000 209712949 814048823 690680967 521788526 723427317 333756553 48961253 768745111 886124444 831481831 784015823 648566202 820002937 980923705 117741295 157767336 764168497 517825500 264440194 584385002 814362937 753328161 737729241 862182457 276778335 495688139 308390619 789464836 725985346 755985045 65460353 964033773 430054101 732103850 687878745 43816012 766943456 245191467 111465733 676461994 755191167 74269869 330159545 757233224 631484321 376160184 956310720 402382998 456596618 881743177 816439286 304203964 502516305 908780368 334099279 523569428 898975843 694870323 358980944 166297773 377158654 284475466 691514257 333173194 65802423 852379232 311822145 870079073 310142709 296364088 457168289 283366557 24118387 560728070 936457864 302152541 111208642 254706162 437415645 292257458 188633540 922325145 690710817 142618213 925694002 9039243 873329635 885867118 872931864 402888654 706408521 548696958 251914580 777457241 837887117 633664374 882208794 628012186 660206206 958190062 991733618 328287985 412548603 567317167 927570360 715944755 721250172 341240377 374200092 355817256 84547721 145977918 300881440 79715084 742982208 37025317 309137437 917396498 972516307 342665096 463045566 765522652 112800520 339662006 759897986 453626372 466364087 260527410 513766974 393698967 484117328 953034802 148038041 82984085 389214546 733585184 197802639 500688754 195631061 253498909 245336047 523261592 19312385 710063225 600143069 993754083 636998293 9233724 973580624 650250787 71904353 287762337 248394389 459879838 832409292 42338709 654297546 328072331 869935950 341176380 932075108 512139159 626007287 719285869 933022890 928905316 380211943 738807601 71310903 230433798 954282196 721444936 237853308 133450628 547296647 809244835 538475323 282401885 369107807 819233515 338543373 174700800 319421644 465410041 802917341 663916370 902169813 123583836 315110251 40683308 525148563 637737942 934166475 755814107 395289779 401472991 962608099 213066143 209568760 917100065 230089712 981304876 428062647 337499130 604775937 60783915 383579482 423382525 748081275 984520634 59197406 217052273 931649683 839755752 745042004 839424464 400318167 108804410 547355235 736205642 522924454 482975017 974310084 249299776 655560115 288625058 624868805 936914377 944798854 761408900 672766407 450669872 867027194 463329573 700483008 751220851 622932928 365483214 739662266 733635014 158605275 268387130 515061074 816177934 954742051 534285851 909097530 471605863 174223042 584160405 927388855 627717791 409559481 936526273 962263587 923675576 252636508 153112876 322120556 245948265 553570770 593684309 582313876 755188638 102619286 837956146 510073903 76246260 885126393 838327724 338364904 612453694 784815773 979030558 432780540 100155395 90117115 158903002 872671677 496292605 852590814 350769828 226950416 739062939 423768294 261122613 744610031 700907648 636227591 732070585 740484840 243801602 864069895 416286289 363473565 109805227 535745027 114962066 261792322 937488060 463025898 449873157 455567138 730624421 676968960 476905893 325970971 716618894 405909085 218077540 839886365 645066962 278228076 875392678 985697454 801211006 244219500 626139075 58787433 149716695 685181170 105601929 865640826 236916945 176789861 706527673 243553316 703249304 115635329 925670278 9808187 307720971 808853205 373036057 175845034 968314428 368335173 811317519 547798511 623087601 591972744 97086713 314189466 70059814 922660011 682173403 204434642 631383945 849753996 524839853 807095247 774782973 102580575 972507357 207194209 694080791 7442477 845117643 88372584 663365540 476627792 169635916 757852761 800040737 414820345 489552424 283850176 700476994 27138986 612432284 728201144 951350636 671221948 865632985 435130484 469135162 952278235 989536643 646215354 82479867 670982020 956496690 38317667 464697650 430745230 278209012 688893149 627687445 96141982 44669129 252285353 408728591 115646897 122612774 563128541 514993727 59489686 16672371 234635682 158190327 23083633 510849677 36646583 719096381 284333370 651814980 410033388 928776781 397536316 936398558 561065384 410094100 887723414 588925331 286072676 978190775 267807677 249728527 651817006 336247562 412338680 158589170 647855143 107824666 357563619 804223059 851720709 691268004 871252205 952747577 710285202 980409755 888877786 253785889 215312939 278206886 437236289 993503867 310545729 405111199 772880910 187430189 197698779 377711637 698715394 471792654 574536211 923271371 977202734 794922092 823539093 289108279 209192316 774392455 272290851 980958468 496524326 284487699 995837203 159945872 585231677 265240762 425432783 163734894 602336803 515127448 365503828 575651558 335080721 741377725 873706676 326054000 436360594 840200623 723173780 527324733 130040582 394085349 917078446 451944366 368536864 381689933 195673168 819253722 833573480 721599175 57469660 104110093 557340346 168100519 971501894 49421891 441956806 560484151 163866265 800056241 122781070 262280754 141116274 214310717 469883626 44534347 394899587 976816641 920614919 105755556 749671698 385547724 669711076 146681431 187307895 950408608 853294035 62409969 874925473 398508597 949762046 385587953 514483602 520428661 226202592 439059790 404605918 268275198 49263048 522354414 613554224 840427939 68139610 499948336 610371014 831980011 404789005 784714339 727483888 448853393 226205869 755987020 913996437 163881986 210776538 851199141 722261677 863934946 969936776 638457752 479779528 559915911 770058110 541206088 730392965 405333884 922101463 971168584 723019292 257501952 270420611 326846753 703354581 834220677 732210119 767139537 924735887 852163633 441104569 90977351 737062458 53987936 227922117 477612264 454061405 260417056 576835371 546155533 498961041 910721459 49712510 433974659 455840515 828265233 883478054 840466441 267069942 931863139 938155743 703784917 933901119 887352969 886585144 139495696 444066759 721614229 25097493 622130773 179149837 48973134 857816366 159889718 420111521 878357934 533944206 496400055 324096682 434313060 23445012 676102609 167248993 118273107 432611573 641763312 632807316 362566161 966339896 691346806 352884260 66377833 361783096 194498614 125005447 108643801 889853222 852029945 648979526 377818133 501017989 133451004 762765440 697441922 229431212 204366960 483002982 407155900 240455752 920605433 111292349 902574352 359592919 918526256 651474271 911614723 301611309 690002977 515716026 940803529 20405747 391773646 462478671 479099598 752623907 436649386 137437492 295809073 625687437 38679326 925285267 586939716 829926486 379905031 647932969 303230222 164428660 814087990 852005064 312669897 327403571 684264175 199826389 50239588 830552499 512695146 318009034 334677761 674463079 119333718 681624757 928123256 704146839 362134609 357205175 768576723 371854815 47127409 876546183 533336272 775941550 512341438 214139629 174633058 443875016 891850933 115744327 883100720 52750789 769657543 456274695 870535445 777985167 306718167 762823218 791377566 841339112 730721216 177411554 218347407 393704674 285209293 689411526 896711262 735692132 498914367 5056925 973586359 209306796 743734987 555033023 298089206 320797384 252268825 313264532 367931568 578992667 641122886 482195994 375555370 591246303 606990435 827968099 71363296 827678365 615370483 77630996 669760768 276744886 887340401 891656680 382267372 347137246 553162184 263451179 353238972 974315163 328260313 417134400 837383866 654476490 112377593 138524700 825575908 587180059 514018927 816529096 101740909 453032848 27054074 40372450 869477692 859266306 222985034 580609052 722442091 136449436 345810819 596726972 144545993 29862494 911008189 956716571 202408281 238185627 563358598 142542118 274389201 492264059 19461982 121360608 159317788 307623802 869292345 223805662 2886360 71495911 917428481 135489993 645019097 605333094 137265938 134297056 220864932 4395631 869554876 473491827 984494581 835318988 503325893 462445929 31104313 530608927 143066084 614275003 328379156 457181018 99263815 77688823 554397405 102465092 408355598 954645438 408273437 320551931 385105101 434682694 784668436 217181293 506855438 380226520 742463284 255737821 757791949 359931475 556855716 439171940 787921914 100663719 373345214 999562606 524339707 839714139 387180433 840083001 709386023 223834120 436002911 320532569 601975372 92600284 484225312 445415735 355478825 781860120 340635390 823865741 869618421 109804178 651899351 846957035 64211670 400462900 748665023 339046710 768546923 474220411 126558331 970021156 499121731 555806713 246968326 586203841 947954276 138823123 507505935 129381100 343637701 300958275 118471802 63133402 480586195 236213271 541383899 96278675 809258224 187079216 628794110 181273456 457183471 218550276 616289890 150991523 128534682 386499101 411564984 254420911 270055212 521663128 395631977 815613676 692593880 974489511 720677390 435390981 490911552 358707727 46180086 199083129 170504702 853229483 555457187 691567645 210427166 71880679 607278413 836781976 375665570 768313925 562574173 602739429 491523069 879527132 770053107 159825365 20078233 40494292 871928161 654572170 896960593 826823915 302042542 490540541 937296631 50812403 936646421 94298234 745360335 456450385 740416643 602229791 262604306 748722560 298823708 72032608 632886125 821265548 182159798 167240582 674866303 313247384 564149084 844115243 105522014 945338456 570212812 461668031 263924243 906531223 484456186 479592199 475943193 707825587 600422027 932742552 34589666 864082460 602172507 102925664 743717714 552866521 488622839 699516190 998575170 161920770 876348964 948351973 354642942 598345031 339134806 883967901 451102407 549222503 234144825 909164418 186981970 151684538 498332460 779876515 544164424 252957608 219796417 47134308 169904324 317610544 452574527 577599740 414799576 859750754 564708640 922554360 560919816 128164837 523994515 331533494 881825741 482417522 447276539 715348715 62551571 286956887 651681646 891402526 54983099 179778292 205823798 494896426 72003610 92617281 349961556 871627456 333607544 361780295 180142840 425511907 609213586 927786914 167725322 730619754 95100185 57533190 710483621 433047937 910028337 528525239 106630550 734763560 641312243 340222479 26715361 46374834 711373547 836561916 379362620 688522568 308108442 47715711 377082771 758981476 577018869 98772782 418909058 774277206 731356644 631546034 594192350 219256003 606246340 994947914 72931117 62136864 180632038 325808711 298794537 619680059 4184589 630570382 843858496 673594035 581475828 190876185 810961431 391298939 195385798 684535926 325430787 256287579 4941988 173140294 70148238 344474991 501759779 488011711 621883640 39671462 278410699 971289643 530690483 717155396 557497241 864240231 776986342 718171744 542478461 480667237 571684588 765811815 376387037 302754474 380842706 46282647 728209681 224151760 771292380 245803909 195957733 310748165 431101696 300918936 842824474 76815243 646526313 491907723 945713892 903425334 43124469 674993903 185725293 563258353 766858168 842620326 997830481 646157369 337306999 846762857 649903649 515118752 112336430 901104195 127409888 45733963 171645579 6428180 578317449 404424053 750599280 311611664 616937606 785495530 429190004 923195965 114259770 966440845 848073571 155007480 287435897 364524754 874034362 212269681 703597579 357782340 321449260 906720298 607590956 939689984 398194719 223445628 477018639 303138873 520140080 587142673 560573526 648688562 269870763 904572267 670608796 465849671 285871123 697997148 733222123 429522276 808663712 973821836 665548358 851518604 92878780 401731319 994534177 919796179 626691973 839627372 360271075 914945893 889011023 623937807 760829291 69476605 77816351 882137815 469699464 989165166 703696176 846511377 89506688 148760094 123825266 919770843 235322762 131099014 245053190 951851946 375477332 516835251 312512451 117722052 380584317 99913160 969089461 156073159 788876828 38046586 485056664 250263072 517215031 320067474 998140257 504848789 649017421 8405103 501470390 876186044 544137677 890706561 826750321 829419649 857853852 637735631 778734368 311226276 720034196 266823538 220771464 27495737 884663295 839207448 787822622 987833894 603781152 670827138 152360588 493654696 801253546 886157574 542581554 853536462 135905351 79597837 560222883 2037500 823248402 710279574 818727716 248520298 666906653 385270706 530400048 605970851 111329772 767119110 995490806 928735495 709943544 52679756 895437273 659021641 21369646 929018834 888503023 626331633 933899117 638224377 674622851 62339546 336173068 338985399 18738324 629960117 774801745 418045718 362440275 443003525 983201786 372578226 851177129 913823777 334373816 581270847 138732463 448949686 233517488 420134401 313670707 440221250 392912121 587532115 295772730 688339738 439478560 624378913 904890744 747488869 742487206 588610925 600791002 635133854 383250816 364681421 336343036 801181718 465201559 197976811 127496628 644887919 554607430 848067076 550376581 832657442 287447007 509577322 377574956 346186746 957635622 419879682 915098392 702981271 549660884 236839879 233230569 417940460 896492821 346194501 622245112 698929346 111428362 882629662 867884751 319298867 239794760 97856905 292891820 790414639 493083736 176269262 85572099 523793146 57601333 88933323 814923769 728823724 381470161 415991410 288178154 782283184 827464848 937995593 391276003 989713221 999223754 735403752 923395880 734968064 451813454 584345470 115089584 794398280 977467354 720216397 382346660 748894169 967966116 914873130 533776356 317548610 216216788 845165822 749627009 459731047 900209927 727724103 733274180 363526143 380803790 7023767 717276710 277201430 168374829 137429524 732590550 75340685 668980508 883946999 775600182 702599061 392644617 338671373 60072926 409693240 759725653 691136569 327974296 740106960 673577170 717620464 652823266 314391182 729398347 788564411 567189103 759212276 684947453 300940473 162196646 733594715 202634774 962020378 886096930 987501678 678411837 65597093 866166320 593199277 605943817 380995635 73194324 219823340 575989128 420140081 156396996 676680145 424395194 219461666 588950507 2933593 166334740 413735963 496184552 475032915 542364158 102460741 290730252 111191523 589222229 195739743 622790752 809937921 533193962 44260922 883430172 84645368 930514432 858461243 24392241 197177831 360454098 152189660 513384384 417890371 590774795 448630314 13549473 213460563 86027084 840845897 17992670 661828787 14466985 860226028 761814324 835451346 340543788 916045021 704768921 975229043 691515985 264012923 564393136 49430064 446367368 363306551 441623126 836206066 102800055 171794966 211978010 231566458 987809717 369563954 211091644 549667548 914842832 806412345 275258037 872614655 783283272 120332780 109161135 832707102 31122898 153270689 808940809 834863945 166425877 48366018 729899348 851541477 170414640 322870348 86750936 220728872 548089906 150460753 944270608 969997214 569652641 556710774 486496809 70054311 937543412 941146742 470491016 336378358 861053721 287623581 773570625 147781395 525554672 150171213 110240160 727501530 37044429 787866748 738404772 449115386 416535290 703271732 936886143 119899000 371971635 258618643 787837463 610651433 147233576 501978825 341404808 534743611 243651070 380822940 569159328 284514988 749541070 676970982 812971874 401706193 124759077 266882454 693479812 240969681 602295171 177792683 876921840 822605864 652477404 206448061 200625223 163158565 3216410 290879604 264728921 153907820 19282840 579079694 91023278 113326708 278877864 849017309 52634112 578758409 656556303 312849863 199784383 648366795 488950916 157105861 468772236 839071918 15217972 962799460 699889598 304332409 926113345 538680903 59614944 892636999 475934270 669586594 421710897 364145160 735449525 93897409 968923170 884521985 538665889 170766975 658725596 648073032 979751924 950621647 123072695 696065353 855023122 399544631 369139908 541579588 311253844 502665808 834586949 15132876 123304839 322167880 513811503 932606025 266791274 759804511 456566191 497945463 340397363 678970477 876745890 828526053 960608523 933325147 165680923 761570167 993849741 126589861 833171169 583300837 553132619 699313119 155099118 720138809 747934793 155295021 552790257 769027925 463006336 134769097 915493837 147604587 787021916 123187584 234263576 860139139 948089407 935690805 312754589 630906872 681607676 358205533 990188762 655368443 886531420 153844098 239965059 29831695 964431005 563901121 791229693 614163595 602659053 73406283 504956131 15728923 616150259 153673447 628887941 44444736 516679495 179783278 583998052 948472523 244587765 135041102 728572088 117694566 758178303 893616904 86090730 736127499 780092376 130977715 254487578 278000778 552271337 701090422 960062618 991555848 402622991 425975057 200309872 522098043 747966235 133009237 100030168 555553583 264906577 162226087 656766400 784673603 241240810 828762498 84335691 401264941 70442642 121082354 550230351 214858546 806730730 459723289 637238230 777345263 763689991 996413357 535476641 718523347 40206833 686434680 853986720 262955938 307741989 950860759 342447739 20842739 122791956 957278012 724323084 94012851 159652002 684314796 429855459 968423841 837612199 527559746 182445249 820355279 472942193 248190890 433754397 576747047 433847104 8044199 980749986 563146724 975220169 363009933 121082543 508455957 807150260 893902791 205939157 65348381 263888158 462316114 15461981 482839606 472056088 445484608 427172544 638883305 397072933 443100471 914117677 534633111 898123712 410692079 992352006 262471412 984659924 74897592 967282531 826450054 12920642 852263409 160340365 658099754 54842975 848540818 361471108 697989264 891320179 709831843 127200890 713349306 657051963 879331267 26437462 539993217 823811431 889395106 7287602 692816144 261536541 159606407 811507934 658200423 532898676 612576202 342778970 366345945 436493818 895348827 247718239 87057806 405195567 719429434 793926103 564752642 527380743 153768956 728297569 978208900 48517484 611096397 606821582 550175160 850044090 607097704 454125223 928183062 896353346 178377889 492265380 238144616 386531015 770354140 462702134 26338128 284118275 905363730 925612030 223998911 702195747 193849811 618719828 318332031 256163399 657217983 869064385 398545323 40445700 582447372 99015045 313420082 623460321 178230019 528283154 950458711 363450589 75151491 362078094 110617395 980784871 228063869 167372117 951268658 274956901 801386614 506072949 855488914 237343662 960468744 232863537 875712743 187097488 342541921 405677439 119794842 976790986 372967106 294018954 289460581 540190099 255189249 61383984 599079384 862816786 909363975 149836676 706285272 596195555 924815955 145403725 420325402 547577496 324653686 39996806 32581292 906784054 215621525 684902364 957063533 245810868 27073258 562925875 910448528 763053439 335850307 27616801 241243933 599106297 604344706 157490546 468506992 211453941 195302171 258651810 510139832 678973245 288463001 281453158 49590649 311120397 356931609 164066083 475022091 819105941 859089357 759359349 2369048 804088442 311419002 306906282 524780578 61334869 332853754 390195013 552261883 938098482 194700219 733682555 281287498 36443411 554787135 555068345 48690445 232905579 925610138 138153756 387672594 494255780 18986231 895321591 257849468 144932249 514231059 694636113 523570500 121911836 96489920 374425188 119166646 367842673 101123684 506701599 835527920 389279441 572073335 899500197 779857510 84851689 673851145 949138124 848665185 206263128 544070969 317771679 750252411 980524340 145728703 776466909 482214436 155947910 141831011 916835191 742750496 535481033 224071299 419875350 580942343 448694383 848564625 759195026 105748420 953496924 498574483 733950588 820682007 124015209 932394146 431042709 647101203 364914914 137937003 307435349 139659680 378382601 693529777 714984549 3722234 514887313 634398409 168237605 761442608 78491939 14696732 780862503 649859750 549888732 545614760 233756082 425485971 474936525 770605696 261546560 68545668 628379002 272518215 286694400 393055191 184237404 973452985 546014292 744856129 884973919 267293987 490632788 259704905 128470884 715824870 147733322 83714506 838878912 335319032 951300404 142978165 839438523 910003042 677988166 902106701 237842195 52788163 190818405 87600169 742462582 702782923 482237356 572832309 826665739 624602817 745270507 738310769 208197354 686812414 29838115 969217840 663373471 730030704 451878667 341024155 52042155 371472152 585273742 782333996 249410307 825316748 851273803 706101043 221612943 523317110 100239892 840117588 234664108 281428498 388630895 933480455 259973803 76209332 544426264 482308119 356561232 68363072 705097341 486141988 548420179 205211312 83429441 459693345 531921378 668203922 560453305 909427414 326580509 38073479 605169266 993708639 986499737 710208710 550397097 246634155 794001630 397427862 367233489 699867902 283930857 552468439 954805265 507506031 676061867 875802746 182706627 669408107 275807623 821319428 944244215 251465264 178437848 873060112 397232877 732312403 458302057 813092810 224660639 106503482 226969339 216551540 524366645 60794787 733228738 82426084 967319950 721867292 199177704 99654660 917602750 194269832 547082505 703505489 794776970 711502240 666736566 745358941 181952750 404150127 643678962 668900686 682885783 136717781 891476920 115978588 46009450 231842054 57397107 433273430 991681531 481545736 946432131 700859934 853239575 981477176 941235391 337488168 392286778 965728454 668797422 682072832 944217369 370145076 98927181 952657601 610452250 742643675 201830156 76055454 557350359 770983269 630588112 136890716 590584735 147408468 691684915 180172502 174515701 466404218 223729216 124180600 450369551 963966079 981800695 393361093 372437336 599605855 730191823 766305490 210130414 909536745 970869295 323114696 991124260 819529793 8561139 409592933 380753922 536938846 37079021 285368700 517787584 671670925 267068002 860932720 240678479 879422700 703875977 452707005 716321488 673282032 456888336 510923120 486872602 469326303 450999702 186481578 472449336 470939735 677589810 681684256 811285481 666568901 345860075 297895582 154599199 701453551 375099709 724252287 506797952 451948907 422225818 22182199 685668328 141216805 487101159 902693834 107017701 484724957 349624059 541039698 923720762 519371174 85416483 277698684 160315228 638543209 712411041 870593547 674545144 5362784 369911336 580982100 670620523 852847259 208704610 784620993 242909256 254236798 547796330 603904078 281895126 486101313 292108626 584902671 964787088 182310255 376038303 455006888 413355427 18507111 71114184 351666387 728317299 812175327 577170874 331269854 896042774 822352988 966781527 807181098 770887895 386167226 445823986 971620013 107201973 751540394 364816084 700232561 854734817 982075951 586901947 946360083 956893507 566406176 369765462 885827909 201840118 621478826 291368394 428901452 756171464 539571147 773583152 367598978 505031611 18882008 351637012 515829717 410124423 395387896 87201527 356747334 885700885 752939942 282918863 800085612 2768901 644295218 961874050 337490158 917365033 426156865 639552366 740869645 995046920 927169865 22773220 105484311 868405852 591326742 759317672 387435509 438554772 728343880 312949363 324477342 797562963 714023122 416891505 979560609 332244719 212464509 415944900 956020896 498776563 601707363 25842943 331672015 647975325 755098228 276187307 263882617 725336928 732685556 685050821 877748347 797200996 627288571 735747390 941417927 896300033 593670132 375080314 622626019 626610248 626902302 918671570 843885672 247202426 528198158 80992786 981384323 355264910 775929899 899959035 782084470 499111599 546325041 748492482 684035096 480446908 622277807 885021327 604996689 650081223 72682121 639888895 149307296 472168343 255561590 57678243 303202197 916352038 556647042 740087679 680721494 615557410 331416206 481927563 35036446 914254704 709326539 514516022 71626426 244079013 876956995 671684318 593359882 651619979 704446800 66942041 708438662 365189539 186083363 946492271 373075126 921251741 916550462 774923101 148353721 460992225 501324538 893942355 559722687 737921545 126542594 257684983 633177487 125336165 627619542 357793249 532126978 285798005 248227402 182039581 33446534 94248051 188906500 374957484 399761820 960798407 434813441 585173762 406707289 868353680 752128528 377919625 530733545 137807394 827786325 408824093 180248328 779145602 926040008 823033999 585504391 152621292 231367860 114702370 536539085 920418638 813414200 198166801 76441427 932743370 548944841 928337159 800167719 240821048 688082862 111594661 288619882 44048545 221271939 855694335 762763474 472252869 33781175 441231647 274329385 529315990 637511949 925731969 920665547 233742011 168167199 390082966 117956652 228826638 742080214 861998401 829058640 597439774 289152243 255010397 863737681 532657582 689007754 321879604 104752093 787835700 262159234 430769929 208424118 3317595 36150038 448337552 785666352 324583553 853778006 99680881 356494774 161524794 919115943 884796104 663288389 795895755 384521279 161757352 442455790 10844336 730650794 406575251 65963609 83885846 930391368 147884291 106767421 486152289 630868940 704875749 112707049 246272936 851029182 996581401 821860543 799926836 124240378 651177971 300478643 823726085 474050351 954569149 131777744 858395213 781342305 715749683 842001331 960144370 836588648 405745925 451610126 853205008 971884911 546933080 605016358 35241589 243123573 310906437 261539670 954769956 791307983 116164697 492170378 753527250 454752932 733198100 172952261 940317804 286340976 200064362 455597723 306206095 586280834 206960709 877668791 931330575 643922813 864600832 683512663 764601969 454515931 481298413 748826827 464507248 612173925 390313681 882008569 710605435 996233916 692502883 36057564 743720501 793096916 932697552 476463872 837003509 315079283 365896506 935097352 750845764 387854007 383573556 79456297 69174369 656792205 358185800 645309868 217815232 770962747 499751281 560222319 965374598 40473303 332813473 951948901 666838543 734580429 377954364 342467602 702461545 626507356 560599451 541266703 513611222 183527194 751759499 214082700 268710990 27945836 261583307 335519689 449490426 427193103 488120721 813052060 407062458 576947602 368611334 480485870 454803872 130926297 326568901 602174014 763252595 932678556 784862816 179154972 715004717 833545189 956628699 620747439 223866750 107308950 887822895 948472368 687284294 617848033 197257673 996055149 232900382 245026510 35222024 924838727 589974480 840412088 297915586 55963956 713009371 587429840 425928127 460228029 242045424 569664921 599017789 825752065 642488439 946931818 566967915 646057265 925789707 671039727 250187246 157185810 57874682 407817640 277815902 752373374 563636934 662146409 552165066 761700323 130949798 611500505 730512176 258386370 858088966 832947187 765131014 984402737 927088898 170269319 374788020 513396826 306399471 401661626 979419927 534131962 766370515 747178626 38271488 401379554 841416680 344220459 555129011 892701818 284295197 646129620 943385449 387809081 758041237 385344499 489493198 255191598 524830757 637812173 235902595 996895354 491710938 340457727 998871453 76617684 542220145 17425144 866536740 400933123 899326430 461935996 504896149 97670248 797306310 366435106 86671969 994851441 715089924 97279447 402625644 730184743 199611431 409293146 809674382 176118689 116713202 124422077 185597717 170956942 346034396 861610986 775300929 40058032 776136334 425958428 936847815 316841563 221719911 767044706 301345103 418330362 631556603 627379487 547162870 248913803 97463952 147703692 855001293 816996638 368944543 150483509 8903768 354733913 123573337 126063992 866223887 134426871 877228320 699487241 340093152 721814084 554614281 84387697 924565675 854398371 534893921 683864202 713666245 829770248 566598181 457425413 214163318 945351039 850998408 519466212 448741755 661413283 187610737 249835264 348204676 538337319 28782586 250196356 237234103 829727569 689397234 342638448 695273515 185337978 51701852 979547671 119833454 748219535 337568494 950392225 856069120 511314579 135178643 549137802 222542806 834729499 91342569 423561505 17401048 327749072 621125316 75296266 552665442 417070065 108929193 462802620 720833223 473283278 448370260 538587908 323699145 666840910 634409011 764290177 599652643 67144042 229072360 753793317 903441407 776303279 218618058 800936890 926429312 564215488 87738469 635057243 832786490 106310610 997239029 991846134 386262709 633081647 430002671 34286033 729614317 338803124 156353657 424620546 903805653 273633362 528153581 754462198 158250447 642654352 601231450 331652075 64803125 327498503 12508931 500450421 90609108 517601253 100820702 229213437 255823212 127233387 888388885 57426493 217861425 751680623 239153545 755051205 596500045 611378395 264190794 695105914 841788507 622702124 400673568 836140561 436646382 29129715 660094981 136105368 96954632 268192856 178205609 337668334 512756643 94425234 665926381 443958598 421498924 647185776 91926120 890294440 895109122 232334803 666720485 663270000 767358460 622397233 896318947 517694925 79072480 706137620 466008596 998330435 224855533 540976793 681573342 317613610 275622738 70032114 596167133 623619884 391287476 145760740 220603743 822944459 133552556 820214090 817740006 859532505 445887559 852662416 826893994 609733629 300585860 573283128 413578005 23924789 24573913 306852185 415973189 816280911 678952879 656763419 813461901 286388590 192492513 879177788 609710068 133585291 893836865 232478350 398187188 477349362 476722708 633413238 965478588 13892801 834147473 311245935 46509615 453925996 63106405 832839813 167607011 79088188 455926065 672336091 359788771 999372491 104506378 950645285 639470829 559154313 69701625 701481518 828242677 596828218 947981177 4022356 835138720 765035382 325584380 346509319 701312970 602842408 946771558 442531661 708714753 327599120 780891024 738235713 179766791 411177793 540449990 822182032 86703699 219703459 242381386 648309242 478139793 681623410 69677007 781103831 219765278 108055741 41779454 851670415 824024973 13707240 188785140 970383905 248840996 389013802 781952962 21455005 824164447 51166736 536060140 745499050 919258988 9419256 316803051 15251713 39946158 372967063 593342891 468355055 190434875 743555188 955718157 499877847 941940318 247990634 110398566 976477358 782200341 545569578 366969855 660610942 780297875 353735094 653268627 150432483 346666687 705077224 364062419 443102609 461967284 328809961 694847717 184847052 541370175 233361850 69883105 760250606 733555812 488258990 859002707 282251236 984829402 155789550 559818172 888703409 902384266 535078900 803991313 919590634 228400660 424053008 242460218 710825273 726298953 804212454 534860436 248739803 565542578 566174446 808824432 780649505 751485192 481903091 561559954 616055283 859071418 279911573 765833650 364066376 530901354 146007495 371609342 726150063 131315824 56749393 786017430 570972361 602437461 512738383 775026447 799184588 706649946 172283312 89874161 3506178 869144303 693525688 39316793 887117896 722729020 388992382 943366616 42617231 475151259 112660335 398108209 499650143 638112795 280573385 770535839 35298383 785861119 732846113 410769389 423002254 74132797 194222301 320429532 737318493 529001472 272018875 166043553 862062995 644914983 167973960 338621796 221685016 232059075 703958122 254139841 450399082 276713629 615516375 984575563 493461275 209466029 436489115 102649348 306860368 415551908 926884502 848545767 810554436 526668131 321488892 276790623 644111811 311013762 839894739 983118541 472981423 930841034 534387576 476156933 879753343 612150971 841923098 851017937 113635771 668915719 703055678 229497709 75314817 371465493 553023545 308070153 76206083 415537023 355669433 857912907 5106695 806522772 913966141 614573002 853635942 814370519 788778648 218980500 229478029 539735678 732527218 451130024 308343295 471810547 179909831 947420029 235847376 11169111 718897254 100634746 296269611 817013754 344796275 443602811 506819790 642074340 735608037 419638611 762777481 692030800 775279881 725920324 12921795 893851435 254533117 853291656 250647797 53709209 617679670 110885580 680475180 939347825 33798906 286414512 925233803 559255484 161394407 568237896 681604039 994168890 831810154 766744990 969657513 370434012 397499209 43919149 392482192 590123339 304400922 457864295 521383148 180261728 221622473 871183665 592049092 610140074 548601622 759317346 879536177 451613419 222308628 674176327 894300129 477007771 221774764 96037410 945194645 670639204 432095512 60210342 595627683 981761700 948500840 897611645 248600948 439871214 949992192 122127298 692591111 763242377 909322008 740434311 997963628 977431279 754108475 479011921 946967882 487739984 501468872 798132119 984659035 69262348 598677876 272884550 301841130 794207805 280846278 563115072 607164764 67908907 801112218 311191768 712357540 717702101 210083487 895414615 327890124 854607983 63107801 475357307 544899443 585735390 878685471 422533619 62963274 81943358 317335710 505379556 546195862 594618973 823138388 751129191 971895985 424298557 309569942 818220040 22734985 2623125 946518154 66798153 600933920 379306833 4808366 52103965 776748298 653231374 223045455 934724717 674675698 387667359 151819795 630488214 535532309 878290059 600926064 447193833 747078341 646356364 910284082 619333674 462554599 94808337 641745657 540386578 558090358 447373501 616142520 632717005 103270910 611008486 730542904 50970493 738802721 883201558 77718675 274932917 774709526 871647630 717179065 286699518 187701797 427182014 742180846 342046037 848153132 138453454 940351306 914745259 499085853 848270617 65541432 557860196 624563069 279786412 144167415 190246105 636068071 691483852 302515740 914240214 695548551 921525101 703808782 16021276 730290336 640050875 198910345 804987616 295831558 568165525 643704860 158166858 220352677 443174413 667564458 709894135 409229816 20558825 257623021 903004536 576846226 812161829 80257518 838713809 710486425 348577647 522142351 765678843 944105286 497005994 241543425 396161378 891341670 210934379 22537038 889050215 352731868 132071551 787503824 293768415 119663388 63358307 382467768 620818322 204178098 712265674 806020744 857619389 418646457 15722523 810446489 450762128 8658533 721008881 860246166 314735281 961044345 219484057 614386687 194665144 885758161 665324695 340523687 450120625 600263642 402310177 361975607 81029789 531497493 838406306 825377193 609850352 42730904 638855993 124483533 294524437 567385996 530158648 356352455 795925477 139131056 762445733 725231247 733808436 545577940 283760060 470007408 372062021 463943263 629252458 307969417 191497040 34524362 115892436 156678223 167699715 769595683 560781774 31911945 915756286 135788427 531005541 886409555 858864982 795933368 676429654 965543067 757389842 393631860 96634004 315767463 654802353 206327836 306001862 27497742 473549731 642352930 455590086 828592826 194616011 914751371 445868579 178921580 833899012 734020721 473379744 507225400 362261144 77445250 250696883 424542468 573420234 822634623 700670215 248571150 204031054 826372542 292113146 838023267 123627212 834929833 837106207 545340521 57907296 339278141 184867262 911518038 52163101 809264012 65653583 232514230 521503877 817077819 82273539 570024425 876813843 236881156 264961083 941141666 550586289 615979318 631843342 986267497 718121282 239743536 625749960 855383066 409793561 768532457 271317349 593947236 524408704 75953515 208672794 433560139 839227699 904789843 623831245 528475815 16728546 334244947 898586776 822919075 587917746 574566321 683515722 840935230 58656957 645090757 513490405 972307917 670291341 51887743 819624737 40362103 768038309 223210974 189556712 16435640 327604216 997418618 277823448 832241119 714359664 556533755 771004868 116671375 872716648 163625887 451101747 655628354 730091571 73406648 516305888 798468801 850902931 390081836 481721400 281169325 980936002 759941619 408117215 488006138 610729837 73395101 208465707 542750574 881176371 929573578 219041959 978364711 495912746 469132975 218544530 72791570 912767451 245989783 392804958 235613557 773892673 363937120 802403121 427226981 489030734 973707258 654058087 987068241 645835623 342641132 477665038 529550965 844152547 16341711 518141800 617189480 530887311 180441552 211307885 645861263 251762988 445091378 382044486 2296743 680174320 614169546 52997587 907289663 411581441 435979649 102158118 593541947 159122685 608130518 156192518 6072659 780117877 938791257 377857389 928582801 388533358 481531697 930419978 317870295 637451998 292100503 709777856 81739351 345094709 57266777 327830821 443856921 406025425 732793176 246063364 262931064 282427528 427767562 702810587 43127205 69821219 884670201 13085534 987193379 302919901 111108161 863913714 619060553 318051560 276344342 665542707 662588355 969904104 259080764 284188014 140112401 974560374 198963597 153025064 237073159 821270942 317401719 113525141 701295692 287972705 290579835 694644001 461692635 921972020 373751215 26000619 241232772 952321663 829239613 981850693 72896876 671724831 262067682 315374646 932262024 602509797 463897456 379206648 859909158 698353429 999575628 673013114 691490149 298497256 970845168 650003422 412857273 286288394 186282858 258457596 134069096 655207964 113332700 527264990 616741391 838921267 759305978 262188610 607620893 53718359 966128527 547688731 604992086 186200837 807426040 262905872 768288337 605163950 81562279 801064444 95748347 325038390 205503137 448089708 876942354 472253301 945275905 21146148 827972523 34245818 966339699 766958490 307388077 555193923 92200889 585894777 499268436 856325829 59427882 150595360 292613038 208059114 76690734 613213473 855623201 895101390 653803971 483281858 675417571 546183554 6595323 586300799 516933505 471655306 443447932 941292422 465299801 348379486 736058622 768284217 766421023 226766060 409578705 919782320 636816732 31095572 851067476 853815860 574754794 312789547 871090303 291790533 947192954 622376057 419016026 622255510 458155022 212577467 519761027 685788811 399699071 138046113 587761069 62717378 993923832 144705873 754885915 297995783 669023353 951105506 929849385 761831774 767677013 366659042 57028548 930137981 381774516 507048401 215745772 482146383 74391314 619665316 402499385 784826994 66389182 840524099 613284180 913669562 618477916 667360011 543847801 369078188 575203683 390661708 564510716 270057988 238791328 63249867 445679040 331601199 36097713 788619330 650183873 962616529 442236299 627866844 612830348 860660289 995764213 259904953 395120834 680175368 685671947 563953776 668001177 18637158 497463739 517493384 518081114 224884941 911109451 394364413 532300772 939848804 630294481 895852994 760483624 454588293 732169657 179196473 798748587 564845631 406696260 36691900 576758279 610127828 287165699 938643224 547017833 683480380 685707872 734594061 50824469 330312609 523778581 410244559 437110494 50351329 231017650 868628360 831329710 190318096 141305115 69767380 420364036 328959987 912043272 116973123 457940593 226531717 805971332 114129882 172712986 60227701 854782831 950991762 900826425 553863591 871934972 933065688 920343196 703666095 96924979 560612875 808608036 34192217 157811824 628743426 999770696 805253156 235779298 958559619 105804944 64575169 402988557 276969165 72261146 526204313 469871689 868317967 392257815 342084933 789988672 544920558 324077647 6061843 638751348 44684547 850062233 726001544 258076598 202652763 292568676 698239193 846242224 442257653 967660082 742685552 242019421 277117768 523941655 430997101 649231243 24780730 416342078 747534370 43290976 746294570 625912420 805937302 562919634 170577767 675624539 705085444 805668909 390772662 511897993 182028121 149052818 11735376 907291750 888836793 435683186 323191265 775982337 239580666 468800278 719861259 142140284 585984295 561608987 858684897 852491916 128168702 187270126 922348396 899009018 605458291 751226452 411812137 602937124 601119275 603973605 314158729 310675324 592231170 522231692 743580784 954649352 469911173 373454345 89515447 701119201 387357305 433036911 672187307 975322036 780221010 21072550 595661451 699630660 305049532 58978794 74540045 115083749 208028438 755443018 727363545 659054851 287587314 733732906 930939405 904176537 804260247 997953729 130725303 531165627 382375295 204741276 449979742 403701260 774404569 924500249 66457466 725721672 70525448 408431597 974831863 920167868 850603298 531128223 679975351 523792841 626440305 510135306 435598093 245161060 283429366 447035615 641444930 799981721 721095905 777233952 696072979 204119300 497743898 429630118 15851569 219200598 890818748 476249245 121535424 801763798 284071572 220347907 599473112 110351837 310200998 408482604 346510087 104901209 69445544 287101761 146271437 467882315 217419910 535860924 610681375 196832073 542581468 561361389 220408805 936491004 18683263 544803192 638616957 611674275 487981301 187490517 575364917 525814927 597542391 235705551 636960468 46775205 941413878 231437318 752797202 363233503 881752468 251459949 934283035 316543179 275226407 583929548 818457872 781768202 127061817 62111039 523942021 271443922 344009482 771174837 63609348 408562285 408139532 862784369 246638217 549089208 106531174 756968077 978228741 183647653 417791091 268851826 47751132 952847033 794829632 271730786 429884262 552636046 212557329 485049327 239301233 809393747 798376156 155537280 990316989 795024711 431325644 842169555 751770495 195266369 765702591 259071349 207424479 549140267 509331657 357224780 273378682 568491906 659900591 368480014 383234016 138066136 339752301 607830215 394952215 570947667 437937073 661029463 106297622 881444907 498834781 79271922 897485387 348003375 61573640 466322078 352506390 434948161 663618942 786884792 426173003 790741717 805069884 492910703 875467444 973528950 560243189 626903624 4688781 130773826 883864591 45909912 452169222 114137961 350908455 951663373 834446021 160391601 251572361 44389158 712341601 170734837 212961976 865107126 482801640 77188001 602159084 34266981 377827162 744842296 30225807 406990895 881458219 863755215 297485247 445682659 960944581 442151055 577355728 617936805 772607492 351334966 205866183 900349292 120299960 647276183 508994527 934866052 349163302 33180181 148624648 731737102 632298119 765458988 555944291 161134971 93010056 938914793 332274631 121944341 597419209 315556972 125291840 202089591 957135966 710078829 742328714 830703887 137224273 644360629 553068954 627480227 178493981 824156576 766675990 697718217 445176373 896357794 259721176 258983021 594467963 10871486 195354222 920884303 919683785 249724688 94892701 803599746 736849260 193122885 131629786 79212271 51419555 480186398 477371343 920089808 839536164 748344561 770795740 71705397 495963032 516457000 794444948 829584002 565937435 703183551 569200444 47952879 687143101 273960394 108211023 805432327 740529155 809147629 976907260 941626153 862320230 774598370 619534246 712181258 481099730 640564215 237803107 630177841 870669097 619965581 343359102 859711098 746153150 345556378 136744694 638064532 421453019 786882344 27237372 422613635 493666875 266693844 480559481 226923294 288307856 758417999 285028742 447975058 161937662 214780385 323187953 31031773 438331550 245205217 930938815 105065556 147798780 821543486 73103780 290321437 816242842 48938233 705773197 674668726 205949803 515453608 425246486 875693420 439362392 246921205 439049492 849592805 394355391 356912925 939196941 991706775 758119150 226077810 273899451 629850958 585589420 784747738 964202638 29786538 605829297 193279565 166840870 75260318 759283754 509625434 990711772 993616371 421584182 655490723 676203322 172720835 938634091 819338076 212757118 601086974 426720337 686381520 592950044 567191528 451570149 240856796 279039033 476933529 702042904 22172018 117381424 956596091 385299534 678524184 431901201 128861648 658874848 949201510 826587677 564925226 282721434 361110412 791509068 494590193 782700605 425775305 857469895 983048161 790287870 703192821 931435630 592942217 344052997 866314232 381759314 375141836 559569136 885140304 695420732 174866276 726722125 612142736 634554149 752709210 769468707 252643291 564271804 751751055 66428778 8965741 240178915 917586487 664466830 432842514 75217458 284386393 984721136 856554157 792261491 526751568 447837285 460267699 23291428 675218509 351977653 487833005 744607480 289779922 79127837 520346554 998891606 462350648 529524686 119375114 681501912 649331498 31395435 771864676 217656270 124284456 359501967 976640929 809235385 876568069 293801029 307140654 900947664 130518378 226842254 908269966 155968894 148524113 775090143 592298966 930144482 800197770 332724384 529710128 238268749 529673785 597884846 472631128 181620936 475453526 328247513 850880034 264447883 257517355 435949927 539444210 626239623 102637274 24331919 852391746 220854237 202596309 73441279 424599584 490543973 265303908 974387287 262121645 814839080 221828643 545900972 636527519 82966502 415967872 145929222 318118591 58343825 168625985 286647265 231547756 822009296 15733756 345666736 444543767 375109245 989122974 270435157 298270661 699162152 23935205 254853803 97567888 182996113 636967142 236991997 198476838 882220849 256737671 208507275 249034056 392723378 581562374 230944012 538349901 271161459 308742512 971792935 378847388 404498693 470495531 978804473 77682485 560096432 511358829 749342354 349621545 533478639 775266242 665870711 586194205 565016047 142893450 796168738 444877004 798627605 610147960 590905213 412883842 585086837 1993492 538457451 271539873 950798427 768433466 541352256 416578080 102843334 326183065 740718147 427209479 772513512 218613557 172920371 695224820 816722087 88181734 771292095 210208665 898564639 448530135 563500813 912104763 893058334 783413767 545765428 492537141 101657255 869307339 976093121 997903731 132746096 477173578 880945462 752331256 99059811 856627968 964824966 462760280 107769121 384524603 871470491 659829566 744649850 454645409 30187729 324146407 620253430 824318633 962345336 319507878 915727183 195075101 761136469 690650974 999022325 499838366 753714209 24550155 895370377 720499232 234503177 686598457 641418850 18246505 757414956 391335563 670017803 914206871 914264352 85761078 853828547 532054167 746004846 809942147 976188155 887840430 343881746 997970768 495070940 797124852 821917436 803849360 942924734 331844820 518418833 249880774 476360882 393353102 997802794 880239502 598395386 853250229 646629779 445451285 130334091 223552178 519026574 944941980 866342290 619271487 573913422 5127160 499825388 620599276 573268732 979405845 325951404 280180893 231302966 556753006 188260761 788508169 613678475 617184663 818215597 909927997 964406016 759047860 35710359 954173208 253569166 3657215 584201274 922900173 852900257 206689093 188922924 69933667 598752410 392079978 598921016 730904632 579181390 307682784 406385628 785096826 413292934 748228404 88101836 854125485 636813181 118945666 773233773 171617576 622919781 39655931 689975130 335995799 102357730 242277478 197005027 111598970 465397133 58824605 945104521 198332837 815731058 433404939 902208900 116234686 880074898 138574389 944534845 446520003 190887522 984099630 554058708 288925569 915352650 136742177 77475483 863652637 591737384 724095946 311027864 200065935 88827082 537409789 525651207 175114786 872646775 201748766 59032022 377193974 285430631 698791336 798627880 595052158 515855430 652429223 853638867 608887299 625494197 539062333 374843105 285881374 100728777 901139232 254260755 543701570 189302410 985995546 416049497 286427184 494734966 366026376 489634651 610195584 181942779 430491612 556016883 867700511 241896704 5274652 531772337 379334091 650694493 661737824 925865046 153587865 955049822 958581079 769681753 255762032 330607684 40477123 857333093 189635980 256329412 144177912 762308057 315855355 141203334 204351585 208830278 930551331 447016871 399310587 359729653 326391610 340479287 813530585 914087007 393131469 656376764 420612254 865215411 556537402 426492589 773686790 806973011 827312437 17267704 903378013 337652311 646304839 800854141 419542022 300325896 473242698 371122321 962335733 528586854 799767022 611005564 872494133 110668707 526252600 409199867 288030820 524150694 211584254 693998014 833150514 55270025 545004908 441169899 972297702 246576412 907146369 528274074 105476825 790725471 655335315 955859286 18869240 826209035 125422279 207169698 701195846 44409354 714891162 379116146 787414360 96009979 539920219 983560878 650313687 265483183 792851886 740493747 556999170 674176943 73554698 573566673 534226985 339932339 366060860 323476686 580510515 189911852 547977698 955514977 465373465 700357819 940803313 770212024 311342952 517213368 113583408 131986931 454832579 531614892 980296378 335260070 664406623 36637399 459735424 654411099 302523014 874581163 45070789 220875534 815900436 37823310 951145120 475664815 741408509 479776284 788314237 497033123 34512837 913684771 78039964 108516676 400274438 216128422 473502865 207589724 329905134 387098779 781253826 284734382 299648958 526871341 815171821 950045037 229764172 69672250 537577375 162951619 34746754 150945237 505258941 549606476 879838429 102013893 303446271 518114200 685721582 584696837 651888240 964039084 540516572 104294466 202573552 952448641 424985825 977707360 428256178 215088260 525506761 972896245 448831678 903674133 190339958 638057677 664956272 184357128 16264798 816705892 21482743 912516903 688905739 731786351 839792343 882912941 919121050 191037523 292994919 633561548 46379069 398545324 257161812 711661608 714260921 873032136 547503901 627607898 106893032 122506026 862908820 711897455 410519865 458530823 895318115 175815015 886295083 6268108 672354693 610234806 257436117 600645782 975006408 712990405 640621409 322799544 541209682 777832818 629514637 592761401 199132441 754542476 792518441 842529875 146494313 403157592 750446491 807046389 77386082 721028367 75584862 725209666 250962296 219619677 570964094 122362896 473830129 448336868 93575965 636338794 556838506 764981943 827546610 246149647 156311635 301438943 778579653 891065072 244958574 779604442 302194932 468205238 631293268 768349206 954143730 650500409 907038448 928291195 374642626 369502986 380794626 170201310 788456320 673869802 115128989 811388303 396435416 191782225 850805673 739501004 573755277 647540456 982539106 761703243 14396916 983107343 489588439 783800244 186802038 259596120 400473964 770440485 154288658 496893194 777557336 606578348 684403160 886122911 154041384 390930128 732817263 790263110 552560442 994458121 923284624 74172769 779616835 76936515 858236552 715877640 780472778 4301408 805032634 799037317 448292266 743452339 691013403 856591574 189403028 427271045 514493108 695242287 204085130 91737235 787182628 976841333 492296293 514547854 681336859 339549379 486413393 974012314 67858912 317806313 819317068 204715983 851258316 42685416 389648810 344975803 19653581 391411319 919369876 775536351 677995492 414867329 64090756 919782957 172792487 931332261 41702858 360810641 382926272 472492213 234830090 382748005 59417196 339748407 345274812 236360954 663232508 324496359 660442283 886471958 769393751 442533683 747449975 498709361 163346039 415128765 727012371 815196215 817098983 674103517 671611207 999812233 389943884 504473629 6962478 334558972 523874265 476608955 82836665 472082968 496475097 616258090 641659691 33911002 399152169 846055825 574616732 449129266 967229626 278884938 76550774 969390214 180468756 80907109 777645563 441602093 377421774 427538210 936117948 10222069 281446167 340384635 752741667 223360670 100868400 988677272 867775723 438213213 739999216 489793368 911304610 849144154 842516543 416857551 759670062 284338738 205236379 975383490 660450885 963099765 163874198 537818413 117817075 111732521 897146965 673110205 478029592 651118405 721943314 828577367 478747367 982040119 880487324 208196495 974131049 917941855 324318674 134757938 571409656 880545681 904519724 982164156 536103364 491490199 723515442 717543650 153588817 250017453 262721282 165891594 467403255 555399171 820529102 773935054 900067169 297309759 325412444 575676541 994363151 637998584 965707140 112975258 224988628 368952892 153345974 483611227 743564120 916439819 996459377 216592939 554234519 912770009 35619277 221657896 878889568 2410000 373018354 953143973 681730518 257517964 502162591 650933162 119235315 351536413 151192740 635705711 197317376 15377672 555637096 210983909 207664927 160455047 118061155 812203053 944579265 907518276 63478949 212891422 198829104 684538850 527669582 250730435 263672582 960659572 858484756 319676379 277649588 194591748 665657280 533994072 695251197 71646222 44851377 372259808 15693944 302421250 65219927 207368527 326546705 971960517 613974201 954300979 909021832 361101616 628054768 178646863 195377392 174953616 643633065 197336344 517894450 575830564 347054247 286245947 730680712 785853603 566934591 887802901 307931138 357347507 478846427 99709753 333806340 548222323 32911992 741359086 132278214 781887218 481503015 486939311 371119315 27120309 522719631 378797737 488400010 820417077 834873449 255745088 786085280 544279391 663396355 916278666 883172252 58301202 713303230 780458194 259724634 824907172 570602896 770452758 822220681 527469406 113843843 461422730 207173421 777378043 129787700 384222483 312474653 753679917 472708949 967269581 53506438 713741848 916581675 726501510 723490918 943452629 711734288 897798720 770161682 153906929 79222514 307250611 906174128 774506475 709938387 339521224 426389950 845015737 711822151 16138783 820883081 492232003 941871353 327376778 247705783 887585255 334388262 506793104 31816382 768501236 629168416 433125099 397394026 371859503 686951628 792950026 568557403 498676049 186159396 679821456 602146692 546107526 391951799 738688723 887360941 279046639 160726564 53470046 281975794 678067489 541870754 394988655 621700163 8415140 823669883 559712633 231667938 696928630 651787917 394474404 640410344 761602437 598115272 852274248 739603647 307084856 809675186 855527286 719108777 425288679 889896678 672090735 403327800 402504030 57052560 604205610 325151700 331950175 169672179 922263506 580683065 361748508 709306083 435400518 125812725 191270849 453120587 944365976 805533422 283037928 878753193 523280783 842573275 9158178 343021709 88213541 218356166 268721525 768783646 771124488 749053840 481142489 622911124 35448605 856236141 642313402 176892351 771637497 715999844 377332857 226843519 685248358 340046544 208345323 705023305 956623333 857097954 179762904 100387241 232719142 679214108 269484413 306692282 23195025 143328983 51501835 232102063 585160640 984643774 700077349 968174670 594445570 147199825 95246182 224428912 165247962 201571427 476906457 665720195 546711167 928722077 261909887 383489032 372844378 378153465 871422157 966165269 599830922 423043655 378803243 615380947 58229603 240786347 230906998 474931457 495857898 423560477 848950654 158449007 906935899 670911719 184946825 631686276 562076324 63921963 965974222 360515769 832286183 67308123 290523643 802738716 696963068 284478911 113176240 367520462 355660524 488111090 708084482 516627333 690933623 324548453 814461177 246217739 796706191 230581979 673897234 132480445 211578075 661892587 215141565 477287948 116443957 1951618 968789728 460036863 119349036 541707358 638187602 926309808 691627651 745524628 292300897 531766475 930912944 215526666 72981837 363626770 711172958 151234558 346718922 859465691 962065643 316760957 262608002 592975248 947229931 840407789 901898897 420956206 228014243 559552131 453718023 272843719 804454798 278646222 980085098 644491008 884829660 358228010 582304561 993887123 818539758 737086286 877847114 563574478 85901788 795933631 45550740 349296659 223133167 120960858 560244582 208843094 579202855 422849998 478483974 81474978 664324278 873017119 266959411 521799060 841482114 41711141 900738716 24728542 244027047 29532939 340965735 329754566 568109555 340350416 30237355 653179812 711733865 437033673 376786166 976541031 818767038 359661853 621469639 363944721 292991455 941104456 67061781 696986422 228526441 26102680 404289734 75200898 342846000 681042099 24085305 559292208 720699577 512951823 700563389 573816211 49893823 868462713 984531991 402582161 342851761 208714895 824885760 790516514 809719346 856122182 143467941 73728982 963005593 922210404 130331173 325795660 283980399 625287430 560071703 445845180 963552499 108752924 460511745 661237358 664774809 306883304 337734370 733158465 333992838 373672835 255757993 525295141 57500694 417029976 185068219 534062753 625383767 915846055 686608497 414921038 179495307 684643331 575376791 57968473 293876906 673054933 75710191 990980101 818502877 699739607 967398572 524270887 467464964 927988889 162072823 281325992 79550257 651219199 81944174 159821319 146306347 85140928 650773664 733680852 326179564 391808745 249784466 889280310 317582628 770636377 132625725 771403110 612295091 345082946 638008845 224571698 635787826 591335854 511394147 614650491 111671403 512446200 986990869 644874167 919827165 910106191 795622121 547310703 536312121 477328438 721181981 852245954 978625255 846184455 142522082 451571937 250776450 36883051 89703132 658611601 305563480 897580003 147530660 311418540 357467115 630814019 449114182 736450720 488196722 320630833 926207683 801004014 917376601 761328555 397051536 166393260 193524668 926994046 421654 458229252 103436272 376516559 446110768 914913459 502965243 792925078 9182896 138249611 858286359 601566494 811365593 842702065 917697843 389876103 998138086 957409375 348380530 132668996 382964610 166026467 827486889 223328158 7094863 418695583 199589349 933552942 135384671 409105479 77315299 500318823 310068926 799667622 626347159 100544266 838418662 619178009 787689382 11108783 25716040 844655122 788432619 41673795 32534474 994377878 242813941 339015300 320086596 737626560 830864775 63527047 999271170 651792188 42901016 864028467 253077317 465923788 521633361 758396100 804757954 919024327 347129745 473012552 834305825 551264917 386836588 117607717 607063679 472598836 477948712 630396305 733278700 451636662 892181566 378242329 323538158 327208897 948572383 378366491 811563773 210957325 19649901 990397771 318902277 848781545 727870461 151283762 346965735 432060599 652097244 341929898 702541303 302449260 273044743 942590051 499748735 82097681 250775729 605497698 849062971 834523972 745039297 951173245 537810908 364957112 17389649 264123616 288876933 929244592 324281136 52919690 834527825 971586696 686135905 32922576 666322891 280064300 151657370 365744602 421011060 395946143 860716230 728959778 601454656 95160438 722216067 767831288 792568601 916416858 347015845 591489280 194296667 876349322 357769905 70029233 497084502 883702102 370209379 986866392 147766480 365108133 695231016 31754259 769163648 358248048 905830309 905488727 105599892 399299909 570709550 304911723 413552940 18123205 147357520 504127082 363115996 902479910 595055431 93539397 258924334 20029361 156354440 895792959 602004766 160951109 775536953 670930543 422301340 34486738 717714356 280567361 416222733 639954143 424840456 218965749 381008331 490073349 965185656 416723231 113516192 244732018 594861306 872598053 478388815 25096551 654506424 208004293 195131915 117216954 572325010 590875532 52710654 696196181 504985243 247343455 850266308 973227445 336296600 999893494 560588269 91113068 853859204 873499740 532794494 807587999 88250639 810365809 653256305 769748360 89455130 791511144 740190768 358024181 984068924 409574729 902737182 674897607 766090560 602559856 378237454 176333685 381989285 227376140 835512778 776497798 387116829 170898593 17947021 524729370 113418254 768242566 672494473 547975778 176018708 75793000 773857123 223365668 150883197 974761669 710680754 865135928 719812555 874015858 592223107 273448205 333679670 336372758 801029848 917756708 138520359 998381485 874706212 892925844 227241407 556995845 809734864 497150341 780059726 78727236 694274234 414363573 579112156 575006816 3428529 654782710 62963107 136648101 837168634 957380781 461103506 220686387 86105038 197368149 849837260 865788030 512451545 285470458 773257511 439627212 757489853 256670143 261412014 100418746 204614285 962666584 552292383 260547512 538720594 683845777 486426990 377360264 894950794 357567941 301882944 376011715 191830692 639738727 454409841 531024724 820428165 267903869 614229135 622423802 813649158 681729311 474971740 389586891 9314419 414283005 574411599 755619244 671173133 1463255 547373844 418672089 504098697 857102082 544825352 801508708 794874512 920022762 673835966 159757229 106923837 597306250 518072700 432945391 414453922 400034549 55154878 818806452 379703619 294473681 165288882 607348315 212833176 166040023 786794939 440497049 391862928 603037269 295838703 974730996 807105545 66092715 527852953 469773898 993062233 953168593 382646455 849857353 484336584 845298640 257335420 71316980 90906899 588054596 526815695 859271972 471392747 479771361 339752907 839603461 269304948 870605547 726683709 765859221 583808711 92593340 98822697 796550440 607681392 317611586 486667846 237002982 617223664 392034686 3792765 113249611 951472444 102900998 827136366 88240295 710236732 967901827 308946154 162331548 604067917 451985204 270000250 971831715 275152319 129844842 80235735 933162375 763546712 992711690 733222768 119582183 262328784 460196110 590045415 224140217 383925331 545281028 415412116 55727298 316056322 405430669 500295680 777199646 423287922 628269791 503039852 762338494 67651883 185768516 185791048 789260773 383926826 413174681 561530044 501116843 690418015 36091600 172429602 709040506 617230896 237807214 683502217 971086484 201387508 351425037 150894388 33247882 54697593 362852571 963726617 872264646 476607103 661015066 522721891 774978562 617885755 329574814 947171825 750370511 277213141 426637394 313549780 781735440 710756330 627701939 394913237 151360636 914051594 389717331 623447020 730420767 258719547 601825623 634074826 952434393 434749044 315277562 227701840 283476189 157340963 466523656 835334678 651531572 692514216 703301220 662157797 600785976 902929880 580317314 124428349 918525465 443911546 714779117 650226384 884945755 380935373 324395458 830242053 913860950 569157889 420511028 231273590 251534517 838402233 812770822 407690098 898999288 228939919 68271892 637034876 243760114 205587344 674627274 670325194 914666571 191389628 356795819 665620422 621147134 836403335 252127947 760915857 521585116 406282075 136803414 9830523 544311560 160277012 509288967 876653452 934087034 475564418 495892913 354733055 459778684 17728491 418810810 441177025 223727408 121649542 138926491 676503030 784294151 459694336 972109921 953086325 160673355 403588091 116248367 950972231 496146070 365571978 803613626 879544108 697555801 120851639 492297931 105535509 45371991 276520190 160595649 131655851 941607463 413656783 985247244 421623751 172468405 293060623 1394611 354041592 636074945 349107863 422129615 702870784 355381598 44269748 904203790 512567383 139827316 820805542 541419569 549089703 565394751 567062049 984746126 37639246 848708559 805227726 330431630 443712223 762748038 648486603 994034992 881116577 132259997 784898087 860032901 508270350 225684639 364096615 799053618 481800278 710314731 754324740 428616433 4250073 364298806 214951915 465136400 339215281 518452743 653720059 464449008 831786022 403946298 361330570 171855495 909851191 835218558 413543649 495152351 87182872 588974295 312295099 232678548 894356910 806568476 165050058 300806490 224587029 490094970 767753266 359203701 858542875 46171119 234049548 71041088 462565826 374683855 290339813 591837863 56616641 388550723 226297916 307183020 464523780 394158533 339221255 591156965 708648488 982291110 443909679 532072700 128645376 783940233 122342415 182750766 879978003 269101029 675750393 602844365 246314779 539705478 581339313 753387454 956361351 870265356 738007792 532008188 740297722 993501290 913535458 392806931 916797130 737644136 583726504 819731109 45465729 245455906 739769815 484419305 406868320 848672648 638916600 923637287 284602071 904784604 650847750 52295485 74860558 89960246 727259891 160092445 286562912 468230403 332711203 338149197 482018266 762584194 889704686 855212645 383756224 474470982 309786402 947329684 772926217 222627767 385657728 87763484 591769822 977764752 762140475 121877458 765334303 8718434 333313404 745786783 824038622 384470288 889452512 507394817 385441505 625708370 970317560 139085706 582857252 791940146 637168839 694891872 157045845 503184529 141430088 914393532 863981143 851179427 986713318 908259691 414772927 640232303 229717762 496125776 864090714 205053776 224363121 67935968 729250469 434938998 143966715 93538468 271425619 546031718 429556445 891244219 811907531 99481974 527899976 597578069 688193448 62060882 617711840 277160249 859089719 403659642 824709437 728201280 445921532 994875841 207972973 572103127 715254573 366124239 340780400 400499073 98134069 668033696 283828923 24756563 65335603 756410628 618530998 581881975 525810809 647567389 837317694 401051049 873894925 807367907 628008227 394683325 203344427 167143843 647376555 639439895 352299968 878458492 110376462 239625521 808724721 972641761 138815223 1824536 167468946 699727642 482905097 331754992 639188400 655390402 726632280 822576236 918504456 891099978 355055340 632160854 813598861 360779637 365177666 195024141 810512102 379893466 466032074 658699266 932789997 910200934 869527402 824737082 62911281 295490263 809245945 192177103 404815733 350446402 139257797 581425263 59862831 607948173 578701326 602225627 402812938 954081525 779063688 607970153 364649060 237997194 759726557 662937987 108636112 100390318 261471017 950717990 230210454 735611546 665199228 378180452 277755182 666912473 779906652 913333218 90425545 780033483 791959872 702333275 761118152 985482532 899099158 568396571 498644802 111552362 532394685 610093700 775716995 610726010 985379980 784461709 841677703 256100867 207146186 665319229 228708227 543350793 662438707 632753205 881159517 355260260 606244474 423545636 351469615 631644222 497147585 595371856 493292488 97591961 744471074 796450580 216566570 920662727 946226474 894444636 938792205 872236016 719030104 896398122 100548699 523668623 589649827 480689685 72578738 971100405 804098801 720418501 936556773 934156741 725868705 319014520 931722619 239247990 137637122 923017344 481278767 991161813 299635161 379456707 409165166 554207360 893400799 753632826 139861724 696093547 552938561 317535090 670756303 730252895 870802719 747404046 531585234 502349430 269806093 241240130 271401252 13247137 372972436 833497434 90603831 956884002 178433714 580013105 384106289 700951314 869098838 925997242 120820590 856098524 505535717 70609787 261633787 974831296 601235128 427510797 541340701 208307793 828163227 507041182 640411337 995896824 938668880 149179758 995864361 780421486 107919626 269755221 85900829 895346758 221552115 696689724 581162423 726841441 540329126 534661791 236725182 612983 961665205 512658194 721531948 719092885 130780964 923755193 694586800 726267545 816297196 548440014 510384173 172100792 613236089 301229598 193069369 31432185 682203437 548128652 726793887 880188088 39828443 234244237 403998941 185310500 401825612 303488683 717382567 313412544 266445245 984378115 212400738 38604774 683032159 442256582 343832746 661641791 374095318 291002299 524647628 628647756 114160315 641240251 427765324 619405281 485245978 152766004 217016417 774278564 990984181 721213095 812205172 969952146 185768894 896156971 242201765 948953723 393298657 991375847 706081862 209557377 796273976 384506523 619733598 393365661 866498965 188296472 454204455 801693978 98123324 491593667 194674064 596040728 556179301 872138775 8054715 692246282 237610430 345530656 432272768 882649656 241240296 337035264 636965353 354539326 644680182 844898413 439974068 382320523 623629297 15638321 380973268 201454819 475428950 852779177 202425584 474438110 225574293 246685511 926857699 250724967 721509780 217560592 52794682 468981309 151513131 995129631 171812793 485404021 72947110 669701152 954738646 33679606 319875910 359643350 470813756 612108027 24286656 941895061 874757706 845035925 645474236 307574216 495601298 742488359 659779159 10577004 139851098 262426344 374234018 865387667 90588958 127164260 489412896 609766371 279238412 815366908 25686604 311002389 547768198 179525217 623875857 865751670 484919460 339928349 402615376 170927208 92349615 733352970 971180125 295849954 371478695 867431896 463078274 794012908 126857407 872596364 107905659 702448421 236535515 139951867 15885049 393249341 190221593 182351699 854596639 953391227 170508869 111293331 572582664 637802295 205811299 974783246 401074495 12099937 412298025 697215981 403155269 163950585 700455554 806073257 921441550 841489044 91409676 88383381 993543812 594205662 529231003 187330386 310293507 41340434 863980724 967249240 768690907 699621764 893235987 303864180 104669650 273113880 632934949 189125444 73739679 139697863 563212686 992286909 118705008 189645857 113132709 45359782 800130405 94923974 262899955 947393306 334249746 898725612 712543416 173562378 933646849 439380957 587145574 307357113 255702574 577965685 33539108 598572350 814309001 987479464 876852812 527436549 971867512 379916026 734698989 531924814 848837458 803022597 572871241 209246893 547396837 891125751 130144856 546683528 742477808 797660177 770042180 538482588 243051946 308202537 543069931 602024569 611589945 721398312 770132064 943032833 506062396 852502413 913110635 96989165 614143298 13591529 704058372 965416776 711027281 730486113 225613531 817036530 410702176 63566127 755174867 610162718 160866524 638336545 146729859 7041748 720634407 414423833 651218612 67904624 299646484 309524875 332354790 360292385 212050285 125311490 275134666 737819499 682938733 297613979 461331657 436682405 491804230 827212168 75937660 586984316 323405213 133867406 498595889 350603118 101173001 219351175 260606317 261188176 462231191 922678753 579722597 663845577 592066889 915454750 744024707 219606228 575131538 521033810 723685351 598780482 175690716 38379688 915406819 408174390 497239298 565090525 78952062 672555175 979966166 218941891 358505458 673275105 691003548 586760896 645152559 740425220 495885197 398081100 1638998 621605508 406457174 247509111 713895742 87061415 242812566 630809952 356987890 487576586 409055587 930124735 904961840 695274013 546837446 69038940 919028972 857832610 875322938 939856277 562092235 76697906 88278065 730284508 692827817 437312696 559647887 974148151 556052755 956561395 25073709 498092991 910275022 363893753 466970199 532975905 881647182 632486575 392469838 973857056 931212863 218647377 264593095 171001105 598038528 622412016 233792107 458925917 473129251 311671535 934478421 920908290 729519343 758729606 789419927 772277011 134382302 798201407 992382133 719587124 252198175 648350332 102970920 422152734 785517845 759630831 112330972 514210081 130193366 857367327 641703602 593795997 145850028 682406378 703337215 995854216 968230808 770425341 692146955 978776043 166562762 850602846 388937875 180069221 185490986 787201763 972464200 260245158 581803987 152306872 759598670 512061173 410424978 915181277 674182334 93723307 915786603 579396006 618548260 965672374 856511252 129442873 255528449 328729623 723458681 227589395 661085002 502909028 777575222 34715780 999202535 579062343 48751648 500247854 729325621 769011964 52472765 59717770 628827013 162080727 811691718 996199779 431188634 570310332 713955500 609340504 412993327 359641253 985134609 988772446 680434543 729061920 476037963 66664253 87297147 838159822 884669668 503243278 181889768 716676838 441954332 439142851 747897150 505545647 163361637 145149855 274958458 892118025 688792806 675002298 930384524 473153509 806875386 784314750 436440794 974677960 944033966 255018541 224555708 726480717 102716486 719116120 443571198 802983328 606877112 686464873 292074849 781116419 240026927 395465754 648657177 36540492 562789769 282348796 565315920 61998949 567359194 588829682 672362658 543149515 650049255 116682675 751061663 155072016 451065772 80957515 21511757 561159514 64030679 77896602 998865059 204484065 297434954 172047315 481427727 1460084 202790812 706280447 954153969 869262837 858685593 562230392 912199966 792906201 943496894 997266798 67491422 823667369 717957566 837393253 253085677 724324227 754452735 221318069 384591102 284439449 833908254 906976009 340069939 644619953 402074983 743665633 463266855 867956643 968017501 156053264 752011748 677838047 863048248 571696190 212000109 974228708 285895778 846469222 622756406 223964874 918095097 312509017 768396198 341246649 543507281 803748666 482505116 957345391 902022255 873168641 140529895 47966655 923038094 799263992 529763789 111406348 604998302 791652928 50025605 654008274 892282560 56369741 659341245 877717278 510163147 27833190 465157396 110806545 711735755 869643558 848057249 922771040 275777916 585204990 243232362 463416023 179636435 831954096 346260206 457287633 940476534 854733013 247912860 10226114 151163711 275542873 317485145 332978606 456090812 669814778 123632383 168207279 517816242 920777932 836250584 444301170 590669462 846503095 933360679 934767802 782500370 240856567 710355615 559707100 215609222 189573276 573131754 966388802 55204229 407460104 535725859 103400169 440128084 312827508 666402396 323898082 857306734 288867690 917474585 269066196 638631170 312080972 520267987 523992184 421086835 225445836 840099191 221036316 41800919 843811186 420236772 305450017 155398777 434847258 169300081 553733245 401254488 873860723 254148452 266928698 843574437 14082433 498806651 324050677 899043657 380433691 608496231 448260192 623219804 938555501 605839693 165278400 503935151 264344696 568127811 287524719 502605380 163807885 630953433 971067227 451596496 481668822 311101837 119210373 704945216 571455693 203710037 814433668 644810544 142888899 310840346 345361407 483178869 41301850 644992823 881634103 533001365 520766987 267211518 789080954 686006858 819250082 227289651 312473009 649878275 346160061 727807375 41716179 896775779 760094288 346242110 564813167 642628032 874852387 651211873 351987239 862523557 193581906 485375885 453936687 677113680 56691149 215805771 314873042 844367669 575846870 851408790 717733613 940424569 784247941 822785888 201088882 683987319 200661575 796766989 853439463 353306943 252187483 302596853 977367269 981160978 866255956 925668839 555634841 90921704 923704474 815454113 361564997 632364778 5980904 84491609 774220224 200964599 312066511 783612983 769650162 939498787 867295794 58352600 923036506 893845300 364072392 274915533 934264712 228716324 968072094 765441818 792045730 940072098 738435730 443742903 691290595 472227472 550879193 25066514 962483736 674491782 80452473 110254731 521576481 796431438 249181392 294704375 673520502 727713894 616088331 284381726 83311775 224912001 787034544 239636797 157366715 832500486 132199701 25215109 705775866 836743311 637269222 966131610 161166115 76116076 173999267 641091092 467420175 98973982 631818271 810634753 828380460 662614748 52262402 147683937 248382459 971065361 957419080 392774057 533602449 479237596 183748801 378382913 182177818 706464398 493309839 948419846 840140114 215110192 454626218 608533449 221140234 406116090 968451935 971179981 991157929 912447965 562494157 431874125 315674280 448897786 4238951 408502004 759930133 829239337 86695797 828809315 299436561 420501363 988767378 123466414 931679826 469781912 465180719 94940127 669857186 346058378 563587343 918151794 379983709 933527024 263081161 131695575 496826103 102950308 77567562 146949364 582343284 27036214 148022352 853696672 162067694 797391718 123543023 859250217 526470931 812543149 920910096 727457743 246381477 804371893 396662509 50653510 866954744 183767773 973533335 906228280 783398007 566698422 135947632 871740609 354646815 163564424 415045553 768596977 24690177 518865358 564837093 376576078 958866373 829487285 972315244 656779855 128314914 772335010 873638394 146867426 192536679 508246953 991800341 697529319 511585270 386223126 935489690 190443698 283011779 736582376 898602296 126784653 70152665 695170385 696769011 939616051 746645461 973578295 845282211 409559895 911695721 56491190 580903026 634488603 421079514 13038748 205312610 531887769 476683139 343777516 390020037 433176670 808002640 618697308 609370563 167887338 658355780 850928598 153091287 47732785 509490675 892540155 592423762 536571933 632870152 341456027 96481239 382417673 698045121 996932414 965637597 796070215 718638190 37196190 625123377 689580700 830075381 423530283 528462193 918531775 874532433 49845382 71757969 502879197 585737230 596332550 887858522 409515800 76157391 328198198 535108326 405102339 99029705 321190484 464933926 261350951 95503173 180681428 532180572 549285250 919949090 790801884 592400801 445519107 88875600 541848517 707235680 784283663 743982422 457169824 417984217 701708287 614554060 874339759 926729119 736154784 281717474 138538471 839272986 359472817 870416856 429643893 142234118 383471720 754318980 929827894 293593843 205330414 960385999 899252541 78002883 611090910 978469944 750885201 630528558 766357962 447855183 969279596 946199873 53316278 858265403 384759101 135293914 551291803 608444213 144536487 761968174 110500837 952071179 530635584 713077572 564461046 344657310 607926227 521346936 386764705 469667940 980600798 403472121 976728751 72978918 880400149 524020810 243344221 248963395 937512669 990460100 426044124 232322476 934904017 265444627 842399696 981733606 73046849 589656501 343387346 583041483 163525550 543962495 722597102 309091529 784896336 531425815 113853990 43059809 828056464 781448826 792279021 823822249 827061902 3095928 865169324 493665483 275957660 780974643 194618176 867249540 560711104 948755108 873248634 349107621 40684598 792259094 761243806 906488726 655754988 417481641 348474084 268932814 521088773 94584528 694628603 412889180 39884631 192623571 453105281 288949601 27465452 989291598 979705996 560216468 491050373 539264944 427085860 532849596 921483282 183461821 403620550 467826234 749072699 854294285 550033635 584822652 369712090 93265803 183637598 94990987 903612287 777194742 829614354 820761982 688381675 236253539 522306378 366675972 488858773 806912953 827762759 37831647 451668264 46751795 997399230 914275 225398275 187783394 863526231 663422971 623170999 100763177 864093487 850667173 391545485 482892095 643637335 559066225 608996094 89319088 294410322 869075205 320508985 696385244 745216667 46505756 827748512 763253367 270132509 454633730 733921867 810478856 260796601 508380442 364111235 635721066 695948228 757022297 555105096 941926477 260882566 339841736 113642956 884193973 586116540 315395077 596271862 184307834 69074198 3959746 404845792 779990215 300579770 902084677 274915418 227922588 670831807 658457319 637182308 285901644 789259699 891424917 289296311 744436991 32764694 168649298 892824381 644745521 324538076 136605107 345625749 605122353 77767919 721067873 302709136 868413603 335364011 916508059 517316023 137710591 500824161 918928561 176517826 498622224 506933204 158109066 78848290 871532405 533548222 800482335 691328632 297383715 174584908 470161918 826401307 925636321 457564318 695166151 789089175 324298 174623560 605320882 932917033 64425679 725902804 734905096 978862660 889129267 160241726 598101670 696898062 692735245 875458422 683306621 485772771 437363913 28238306 104214036 470608849 565106343 168024537 180891652 939144987 238461243 720780329 792779387 371615927 980387819 388823697 208921018 344887248 343327092 41608776 495328919 992274500 931880038 297732213 289952508 895233318 313025443 81436340 780213862 149431101 259183844 603816855 562437222 425394564 541867316 504466723 894938404 999260584 241845619 655882575 554508247 131382925 823122132 514067080 706501966 395588297 854536031 335810096 116351082 166631208 919038576 42365210 219778721 678923046 67769654 487468560 56404605 905249144 82137397 703405134 351335451 697730179 390152900 722314244 959476653 354510563 281580944 947685079 493526520 535987174 100587799 217377376 149000919 602670607 374155566 820906155 459788726 572313491 752115324 998441146 467957783 991690975 874255612 87455488 87158801 216949520 633553535 436819431 167017164 89260153 798007592 598413898 486457606 551467809 284882926 636306427 257132433 981599554 243454749 283434558 67039698 279249867 208139477 69928524 213228612 893927135 44247946 251631058 114700019 632221268 321390722 319928175 946022402 563046965 248254042 904746809 526329893 8260929 254759810 327924537 987363111 250557289 725388988 714056682 565154406 144445526 292495265 956847294 733829458 879272416 109216028 760443033 653221361 696680088 690656236 449951316 914510686 40026687 85280550 940649787 371723334 507218509 643222194 195631504 512165225 840818795 494056905 980445958 624601119 578242809 152866685 718982982 993654992 35970953 32169777 952225901 262003067 882374498 15320349 491707788 10445872 813426686 306932939 989435687 719527318 399188364 389314973 516577207 510044518 511281006 550287172 140612136 792614125 613424316 736173642 245799515 255862158 691024064 933693578 952995237 483811646 759145336 613708210 545749326 951559943 682555416 803620808 561569044 841593221 810822021 507123106 689255845 527794028 332455130 644502380 871985448 465114624 158172135 972747046 469001141 404463003 366423469 402464548 306208216 135322154 186625763 340907148 945033490 206810032 343253620 660913627 3955800 38311106 215132159 544483681 129054866 403538698 917647958 241650112 595335453 729808837 126770687 716587633 524921418 961723972 671271862 586412095 47882717 416023151 165589225 248035273 649653134 412249405 879542330 232193028 334622603 126096701 503254529 739841207 4543220 112646928 243349192 25065726 711677022 715665388 837168077 213029832 269694545 929619995 651326339 733277273 835021770 76691322 262655505 465003209 683247802 771400699 975644625 945974402 586258052 450891811 669720018 212275909 796225667 899647884 738253911 500727078 93424258 680821092 93213014 521963020 541394754 317594861 612001018 565443890 68265719 544466427 466631714 718351913 876627915 223167865 131652320 606683860 588375130 73424356 502477050 220867562 249424437 278770126 835938412 343463799 106352223 681450588 916172771 578708827 180109267 633113033 899325764 528082377 286219259 410770401 835208739 601937866 711431482 974346374 777399884 133921720 407683428 906035247 10298942 124898243 252279361 546588260 165305259 727863919 837209614 20778563 961284602 776580372 543031291 337959678 432500933 947171421 244467885 428528731 593232475 953921737 288954558 198999347 528033855 606565166 956439864 679139827 877625767 614638897 983075870 582550814 237291006 353843150 771909860 866402760 115134818 869826518 859938033 748350492 649752358 882760300 340920868 810902488 190745170 183333768 858392396 319228108 588544542 967693940 139615919 352324959 58176635 38267985 774694532 493778698 753750666 136896147 856453497 817860314 136392994 701047681 314996013 211245042 728291150 89457334 489845943 307333127 67256525 290155427 884443421 477953506 728492177 354333194 983753694 485666786 698853184 143382660 898798953 67308151 969758646 418569981 39666084 503730856 347570561 167947059 800469094 978923662 803347300 999049530 456933372 917779415 560530900 645474298 615801768 522720324 438304638 758078895 143955997 784974379 981344703 556700777 14648325 722085621 432297770 157965962 229636219 378298785 165016070 199232330 601215889 117058879 813604558 894992182 853270731 644127095 47744687 597381805 200148899 674581248 823058957 182795362 52632579 871632936 423037182 457487837 616199885 108544851 344581581 460253690 617982039 355370356 531168632 600748392 514204903 170840213 395775027 915007274 912651580 211953237 290882531 555556122 165577477 855778405 554056356 169637473 980186471 632344330 597044548 118120449 763501435 205967262 35987909 797293899 223996621 453167887 583420895 220194409 908080606 454684767 240239483 502533333 834008739 491857186 252589369 666544608 853665541 124157955 497099499 42987820 437575007 295573823 764762648 749244722 355836675 129339688 169450106 7530430 908386997 508237987 949325440 697939565 872057646 556299691 898719181 293078838 769093530 695751628 157908407 889694430 497604635 917169320 975299017 816583042 311165508 261894774 484699201 50568465 786406814 26480254 901174418 708996560 866819110 64161694 871715812 861807316 827240653 393959112 607773583 995082379 559004151 85744513 981643684 65720116 769214973 213228132 474844004 820845922 316475819 776562589 821760454 45450877 453806274 116859247 805905397 236696896 131381367 734362798 902402000 687160892 30438386 144501574 218505833 534516820 503922896 802813106 784570503 157788479 548503458 807712901 995316515 801171466 804493932 786677989 628687854 443941267 339821862 377021707 871479754 43989775 965155903 564524484 520148301 504739460 737065749 455338483 975520577 5384016 103084669 735782669 407844647 312925344 495576386 976180635 157877167 824187898 965434014 338237371 402702145 812676020 464719042 777308064 436761719 906146682 477940052 783050766 754762400 473712844 941595628 122061534 131931711 52063101 788395158 890461568 764445579 716291125 722070099 930292084 600739565 400078064 143048599 908419280 818765700 58382205 403937484 28527805 396282276 55507969 856282318 752250362 243531602 167478641 297966958 704923480 652595402 531789339 915320815 876059195 893216506 123238430 319387020 859325728 782173188 243222509 9386992 589451281 379255744 376248528 972058556 705624882 480285239 48310114 574770948 375505720 198612009 131507732 96502738 262767597 746219400 878018473 180931234 417967790 31524859 690729912 36381413 653978861 730377564 957239086 821094782 742958255 218462778 962042057 486306119 363201806 14574680 842685341 623156621 165981880 287716140 611194259 106458768 176617582 402321505 445345253 124355077 44604294 414726229 899287972 905958803 289722986 109977244 97425458 607179609 769650967 339026043 157750728 669366887 306590111 777215341 567066097 350694208 822072487 155244962 939270157 293311582 945029609 609185403 325402063 373680302 641372852 774032144 739950528 274139664 336075367 532838570 793012666 869695448 48660217 995133257 991867245 116904784 777320308 588183070 184884445 644104244 406683765 981212178 477973218 71669556 870078638 305269822 502834598 919758453 134542181 66233457 779041579 214820368 653757682 966213038 654608835 326077074 213794629 809007786 905217686 397974395 518290525 463262802 668591647 956454335 858949330 270637123 369039023 622672968 140392012 753156945 336436969 270738033 150854153 91092481 94742596 578305676 192588635 399736078 687074189 757563998 313052200 26099175 577374050 9294238 554040168 413269807 459240631 627707513 696242603 976942396 720894805 736965137 326505873 294217882 118826070 627081465 155779151 426539653 238500011 412205499 476357680 187107186 791882134 728047954 353413906 584372102 592101680 909303216 951625957 584324381 583916260 616222777 724570672 288569669 383428594 533469254 373109900 163424320 77551597 630517156 20788518 171443718 644902205 380584210 11113793 911824576 467122078 6699718 516308146 124711758 218744479 306709225 127878242 286673346 19855396 978288150 318123728 595696099 819207397 139632607 763650189 628882859 272773357 758278472 39304381 725752778 106466331 879285066 909036444 961716768 933979300 782296402 632252663 912808006 659640719 581321663 156379311 77487110 999003448 266804839 590758202 810496479 41297869 709867282 322063394 380512130 531118548 922106366 909305475 616913495 652883619 472698969 46901137 280198649 189393639 787028170 928309008 865545398 911198494 82673129 266027482 982339600 49182748 189834435 981911133 7681854 321227146 684079959 209888538 719255980 284815970 601564443 924913959 950941046 733193077 276710263 572838574 728772593 838580197 57348168 32745836 639860259 432068011 946937951 542562611 15393606 60341266 683826688 951512680 366221129 130768442 204133732 683296389 31948622 830871958 249237815 251399320 932719661 464054382 678373658 299432899 681457904 807943262 812127266 967010234 793941845 611158741 342634327 545210696 745236048 755966359 176137782 604993226 32794758 389246268 383151920 221890738 361153746 492801455 3284521 406575621 147229891 801300655 175216889 66837214 820757788 538656849 398610414 71477481 8864852 640510332 333819464 201142760 540603156 284498539 391995068 504266802 368748731 26916655 401859058 223538991 853073373 82455595 209576711 834810333 534943936 86405270 861528588 41473870 842057181 334189308 639705733 256696616 155740261 760777149 526892522 231370275 35689146 140266893 459429929 85646991 694010097 165694450 765273634 21691595 834989911 311122378 395755050 60259279 785336553 952810946 212858505 55704995 850702810 816996575 274018812 511539174 417361937 755470073 894035507 407156808 82276776 558428475 938820180 957765391 426642798 817822885 276701558 702983574 412903782 621518986 169575719 794558154 23626054 811433746 594548199 543356331 767019769 789228473 735953323 496260049 472637213 801533390 775756378 919806949 628348294 102646517 846000211 626710051 916161465 279002534 741151462 42892511 51887986 188381100 243682006 638959868 788221214 930416294 702315230 446458998 603969122 767221897 873012264 733661914 533139090 421351964 226606295 688075721 350842682 648116602 271479423 568896377 539669657 981007508 507666087 239710003 813801505 929900973 708479310 817287638 646163193 322149340 235066723 204888147 662989947 508726157 329988940 573172783 4115126 641022208 888529760 721253380 194162925 421436105 264318573 553839103 142651413 350588494 959445043 679628900 581090139 193903180 538606054 891848710 54442140 796073299 560242352 457322191 513081068 667954245 845862444 617884734 781336336 172016347 894837996 641454052 957267459 357784608 944449269 617312230 627228021 633735412 485762622 635868030 789179975 523562634 152799541 342770042 135671056 569879786 351288121 227789499 220162715 693435248 995141921 146708152 398169703 381804363 855822259 771217913 932093734 96135167 789765166 424033948 290085182 584306147 15936193 310606034 712656203 770045092 678786321 734561635 627070619 359826880 302236343 488323110 753531824 327932684 436592576 336168586 567489218 770528047 439541547 573899793 110681146 666868772 211244910 712049871 709869880 420185532 774372082 640546287 392678927 141262874 554708114 468128814 460364996 394002485 590469152 140463198 39463826 39299161 762402528 327113701 864348520 750655654 197154827 613988155 111359081 949996944 72874318 774859375 904641131 303676509 289361736 346918819 185438585 643033002 333227023 723041164 716035665 284044262 94112172 333241331 273338087 839173590 819072154 259038262 654106848 676557072 596180555 867973575 177448472 884824191 2661283 20258988 93106973 507577573 653305211 783295998 564735409 101421908 516259615 144188010 968991051 389832116 937225937 757233331 27504535 536361793 610005060 895447085 604878578 914015498 424166689 714353476 565505775 916308083 559801733 462531571 13709012 582745012 170969729 623342670 72357917 264740439 92170393 630243576 544391416 834439102 950138438 692847533 695472328 881538458 704071284 943113658 280719523 944548981 612900612 484338304 646080980 771653162 991585611 385787381 601704537 576508519 479938706 394738466 149916517 402044210 714221716 701250214 885343199 425423713 83266050 223126321 572529378 342742816 213426434 882080266 314356795 353571951 491111852 698763146 588420846 771254178 569166988 622626719 867728306 760837599 445284131 749524554 196893552 551927715 55037030 374601761 132099016 101029182 5659453 59615437 846407051 149413202 893687557 869299085 236503874 314937176 156326927 910427570 751131558 616007194 362048543 88464161 463434790 27812922 371772141 723878100 176994148 760139434 976388263 374423385 764395960 956415282 793448045 384047441 521826219 293218542 229060308 171866098 117398653 268751565 795466340 931805062 871658657 13265939 487099930 708047338 753602108 415199959 142652391 458463504 122346409 957237382 371145006 511745405 902493175 690533982 987002186 708177100 42438505 615725044 44974086 899998249 951143925 555636655 531870243 426358998 955790790 116600650 529547733 511315625 643457979 714202710 104964422 935481484 79412709 445417141 583043858 220754684 978723341 414295329 219079370 100288139 482749483 307517859 993806705 663524447 378411248 149037596 930222594 734135472 899442237 995525311 74465768 184255821 552199594 631232661 242277252 170694680 621102336 178426872 778128554 599508869 596277439 68575000 452652324 759889183 911744153 863224953 698501934 361964036 648848885 680524147 670782968 246394724 278741101 392648369 143494184 36907269 75816016 109589170 538880085 186086338 910026017 120375883 142505869 865081863 939968534 772649251 928524751 594980439 608262809 997551158 519103122 300190663 354870987 282020435 866677565 551271040 539241980 669863582 882368940 509367360 52265780 837557006 542139058 381299930 198148526 862213360 725865617 44855985 571025239 979819874 829800323 484191041 969700691 812028889 815609909 595383191 84046969 935831708 73759815 442558163 341132754 685529414 112346317 74283181 372667166 157446472 81264849 999179758 253980494 61588068 742144974 117047026 127047947 511924019 310181430 399700525 685893934 345185696 484161518 523754146 89995590 103789419 499930829 535761005 405196821 257488040 397771040 208688955 350082579 323135037 314631209 621472973 558263786 228653671 835248795 923508601 330150136 31042357 423114016 497217193 398198224 899770124 694180563 215961433 802403001 321244961 264597958 303606429 472331821 933671426 457118590 960699417 207081307 540288014 910514546 263132807 941554342 750130168 904566671 446954037 428177445 987849032 829570231 151518596 736816161 882959066 226285885 425896298 683929 652875613 103344490 837975025 242649793 737814996 368802812 909911734 812730238 37809689 477661346 173621098 138625004 99314517 53044353 357426261 42111193 167737993 78175922 205352142 204919879 229869321 848358081 205107140 547839469 88022780 861751600 592144440 284505527 881386461 745261042 698987456 229309506 626678013 828507888 641008902 955955041 961938430 482127495 664525895 49511579 57669977 698844680 270114773 788799914 721787097 347443767 818843286 345111805 72012318 980287949 186135170 474503223 543416604 222053878 688501544 285261997 372879001 378240724 375465514 563999212 514240178 723997690 420279228 113118258 164799830 667404017 122207017 87061232 733730505 825094582 952349518 753802574 541625379 378979130 86464285 731727015 610191823 364076513 799907868 708447496 755890189 980224516 814630115 994961333 695502192 668148847 693614498 198884773 59711840 172345059 804522136 139089921 621217432 705389205 395426973 559439529 54665641 227927213 635356057 349585071 696766326 910222024 294177034 374592217 401947062 160829303 988327555 27533859 195914614 640437438 849931815 970611771 908321172 371342486 364880178 628319748 714132805 284124523 459986544 31675923 791237775 828272798 150068420 719257909 41261264 148831492 229494179 891342567 32282933 667600229 238427030 904823772 968877892 612334334 317220540 985464955 502109523 947552767 32787269 9298271 654505742 599811086 164967416 634462677 702752757 404838083 381139118 992512609 45531611 50304042 710180564 422008121 852649832 38617412 180020717 446514888 674942616 910597253 504671246 791788589 288924474 321156183 168863841 690842553 222678899 382656406 722013090 452990837 508834360 908782099 657333413 755033498 784426967 187548434 167306958 915175702 106621039 452283339 406084759 931928590 505874034 411081708 818395662 184887382 588741930 803112469 135122772 274132475 684535090 457243738 95686943 963359674 649704697 361878213 14866744 105894278 158698307 266468818 421118 419221254 491343271 388797170 338719714 358715924 887304977 476330248 56362473 548962623 865129026 642999023 917253165 906616394 175165003 367140337 973943132 588662955 690872086 422529105 529260599 943455757 656432093 227876291 638594581 762380494 361053617 787413487 782121821 381808769 130650612 136783601 182895631 498698862 903562975 457352668 993004092 32875021 892825085 18020658 949480074 5830543 980062382 258293613 560833713 682482773 739458213 806902650 564993536 421122934 839145067 965284665 370386904 518400062 672730 511918590 780793392 23453353 313595042 232362259 383265296 547316716 744211655 176291892 626393622 87109357 629594912 823875601 508762868 399203014 18445274 660432079 183041519 287756614 118696180 751788168 31751010 226079599 369670337 403816390 903367481 41145849 354251881 288453644 899964791 822037966 503842407 711341133 929718960 194642572 83917580 553683315 985404559 572749062 651613947 377387225 921916497 222653891 294026155 447038674 136587081 981628286 789735912 247485728 302029146 553018788 398122067 274703741 637691264 99215577 399437789 702546453 966514759 635209587 264780880 18995722 948572242 460108285 123601094 472728559 628506838 836297142 843790896 48210510 39809052 331854607 460452816 987961890 411565058 795109425 363751359 779189085 297682043 76315509 394582376 455558500 601867786 92733417 864064011 492216206 685653067 714100690 907457339 727317928 768591979 852952356 884629344 253573235 581954987 618847756 36002358 220374565 508653024 540214631 146752332 864214244 229022710 662146376 713288838 206362446 406108264 212268918 662253724 151750900 539197386 960315883 458265497 401139930 312921920 521019734 99236188 901761017 723892996 977736090 896405530 806279614 301892836 124552781 929135322 745874568 985694401 218661178 995855352 68697133 696422673 720418527 486003618 756131958 662248285 581903600 231507550 598566302 523675332 978396882 447326082 594525399 956862070 76116513 924334011 389813445 562947131 966670634 903735175 15151616 934501610 362051441 660146106 385942423 92932850 406251053 48187389 446144392 220333268 240129223 488597834 994088777 845344678 181002591 347345010 399107138 281345938 10361671 685475479 791630928 465626709 730952070 235382194 35199044 284994496 190582614 387987214 154518114 820403258 386834086 897372619 952269539 531117373 284072600 567647068 225825395 108615637 448020996 452456969 33182387 72904996 674595828 370562414 518641848 562202336 757784102 982205178 402535818 951663571 944043917 107724913 346124966 105467994 504493776 608311403 343702141 80522471 189023434 642197202 205008627 722225792 545676040 579387752 13666272 265094461 124225614 469971007 52606866 878151373 62748434 841510463 724739914 725581042 189445119 476104099 730749370 945109504 330239604 848933500 583935373 318771042 128130819 243457837 395350495 685330454 466412018 483119341 557942977 521925932 505000893 486547016 956156855 258323018 842681234 692165022 452616249 278471211 603491795 384157091 529712181 144038683 50115224 149039581 508526219 433356157 803303466 452798762 884477328 729596997 207973769 382817335 929151372 683270015 862509288 402999817 302640956 449630406 37115947 674410616 722071120 693291981 903851376 113065647 341634030 7906522 824898435 176392622 468328237 616163142 700789352 940881608 325430171 102981118 711036885 82615333 787798968 596736005 947206069 673194817 260765561 26139888 319511718 456068971 988856006 373034856 582144636 442908743 969464827 891257772 385023676 323429453 567466091 303423500 932076321 580315975 892504280 159182191 277069851 507666647 389570045 42780110 730023243 472380143 989110020 327735478 180105737 858374231 687685648 79065034 564040158 286032170 585424565 861246271 956999946 992961881 916195451 568314463 493804799 34519334 203781470 181265414 651304676 210764203 121423441 485400872 411921939 359517009 886614454 521509705 672117915 162637401 965859815 415620355 352982974 290783062 654401457 518128772 971660916 684420017 911388372 510916621 800316391 776674340 831590532 630561396 560071157 696165184 37132267 958396323 166976433 882779623 223077028 773289751 125801443 940128722 707211586 505146465 29968771 322363916 186447303 624040360 32584769 276807028 706859053 436097574 620241152 795619648 703950049 737455783 306206295 26698613 190223170 896363021 14614799 103918448 952271399 39477710 501215400 424771168 352385110 586290292 160045011 945974729 357470478 894111260 256638713 290849794 298460798 960507640 556326067 98511544 373448267 614284749 541406287 848847209 898178574 772069494 750842450 472249322 927891924 63460959 231352049 623588578 69915804 821849354 265386134 426120780 472187613 751171213 769609825 756710905 224375549 66707474 481049764 745560587 482840538 769642071 525152614 87986556 644862277 525972524 814666977 107696277 891390083 910533879 315985925 499319159 706675403 430831923 252148979 569718421 105083338 885607148 483940226 234144056 297376289 123334724 304334781 526948858 956095974 457372658 741426786 722620235 22885663 155358654 814342501 528648176 743513674 127536902 546497131 638283646 920018136 226180925 250617168 392675043 460603821 709943398 952072353 710255326 310737826 50772381 339171874 784642178 95318020 469579150 805918538 64256951 469302034 435322620 263671234 576771001 90529922 62111548 673250282 101907863 672805884 520716471 30163284 519978677 46262173 95074668 284729671 285741387 647689334 555441515 305830205 121045731 325897483 308329819 300845925 282886879 400584661 233693941 329802018 566653680 410012608 991217542 351211402 790285216 886257326 296687217 489207783 898564809 197312497 71555499 77381690 881235996 259122389 904754749 798151091 82901404 277410580 157023942 707200826 508299808 125474656 996502006 397947882 727329236 241139676 650431252 518377872 643502776 853295779 966630009 604368176 495268128 41089088 184487955 580984192 423900210 570671668 115794403 904023916 444883563 64631156 472242815 106183312 72739354 90171624 589199249 210511297 216608228 46611949 52018262 265987461 966939966 635481812 359718431 464000661 146936054 91979617 651209939 358223458 214698923 248174412 699871084 276253070 519054416 380854468 676407413 351446126 341740205 734954727 666811539 605340559 32575966 980576330 152554233 856587822 821186258 667503991 131138546 341299390 568874701 359208810 26895195 456766310 189289958 122303508 877584165 70529153 991387018 386012377 71825368 573707036 682692343 227228433 258679051 765486971 156530114 509769354 389754349 854303636 814620242 660295684 673382847 918155154 180109922 835082676 184985688 953892947 40822147 588851138 844337824 769553387 530760599 930362058 252209941 960090655 946832215 585064031 143490633 211281643 582828751 539861380 853874529 814006525 222727133 795399473 46068888 749268023 372582069 733375700 97647034 583439920 992883807 850228941 605931689 557949620 938252087 672605936 527524316 122618432 775321453 443561735 519786715 201842311 405119363 102671182 711698116 104747759 29506770 129309429 230357193 338388757 24700421 774271138 782357168 888745797 781451675 605729004 778553681 266744578 932117097 74035425 452339484 306113412 805007894 788310145 40277648 558683189 751492510 689510208 320984261 610013491 897895888 379931272 212524515 598002642 32487376 633633333 307759017 95513879 78173077 139402007 40963559 594227261 264868972 171612531 758157572 939464500 892878195 894711170 746165880 574019357 457858079 587318769 247845203 284821711 42989751 482165344 949357237 710885718 508376278 211873251 425576532 930757742 276314093 306149252 361709305 257979148 842988990 469545662 316752131 975449046 613510370 395800580 925517026 992956837 983414084 260945208 997604765 735842826 344599204 17237044 396065613 358004679 183515926 274352453 706042784 502797138 41299840 27122090 927160919 69040981 499331615 157166105 908658119 411591984 368455938 562182971 891992412 861082998 893797518 628480556 488455186 103430252 58892792 156457724 682790650 408011917 474387918 484969264 674349499 54773000 995253359 62879297 693484302 627577920 146265742 178555931 477471041 11512907 302495155 203598240 311128757 810289524 405243065 957831459 545150561 805857978 372269137 751329517 159743564 904152142 654692734 733447612 666166806 207443481 198937112 895667007 52048240 507491891 617953097 841439899 78254239 478533997 409109522 329965289 980718333 177214920 531359687 547767733 463142264 175760636 380142223 751790977 549805330 726748914 961818597 452610624 276669279 712486986 216325914 696522715 928783114 640774358 500776400 914950832 447479376 835890717 562735232 258930701 443316099 546720729 314419445 288360633 238575496 323127417 905235151 456481132 891855961 608306592 427424258 629989203 740909445 971448484 389951316 608708237 446358699 984181520 711941346 239769264 770688002 546378018 614263451 901602628 635675348 949094990 409157827 709026886 503389183 57168825 222558322 731898023 506748531 469330622 223792147 371222219 990969270 900744557 606045669 750426891 768566883 296248583 582644861 752045107 56160934 605480067 848397634 133149700 135751874 428420365 876132080 489477555 5310347 597028993 65884694 14091368 412775148 961009652 519453080 281883073 959165027 840180268 51447085 331897932 695968128 700440611 766529506 428744720 712758890 64263048 706124949 934756101 48159321 343974205 649962618 604339607 168797213 468877274 702993818 512063271 52876438 935477801 629445455 260884618 513884985 454169512 716666570 139732104 41365650 945035018 673195917 741013598 763166396 453806774 177240561 245244989 992312299 135654726 343065506 214091208 619517666 814389258 726870046 133055642 74371965 538499971 432271161 364705982 179119401 10956264 185974171 106649397 705753959 592329124 640813888 789954164 738074701 965469653 228699639 426388195 920477956 241012943 302442980 674386783 568774731 827838104 280836607 948419512 560058098 406064489 38093971 106635060 468704352 774245939 814818751 104384778 486937358 222499095 168283640 403772136 959159050 498405357 740013189 587851118 732541557 852089022 427384322 416942769 59463685 173160522 984871646 808229561 560255364 662119555 594383325 463067650 417760847 137452816 343681686 397650431 918391767 121544139 791270389 991989650 827626019 665466180 565759675 739055510 791633485 653380923 83240953 287686998 164017409 673440553 941818777 267395346 885347585 59470520 26416853 443700865 202334627 81329735 290038462 874054986 160289617 619982695 270870710 599865738 26256392 538948448 62635766 482720337 473116634 975465901 166886153 99861540 87103852 289249915 218505807 343179645 943892088 719096110 44173947 53838662 138650700 813875933 742400022 63957858 627463754 963793 991389433 221438245 263769702 518114058 795747031 57695190 519075755 802076346 696680881 111917876 94207158 888902343 296469599 42704366 328265273 583955021 338675982 433344554 894242170 436624154 369931709 260091391 130351825 291190833 45221567 859867642 902983213 705828424 140882235 243650973 381403024 850904649 318193583 242121179 797359502 97039829 100927593 55599518 235421651 585780156 505400845 539179586 726024602 160833670 966110226 749422615 756936246 614705901 264419652 882158306 680713613 84632673 991890500 114224220 786632855 241604483 988535299 912584370 34591716 812861098 550416971 246102275 217128979 181426785 205017654 868005861 768876124 684213222 55493300 596629473 524512007 246962605 971908362 606786034 250139635 893497820 455949134 988498954 214482704 426785996 496905452 192168846 990974181 941719950 447243556 537974741 218602763 250978404 324478345 357722796 899077807 980834115 995654275 435486421 884073236 162827352 530819534 122043011 239573519 11353728 733440249 891277791 469025929 983557070 33263592 274339719 804460289 917578761 969342291 872974602 148618247 223552811 967161157 868012909 880387266 513759715 662545821 455362473 301082987 199367700 887644304 659593514 411629008 575415636 399705893 481274449 984745426 54380910 784534967 146544883 731306983 431039200 795192951 40217305 559815576 434175325 346639336 953016894 795568132 929625677 324920673 302729812 337079900 288417608 930984847 92910527 788184165 890179231 257667312 828475672 563407097 425285587 756708440 934041451 128192134 236640796 731909488 524468921 517738381 29903587 67207474 205091447 710382372 930147912 899389551 858321421 931960693 216303005 479537737 104119641 865621565 733364712 186448057 645472553 793250126 708115045 817565962 646352324 646646029 518033154 848639580 977282402 343381748 131478242 540294690 559801519 872354321 432513243 173668516 818056524 489136006 466990583 352315262 480466510 467294983 681133559 407509023 639051453 210958687 459976139 238586955 616469526 964700395 628628507 750058650 230326474 108957725 97479105 610182390 808849085 936946170 750400077 798844193 615018440 237721245 218840704 697487661 531038263 375780786 604047569 606372866 407862603 187664635 734922731 173351899 241370041 441178831 639376685 589561033 878442025 998557334 382127912 619017519 116017592 509009742 342637605 788220484 83046518 239863817 552289949 290781332 854490601 285837933 24496574 80161407 378612616 596164914 87194093 863482553 827961153 360350375 901752639 948689096 189094388 880453934 636659710 27871113 236314102 579519932 254746922 723715500 323911567 708400730 378567413 378718259 927147388 232685222 903423302 167647991 639258989 657849427 260458039 654842659 410949768 55079332 959338135 9095607 948427749 217170933 933493865 749487622 155328783 428371506 37213027 147937336 226838153 607326558 762580336 545929161 559342663 96771854 459437871 642148872 63124017 263363563 394356337 647556249 957156516 390298676 517769407 113804788 357047536 902305337 54462417 441410531 197300699 42674913 300644376 339626504 999295516 425943077 643604277 94459989 742711521 155261843 149733503 682187665 856904265 147425484 903856002 638945242 473574891 24482310 763368571 874975518 408880462 344275082 800654557 196808608 43524206 580930871 857713102 432342650 758299198 462540541 666696362 308243989 293025568 978909539 251708799 417818802 385647470 661051650 725630352 938922212 662386165 59598344 682021331 603470356 231382645 563725494 473974643 632879868 868365858 480009186 378823758 112628268 887058470 853157238 895257975 413358729 892619805 663241455 209353141 958611401 965975191 202542559 172832771 370407672 676381593 971167851 133880846 455161589 895492380 353009101 340891322 732466421 640142733 260743379 166996637 693071616 126026828 423957598 308078723 687961711 302501933 287443429 114278888 228666484 576758265 117646831 358834561 83747474 527005422 790155932 64862131 460917025 371542843 424761373 991985434 907568588 208984709 150330168 348040452 847984146 98403429 539510725 862451188 332185544 498821352 682990899 234523167 630386069 454177037 65216259 359874546 566102388 110041931 180047692 104038026 402000182 972599816 348208438 721466 619034877 234688547 535437183 649727753 348847555 896861035 485283065 709394737 785982417 108786469 600972553 694923681 201017160 692442762 784680490 165795452 685048987 108318022 924694120 626908568 273854739 764113915 5297126 225584896 19878218 859603132 996050776 638794099 210494384 1281938 912465546 640289506 913279242 485235962 751515863 131813110 271019757 872226405 26051506 82614151 821114951 9085623 287666977 775282470 421750231 802884297 419510332 688424340 921850032 438638056 852007859 976057929 418245818 674034771 542054470 155407598 757002545 89919936 92587850 783181283 652270884 788363223 598368555 928055482 733204983 960985782 561381860 591802042 239495649 391649643 165800840 938623837 945331311 266698877 944511165 456940754 853953279 839238756 951005500 885335675 559607110 746123276 176948819 804798320 752005579 358863191 829988706 963432699 567478889 934823320 65152097 887267098 865398481 938156056 667986521 6507265 437482758 796748436 812374502 613705109 986788831 277380029 348437948 669916657 154426760 677184439 217449247 704601573 702265345 108525722 437303913 436854898 234266526 500863220 612452744 832208463 664247173 640549958 293709437 648617575 328743475 693106050 287177182 539742297 88323575 143232916 315607380 526148343 466432374 750217686 552567326 399022791 775731749 424637593 541506445 227127941 241149650 986095523 513131398 930298783 95807004 828066988 31501571 76525751 754866934 737728480 965054098 501613093 896590120 264268384 380935892 964547699 933367246 917794496 499327743 193004767 89731031 347715979 561242461 692287452 974824583 284396987 334196171 987856273 335872501 106294081 701617211 199030872 546800014 80546691 566362930 750901568 771585168 472411096 93437002 627489932 775370896 818975758 49202865 775812146 625534453 678684901 654766505 530311261 177593978 377384594 513888006 682183148 909322672 786430781 244434355 309702897 763281785 45028227 875051053 913297202 948727438 977448692 337788678 576476331 74072827 780371606 538742115 705836041 524070046 167572320 671758207 310352177 188098475 915442368 785969446 188732343 569554730 962960150 137232955 790743399 421188471 184896566 524148018 305475264 307260098 824608746 292562838 104817524 660414349 319944814 662896772 791933674 804787505 429817074 779819823 607329980 43724377 19145244 981998938 981451065 399587716 467602563 691022305 605715940 976934279 104788789 482237744 937129971 470995465 101438002 622109130 142363857 444342278 928435950 464116931 742693020 630585421 175403731 194627143 331677863 863667714 891301821 645484561 634451962 142997788 277238908 929650164 294064589 512997096 765502805 540743254 373999121 199236740 803057282 669983920 420724199 745441125 380869293 428347407 281436710 483069394 545770361 21477782 917722073 823098726 50026489 72649978 5439679 141540754 151166263 323778820 977524682 112969752 133684399 515904531 994444704 122383249 659331281 302549143 169750301 371858408 663935362 375576983 496370127 43563229 912892059 91576620 806989945 594167940 723354729 148667140 412404112 397455811 755066411 755980000 867173313 686223575 632383128 7902486 631040105 90084303 50285142 536746255 789381659 765230351 167330436 742753738 75042590 967553487 772185393 758894168 10780140 996689562 957615074 81862750 349082549 560928208 34112528 233286806 902965978 329695268 481904551 698244430 152941938 320240926 881534345 309870823 43188680 15314841 177266185 827103831 528164058 831595590 807982961 322523560 169595612 252411944 556717692 789211255 367622067 859910423 206186204 286543989 901802363 376685629 217175477 977268713 690936066 817058971 631650848 941175341 235784778 506749317 810665897 693726765 413190923 135737634 572459218 191621355 41390894 177502445 176233870 155238397 399446355 649613367 923384262 614802957 516974412 122890402 572859352 174838616 743373984 72608935 643570451 145694768 980078345 672028177 894141500 540562810 403907318 903825024 409652747 659702577 203854858 186511848 622798255 85466849 188834715 971811599 25239878 844812844 971342644 655205394 395465318 380396361 67971859 908804832 950911127 36179840 974090411 579359677 791856087 988115887 781980964 718046657 485188372 592507592 84324310 214643031 735160501 423772241 455243474 763348158 915711762 322354402 389244761 719918219 489264887 92927658 450338914 293418533 27981861 411681259 405627672 837647432 551067089 922489722 730570586 491739011 842554660 686484288 565954618 283083962 448188857 214589627 912894079 206411684 542036513 279148925 868464418 3108174 55528034 131718060 802584532 241070742 571738228 824671361 585024887 645166256 283327171 436561097 65947809 413119397 91974832 871194983 237047324 747601615 943090448 423021520 957703016 133231455 652278443 26628749 373335864 658593495 882021566 268990909 129974769 498753936 428810618 581528464 336880686 607895350 322743938 314078925 769134910 271110470 839508337 741030733 72387492 6721943 345683538 518472317 492359575 625287886 230456870 241284576 52830080 386689256 456550242 818869643 197420670 111414708 640562286 776012456 402693861 858223958 702967847 317358067 566937786 166011590 329866333 514846272 452584505 809995855 260713046 794119923 800548944 528920080 365124937 667514502 217453857 16606846 747518180 484973318 986665092 25768672 626799559 787716759 845097602 541958610 270757383 208468972 391412187 751408067 613042092 917492431 472062593 449764215 738456371 921240223 646159387 926505605 6807564 191491789 122314883 152448985 93144861 511562078 919936584 226158643 749564221 962792300 545311533 54335655 440576954 645862309 491068072 495722780 753428692 120882890 937351268 666891469 439728191 83757105 807069887 177259211 784313253 904818244 758283597 813655672 280963362 987412224 61173075 574805005 390603206 516051575 144866380 133638421 916495382 536248142 943635048 509054192 399675532 62369600 600156424 343266641 897142802 7913881 491998020 193179840 593792651 543871931 723557989 167956249 226715467 756784029 624916075 775831052 498016153 221386310 731710087 744161691 146338100 943266903 569639330 119700126 489140427 273813119 686086869 353893186 140424324 685299716 592426479 947763590 407800950 944085313 739425779 935476156 327895342 149412898 44029334 4807438 287952942 266750633 724797893 254869495 944321130 867043181 234961949 348264646 184030409 628344854 723022193 40611871 887896746 983003618 349755465 633233785 263764572 580513315 416731485 313781664 820066724 593135295 816382493 60377396 636871227 996143279 594418988 997625641 742495822 393287296 187296480 908189510 994195196 851658965 343413189 647758502 349898460 88872674 988940055 648293945 694721140 989695731 39306571 345680196 267825859 550038243 764605574 117808093 166549944 635204773 314060068 204874096 245614264 886929599 322172467 121347901 921218844 104176842 79563765 160712407 293088944 20911092 519171170 39756454 208020022 38732157 310139299 82747494 509765601 546901821 108305048 40177574 871649754 728001053 464594259 845702218 891885759 224959641 477830043 985820426 527827487 376099653 978053994 734262769 164626687 27941701 216976240 375463646 641573464 183642835 197712269 581765638 994731414 336164284 495073114 389688432 60932890 301156323 197513377 902515831 474512057 379734461 803736033 180731468 601915964 70981844 446736587 593446514 251166686 18413637 198393543 382024768 963294417 553391425 58212208 700191330 338474425 176944015 520729364 552816473 765587759 841757704 474535733 278534134 38148671 714429722 579537674 836706787 368568554 395705159 257488895 734221850 324587685 580523939 910764592 627552619 955221209 17325144 847721202 933933819 406500193 197301029 106284875 377857216 840488718 579143643 815914613 545708550 302751270 918946015 80902239 551587309 407769825 100304812 723150379 560577512 720777707 905268046 544014001 122881599 893329637 688218343 804683003 603718286 929074916 619402285 122868935 971787332 409535729 666748394 235101961 157439781 395091591 169102459 296292454 83183049 427082775 815244882 634683833 409753114 843882887 60839540 523430545 907824090 769973935 251615484 954854833 593531163 184652251 808154518 586300304 237617348 124657228 728239109 103699159 637576979 886723767 925823133 586431717 444848662 168650180 863106761 998078542 944896048 220442768 468363654 59986264 796320411 791524139 263897574 553928828 111342048 765564699 119901071 49383659 493290592 536526808 562681658 398053127 946801871 546896718 829380916 343918821 607593651 540163166 675415008 78086866 614483177 560109404 424512562 481522123 933073953 682190994 17988661 893223427 446021469 578052796 284294535 314430305 81761398 842256267 361154520 573111295 659541655 14050850 871658863 59295404 876171456 680038300 910597540 398447979 266905668 583384452 976860519 238609394 641038155 871281242 443600824 982531116 810978129 441795605 668617772 184193719 433192869 579332764 68372335 140979559 154370539 381048396 843144124 613298113 612559003 597754485 370934119 281005441 538648447 616042461 288243540 524704020 538059321 785731387 856067453 658503199 849264314 733589437 593956719 4323830 368402892 139341187 638247117 135912997 512183178 627177505 429884876 502591211 991669731 738077985 451470774 951805370 731167514 791395967 402217319 440905145 535483976 775011115 779035603 875441218 708059609 3427722 525827710 819465572 104498699 107918326 559639042 732709474 18082162 64148793 632650893 66983473 989649783 491572502 844221024 804113406 184142036 741959872 867958865 640684454 551542297 448546657 607133770 976385597 540198443 154091157 554809287 503228552 622554816 596166380 402731100 350866306 966400739 9916011 504744493 153671387 893091702 263725835 925120116 517712244 273014187 318903609 807980543 387910116 596886411 466755669 368262576 563678454 568454255 840128307 690026747 513322025 735995785 308412061 416985195 362965039 786194524 709302734 80504349 442549102 340608320 306197240 483788355 430104706 803159519 922517951 950266786 696916153 932540347 590563773 915333140 540594837 142373030 62949628 851625223 538072142 395939143 311200383 892569085 738406477 505423260 355528377 499367690 985350578 889246579 200295955 97308505 756823760 769819887 76713835 315500455 443020204 709368585 524293776 944793286 535898241 565755917 147948231 117330972 656376894 251936281 863951177 211038753 5802246 676597665 992381378 810062565 141106863 328066542 135323860 842450055 999234884 382402970 390320274 690773951 266502531 952000789 501753605 93438549 573631328 886855971 152672939 531971495 310186112 398750044 396671731 335442215 217083583 213266091 377697474 652953307 910181547 949511120 254576369 716216284 607968774 616009694 332639948 915202263 578171463 758837437 672833172 538848911 479633690 488134569 571041790 219710553 784751836 906378161 94301363 847004830 902518559 996781113 708126926 583777116 971996972 824035192 783142753 958703270 655841404 217145083 110717168 690348832 510616382 821195296 642970099 107914371 503526613 643541660 204609369 820783647 886219863 137501942 319192832 806738260 436363535 625899273 872770622 886094360 582707963 200635014 97058907 460746100 999971150 753073520 262558484 321089031 903002351 262759582 360218906 224161409 69772537 809369148 538587281 910798889 777268025 525771850 484681105 255053144 73825459 643490587 141962409 372974588 452309534 781385688 89370967 737158166 200063075 457310971 310381201 339675196 865259298 370944724 181288255 280746520 724090156 191442952 276991678 790771430 519925002 3229196 41779038 807318522 282411893 630986670 57657061 32772408 810775004 967288717 925498123 534178714 156444385 678860956 971876348 703051182 482231004 541286051 692458201 981062165 369589334 390854334 406868535 429204998 255880847 144039900 583940254 695930312 471689722 550033217 685647627 310850875 381683388 518644996 173170542 983356496 806236464 531918482 908953389 25042828 220206181 950112041 532832671 908996234 344019102 564667486 898212498 547261046 359177169 310481048 278799558 641516690 404373033 500549010 99738224 600695988 248761477 385592541 296551352 340977606 768325878 838071899 756325179 796538949 864869701 639721157 206172809 617112259 693083498 130636838 16033960 479204966 562384406 896975966 293449359 444688230 299019562 385504673 388257196 734505363 597753406 119772917 999106655 356932812 77574939 14966455 994197117 944091017 711258177 311929111 635585997 834947922 125560162 350561431 201447054 739185989 323102181 102723728 788545008 555586708 897062756 760696236 29823126 503723781 828524590 504654957 222219034 577860976 374657990 634683301 148334729 761386565 208672098 640471804 52582115 933562371 848789100 930382702 176152476 525244354 465297157 713796042 404219934 844997034 655976573 431861044 767574085 632338810 423234012 14043555 898762977 559173890 875196509 658004580 980570679 261257384 55007725 470432405 939239553 671533031 808543152 50868139 101545577 319673292 35714685 861842412 380711826 948755320 712201565 484732150 418088207 362683040 865143312 98165814 823927274 929554448 499910535 55767922 877640095 260724771 494231659 162013504 599929502 453429581 614694293 438542732 153362636 407451282 163732116 768452630 12241410 739448844 42595882 2473714 800558221 40673128 741993167 557936390 90190764 808584297 404487469 50664591 783575062 709879652 988317858 246752668 915915889 181430723 681206209 369447057 419917276 111246467 53797073 431773350 761433190 185942709 825033804 125348454 41072532 224221184 587950433 356607537 385471711 700962077 208658035 668977338 157075508 199554138 216821145 613719433 301596274 725016088 478028060 680295289 557761519 496305997 133533691 552750907 857842932 657916931 858419818 532328402 679193148 672509911 591412302 986925845 785745273 672592507 738052035 966392369 927917519 911816756 28267926 717110820 946270807 756154972 407737804 961022531 415941278 393440225 796071449 688961205 758208291 386065348 852595818 777722613 461400540 440380828 312605532 299446356 373938 586713105 660551362 706253428 583115776 275466593 775893539 254754254 960683288 318712285 206635321 1788461 178047166 868834925 752767091 59928369 653851051 454827272 395069811 776159949 385669387 35118397 469596049 418720202 358008063 25469614 735815767 218649666 557239580 206100367 956874244 827629605 712910570 652309803 529245193 263767479 201598055 972332127 843433358 867138064 602298497 276918301 105289198 875644827 905577887 388323819 179161910 216178327 991394329 877570658 404105898 909293977 360716987 848252335 86520641 721395208 313888071 198284308 272760356 482675360 573120240 134540392 94567731 398116848 611651295 186853523 412753792 593259228 93198001 472744468 499643345 851865883 191119095 962248315 496612130 814845881 676259764 542793710 698579745 677642647 969188579 968092584 952698545 938141158 648487151 633462390 932947047 534917808 585615673 201877304 117216528 783460175 699295382 756325222 677904937 784291572 954583502 220306824 139327077 231937825 895520286 948254653 62337067 738357295 299904439 170791477 608862230 764490185 398050365 710995895 7937395 466066287 177204040 210834460 896668870 293964021 501258982 910269650 122254917 895226625 679685655 785246554 176796763 61818256 555690320 128127433 905061927 290393713 854481145 48240459 421206522 642352584 465501167 782590620 839028189 252432013 860049410 298353293 292260361 967151371 823330424 897099909 84972396 670718817 213358216 188353789 95903787 576676868 651609056 613266947 901937690 56299067 70739744 180418488 8236870 323484834 104937053 659686098 61895276 739063720 958320031 425711387 67727231 614111248 235713891 801276400 665603110 768832372 835041561 670587074 344863803 718995645 544031655 413240728 519112781 969386668 760192996 547884428 582403103 50708053 582104350 487916361 294569767 574650783 622098837 81744788 33443599 984415173 883857661 691046848 54522424 253410263 396940544 620435512 739533874 644510010 849072058 912823033 222060614 290415652 125620795 216026132 816113644 712821281 338971401 337894961 317183317 565456017 804650651 324622599 202275810 560584487 239086559 382680037 995196074 89210987 522689204 837588013 578953976 937685561 632075377 339162067 630365387 70710336 757923933 531350498 121012565 623168645 825165364 597163767 726952829 945865693 979901608 581082052 541197405 830327414 764052958 768780686 249338308 143071310 42856941 997159088 153182388 250964922 146596707 139236118 741432805 134955489 411101119 839064771 777433665 148570431 478308856 355035211 626307942 899348515 545355508 936720729 505181735 725154608 555320338 412164907 118444811 108084192 76895649 253812497 509986509 149516028 104597862 812422385 969317082 190182693 951660314 77112774 441323990 522894671 852305642 685158428 290691095 779064129 253769205 302284950 711690280 432501270 434303186 694935657 439517512 281781438 804393991 28790750 635892712 750942846 248840339 317254868 143757873 572834156 832079973 202576699 442069116 726416628 805258978 54577562 306149847 883795541 777324387 594210185 624980103 918645029 454516660 208555576 146116224 48589257 288542871 86742247 822640623 233025534 335864895 789114732 110796209 432338771 968505558 211154608 768176089 875821996 597834999 225124146 179871790 846456257 771986996 446019970 744115882 813989788 177093521 221695687 993929724 786931999 852326407 910090042 864444935 627232380 579284738 966327465 998103649 926970555 233097956 382037237 996084437 502813239 706188160 935060 814984673 144933153 745861791 807253263 979253561 723506684 203434622 720356741 247652930 9963039 638196302 386217767 641708696 427831350 158594739 345833402 952974472 64999106 214654534 449529368 812295574 160768660 316865555 218064047 426137337 121859926 987766811 998091776 267145242 313797122 292849619 16709921 984983321 590190952 311249060 854731324 265035592 796475565 960715369 340263694 873226670 346911687 127688180 864040808 211134341 614784002 297262985 916012978 585432251 282785405 38198112 37905251 92975733 124202670 58748455 830331786 39313288 166190298 110297471 959987528 772364031 394391198 390908026 695316052 351420568 879374185 421156388 363198838 621556038 898777855 380359671 564380940 822201264 991477751 112552548 271759752 929697457 699573310 889957713 993429487 951889366 294229395 188780182 278707803 772454371 265584648 624518783 644738683 963044686 931703431 987494989 373051918 602376898 275338571 454326965 102194539 316452254 495747683 662924383 837721597 474094708 371439154 963037288 670174399 510304650 618086386 208892128 683725508 609604444 837842476 300106061 471882161 120315672 636263233 188130087 736120897 378036000 737832421 28981850 871606464 66063756 134058910 704982983 955319185 15837349 765171529 225029570 343900585 174805355 352919446 943747221 97897745 371141137 76582791 800969980 327535463 602928251 947274485 712108200 333850205 967858375 43136267 22739644 874800697 588818881 513210057 335749715 660842068 413208429 742830466 803070200 945541531 295877505 856906078 40482092 264480017 496063976 162336729 128300771 112204875 891617600 607653442 883539463 825448946 192977757 696100413 372922100 229427781 291083716 927346753 226674938 56317844 289276464 344046107 862504159 669016262 994947345 689565034 417701722 439010772 58384904 832978976 31834009 516573260 365543021 802695943 991289788 121269711 585642441 185909818 822451543 174855314 753128540 262955431 660663796 658682337 54132632 511803284 284964239 800861848 580916388 888918295 399848728 663030184 271770330 467405981 762474741 927107736 712288329 690413156 88179069 658184705 128955955 325715712 780789629 760979473 240372624 870092762 3780279 508311817 702332810 971700140 669536351 417728447 770605055 959178502 470187932 694892573 893408258 428707533 811166733 40156064 884211290 442147510 257981505 889898969 559202306 720052175 73162813 836104944 980380327 584250103 943169531 695467036 606706477 655660385 922408421 159416876 493590571 646413589 635564382 326131201 279182954 723061103 513707321 226518289 409979241 863657374 992685632 805363174 946686940 364701990 764524462 473170589 592329769 466472543 873952693 358201192 122373354 720839923 251170298 446313228 626953581 382851172 942695444 438807396 938023991 132924548 683588624 465464796 103068541 653921274 496047344 302541814 155307433 773272260 153437991 979623369 416383451 127063728 503299358 361939581 985640037 795984353 856274867 254271696 629057870 821949776 624535733 151476116 871713488 634609993 302040425 772963886 816396763 663804906 874961672 685603097 806056080 65678759 816819518 754622049 548166342 557840841 676886189 809530921 555713672 879623914 549524840 658525477 183430804 441921914 411337592 302252320 825797342 453746749 453230939 904545144 947102475 700234955 112127104 662401437 497155831 937344015 445773260 815905174 273060143 271374537 781607960 763077755 982701943 799254028 388393648 13530364 275348806 247846336 638320597 121841112 278110789 321950497 176187708 116505703 382818004 654732606 209050254 12058385 631533701 636403067 277255654 414266837 291553951 154546191 732143190 588174531 557169820 711002247 558170210 586824834 810070187 364160065 78068867 527361227 30860847 772431602 832966565 572810475 400024126 545014561 620048297 248917573 61093922 771586729 970255332 793577166 44663772 929486139 235397022 879476624 127664796 915931354 365677716 291146535 172725066 11959901 575167351 564380743 843179777 308643824 282566251 442603060 110934926 529037715 94543241 939566408 687612405 87733145 303083869 702310768 122452716 814500651 466684776 874421935 37300575 674324163 722048671 145488282 70507242 699055281 259946474 252644315 474786402 149995929 468267174 601040047 222560844 312376563 864185636 538807656 187806564 968332682 614892327 59195371 490061080 530842110 939931754 903694642 90122251 241998146 123262232 973147083 650124946 156985118 125117010 741962839 731312442 245009582 544592045 343592460 888517952 49247969 282795697 594431284 871353623 578773243 396009307 112596396 223829734 576655123 691927707 540880742 420727047 714479254 730984407 473030887 314002058 360915650 693612135 97896905 229618608 176648492 219350550 752916282 722742896 456403002 622718887 524700796 746907893 985181610 809241934 953629539 783612445 125454601 607481651 604015322 68662780 651179581 928180723 578710366 546367575 4838396 896787742 500807041 411011882 362229842 397801914 256471656 161496355 475802911 304640702 53119566 166753828 758487703 483739032 868728575 925081540 526201792 121500840 827239517 621245903 992218359 604353987 621419743 320961730 556483692 621318833 203158541 953348688 782427809 872181166 823930117 721014239 169415918 977021933 782789369 498440459 256395776 688651280 254586799 644236835 706601046 552712370 153690624 581097127 845028547 678050525 886400601 526519760 927493359 471196820 263719741 141836040 38288854 702544203 625115584 190727277 355627591 132532841 771374605 696602963 339655014 823879117 707728866 185887935 929126186 366190662 591091983 444841452 32708832 255205402 523503099 73377994 278002086 572560768 136575007 181428346 10551537 394309414 994027144 504959443 934823687 732225195 610959961 844883936 873475462 837980454 562402119 953649248 495747547 66245021 932753947 886822981 90336204 104813967 696405812 225198134 966451183 161461611 766589698 426722572 781878832 18626326 103330444 89891928 56912463 845663337 166388715 804495068 80243807 702448561 296237261 590326542 449840969 144866350 960978163 197581208 29339975 838449812 867484851 628472794 214379625 922729356 16189302 179892839 296984851 120007732 435874363 200900483 122028157 179399835 173251603 830842796 44945202 170718278 257504931 414541326 241264017 49115822 359642277 681588493 267829327 431433664 451619430 33305791 811297012 312067163 984092746 887961967 683360857 463964885 666727748 908472860 433051440 100989303 61853022 315227895 521405052 351519484 889396791 921157097 246693396 840039190 710710656 556872458 747757349 995211497 209563006 129928491 519761581 976541070 830247820 416177229 408715265 262099602 618670741 270408744 189577031 333424756 266451358 489560741 751441405 823254314 942815290 849802852 89501552 213296797 467317012 2277175 98712390 82020648 164669545 822283429 811279349 852389917 754087051 348673128 510875465 33721408 547290719 180690159 374729442 178474570 673535968 756064733 847844019 847987559 967579802 315781768 201768837 477890488 703292975 748256379 617666930 381694162 794430678 496578548 581097066 649509438 957878743 426467431 71747249 771301367 872097296 532140793 38562655 862288623 497676403 685385989 850398431 922095498 499724421 559143067 697113456 557560864 831274721 800600316 653257639 282982784 110669235 72560927 894620907 682629992 241404222 796194352 356974072 63249166 999939158 669261835 590584157 920229274 123608295 129680325 175196158 371286697 440890476 41539108 792965522 24314060 559579256 844857890 401386277 322276359 557320497 525574510 154717592 788399698 286300624 458287338 172831260 57345563 804591906 299551534 796790459 821686978 897580042 748660996 744812239 238822172 608184829 621377002 586745225 526631409 383649156 872034963 110161515 192442494 654195901 98304358 847183822 484830964 395298267 207807741 893629789 591717111 827902882 300356776 596591768 393604127 318021099 309318888 643727187 740482170 20416038 541137396 195262516 53593864 780984275 158746167 349651768 617581118 350924552 946005199 529026094 809204356 494645486 207740944 953411386 78705335 258655300 98777087 817077588 187114664 717360603 32310488 26766023 647460762 496545560 248086409 106719154 888261320 315599989 566642228 74840714 871585757 526823423 201526961 992665750 335294841 760290777 797099273 2418802 886114227 914556600 448521212 147653773 21548690 133597286 391182716 541022122 918049939 44281408 386363696 404198243 416153382 128567224 482578162 269191329 779273521 282442451 519990610 803406373 891254667 369097387 499809296 294939395 648432514 309388782 742516389 485641506 310870358 789161821 714602171 949874621 8316091 402262606 823510704 714541028 334885723 792252203 792485400 469069052 883696466 225326577 358168120 149303611 33420208 77322930 533605004 678949933 388081915 498381331 317900609 832099634 384203690 553591759 81491899 654620669 276908715 733168434 683307793 173957910 583832542 385369502 635273356 553627737 811203223 120355593 530519596 17892725 126989344 930313341 344712995 215440494 988979764 334264471 808732247 300971036 275972486 720462857 420558052 688471210 941317688 557321753 46758552 370870295 538362980 839387935 260082806 506223800 949636247 488649483 299334964 271025076 47547472 257266652 927943612 257618823 919036550 226316330 413112751 382888576 750473247 197937053 303222237 552100162 83297402 108240243 911025358 233474887 706800614 418809086 576560956 653704536 304302120 482604580 738878103 377971734 872639738 725333469 356432768 955495541 401595014 372892857 920061518 788394555 190669295 138746712 346848140 548961414 218013640 389499119 469182072 875866691 528261786 701026250 549142918 61903544 968293731 527657412 501438684 809818106 178733586 294485712 933847763 969975160 25822220 929149300 525519484 727486062 176896170 790794569 492219928 990182515 27947449 510867836 244854687 49287148 398942712 299110224 466707259 843467414 693368733 363852954 148811722 676325888 515851985 803118659 112510303 434255886 251596335 777055946 494941120 61438328 945075017 147084992 521390314 375859784 796044579 42857801 887306121 651369568 779039926 463652513 915890561 817731570 745172334 676821653 459407976 919822854 130475949 934820614 208185353 682709239 225802566 574199402 885971170 305210102 952038914 380136011 131070118 598976646 225272350 635018693 249907901 44770558 548193483 60690444 559956671 314301706 290393773 307967716 815769341 369517866 453263453 370703143 176731384 933010994 683760871 675901251 267191784 756714953 356742221 623018425 958422326 74799850 640083970 934213023 270738178 136109669 671983471 197143839 854272670 75297119 768385649 404304374 638600976 186203086 864768473 159755766 295959956 661614846 218019819 126551940 677800472 763513870 992645855 721814042 94971839 47451764 188549476 980072134 435523423 354076789 774003992 893765290 231172610 279883182 802472209 486926202 660825961 620533134 326235223 904284673 860893828 471488473 570128487 996242588 366808571 298927398 525569458 131774909 90491560 377540962 971631643 744818793 802323995 667724 106848125 141185723 116344597 906103286 77249571 659004511 692337677 405735242 588102478 403653911 712908718 202747523 907046323 173001530 534294359 532761008 795306490 227643440 893704089 194216756 778081600 836765943 149766845 522966600 245125014 418214561 699386684 684989304 594005119 673211604 25681476 77603618 595193718 229871688 617825338 45324282 916165734 427563853 282800947 866002825 386612784 592405058 817518969 2346665 604759849 451654687 35686924 470502923 248407961 129986796 156923678 857173681 876670524 751353928 516292758 576121460 5280453 491037667 536101518 841217151 599266903 832360963 772723157 190002642 23824394 872495107 700878446 127470528 153083244 130480336 124897807 129693297 429214973 647988587 367534755 29158753 719417521 268377961 719225545 89207263 701740658 302621046 925833298 851232655 329400476 558909389 144992966 140215528 26634879 754693826 51813856 620068279 249432801 179279672 641974798 205393306 589637753 720822059 152521458 551855238 562311285 595794472 86140899 725518658 258020597 166233040 168410221 940289002 891349389 220608601 939179213 53453932 629508551 289980172 594451062 412923150 647725983 457765064 158296206 331693286 557096453 197444222 119423601 789692513 280175455 182308275 2235949 138335677 21614084 498971905 189750021 954242958 993731266 343697557 440149999 716644157 459767640 562163379 900363798 7111044 334057725 116893230 43794264 521042163 850316503 876929776 714790600 244294766 308671109 351706232 233603885 552157613 731233942 743200343 767366530 275716027 312042768 576583858 567202676 957962104 480017898 497534659 59357671 819316247 808183185 95301976 158424945 574573472 200831847 445187411 67459293 14349167 2435647 256148008 225436586 408932531 233699043 894286946 764633738 121618160 663411854 372163614 647544291 84610174 26207091 713322893 359644753 821842695 637096756 395781495 792614690 334027789 217871723 939652531 352713432 948537185 829596708 36152240 600133547 894252973 462751841 883703024 664389125 228450540 734491285 826535815 524108548 323551468 802538794 899585184 162687739 415214035 694609147 611288824 256962033 104276119 115092954 441795425 383867424 189175685 184802571 726964033 240263799 8159931 994777031 594135312 125607193 228382381 632140731 240642270 685773788 278501028 129517446 461216458 200870603 631417658 534045502 691195276 393168037 910199007 497453804 732816108 479562075 238380631 820437259 415457352 792950422 414043450 257426189 959687954 166988846 147050099 383095254 966494544 361105588 540527298 914357311 386801179 812618729 993650490 247095188 330528800 611062597 812371907 691906070 876587042 447375985 79593881 308415867 156513141 572684237 268733899 306329449 728383109 753918187 627066301 812204030 70142285 887030033 25640358 33527371 413273057 362356668 166773011 360490196 345308900 708018456 311694178 521404434 908150802 378595464 314835528 268625137 48472760 295983396 457685580 844871506 434311735 905745462 557077833 600962698 12150405 379771324 424104688 642741217 405523115 354252010 658051907 241653524 821044552 50631845 50842908 149008596 284197132 851344392 282294948 75891013 580717886 464618211 417526748 81019520 895434295 710870583 816688919 177700625 917171685 498196155 798258046 796877945 424230473 44816730 819002251 33186733 255012857 297521075 996331918 135330197 413912734 119074456 894970923 455825806 552941431 835955855 665604314 84748777 232724949 775145044 874947174 111253610 775593885 193724757 518291311 425093833 540874185 191350324 950529768 411719476 532996839 122885961 74073753 172800203 408727960 789732638 921221022 137310243 164541202 810082033 319719654 46896068 555208607 143378741 375443381 688722091 565557532 694330897 583665698 151177417 721951099 161018335 703438234 731485057 645044545 254091182 142119771 25354286 766749705 149603265 998701306 708009115 630053119 540143118 125079773 137363337 575325541 879581376 907889858 303956268 700969233 156398262 45054006 23102382 648819437 899238913 222789407 240134571 48443254 279284842 404524595 273817268 332868414 960109546 562948990 256498124 186909547 131273519 284329696 862438894 40088629 924847133 395701901 409670788 88505707 400393291 252401547 603554289 995263215 884880258 625576503 694563849 915364149 850739266 842724032 116567188 423285192 62947389 527721899 302888398 735722438 303398106 541412941 96388842 682040415 932512691 136766292 882495114 662287705 642858263 841050943 296478537 367847311 232559753 133050081 192920625 223698285 112064831 236564962 366605637 320766838 70797476 741959998 3172857 119194815 781114070 50109380 105920948 581500273 219522856 185118360 762351189 981449546 531343521 275804593 37219499 802059805 255442044 393549404 467987708 345867853 934581926 193482679 356781951 745838934 838107716 150324535 138837730 364832325 501250602 12817698 310900932 562768442 806006628 694620950 840663100 168729837 829836209 713970304 905861712 87095079 960714243 841103654 962803839 249551172 202573568 69232542 557154104 19438008 743932804 325371860 579251808 212994951 746429725 947031432 533470673 634775242 383130766 755092173 779773397 834054961 915461196 940016780 660562863 84647036 548538116 558491391 614649874 533683457 961393683 189014582 953996712 85941290 403614220 988637845 372269964 143994099 113232182 717831508 556120528 669813872 303244299 384770814 508049912 513144389 736861115 924127218 441078141 27749164 647598759 464683749 617315916 954785651 261719782 511213918 60716356 109082491 16018627 841889337 859496124 267951674 289230652 844650021 711894778 720709562 914749061 511446054 739370173 423271320 949970051 904895507 300883891 905934213 924502354 901595417 136597764 612756425 485573568 934993974 800597958 568044475 253566415 800036031 128029574 306189386 521887031 411928794 552691397 846476407 281482721 352462341 217130360 182812120 443521645 943455629 908210056 999035159 357825709 913399064 611421008 561758833 61826088 700095772 366357538 243537464 383249048 376338277 474425026 728997714 883118188 994636691 357380073 870915511 750373703 202782617 340165315 490762998 139950207 211152448 80414578 302798513 188871583 867579810 410333065 217181468 820835045 243380143 248223377 571924354 737987524 997123243 923949191 402956992 618073444 926143918 48737884 747767240 348676893 342313250 499241076 197724192 786862848 758861641 389848872 170460256 589267022 44229301 736971076 629548728 492158974 695005902 441511049 807528807 737786683 582679632 264224812 766583621 319796196 980767178 256557397 522085946 524876555 339527711 406705057 826288580 5299574 279576841 291752353 415137142 177694753 932246929 149050201 756506995 61413562 811172504 160981697 52971767 518629924 32344402 692078151 25166542 135115509 966302662 257988428 550637531 184439287 19388239 625325730 222732179 33954986 778065182 968023316 273386111 401443265 194585269 188239839 795342526 585730977 366301293 939506993 210820224 244701413 746481649 931314865 832177292 715439324 83727553 56744438 597342395 582705161 21282992 536730382 590750330 590459555 549517415 886668537 376874828 462555411 959247840 582494764 428140870 32638072 915794667 130693391 167678354 888001318 804053420 809042047 571116 809890082 952539931 83343949 698266664 664855208 300568962 641810876 935937706 645619878 668780291 364169735 879725292 633429822 32412688 907185881 733519612 402545224 590383601 720989907 812650235 582305229 433795906 110603785 90063775 405136013 506605681 129956485 940092081 944306810 375570500 223510723 645705104 118637883 806330962 104074803 663415213 374069418 841639301 233493947 424237325 159435094 295988894 968094770 398361802 737716482 899031729 100888294 614390674 233156388 540252580 236119575 529203750 432653671 440146613 476483962 155271645 259082281 346635505 62316726 165701406 564993278 882388926 83958250 66350057 775926571 266655058 763653669 608743503 832699947 806539577 670034925 203913462 734175790 432798931 985521593 712923030 409384085 848709587 938487927 145140094 245783160 490371265 655631879 465001487 80254752 158253945 838298045 474657600 876725901 254372266 100259555 14717977 341868016 402715992 363263285 402809656 297511986 266310491 313687907 372341583 860281452 694555102 99310482 678073763 179375725 76302048 306586587 879881359 492781880 506237110 780743883 134424063 403420034 302457991 636262882 949637622 355781688 861425359 371582484 731796744 843471607 727080413 410282059 299638496 47915666 399421524 898576866 670923963 911298448 386420654 760955179 16964588 883960492 33522356 582183403 782356566 205409107 620409863 389208025 901438709 948503593 951422619 900645666 979430485 752807300 526889526 235581672 80527129 429093872 392400886 652599230 133778038 502132393 500203720 63391790 334991541 445741092 857802225 263753523 336982964 132781702 787424649 165440191 549141350 313458219 698767611 62023222 985039950 56859169 790543239 554796273 826147848 106406570 578324161 784738493 566639041 339277246 628793103 525948505 976968890 294644614 865377838 239632379 779336392 937751778 868153261 711509452 409613527 301220324 831636848 827676775 177950563 740013139 735408686 707287902 143864573 719594537 914483700 322176437 547473100 110622742 77527201 108613733 387366665 773406714 246436456 550434010 358475650 403629934 246389841 171702646 261392408 596426300 710317239 537201676 458757441 732848867 53297099 820048485 405655174 556819732 386018320 287421119 730735878 518367799 287837405 349716552 92389361 249033703 961026782 735835047 820658959 318865522 191418515 429389684 845063479 694986586 825373904 492594875 14168280 508480982 201066299 74752894 414343283 385131857 286096594 451787056 898492702 480416746 913600098 73451322 97013507 121075955 518210321 501519225 828830175 716370291 313416404 264202942 537911171 767544484 583345913 943602509 534305367 688128629 5501087 540415839 977984466 587675144 116480313 755142560 452300547 689948213 407410960 590520753 774868235 556248070 935360446 540465319 410702240 169772345 284500147 126907274 753275276 890665665 25164211 77350871 45552940 975469894 94357845 460256767 903338738 951158688 337035142 113462758 650203620 426697567 150199812 644490596 960722970 422192966 922056420 8690375 205320003 167908812 296363789 663430479 815666465 66990490 411778747 472589745 691653128 944814095 187610620 628936853 227534691 490177471 298733366 214954264 510593072 430028015 741245343 990066507 266614655 807864347 542395844 548437170 294553846 558388849 966732803 549171397 12098896 844290132 502677264 251425138 677023961 974028761 251922548 168494489 159425012 371384141 609185033 953368463 267292053 795383213 657977215 950515100 715217864 775043372 79598299 60318845 428570152 502413233 639531251 248042466 68392552 143565654 119501043 200850673 601686734 959958762 902461402 741945537 950147251 108697200 50459902 416831200 143354628 851546014 908650116 771418062 722921668 926140511 370280425 174999936 627281288 249243985 246241404 379993565 97084921 415542344 647483361 527489348 76063830 358827209 239202959 75427589 697971951 990385296 433184851 520729059 587643051 251162634 962592459 705522328 106845059 519545052 661887468 924793937 439532292 817909850 902930045 660668206 78035665 209647632 20839578 905057476 369578783 904045117 287595057 551231130 968920888 234925651 13767048 12215983 819112440 353080185 117440949 475043826 875263059 686659849 997945636 600669897 51753933 470918930 31100438 8954251 778545920 489958103 850859804 919041286 869853210 780140877 1148832 166838009 571749724 899741089 796969052 978294939 469154204 180171184 183404512 192299283 328325828 133576846 2625808 330662909 86141521 458316032 757740964 526376939 481980884 795141633 392844455 587060962 721974132 397015873 853618425 676268761 434167915 852312993 562187725 598595134 250661253 52281272 844926251 30423152 582606756 96664145 830048879 955383877 873304638 675847403 579167944 951627910 445005789 911630392 518072250 381225071 225175198 665598622 731570077 539008048 479317683 957935801 41723419 821938542 666562785 113202647 356853942 283614658 957139203 941932666 969066815 294925625 750236805 695369434 256154208 185992402 344238313 605392736 254922772 928381187 165372997 456586028 267706409 544106549 467728835 413671057 960736453 998883651 821440033 195984787 503715038 793854463 917499951 764994160 271822016 944175533 27844947 723898388 411827851 607798150 792714760 558150819 245831347 497891127 596130906 485625843 830977662 498775391 822500972 984751631 488300682 20066324 910285554 159625653 706390340 792363359 993623479 336289497 774808433 72277435 60157977 452893984 804351657 451341978 145415560 214937190 65375703 624286944 969600010 530799928 29773243 332945766 854284474 238419291 861971816 814781816 955724356 538850883 469004486 980605784 674572139 764349341 902782737 460275385 17277828 208949701 799207256 709601604 596187896 917527120 439691007 567383318 803409862 915113092 727854141 362554688 378472958 21345755 803682975 688212550 741941831 843106948 522770307 529715361 927999578 243473378 229246622 413856573 897858948 263547659 473755255 991688699 944710952 158056778 90198761 279283248 360817467 733831325 876774309 519171364 639847622 464527415 566206637 735584917 484117096 539901695 640572122 582404913 914253522 335411728 641777240 636101919 182490440 327973687 76571941 82054775 676990502 311413624 490118037 984892869 809104217 110962058 212034257 779243658 550023906 436710486 880307539 53906363 594065751 683816828 190970219 973627456 801939554 912819661 454084029 631771510 66300736 509266386 25342913 640556462 535564610 166708804 963551810 705225900 915932239 822240402 45918688 310130728 261126497 448826206 490576270 22436432 610573059 142241024 148101908 381292100 965681626 190855681 109717902 431559833 319064857 158842273 845239787 628598231 82201867 214771283 814250862 841544955 385279885 818960444 973177905 214881782 609487504 585817527 706723741 924469291 861216924 672340947 436367092 513691893 902548296 379353299 238344135 690834975 928041923 44820141 53197440 954686058 94523726 713993612 100361434 121619466 325327808 52393039 505246307 446266665 650470401 743103239 833408257 111404131 648157327 530339708 123290986 142681929 777866236 634995625 748049834 448108766 856246125 245041724 721755553 948710941 93856029 584591639 825993091 788419697 909245144 138267090 471483990 308613178 303595136 41153590 447995511 328481615 950439052 12225219 668445205 310866807 547025540 553700139 923436981 203987695 772511622 383463125 464815276 772950247 328728260 605230939 897171880 198733829 338914308 593948940 483307304 251749600 494760478 921987947 143444991 311546502 549763458 930895790 442065365 893356278 988239535 830190399 455486886 608245159 277974205 504134719 860117057 355892224 178081748 465538558 681417929 409260509 38132147 623820164 736604984 124322833 144082986 4151308 813021399 502017246 182411680 519511939 933635272 706430078 769988494 72790285 436211836 570026910 649517313 981891969 146306621 822810590 124142364 346129384 508236710 362642514 303168404 497293313 952649253 264459268 876935474 638046400 282312576 414819439 590517333 621456587 589309517 431387141 865247085 550160636 112143992 419605675 336482177 75243234 711613377 16107064 826090666 923722047 694310459 79275257 303461526 111126667 925437135 634553392 25469190 798605680 369771447 190140048 411627599 132128076 106384643 333180611 136119773 256028850 184686359 21049828 932322476 836900841 184626475 681952773 179912141 901733739 919340490 373345963 707028199 788009063 704361299 113578317 408606387 538590528 803449467 792344024 619463551 441769997 756420809 276209966 87322028 639871255 148608793 113521570 854139953 681930077 274797594 155480445 111312661 36231443 679157456 952685437 552500216 715675166 773466386 399581521 344195723 787119770 643366413 108780574 568678675 29569364 373304511 270900477 933944042 532429393 499777661 651914618 777225470 496512837 805266797 590137878 434804817 997750301 14458125 568237767 266057335 235796854 54345386 546269043 954414107 803193123 293127658 298579576 856433530 528579754 148475203 760248615 433557734 987934152 70193281 513418820 323270468 790651625 206763844 884998792 148304526 392301488 496970111 201653023 396968019 743636853 917962747 181682219 979141682 413218754 658617553 154534207 871240290 208618198 584646644 86058980 528068653 130489378 499518373 642333207 686003313 686813390 193579261 825608393 700045342 918710325 529191526 86701150 952199354 374571620 834513954 918601519 702251744 344972447 469596355 789006344 73808060 23467485 419044785 872227498 202309777 419202887 440709032 683659338 92436787 180674237 784297271 929035280 997558413 256741713 511984961 28735897 900527133 272227273 971631488 773247350 48267635 195288353 491973373 897469355 756206774 814581511 631622297 183899697 520694046 884696158 10881416 175052148 335758203 844665787 212047313 872964309 578033837 477609963 619498191 948068137 839580201 512175211 125406643 463776056 355799675 796769774 757431295 3396671 665124286 397634779 947356684 285718126 547521574 415943117 373699461 273582955 596229238 612679697 507295210 114600142 883036298 194671659 366295822 534212259 132915151 940842577 272561562 923391979 862000582 282741486 419795336 275605274 335301253 992446241 654280360 265040538 525336373 937505083 347637022 798837063 597488277 991362373 191602146 791336690 898109813 882528632 861055294 99545822 199018812 342853314 813341012 324970566 121267299 475377480 945099926 373245141 416139000 201973982 455224396 523831084 221785884 823966097 737492753 599813983 123321733 495137310 865991510 760514936 303946237 523944568 276386782 709759475 6543841 467589702 64056384 812546113 193244834 827822946 659330921 811633989 733630024 319091803 869681175 816058842 902575594 296119540 345888607 730410826 26650167 160219299 45522727 690086872 737683440 674069778 96505517 375363896 358258795 771125922 935677694 907215122 935445522 730519779 60422528 999235970 123572450 777248029 877273193 401645979 164827373 992954571 690236229 620207071 905538776 918725147 76783476 254833864 360715869 767597167 391792809 130614595 798365898 927361758 486948204 705987376 658274177 361959091 304100761 262395363 661262966 810266093 267399903 262272678 560876724 897272254 32088898 53437237 406259416 756279565 983430554 469574208 597043604 986414836 593721362 404801004 278832174 586074946 110054569 865855571 78519550 19093241 500699572 568551423 248046067 294661841 123214938 312213107 489683215 685112244 68569367 641538722 801812198 209162560 295792185 985937270 159595812 259968584 145091686 837973066 784882436 708611923 379608852 56830320 839997401 554466588 906210064 981628589 300418441 559832848 328746744 875221944 741412108 911266771 721959873 244197566 672491762 470846907 615383857 84033761 577748954 283858771 798273125 249437876 879949564 381670362 224446541 132014785 254757024 107469249 717878827 408459779 131164837 363046705 459799576 426035820 199206651 584318083 526268799 808258912 507737641 532036293 245735840 272077880 806880712 37887548 925233166 86181569 305108741 962312412 143853874 391447994 126483747 42702546 429930694 507875162 18621431 612119803 193326170 709615559 505205866 407289706 58023378 40261023 254685947 356198886 553906149 833920115 780354106 568576617 484280992 51666759 577072462 31658914 494730210 502340372 779558512 628154740 732641246 621955911 531216750 535282549 374750619 664834623 654600745 64122736 862788471 319582162 189189399 481836515 856863136 684650440 495316930 881009794 946788506 100299871 860746566 520503986 425455548 814294214 411478743 379732495 158337970 672232354 316125753 236341990 511550204 270877579 706848326 549937851 777521774 67001744 154573164 256298693 68970414 266220463 815410732 446823533 511521210 967717214 260494236 181182419 570953567 286838277 16856550 716313161 983606210 456703873 723635911 270754005 825662171 568591011 70129681 873811635 867056629 767176111 627978281 262594001 990349360 335269086 196697225 750196562 592280319 668330716 985090111 644793356 821385387 270438218 897650797 57958666 920891085 576038717 813823687 176816138 216314584 590592445 834719768 67525119 158626957 899881543 523373757 103606160 501239940 685130572 804051240 205086104 646785194 190266032 839303774 176973220 165372605 772277323 264539770 279928952 91314898 619845739 347604776 638263434 350819280 35401809 925285418 120967813 463253491 263567023 155825111 838283208 515640649 752119344 877795735 56594149 985077816 823033840 128050280 242934818 947917302 498915328 882951516 915107323 744385808 188713444 107530777 36509086 307847652 756544788 50967383 348626797 773417254 381741950 560523622 239262592 629736031 493364738 383393445 570204192 287966313 640021749 605297164 270082637 812658676 510470815 629903267 14813753 185403909 927653821 897873160 449370571 548410482 526472191 421207534 176620318 498994279 994260619 955153048 935148799 655536355 982833784 7940706 394412914 906717500 783268180 775711289 862020141 963601303 206576031 242653981 355854107 324407153 125289806 880016550 469445850 711984153 824163913 831644028 742619966 372890931 248713452 940393950 376710092 41515318 455365258 237679132 632818751 400636399 984621029 897430813 13433607 667379452 284436408 702937306 588344773 409004626 44148013 130535137 533216721 780414648 929405031 281193171 180010164 122309705 110112506 728205030 71924910 440579318 473155694 724607587 492497201 333766402 651674303 125613097 195560804 55082884 77975264 224117032 527667361 607464 583710003 680227559 895428855 66639726 450416658 744222720 630053800 253210538 887885386 123461790 348563372 165325570 816753051 428138245 462321709 62382644 960117049 21895178 164496137 276995021 94984270 814095767 483072851 428917938 591326837 65820969 999458770 603731099 983032385 595460178 787403649 826370707 79296948 28834615 392888845 854806394 958499528 779043090 176733786 263377539 916011498 401225393 289737983 925551030 837941369 330723573 159533765 147825263 466333004 617087317 887430443 581710301 451106089 363993176 606637797 976029572 213798735 846279710 814477913 508228539 773818861 286863576 733263393 136168495 243331752 870744908 948212107 31151198 497964825 615953746 858432284 309528093 112761165 89235033 349845768 529031699 119802947 268197346 2003900 446648892 525636721 937014788 340787797 462595686 58996800 674110951 799523110 560302775 770718859 144263241 499766326 702792741 318004004 500469244 152438207 519371516 608483152 104059494 37613745 741312860 547655238 231430655 692863276 494115769 764065203 918899414 80376586 235626841 610348600 888252685 393075283 420406489 679252459 957943128 631616966 180054185 183103186 833873283 483273047 687459211 911638891 825059049 677321387 669537048 372899623 437184253 334388126 25891387 488873706 720226245 129587389 46561204 567751565 837972057 589710796 481575062 437682268 72653673 307219010 114717385 386594713 806385077 125567944 202595209 594632951 927115410 141694654 32136677 892072479 805616236 795822774 669333313 532363566 41426238 977201399 760831956 184489269 842832667 663950075 951536939 822451896 342869161 568051953 851842212 74324528 845520801 66434108 589256180 51315337 591188305 397713393 191463842 203750308 942802202 296214877 218453385 673869526 64128241 393349758 659647834 774318952 499467746 397547653 81942807 978500373 263763592 387910234 712698777 512204943 514875287 126461719 12615948 865127417 580104275 930334860 626221422 95332206 393858326 481704890 28102931 477942137 579720654 61018968 210112291 288425371 235373180 807020114 671852059 709416649 567819190 362391620 646838344 975671275 39528229 491826691 290723919 867563614 415718920 866485268 794214312 49593459 534012336 890325811 710681886 705037294 218693634 746399950 405356881 469342855 50692088 171821960 782973236 735054956 668563488 235846582 884806287 771213502 567979291 674697189 60537981 203559951 438766111 64030034 315523055 930002154 764322678 452728944 34244136 537783371 838079741 632529766 669211456 221909539 431634086 223705742 927745185 755104726 1489654 55394552 676748685 858328252 902351751 818828517 282964373 93447331 285673863 209893964 118147363 386509387 943236664 157225816 693770226 329652201 395177326 896548583 276952464 651172773 814174740 848589581 648444899 256174107 349954727 180834703 966293409 843003614 624506297 960485481 566405334 718040816 166264431 870580297 662116194 220230476 607715076 157279505 552599928 537320285 931327300 808570968 651528225 399509892 314443538 613442026 31593911 630014357 231098594 81381444 805321322 504332634 895437375 935016217 101089982 281379087 752890951 283456463 625914891 368169444 798241322 653186562 139036924 79522431 297581998 566555137 768481297 546369911 628990382 656908108 551036445 652529626 200888470 944082204 303275208 620580776 409996009 883891931 592960270 312809045 307174843 807335591 724390334 922992459 323121464 795069396 576365563 201900133 842347291 367214951 848829375 280165494 398335799 828313755 487755859 795683264 786680818 778350432 775029465 160168061 34976965 479171287 209658562 302712666 325832893 494121943 351127640 8670711 849758461 100713835 284456245 925840744 902831930 779740498 711085770 284878007 470577213 741271678 598200538 749163871 740361317 347333526 765251068 992868306 521616930 358924147 70219292 854694389 43703419 133328294 478237946 149044127 2713993 311165681 565190313 806477597 443283194 840412618 567916562 918886833 514224783 429736667 429547887 237338638 289441438 990756228 452987600 118902494 361387152 269893720 475667609 205660476 78473060 819042715 197407746 881455419 212347947 51091403 683491734 932622941 875619466 471472148 705780148 7813148 30187323 205568730 507460881 713565284 95741580 523228723 409999156 516382743 86017246 87963754 6312697 744950664 354875175 668044414 800679695 46410496 129591665 319245472 171119226 972750653 115258713 815904953 823121169 602149358 530530960 860706529 294590465 484076088 520092509 815899113 720026184 760552244 627504410 535677906 462667579 22708846 968550067 170418772 408775936 845571176 19526442 972079448 396778773 421846293 563078165 919434110 670940871 33339486 661290014 683735704 556062652 429540000 208196482 111378477 704263786 491795756 556057747 579977207 94582941 458930886 743498806 684147813 717327861 725122087 911046758 230354202 976335461 352797819 584555183 94689644 917427381 921931236 746772659 302018790 685528321 125675509 268592809 648454086 119260985 650531895 445349337 676203392 863205279 49950375 137295649 623428921 534692171 236801590 847496051 398903884 759666858 429129544 198381141 368721097 916969979 954101302 413642847 522966001 431844305 184838604 752626112 194896059 418965396 546923979 581655738 752043091 617525760 4515176 370620450 672328853 772095395 421412811 464783841 543483542 157462883 96788113 366348149 304521500 294345975 244093515 952709232 717421345 395307369 863711485 987885304 678021204 494621594 403348128 518433350 567778199 346839742 303985056 961326887 627752834 856879324 119895390 422360190 241040095 488162127 890764975 258150336 182256428 985859399 763233883 541882230 267937564 110085705 198588831 231877567 706519830 871095467 184413867 185823435 132003252 975680025 90802469 317562209 321446470 147630099 959856805 859597658 857777485 913397356 766113591 543011363 113164544 973932493 318311900 94290239 818340298 590095408 196993289 427869891 978008777 392774501 983431462 769813465 742278737 891782544 169327887 154682685 692315239 481631657 638664343 98064323 352357703 314921466 48989441 919718095 545772511 376779429 450032005 601338075 801278545 364342812 474533841 672493045 672215157 197478823 719250053 982565950 417865812 764025825 435475382 105706604 572371118 575369531 500774764 568812104 922422133 982998136 485230115 852887345 888640080 296326447 635176782 525590680 417608985 25710669 512644559 780531842 940858463 527926928 260492417 118510601 645330917 157577485 293294255 900535259 891827489 488359850 819788441 435829433 480611774 505379749 663303670 944572409 504689178 972684299 43300461 846917637 492209609 8291393 328651290 974093530 263016976 391311487 857371664 694567562 114055787 399522385 109647569 314627002 364970247 623025940 189070552 319910949 597070664 62494335 46008591 633382679 972783173 356382487 908275545 982650354 138442567 244218553 572278537 169562797 767389262 869319956 667884393 165232720 125332620 284784172 45305909 443111289 252985063 683368665 90031645 779987674 775262331 182326598 165264198 546556344 906255126 327334770 769142730 694668910 566639035 114726322 211564595 360740072 509001504 58410285 514369028 331291944 245132335 162980447 539016240 687272901 378341512 577027990 233561505 960420967 19896062 812307832 328234930 429749324 191799830 55852923 232027830 534401734 710360715 338237548 661122671 215464891 732749773 234806505 25112727 620471332 143928957 658260455 652084059 829792398 751579890 939553580 47094746 905184668 411924407 901517781 669650602 584709762 386770442 263473362 371389524 639168908 486940767 811307877 235461075 356388501 367750364 785607591 449132313 32634256 715199962 660407043 269505419 411828995 283432042 910613177 28444288 130052231 186622669 123329628 972993989 185198922 932818171 886445141 157520412 463371916 357639966 398939742 155452344 149736485 447124500 8181255 853214914 555424510 384084976 9464116 278440408 304457619 400151160 471829660 399752328 430675064 358436777 989928012 580179418 482668241 273997359 482047011 91829955 623455960 896973294 339393107 167520947 945168474 494107772 328273894 738059272 681172794 224141732 553460535 521500824 9627117 144054756 957899893 440413228 115403261 233110255 883121699 929617151 463704711 279077421 553982363 602875971 88828092 793677110 512178566 546259612 401936995 632726107 174575717 485510819 80744022 749111581 724600076 910484836 728375552 31522995 529773345 380659936 974597862 197309065 425486753 418594956 995742491 375871164 16783708 318045136 859380681 735562398 338913652 190849674 378385583 60425016 811013090 665312648 563192734 461657539 704859121 306999057 126471931 616220206 994628289 791732573 349129793 436553628 376105413 128365336 240579708 227236579 611837254 259505635 697172686 781831437 941767389 845698771 963016941 240836058 60502013 634453744 611887523 68700221 166693479 586345911 10570573 621222619 608399539 998833049 341960797 690885263 794623694 231118458 92025817 704600297 904405622 580395059 614501337 129738922 525880768 252425488 414619660 61458505 585692051 735934546 18580532 796984945 878829098 622784173 264150693 774333569 183218070 218956492 223345866 676481802 839268410 891376585 522040736 44661333 112944461 856996277 916731961 680611035 800633180 236140054 678287931 398174154 79537861 479085155 609609311 302414727 106485820 354611850 843249394 28274726 597683530 914539371 696357463 631843828 441483977 598213467 694738818 41258478 191602025 662556322 615710334 250964039 201553455 174031357 27564265 954797286 679020785 742259484 344966771 26153957 895670491 286971685 750106979 897500691 299915500 34620719 860531473 960554355 501227641 740834504 643746925 106845627 303605674 164621936 41013367 985872598 140823544 850715676 106662596 372122979 410112182 755729332 983877632 718221107 350138757 180144021 127014502 523148238 64872669 363858191 310757962 806428399 139663499 919210727 282798736 154355460 166676525 20811223 909923634 817935791 739649464 135687946 131490749 619012679 833583091 755239584 930861012 849639512 229895929 312859696 808473004 581087775 761929915 702928705 885629583 29330702 396871548 544373711 827971417 566287438 958059603 149469901 587248382 30321976 1087404 123692701 977796866 352343515 122755015 746218393 942804479 479870842 373332280 526396558 448347171 114018571 266434917 866559292 402335663 614803896 489815307 526813911 983849849 271977826 43052218 191864457 804287339 716645145 684061012 65169902 438196993 174007205 40508050 51845014 462278607 414192129 75424639 529638790 668308473 328147418 390851323 543292343 485262010 304234516 721091641 263182486 446861021 950728517 844335425 491251586 396970311 424224824 385534831 774288210 137174379 871306348 923392498 361860812 967787988 59579027 802357326 841425711 828393119 971718931 100877530 536813226 391218174 826737800 151312707 788141794 730994870 481787456 927703303 283733872 15175329 254962877 729716219 782087777 859756845 529151031 292296902 384086196 98924508 638674200 597658979 616273120 381827266 34325630 257024419 383236427 276215050 825887420 662238633 126833364 164389745 742591449 529259628 160337226 266844873 508193807 273679416 761338866 849859192 537138765 863119149 493716485 26684662 238537910 199582655 190722863 391731283 106755360 98220340 499920914 98050222 471368598 987803177 302886081 955670207 107698391 971197198 437093189 597217870 567614676 130444453 336376347 577721 631205173 718486151 645391028 518392691 774018517 221462431 851670516 788284543 368725826 418984620 734568628 754504953 421777726 374527684 21833793 35684749 284289345 761582028 26762970 848543998 423049972 940880128 529131061 854019233 71256247 48473458 172685818 401587423 181884444 871885442 111299143 626132406 114884713 94535787 148983338 165410617 125015323 239625910 523678250 334297100 936083550 452849861 532101311 483655144 724089749 53871178 938048725 68997661 797995992 508537804 64498254 125473803 507958385 344635177 303630973 236053416 204641118 849910799 137946283 440121341 823009235 642288769 225564309 878542249 482738357 413288280 729519340 176513884 645508895 430401727 895092180 71097949 321166049 357354679 788922725 160179973 244333820 530595217 995545645 435152194 174756391 976901238 613650861 83909909 955260237 327822306 544987351 247314196 625023501 997164581 307649687 164066537 376802105 397961697 705049159 580829648 206511959 494457487 509270072 870043421 953179427 323512570 123948592 563066548 866677771 33462721 682133479 874723215 233937073 919387609 884506505 789716540 645429613 874895626 918474807 520519516 6879945 758877805 580230277 775308326 368947203 620354292 263273213 370351841 669159822 644789218 350163611 934469997 160812433 660557135 396031312 685895099 783133286 390042789 822820992 650837072 770278172 565715750 420316547 17994951 38376438 519949411 687203367 751805516 119063786 941517510 269819180 422597153 385719331 224836617 756241095 683578908 263559808 306443709 65837344 729597223 583648786 273499589 353984212 305806784 402520738 178879192 30459763 951942774 341777448 477981442 212728835 407724658 486247765 944802339 663383419 564893675 649683978 664176750 278739785 819903665 935948767 115389164 4431821 620142755 39262365 54550519 393456859 296441913 329650884 751147455 741276221 374994171 156496390 222323912 365098543 265257479 581428682 270812266 393252833 460935311 896915370 652692816 561469433 300121689 770428405 827165178 13216526 44966461 444846638 996002619 569630254 244005547 112693643 279988923 698307929 589189154 576162167 132798325 792295427 332064698 78010896 141477434 988472726 60032411 299174569 437903917 111764462 978726276 925747273 850293574 422253531 221856581 950245931 870187215 227566498 732352325 917083196 554043370 542588284 76309244 911268257 436689416 242179094 166497146 674669870 942604147 698688784 619386847 820319727 433604549 206441854 939479520 971215267 184576111 328991338 352377929 627043644 532813619 788341583 100079477 425559904 980850347 335207072 641820120 893736683 88457920 319141439 114565238 272648043 400091955 317435910 841608553 985648034 378391 8122946 347565662 497048584 499587156 960065586 277175064 338468167 148898854 129177741 989894124 801942717 314293661 894947321 947368004 233769213 716960027 185032085 719354141 810799182 580913113 270079344 266885000 876611370 746707041 761962767 469965612 994742465 932580629 535297003 450591426 820112756 240243879 868666864 558871704 45802842 540506783 659643904 677920527 107843262 407729113 422435950 179095325 658215582 204514564 849606020 961924300 138520366 424359716 644664829 270296505 993516115 985411088 20272523 965456790 681375273 40601332 574478162 944405672 188994430 680622801 527558763 467900489 550742612 493690104 724333666 231518567 199162979 107379091 638345145 904786691 529148308 78321180 147875427 179560628 926916743 836535780 830576713 157050658 400542990 845018254 836597705 446938251 399570096 184667793 528213041 112307520 281659687 71266745 909637705 198483497 613824226 522994086 982246598 559967037 163738500 997386827 573241560 140791819 434835555 680638064 877072029 615622709 625413386 634022449 570293675 955869679 9251767 62101374 138709386 797579908 597103069 702068889 129592375 177412305 753179811 613180058 655831203 273039305 467581796 942181358 980731698 406145775 281561646 443839700 601598013 411244255 693595203 732944863 871175312 189695941 534854298 576678007 602072556 652245988 643388510 944817495 294212998 404321808 74487662 185400080 747122310 949099572 43501276 992140933 294920330 495339982 988003694 762427757 219263008 643288686 153810976 141378773 793183567 357844538 459703456 384785307 211259407 298777709 689747409 983649524 556019916 92187604 188889673 924167399 571679463 235759439 527788242 47755471 662295349 462252118 170417388 271802844 51413630 148172657 359000906 414191507 454109183 789032127 680371281 229356106 847314409 936273008 349603996 743782317 679904223 838460235 350977402 725259068 275648380 211521321 284581742 597733066 881161931 772873080 68495022 267686655 50625741 952760761 383485862 149080023 22089719 386404353 406745970 334858018 326411953 359106940 807965799 739591426 767872984 966337254 782000778 390056559 572959036 955168528 502135319 149246902 633563683 381264225 319657980 221080822 572984260 855442514 614893659 931072674 706270669 804982257 360507148 273175554 193187550 825017439 559274520 188561329 293772044 594393170 50491967 424489504 972931679 629112724 671743347 944483346 252810068 440507778 986953051 886934302 626412379 168501133 97137105 14026801 501789017 754914748 376698212 548048905 976997928 898480425 900443607 296357307 695575827 4998271 116677792 470769965 332048987 319776899 483975530 928104348 277562804 591757448 309852307 833573912 794035400 240004345 933590447 312013827 61774259 19662803 975336963 188797334 515641733 702246695 471040778 413945948 454116035 207318941 570851572 515914677 169619943 703897324 774416674 379115861 877389787 975185507 186595499 842138562 965555330 570690916 7509211 385919705 611950384 698943459 154218415 842350665 931758892 604098283 225428057 448087062 478935605 86699289 500359106 332321048 820946682 686531871 472488195 641185657 957535137 334074434 39637483 993414971 278972481 842471645 832915325 743236272 343447911 494249180 582380142 561813248 672663701 757520962 365039019 393943206 284191422 58192291 903108817 229623283 913796300 739501738 403694259 543884170 765985307 470060181 394920408 347457250 924149499 37120180 734246651 942326472 338959153 971011821 214568841 335254490 97639030 524856891 930155046 976127244 164269303 59244330 392022824 94626343 824810963 222508637 258339098 242620997 450222497 760044297 651182907 541714007 384129767 406751095 515680765 597712287 872773284 698073478 31960966 168223798 338883271 837376806 944236594 5105543 754743989 542610654 832334607 808200914 364817863 487688774 533024863 974585258 216532937 875826830 928947226 623379064 956118909 728957686 561122409 283518197 425134870 416060244 602876460 408732852 36122813 180060305 449813877 265952150 546848016 4400428 453686283 34012755 214723998 173981621 208443880 336101112 208410988 110310227 765225915 883387235 679080307 607319615 150963047 300570569 664272159 525804615 244940930 870006065 109498577 223891276 279284951 29358583 82476638 159683524 990946533 533627978 682419087 467354936 792918109 476277933 750633119 772787911 962073255 654677114 632214720 789760418 901337950 513393754 795552918 950502798 162479824 781404878 346357946 356278117 560356479 345950890 786869816 362316181 504775074 193012628 132427537 180987039 946203556 861187209 44178618 314477465 481903268 339573337 823159451 677036717 239756788 32458278 675451026 347584408 394826907 101738473 237158765 88722988 343333331 733575917 1460595 787851470 809768843 325033554 448469212 705945848 505282789 23914891 754601044 542258104 544324793 824729824 413537660 758236719 68360721 263090157 431176041 504947732 775486635 166620705 965658915 393785903 396068730 502961472 844150312 352850142 423931685 829755874 340711654 320083091 952200327 673929714 666124612 828537939 767088429 789845807 189156634 982538296 971617755 713176494 111953076 200924145 391032072 748212310 617077587 236397373 286546269 95190882 103042476 514305651 158335033 831102691 652397159 599552766 292662832 11650876 529169569 833991641 581830023 911321508 568737386 581790231 114571450 455527079 566285128 47807325 286548727 726191782 93661875 651670630 701883040 575474258 952689302 25546622 735547853 608781109 455651796 966036744 4363976 327307305 372460225 940036089 104968335 397156318 51561893 448951386 7966549 419851097 50096957 211108297 646451969 288006767 126706490 784897528 703115693 199896142 655818943 19245869 631637544 135516149 274928871 207477441 710093941 198783159 628227388 829456801 117444682 408039613 939302465 576407248 25776018 398426496 276486634 853096931 945048299 854236754 380041759 441430403 277636649 567779030 603305789 60269551 396527313 711896964 613858452 153637239 373173407 712217127 957819626 631973122 429178368 871733342 438246646 423596169 932174489 719881758 243896806 674890650 162762686 243078702 308535770 41489366 279125755 768986281 874933862 862046066 415540879 586142080 732584724 216248762 477465068 72770806 527881696 457344906 495552569 370451490 913298362 197320147 43779280 57570672 225594119 89244700 28819904 192345888 997090337 771350270 609756748 303645126 755675090 743622823 609434985 306004168 597952989 500507480 858722372 941080803 771413365 47626215 222535354 402240167 236049860 768948286 642436063 788239606 731218022 474857946 158231160 877746569 812114411 862104141 85224320 894939499 798591576 516571580 420827815 600630140 267290022 685795681 985785038 464175855 677059650 753233418 4607116 509550028 118541196 788265624 798571692 375618415 678063192 707823745 458726573 516593927 693558640 22158415 104956737 303922712 675038735 844884511 745498318 456131321 304552551 982868003 639791600 287552855 898523676 299591968 513614837 181621424 883864264 129747185 434018143 199421657 71250037 513192706 899387494 450454649 578100262 839572693 269729139 271786891 875721294 440690305 540035494 154059744 993043798 321973038 733566290 164098971 919104540 551422874 678614139 930483123 858420847 313856663 84703583 427371636 431066516 433374602 283235050 758849022 980125892 158692078 83837248 888065221 542442923 82311887 697416247 24529935 878082795 741729104 974710234 455591545 562632343 545613605 821655271 429377651 996659896 182599193 681126738 257875647 454923724 397775754 765447360 745057526 208163649 281547496 812631309 835916291 592011263 98905658 745402566 449973413 958228699 280846488 614997936 203602417 353656613 763513010 748693311 751282127 197869851 236861767 587977504 823682936 901543027 26304943 1976751 194010110 24647381 424501842 424081025 522786500 738470495 989403951 484850908 694408706 931296288 295199830 94163002 852530498 957908125 17529966 735590602 594831334 314560078 955791664 947828207 141393312 856711202 656282089 858878143 873474295 426734583 950380028 271474309 51406793 977925411 541334366 18538815 934814147 224717550 233601817 235258400 278726379 757548309 871661001 571761679 678410775 465650249 399686178 133698599 251299699 68116142 393201512 144385077 834730239 980640348 230802933 322403645 657355023 316592098 987076534 547923958 401842889 744661694 228948142 35277641 132147882 631051750 332690291 14774997 170144514 435236930 63199148 938709358 363321971 421233967 131201177 853853082 819142774 247122685 485119371 302200851 569027542 710379378 132244583 553865800 636453170 651971654 424493095 64060635 560332671 950946725 876911449 48389668 4045956 373379248 102593694 397737132 630125405 487533052 280868652 237470131 564546297 380768273 224359757 940813228 960284828 816766956 355351262 143652539 760655454 255985021 745638865 527840062 596512169 137113130 574102699 303635009 241392062 189808458 791761158 172672008 866369073 243460267 845611024 890673801 405218153 471727373 393546507 606041583 824734497 58741413 28364747 573859609 514384106 763944859 747168571 572035096 429270695 678827660 338072536 516891828 570723087 339639560 129778228 778523368 567323694 267514389 191961460 455304546 153401316 260036778 63717843 368064516 539826276 75236917 470321949 194787430 31659703 131949334 637676852 76705873 379432247 417622817 505698959 622929989 162499604 941873184 892169398 987872244 739230162 720854607 423171783 330266821 346121673 769472222 832390132 737849938 189307044 642019443 334041603 834423530 824596195 455040421 427183565 583778320 597877081 271384450 605341631 962127097 956136878 550445578 259611740 811069714 339348701 841752241 703589048 323515513 24510903 588359905 5592831 628721791 304293215 990730870 706807020 468155436 573266893 793186368 981235282 242451131 892105291 975733892 63420823 990745 167307258 392353660 309873204 667809130 53203022 888163794 89452342 801414021 406890894 629062441 722863040 110282611 366006613 995728020 59776903 635115251 902547732 134093085 280574292 937945337 350842509 820655680 105313158 16589355 500283481 77176429 738423949 403275107 799916644 692280713 824011632 699941424 44946540 51660653 464448072 502453588 111876741 184702054 635518147 479283015 737039255 315171251 455165602 156496051 929864670 93365259 886525499 591118070 326543722 579231252 793757431 380926115 499100829 653767405 842130901 114082305 5618352 462831781 442259430 332756362 853375533 736933569 86338255 731624557 93992310 513090746 338497354 968386317 365838141 600111741 953909669 814040448 455735562 704019689 299597889 917374481 465203129 365400660 106639892 229397951 708711929 739539719 644945191 728080060 910552270 663783869 825662745 581299950 406401551 4870184 739424667 375173233 537050344 132172140 993932530 78702610 815333978 274635938 709979769 600212950 662670774 100005207 737617180 968943473 940261158 962720266 373642717 442864336 167664676 256949937 780999250 250536592 64741377 108687668 64499493 444195460 183191647 946501617 997002899 871923250 992309175 357359159 889506542 475585367 467742165 173767371 836773147 950472799 325460567 915130982 645633301 476119277 70894385 902948404 673589864 1282649 507855147 772758102 5688502 298768429 198848097 585182305 150089270 984570024 187854530 977854941 763606576 850320699 855671443 304242376 517379970 956615438 387707625 891883536 204819230 88997756 399761458 41451036 575051913 599736466 408022701 991948612 677530718 431726484 460799213 593766484 989163721 306910585 923835994 785168142 574508045 419423594 698982319 530682532 881629951 957326663 209716605 244689474 655712136 124745762 331170983 892606850 285211942 639648961 766448356 623793397 58454891 914174496 190153537 277030561 302068861 492762605 445509276 4084862 400244629 591508235 304932394 258556664 803557248 902977039 881990641 61536624 315598625 510529990 566391631 87080123 366405101 487778733 370452849 517851041 81144429 694467191 562031581 215535455 159700159 77108875 268239081 200210470 579291414 919407236 728660033 218202010 796618294 616056751 930582885 749627731 768526328 922802320 358967336 497958751 273890764 622679389 613618482 274881214 145597746 762629761 955550335 250975205 301527616 286012699 274046431 30522684 200443423 80401276 489132404 715709856 877405582 429157293 714501174 396628705 130979678 998888423 996335218 321783877 772876020 725271320 332366407 778742019 4501194 240557925 431445032 243099849 56642285 78929570 997637981 216042551 748527488 443462364 571167361 256434530 500888376 223537360 57876997 799181394 948117471 273785969 310434988 155578244 350270674 363173733 369416205 589413992 480281475 299472265 107592981 103111652 816624631 978574185 938009730 235631311 774224200 386545865 984809320 168386167 553701924 938051359 594759088 818595100 710240588 841020437 211430036 621199474 378386454 186438668 569171749 923074083 155106028 292451988 126454469 457535051 392669643 515606261 799501229 281911802 546923205 898755242 213054824 114596278 589951615 444375009 879263574 313029110 626064052 146121212 590598954 561674664 469343920 108505618 252008301 21077163 444377557 597089134 12380665 15418454 33763353 112035343 233551486 223849968 328692358 717511975 703222528 895420213 470165945 980936093 451773527 743878359 847319140 939298443 155632301 973990651 708728781 775364032 993628164 63415736 216966732 430446142 50508462 153155484 175279057 315580093 963057107 636133414 337356891 668996647 459971566 422334029 15737474 626013210 591839056 752638199 679450094 372261225 367536796 573454211 885448669 497256091 101754185 800923200 434838433 488083562 900044836 763557619 890958112 935890502 336307659 607362901 564945235 139025616 506904882 555876243 443595975 219318367 846661154 578508492 394427935 178660222 516330933 662339991 657616527 748849516 833855196 486919802 291639395 560886938 630724825 38346868 162213750 385970993 707018181 143709044 841578427 565293962 918035723 4109535 814669240 365900979 341464043 96000014 426592518 831829745 421677048 883122893 126362834 889174584 791855514 214163934 194247775 120039605 95222925 674791796 215233410 328977221 580486240 421514680 699417893 262875643 283344632 679285576 91901380 988041374 195354378 904386483 939684851 784118568 872187044 117441022 806491861 983703112 718010788 105253154 124442790 431542241 850052159 879800971 198598963 462168969 173058940 232433306 699740253 842419467 998787511 100809509 3107482 443697893 116487455 335362546 722486644 399454923 208474679 713958207 671360520 32443938 383705688 268292669 299215751 809180294 62894126 601944976 569392056 9747524 26957367 981263313 512912756 171068128 572200776 754949644 422813481 932091793 668225799 86136386 587474264 777444800 113096305 224931816 72607000 916699021 597679190 513114727 927821968 764665930 957276120 757866394 625929088 292954877 380364528 201635411 453501881 946631906 405641449 729141461 326499232 49225703 112910563 394912603 802650287 280719151 26896977 892513424 817105396 848329104 40227707 592867862 225454225 258040853 705249789 303621887 556599354 224548476 319901510 531497047 109482938 696732600 462247706 926952856 686367598 266640496 959167505 334058291 661050824 537194367 913241110 109777166 388555213 575695474 124623080 159066369 895870872 540719117 905909404 394914136 890054869 285554886 739872281 385655636 599964486 896254280 523416986 491858346 874283330 580045554 655343920 196034818 316176945 838921814 242505534 725982841 751581969 451320250 163267323 979785759 972343540 611642778 38872307 494908282 662617472 754862884 662071686 721340930 444802413 543260858 698684264 227988899 137443083 310854260 701460511 529312574 329511097 315694747 788421257 601288487 830580079 162302511 96441683 257506728 435621173 780167522 166745986 426556797 611773866 87322139 46597358 325699671 91773566 3940469 767836354 707763545 209851383 781477181 423091710 666796446 13177712 930462327 364176885 224335537 508846038 434277337 16601807 370616083 277116970 69602638 910828040 212713656 49655297 920191348 237394671 863289226 681881607 906928159 348495144 60045797 574568567 26386644 799794475 962584857 822876581 420690254 885280963 519255020 529175156 648885757 104308623 81430805 354331360 64982658 740854660 998673346 364127862 846385205 599610217 425526291 328042199 54222495 544908121 192614812 695877177 448712192 423061317 989387239 194797541 798551498 945223024 315629808 169470650 18167587 105699057 443488167 282476457 101139304 488564788 488843889 484447287 146660005 123087737 752992680 921886462 329736733 281793364 201853974 678205996 913992904 636261163 142887294 173529602 71032272 782068155 346751764 866668374 996410131 270704020 531421183 323350545 623877540 462152088 299136990 588097458 828914250 245695872 34616128 169058250 64993280 194110551 917491754 599542910 888966259 763725053 262102678 773937416 638224007 551158437 220201710 369952310 121241811 649596247 878123669 801976554 630600224 390708335 707111518 953106584 361325549 158595868 926183699 134091723 222054126 792111842 134608367 629375136 308320137 555249176 883210532 872360264 992960599 591023723 461342807 564044427 407707817 483306329 836265759 88874560 548348673 508565687 889297801 710928342 421624724 732659500 266458263 779224271 209302735 327833779 804061884 93647679 394954703 357282589 633997409 573387345 173427431 334340237 559218276 184961218 621796894 443765242 739826324 127711588 869568942 322303408 351022646 308665757 636150407 705072079 985737859 453406181 522970313 640686283 609411367 173424716 784055886 770070506 450905796 404092145 388818718 644161993 839708013 849275532 367011320 934279896 73933611 48767717 470911184 219345369 560103036 332677466 279665483 428011621 564892367 969855837 258711876 502309735 439486729 636585204 21646155 972139934 619366915 388927288 614076705 345642527 898996489 170314966 769067070 685823698 636866140 257408145 217401419 257562864 824478641 266741694 779417512 399954827 476452529 919278790 345617895 477414918 523064695 523952551 838241359 385188505 146435349 731964020 961528410 560246990 261031951 993358288 319289399 136759303 948313309 820029815 733878601 810315765 709574254 148354230 675356325 769415458 873901216 554600686 39342488 561692521 70438089 59296789 971805727 696576120 944264241 626095412 859281262 578027093 564775573 111421162 688285290 909935062 772030630 689427943 307012654 656124711 961034376 878598514 34871946 349227592 518425172 570126308 302831231 658077069 929521814 467232043 421495492 524122140 560620239 829409096 256652356 898440818 222431220 894988497 259096734 234679007 704490221 949664112 112839332 650193413 707708183 191691361 111927004 555350365 195720387 320701688 940054530 64467378 182623156 220000537 148629892 356217763 778321317 515410878 826240517 797475365 863760577 132513653 976902106 157933311 741963305 469357279 287798160 74061645 462453362 207110450 63671396 777561598 774521892 654935736 190176457 529844822 240959548 662007118 51534054 333717612 140639402 108369638 546215701 160628141 442634964 621102085 872748134 286611799 272053777 770452550 557347610 854834943 388351023 26012373 612942120 276061452 158832110 717026036 430306491 769861945 889989507 82978937 107175601 261629207 758927638 187193422 506792734 546008200 795146052 598723312 405250503 126850118 135772061 946718449 650314408 708982362 883607847 395150711 410371182 567495333 81548505 237158586 323713278 832530266 403954721 957799049 400179180 868418946 59992927 544795846 808957189 248745335 236484712 983384549 377885894 537172841 115790083 618277745 973198050 668227548 349514607 229615240 702474943 392910888 448225500 252835418 26652153 244243704 793453549 182260909 408483550 41109707 704718652 310393436 380715761 261679222 376393686 321702867 448933224 971382689 36574139 979706261 488164270 186510661 991386207 841983159 691909601 312230452 348615468 468056930 439097685 598251921 810293758 461477716 598850319 255565140 160726949 602870368 222213194 595879111 183607399 653049577 795867382 446680331 944121979 976206443 632937524 580513684 710278286 17159667 955794139 914087081 660125250 450022561 341222902 791473637 375429803 380707373 65477956 919591609 437477072 854622048 65275319 946076391 104283184 302282902 435137525 566638344 43025722 24509507 726150874 687909128 588604883 362014571 621947380 835348645 762479572 988387367 481637894 122266611 87990154 80611879 150719366 322470362 571411509 919681835 775838494 333266582 242510985 242296201 33012270 130497591 195730735 795731627 209476424 852818719 605955397 993777037 480033459 856069766 694780634 357851971 844306666 513171193 318519155 321009009 4708634 48987863 762774153 106780369 787323815 252802259 400105993 41523121 662615719 753925749 202825938 669025906 550034021 726752409 977656122 106255370 497266144 215107054 916291466 664518275 312910665 41118071 161136253 794882938 291987081 312611086 47566789 207727265 478213048 370298844 994315398 556146237 983717287 979366627 934695897 467884456 556935255 629369716 783387979 573360080 310668672 946607033 663213915 734758838 187648779 239187244 854148095 178112753 173033880 398851358 918762272 126057000 630366969 153588529 10650393 983248283 382626997 644907998 766579004 829116315 878489222 55511793 119356493 687299342 889535195 301261831 483047685 124159980 481287511 588011287 266784400 115954628 766397776 314880742 449741071 931420216 497772113 950617489 96303639 102914940 708159128 125982983 100194609 112210139 512605593 83122061 701916248 133066546 264028281 107387960 698411646 700148595 976120979 70975350 620782599 905615652 955112951 657194374 350019915 24145629 342352358 7313659 123969304 230012110 154572631 782541117 642748207 354607414 136972662 716226823 926568643 870573293 600573471 791316202 812448509 469253595 295873127 455059913 309065082 7552382 845792532 265825627 972656843 567810409 813775648 36242605 26014451 136925631 140459066 806632605 173756909 101029308 689899332 954632288 769121316 136007724 884593366 493395452 777906425 519053298 977482682 466446031 818708801 240348291 700750702 48964614 757628356 102046824 514385573 99707175 603351999 77502912 69236678 233844872 484948323 485234363 97621355 275934165 707659348 34320416 335473892 633871502 359896106 69883336 515124402 312114822 675297011 852674336 31754508 330817125 850658735 111626667 124681821 393471015 298758355 704054142 588518851 268696475 431276743 46787523 65228690 563123942 569748584 2201398 682906063 842524413 582468998 252410027 424671926 608107054 556558183 672749446 413308725 162556056 345645891 584019009 96616302 976708782 875207365 315289322 639562041 121862071 378788496 333380002 966213279 176944721 999646904 677334303 359937632 115538666 276626245 864959787 375651950 89740358 306487476 837948194 37050480 422532604 468047989 533307512 828580928 904820985 746717038 420474673 808001133 970613243 681868918 567929447 543824058 450033686 27827931 575920840 724070557 171884851 421924061 448579862 68344257 586565772 186762800 717163173 834785412 405653298 608654974 196950495 797546106 332598919 945695203 965181123 630447336 778800836 246025583 882622818 791853386 276396916 81754536 208539746 68896717 572045303 436358917 349543291 888282581 770534912 146358900 30787580 278220409 769647640 808026069 180981574 90402050 385689625 596559484 23151952 487154544 120107955 13597619 260551458 540641013 192251626 580050229 867359066 847638135 597856918 354970037 762866346 267095314 786864353 496498517 937931863 752833684 738470861 795062319 492104892 787367424 247073708 14029520 579834821 684733964 711392166 574388919 383982965 781169570 640476214 733428955 490244192 274505314 737095085 681560098 403069489 121210143 6976686 151783403 390707238 652482142 981687984 619567749 933859215 914283738 858759296 948178869 269076562 677572099 230112444 108010292 991818090 494397049 581494360 311579439 595278179 910866070 641142557 448425158 576098016 643543266 853068325 552539789 234122518 818039452 794966625 167275277 357581902 579691576 810159891 415487300 279966822 605297115 805365844 377828641 837710673 106953185 127770511 617031689 518011794 960708952 537947140 57880405 899112133 798609026 967090502 303929554 725341207 782101335 603397053 243477823 15150793 386183169 370774309 442161362 200700081 635794270 614936845 933331892 173479608 191221121 196924249 90451584 658679645 734775856 346426049 398296264 251649328 794664296 502862160 458222992 417262936 292689365 534860005 762280913 572637710 455035739 230754229 436474615 158385440 670435728 265320135 235050852 701054063 521893439 738898551 661242603 659894897 73237990 328409331 263685973 642047663 822452280 771037377 940076767 272983112 812436637 722327351 167540410 128255085 773412525 506300674 557333898 425982179 683766969 776984224 603043304 944694404 144062530 642500325 583068896 506482110 979575423 684567418 546077300 483141906 5166812 860146009 196093975 185403798 392646006 289649491 13872434 518963060 815933343 536085642 559333282 472957545 103416416 889225975 771215928 993993286 678257906 652845541 783206712 940671859 399871300 780053108 490300122 319972199 181207673 201333271 306681293 273512241 801586023 39452950 358343599 683628018 806464280 978057485 104575382 909861728 556965708 609580395 39135882 922761797 912761078 198663668 837127176 561862398 600251067 120105280 803122305 18136573 690025334 410455865 851475416 192245832 67800247 741349793 135600616 771140087 717420863 185955466 447537404 281090233 288499589 307902172 778619477 100384336 992963636 834907858 606874280 307558160 594578091 736893053 643649693 148777572 698272635 267593792 180938065 146878794 109306093 693519698 769919701 297707218 271511930 620151359 38282924 563700386 596024400 41117543 884215889 542585205 733286356 989898622 668197807 709410199 588868122 213639690 423996327 953986411 338990447 672329705 683990669 360724453 499766992 481741768 749830827 347513105 497585776 849140396 263607997 328058506 464974902 480797293 271054964 65597955 794353212 635081782 455313139 504363970 541708113 167592199 58163541 977190176 909090168 802393139 282440485 763909898 298317415 318220258 777916644 7096451 331451401 372023184 174540422 242215200 545647357 483262604 401785845 182810506 11704084 275292794 122337165 529928192 156336086 436219858 222989470 695610066 661195006 981128286 356455406 862631143 859176186 271133120 358865460 807986744 825118572 458562538 880173214 846278226 642247083 938596772 131350860 360259288 535006019 137311497 362696146 676727807 219898481 602663946 110595002 995603217 210044583 738692329 890409728 940216555 10162958 853106880 228651156 45254270 611366143 207030776 217904348 38827345 337731209 907880146 114656303 646247933 800092911 549940194 341323099 706499760 5331239 698924686 808665631 987376043 48235611 314782611 205151666 133584324 318040172 859556225 271279930 937541861 584210026 871207226 602728534 485176459 802517789 804287607 238841237 317070919 608954240 317805635 336779005 83846720 210921280 728564605 744312453 993237424 567810881 955595611 809943194 512939875 120243737 147137506 783088286 880694331 238210195 258726511 664765796 997537710 444999726 206488113 544239030 69356102 800663452 838633132 221001935 560266784 977912643 204140087 899091681 989859182 877611967 142505087 769011089 16823029 48724574 733154050 973815414 132341904 310513570 331971477 299542941 489769899 766483907 338383583 313259528 66256328 541332779 149764315 226468906 131836158 896886520 100399962 192381037 633679476 505890173 920774271 14150060 734608107 181069505 42080577 461737401 365447986 119751422 300329964 404306904 639344303 211936035 863259808 745210178 736780253 119506259 243601360 6463908 617657032 59136868 795389637 668658077 669942163 464253793 553774105 215843651 508802802 742836745 390751804 555951263 534856880 438845773 613675507 469899820 620863531 594635477 591333076 219252060 95885011 690549372 558732234 418654995 881743534 848905936 728605591 543328810 46159063 709457299 873486157 444273645 465234426 598434877 462180052 900833437 786187482 648050295 89270632 670869999 363453644 108434593 157324312 996788108 635870265 440088141 916242504 459170703 106364192 212126913 841869872 29468426 839280529 301634937 996585306 483968129 853534771 740410020 82830632 695132269 749567167 958853026 984486731 574259642 160657538 492170124 649377357 814089801 955598559 614843308 872739337 100078447 198878667 210242560 622447661 171572852 98947151 224069052 537027775 192858901 841544458 429941701 488641685 879962627 131671725 551820598 860336603 441130338 89668732 341577183 465605265 630156619 882226900 758976705 157876491 467999306 637039519 331412115 523629167 611076576 168349921 803357248 906111802 684526338 899189551 910089063 559155132 691663000 416138803 680220890 696357527 401286143 776578858 745431839 990604100 697697672 873541477 399087346 281848461 289099510 150233291 436346305 44197652 725487620 993011798 244333102 996361675 658393309 634752658 373207697 961911418 864978594 925708833 327587700 631172669 725920744 625827897 870722069 329054211 311989047 430860580 378900711 817611024 575406988 719726271 619782161 813244795 273765079 147455739 132126189 580767409 748881534 847127136 524069258 549050352 772302297 205904005 177335083 282799821 457560244 222249113 104726726 991247279 18376144 544425437 889731206 596939345 642499425 245062184 138716490 19613764 94344081 229271138 311162147 84088170 532222204 59861257 89604570 797640316 933829426 477398703 362348903 252344198 951640377 333659769 859932283 475704422 849463305 33798818 937987831 71134544 472676109 472649974 76767859 798778700 801651880 758483799 113724600 930603191 794080430 88728636 725256262 646841278 747529959 169344301 467621071 726248678 376081807 238339912 421327802 392439175 760849881 532818367 15011489 273702988 872511079 986549848 121463251 462073780 740352468 383609835 688923347 102423700 88675114 764026600 688443607 349848211 311241324 192817102 806481738 92893869 476436750 98192309 164940874 503184305 715331703 89810117 381169962 212816067 417811590 767117501 781537521 434490330 741867530 448832877 176619738 618331203 584543561 250265916 247376594 968218396 326490746 51005347 370222590 99744218 348965451 12785583 385562418 625254084 57757275 385668227 238093178 235428725 756890049 694160852 235766421 730490206 451273603 567916651 946583925 763075137 342111520 391471271 427073728 999380663 266112263 8125176 700975442 795557547 292994333 33644133 980563641 924485085 544598332 385357063 628228535 698839649 508926382 887471756 909606084 272470813 730578358 961312437 242775690 761144910 804322823 964947416 862607463 922204675 922684235 288658270 392882414 373169825 885941917 191583814 655275110 542420829 760802319 107879840 96364873 320740037 822479141 919992595 457159367 96731448 845604696 428638041 162575169 9372521 316145301 881865917 246333646 33317600 624406459 513218979 753369017 39880825 483144481 987907329 338260736 536044258 114142477 907535070 387358423 283211553 127045181 306580698 308625699 670235917 234440290 606040230 971317760 610582480 652770977 223552647 538918460 878184555 505421840 291429335 853564377 638962738 963436095 645392260 615055503 866115404 204404140 116930192 652507207 961276724 14422093 186138767 536957345 942411579 721955851 964526636 180277871 78892291 451274049 830018468 555674168 254637829 983408961 872598345 458390710 742264588 345081551 193577984 62125656 271712952 530171044 400890819 898580673 495180285 999681004 80316961 527197511 987390881 928641736 402749113 693079925 994144193 790385869 476075458 608736649 971747916 668150660 167460998 361220854 668693382 300886760 885241827 560486627 615787655 34344939 572587209 802756779 983882170 758347505 397395646 864460380 474702687 956411986 438082653 141044536 285039113 677851357 251546066 755993142 889479456 336891984 998709600 967958145 828238687 19609569 914016731 279436792 406152535 198990520 150220078 219801517 824183787 963512434 514846423 808311398 241065682 41147808 955542118 856785183 588841241 960892486 888333826 30894470 346709918 266469980 499457763 850988670 876179350 415113808 19531737 68447901 781750535 968593283 438457796 246546093 135649103 391153863 447830553 495360558 664427931 960281319 822386020 37716947 214468465 733524255 656000960 384548353 662722343 742416800 729490273 140454739 136772201 180365838 44037386 424013080 265203383 469012993 95054487 184172499 952129508 177002375 255581557 521631162 293661336 787281824 294191909 959126329 171900111 661000897 689125821 466843500 112323672 414957906 510398566 708283048 850083159 886899248 925355999 267274994 456652484 82630956 985535736 732442246 176674538 361691529 124879128 4340306 693252072 803320962 274725048 477277816 502762547 662139330 943576038 294675664 256138514 392015850 873929411 468021603 856409889 605139726 330205189 753730289 242000079 317910328 573548918 69153644 171669728 408425188 894471283 49419899 870268139 876568450 130594925 818041848 478959068 871747576 16759148 507390578 653822068 316406557 401269895 222529964 59835844 765354047 460668013 13689116 99120566 558412190 265574879 912740973 494715780 791895279 541435955 964267517 393843775 24497625 995872723 946984800 525503305 639960699 544493244 776034267 621821659 53116388 63885056 985180905 788552832 256766106 69420356 792614074 153746328 365708052 547532610 727769775 287482326 973905472 864894536 910353375 732974531 879717886 208031160 675186582 463929657 314474402 6757254 570600912 724429800 765922934 850894525 69544386 61754324 933214261 561164282 578480722 292057044 881004946 792985071 881412250 305631253 982276783 939282914 761188457 937925782 317333414 217700907 930787521 287659434 379865348 494944441 195656794 986708601 891756105 171418510 735787550 193779582 613002857 327076159 691133867 738811146 726044750 92971893 761182164 494438848 363394387 525278062 334848288 804464919 342778314 911316604 165254730 440229339 346275192 433784965 635055295 312820397 148788244 505786497 869868835 176464510 61277643 742263552 558649804 953681176 860728255 46810273 978419525 532997013 777424003 146772124 842759885 494702310 587618465 488457529 648843990 865000525 136729364 797004375 575007622 537029603 119788494 613726182 832954169 277910803 603005491 972771437 539074301 800615197 60741532 41984389 568037652 293180308 254829014 717099611 431104374 349979360 731303328 492799538 830961740 686056637 384598832 475133663 213120630 137781434 294558383 482358603 448539142 612291259 199563448 882313717 865640643 591869816 501873885 449351533 495536295 987578620 681196578 998668506 764996705 353194790 896871808 225580661 788025300 377069099 841562211 740703244 274768022 50541330 835473197 379975552 670251634 192711734 157043121 493794631 146490855 526483400 92597688 277735659 716543654 616057419 694697344 725861256 170550295 471932182 956262455 61818450 939663829 334458582 99355780 687650573 804355117 431437833 784252671 476823187 371767972 197027715 35053236 424450898 317847150 736476909 491447717 311334347 383695095 636044097 752713029 183682324 472388702 208999760 656426749 207943511 309267957 217212476 931729066 618525265 955785923 601297406 893532445 811945940 196200450 522076129 781914778 54303301 777243041 603030789 93425498 378832158 941148866 483122397 642066441 538972525 660885565 842761649 5971016 272850516 58644252 196870941 800668972 391269767 926070557 645537936 401219517 177274833 281190707 311031246 978074488 265232783 739479045 841586543 926485198 903907635 988982382 379527517 915777443 874292162 864726011 938436954 683782607 990341975 911783280 70863224 30635936 993239454 357923140 349275295 58083414 613661273 178244128 21638410 671279270 16838623 906788707 421542602 143354168 851825560 368827297 942294082 738381097 126664322 302410015 732362921 109436042 211906991 664183385 533687947 71977182 612168901 863263357 987143240 698833824 28281980 268188653 552834708 175587515 621732644 784202945 303367413 167855376 266990876 116765507 236601928 139476212 874636124 258643569 630242109 878357167 80556524 279147134 643740374 842022142 523230826 962458449 142218476 608658833 647079049 460723460 307540650 210461582 760130700 406505062 809640208 971876876 623722447 959015290 58093937 316589721 505812287 505828342 902850549 715273141 194627036 845552069 916198424 117302100 361112382 258418565 400419113 166238560 981604877 667960586 76401868 336545845 200949384 520947673 583603577 332160292 422850815 216969134 916485882 187714288 661272665 700201718 373391089 225304147 330611343 641471318 528999760 518295162 609636655 757430306 290938590 852176773 588263386 46907622 936939449 456364297 936644294 457303521 229248975 703340685 92479292 493726341 622353251 230494224 630352411 506350073 280891279 227716737 153989203 987942807 6312636 7686214 341878123 383644014 979814187 187330998 341493757 710789824 875412335 949958559 912005684 257597573 260806897 26727360 388403796 667287527 495047787 439640912 616916275 17923780 384428142 204217206 521761464 921510448 885846492 351658446 728131683 960344304 243579502 50341098 385296325 836376063 730509615 207406799 995401987 724346125 509889790 435464052 771634007 80805115 321431313 359099718 82062735 526256736 790827373 811879335 586627212 529235975 547272558 80479594 935505861 395776367 867617350 702615385 729906113 910002505 600610678 464769200 670666912 922260990 234320214 303593887 850944659 844921383 667557267 148585419 645436000 240870163 181373867 99264205 949162975 758165316 164593011 770843825 365878911 895034610 582197138 283117177 289237442 575434374 591860739 228438680 240332220 612994336 1577111 443899256 410076056 262205203 81278320 580487668 225186323 375427171 822539656 262234590 543398911 117819726 848530728 29308538 178956482 370839744 800430193 92173057 694062292 197780189 543218134 643403552 448049220 39771515 851483296 942443894 388923188 546028709 304304489 777288729 790921816 67818777 883510433 175487762 249360252 407382731 30650125 472617180 133647867 50680160 918301250 230207209 722973000 207077556 928688942 404331037 554035049 579145044 701725840 700684113 228991350 341326085 454424955 600558033 122256415 485302075 242165719 286531039 404236836 661363107 289692896 523200814 724625626 988851353 256621477 353827175 909643949 240248754 104713098 386615463 984126360 62681652 739447495 635594239 121431982 914683289 191864038 912350195 639041429 937084432 847307592 231372540 3016966 649106684 622399393 58071558 48313167 968643443 111600248 980485362 730644945 595780800 122499496 730980117 889662593 285196513 234324706 256466359 398343275 964673289 477658665 627602582 80075306 689330719 820918356 435332704 231453298 703721278 600039823 260589372 794268295 849123891 179775450 18550594 977241795 717948418 406448009 975754494 702630164 223680354 999357378 625449969 699659131 4589372 263740162 677704976 856525966 545459503 481833880 37779779 794978294 896719375 789852713 223684071 980595442 352753250 347656746 865492813 80581331 66421986 283121769 483260729 216715646 757680893 992025477 487388003 958634477 747227480 248658545 114486777 996059310 359416392 856945909 882662939 455972450 842537047 436398125 374728798 523843135 52694725 579126536 480685386 726461583 728959493 137982154 243092444 499857711 28432443 713191306 24356869 360401425 113638853 590021813 240698152 396960698 329657263 316574601 526443680 935366084 752725053 952235419 512893496 73112413 603988837 877396306 67214513 886429127 921523026 582364777 259555903 727867094 243177186 888871025 403687180 633897845 203351081 59176268 604240820 18681889 41191148 687735731 214138824 805492076 769054503 397052850 477341259 738440316 547187592 567676199 775844408 736352649 397530609 754358854 758544121 944867426 48683514 145593879 515239665 281140457 749099372 702157046 889223668 801021842 376675527 139043091 286950858 37258216 690102205 515128048 66264752 7616777 544231349 146096614 218551766 747727397 228496457 63497376 206248929 349958402 478081480 222599581 659660139 771519099 105862069 914550706 736381822 554534652 902050117 256360582 793836061 777961224 520347621 617813269 87432892 302517172 595702195 950696494 169245891 38401321 251030528 861152501 229489166 88740645 325660628 792568673 479721327 330423162 503337578 416414911 796800811 428746894 125831599 149196333 659019641 655190490 618583751 986984736 423579911 703823979 757574281 150682591 152609652 379444068 282093054 257939973 221839319 531704954 294793957 270217475 763033399 874689654 643557426 250917531 237028112 509033399 892529291 891855206 130493908 347062445 841266890 751399759 124974440 293713503 97627262 144968214 659035043 182577382 527636073 769209807 58580690 124536304 709481219 219172704 499496503 11351358 184484597 774320902 856765573 492790054 489792416 372550864 818713190 172232465 284031892 616046371 748138229 537814526 236686617 589923124 421128260 201144574 338361001 345564561 824895448 184593334 877365619 66069657 548517160 152618208 231074778 999588607 690692641 830059210 369742324 926796363 791437221 264224213 595501068 807381848 400775175 280150775 8761633 9031383 88462224 710116410 621119845 78379979 961899262 348674363 818782910 150504972 57115136 849464747 270982984 24131780 974822331 738400722 238480848 247377652 210174280 294756615 367465563 500953072 273814067 895003705 238175901 443003871 400682237 833340009 901795459 318376508 573490076 171085613 484341930 324131416 129166838 912263471 439284453 802430933 254930025 807395500 130155706 929153324 55516230 661927926 752155622 594470440 864203345 534283762 258139349 818894953 575582019 21874843 571472170 713236963 876761160 944392573 961081405 411061596 345179010 284382266 99543960 19657457 324031108 666458377 260244346 209387665 288855767 962981170 798009172 76527232 378912888 600030611 21507150 986669526 383776344 614606622 392453571 901699838 608864987 520268121 219968448 742868023 31472730 21433564 697636745 976330262 586578337 547332567 934549013 6944258 704585329 512980105 559138957 871224503 317417471 960371658 123901137 150239940 447873907 313883522 405187058 599432461 685231722 779196207 673349305 352100169 49271157 860612707 413756447 752625797 642683544 577693508 87137747 54875039 379189195 843599115 526259895 188353995 408835965 939411589 864086371 920167698 82359052 486277269 930587297 846633166 158518605 523432112 322920431 129222192 165602571 858187103 654253568 67958458 26022784 898175681 926187835 950715077 629046493 532671750 898569275 806538237 78476488 108244725 800977485 395362271 790238425 383310439 822374901 218675778 66386716 289222345 57897833 846847435 653882514 132118942 170031892 414479991 282493871 787557115 637893141 158252053 462303453 788951562 660432061 67695817 224071928 901888391 81642261 534378891 250293201 692427846 33936725 338860198 30348971 997909419 3838062 350767161 685911233 492507184 416429186 825887929 68988350 714220515 561382758 446430573 966315075 805235429 703965991 994280689 599353956 721708524 378378370 637076404 254780971 237668033 146617194 855558778 159759892 805738179 270287237 391383258 58327952 925416291 961242288 313320896 532887426 210034342 993033079 555407341 379174084 536624550 307560350 486026354 581969059 386961169 910188187 273439545 815267167 887486888 270747672 192696188 104496301 819198146 420446326 614694476 789031989 152081606 269006149 850994443 675125779 297640372 694470605 333170674 348317530 894478749 458807689 964229260 369974924 803510054 233084583 73273913 213104675 778131466 75396233 804967084 91810060 27299733 984802886 5070445 119080743 397764905 979372841 389571928 393105352 393517245 913721649 683511069 240714297 876033881 89016720 633660862 90459702 90270619 476129069 355345939 232710767 728640565 608810274 187715145 153384713 129937516 995116862 177839711 862627357 212929691 143618179 126993064 179294776 536804526 384289705 977934411 757845722 867622567 302239130 369166278 430975223 597274397 718447604 815631207 197504377 786545080 927981962 818475474 459685819 593888182 283445475 677739646 18222095 163447913 68310713 816985143 825883194 383888823 884164732 581096861 248777715 212707993 984778445 507618212 285126503 52272540 399877635 374985747 250622904 961720163 98654889 656411653 733272441 502004514 251728382 857492074 355082036 598271269 545607283 374486663 325570020 804292423 30427697 330991730 708457339 248025980 866331537 136193431 411717469 58889799 587640225 857526582 504800483 812076868 330523814 906950882 66986970 180620704 779177620 648671491 139205889 193168027 481073560 692888405 740356238 986945549 75842703 509875559 134168234 536294111 137939340 694854429 690679792 559555469 997097046 181551919 699965426 351623339 595938023 85788584 82539444 982174045 878983662 132022887 200444463 36373469 326704974 941978529 717430992 465479672 359618205 676227165 897046518 589161361 45585318 517761270 382505847 629321501 943937255 208504733 866409243 950608422 181072916 200145109 98304288 703364041 723999378 173587957 440632501 615485751 119432189 713119658 824427647 226807351 30492834 595746930 468347670 948055971 417000453 645764897 319438729 508493286 613009245 548589920 367243734 220428677 402513939 594559017 275252595 42967443 573347399 414086733 32094152 892952122 220630859 453501166 282220722 881978681 903703589 878530565 336347906 273949793 232257553 495893725 573720316 566163991 832037117 888539286 473591513 954926550 859270668 393578659 513504581 236461226 88564244 615734092 840794081 287476149 500299296 361949741 328409026 937937581 35965934 512491189 244462576 476996700 158675057 389134504 52682216 52250911 844778064 802371742 92723739 676669288 537518182 163064449 617689709 854862397 608884288 403272723 889280182 110822838 303670434 783213926 485919556 945197954 887555074 175549282 815774039 280640867 639081227 349462594 212267428 145468333 366757660 935468055 604026579 315978187 639146183 152110915 947690497 853454010 72221778 544726272 678113087 219225484 329535545 549478359 616783377 139453415 494711722 89761321 871676399 459992196 994453767 166116522 532812487 964690352 876757096 714108128 314205561 995538894 387529238 29255592 46463066 926477266 289765649 59319730 77880754 816610247 174487435 577508864 2379326 590755659 442246507 411641451 830135726 191509518 688906956 376093214 845011240 39974999 160491131 909475353 520717763 502589310 367668348 461427119 785097485 936165491 37461637 959420680 907585926 148373046 941101697 92124576 556142371 101967453 46277902 472349382 912769995 551325073 71310847 339346974 829934557 717008912 304022748 494824480 777956009 791798317 470616413 748785814 906675442 808807116 98043891 403228962 939505523 327548903 88154175 898609078 542937942 296760075 609012121 427213593 433274558 586313179 205806986 668666217 15123263 962005132 734869074 632792724 519981152 668790888 46920547 765380317 318674976 66003019 537021411 343198045 779553646 251409705 204160814 614983296 312394928 863475846 356457299 926242948 961168445 699650300 547202962 940564477 94084835 339061433 498687716 759107668 629539426 92329982 694563955 329901635 852798958 744431009 965723165 791591002 228567217 810898316 409276149 966445950 935018054 729256763 474144706 368727397 838863680 448369730 742391679 221800731 565230497 650576069 232692697 101353343 547620707 912485887 743788468 36806086 494557427 297761979 304116135 578427384 127329200 516628446 701960315 939044206 458099313 716175579 365481391 349330266 31039996 291575357 349928951 829622079 871296400 779168801 164126137 301955445 607923548 90813625 270714254 802249639 602029317 797129930 608480455 698235732 340456484 664024110 749087206 386286161 806703814 376061524 473379104 488222021 890387434 301577403 70451938 337573931 49729542 915305338 251146825 999553748 830125443 805284795 212857256 264178018 79982396 476042299 809280774 463149774 323665155 583443916 381057693 569083236 104608285 351436244 763557725 502704450 441153472 446172876 176137062 5117660 165192092 27253953 833006738 518516091 282339919 996094933 970118888 306078137 490675695 342298303 345546538 172179462 854225029 236443975 292984136 333932327 390759564 836354251 812772075 937933489 986334582 658654398 206716395 915624338 421072935 988655907 974392025 599977097 476586872 54578966 99612534 610526377 304012981 650010947 383206714 482562522 201297440 247882861 559423438 410613080 199113580 138381801 270748050 479311410 276578882 930743328 239692824 808714188 269361855 29306129 841560743 603172957 199880692 522892492 670164153 925117298 861937765 210991096 962542717 438905961 669062283 553062989 356158294 942869239 358248786 576507675 939450457 344258979 106272923 16819650 870407379 273574984 627276731 241100344 337949377 309906583 783482875 855885702 610085207 696242835 419138326 660670027 59565946 283026707 369956797 784256823 884243013 235918403 996246550 149230481 756719496 201720867 911486521 119056306 757625412 913808646 936708786 861097352 783984432 545781269 333159682 261683476 484513079 695446986 12078110 321913068 712789496 76135029 618580206 3953338 693106757 103619259 421781711 813500859 78528676 29130257 11614226 883282752 389433297 275462469 338176123 42832688 338201402 901399286 993168834 967365764 943681922 655070743 302131221 149438922 732544766 613614704 106085524 510270884 717886011 325191453 655414228 677983046 333274230 747175693 302327901 725103866 457807394 630006660 662480172 568203935 8291174 287189145 881026610 975350822 160040092 126959545 192421074 740478996 921379540 877051426 54312039 915706372 328701519 951042921 185002684 772683042 224553732 551577589 27234962 454235312 556899102 417120641 548257310 514450053 845509499 640321950 550646151 315831688 281950255 486938158 690741612 297544250 991569663 192226794 346448221 860409642 390727655 197527774 346822749 630892414 429851028 16932584 142045031 438627184 978474987 970857532 619084774 709990607 276242560 372424674 179200571 854843258 212850464 686296118 201111098 769942505 48297032 926157672 214036909 807918500 590242219 906060282 685771984 390684105 504011951 45207877 772729043 267918218 543376112 224089076 497144412 999672493 812225724 483405446 551426 568681482 493834134 73397200 523530963 329005585 55341236 10008953 788649166 148356929 388606337 294976637 654067562 250613426 551356955 8091051 746384910 366281356 849290198 291073063 797717654 100469390 399957943 717359080 586761685 874553480 869393657 212368443 403992589 237006049 342250892 565669950 595469688 764458257 967197329 618325350 574564547 8217128 619068127 681560057 475403662 456344390 967978881 564299669 416335597 420388385 951182390 448140199 994952170 823626114 538456560 413971957 342177280 235834823 141700949 363013909 285069729 404145507 165505857 743782131 373944498 447292762 60260162 94695247 785911050 501722054 769789979 855444541 788214518 701463124 948593218 179166371 615116728 800578759 647245409 629610686 367224835 729046388 614904280 677585565 617345665 486854597 111676729 616695972 626824781 759312055 975409355 673571339 60569465 287152987 285523721 627001181 351079306 6050136 468300576 106423546 577993207 511726951 314145140 446784917 426019501 651289558 162483227 587891894 432584334 789761286 969201504 876759352 249457645 792951277 945017922 715772876 458433811 113415829 248218866 13394805 946470078 49787547 975380825 159805962 456445085 173676465 473129871 236471992 682528725 543453212 576579173 356737149 606444927 732713782 381550556 135423150 57738023 343937517 156162476 301873010 721145167 307750722 969743294 449192004 461080042 538125516 738119346 326982261 191485153 151879475 808476250 351920551 258432657 634690741 845162557 481141843 945595979 993342372 322256917 784659524 425141459 443380965 548882001 649024794 433328866 537679986 694135956 928301769 237475236 461317593 749967924 471568919 984814907 291283644 38076604 452545313 63393082 891082063 916049514 348747734 159377194 267551453 600233650 590896250 914267400 728137284 237190841 208824357 974995397 464416372 893853146 318286146 331573189 149655795 98214949 569688080 855802209 321000540 877443803 583672612 476283237 311452379 509098227 166588901 907907474 613136051 86956441 971839247 207987485 817344184 413694121 944242481 867498286 434810581 74756408 950733615 38664546 952573064 202591756 998538432 511999050 97335137 783827487 432272624 962018794 521372039 822192416 65485984 498300475 556872754 577262065 364268801 517879209 675896882 501185322 641567261 696620437 404589158 377632149 872030542 949742804 416317510 14681776 535595973 118417454 671213147 693535534 381628676 746556128 622620353 276724598 484628836 96235290 974686123 478430242 186142864 993889410 689287135 830380674 14235144 981099184 909594422 432739095 931800992 547467184 699954462 451880984 719529982 305522307 188369176 511724016 90591007 278859677 795003706 924634557 345221330 754564456 490186925 427319251 963773755 992952512 225981488 149521975 23071058 302447990 179867795 756948261 432000354 445630158 600676157 767530891 851862410 237112320 477903015 622863755 437273151 740716218 104973535 546730237 418127048 402211228 712100870 599956458 441073601 773571771 498510034 382695186 680451993 114980382 346193677 404887655 295518995 968411716 412936724 39975312 929479625 217515165 840404312 801826407 596252836 309984268 890786016 762115963 243140197 840741228 505732550 239101583 536602144 383710215 418719925 516848921 296847804 194280992 455161458 479092932 382033524 352273771 193349712 57921006 149156696 930753424 5463738 261722155 604642253 45279403 476628909 696706240 997907977 631538127 318878011 902355241 992525720 437654398 122178569 469145491 454441946 949871667 4985809 688157026 576449666 137502936 877643233 160892845 923853336 79430480 182229915 40956349 860377208 791553262 702949107 952765842 779570002 907411708 77636852 982825054 644485800 447656246 322979387 138215687 309209426 931838028 515060090 840177833 908898173 351942243 722462199 948793618 283293480 424108437 322573322 418322757 129867429 751015020 791929250 81541112 574511390 722207851 896357569 254431765 595790094 287905413 265819643 643705660 451040452 151547812 106592507 432764480 301769956 867406627 841012479 532331942 858909925 873435477 892036951 860831273 55496595 425870844 33221609 475117880 326574478 102409938 363664304 712725366 820884426 912510979 48245049 261692218 525891086 48795313 185534756 479423757 63284597 636495727 811805353 33471022 98214127 666733255 720645136 376856849 212825537 259768244 752535352 147074011 555982337 102764584 828048913 761273576 756284699 642597256 511084322 477951814 116165199 935498539 46640131 216223543 751079216 246919390 164761060 85370547 676351014 714236770 712356357 128501732 552569581 166788845 279000636 499169191 942331668 500238757 805333874 772596754 430153343 128242216 17726502 565737192 801011174 947734535 447684328 470941735 732294483 993074246 128857311 707462267 775506088 479515614 693276740 47721928 304585239 241737788 518510821 889821604 931031208 697701311 480754339 816051161 396744886 576635965 980995060 617403112 736082034 180202879 126947937 575706241 125134943 861316544 234080009 785993229 658810836 537403442 864645405 718669092 278353277 760120185 501278306 131740183 105536475 342981165 38368690 432510567 898250175 495018333 90382715 826131275 734962899 332531975 209058878 970210863 705071121 443662497 823756049 848101168 698425929 66322323 335991326 760698272 253085856 27013050 993173282 961645704 429058828 756846055 861692911 448937249 475962073 481914462 494641386 330047834 622699815 754876760 288792973 939333718 163567977 826279809 878374118 631860459 404333543 419141242 457531926 292054563 708268605 69012312 521624276 155082174 189914 156415779 15836648 72699055 146893442 464351576 943973808 551438235 535997133 356283496 848988830 729533789 209735333 101387319 473671607 511532933 323688908 312597661 664321813 183525588 990299220 164135912 196366439 535966145 93762852 493674841 122551660 861946615 519906938 453027746 601188476 974308309 624461924 644096878 881122047 332434668 192614213 802955225 844095475 135237765 100571735 121084148 973688426 397381401 266687523 693493827 861442569 398375382 327561482 44454206 246072203 528371489 643013056 937111507 63278396 671078670 488812491 156040418 567158655 813856746 752570376 214309056 591054665 994737330 375842599 698224565 41538211 703560089 946768938 29970046 103967019 677321862 395967722 461755083 349149331 45142419 761232018 816180162 615828257 297841039 27337250 227532922 168124462 712928381 557054701 171885185 111357607 839223827 227629339 349115479 441840015 682456124 888763944 446396401 980531835 491451799 922216291 957311287 79101972 772587509 792358000 589060741 907997337 394395358 397154247 52754222 743914074 694161421 99787570 526599668 599007294 397887472 511574099 460742034 199624254 478958121 78160667 143808819 370336232 284457487 938130516 40489207 364339933 636621614 697627673 550350965 884856659 156219330 618107993 167649076 634024083 506185024 302303063 723159344 253162364 277693646 588626476 257675612 125468414 79049670 386195268 991782426 889108640 593071159 295355613 651997636 117776635 149039972 983040907 399834919 921425469 107268163 255606455 373634563 105320103 186889214 920391963 832620940 434413839 291422838 266550087 533112556 159902047 415457979 538736672 656926654 640523028 665413013 874307931 119381141 589964224 556849151 405906950 561203571 780320648 364062630 787056384 216911442 253796774 863020398 745663868 688940447 205128424 128208877 418208130 297816761 668578863 929058798 266482286 331597431 138968305 484852464 158459759 979370911 365870008 779595173 802408457 266100592 884234913 461427827 533529236 143417881 370270174 441325046 187170490 161432383 604637236 806017404 119364605 235302011 666452862 555646855 671874095 316172762 886736168 172138575 516252663 729809499 546620596 810837054 651251539 626094709 286542393 83540082 302429713 836315790 427046111 38840126 336902228 509735812 362255716 241303209 915797269 888628520 292364442 751842541 244034208 953497279 500264422 860916985 686843667 150945152 378873795 788977392 30997218 186665240 392830525 541370536 577610070 129576488 371227511 901668396 234261257 587478214 134691365 429866043 931410539 324937976 544793106 623134918 263049280 98045756 305329308 336332149 34022944 101888259 116010291 118011939 887753974 198471473 610293214 271511902 290616706 431541407 345109429 979792616 414628567 165708442 517964136 100462649 815502557 386602337 902681526 123670266 713366224 216764586 722458615 248915339 615897023 828183581 303896211 671691134 593175822 131624920 639134089 419353 403008244 77012713 552463593 812988632 821117182 349004247 755589978 904659946 7046794 539332890 658318485 551073455 54132557 257445790 395329511 499587648 240561102 304576837 126552755 661106663 23726568 607363937 632003822 214815650 340963148 367286590 952919458 240066724 924775933 143205014 716471147 993055701 986387154 325202459 290599165 74208845 243754487 250544112 37509532 703762909 121807212 7161392 2709410 15695238 779910020 843821414 468315388 103555071 787501416 138531603 458054574 12516915 865101202 937948204 71424587 994305473 560702546 339930009 635741309 559963515 70919756 422327992 695120259 696494055 412039416 243981271 73364142 455757761 140952353 747489469 627389923 223606391 68470631 236747554 975320092 112842411 426882237 411033906 707322343 464959669 677402347 230773774 98535397 454416159 577716493 639163466 780102476 551243559 607888402 674497648 486016614 86904128 313115966 966104956 195600144 739393937 903968424 362512223 929999676 984299124 659831229 83862909 167689071 521038072 928413115 46572846 283661635 445485920 81194039 95501888 810009062 349606818 190668695 175614835 843944090 113006057 78118809 601631484 672839475 630987540 630303179 878265603 300410012 474719028 947366928 950619685 903195474 407458322 411236641 990953970 161497063 376763302 558445321 300972912 772093824 691313825 662864296 489740694 978626136 397145828 399219506 941506514 843236411 138864647 507158701 516175492 37281548 968101843 565718134 88364928 359239487 161306824 809985213 718323856 827990111 672931480 201393668 945022448 91037065 353556650 630840740 754718928 873811951 890765464 541290567 811932118 987971415 478871729 379602543 155711897 49526426 296038520 518627566 513434407 709661221 254610723 515298156 5517952 187540091 900742173 538474725 966869784 918005936 184484228 878948904 333032537 531447536 976559787 215744601 538701855 942224630 463616153 596420463 425205050 37748373 852323977 903336631 699283951 834136115 961914984 934400335 700110967 469603145 684665178 369856172 831339391 848426212 927347766 387985684 766855847 760980519 336758789 714575909 157268227 37002951 909034631 789166924 888842653 168443789 868317870 701317199 210703344 237713112 894850848 386584516 793323119 392455448 777145017 700728727 649878268 803970900 635009799 751502728 750571889 754913189 499909324 624835498 928958491 686690745 285512832 339873510 339553337 760288593 818043597 883316598 708632705 526611651 92542225 623292778 642044316 422668152 963863519 670688550 780931750 398531183 28131198 28168674 24773039 724963513 447605352 379756585 857495612 245475835 727904717 371733083 900836806 209287919 702982670 719520043 894714937 550935011 984394050 354522145 576000119 376653112 502400436 501063704 838549715 50344932 997863010 433968065 394011031 449035249 608739712 380060191 71080830 833511163 965986547 929176329 364246074 933968054 998772951 573642156 382851311 411085158 747901946 351918342 101982390 424475750 918408798 642324588 354418971 668642466 614507963 746748933 300758688 408635164 775482362 752750924 337559864 213075306 260455355 579673489 784650444 11210806 223144144 750558329 593563578 291537853 29720256 313225338 440993104 654041169 555817285 229558624 41156693 249287383 984571086 493926603 682744705 613972298 255269630 206434478 2170369 273648950 131065131 499299282 158618612 583127613 393917664 837812817 400232688 401609878 885252699 869547547 882328701 110274953 844643599 231231860 889741976 360527860 827764771 650982260 27253810 354679497 395345138 1377926 521382831 170019213 426034569 832964329 684393320 174034139 400556333 644196658 413290537 473145055 422634706 105099464 673265075 745534428 873076132 261256807 53707579 728312999 159183234 704305310 941613545 833305897 882389886 859107921 443028315 152303328 832630878 981017399 764434463 744863582 487294750 122392668 364819004 745288393 124482412 517419681 720768938 887347802 870063147 223217975 364610773 714269918 384771569 444154408 670204702 755601720 200547720 184987342 413897050 661066973 137054832 800447578 8261713 172456534 139808604 312603214 455800128 417732033 48854193 660307203 475320408 861561681 841278730 616688164 808951100 99766218 427006902 252414257 169439623 918209798 612726072 31169534 243364164 999420530 519425990 961438001 166109044 192216465 743047115 618842823 150178956 541766264 479646822 996429455 737833204 76620880 954779625 251483821 754969993 152654296 370292314 455512089 36984347 639095265 568503797 208015646 926307312 686725584 61213096 473107419 461385791 497057311 690276757 567784133 587125942 918679259 648213396 71967011 256032757 739137063 175912878 607113617 94425617 632368825 475302563 131750526 935288594 507619416 81001573 641142957 832235380 416549476 78746267 753252280 417613482 533350478 588471071 370877064 492437398 338477083 21378176 135048670 936518931 575491813 12629633 263313102 956997740 765088090 641985176 331159871 842469857 989827131 874505328 738647148 912678697 72075486 166963303 193279845 68091883 451195309 713693201 971437455 714384452 803782821 524844723 581476640 547911492 960982488 590860744 348471204 775564144 916664811 708288896 446671483 98102594 905812121 861767484 81067864 13255588 176592686 123554323 83044547 344209017 429145868 633091409 574106264 588536085 309345833 829015282 645081734 641001663 646600079 826212395 91066002 880028982 947722716 602564578 709778321 769497385 947727807 291496753 239929777 564849854 129493633 701809127 434587376 524623372 216063609 952840966 511332259 433723296 166963607 233417542 370914033 518780668 831129050 181884817 131973462 698937107 698720218 454680965 718458657 899587279 385469247 210820597 527327989 273628044 421634887 380407144 455630412 430922138 918928196 400256665 213195759 574083262 385107740 923930869 955983999 378508977 658966472 72533280 177804016 978876320 487836117 821493104 1624840 681412778 877928422 441638512 443845093 438663269 473062191 202121055 696587892 979961690 474616828 69598895 254224379 917596804 467857960 104982150 760600720 791322069 286971814 901137216 901402527 450364082 649488124 102198763 599556711 308342386 997509059 90451657 477793918 980567778 748503336 587644370 169704009 353633988 466595438 94911791 511372165 171508811 709775722 613084608 941229505 401683360 54492934 980784535 718755553 371659617 344027070 42798203 409665437 285316893 961912870 115680358 391581183 978338777 724959586 758917127 392395241 861176462 179518380 142237505 703286669 921751720 94630609 539765162 252906483 690718344 352121524 479418125 102294902 833214467 823073226 297626089 756753479 518481634 858451869 555077103 227576553 544409952 696410954 529035911 728990899 467333295 29910018 293069132 375780433 908396915 977927052 882176139 390884932 390773317 287032001 15759305 624787805 180393521 686280719 362993210 315198790 511734072 570826231 246657866 91222777 753504463 236731792 273878808 265598278 760493150 995058433 285370614 628619602 573273027 61903882 328476651 55025427 952915916 822148220 393649457 654393301 239853760 443538620 776747191 372530359 881490647 796319300 920257439 19437359 229872829 647494690 217951937 523883394 751089171 72853368 514082087 86344013 399176686 229187066 432232591 458192383 904499030 397769331 789981676 473578332 360680392 606239040 135011301 421736955 225358261 633947347 848351061 738012617 126587137 445855281 215083465 87587461 633856389 917736821 991535109 919219265 266289549 810664523 261213312 590823911 208675930 985271925 38344675 789787570 360945825 527342666 724745101 979540913 146836234 442433330 946804754 99051591 148521138 705814571 417949623 630183598 198580649 979578439 967407864 194989423 613349237 254790956 777227523 144932075 363840397 59719570 161138234 492788181 290756063 712809417 266683061 375463862 541643083 854088752 108650174 809339752 311666726 277306303 104774995 242411932 469150904 497007742 395356327 893581652 175439806 46264332 820606625 475977833 409725672 765739545 920318299 819122182 696284508 255546604 457953700 458624299 940262450 289759709 726936447 854993707 260360437 968159708 447056034 451694126 624056872 353566185 663653624 410176944 303207871 781917081 991778591 643570432 500695458 743028632 967403755 753599426 450738734 83160609 381413345 137925229 264474291 70916488 304852925 586731726 355715063 655258288 380589804 690572932 898029233 492886421 392515347 309064577 685965327 353305028 320460678 709365391 659796528 637307614 660263889 744179145 863873707 332282649 735487539 79498525 103734023 171543998 533684766 257071825 131771713 172217260 53626553 826098171 146175561 859085268 175835486 228390664 230694020 188138939 170063388 229794870 399713355 997450747 967031349 214878745 53150315 998402754 611748513 486989338 801031332 288315473 611153034 247949555 891237930 524696958 565198798 605833524 426252839 739334194 478838145 473160130 342148151 844098028 115965544 855925330 517444842 889233981 279400318 888018418 936214085 846227274 41524851 261165441 985011777 629051469 595017256 536658994 299774795 319570452 78468404 188314125 746496707 194621313 998748770 92667502 499787645 37950472 320299825 502352516 737143874 299455028 853634642 975580115 209857616 544136226 396735534 175142067 421283286 619478532 467737950 573487310 563916921 269980319 312592689 904965030 171967442 935911373 800912425 106245389 922371054 939227900 247349886 575312810 930323916 313449390 815756441 246470523 197292515 850212855 967785882 259010126 934169753 32843522 805605843 598033478 696018125 262981516 395522379 888615516 874630734 451334759 222294589 510206172 574173281 344342265 463356822 924384740 640593983 762828730 629996410 411531240 908074388 787814586 686494143 49121329 604809474 658932248 271106160 238856537 299169948 810247820 324366411 920827344 64598123 928125406 49455940 822369370 976788717 386279788 371748608 325521551 525253520 603089064 44416859 443489626 910827836 903886232 647117538 41929595 360767174 222256469 16506202 243574789 531873150 674937484 620734007 402800352 284429218 94894080 545607974 344189256 103347944 555428614 593564291 447843404 742169336 364470279 329322979 634050896 82591728 100261633 730590348 403882635 907604702 419460615 588067832 359411594 249117769 133950908 226731606 820768171 544147113 286948316 80338185 25261731 952901354 970479028 748570407 108298489 748773614 47180965 1355259 630523528 35889160 167305893 57077123 105193729 912990081 580854973 494188274 309837926 200191254 230878092 377880879 192163217 946956152 840931778 514764117 244554411 895284427 906387110 474877233 350530997 273132327 302151825 809714631 79096578 176494874 721377649 427885006 323511227 356400677 567310663 622830639 56632410 530267450 655456937 672747657 564245807 808208709 877473089 48122288 309404894 916913056 904573515 650773034 189454559 909747356 442543899 242452657 236509693 874204671 149062037 639463603 190418648 617588097 828032691 833341141 510535779 776126286 337873667 648644972 784241766 127605383 500057382 377558786 149043709 717737409 47219795 285063383 226399767 794261892 602630353 683961182 206741496 982496461 537783424 106809019 697544119 102649740 157524817 405445452 246822081 779294503 443434441 760500253 908269652 343634677 991580547 298005362 435108869 285108420 118848939 212590401 531355706 238760788 181337987 946154421 546790065 367482074 331315937 319530412 219670263 985393534 202904751 730505018 746576626 623223261 247929194 170159652 739855704 777726343 497460132 542425190 234738741 345521026 448285827 694836398 84539753 625448133 899385919 840185566 247716136 523526846 389695655 161193614 163099256 829702093 425308573 332753287 613055414 80438726 428586389 841923657 292839697 104445555 713498138 892289670 267803918 259467792 222236234 670916005 999352578 265662413 935764309 1709376 616526235 707865168 447587585 547065766 631717720 103242800 603581481 374777433 335130380 910109307 772471609 170479761 941574239 573382961 894144692 516113336 912141389 556046278 510415791 882378221 946720165 409926052 881317971 578674305 88011659 714384551 18768478 270789244 522344438 908038559 741887395 559346969 241240115 565774545 388267653 780744261 531957088 917152887 485999232 390289700 27732722 984090427 847426209 759334028 580763951 887299776 583187977 848544137 88967605 680629785 323181677 436781015 493112817 207605840 103051929 694827627 852480425 840461025 830692584 637525995 611201395 304153148 674816462 920342321 925684027 391918150 254233679 319063500 418320577 378363096 324146821 748115070 740155416 501947967 404461085 968745407 867627561 264532922 176550618 888383544 236965166 108697088 938451217 507945290 700689207 806206391 584400940 778895749 663528616 345253374 182314791 26376497 358835897 818167012 313826070 134288072 638668277 779521006 679011229 709408121 280779451 193403541 773274486 244073383 361702848 704083141 734373615 819892072 384735883 189584736 332810857 673284871 382574584 691479737 131657434 158835587 505643702 950049562 903352396 671865102 914890697 881344318 392796252 383713678 865003784 131437271 75566780 678992159 956134816 648106249 758452145 836558478 938385039 920147181 364567701 855405536 681417514 537199119 600413270 999410377 957521815 133783281 4466165 353242422 72791380 303488902 41298697 69248964 595816366 104976823 527645241 19606598 876317259 97137122 607827397 982728258 802418593 589374806 735228926 305758069 841375612 725509848 510617034 495807051 764850044 107751712 241511201 978729575 84012436 360553821 139041682 341581089 525152909 267150253 729653951 962816003 160656513 995670950 299962076 6636875 986665312 64842960 554899764 783338605 871741294 578576681 242874020 673778318 711999427 174387615 73348638 895828234 564449994 482756249 311556904 980518894 935661762 882818159 537401946 871966846 365420608 583541741 376234468 938726833 584769195 273316564 920859653 414513840 130973375 537540185 791432597 50161499 346573579 423329701 564832892 345781443 79898739 582381651 90166840 474895281 289081006 321549556 147193436 933875486 437213896 151780750 830651147 511530169 429936034 297821721 83093377 296338276 858374765 571397889 834780299 159105975 351297843 426266535 276873481 157425276 622463310 234696928 616910451 260968753 571315183 579960692 973423441 613061257 877300888 569206432 841781698 705529067 719331746 867442837 388303862 427711218 3603640 965816566 802026676 364935147 715328346 888650590 538361813 779927642 451926875 208351704 79202503 371345525 746436452 420316517 296556810 793676967 118358895 986466938 673757366 575126031 495326540 892846975 745928436 188648190 674118943 622324049 826346624 467981181 369004000 371408320 22115886 310980548 594176986 915288594 829734754 804940996 226230572 567782270 384961174 763134111 328669771 663244722 748186584 942753066 718754942 832823630 176179529 767810674 56987745 793389159 64917919 215079220 75689059 38415109 206302884 822060899 636476743 744566693 102474676 577179813 536942759 337648055 657527363 749722327 265731436 694739489 743079509 977558661 388838487 671721914 863057156 662784370 654025340 62644688 49793790 679326486 13026753 611882659 482586373 498746139 404255076 598834663 243499629 862494688 678272114 524510022 534195617 597867766 652496465 112202460 531108510 75251621 468422967 597346745 355200885 478786920 71422128 259272291 783240398 738903661 319000604 368798033 329158240 438194710 132090670 356498289 279269242 822559610 380370542 61185698 720302973 503325156 493361080 597930555 176935008 653625683 947166395 646082946 354716971 408492281 855140219 638223414 392610428 462289341 373505744 946864902 86969093 203912377 96783589 689517080 828439563 13179324 602026425 836761987 447734249 594411976 521082273 715859925 718295691 935668629 256584132 872464525 125825524 153473037 257127070 33989794 591596728 733599950 841048702 907297018 361076866 338146475 78155271 959874804 170164880 301920811 985621171 443381983 155457074 223452680 762099019 313907328 908670286 280821170 615733872 476538768 59247839 488572362 119273238 409088572 13602673 731072679 568246019 878647715 458897831 900665044 668191573 531535964 707312310 716078480 607169273 901900013 188775655 285998412 223147317 576814677 516062744 784701489 163833886 702933123 267523132 144115864 185021731 429928668 208818646 827407247 300600704 468259513 61742722 267752283 619706572 304130534 681217901 664665584 745799532 193869605 761536984 556745083 136142621 172637353 531687321 992283865 982522734 621738139 458851737 10836509 990911043 810023321 985395799 40222478 808151636 817619250 268430435 354455462 823100843 659604075 531558628 926291092 852207146 746397245 743167507 326576571 786545667 379840020 564023230 539125425 404899390 854541905 505148870 648553281 317109046 241503433 369561761 401273321 892450076 476327749 466178008 778337885 109304435 973101568 828497034 975888386 74939026 32076844 41443816 94321780 56054821 596314733 669868983 81486848 732127660 555180380 818732241 879305770 60009467 434357253 187769252 9314345 488769721 764430441 334490801 465535846 577170145 34471421 197167374 853516289 618670915 35535402 72347365 185193292 323395332 922621131 382353395 288032845 438956569 696839346 936489993 203738688 813234129 431151650 576467343 822831379 4535112 977511766 158234620 96250857 42309621 339119353 901956703 394077080 875122717 687933612 423275993 916941611 500954461 995086212 152002081 866487392 526505252 230525066 116190206 282718250 813749046 999845689 209846736 790595888 587580970 789038594 984303624 142646860 940761581 273136843 666418092 191116046 997898301 88467308 988222676 877436983 87522607 693898801 706787631 901736510 268738474 842952283 890030207 910550478 424958442 458696863 976896280 472667206 226880510 875898789 749864037 420559928 722282569 388542602 540874596 337367530 958299652 440637790 741178149 874460632 664188859 401660839 185130318 564881200 400845772 621288669 18842266 589496916 678453995 526143724 673951061 348501340 557718177 58974389 433600482 75189905 337515976 2669708 914814773 26001651 445764881 300291259 519139674 34670772 594653054 574335998 990981612 59667899 353026792 905349638 826698910 140995618 585354362 387252726 816477110 840036537 203767604 476720361 126861453 427763073 15004265 829411946 973025296 956707889 256215617 17118969 341958978 98793139 90036280 641720461 492192184 424452008 180149149 559367437 25203227 911624928 70918164 841717462 627678890 889069540 380081684 25110840 564523957 390327404 126345066 847473913 121589795 976751337 86633908 95541456 877520365 253196028 952347879 474212843 858097312 244678141 776337354 431434346 269923295 341842805 353325689 762036705 590591455 315975588 556935906 670527450 310453738 791584764 239052619 672527953 824642781 159953827 604212426 109015606 684923305 463290869 349497804 43143662 195797973 9749760 867684495 600013779 880955898 725786631 168689575 970612399 768592966 690281472 335166589 778841669 87673082 583988246 883939787 707093448 523500268 622068263 730105377 806322274 168985606 937241414 375316579 119451567 227111877 297039418 418221641 552545855 275590074 170019326 317008094 285925911 434023437 188148287 837907714 653919536 286319093 805847009 648188904 804203511 391211585 419216251 502048664 926649804 101674450 938481622 545007982 51932035 767833118 587976817 33065625 639118822 973196719 76937728 656004253 412986416 612111010 22936297 472894418 538141843 354018601 50871749 16372706 251637940 220858889 337957861 895180879 397914154 861927197 906994635 184354026 684091650 190403537 924923820 685005405 496735294 900183975 579213301 802162851 583978065 876808886 616271811 957777802 134107044 675127846 164022121 355192120 781155093 203042485 876349166 743556259 934336627 862617397 749889164 670290456 289927427 491991819 486414643 227056053 439725054 423990962 262763267 963001326 388965648 805055030 811097045 833788939 893465819 854077370 974216115 285478569 6967666 635694066 997991772 75403829 695401182 430607017 364273345 50905972 900707229 775169341 229218187 50998270 905329438 337490718 820023698 955565758 843022406 289603154 778265447 866397300 974511598 508207604 205229259 200329267 453768546 859757232 312143158 141429219 7149283 815622985 567511633 969963712 82052646 609804052 39677052 175718873 636966100 7641722 591083337 936460946 962089224 100367738 893794303 250664738 636276180 923133476 715149336 19548438 583070652 677504287 866889667 444075468 620182840 702084644 265274978 374558457 787078455 247011968 785914125 426094372 846954903 800685974 343733006 676628520 436280750 781108059 155758691 979270070 595066052 225556184 751697984 23615952 575901334 922449068 546832778 541457743 21809621 495580040 216857948 568876127 387685541 938303665 419012998 743099134 527213342 567198337 867305737 757057920 277945295 266606821 143172252 333700878 835803190 898116064 499427114 669068322 889595209 444537351 445440594 459670796 339347440 642400516 203453158 222211184 327766920 976783892 975423852 178581958 936962657 637316232 166766752 34150873 876806721 196589127 926438896 858362185 654771424 631361099 269225983 566544649 322274410 63589152 961000226 149421281 377009664 15216488 667520998 879145453 107546679 175708761 518740872 971850012 824042903 839206973 215148667 484576689 844189469 830943985 431277286 481356742 25723577 595621990 281672483 501406916 578659281 857722148 711824962 954744813 20621244 586265282 161640068 955464403 850272840 448573039 226815968 600773085 639074357 502708588 228266625 514116809 503164344 412683664 485833029 34119972 915588345 938074051 272034880 464560340 713185429 39006339 746391863 427950223 926770204 647966818 417047590 875280993 371098260 270803077 368006586 125868586 90842868 889167143 433984472 190417438 547321514 274842132 457807892 663101251 393191958 871580974 244765243 951197174 420856589 452311276 511333578 287100518 147353430 926205654 458239860 121709848 599849264 377197578 73304479 132002657 77088203 969355194 252033255 359744495 512000458 725767596 936111002 344736065 381053895 65084600 882801467 52504618 742222543 849210190 764017920 193342034 381950690 416547822 288531540 94908597 511612276 448078253 88066389 825051170 863349231 733184694 866309975 210975677 176643119 64475335 695248223 62559101 132637444 503303600 242905256 862901422 27269300 498684888 864019234 75101297 75706742 194889400 502415854 263012407 237587959 367869789 807489507 160633930 393063897 212802282 138796556 392767045 508342319 805973268 978202152 764311958 842797571 966583972 840438057 876348931 634851537 535386617 679923125 155816482 316715785 203987331 882938536 932087775 769846416 107670089 468903312 927761146 49919807 771288164 364658992 838569862 443346275 803595650 396539389 654882924 537071675 75112292 194993828 951891430 90093182 962684512 681067650 990726148 283551442 157677535 644820010 890786090 873687126 507893472 536898531 605408912 526076185 707766387 548392 887803073 283172000 577834559 791134246 833240604 422497380 52234494 258739777 711765846 51362898 556726523 174039183 716964854 151747401 209898651 224883035 924085464 322638239 591050961 569217444 452695723 151279005 222553511 782198171 790073459 72616446 886392508 975937833 783741447 839577716 389437889 344867430 150180500 380221987 763475707 186980387 121087256 618431012 927454148 30742113 617494760 649808388 665955594 406619352 533185066 509446722 519006159 327187825 658597980 23753940 948612519 866343628 303606475 173428131 178762045 753215163 577044253 900934922 892805326 178436293 496567752 618277467 583913644 963720868 682061464 226620506 581394876 13190343 603684653 257556928 380930041 28563665 627095418 647557049 140244207 208658456 729773128 185806438 35761216 189819943 671114161 651534172 102643235 418471228 214465445 314052644 485304800 48357579 536374888 258530489 756590165 510556665 790732050 789910541 553600628 73626657 915944461 960347267 44145090 248311123 50549147 736195702 398097626 862022864 839764558 53361329 214801384 290816911 637251470 289244406 555342639 887710908 297578519 167097464 814409091 806548019 116804728 911494752 808990928 678619913 633290644 461357643 468905617 711201284 873109285 843540682 823670361 678511134 986445364 59273184 683762254 752142598 351977378 771134344 122818472 542286238 653360803 350542381 227743031 378958462 241142078 127638320 825579995 156099184 597796046 911469926 558105865 807609586 910321284 18531223 540395853 217156279 382588898 352483584 8329922 269510182 202770241 749163986 660427164 314066905 982958668 351351217 223768222 3660064 653186691 386193461 450026404 382061692 283480505 65550188 600686107 233550372 799160983 307664470 790472580 537556099 152973079 903346024 316244981 363651255 190717705 990791434 400817303 784311572 394075281 741859353 801563689 196742559 296329895 108127845 400552315 971979924 197180821 436378932 373184500 644891873 242577277 415539134 668081677 849715368 801052881 173842862 546082772 122811841 408973017 988398503 313063786 865887285 166375985 396903357 763397509 455871172 712082759 606364152 311059951 834976096 25566433 378166997 16932869 555024304 668863126 596391876 135567672 389032846 913872720 201770923 554887568 832877449 572280784 691826529 605200420 185041764 905712938 897136692 627205027 291962517 204776772 504311396 518995150 983511239 785416540 493225381 970582779 734273112 954444927 473727393 294865044 817904348 537842707 937855092 530673046 949325208 773933134 865168686 565624339 251236360 671052476 610084949 467920048 319252569 960528061 548892768 802997543 33728495 833235460 509694013 655892166 507167201 149230361 223867851 188262127 570036088 315902424 39159905 825233814 8070324 732883440 387576646 213014982 403880135 373736805 562819638 636523036 609989783 826396431 985691107 318202698 848696128 810017561 302778994 121357462 962494608 786041730 58721274 127208536 771171722 964101791 81346313 647537791 164426980 710898071 187585310 768536845 938584968 930087142 393622832 729560727 733076758 592744155 520734245 955705030 335448673 977448985 908185436 656170712 890739694 415831578 583061796 683790367 448181880 469190055 654084930 752457857 471870318 597456737 245192559 255781622 984185203 151543356 542598104 968615438 962797790 81304574 771700125 942893160 331677752 391908293 841076050 351634748 739219648 454901886 625096576 332416210 248028906 583736174 920727333 462952201 71300315 49439917 206592560 147590097 159495919 110037926 890272262 64498609 435187764 921748377 71270400 81110594 608921324 388854298 318577130 46406321 729745679 876482447 807088262 603346497 865793222 527928757 942627847 543403719 57199857 871777307 319059607 633682220 521151907 292411557 862550737 59159023 289569440 986013706 174711879 446391200 887432678 521464407 602407933 834895718 722587681 998851435 82399980 217708922 17577781 788240761 383594112 672293290 997961912 675219848 206780187 937717207 226772084 164076534 750059664 595232375 499273962 935934193 803085480 6342932 900122058 667120381 152777632 598674634 734727293 788493681 857938601 564569805 118313115 365311225 266028647 603776225 764073589 704567317 823341427 27515872 616092044 143579545 730286809 256234040 166355735 279797547 835103386 768046698 496268418 876490185 632381995 971036044 154177001 546640448 222443253 25855432 816066721 350066102 42032851 64316635 329627056 263378464 641281175 716532375 281390672 994853580 88650885 347487585 353711728 205349081 282116821 350235315 180626227 758017978 354270773 974286747 267282798 768855992 90008134 948378427 251192878 887588461 643504155 107566407 876020016 409462601 606946493 330363530 52786536 736101392 84734889 565858657 828388731 263060313 961064783 818171454 156065348 446520081 275146133 295205926 381528403 32457974 91710547 407518516 866833257 572566301 88159701 798912276 671396093 289321069 958104412 417863560 969554618 122427170 529278365 653001447 773187583 7240522 419588416 433749145 692003677 362395979 512589666 926375324 89343261 759914587 347164691 62256386 688544184 568418055 779734745 539180657 968828508 69373357 78570284 677020833 429737326 123858689 541027064 11376098 16048898 493110412 436700446 737740947 461023077 154476840 806227442 322583468 49442196 763600773 951534014 439535925 115849666 786497704 67238718 331583692 547427798 548600423 884961827 447128612 987483626 680934894 906111376 776027520 818647245 968230972 504977568 229244476 248063106 547103399 922769630 67244357 754377407 90444116 962753739 535813531 462295919 737435072 712236635 481884374 191829297 575246138 483903352 103718814 241055702 917254502 893778558 555830834 921296102 235797179 997872829 726006498 397959708 186125062 425202427 326419605 527037926 551198181 277392367 194542404 819501542 958972237 168576199 932816509 149093747 464913925 111182243 567085537 152013849 245422633 200928279 432091046 471625236 235172263 620386221 969277205 471732441 942583493 58859617 190825741 772192142 436923545 784550691 946224766 354898829 213248399 579331673 232218863 303806181 941601768 768214106 460318458 435844825 906767413 223064563 11492554 161725023 562431455 473663718 924142755 311962273 70115747 497351271 234010971 36726144 295188494 452038045 623936729 744034316 970423301 403535399 171732125 530128653 221128512 145202836 123153976 903264637 152841930 616068329 300267983 727001868 361192835 210020640 913860252 502282907 168907934 559752611 345525613 965544641 682266659 821239253 537362211 796797001 11234158 231554697 457649973 414102194 658459566 135153801 733760042 258399918 710356583 846228240 201719842 213047971 518624753 534882384 63863118 446934829 557442550 666750446 64841844 96383386 220604408 626402177 278738284 876900972 286055880 510384406 536363941 755864539 604611088 288624047 450682529 295724625 582676171 435975103 576570484 1707756 311865287 792729008 666672201 649858559 206446890 326575709 292233437 997746065 453594090 575186840 307386626 882036188 365628499 684373157 807338526 990852047 431235717 87001277 192832681 421678477 471562996 539142028 251914930 141843180 507258598 526266804 836432987 766076919 788971257 87569224 257695833 454331245 744698266 659673681 660731509 509656383 512835982 397338445 612672013 659129109 889213549 596047787 122230931 847771338 573164834 754772048 252383245 396858092 182047853 798634005 29669267 986148157 221543777 132399174 16725973 273452340 193203686 296232228 235839891 265787517 296735032 385105508 669190178 437333877 25698918 126484911 573297134 660116911 941200084 473757984 511519474 121555569 498732217 318225865 422540609 439144247 986108322 811846702 392587137 882883119 325875949 623664840 871892331 97594044 910772815 512505475 695147597 1582580 61549135 332305728 959820168 491520290 829676232 617896532 587381009 767240260 445924203 468370183 478947316 532549261 512176186 260658454 629359309 507609317 321041422 340873522 199771213 271892580 987469075 449806719 285573563 320793307 4975431 172634134 617023856 31188811 627816190 632094083 720199514 930582123 417063777 716223815 288817530 1629478 841114346 385850967 399127654 154933019 875686889 279403419 822687175 986854172 422470402 201255536 511445724 409537455 192108973 707425575 744366838 201238416 741051061 59004803 388837370 720165421 773999290 192471871 491162850 439320616 131286191 529633926 967217212 83943897 918939228 524770937 513238697 384892874 633601244 499838381 382587743 826217785 469182752 106132138 819303080 748178073 426375275 674680941 675529313 452642833 209552085 509766374 32243836 696850939 481770952 376354171 320619902 716431206 505448582 798324100 54709505 51447957 149265056 387002061 322874419 886048126 605924480 803475991 79062614 606101580 841912801 396673430 750255934 255360990 19923537 567184244 531255254 902932037 147109814 199532109 543496347 457648970 870610630 363123121 286624799 730922213 645070733 378914982 825373064 334407111 921208811 722567715 191520014 484802001 875786260 930225046 983958144 403608219 880790286 224253279 528241600 432102894 2518838 758689107 999639362 885689930 295081659 856714042 82137745 884710241 364945954 381618512 664962763 578964122 830181056 405235400 314814240 483361167 992430403 371525700 104986966 5502095 564277802 381830751 263754824 417571613 751119944 957987875 866103906 556103279 850012997 555642771 193574951 707481072 355642909 64288291 81938604 223487934 457200543 584104762 985236506 930525996 37481198 777354935 43915823 196179777 164431876 311475049 538843837 40343352 250881066 671900566 478742570 827791102 990145666 594818421 281521647 315252663 597009533 646859188 737764633 738669626 438400101 884159474 89402059 398267280 186042324 726655302 867202234 651985273 537738299 967384246 337407408 71868135 72258397 6313921 227628041 892047488 699190225 484429014 43306041 204058912 468094851 363510746 669350211 141525077 138043955 35297958 478333251 644503265 737113588 659190663 353560550 82241340 308164527 714251197 152108781 484668432 994463134 470463484 92468398 201667259 429130705 252317934 632127634 645163984 502806700 915611566 362432408 751030166 28298087 498666574 970875601 881232007 897157261 829432402 863310818 440897491 302673533 409698099 719365509 888435163 168393708 719208670 928404488 886028470 394159713 460514354 760538060 229835439 118324408 250934661 798299591 635131588 757856160 172172064 593016323 759178537 861740061 70892990 417316381 480996803 916426758 984810769 235392966 677735598 341112968 6290493 613115206 288823480 750712993 159872091 812692980 61461475 405283750 590752504 36755647 517300199 658147773 157168275 970471080 321482925 798619236 13498658 190445893 929960661 481496296 190837390 732588864 59774513 316127983 431705906 531651798 915743816 208360175 195428960 436524121 647468244 778922164 557749468 315202222 727643716 861871582 976334687 578277840 423595579 81612384 83013397 325359947 264472591 853611778 635721759 71189186 575711050 939797984 469134866 612087401 104762925 177891562 382314615 525046667 861674024 654629474 53100361 61932293 663359587 845844833 507658618 587907017 192480313 409013841 963650926 952758109 451213239 875558772 900546429 862731865 650623522 454615900 303658102 67828461 7314542 289680753 288674327 390307672 759557063 152568431 449991574 895396978 853294604 490952421 454186011 886084643 984014927 945014710 469047619 560108009 863042902 132711580 960478111 853448534 985694749 409922208 832703283 590862992 773907538 862612131 827606519 699302608 89516760 811928537 619378777 263342307 979038277 141574729 902507449 258896812 249628003 388136782 687740140 694140064 193644466 24812569 368284858 779847240 602208229 135334444 780891744 65582275 58525793 206980064 631690255 163385409 231390657 865729248 557453163 567013257 262484820 936259244 349721100 342217332 16589213 901167383 313944064 750420591 657044690 759275210 17345607 972083965 613911902 256393151 255672662 674950195 967675488 585670086 37567381 358579515 388118570 974776579 380037601 513193681 725314754 774791790 309873163 581185993 368271972 799073873 637519190 591265671 791570430 238908622 508674301 766825605 979388338 771088983 878980267 790118609 710020951 453425716 578572033 29559948 665412857 85281024 106315795 669440620 201267541 685457196 556298731 460510266 241685598 927878523 876115205 450341205 53116347 237839236 697519825 65454382 50046790 503647284 628024373 378457546 384008078 103403593 557337096 654235203 19588182 566050520 366511000 416017223 873622804 248093639 401931045 820795799 75594611 998242388 413493347 336416394 482635729 538422156 534173948 483155591 51784129 68270293 595496716 344931214 598720651 318226021 996510627 951311280 627956647 186718664 148280647 272008082 832177990 905133149 195125359 585943279 499373769 553060826 520338441 836932883 862308167 107481284 715183605 229216 580771340 889234168 465778567 778278349 743182612 784451109 450020873 437997922 447427476 828080719 644140854 402537661 83489906 735160398 646960577 846978192 911703752 638029 861853644 186168864 43929701 841840203 863091057 663595976 510228555 350407837 18622781 451269492 720474930 328330346 343305392 772960038 981515780 434783278 292979902 803713909 620753503 196707895 465895504 202222601 428466454 662990635 959893188 859286048 180922032 144364672 337820265 595132684 491693032 806485251 757619972 535336627 137230379 47561042 463873615 213720078 428452381 80351842 4784756 260272554 489035284 756088825 795775126 485069866 55589019 899678004 54011720 328080579 110327537 309439747 316492563 88903614 622374280 620263592 522061045 579361529 435262598 81116220 936136413 270414951 365279303 845215530 836370992 690923147 412183513 451380402 667335239 302928641 688825214 22881383 615395567 593438966 986200878 293919922 765434599 703222187 193978642 403320141 19218533 437532917 647368714 965329864 391981970 903807936 994779688 168605191 93683465 277096583 526917427 748407489 576599644 839790558 239427365 391348227 987829903 836240105 775908525 706363820 855570587 705987554 966210990 356834798 555381228 789624982 885628862 562073043 606260452 216553704 271652008 65572790 593369430 714090829 158038250 248814534 273706251 940709711 985128504 737574022 319020608 150630411 683089399 415241552 751092262 670157490 35835843 208979149 214469473 792764171 588917225 733763454 433680010 593358832 383387630 545802295 862133933 633513932 239897350 148076702 407983052 455543588 683115677 108306353 112087898 208769291 883729618 962639421 327117504 348224939 978601719 861990247 638161371 542681795 32062995 766106919 848971644 524346404 143889248 395882696 941189095 69954099 20084429 726378346 624417108 53050475 907784060 982844032 625321586 522104792 354681413 665630803 698029279 643028892 7073330 691215996 165838769 482223469 869966081 482229870 506215920 234198549 747288485 420354026 313716505 404883441 554067653 276678536 830527389 498375027 581993788 853699893 152654175 227223457 843316375 643939503 24221242 292779155 664751514 481833483 209885305 1214968 118183611 549545008 846372701 414650258 987758246 883206490 980267419 198558133 621610679 106604951 981750747 244040652 434598275 345087821 219783994 114323156 121013071 150214578 268327369 297352672 364121239 827416403 918106379 212699795 482491017 154711694 587391099 707452841 823312775 787495447 122579460 925943662 368841129 775361911 497497223 634229829 4659001 957983112 681440857 20129570 311859509 687689466 302384578 4382736 898524112 611176658 349503870 376563373 616677617 588703462 399995200 717480105 431567538 876613218 120143915 286512203 853315554 756964421 727749975 856275180 919977604 111051237 883649618 862494585 525748814 138788711 455221660 953345781 198457131 636302920 175124265 566231285 16842169 52024279 995780835 165706274 886468044 875614136 853801766 697507002 512151273 222791778 824880962 932498192 979713740 417957282 282030589 268553224 667082722 785963798 582723598 549810076 780643279 275380403 398954147 809954137 155817450 105481536 654889948 658342626 976016828 785605848 127598925 258187884 190962565 183861612 975027328 467565889 416161975 126773567 243432305 391858237 70377081 872830824 951841040 20876884 379240485 582860371 28622275 591927562 423777738 444446272 39690209 692406009 967039658 556177347 846705208 660859983 819329981 610502722 717964423 543567693 116740653 82875515 209815045 494061257 379348440 217228027 936640984 14426797 852583378 833954471 468392863 975154293 692016864 835086647 370196457 216112565 474269181 39873974 402688188 585978001 726378713 965378820 754799119 640127044 285551701 892503124 744078927 817537946 801905928 47304110 438835422 94018933 631272381 58945646 978174607 462112075 365086195 889886147 560008748 752459686 48135771 150537009 779810544 756135587 289317726 152887055 653351182 850007668 471944085 841804042 696119848 969306590 951882831 606281376 925023704 456255163 308092430 940949926 759528490 898817146 115825930 353732803 319832608 263065242 839232940 6620147 133747245 625536306 281191700 114788100 920455355 59927404 619015572 719740444 594222757 969961478 518385971 111320625 714687421 737648080 315888684 228523919 195899719 484120112 187173740 253684822 701982332 600339873 405469975 313306362 704079113 161434671 221452035 855171265 389153165 895834620 132407099 159659592 477480990 648012223 402006653 158651903 579611333 102856512 432193213 947686568 314793981 739975645 971678112 518927836 246307640 610582281 256719618 523797126 85219162 216913607 34727792 291811174 73064252 49020467 949192367 525280655 208961066 619828729 462718515 899807465 708759654 641614556 96781224 171253936 265821603 146290737 346166637 783767539 948772746 661645409 654596372 388548630 312200760 440499051 130370532 823079760 893554366 11899231 594898263 183349550 661270944 469924580 913357724 880431886 781719383 909760435 868491798 2463397 211323087 815231257 790058459 638510201 202852329 251597945 42521141 932651624 659454458 250866120 917705509 291893280 262664778 677149199 185864155 62803876 95042711 480232429 738225983 911694797 985706895 894213650 365723756 856498375 538866009 275861445 379425583 581301392 587017229 296410463 208855180 901902204 877124663 279249102 185350458 608265907 872306008 197822483 868700194 381863602 679402597 885236164 528675555 30938054 358892102 41136523 333616209 347964052 814384728 603290789 136915186 487433364 114541292 555414115 732990336 239292049 733545926 24098476 951243625 79219498 604546206 107748985 477546834 121077077 442687906 951637080 809973648 568406231 326668786 559344875 150073005 222257356 551214627 209968486 200539113 523210789 512503485 866989075 64831414 56087589 751729853 307729617 51455035 695570660 624286740 695534481 359431123 951132108 327098405 976910552 256443275 963345951 606642763 58813505 127711143 108930926 111363665 755964664 163406877 548337187 193531128 211532863 666166040 481482745 995812980 856771565 57585014 97745022 543548143 602239209 401212747 339573144 351737605 178211764 740523100 727768573 452014151 898134749 718416037 188462009 849536952 13778826 961817300 344596140 177396307 794191349 444121803 982411529 734796162 447036397 672981538 728955865 446554536 397690193 832726690 154750838 773132953 839866009 381659851 528648720 7478813 792800589 706717263 714444843 20227185 648321675 800590485 339988255 56277701 222880133 251387703 830078871 318530494 633006081 674542212 835519507 643483126 443895511 131838462 930449254 316712055 595117687 952515805 965835064 249006916 373603168 941871755 403402373 13641169 242297514 146254630 901525019 493121413 694443133 426708994 280695072 193047103 97010840 677480996 65778571 507281614 215098059 58879688 601810086 527992184 197085053 182050779 993851283 418697332 12040742 567719553 965622723 826739824 174539222 655402384 319320448 771690763 793271213 382034964 28861540 862009692 38436193 606943689 603141600 208080489 289814459 921121700 739544503 798440881 453637401 609702987 920083072 456191907 560115694 282123416 457210407 642179621 689054526 129083418 356617836 159843086 857404195 322801555 948816226 345966763 562985802 124613499 874188785 827989566 868960118 684070523 506398294 32805498 441020412 770081268 916984990 886225417 458217030 983072374 385094958 315372550 617998673 825459273 7530814 235847299 342595118 55895015 855830361 703935748 951842436 301862527 983723486 976585474 597608204 9771636 950401922 609891946 764337172 755889116 14560716 109392923 972065789 431170306 368084888 850054252 277439421 792827109 648053653 653000099 641310046 682568119 7110343 721272959 849350269 646266206 669447429 648695471 259173068 103130102 590130044 423721304 865231504 345814092 977436458 362284435 129907491 525442661 700025699 728854764 94294899 722169845 662043216 211913700 77590657 665324777 37107051 933090928 987582948 961943518 198386693 473135737 641097796 720313511 976060353 936329818 393421279 228709066 49969430 78048101 84778759 774248963 343651792 22605918 40456865 424543425 976267663 488198654 384122535 2779812 248781894 706887025 191721639 596488453 632601789 607390937 550901827 300696430 366488848 105075145 379444143 639453725 681756463 466696138 993676854 475387526 540903772 504886489 130249398 722288078 836002479 401659367 254668831 665872209 511908757 237321048 212304887 511541020 258366029 75573637 323844825 428177011 716979050 251013434 539461873 321662029 163645012 998012984 996247682 531587027 681892806 364152244 132550752 465609957 829872209 795475670 1320566 480174228 325703896 759827771 71034946 106689961 18267923 892366708 315682132 525465885 616839692 772767621 313031123 645118111 950974116 568722278 910871799 214163217 717699599 995755397 836925840 514115339 960866388 54411587 169158270 755911511 526440142 797993842 418887990 990002547 421621933 664495326 158059588 982659090 562021750 859817153 717033923 240561051 418253183 321195340 707725798 700732073 442246772 316725797 259461491 910969481 844881365 312624355 899429443 541293503 979810677 277167508 599857092 162706561 355933693 229071161 134992247 631845690 987934054 718877764 20365170 244810505 588797315 659136288 521922782 655455807 604226165 948544681 780583034 658108645 191948596 334341808 345191190 337714995 147257869 692257400 827459097 15289882 491794207 266233660 921730556 10689468 614868189 248268455 398236365 657165294 607627919 754126170 320536237 472236733 224027856 773160809 459839058 864922854 930786321 35578078 408371590 99356764 822617877 646331445 948920230 791718085 803014515 730122462 660268579 716599806 368625688 262899135 928924932 542722195 844945346 358440367 541900643 756353095 977236358 261706748 35439596 527588498 155048778 276407526 533352801 261467934 594516043 732570658 159250712 667214410 630772121 324279639 584178043 387553703 984059542 74697380 260534407 919803517 776296315 51090201 606478926 853858887 653258196 35356985 86743413 595751218 746947326 719010174 795903414 267032227 365158064 880637653 117260383 247820206 883489647 793481502 878699730 748876703 911117080 951985581 995777283 705277045 619246426 623430092 480884733 68125538 65265721 722767159 379086429 890487629 510704269 456942750 618522837 518982480 144427137 383767590 29963947 306948921 505011732 653101032 867033655 829653005 899569051 276451953 40654696 994529409 853098557 64525121 152792128 791331712 319986293 542171980 599167827 948730536 841457812 939094908 283241548 547971788 157977405 537228076 494303337 911558771 988426727 935193774 531459322 181300311 571094367 782997447 260631013 57758696 812969027 566690862 919303717 250262983 407431048 575290384 671836231 666610251 178788596 116717711 950135019 287250943 26954148 386753598 482766665 553087010 535404168 463603623 782308265 36554533 61712610 504312773 281350122 761656625 217527499 410302602 163628028 170430111 598482862 602813274 228356198 680710269 917041355 801895310 128774849 817489168 468983733 560396531 991233082 842823756 884541141 350604872 512039956 897611870 448780260 55245763 427327524 332966435 329068661 473998221 324692307 829796782 225092201 627671617 46983200 214465734 490423416 533735793 117717275 850282853 341947567 971342369 381641579 154546746 668910828 577458506 481679689 888801064 611108196 962279001 961109123 136835525 943603486 625880493 224441082 806125532 439454326 719989532 395044 503784939 38437787 43080814 735560330 427668390 362691344 212375521 747668043 138702962 782179887 483066531 143146904 103098346 928160673 469207899 143887926 325577822 249794535 73848993 645466367 184200015 471183317 598243202 835770465 720691189 267472145 77808637 695101661 225113529 391742104 823926664 740667785 169146043 660183354 710678411 621589135 468890189 162269209 562884067 226729900 149494645 339219758 122318689 731040946 808961903 913466308 726641737 52702726 472645673 959290619 423458516 947409186 871419590 207976006 476659118 578451220 908544028 25994733 482909816 681964797 935142710 437260172 648339527 508054676 851914706 803916946 375178787 26123425 458036451 725651139 244453769 273141634 872282896 867004599 20718314 122897321 699235123 385292377 784994858 622316571 783218908 810179432 566120737 761159410 156088524 747457017 550528541 822325725 900669818 96126707 99483742 51361947 126539665 933986449 449437337 872008068 727311472 870766308 180815734 635723264 411296937 670960719 354471442 976785165 478485634 509227017 293969534 955268541 731518583 65955998 982792254 62281653 454066102 105768047 939204810 78303152 356386977 33403949 878105104 482326522 206907216 597166434 854932720 409890038 223448588 35730152 412060607 116904857 223895509 290697583 407698629 400057836 727297245 510237180 701903039 933969805 570082571 435013220 976719197 988527150 718911609 797914581 196120005 675595797 177893879 275431758 813108494 122095771 16866693 366607906 341197510 710131373 216828637 700756602 779231597 753476942 111310310 335410639 545527032 260984339 301847874 89449844 300351822 539001765 958503105 264161546 443503310 626794563 990660588 893430537 288961224 535525949 698062459 263732030 721667583 156791418 182261983 377530695 380873006 643634419 895122617 852534041 765119359 537613622 207090017 284230011 523369749 288784612 609600608 549006472 57945476 21059123 47929334 767625265 777256019 138428012 402136469 75895481 679355265 433734254 935058019 15823159 424591869 991799593 95023036 666262039 810575917 890024484 997012910 74150297 929757288 564212216 624877436 879727185 907858812 175617235 76407836 690902949 533117737 652627190 465213113 53392978 527447203 371679543 220111153 707336424 184072468 250695040 745937559 421767241 288530967 759223630 664006578 479836206 742498878 633620019 702815613 587813282 501771662 492422740 374188965 644118405 829930494 272997099 577010958 907628810 424260092 732722374 188102735 915497017 502079207 893661382 905031729 811031662 830283157 324837473 302306355 225140440 658509007 935769121 370138889 433155835 214600657 239175715 415211801 467519790 524371659 202424985 412233980 620624670 76868450 101630536 789114371 33060937 11557679 493557003 58352304 379148932 755158079 199471182 111101752 546426998 150455185 481190291 584124424 47894042 767309723 854007025 867625021 275159873 288471750 902825360 987202090 638365710 850557933 905829934 452745174 993715576 150727394 784832925 39048059 451088843 152317161 805565250 285884425 265940263 383139643 66919320 807832992 304513024 208164229 46010027 571554841 748139932 342458470 176893598 268476798 367677080 293078516 743757349 545120910 226631524 927666744 925284107 629242682 509569218 646409645 297754286 622286123 618901579 919592389 579953278 855353913 286257386 559435620 518390402 13711605 293140830 503530851 687934930 534548256 783350461 294524174 322919710 128447026 418536172 686715047 319016741 537926612 709631271 366493153 124197183 761479782 90684543 162451045 608054228 482699130 309235287 321763408 49821923 402020439 753477863 742553779 755300476 872032887 381268409 447102994 620886342 751221257 111940143 360636646 783853818 899290735 163412987 931026971 372449509 660922561 909479844 747069330 103547498 889506889 538091272 815022752 440823678 423342853 149652437 592614030 6539563 676306473 706980878 774410007 608210957 396123802 689679500 452453100 374391512 214333299 476395898 966857267 61481680 234308740 177540824 618302724 274789967 653090510 388819194 757280747 889564482 404254472 946492166 3342953 194117549 724803613 870212985 20552563 308035107 114249644 558652579 624384497 40169038 319735431 876665126 298936128 266597741 451937588 437051003 275266993 567209169 59654255 180759405 614204680 391626335 815115174 185272475 440201469 27168529 697695612 636622074 421974974 954372981 821007942 838274130 183263339 608176684 993525393 920758716 623310233 734164076 916160410 318686250 530672592 456078463 566951380 247920863 203352077 618440770 698197862 73427443 7639617 228222375 682896042 258123984 735354319 556792627 993854640 206238392 431210002 730795136 965296056 631914812 499747541 856952508 27493308 340047558 201515225 910803753 905475812 854448912 513227858 120833435 312937999 183729579 33462634 206489341 160435025 237485178 298570941 235829196 61732463 834705972 708415452 6361242 489760101 410131173 638950346 831813260 873819872 239940205 176873346 380922845 293109957 714045695 728626287 999616089 375987368 641032100 927960817 927036899 469569110 970973878 968034527 247249135 865139787 785082981 348992000 114410760 403544124 36882229 226094225 470960971 611201423 347716222 361552322 183525610 667097054 773600491 649945657 596819371 862534520 878988028 259210381 25160295 588418016 850731396 146548172 257445771 29423180 710154283 31175157 105009562 331444775 212086252 180326015 724810664 683852175 801797016 741524177 169058785 296175064 98494546 715788487 778265600 8403975 449125394 522465076 748913112 700699991 958057506 888709210 552482767 572975544 362787748 81487475 71694686 263577163 890166281 127224364 596135826 224543207 259423643 206439717 618764174 280850839 591871988 850911858 551756551 696923418 310080133 447404317 282555590 330268002 472510224 568895649 499312938 997862165 497255471 290968944 552913059 955743503 502365131 595766127 176885816 52901598 411576229 949414517 735207426 134707525 145488336 854422223 315921839 921904313 655475508 849952703 781096192 539994087 898775053 744504824 241175115 240908844 975431787 803703844 125575417 921942043 978444976 67059038 81888265 951518715 812555285 267653560 741791884 64415815 533818660 662633143 183897639 722226732 444914751 679898066 535510420 63688718 725835288 211099894 120159521 733393411 766342711 131054341 276528943 12107350 785711992 519289426 697730740 183585798 315571850 738109734 408588218 46713156 107923057 274401855 20669405 359826937 154223876 477118284 700972753 152644669 227789679 769158002 736910042 727991009 211754163 928383946 433431379 410630118 456448033 812877792 155283752 672267524 844378595 967429686 413870427 392943140 627864947 737865919 745195906 685223910 942281762 626702692 377349191 845473308 549912467 136522882 13037031 151390285 834082877 933862762 25428660 26153011 288458220 79161056 901188499 34489917 948057152 787066269 613873279 669841934 784598316 589268173 787432708 741400316 132288376 976210578 784316612 835431570 81607488 220476031 621731830 306037006 765588084 729619485 224303586 521536996 778956630 477063529 972054374 717634617 865093886 990650708 786549108 317350760 838104025 936076866 407759761 330521985 486837798 511751308 623205976 324839365 419787896 936144638 298618869 792395051 696344119 134629209 524552363 670690527 302655006 417191634 329057615 773478589 489900734 688473745 889587658 235562458 940766970 722789427 708947354 613893372 629901449 859211337 849333841 147733277 806841464 25900759 726442517 139100140 901164453 536157142 740753951 777774667 754295621 106558386 23710524 918898898 167096158 271346636 558764111 317942859 990371150 485755129 822219469 58061364 748287554 656506881 581506367 312628544 114742208 192545 225988547 133344214 932946974 294240649 783421068 273266832 613421832 926099935 763457630 313127614 804612606 667588795 801638675 813957857 723915987 603948073 480769048 416638256 53449775 247131946 277831408 345682966 616462350 793041970 853178288 762219697 138839104 891525035 793554817 386934101 705142503 999771761 183844130 458829831 375550715 133684821 494830436 577462019 23779529 628917403 510217644 966746423 722514032 517328507 958749812 92603589 298415203 807052195 702962633 221034885 742192618 225651379 625571278 71563648 112558496 744010175 781258553 5715830 237819894 106589393 903842769 55091545 568928687 532408421 798568182 820703952 752701026 462715884 842642969 231822261 846897404 276177481 836453183 955950231 629518395 65706071 945160066 835522873 246753587 484242272 989583248 207397649 827134413 864691623 823118890 582892490 985315651 827908320 81985702 138089410 17478822 137381043 493108590 874095757 285813080 929354556 965161599 214485872 237723026 114232206 35409899 173854183 289896671 856433707 628014679 838552607 45457055 352192397 841234302 807769468 638085766 933054625 172570284 912961813 75495706 46722375 960753475 231964723 784344632 721723091 706799417 180859606 284328847 492342415 673277336 50768944 261997859 784502839 139503358 658741543 824256972 57005179 133353499 56901847 307101620 180514688 980407349 126109966 895604445 806373728 296374182 426941135 856761241 518624421 352464477 223045328 469611792 610346194 336314457 107295227 834980797 951310042 661799986 409813488 630539761 406006695 531116944 359895426 900190799 36812948 540856241 556899638 55672398 162527219 289007591 904126407 350131899 628380041 547207192 723864228 304930356 927501069 892974397 908632176 88261549 734270636 995606499 467889538 384823023 130569096 762604205 52608611 908676372 85838388 733225167 466089554 757738765 938403642 621602453 597445059 662673436 854793109 279944666 195872987 562562650 117702967 615181969 958305270 128538930 904126852 441641280 317345826 721696228 990265813 100932480 860228001 114548739 335002615 403743358 977767019 265415159 284486825 35965309 293839529 500515708 853288994 346100818 979136315 733914658 133830280 221158887 534859316 482057163 588765305 230341816 678227288 312184623 385742214 354806617 99590309 128195675 289314483 817593582 781571271 465560877 379673849 647630257 792121250 314621914 927168453 407186799 306351820 138147177 983762294 673330699 618409999 233260086 219182050 513888762 397891564 657374832 595712209 301887174 292440595 114180762 803583617 832960396 564520429 255026190 419843617 499117949 311467794 308668277 626660950 379814496 38582739 383252816 576725432 428141838 880831409 34737267 552697174 194777077 304965603 537969796 973520686 925546390 876587477 555472512 3137718 357868296 158486435 287563575 379026774 629038706 942318754 118331851 787695339 551349140 551174104 955691573 673795654 258495551 503444095 474875328 323589547 164377816 186741382 210781580 888291667 154232026 630583056 954728204 843693546 505978705 445982962 190878344 894917905 765087071 670862649 570690972 612928477 566884538 675711906 159754679 126479190 160369708 977356577 396038813 280347897 461050386 233936475 298214630 470985015 759595230 316274731 930157693 341950452 935298453 702942241 979331873 423137544 789108818 631287550 32209639 16126657 731710657 417103161 90880694 684584544 464325285 462305149 715971273 754430615 465994322 935851304 935965489 15152657 534099251 885496526 490360401 615773674 351183429 23481525 101881184 329546803 830735002 365259606 768103658 849360496 128908248 821685730 41837392 395782681 492895415 465380539 529628995 590258460 736159623 924729846 701988429 917098585 932441255 710676960 760385352 106930725 841978127 512247670 799553764 142462664 107906247 831674091 660385318 819792127 457519982 150499366 498436323 111277178 355240116 120787265 65845321 441514591 800625376 692103435 374320983 433642949 986586442 270871431 708692320 343662138 251958498 68590699 405467277 108913214 69521064 89861026 968944727 488331718 526605361 629072843 645844496 854252730 551441449 797998263 930743643 59506038 169065163 651204590 60400816 767393101 621775467 115478827 370815962 612150017 549748205 298143452 322564216 225566541 577354058 147118243 906236031 632129371 318160402 835086807 746130102 856859470 442735589 643037700 815788344 233985722 942242041 31051622 201341430 519106855 451158167 211437938 399315251 904709777 442064798 251303246 824565254 391928811 206754047 210696788 662343899 524622231 711483967 510154899 678389234 278823919 177828856 544033102 559771615 887434176 779971160 166400891 91088904 341525194 526846880 858914372 668131626 957859905 700179110 103583114 686177749 917316431 922406227 817654877 459078891 578134415 671392550 353007493 845434917 887661460 749797808 143845372 556112014 508982624 160619286 623627634 416671494 827347181 645955218 533177032 452682432 517630632 841202418 648778901 874541508 429606384 968815384 525909412 540124526 287207836 985952888 61533044 726344941 620190322 899713437 909168823 129921477 125858737 243756196 618010067 3590733 654631304 781919167 233564516 944558130 691342748 629191091 557507256 375731954 389268870 75138650 870365777 390574178 556066131 364552994 967602791 232422697 939558402 693626253 404341604 120588610 717126153 322479535 768362598 881463422 372996561 512658099 880122304 680008448 942939701 124661590 969561977 188851647 245523207 400946794 423573963 635500807 282463116 110635861 492969893 184763128 690224379 683365519 333041962 235857414 286293761 229129768 589646896 791936375 797286975 114669631 189686978 823348712 30676683 371466124 37006239 883611081 295909547 467147735 487584440 87754204 949848669 541780094 921149877 718152122 704992594 683616499 367187569 608700494 646689902 21692220 425450362 664317015 180220554 473632882 32659090 658525930 735317234 10049346 519143216 945849327 672081896 703859311 785246976 318426271 504762655 831225166 388129375 847532044 501047872 166994504 668144352 823479705 201567592 151303003 657520585 964921214 894815656 11802778 545585302 324254021 745424772 621613224 159255413 289438800 181996405 902528833 476668361 57147473 159304295 426956210 299105960 322955215 257950267 97459036 245823325 493499048 308543558 236579381 15368678 536578697 367849425 653496134 643446646 881735544 284564631 731853102 664350965 911640139 87512394 850373277 204090747 793261358 605582861 824874714 524841688 648900641 84304635 106496062 416610320 188518776 645904543 863337143 277497303 171441241 689010810 951366 489071385 559966017 779220353 743084417 198914421 677474432 981746332 442588178 906109884 736803512 346499880 481000245 128340599 883775330 87526774 721213502 128161375 887726409 189078346 264549137 387604707 678758156 543611996 210054824 968847525 624363936 661721306 728561041 649222141 204153548 260399589 229473901 975840117 278629292 112405007 497286259 111350859 810165039 767772131 620193258 31801074 316273817 157563485 698628786 132715409 566628354 879076718 713227452 195826818 580548820 50808442 679885453 120341204 81801296 817467097 177265088 134550218 545795594 178286681 939535745 566525530 8190057 579442106 33297682 650215343 356826408 226334001 909956169 301147560 783956952 935261926 224118800 958615126 121352796 599954805 543226596 452322690 441289067 762397297 245748055 339573540 69530385 342819037 480745615 998002669 186309422 497389489 54559428 513376190 309086197 93891163 276722629 451853871 119743087 826785595 413648756 395688713 433371894 877366309 871467077 167381196 976763834 771303139 363507140 924791594 934092607 264928177 545927436 628011402 684881117 417681343 857554768 131921798 463583551 102893491 898963029 634006381 534827237 361375780 397076726 679738562 306406562 96223776 449702815 752413883 692508190 761727911 826619603 784787650 315402324 799582253 355259815 429051128 661083669 250241820 611277380 754119341 678882948 317073487 82376808 648135401 851774361 419755673 506878950 953405671 661478558 777856572 263836961 330687124 523267764 2234738 136693653 141744916 306538831 458115816 335081039 698363198 279065782 343707198 855716464 849793563 439660676 659994248 938730925 190354795 153336362 867359952 924124370 91633183 15201642 165789841 770169914 956656352 814500573 787402302 239298137 623339143 672288367 988506041 322816051 555391139 610367966 233876700 79154658 635505654 254743870 86075380 1381651 577394936 113325431 367348288 200193929 538910803 283185349 273460854 870991257 314487141 360329016 623183167 229892781 664917697 287978290 865273782 216102849 726087854 964104171 764382190 112940009 296929702 265445872 726316905 706518729 345154777 395476896 456313761 911302427 482088104 708990382 869814402 940927277 362767146 367362978 779328238 986357600 45287082 359414872 482582328 283723434 213530662 132563583 72291241 786261269 671053266 310758170 306018559 914673214 219311507 751536643 106927849 911565783 512135045 875098211 234977420 345820197 344113270 898807612 936306945 247472258 744132200 744376287 331261908 720820700 198501651 689049206 853649287 287974708 863661152 705079419 797743117 684068897 797126383 521760063 412179791 8856906 925834386 206105700 133940650 844969199 568102608 933196387 545698927 494902625 80751459 935614728 740675682 666006406 752924858 183970801 242275388 958803286 703927928 340537106 214831402 904793184 376607731 798156083 873380683 336654406 95282357 335191664 912131125 586094908 238263039 88975032 513376112 981188749 812030529 533443664 802680057 118504726 119883171 331975245 468277185 971500489 115688576 885976349 659348012 154223148 565630693 848840959 14843027 12650199 915477015 659981446 865567682 804221434 772572938 509366042 685251962 836163028 58341610 265645942 851880688 732815165 351595414 391702059 471705932 756092445 353289248 955612700 217341484 740914674 706147150 662188800 491082270 413940815 262214172 294669284 927444265 557529943 623632952 732443046 126362437 22433862 526802053 10370939 864603358 14011369 457710489 488665449 301560661 430114080 813430334 492753614 105127295 738200931 378815476 771964631 384112164 516469562 391974254 399849226 322502273 736132804 54603537 292129213 506742982 491466801 649913720 720356508 567408281 951411784 678710770 540498727 542458770 737858786 727010562 803787569 327471549 469126509 89460958 166393698 80851483 694202729 394651121 265620406 743530785 708722926 932804442 888605693 770760503 930959141 523869547 315785817 949923642 987033803 146473514 127741378 180697850 811278001 194731475 330302597 885888445 683535934 411734355 793053377 206168250 588738539 109274319 458142441 729975711 212174278 358933531 347793477 998705420 674692080 363696452 601389424 135239446 190873887 627235591 515924699 361402309 435800349 790636887 761113929 241752469 550024518 740719067 320948817 279357945 710560526 399680621 272032992 397450195 380505209 240496540 640435636 389381630 571102881 402316587 746926561 235122117 902176308 576139920 451772240 18832232 386229236 81629558 17391931 72438430 102740789 890565179 894591667 767258382 254866530 779326066 564068122 149038293 40431480 938941795 403108009 245654275 302195336 457433222 426438891 478041117 962411066 473106956 779252032 211219101 954942021 378136918 915752795 20052333 327857656 542664059 286258629 908605040 118629044 393124295 766486104 178802426 20796528 311212086 297075396 521678930 791488052 479638525 859824397 674446903 77253278 541173762 787238923 793548120 481921632 96219487 964443624 559569883 335037631 260428771 159273638 875881943 911497750 914616976 441553047 498421721 703409233 946482718 212536035 445346659 337224051 848537975 268215301 325986152 362137616 731452985 607247438 182562002 568652243 944752439 767603809 590429437 423288826 975652600 718597557 507679289 654976981 662835767 500516119 862318155 248646474 621437025 695460645 945768172 980267348 392257562 509477587 376465481 544527999 984857016 409611242 157436289 77632878 121803718 790363524 512900906 775829846 718244227 490807954 788216781 50473600 381795169 972259926 547255909 555531978 798330246 220110569 277589220 413029415 437355086 938279350 484965551 620785435 99181767 597922301 513046813 471236415 832099635 21870417 715089915 204919747 624472970 758643738 729159691 840972263 854070261 830405652 951086464 971432833 980704084 980914894 889873027 208479610 738240441 395357229 541406130 944498769 500018411 318333158 938039451 44797078 952356580 244703495 392185926 844921712 580051027 530158190 949116328 37324056 277398299 145964880 107061809 877981532 918821586 28367540 248284735 860589597 321372483 305038070 334471080 238381521 971095788 612458564 266360373 101453313 678788993 743619876 67905057 930133452 278270055 810520812 512821406 253650531 921671482 76062281 714399312 962888587 237169735 564216761 595317200 916328478 361191187 321352721 643583530 931728010 808565970 133434615 540115295 440479056 686830320 458298728 179927780 305255814 683755404 898617908 103348257 982832982 489946616 913662589 574537972 481110141 435965755 712632892 861100075 913491660 509904527 126997692 315645965 893684395 103516131 462453533 318345426 653734289 368904281 308742354 196036390 77405325 809203913 740446243 640125098 772165824 964792893 176740012 295598195 190280673 49979507 194268636 237088649 685622455 247318110 435885431 419253609 365087139 98968229 958620693 424680068 476325651 566691363 125871521 407887550 321496080 99673701 984009178 245266928 49071793 680278063 123000021 807684198 793289381 766245879 721228665 928560481 529544622 442362473 900561409 417922453 93734432 542020833 678121086 283060653 689120614 910598644 834015571 553069251 374426238 237781991 718269879 169935592 582296696 215288118 408888374 534084514 863627002 53164303 116859696 928447592 479203007 731938260 640210265 456278312 42564115 62015901 132778551 976988354 74122073 504339636 859835560 280441739 9833861 583038999 406541657 271083979 314305699 590902777 498649423 543751231 490421838 540976193 450201698 150069399 168392761 763241737 6444477 168321529 844041386 920245024 503292512 437293436 709113594 409613961 617195422 110123694 544364054 322008826 992619423 844073487 769950977 163820126 350517215 809130388 173813072 841065811 619277741 977933605 685123500 70884269 48300717 273783071 193373268 972551921 686133079 307843794 837740952 324118235 360968566 552154371 361257055 615715288 472505513 76076652 611088546 850421132 528153317 629882936 199697902 277015886 402465009 786559111 715542502 841950887 391278824 611807984 858815679 269560791 554664123 627843322 439378371 96165968 941114029 47511713 273100751 489596729 697913301 227365592 43627476 959875564 453940895 500830721 376439129 479972984 575156043 192139894 80058103 619947551 808347757 851755780 522778332 322751449 727615851 424883051 202518345 469766864 53746434 448856799 842555668 40131810 954799042 60314250 85023783 285943075 256522381 21261832 683763199 345354840 32005916 175432169 908641325 766884220 734348410 19984946 347126489 367637567 122428807 143500508 597005114 460309378 316832118 642038868 513162271 153288668 713091151 529473529 176656489 987155480 783697774 32664226 694109070 209176501 750589442 484845333 960831512 434957156 282859919 634069137 438727204 360664974 152424556 705079621 373430244 192144076 304449606 246538966 864589853 31140461 59853979 335744733 30719146 311467763 355081536 221045607 580611831 240852118 845907164 811563891 608558726 789368767 198603114 368179064 446670190 960633230 137279675 179930588 792133335 213485141 32671986 287572862 736251263 558149147 793839366 61805101 662131256 196745499 713549635 174469934 118233191 578743362 291241929 982030266 865566343 724535220 183943436 253817213 227708580 87807815 742075474 498874137 148741345 706849542 531452984 802132129 763219954 286798255 38957358 746726942 627389346 799544630 541385718 483288077 198142799 913624896 350215721 811215839 434139241 455481769 269407410 926829688 771566838 31972606 237952080 518413489 822755345 183197444 82939928 317760471 775263335 588345135 344075249 76717609 962595000 170951979 258973975 198786397 90143836 666130263 725195929 728217371 524090811 298978629 256977883 650734977 762233556 228909116 717820181 760758173 166071735 565499318 936564689 726771702 738764555 366040546 566867825 357826820 383693449 451629603 201968550 948169651 624320894 804124047 477176570 288810981 246276429 859017584 611733832 658926317 192295403 245130183 944441918 608581652 659172449 21822404 473325538 761053975 244623694 845572687 838740234 417154215 117643107 315819139 547718114 907741928 863579109 595456045 141036138 507869682 755927854 641621073 665793782 586725971 586567467 631468454 472041132 663247756 191829471 900765973 585309193 760998031 736261599 360377405 610566493 11749960 431005909 728544242 366160714 234081809 811547646 460504762 349845321 633632827 954369707 56274255 422144037 26717324 786896580 159121183 996533373 843924156 762265408 424924367 885521222 492339447 506692782 677048500 401977415 843539550 138200495 277224280 571514012 529876869 11320697 210309115 772333876 681191671 683403862 976321295 395675987 887604141 558806563 940589755 424286480 171920283 233469649 307187546 117297112 723147300 781420264 267770361 873382633 575696544 85730815 830400732 622418904 68081373 227921221 454137337 584418060 578881947 734923259 952690043 145396288 48290063 352420344 447165504 259282693 702569825 569885732 749119580 156584765 794723630 957407997 229268884 502416802 274156038 994935573 232863204 511527485 552287983 951849873 812724218 23094511 855970528 648585900 231310776 856187371 337859911 763638322 40766646 303555642 711407748 124766725 373695677 369866806 299941995 106394780 299504717 165813775 609172166 451082111 515027736 717462089 257213393 277230028 164229765 862424636 295679676 880164533 346780718 241130131 414496301 407328256 908260962 818531277 778337467 248658566 558550691 937652927 489373044 833274548 227781673 227467025 35404376 981777677 201450078 567632828 371490523 933819557 508823392 123157394 320142439 483615143 41344131 294835638 553812184 153784273 915156684 956251679 706594046 855585523 629247862 758961178 373501214 674628468 661171313 482500805 274891634 332477133 911016158 736054677 874441380 749508619 34166164 14144721 744340567 939187793 719805855 422744084 375506334 136473428 86308027 627692751 235367299 698878429 711613917 636828356 847300482 992298059 201828779 110387340 299423755 982095118 123521791 10102291 549990147 551532333 993034088 926310678 278766659 865695425 150284200 648907180 241930776 208448376 749656119 730127546 676935617 976650515 572838846 920964221 847381493 148719080 695672221 597338373 78191450 260798816 855335527 199199412 114171151 977681530 310373473 846723778 700778787 964841030 178216966 825227196 471068955 270239339 373619845 839606785 162057328 137859491 705909313 567912004 633531150 106925113 33974096 181146637 86885847 88888466 568705021 941216312 113618206 444355489 464134983 586279796 90339629 110450032 195158879 647097540 366254783 544887198 967576622 568287234 478977926 541212124 602615757 892739671 398014630 759304303 829060874 893803717 939026232 562036401 544019434 223570589 917671624 137742224 541846049 491043337 864832984 833217550 111708572 967264387 213281883 204855231 730134264 420306780 995755066 688106830 67518984 827131958 795523539 129173752 517423186 780057994 260710005 280400143 795484562 201848099 15891685 333716088 505929783 415832737 403033051 529289006 978637281 17303032 478316678 442163389 444351465 810848238 879330564 222365383 405680089 552629408 986385643 789037955 274914799 12019709 835164099 297954361 273874335 383604810 759495050 725337543 664358926 490278556 643725102 302508319 624111768 418743649 561853718 451253702 558286154 632242392 869967770 329428055 390498152 529979796 374967174 135252222 670988265 924812541 961703579 937245182 781490678 842744782 175831566 441977899 34977647 41355928 303828744 626172273 461627749 505523774 72766756 728973643 820043425 360477303 888367347 208274252 393723932 724677200 628351611 127179674 136883589 848528039 26237876 563789165 737378750 839421105 336967946 737821077 945642335 688620660 863175646 790126834 585880882 160995662 485050117 231095033 368932021 289934444 592136519 578974262 994946715 984532308 96973793 810256580 322067275 182091868 580487940 26868439 86881120 373513008 533062739 166051634 76765223 742940496 885209449 392584625 138234916 308832911 91946577 482118593 437211533 749013397 999875596 972674787 238108365 54531678 70424847 822846253 468952323 37159097 68028354 836843464 426681472 858874571 355910402 770264435 765642061 11429769 423013023 951572222 177124770 699130689 346270175 921091024 705982576 685014546 897022969 757267042 624270809 474658926 221809307 698589378 882940850 295043487 664261733 22575377 949451784 105364544 588387692 335350789 288360856 259883200 567436728 22803304 363160149 403541987 32540614 784154775 566992869 186518336 948564742 477102339 798464037 721799619 651275358 896277172 43291553 270117933 829719205 951468225 486855196 409888143 715350825 132105689 467736334 900328403 740621354 398174397 829566497 657112627 134060380 419705539 634016692 783253440 357505129 614884949 306389336 264137692 137902957 174023024 425209429 507254464 265839992 355828262 654539814 102241271 955616527 361110812 287803128 277622497 117670060 985574412 889391664 421493553 338869561 788500548 86699234 699434352 526898841 74821926 120607834 12664 102455328 166837414 506976407 999512825 211005717 141511631 874687691 806391 83436343 60637502 280640989 921135945 192841013 724552613 878080742 442492188 97768245 426038346 789495735 711034735 119631182 266738053 870559570 753896085 699765261 184522054 551039597 826088886 268819700 729026444 344257011 868974413 331087094 955609839 756197762 285192107 465074941 138267927 233314797 488446323 770050661 116715842 642067387 824534556 788120958 275861698 404359590 344520306 88007181 424006525 681077534 395809558 320442315 137297003 160154308 886882041 16675557 401349148 630071023 429277669 183295098 909671215 965491754 657212148 213964065 972823260 738268596 654522647 500558688 277893995 461835262 749581200 154427446 964362939 9386289 738770552 118250898 345123004 721576357 51244346 649791705 380889077 367637099 93908758 475488100 226680319 598418885 428593055 912207103 734067207 606318504 395880253 521609324 933226320 75319873 834465196 1474526 871795631 647523437 840990331 725432702 316510733 132984383 100275086 874685418 631873769 591267710 489375133 120183985 2001619 848424996 160474803 135942872 810119410 768022240 257383087 947078488 339021695 915732885 48567238 974583197 38644808 763729881 667759359 697378312 788617518 378136951 636972214 300342894 528584359 935032045 816068377 60172952 45251133 946379759 527749806 715758785 482360076 597680098 139474635 943594011 41941576 335141985 456346653 734386506 765520309 105483196 808180514 847403239 649296941 42871156 975726766 925176318 228653598 752370369 513661034 641691792 388276745 559910668 69601104 149344786 404093188 337723509 291380785 214637037 995745081 617417294 821236783 215480828 750387301 673121693 142826819 631864080 472684634 230528926 766978232 735653743 664556413 848058943 730553774 72413521 827158856 500209315 381267352 738457954 65449161 70608800 865885886 19056451 403101986 277044800 255666876 927822345 465100295 533596228 667082497 294557884 795790915 919541916 439493969 69091034 980701747 773055984 82272836 201090257 371071561 553937690 156261316 712396936 120624522 34928042 686949779 593013207 102913553 743246433 127311299 121686794 220724618 611187638 153504060 803077474 387865527 438085204 924442169 812844948 838319855 955708826 148058315 418581576 141187738 869617178 2015061 715736731 588968374 282593818 63513870 199946909 269525845 116449814 322633858 912532436 302901021 791666492 745097233 649227704 150614982 37191150 28673647 818627636 311950752 423313476 897842466 913011244 826788106 117268615 301201672 746470385 144508156 432327095 483814094 553450958 910666622 789777926 466576761 714360447 311042094 193921371 662052065 764589493 373212351 332130768 835171889 248343187 693316980 471591477 68323945 51939380 284202409 861230218 337293020 393863715 203544651 807991433 206430642 718650592 868463706 256838169 54506087 318034018 13326190 515534300 813809226 162675856 972916784 447610786 199838463 482957255 824576732 548569332 583314686 873008471 415332293 591486346 146397713 409717254 299675089 215321045 824019930 626834571 290886905 728887670 229056075 798344212 414717643 360019909 703238188 337608385 531720936 271449163 705384856 407822886 137541510 756501832 602280064 35691469 17093614 838102574 165433638 940809650 317294335 680230947 4597412 859705541 290372522 606299267 684653923 163280747 474383220 948399964 317158820 65403390 962926327 982776817 748001787 131989320 628245600 809027896 892459470 95013644 100391411 474211932 606252506 362825853 781865603 604452155 724312751 71208645 503562746 928818408 244347695 32611712 653339607 817318442 434639635 120783166 924463531 126873596 437264230 625923588 342704539 409670667 50010375 174841803 664664289 779765563 448026924 719338240 84141131 631822371 428907482 929868035 519584442 21254028 664640622 715722920 393951653 901581557 390122519 847556281 175339923 901623570 878263897 740099185 417004708 401096265 570187147 152278018 637762313 839148339 601209690 219257104 975204232 274541345 510986564 534119221 634727929 679633045 507302686 813408379 64323019 7017412 291385231 215986661 105004672 643274523 845771410 510997478 877010476 447272887 545675768 779945703 938926074 638158315 819588580 291624390 34781863 207375806 76620621 401981010 635490053 21070698 727604351 706918352 436679290 343644126 152394650 822827385 589218174 541363005 969571601 465247993 70267936 728374109 909361709 858324210 9135746 544917065 722445704 103759735 300843353 152861888 657770386 872188561 159726702 772033715 169799440 799872190 372871455 909907915 488820119 887161197 484794078 689487840 896915989 279188867 628373937 330465667 286849865 458553304 262522545 276606581 869108294 67508155 797579403 144366638 954897652 342605674 795877890 446354519 672992399 826015387 569460330 710403920 359917094 317165302 869486639 463248555 350010141 214125209 279844172 422617007 806786476 220229779 286717396 211331030 693229405 411936105 607775853 839391055 948424082 564483475 750802128 585688444 961915900 345118720 584505931 420716405 5029157 867803790 541855295 352500868 330234088 825271955 92330145 253909159 5717235 374185303 795361917 630873362 328844620 164075159 164567151 977612970 702017225 787778820 821942056 380598410 950707094 304945346 65068015 235293826 773995443 292227561 772900125 461291411 475885428 918442248 80998560 826758772 438247423 620828061 780448889 879019024 54821841 40837790 807836990 441187334 691670842 500644083 632744600 867553576 82901212 653272057 387616710 192039932 92658736 286345728 208139289 410984766 256028672 995158222 432310646 500456540 549847790 185312283 529335511 824427513 930864108 693471251 601712842 441181290 467164866 773434839 643773936 253235260 489642124 677552124 677673855 911112876 274846777 173031178 854682561 477261357 364853517 81298430 760257683 887272166 900033823 960197832 576901607 140012849 226040284 911609038 481016386 657944094 433176706 401082727 417578814 33260525 244653222 355073121 181030921 218738328 390833327 802105468 876621797 844117063 876495960 666577389 366511270 731233241 530370866 823655132 859062071 45123426 358846751 887510502 890667029 273873575 823245016 288346267 33591762 549220260 500093545 863021057 446395284 830988038 628850096 208876303 1005971 603430066 179162337 933156659 385836958 51827772 690674948 859757773 947692439 601872753 907866742 619990962 456486386 532953293 444481380 167232937 689155642 93727237 808955987 763625713 962817421 947650175 711862939 62043321 916677915 422658005 566959335 467100583 588778666 899568726 10435510 462589522 405105941 642446213 274069469 824980424 739934408 271371928 929087235 391210505 419374662 925692154 237644324 576000649 136528548 631037641 391599119 277701298 834003979 99165529 249454056 837690464 952539705 559102895 373158 35645027 866655488 160538374 323000470 263775488 768599750 510091598 376351190 578826353 339774212 160567208 144738523 875938656 612136648 898807531 895081964 999313264 163532594 86157858 921321124 228921780 266486266 93404940 817866356 138977078 360535529 717695131 517109022 21347698 831534939 488286581 944059195 475932376 434576580 145159798 148863670 5290317 343455015 422826284 812077391 24528042 62241440 119229530 290237210 522992956 31167708 836936309 377247997 630763586 276918684 128249898 658862389 548750451 602160438 824478934 467924945 82125941 963726612 611368204 447869750 807840103 88948274 40932627 575600281 982298968 947001764 397899110 397743240 922200525 321587982 450786610 191566690 464446527 328570666 906731739 256574426 989937307 708432966 401819255 70775160 312075712 751327427 470613585 634423576 76530692 254433687 491264872 48873320 552143280 417789132 848535021 109259118 996204415 14327807 642446281 280223489 379860259 799980257 810456340 166561611 860711872 979933626 826751647 752463181 494033519 51074529 97722475 139206747 910804157 757403717 798050352 734256284 25367337 768328679 26090967 958671755 649369001 383114845 886604800 711341689 723485733 627837009 615883389 141221128 517894395 879929344 293732565 456715185 746623866 737967036 117283522 144590399 97939047 232735339 228624051 349859922 968289403 21122565 68083275 466371550 740262626 191843353 771774176 51521961 719713725 11189321 92056061 428668880 804874401 922415817 434644448 459151938 742307606 643895012 274266109 58423107 176038170 473453431 531097465 708733931 155349403 307202932 251584431 54399653 243023616 354143329 235323055 389750192 297473441 385182934 144900026 677492641 231181386 190824707 16050631 824593887 651226813 983707431 426644481 165125414 777039404 964765722 128960071 504750597 818335171 414585284 253622187 191581536 853506844 380385187 867010804 679665902 390688456 751679818 392171292 1541564 574543565 456791772 42112466 973712040 897076003 788239253 6212600 330100455 996276278 825646145 26955302 794849407 789411687 81393603 547647781 382827725 124851083 985225104 749083254 514062593 910307178 965942321 951529673 739986078 29507137 852368837 663529094 404225019 26681921 495140476 545410119 208960708 709928718 104437021 836659548 132464761 383493696 595535233 760190021 614388973 810941925 270621973 125992252 820911816 898429693 966657372 929866409 252062726 303930877 171073131 788083627 792599158 938972493 118948204 190947990 782734396 69609418 352882459 604690799 533791824 513295172 137078860 486636146 27408637 738900225 566363747 914771597 824710242 388877880 440031706 376512482 719535860 482804375 80150207 455393353 629905914 902784702 843958579 909001675 34808848 924863170 41224172 842937640 994603941 201664171 153728179 304665170 945291645 457917174 606988007 904689392 323137327 409683731 505092601 381882076 644865959 62211048 393871854 716298405 821495206 242190412 53667808 794166286 898411069 416381325 148837501 545276557 655191894 617266667 845537926 988081613 315555883 539968282 445583698 359229484 178999757 971261636 208017736 538813246 416750494 35261701 507363432 689271368 374900183 789796589 700591299 745243846 237043203 865241858 14839038 190647013 219671938 183573435 196263636 747828233 933932039 377193478 614652817 939550025 917782043 44854210 406603415 751897070 588231575 456301638 959406557 50139640 763793966 405183193 495141483 174973081 11392993 557083959 73055455 914967223 751952776 306316818 246665195 968724334 661739856 547295119 961013460 57742476 286477624 64987077 326494197 287232276 303807379 461352258 112513338 132465596 494679433 365474181 380194469 628682094 775963541 332013445 222809293 626082762 442826248 129285160 7991642 36737443 795467141 827075277 635415946 444978046 331394947 906295235 388090544 276586518 388805838 463932111 76611759 393194714 257418247 420861354 209598595 936178797 726726175 694865025 763916472 760356646 334017248 343864435 118907377 349295502 498937700 695886871 580387683 69978340 613504155 652435955 42518359 944440732 719101386 509356294 482305451 9076699 77207303 269005119 789349970 489293309 820586430 848291843 16478159 45027600 647265583 392904875 469355966 439084886 281912557 672104195 189785420 301970119 204259168 828433869 913346490 988805516 84059716 807032636 115217629 664868485 969963816 714193785 600715681 347364292 907443696 892722466 384185985 388567312 340018004 292885958 10607121 312610915 805793119 441342570 149171061 973586541 115724784 60460039 950535399 859122446 551274812 152099849 634781236 541070816 934467146 224515282 609557311 701056682 351951733 65354293 363787901 710886382 920261358 761139195 595043704 604622172 773437752 863110241 898168141 395768413 43277738 518335128 84603693 812606601 350431985 423744836 395278559 33143857 660320651 280958718 756252477 113266902 227972172 460787410 161523890 952224175 437929693 842863297 327381955 104929832 513022008 586819648 309330819 97619549 814657326 163504312 865450013 535407011 443642081 831761412 24265037 581123328 928799562 608626422 747374823 768016814 736672180 872259026 645124431 776098716 436876095 124831440 799945216 53865965 808715614 226499230 388052486 486987638 587553369 887526621 687408771 828495684 777605068 31522975 508326701 130151188 693039398 70825712 949625550 81321434 560975915 783004490 888759747 716139579 493155699 338535454 511689854 851783954 799608040 570485074 197562373 415957998 391083596 701787326 332630128 670444435 857659313 749073582 338258286 640625269 839969791 895343203 620325057 461108544 164046705 21681810 372776637 616930130 571952664 749696995 495028429 995822911 730120279 538056563 871395822 904539469 667383653 325036370 841415475 348300789 134112206 150720774 453067327 825581160 375457266 234478599 210454990 667816712 508288133 874545217 754216492 693553642 480322317 838291605 793317820 557333339 217917031 878701911 205709682 346617944 518622019 864550097 938142553 952771860 300681891 172199871 607812879 587350390 399669856 861046226 619958852 508791192 27809701 989054509 795733823 425733193 219589490 270745067 646125913 947795852 828231450 238612119 606462847 477063959 81566917 867610290 938564788 988560597 44266479 380443184 565415053 54835557 422475751 984732923 742657459 414239384 703521361 964034415 482500708 558539254 159086501 215587036 706076403 629799226 904152493 493066760 983868484 172785362 228548619 401440170 17573969 801341536 695064753 622187760 571131559 176082747 264765542 346239994 50945257 107220719 593559880 864048220 884858700 356264888 708810565 610106272 363150106 949669643 796738208 302554050 315798319 118339598 733408371 657943474 175133311 8161307 412668199 401850325 175706254 137237825 897297149 448574597 78268406 647578819 851093128 504010892 705038053 8415639 497656113 39159725 371855772 664232679 332687794 117888284 291170033 41626772 765639835 843814912 353103566 434806190 173379281 476111864 552223920 790906109 157978122 353784723 726675496 43596155 719278930 67686614 344103773 232604376 38806920 758013883 246744969 678188021 225369569 367377068 338907512 643668841 930261093 494136076 294966284 416422399 45519981 575389102 769803963 969999670 117132076 47602012 154744847 963801536 368224802 273984849 997181989 172130307 973296554 97367487 355336495 730271899 30716270 342100555 833444338 647204566 424049389 936886412 836501064 572322614 342191612 242204303 151978912 522135539 738202946 307374422 891149689 15351671 446058170 680307028 144314858 940669152 455456821 614615282 975361053 689911425 493602773 661747470 130048208 966363233 544371348 33813879 982580435 33894074 169263291 617683826 79842700 403723387 44790891 41727032 240082806 552570823 378897431 680646005 418946717 473168500 344277256 735970763 545496867 334832269 691553752 906710861 515903935 194075856 204706551 704555524 112844857 232022833 567298346 192423022 91541999 365419861 662982662 436503546 198405204 177177368 389124217 578582413 491637099 827154696 964197186 561144320 764865104 458105575 949163892 211171999 581108655 880423468 675289847 176570795 929969227 533598851 86657799 204092121 651752313 516254793 247231155 146643922 102877090 214355729 953435999 330537649 281234629 840042529 82165058 243457160 878022386 612893429 518506473 112158683 525432528 662663099 848369842 623546146 707178520 725330902 515410 132805964 512889367 98655324 64561744 433146423 151401520 63754904 607082887 31522617 341102680 37763208 502622888 394422682 517802392 964945759 624998838 509558551 735405199 803328517 758115720 135721057 58240493 79765394 332786250 989569948 876623097 934010838 138144252 289837281 121811980 488145365 283072754 274717884 433144596 134468163 553955410 436395182 635282450 898251788 247914649 604200876 738403228 138668751 289174550 764359838 785705820 989068637 734871918 881076449 188841103 352485439 480192534 243075782 274240646 429672494 6620892 428236304 349339944 722150553 335366751 116983418 617122670 296759842 561611154 189982767 246112742 469276961 285391933 361154640 16447794 784593951 137827196 511519090 713364102 78152285 87871550 145390621 22427181 487234635 538205127 306853710 428593155 417639441 247502382 317936885 386251772 398234121 780575456 651295864 918937757 362921282 194274587 99389231 305026942 317996031 654661748 250810597 613006286 273639990 754056530 971000413 759526094 821512210 266714992 293840843 644836949 23012978 953558111 162207063 411952458 474899815 453356033 857341342 200007726 198079162 683766031 50580016 30805392 578744931 935386005 15906323 105398934 121087251 133415281 948039230 650337146 85736619 191315159 237307423 483376651 330255555 129119439 430149142 884825640 248376612 315485109 491102712 751289417 993945678 579921849 75212685 138463222 170299379 515441501 199616785 865993293 296000890 329553402 82754487 892740224 470537853 786692155 412412961 165981269 527232843 540618399 952041705 115241124 674110311 250801659 576423196 390876637 404062727 111939062 278661306 587273855 716358293 449079180 938800439 58528674 918146866 674508684 193590269 419927406 847811374 290550042 165809896 922569122 598969233 81249325 324414664 346870286 654495638 370358290 882549731 329423129 352793898 771836903 743150192 279505467 189126001 583587105 632732956 700202116 245072194 412551175 938832777 109034772 113993638 790427188 891905739 411107745 625300061 73415449 204903913 957780724 167044184 109641336 980753506 603904876 416674880 259117802 115570341 109309817 941448942 127175770 383483543 978047010 346473969 245504648 181408273 495499136 807177739 106347912 420714848 798300480 232965044 537075776 230624196 92100901 246905238 202925293 485658609 604855172 815828751 467624350 953930384 383595463 841193138 184335032 640883391 801909483 924710086 235793776 258594957 418480641 760695749 607766100 536176511 46770864 74595551 755039683 749388558 596825009 931041397 143536240 871430439 365413202 10528414 79199203 188082857 550945780 678429093 141316343 35453418 122896013 581426312 712627805 662300979 189623591 5910907 23692056 485676863 481744735 136520291 143990016 450942400 363737319 706414428 172346175 199904218 749957124 531874100 329992918 679465126 409625616 132863469 300787993 499613617 46258681 798022974 13162543 884802426 256748225 966131475 523039635 911596535 769244156 139212809 23574166 766078737 570467925 87115251 436411610 873026339 222093833 815990872 66303704 51107711 804545898 343780082 535344219 705111273 97028445 406897712 127941891 307382298 835128796 991089589 198512836 194895422 201936501 891051223 855082596 380505974 153248970 509967648 503796224 58844503 908279567 556234961 910091143 431873898 792310415 920081242 727073085 475292586 663813672 745872355 531421754 927434505 623793866 941272007 551643369 152544235 7674875 519057171 144390025 988025512 871941206 518833932 199458991 64862222 49921543 485912742 680554946 215387102 276682577 200370445 64475518 17892171 993786632 323335712 142741618 323624830 736603415 353026801 888746370 833554964 402410236 428865606 574653541 363274654 828344391 667273499 179681832 361684000 307443999 117164318 97128873 310678418 794110140 344595762 160997916 759862882 467801582 546867692 125687690 533549552 306314133 307079193 135914829 857988881 535171366 935936310 501952662 788482189 263272749 185716727 263526119 950138273 865450949 982132929 204629145 506274430 526960929 171129903 422577496 245193928 109295623 612855696 874308769 575221271 180948560 335561063 660120139 252802169 786470762 826424298 846402299 456225006 264719062 664442244 977337006 679288299 813900458 897553236 798698291 154778584 684499983 612761004 394985646 912771986 319519172 3189394 817545239 223826153 24836249 110867010 362024377 801654051 43288053 248606121 518836147 805811576 907696209 660208364 158797946 422763924 689383355 183337951 372736853 604733975 278934100 108003983 359855840 81172248 95865042 854363577 479710602 556668062 872741119 262253904 275633175 660961062 454165560 944388347 409566238 170908704 597546990 723704980 964737163 359848050 623069736 466256042 417628191 712463091 854151168 499595008 879786987 804059377 606225954 352233228 732953049 915401388 459099984 39127673 984696611 513351128 818756320 70545829 718071514 782247455 489249596 564644387 732060768 390493085 168323169 622974267 676520942 907367778 985991265 714134117 605359887 787517940 220381153 119770578 464373027 529995210 965239963 975282915 702009821 37295570 601627101 50988719 539541957 165530092 546020617 765179010 383165623 49699180 212988435 646311000 632459363 338936220 453339654 15546214 33645259 970614839 538098047 191528082 835820231 365277680 253808944 759038710 683384452 779952873 712338015 414119521 300617729 260403516 495356772 777159125 456079760 416847222 719121454 226701834 667557979 319505174 9457855 915912170 533434589 579067667 4580779 179137811 858602341 521249875 924762781 290311256 416896151 893284917 664055507 268699712 761417706 794771208 488414621 111349638 805902890 148577937 235393762 393421719 567400439 945975434 597996954 999477015 420163141 481124125 979819605 348080732 449697499 954732397 129856946 898132465 150993620 619790349 105989865 996866837 992696096 440915846 258351682 311907386 609803524 594834134 265096604 972918150 894599318 663174124 533662951 889147733 154747714 384928301 847685802 58187957 400635464 840864498 746065534 399281640 969216315 501297160 206346640 684547814 510401155 482100270 47820579 501608408 261133788 610531738 949596428 47625630 138756309 899714677 680885300 744812106 542080338 420281178 88565530 803345827 705543691 385701851 149767758 899855779 209470731 724179708 178444023 675102457 649606705 275646902 555606862 123378056 857840050 556946293 331542305 630264038 296570005 517691547 620776017 778862814 277898549 423800059 252965204 719844846 572575683 664855134 661823411 308149706 937294018 515345665 30795917 285230551 58478985 43218453 901735699 905241009 958715077 964307006 579349258 319394213 136131316 288669205 476979532 985451320 47879402 163985574 62112327 518940062 485652048 857986035 286554748 811372099 762460704 287400303 402040065 671312198 672028458 276425347 349431296 924909561 934236819 535579404 37117750 614638435 753077329 298827739 804665973 264231614 963350448 48752948 729639970 948397049 708246992 894645071 693013943 743186486 526985764 459384027 112900674 15644237 101155060 810901878 765178596 224481096 597589980 692949558 816882516 253298917 736795723 8218659 486259802 529501719 689601541 409105594 45547092 973574533 169515938 746237036 701196212 563682826 248776972 421294364 857379711 894212915 779279877 986869413 5119439 786960324 361275039 5947218 239936083 957839923 417276865 647341156 953184458 288352556 765611945 302267024 220387724 490863115 445339749 480252542 380977665 782808933 873709656 278958923 174228775 555274111 909906620 75239176 802248208 300976341 767581722 859376440 64659553 357881493 982010579 651004246 891729109 769787169 998383003 111718221 570220472 237093009 628201464 780981758 670599533 892655407 136911047 896559550 272764137 176744953 293183672 263755988 23302709 164165410 288250061 907592703 689226991 284250769 624732383 525517551 404630217 564494432 910396953 112514760 594054665 131620702 372104571 31141538 229600776 806998414 595508824 453383691 74347955 860648614 806956248 729923459 848727053 247992977 599209079 251179262 935765675 481387501 253855876 204746342 476443702 491476622 407196323 848796183 856330477 151618041 76392780 862602081 356467488 381469162 991151177 841070858 852834230 833293006 417915708 799357385 901526184 197185609 842496023 171503820 606463876 402603954 947115937 687850547 988179435 819921042 895776248 791348114 903201299 766927657 499199242 402930803 101104453 242775273 4202266 111017682 949513312 419630841 988235073 960948127 340638292 544299699 106234347 521001792 215125672 823578150 308470614 852449804 968367605 364570260 799976470 884401873 682395241 4613877 574859156 718886734 27595845 921303155 188875914 486497466 353525343 806733548 144668552 131243067 543885473 22114164 473867123 736334704 972578952 587611856 447368705 239665896 103983014 661927931 929779262 205779113 201892896 54474916 552788745 400047274 321956144 431710127 37000599 503489880 463257508 268761520 95296496 944918549 509720669 635784563 19098989 410476468 180895953 130584183 288707904 975032063 805519754 981157229 504320236 86850353 472688805 581429950 722951369 16909437 46251604 822236931 498398850 61743237 46879068 628241803 109503894 522147555 320533400 847319768 974762970 275777955 355222132 897019170 90865141 915181511 700786546 219734226 3488738 811860930 193982121 418050824 514914162 164676606 389561665 989486102 97493703 364917590 311714296 149073923 614776538 199903132 629800864 342434058 226119671 635603988 801269662 559420440 129902140 877905911 943599725 877017425 523169821 250005746 601752601 424718987 212402403 722787236 197403333 126641105 113943336 732907555 905324325 969318881 619258716 601182328 530909956 386422447 182961220 214084894 165216192 30548960 816305013 813174663 937796809 312451408 374569949 849568407 221716006 429292428 137251387 506307879 36872431 172399705 280846754 509565059 749579220 305343275 812290554 165820652 240873364 38773678 496463999 410981399 565335431 88025153 728411712 689858989 264662549 815697014 662311585 109159369 608345917 373032340 778759129 330349437 739236623 570387221 152266101 703007565 647814706 743862568 980453587 651561906 75763295 306977584 981292968 508470168 614849252 527390787 134397563 952739040 647667489 175999403 879718695 531746527 17938702 443006825 807311709 429182173 153576884 808834221 948559648 52668567 680214959 65576031 533040455 252091582 177312179 424269210 165218814 243483510 775652100 890814507 793722181 843676376 211772924 9613590 592853871 849025904 404426377 500603153 263896485 813761215 184611500 847469832 273166945 231072186 958739707 590337687 476497395 678636873 517211935 318828691 789980416 609085129 519947863 125642626 214554877 171550859 649424884 969777694 325806264 753796690 861883355 489962453 494979792 12794329 576194822 715520844 873948216 167062347 193028611 148286680 772460728 306745289 565639539 641442051 236424556 983347176 515278988 554729229 875515715 905916464 360965016 642798952 84905345 252094366 979872372 707208251 570581053 323683874 329855762 20497889 574246628 661254434 154995191 574377831 589767348 220576246 290358461 875015441 914738498 236202602 572703890 967382741 701222133 777328447 949610168 61316830 7035784 613042857 281032963 302746122 739956876 351718610 553380446 726974061 895969763 828466262 707789126 737963980 889135686 490413766 330571853 995995683 611502016 16673061 540195480 870932000 385218609 619653742 699424354 244812197 566715853 727455243 836506999 815278153 412061594 845736543 793341882 815495128 865354229 147763518 939968415 838826703 369416462 77936752 115543729 989312225 293528935 835414065 690252813 967201652 406306905 569533364 28964070 627011621 536397966 427747227 41472255 150747968 539672200 224795265 943941940 956036680 132607257 97461616 677683185 31634037 90592745 852304491 919781817 323255089 171317748 254937830 935667104 817697434 205593097 778742856 703901650 528083972 426257740 509664880 904307210 498461300 761789364 375310893 367852571 508786469 418240142 262666693 486065259 399782919 535462136 302007151 392208499 735611963 868882023 89272281 632161088 479493272 287422241 594064034 70048757 729223210 295163076 450707681 811457095 830806701 889122493 610633116 949364479 596183830 974083282 274143314 270212732 887125003 29290905 132077938 779184430 86159462 428352254 559384801 525663260 966197173 384298177 689851001 577590623 124632765 764530934 695909508 159181989 305864691 636266627 473790533 152977327 265533441 74810277 445622383 834348243 964512327 642742891 431651756 415581562 773562200 558940985 902357271 133856419 712847225 682168135 614991554 178527583 276802853 84586784 338308145 161676627 443500939 89512228 864070365 910787385 659969294 452131846 594866355 573692255 395289540 509691726 298349202 915271718 520595448 454622679 804263121 389390468 285966505 654728786 150575030 317363843 456600072 831943618 110924799 340602815 307753470 685591550 633078109 292808684 826602660 270777395 167777013 807104846 173761736 921791327 343261150 311640384 672031855 333429463 617250725 531012782 192803149 507652290 467524811 312173210 820835663 204619931 664851269 143835802 35539729 875134387 584689404 993578840 446631529 445452204 962574923 430268177 793162970 280805631 991632516 566822423 712353825 546639735 995893355 665078607 381416621 751262900 974037689 931941044 206671390 455136937 27403418 264742866 484101069 102687263 591879727 218284107 984846148 908432176 109930765 443002966 478469313 464617420 626093757 477336379 698134456 964275767 494825786 272286168 608336206 801908617 188269942 335201055 132264671 263627309 150167509 881724566 750907512 153902690 786551471 331986133 642455901 598364349 502142675 906623499 724082309 374605989 931361791 941953146 9749785 377001686 436128105 32741623 43056377 721731039 718031929 622082923 422759734 612683940 842193932 916894036 681877657 25946332 466322291 957613636 889070107 723582867 875885170 375443041 575556459 947590058 628851457 419405540 618596203 420767826 395319182 889247386 594350771 294438805 373519738 766774374 921752589 278304973 333534103 94939581 350677239 200629035 856388784 112597800 762206756 866538545 709991426 112806598 450382843 414820408 936018363 202237127 70505751 214760171 611139458 758070258 29689541 218681802 143526126 683576352 17098633 680658089 181352973 921246910 204609945 994830894 832328159 720269647 50937184 943931478 281993433 21820392 214781437 998715120 161538915 141239218 607829441 438921248 442308186 74936684 980133045 515090142 651981199 101051367 601746193 779991925 708079685 545601672 763728838 748994564 122159543 691246537 923829493 843441920 101234064 34165687 319045750 574018480 621405297 621856374 66822227 50639024 23947374 475551417 321708873 799920239 699354513 493368394 737804110 103967664 49592406 871907976 851062277 684374029 141461037 677098212 487193931 169245807 713968636 448749411 499903407 70998423 70401690 320330015 603136241 876083353 664805205 683288774 106985610 325552476 812167789 965121817 469176356 75612955 576884119 802184046 618045982 596518118 818957946 498980911 617153545 91054114 197686069 148586329 827716397 531821829 673752279 575605502 806121733 246547739 183428582 168462275 568595390 161146820 238837465 850602851 602629821 949061299 251573406 629708074 255689494 898113136 617592597 360793210 493416469 637865175 961365906 451619145 727220665 272629143 152092511 492932257 220365620 953820853 719898680 853749024 553694060 839448326 15610061 396243830 225327997 397792440 103216451 537359081 788474165 899110345 83503027 737724883 33317271 460407950 54690474 620543011 779754841 379390510 270397352 45097944 385401189 544934181 442169249 526227338 997589340 755683266 807157119 506865889 775065102 85482153 95942301 917426971 852323331 77033297 416244045 663519626 851061237 512538246 894883156 638835732 612358996 621907688 709832809 263125426 963326145 623187307 270192825 541872369 75161747 661994454 856650598 542385780 227882325 153866052 82468099 246003567 387843142 11495589 908803610 104240174 671110615 291375934 829325222 993637004 785978929 739545893 255168409 220790396 9529260 962170310 559644503 604710532 188728665 637366369 894490681 453868093 49356666 847765641 585727500 567766229 397559300 636407974 649206671 932748684 525328676 56669812 64808184 178119226 485587895 703704450 295427696 582356936 868628944 49976756 26322066 417628338 122452278 805692354 173926128 498637708 579685347 711856566 310758030 479146874 385573510 733064562 249412709 697272502 275081474 61436200 956713953 143892749 406210285 777436640 30187876 824673378 198815250 396996597 909652673 730696490 118252271 984876952 405566913 562129135 156306232 326185804 57790626 433995470 993860178 431178856 554613906 564207096 724029400 327330712 353517624 70525492 353855002 220980573 703411756 790940251 521726617 635435144 798596474 296837339 263844493 6043331 696383524 414172213 733049183 381751048 926517661 512521600 215899439 956495911 34137422 205172451 851376975 40832837 473779476 48483358 972531397 563027544 650100160 306115330 116840141 344157868 703524758 936490484 720682837 265946464 326063823 746902639 302571392 647326698 47429143 572520319 318915108 717495439 525379855 635798598 365303883 536012012 438543052 362526842 756885430 588101232 874156630 309154533 351376213 94580447 505057578 181672420 265622992 50436304 782645689 7447529 938311169 392628272 169765863 700113913 671912824 154468542 828894604 92312111 797821686 40608908 678727926 809808439 781210866 192464004 325704549 527289300 111321623 135697121 587341198 203922266 22041540 959750066 198552089 548987444 613589130 23320410 73238051 664501599 276387506 461558547 625371069 806049773 369130677 817688422 29165674 579687300 31732162 568954036 720384421 897760988 954873403 316746161 727385433 824635461 474021432 939720163 149173351 330871838 456197634 486584359 913406244 754609503 764503705 179651885 215989720 352524816 913785903 905473527 761119040 508557776 621932715 863244382 839562508 676972623 334839335 253683085 375428194 420463060 78909811 111715972 326293081 558834615 866973839 858693782 351268479 249003752 54495028 972554219 885266260 467423335 249234252 268104703 675532 494905289 47804278 791434785 23549137 207144378 54804867 483803637 123799999 101049973 806574332 887598579 37071079 598415438 853679513 24634341 881574668 89765929 827958219 508403565 74825960 488792575 384472883 622311548 930966952 273850720 866726185 401250268 88093548 648322028 474659126 152520104 846324681 858816985 557912986 782777807 311746118 110316656 204234183 72098452 908800738 784241808 178724579 432774928 732167820 574840106 333230154 673794479 675454378 207741891 494064138 283256495 121956499 180026101 118682982 537328804 754071061 49365230 770742612 5978871 966661615 219001327 597214975 741663330 151615832 331927246 734789701 812189045 972532599 105764724 319015481 866509589 677208040 441796448 383705506 992869111 703464253 425988643 61973883 268408873 221280635 407789538 353640817 845930890 532038297 993142743 901880936 82153549 339978500 682151120 181487350 982027386 141042718 311471535 146983399 3234157 900181690 456775144 949745335 552388181 524414882 153755142 198258715 858258614 8731666 106828838 946723448 360219368 422110266 341185658 115448426 640326805 965564351 637661639 431923519 697942335 532845114 801445863 217183610 754746552 972922295 125443144 652546384 813685159 638666040 242100844 190616878 346738186 290641712 1537127 882253873 222596015 910866953 943530340 512843436 899717817 552498334 574476832 214694566 235203617 967497921 529156973 494100569 504869939 643778486 465085617 431305396 684297997 720283830 375979108 813430746 748352803 937906030 831595158 690072481 969765822 234396797 545139046 521160212 549682552 373631993 176022412 482180082 541433537 709428203 167639760 177301804 21156445 828067534 469726864 775300459 362706404 225882132 770825790 83664519 41599553 971480737 13101536 488842001 634105908 674679118 315316367 445091018 386224336 159172967 807102200 377183018 972424701 166923054 869435870 439312858 163746039 824134230 573170326 271276346 474344653 560721544 399762313 175449820 212398307 684784609 803632821 477760519 276596080 241138034 374642733 513111605 518766593 615340479 15904404 875897237 348872180 910302017 969945510 356983689 712998654 814574308 395249840 806438185 82136998 450215049 612443411 876972991 520808903 964470149 87065797 200856393 407034642 242871072 43325135 276945659 36041610 779209496 272844240 656955322 287954950 483290651 124384376 920096417 518240434 964095568 614983182 484781440 181351822 686586831 2663147 163383640 659442413 980063524 786390781 315880672 752479736 623050704 292389957 940772099 414508329 171754184 809247577 523644768 32091856 879980788 860131811 787605705 681489297 969079729 330444575 955635140 253657316 564148560 275153505 858614541 655475092 425291669 558680973 854109714 324838465 421952056 217442205 394501494 374126558 109384551 234760479 10385806 78888499 626308674 301280436 444178151 475663452 599895390 890371475 209752766 262722888 801419075 934044163 755862406 844516411 485227758 129640932 931495270 973158732 611274832 905217831 600156344 79823336 976586956 744036945 364372620 27138893 455309245 39992573 394283298 557495056 82606318 664269911 273086580 674048919 237944608 748006817 470612138 74370208 426762887 347646641 995384483 254941625 435748173 193585265 874329715 411905221 365326862 860949854 65278943 543996029 88174683 601979914 355913955 548216044 751433527 186769307 443782700 518618098 465909149 276719689 237173151 103570371 731000056 75734499 911922384 682487141 119609256 825384011 56800652 244690741 833497476 266655221 48590927 285153123 65454675 526870637 470240462 714926705 81950290 284315342 133756527 328929208 33586353 700224075 7582412 571763170 955258389 792694441 394449972 287932273 228825368 135511747 346008618 384314167 271538373 406963973 525220836 479104732 381785884 274827250 654970061 677745500 54619540 8309919 866726659 897984902 954087828 738377525 936075225 664711294 426165496 456778098 11733079 989360699 396288146 146449193 275339701 483407882 282707111 141815485 152011748 648829193 674443118 93771178 773659653 816904877 1097621 215376637 969439983 570177340 385149115 186666967 981892525 991077972 841833975 844839917 123579390 319578466 388425808 524677131 652216020 294672428 313956162 971132556 914866389 198180168 319578431 687407588 387776733 830674082 262584876 675832087 933445242 351518714 815393248 985479231 481654895 637110627 280221352 587797257 449364785 896887238 806764998 745617720 930928493 420754269 686475757 518955297 970866816 959133752 868878791 544795694 236199677 602416315 406481519 631762779 856999211 145007646 256430583 440976828 340874629 747944684 754934244 847992565 615251768 908732804 749688749 533589952 970127528 841368220 938380607 658265195 70202347 990619065 760518012 131128151 594916684 387201463 461677751 52789626 45653450 97585991 926596921 842163422 430107542 821299052 981888448 168754976 929128600 426513917 268148731 532421618 557390571 347702823 631613711 483560345 511430493 237841128 863044117 161709423 703172080 632050069 452669593 383152226 253490780 671494741 618051868 627726195 504816266 996893859 274533780 52767289 12587802 749507535 80664551 930038619 885526494 336764286 948447859 338861850 699498589 943034406 765608585 816515012 200062033 240427923 573480685 115560514 232524329 211969381 777784920 567159947 263334792 892238223 307876854 133398574 193678276 974979290 780002281 925777613 106964072 192100704 59445700 888828572 630065074 602450193 107450128 762720998 415814933 793981489 653102026 9897608 879421369 593957336 862140131 84152948 357662454 98793585 425257663 706490928 297900253 296089659 353590711 607087189 381080751 701787595 609347223 839913232 994127715 378591880 931104032 720843427 881480740 379101998 829807751 629014501 862816977 197027916 335563252 831519934 416187516 938868422 884056836 631097517 92765164 138186323 184677448 633226050 911988763 273079807 827909060 11801251 195133623 509710507 397789552 352386059 980211365 608129928 969722811 130555463 834753658 328990368 877701123 170206775 16128 792182093 640748830 348853075 269267896 82279616 123693524 980199459 660726610 120731771 579294050 178313926 386007094 721090775 386928632 181773164 209297662 896484735 369537340 808072924 446655738 181078003 776061126 937656559 667104938 756372487 655387298 896144659 106520648 465669729 471735249 67101897 138644028 531291902 351804615 554022 152669605 451006381 585214958 537097814 301857495 482483858 954805794 468607509 999227351 44111525 266037044 612697140 207197409 28713009 751342183 61565978 970130659 86722389 286650102 916122176 726426111 739492486 568723084 447023796 379629069 689779467 372940746 307785111 800857366 252642176 399246532 262621599 248562650 155048020 217274244 649710742 968352331 174341194 471922822 295856600 490197520 821802236 709917499 691986137 510960387 2027859 3906694 60882845 314427827 494601232 431800130 719102270 250009059 669689927 904656057 183623274 58039049 594804703 129488686 654192099 465213136 259705363 108018261 624182525 261875606 780192755 289757654 872065571 894966511 88786660 6219213 435318098 490311712 466054428 324017997 413908123 740954277 930603047 73766104 420709030 154678955 878517605 866838760 965741354 471836054 928546953 772555370 938918774 623041661 596254747 138745662 432711404 534413481 789768695 5178552 194815872 848734746 321297356 754283554 99783229 723969026 208948126 500291384 178758080 483999559 583809093 894162602 619197115 788606725 425970156 683855517 468774003 234789642 492451986 87258410 753156419 817973849 382098572 563836126 313357591 622533031 964329217 797826873 941003250 71378913 649681517 581686063 748210792 368696484 908002591 597905322 236399140 41831620 384230842 716572165 934972516 84682950 236153272 378189458 555380856 793353061 125952482 861332758 315869254 125831184 122638041 966673224 460584649 102353258 991793041 986937173 207729805 734097354 856584144 920496735 631266357 663976377 497270452 890265337 772736758 641498742 179748138 77816237 759030041 98799733 642544760 195621238 83986044 623775707 425487540 948184134 373843730 409145092 860847946 826645889 907171679 363484414 649844089 99224704 284790012 669209099 860237527 991719696 322900761 999540259 464189897 51640816 433591030 381631855 597322764 707600214 193907817 548931279 320631087 239858539 365112923 761672277 121705238 99936458 673088843 817123784 920456313 467498245 696179657 317106466 961823586 916358432 107324668 882844435 620073395 818400276 918568733 795842427 426067870 268737358 322399738 278455283 849665067 890191661 373392244 189322821 712518069 471468935 596403201 297168624 479609965 23067172 352177450 918823333 511821526 641055554 815780878 284095948 847669319 593853968 151925214 965371648 211965292 918433587 741217375 470413711 785138373 913353027 237405291 759745275 375014182 983221583 197472368 562591355 18706486 922668885 3835631 884608891 340273392 4252363 996239614 968932375 576673316 882732825 185638087 551092644 181629687 767599132 198282759 643671336 746209119 579949733 883154063 433060829 485790888 719674104 869479111 718045106 826735601 102974798 377499174 30748618 400604336 195404883 979820987 93781754 751897898 861168040 469487271 296491087 298163452 944487522 236635809 199789446 741738389 440578441 727317104 903598483 105374393 914453146 847875189 782864667 844803327 536851974 643524894 404215033 159186004 665107377 475545460 105539772 789453431 202951539 416395662 288439079 413209466 968420250 996696859 949178033 767537223 812608358 68900829 266744323 685380377 694546828 551695912 761059452 935812607 668249780 189201255 426466992 64457052 474791419 739444888 229086437 591787625 505467250 357102795 122768276 353914802 561263773 43651494 904882158 290227605 854133492 341939684 924337237 972641478 209234021 427872209 328504030 457829070 966499792 641854416 140731350 529025159 883824010 285861077 255694906 370310306 891205083 377027820 21072957 704478753 718583168 229073840 633701318 371850461 149581353 82727124 796130031 973641729 790302460 717721758 906999431 148406413 679046416 743450727 889989265 572513748 151346675 486304540 594544323 767288830 178156069 923448768 581803784 449981063 879234459 348519912 186569214 813664958 752553533 262595645 620411769 106283591 625860199 461134078 407723262 375265177 936404332 518605947 578777161 476618369 918287374 133660571 647189960 82093214 486604552 594782295 932797725 835729890 790798212 510816316 215722911 627942679 532944805 160921325 396866266 353506904 420738815 849107103 427298570 329714067 943684890 604277916 381113252 24377102 704302066 236043201 861585870 730725343 865760890 255625983 523594466 878566515 464637716 3370461 75530479 664811272 798017050 110302964 70199096 14864946 884375641 149771890 685468339 258341210 508891025 807013528 308600970 532289338 770598646 619497532 105522846 389379170 680602034 654013256 723587071 961425847 273238880 261590841 350937973 719252206 965184659 481398176 688096250 49909525 119920461 367652005 348138302 787750155 955984776 93789567 689927202 748968963 204242865 185903357 641648957 464079365 655406375 147329024 593012058 980109421 843318465 401381886 263253496 265262698 175734597 105924481 684323785 441939840 745528818 898064550 700837171 271906311 119143671 200428959 716371666 212186537 645462009 358585137 562968564 324475880 506888849 933607223 869309723 797157014 247206092 564219165 454819455 781041754 897216937 394109541 537100938 330088754 646856094 917925158 340633178 931826412 854568212 800297096 885243970 502862763 631656678 28130633 477187657 233402984 249585382 457304123 331270825 787560815 520788057 974579907 229882961 984548062 133130870 517436252 540921700 870727977 239565546 735968274 786341304 226658201 276357206 178025736 598561624 263872200 650292431 974663922 441281282 880597798 801231966 627008923 546730154 530962807 181968766 260846177 645029877 835723091 353651105 940699316 474652351 168493989 374423979 21120666 362285462 197882157 891603573 572127534 981207100 752719102 510743371 77919517 784639528 757698304 882183791 982109479 931239686 84997743 261193108 313638052 770864435 240887898 937470051 403352572 557011010 194233381 611310841 743681326 900849529 690862087 505858151 143299146 271393364 392523149 900075825 76230135 406964481 662855189 776635856 652857326 576611043 123999572 248357168 24824188 586083600 91435985 218567986 473257476 85054163 818048871 284275499 773033851 272724522 378977223 295891556 368905963 713883208 324473075 824728728 355987184 875612692 689569221 60620408 399973950 988261545 863114342 288049706 286608409 170922452 566305495 601737670 753849051 412236441 253177707 741686744 190715505 821274543 468955467 8267233 827090654 62645247 775999217 646423254 985547447 45979945 734410413 98907039 587012006 211073534 437114659 238066073 779834088 26264327 974514635 58470677 88369102 628529917 642994032 41397719 473183296 35641167 671865010 598696343 681367349 317880479 13107844 792072323 419411772 438006597 825510062 750531003 498142966 958425034 250805836 466995156 650113433 441814383 609595469 844577622 480319343 338846884 135955957 694078270 994472021 420279185 563643227 404480381 605323324 370823312 496196076 461564278 596130732 219548848 89223398 318903428 831371324 626016308 530127326 565897842 851588891 714642194 319732026 70217729 15657354 110741365 599892152 387837286 118182752 525879868 264914405 722695369 802614661 985431416 721860775 592173254 631592055 206550770 743951284 93993712 479473352 773249698 945171736 375660105 96646557 352642873 847840947 738032588 775516465 369078936 185500345 45659364 836084560 294575191 288858160 525178866 568767452 999744575 426640757 932533962 381028172 44424400 9314999 231821110 693501736 152619452 86502011 59709810 916003470 518940266 198296598 545928366 832165552 278524020 648474166 881811856 176959828 767576617 655668570 96495279 374445395 291744012 415904341 627763993 175333658 555444307 297077967 321139405 91235628 200987496 937742788 132893506 367080093 803229292 540680707 751133151 276319640 872395951 313531056 916932224 129968091 8036665 711330754 454595576 758801718 501565253 228291206 381060233 605509648 819985088 123666458 214732909 359889890 217538766 628395507 427755089 42697657 672216134 721364055 458351061 338659512 472818225 703081188 472108557 483015316 357464143 329883399 865510403 736922646 832499601 930552966 653336370 988043677 250287264 324929015 626457100 196803481 535169109 522487622 517641846 498908433 715279423 159647795 533123655 396128286 763140896 951187153 494271948 2841710 766746480 40560649 226820679 451059138 319496665 792540693 435926635 331702384 274907065 467622149 704172258 521189857 987539875 760074045 437793479 428017940 838947294 154082805 123012652 150302489 492789476 47261624 546524822 116574615 673204197 626963685 962982268 283654472 708002113 974771249 248955083 859155063 275487506 684548899 38414181 66234761 414224800 786556567 817055133 892932977 407315434 532969276 305544636 245367353 155938340 437824534 84372096 945081728 863119411 363079420 442232216 728317175 764503091 759287579 463216681 191960291 769694962 128830321 496819532 509647518 838808178 711185747 934502029 248999702 340676714 274514663 625611374 97487181 56821958 149146027 550755042 16308951 203354147 305529068 869421522 152393823 74249812 992839760 932300699 102858786 423831776 425485901 450829198 200117874 514601857 678659759 451134063 592503860 446110886 511245590 272349943 581801827 765319154 460778357 815957586 890652043 706220219 67186325 790144162 430884942 967037579 775670928 563991418 497419747 439739811 393243478 188108387 677567378 590063475 90397483 492721498 562067513 298971939 456167207 732624208 248536778 731462158 525392821 987309737 921724106 86870081 563850516 939617214 94303444 194476801 426798553 422674267 308712724 119425858 574422891 821403457 474294733 171873840 462272646 151253669 991338963 758340010 335034297 489137327 984705298 401774786 472900071 497978108 252281605 542830654 866272458 738344989 224784191 551293210 587624811 548578326 647984102 603997444 72110252 39551200 691377715 740219615 811738558 955697895 266942707 532397888 252711083 649117580 813978377 449704180 65276621 168381348 536524777 993277304 534120277 925156343 332359711 360559487 38005701 973497794 444893638 221832048 634381942 515435829 540957458 578872806 398787859 287635958 541779142 78024750 41832732 420801437 627684030 878522060 271638116 883441206 188161639 22908406 693106068 63195330 303849794 421565975 452995238 974218165 315560805 868315726 504377194 906543994 339110905 315586797 978518020 417240298 345485245 224691706 792168300 167887833 336428929 479149489 9851373 104989578 665301676 338638591 808589222 713810229 968084919 542076425 218520844 34520200 286091440 472134819 475534694 890505251 481331640 210412250 235485008 583767579 843419013 608387947 484586808 27590263 655294433 190935113 345897956 40905142 127007785 907149595 355387115 935242568 564843471 73807291 391107383 664285712 469572824 561278648 401431945 476779753 877174366 325110229 923379445 429649181 721919759 748866184 877874529 604314863 807861676 218742396 678691851 69620243 107520907 442049551 729986048 633207345 913745174 225807572 20828326 365471077 160907850 182032403 154213427 653041346 710214457 468575556 846625331 184355530 608038024 106601624 616163334 825513464 278820337 173584240 119604575 92447542 699992259 983200483 937239750 692370535 484270685 546226237 61800471 990494942 111838902 297359226 265714945 55140837 575368408 161407951 236055432 302116152 761365856 990142498 885355652 87013255 713634048 839763341 978858528 534377719 543799038 537689055 530303067 679418274 211083186 824106010 180397962 582467602 409242892 996010230 162072788 45797322 980230923 42720093 426573493 657985981 36539463 540554477 683947388 799360213 146231400 140999801 336339404 741731949 21419180 294804104 86109983 203111128 960235621 475090901 148288062 206411736 4977529 394121165 66256842 415446823 736423648 999709460 177455799 111512818 645556010 301773312 658820299 991541336 556173047 121780508 311627556 994751471 532306300 626742695 977173167 730436672 991502084 812429331 92806834 526770758 691880813 781442182 641728834 551407603 340584103 646702428 759222734 635618988 600365881 64579491 691290514 590442440 490666172 9055645 808603685 200182548 400989789 283741506 170624492 671612753 257026911 832374971 309233828 901295797 654925207 367640296 615232988 776565606 204233710 257691611 72417656 790981634 532081891 59111259 215600 336679962 406963462 551962466 684178958 722060467 203994494 85465247 479636212 84093635 52980356 371859701 420328724 970159546 27252198 331451386 122039670 520857590 419075461 773318009 881553525 198510925 389184471 117971440 888700994 672246664 53539942 990012179 801068384 795690210 879647310 319404103 699275046 492275853 30726851 35219240 543655488 661018413 908545417 878821891 813972782 165954395 941060986 997482077 492210372 366588451 545020164 525993322 987954857 841132934 54178984 349989014 56637400 345778425 973943164 818148864 31108897 743140324 903087530 534219002 809471913 264396836 41021167 677179531 720307045 741041290 487787805 205013997 315520419 270749018 542474393 881628431 111894402 199713485 825341149 226446099 278006902 518146959 252744951 267421905 515166917 704207169 115888649 653504339 708953612 142770424 256706503 585600087 137200058 705100220 374848252 273461968 876094867 605020938 180310533 690272101 906284078 217563475 416962900 210071281 31763832 222325371 343520238 397313793 696716079 784642650 99043822 998485081 265985384 486094143 124843264 120312175 159086858 370166888 13831910 351671534 521734737 701848714 791510519 857483317 129385291 67584079 901827995 864778710 587656798 178221779 830934224 155474455 971069632 946076711 814465704 661576052 146257150 36271567 458370249 205911835 265126262 283896643 47205867 114599278 219529436 904245873 290341470 925663365 336058041 235506233 890370177 719410857 402185703 446339312 420681036 791600346 382535959 908585182 168091335 420564299 11714891 475340992 389464208 476997600 971522652 541652038 977186394 339254967 550573941 374164118 82855528 960321180 42415510 202182855 923198486 423797651 541953042 457156711 538633297 721770322 225826065 338012150 970178073 609543620 988576271 696967017 867136774 889974151 688933467 2657960 124895681 533653615 822996889 631982608 681501318 548931585 121883712 788138225 173598633 529300473 114086941 849371664 458160141 666299076 994944718 698998311 500703150 715759622 728680008 265798241 75015705 426479894 252546898 457609438 830875887 907454845 184446984 290809653 130253926 829409147 64437848 51103981 317124039 110484098 170918024 740635650 580271601 208058809 165844398 325175655 25724373 54039162 218927158 778429822 807046392 345068756 890744929 695432865 746191860 379400713 25518784 756224413 617887478 572167953 513342653 652878386 507349570 932416278 687408914 141506452 19423403 489108982 382318671 179392749 248613403 304293573 329571160 793901529 694512657 370611784 346701797 979990760 639814174 355558778 623667969 82778143 577716839 666069002 76931980 213562231 461900326 952365276 976358073 13617501 754763817 24147076 719083152 56388400 284534097 142027214 512805485 888957383 254329109 517901881 784421247 88400872 718244349 799018614 417006922 272501970 109699623 601690862 3598886 879538356 109435332 881215034 555080125 133525811 346900892 350745512 414664081 721866216 991446918 216771005 451724147 717230816 413389041 269426862 602472461 550414618 864998239 568801509 192280922 675552013 923189988 620674434 141153576 66452255 307280043 342971095 210029981 573887023 966858609 250515691 996933551 293283852 780832264 256130553 856239018 414573563 903429590 161138926 452446127 915432245 898957139 623059438 266385455 769820006 527781518 260763855 883818611 999450416 795964329 814437788 812061464 499395238 978040665 405501203 456627339 904335825 547637095 582000936 306683281 974157102 824472369 945415040 764372418 375063086 929858601 293900279 798375433 972377013 555362389 546810138 515968294 867328668 69684942 665644718 487814188 170827312 70661185 895835175 210308867 198296752 984580977 551796529 76843751 945347026 199442354 881580075 403960039 583758654 610801008 723333799 758162535 587859730 261394598 239178732 991519134 624418908 699231592 389629812 663149081 988071331 134615129 830485870 636151094 516853599 942920501 727373629 728078506 2538620 448628041 265328631 205245180 960856796 247572470 252822758 469199367 454782418 484780849 949636107 360133500 912459431 171472902 939086486 960434013 589614872 643683089 353825647 853822595 625448406 799565059 900036017 825365786 552946949 823225123 183089961 393724704 441587901 19664330 483794139 918721769 737433996 413466342 108015485 187667358 254119666 511962232 132220923 641569209 610414564 708423446 470209521 507129738 676953930 440273001 225036852 195151797 402601602 138198448 516812618 775229874 27277786 885308988 696772588 760379468 765118745 194130418 524965771 387500579 357075447 629117388 949191881 887077930 554576032 389539416 377908732 607553065 815131189 756092983 359870894 696791356 386472778 601457823 824855839 845082194 87235177 913795546 318758593 273622702 2142862 294430149 314431675 706245738 72295338 248250962 156047208 146391279 565872929 296250886 916998101 914144639 946734667 771105403 290305094 779831212 17242870 148872416 119945393 934766045 555844066 758727284 8402753 975097808 593812804 515445518 763894484 720665362 551085892 850516376 163388798 140988297 633255551 167168143 628497668 478545387 697749637 896982149 653201250 446723140 70432348 705811616 340712262 71572596 712858363 328785688 651821714 161482415 413417424 307872188 897945821 228936187 370501947 885186670 577768435 978803893 93943568 117153698 832928849 719122700 317342489 667134691 806180778 864865157 479111570 729003855 34934628 255990645 23312299 795144214 21138204 697567626 354595338 476743934 744720670 777992259 361195846 345237730 655545069 872074867 494291565 498953774 228598209 598760386 499819391 662608229 275441412 105078060 165190640 837759388 309466836 751845760 770233130 370178812 842689669 821042658 803716361 68316995 951077660 345384521 792832605 302139972 439905748 814876161 735793003 40759394 319240349 946095147 786632812 431102233 776042648 414602808 424271885 771744118 135060124 491978354 674003438 375670425 837461941 991240820 547397923 222905914 831017375 534436780 664082614 40332578 523814223 625770976 990652450 876204461 498551659 793330598 666968026 80261711 666434253 401690858 349113792 419579403 103854339 371937644 223677358 371403005 259534034 369533247 124481521 318491858 66323631 964260172 145814984 995562827 323256132 456023501 481491433 90839742 701106161 659224786 996153597 680131733 996012361 472708287 840639008 514305996 229963665 529612492 419679586 665562999 717136196 52020100 848970312 448596282 670588305 543369030 321011787 719080399 754724059 515866823 869052759 347094916 700595000 215328654 544648270 887797434 836646131 495672951 539047811 878567015 811720459 298386481 316666688 418386069 273662897 853707200 994114624 97692897 442517198 581101307 241406517 385531132 539342459 395898127 269547075 854422830 297505670 449965818 92527491 174629582 776436212 521045009 666286465 330167499 840558969 765962362 364846783 854770214 801530882 359890355 743817520 994922613 745354795 441268489 412115645 403064930 238540745 551973922 486106564 261701162 850477666 840333684 274830739 509349407 897871792 333351627 227529969 719293735 512585251 790981063 857196694 936500026 436480859 517265499 591609775 853966823 844350641 290591568 523309147 748056272 300563375 618732224 134945840 780762153 336211091 756908187 180233910 845432125 2662097 22698277 872339946 520205545 42504590 47716726 613427389 466562079 816889893 456386040 431234451 437491813 159749798 950084845 385039557 455535187 652991570 306008807 8448287 686971929 188194849 579168078 849311330 208472566 493043004 753168606 493493699 107290306 308839299 346862630 72569450 842135141 307280903 790253065 98656245 492226141 938983825 160584769 342810866 961185341 511667994 866861527 43622248 899845160 755342929 623923116 920461647 274384218 20492312 564958452 565546259 638467231 916960007 123614646 371246101 995456218 473618408 660669261 565502250 902086528 208732729 173563114 890504474 635360538 811306157 74970639 568376610 646166983 450936235 426401557 388035955 209954231 995248077 477355943 807590320 156692401 402908259 81281349 910624116 583377806 363909102 161600450 484116170 873267899 504777381 21836231 786863283 728633531 623902451 977908046 824664996 172561827 334429687 512151591 126907909 740434589 889819650 935157878 96073395 850009701 555904285 706627891 860455294 933803983 259979648 650677928 207411116 45583935 814916124 926323447 497592436 113279535 784606482 366168722 254166404 29119405 553866810 801897153 4306300 872522970 516364189 815039008 544142961 890216556 250511867 428543261 722372203 554285612 167752518 798356606 899618278 946227065 561858341 408599513 26143829 803718596 133963122 520311835 864887962 569824018 707517117 64294402 325653392 466990717 264107206 454186659 321172098 71649459 987780870 41609188 533405616 156910709 771525415 448683267 394430673 40323354 863423880 821816589 317993868 404097801 543461306 327973224 709722110 462263874 89692421 126069322 861245239 973326038 823831268 914353983 830956476 591562090 332369284 792865191 906315271 758004665 874934858 485246261 553712898 7727375 585424458 254467185 11652240 942999246 271882960 891398967 291000325 166915821 774184411 33324342 779907752 281415796 356640925 921400434 816209976 764840961 255171068 565060035 645594980 184590406 914910484 681982804 526585426 910229640 631538611 713608484 792894745 516095778 369270492 655771528 149795910 289680384 700968773 866581927 149274459 26734885 478878680 99287549 776147275 796385573 950165558 421778648 727452928 568717739 293789999 524813534 563525590 861433332 631843147 559207814 263769629 520059219 424102724 171178394 88605082 735092139 933245066 154462139 275748358 641210360 109891006 131137245 423561614 732623046 865654583 509668550 940662097 32069816 781501824 141942420 907304421 737211651 332101080 913616180 588895699 275469808 623907504 841462763 685948439 498221917 24429617 201710289 258483361 349155645 105558195 565736785 581474518 893847059 368591687 84217515 438748687 468555643 639243823 225475698 982473240 410698402 513731424 522523919 675720627 708708041 938901255 434156092 33890067 104036293 956601345 93589897 773757025 864734338 429670497 212746970 933259323 437027195 169908718 294836454 266317360 564919108 514101410 108692410 733593413 935780609 626056492 446111029 28359795 348576492 309392751 872550794 563730726 218568914 380290817 477223872 525209535 109346967 418443693 762150965 180040723 613494445 1846769 679819031 277799915 17400481 434571649 210345194 262239618 329089935 422031810 232096517 611342858 720710824 44556367 932863508 613361703 590143923 88317304 177753751 174475890 291434890 67113150 816108898 567298551 111445656 260344153 228358683 16388791 713579362 883515058 504742336 331559463 241287931 35745001 818350878 61452207 555195790 301880656 377204058 375858477 721138391 532242669 287464556 50880879 46415018 830366460 320425887 500171452 858765675 686778731 953282067 855456588 506316437 303489885 390783291 660617163 313753396 827265448 497976160 765087706 719614058 746711894 918385179 414608526 219147757 327971880 269268703 174819567 860241543 992970510 1044845 869582971 434750613 33200816 358349405 473679264 981034121 754299880 198708124 575529541 459365225 48941126 439508712 549056578 962444109 363627147 556676694 872945635 702877668 397894446 439436493 739849833 943119600 297285338 350805641 431408265 151681733 721201902 766643608 570274539 466945742 456762363 743265376 737426604 481424392 956436042 129175063 566725596 977388422 410334292 533558090 915172865 14568683 107668296 87781463 566412434 272172787 701757832 395842546 564949373 502323178 629856044 647483812 94924194 944138803 674942077 918924871 855020374 383619266 923567227 118164107 728532193 27191202 901573464 969242997 21715712 712806001 189645563 38522587 67207523 596026079 380709758 455742953 293782832 253594419 177760177 644431262 153707903 182094022 345764244 277028688 52106203 56831621 531922656 502448932 359094983 296214899 216940415 167819927 819273783 601152293 145792016 45949688 89793555 677170244 900652644 691785707 833757368 861402383 264257540 764791271 375098742 90270678 977274024 144215225 688088339 62070144 631497921 829039103 556181574 876740102 602439152 512445870 395931197 899454197 441237901 865771661 288254744 522892784 221276961 224990391 587975787 769532716 577420524 761635869 95911872 872411635 909287520 950255874 740270867 523434785 393660067 547053693 444761940 963536298 782757649 17902842 186134248 173617938 84289464 509246649 355126313 309401587 916121563 76294734 290717665 92503163 664283760 93084959 90385363 911590635 414906018 487939050 656853298 219793945 455724111 6638908 482337064 769678319 719534218 286097402 513189201 862407146 54669338 680373724 202602557 540199323 33887226 44103661 265326065 469449513 380244951 997577485 145932390 195801038 960809621 447428719 535693833 19238998 298335946 770407451 211853882 755612579 556639042 284020077 866038221 110005547 549460857 171986324 592654732 12286328 786911268 90327060 740261554 330131111 967012776 942102852 214500721 878751978 460640417 279469777 281976173 800112390 159267933 548328506 535817791 364492501 416836959 98303825 176948212 43890118 762470876 892033728 47774092 948368216 224432193 497148546 902417275 812987298 729732523 759191141 432802858 926995406 981602925 619288207 526034039 940647066 139089550 917873142 716613169 16074454 521122376 163338982 938874525 295629288 440096906 104239487 336490740 231396939 499277175 16448053 438472418 684785675 630452453 252051534 114266889 423949130 919348447 463870055 447381372 123266751 523653156 174370032 55519812 93307442 84478117 497910443 317585375 706825985 431363083 92256049 823919035 126735007 264921646 559781741 900477120 66120975 954187679 446583839 247330755 784438125 493879839 553768538 930363924 254793317 399466790 936781318 527119345 752854714 937198173 695586399 549014288 723740097 158536228 304834676 87891225 921802723 52913165 494722985 454258218 203232543 653954911 853561909 946986321 986914181 993115028 250383781 195086613 227522492 499177691 123213655 362600430 103267197 950724758 628952832 719067848 431847957 379361245 171547943 555490693 72468199 743367674 731829671 994900344 711697896 372872939 833235505 557495786 197212193 446901732 710565063 504382616 238948401 239997386 156976706 819142195 533226184 486499768 585809614 190398175 817339181 865715582 74105961 19432628 614764985 75552797 576157031 895937088 916577882 716563532 208122609 944803076 210958609 333471990 705213313 19063282 383047796 53466554 868380007 789347318 42718253 200459114 128540999 4533354 534914425 576436364 62943897 962947487 453172649 185624028 69582376 165005147 605229732 812492488 763377812 836230998 906227556 7773170 211839696 22275516 48022644 802459058 896109220 695505838 349902969 568400530 354106155 604864961 551357606 347403216 884575062 867164285 268094790 512024543 541789288 131890911 851121206 88955622 979691641 248555735 181761895 104469823 383561459 34166731 459497825 828265466 84736792 999342354 401478075 957497175 954316409 353222778 374780836 12886864 841252736 711678659 133125213 70677517 771352552 992493090 522491325 949992045 948405055 934352063 657595052 626409604 125144939 907791159 149331880 67197975 257966882 119447322 373851971 410004770 662579312 986703726 625599138 626027090 29203765 756711722 590142975 797207436 859848612 337024444 566314281 716995684 291374790 488798596 627298303 258515111 733620981 561250390 979485945 544841937 506824801 511554556 914051487 235301015 61916046 755607218 131844367 699981663 633013716 861846440 809772667 906217667 34538462 110731140 184517545 540152594 225687084 825678045 27350897 735386575 132681617 339979457 854821955 360527920 698722229 657789232 137322142 367816096 268748692 91783070 70779290 127952957 64673277 222764917 627695455 497824090 640090643 378586769 971554220 445266943 689146320 33537986 407895121 522672996 879985277 635551565 901624757 710539130 418292028 184609132 428328784 157964642 401873790 50194121 25490994 319794675 197343629 182888199 882502523 830902328 411106051 29815609 186013921 218215920 577764177 666660457 923783469 668229133 529919034 883567635 622026942 820113205 991696981 124655271 585508356 175473220 682237326 191624202 332849670 605395144 146093989 157110293 438523613 265796484 264473261 927144213 333826102 746344685 415216015 890633289 519974356 248809392 813243013 81004136 734234636 830184234 319925663 333126680 331381832 759729134 745440577 23691384 23016325 366605379 241558691 231756183 640784084 549274276 386992208 713189114 260459996 960120382 516921511 209684506 367841110 136648565 683470429 700945124 921916304 295297119 450558713 567694903 437928683 815204167 776638807 996822121 524690013 810215723 501149222 455010243 842564592 602720831 655718506 671313152 460244801 555402856 892513786 567361490 299547650 157699010 763442691 768145245 469000312 434775323 201678723 583080122 416022013 128580213 426420687 426911606 123235199 733789064 35279629 535051280 622823936 957560893 613570235 73897598 59649300 340433204 965304358 315126440 599822694 189554239 892139764 301455596 384957235 868270309 995746203 435023513 976119501 322410208 821744103 210896500 494735641 362547871 52360056 196630326 181822481 676293 867437121 559699467 691507012 845277608 95198474 935346964 2320977 877683155 996929519 313812966 845294959 158261892 502776032 721085449 445161448 315775790 725413407 629524859 274763930 700120313 507139781 398708010 675924597 142526781 90663740 61494141 398576895 443374091 302468038 500140236 972743379 621939876 991646965 702353891 578837021 19292671 834546225 471874180 639094048 21429575 677931062 513883105 895153840 934747739 7952786 424385318 583408824 671488077 351303467 255051757 318514358 837433828 860924088 72855751 626616378 202830362 19985219 904185786 903882603 952178333 184409005 727420606 375081857 307158098 366509354 421635135 170602828 808051150 965069761 352143262 866783148 239915483 705768141 366084016 949992470 336820218 652665215 324371773 795675414 962567387 683717977 959251330 750470343 215697638 313124020 370711216 849567580 894501045 772777275 931363946 379998619 220992407 169693806 668340811 198784349 720727055 806115360 516205150 283236880 218229844 181014778 331488164 340087093 120039631 784962294 407744658 696825058 263399071 417588196 611945872 913136704 675423768 100215272 988406651 946751502 16379199 764983802 261245475 181477660 802130512 998080612 941706446 695636689 609467961 716494664 321883827 891729830 47711516 558526232 436950912 43279273 172063441 424381724 10350037 625970427 178824545 260923887 926430663 494390354 183042444 896284162 69039966 690336632 875518788 100412952 161015063 304253898 200193072 65746376 661646434 211627193 525520426 27216895 925238821 936066636 105106369 200702843 209313079 759968157 71513784 484692817 190294758 587180376 23288453 572916583 914034034 427600447 165323475 271206139 900092047 125741992 376078848 691925274 552481767 648365053 200815520 455534378 707967894 181327163 109657336 347065184 598281900 2492788 936534403 613336907 29842351 407744333 624889713 972628551 811206934 666426496 576635939 124670475 498814415 327824475 524710065 445663516 829775801 390687296 454411876 826581847 720571435 289629219 865202492 556086891 137701995 83728655 239686763 291946076 178120248 727872417 581750487 879566850 950953025 827550347 875254172 861382024 562407084 460057875 275354248 47318253 425371024 222527889 740897950 322755206 49228667 275899380 273349779 962779514 137163756 508796478 414084436 947234373 746280922 248533251 175237246 489883445 988562987 536727023 465619173 682402032 758445118 319550525 129858318 498260204 462607970 326056256 502347700 547022838 820659804 654761694 88387654 273340076 546014181 430545423 11530087 98766339 963047722 696903523 107659630 884739521 638736714 923663737 259020004 383476995 729236700 788859273 181772552 913507001 995484774 640036315 609983566 142659109 215754471 363779150 942839003 914353504 733373518 337254098 489643787 928509909 973193728 487687662 757645292 231590084 224229718 350676283 429607360 468114880 819500572 311392230 627985023 961606962 46174484 794799922 18357330 248487636 907962481 899717876 855864345 376879670 745308764 666919445 51106278 413134652 796243827 214802708 881075584 464250525 211574085 249200769 613240545 114433126 132036823 358728067 718135481 803598966 607458594 638841939 500116712 721645311 81883538 201763007 394327815 528520971 881691784 301382312 58141408 626942709 219390938 543591044 664947954 509540076 144360782 710041052 56878318 46519155 276286242 577155535 200155708 247523812 52195975 557587854 694301815 280499944 362842657 248357598 428268525 566882048 6509705 122764953 591706656 687401728 939112139 673232685 996073543 794165902 162792680 10796827 799321038 248422056 906386517 183864185 34622161 26882075 168662651 454735985 654688421 38184460 368445749 788620736 817790544 125688947 16909141 511041336 416336652 397652123 731232542 242286910 784192200 67659684 489249995 101154124 176149671 525089025 677842695 490854000 145200510 11130107 604657012 305657804 356799578 302138155 846251300 95718676 575718136 72918276 146838819 787471635 679099980 899177031 816573163 487028262 382169851 170208140 808874221 258371263 465446880 848365248 184950543 17571299 412384906 585602465 876828457 978527149 383860156 217416260 180236167 905298889 325397485 184984976 918930282 437800953 995603910 728895425 251638663 600202900 787711142 338604261 234942598 339539202 700529953 972076898 436943236 122790977 79107453 741098606 452738705 499896675 54145587 841103510 628825395 718583822 693507700 176974392 788101858 694556922 822747298 900265480 973998986 93845110 420980434 109963663 397555724 530174692 600610129 781522343 479033532 993679161 497910044 389539072 675261924 730639742 693605478 608544927 48544320 737788241 659726102 979237978 252517249 149314661 606350150 314674013 856633546 972187389 604261829 399595175 501178678 364919413 968926870 437500813 860308048 947544505 265975151 516725303 675856537 359966668 587967035 796805151 911041541 476383299 536249240 107876501 65050238 696484807 211989338 265529661 362966112 865372823 292792070 441768590 634373883 474924803 895236184 188762709 592922389 273808370 772873149 845882928 872202597 268942173 731277018 283213332 960838937 887011026 232363779 648260296 900277329 246903282 69310405 130721383 378904737 753765619 535722844 666312418 120913811 743954206 584912701 232078972 676961571 486111058 8490638 243083340 598033473 156500607 674003625 34192574 282661714 603087404 365251485 812702226 591898800 372341490 395933357 994771676 814502181 472732415 934935759 879478402 543299700 735453844 778249517 25889730 969475536 288637575 139871655 28741929 782736483 127447234 337259856 551702940 555352009 357437122 694478573 824910035 468566674 701899289 427766137 361117145 258709187 363736300 409216164 568946574 260125782 983752309 466230095 361414437 982773685 469130114 398924817 676065958 985148995 417740020 475321781 421161325 13566163 67318850 69564858 75496105 27775023 484458483 157411026 623543262 974324626 82984999 964788067 333518691 750335278 438543119 825954313 171167973 712837288 440886641 53063186 1285602 666522519 472397605 357416960 261976111 509800968 787495834 895021067 109519987 73525501 232788049 668383900 658782378 272242921 263355745 230451924 319132322 844422709 2342386 11815683 3612801 455073215 388903106 461390641 674229053 176757078 375358627 823399320 200459042 241631807 314790650 417966887 361721936 635483059 460325954 472821761 56814395 330676062 124923015 147678204 941647657 66555874 206591468 993465635 35169463 870948690 677068581 209391668 383384149 171946935 453410302 696744739 703466181 355332495 198324178 118103445 528260512 464216137 453961236 341426022 495835089 333025482 743368394 231348516 2210327 741857259 683798796 645776529 143037320 135581944 288689034 808880932 389378569 865924658 453383428 979462793 497528022 299902798 294716111 156845853 289304321 508489205 231533911 633795699 699484650 59371074 406617239 481735121 657017804 413660999 925213858 36311731 488550961 392170888 805999646 466270023 688048248 165582205 247286468 802702064 490148438 735888917 179861986 882472644 883551825 560304430 820183256 154492942 303700551 978828318 298395550 243525324 320179174 550697517 512884541 317090865 686801201 674453272 595500113 841312036 710451969 283069328 276824462 548606656 795578242 507878329 716232248 858198226 197814962 302828972 93484713 945260638 770145509 555893237 936307407 887892507 714730307 924834837 207136939 435786994 780543560 97064705 935237331 523201667 741837892 37947809 576959728 512822687 824806873 175642962 99358785 388936911 210152576 798048868 588197399 627431116 747651844 729154205 735412823 119270149 650937860 965309365 623074299 72256540 79060086 120036824 182642577 98608745 431630367 937439271 584471482 199893621 652657179 193358135 46443436 583398273 537405787 911114640 12511665 691388925 814662946 61595183 119768486 628919313 462262664 11808004 634000253 889896471 966405623 170908021 85430203 140507934 713516465 731719385 974324218 792393577 778823 499456766 543525736 216843502 66326563 374707364 850049351 653876184 675119871 386457600 352572779 248802054 753699436 651211066 138608831 442958473 514646093 390287087 725535680 279818282 477306201 459474607 844012800 153891297 352192412 720138112 997026212 866815071 594770166 996683865 547335143 116014469 779318682 143880360 241917333 101018347 768902801 188125389 242212497 505108570 519013941 423716509 947315535 596830802 139576502 854249951 195501402 539324037 104138904 9681106 127506383 831809626 981012787 952676518 951439329 484938091 735647538 327533054 877723475 368142855 133864213 62496628 105279745 273953713 427837359 518587925 318908247 621854623 766309544 513924065 808978648 91731771 992588539 147910220 601473176 496238758 678225273 964886208 366161603 373568816 43650373 463294745 984119572 509599713 720109655 534409255 737624414 412375028 910697977 108659760 356236295 59161942 231411021 532740459 182041736 397191467 116041668 356030085 871623662 298821706 148264360 695595808 443958620 203699132 377520787 10129999 164229255 817616193 245096438 55248156 995768888 472654794 502141332 325417731 220960974 965360128 154078212 28357236 775881401 310962876 116800818 804889940 103597824 832187277 724794590 564314492 14131132 957273397 863107355 398231865 227862171 755828780 999953105 283198411 45522270 612754204 275277372 312429542 229880411 371516259 530676076 773712947 105275131 216993684 608999619 266969040 791571005 995494902 819691898 354118860 430505266 978311427 531725852 570038956 328306559 35221995 966402312 771154665 783517150 255551246 290851059 672510832 199062685 13885062 428670820 985963296 734091293 507511451 617663287 299222095 800048468 689307212 893349659 450337606 554537548 927906765 990438420 546482368 755814561 504441603 268031993 96109679 411075079 450652682 747768823 565972343 372395202 680197552 534143244 525969137 783639597 28408823 941848716 704817770 239880500 671406230 826684064 10868321 265602265 259655545 48891074 201363148 205595826 266810685 656089155 339095444 485087593 682711989 891310278 510129428 892452155 776109160 298864322 599135390 806730874 645657360 205788163 974302966 392471563 481888796 142304809 699152597 718594025 886794543 752703271 55158119 720736160 95952287 657131461 346364621 88512210 318795510 45202463 462227612 643195318 39642485 255790629 678117981 95793044 486536844 517460505 892292107 681993546 477461859 203166483 197138584 399735754 412304213 195962752 182551144 420079770 159544943 644025759 980103635 602795602 266122741 871100419 10907047 503482145 850680542 402336788 560722853 212516169 108825171 923023501 450673920 632953247 766049844 559543295 852984545 823798284 567379859 436558157 941671653 737893390 735024950 362380847 738419101 300231479 999852569 801929135 170643212 861365677 147698666 447734446 446813997 361156777 431639948 305045600 996588651 908440312 580572052 659739852 14963751 430358909 96621263 178238285 368940342 809276333 238917306 738581779 556999264 719777809 883560968 850540451 821895906 200976584 419260192 865743187 529957613 949770242 652457117 741252047 986013733 669523590 861645772 852246679 611800610 448846893 246950705 585038718 893276914 489519716 833886978 630436140 142066069 872003246 74368426 433472925 689336448 239295776 512835656 719235233 363039771 345340644 178042670 332081242 65734467 220341942 770335842 59827648 877699016 741007210 212820512 244171552 186456304 479585380 752929621 45607065 451468275 419837470 775343654 872197278 928349308 357092517 108678247 388951671 209161518 471701021 798609957 423656127 547520029 182989113 255306781 972526567 99854673 517679043 666368578 696626866 673207111 602084634 987126331 450298551 20331887 151393455 91609570 240874211 134737583 193945223 695944134 963844084 957623262 723518396 772932010 241998079 383245898 892240636 663702788 783354346 867609139 910519560 181575551 552819698 814312269 416742198 684870521 981071911 630007618 281400816 871332485 143792107 234680366 300743987 253390827 791681911 94700321 447221521 641530659 128154710 216389793 212664879 37392990 749584872 216544037 967731784 855813373 821020129 565182363 724956328 900572695 959325895 995024354 695054513 166453496 569628791 648374609 888917082 822274460 56412320 148734255 49067690 14443320 904337734 378170168 78570050 862480562 354880833 789679135 997806545 256907044 847614139 64415750 931013789 988917853 87153078 95174919 999811329 106802015 841109124 914430383 9703657 249094370 344626253 264047997 880304215 212179408 818670988 493596008 648411618 618126791 811938450 343331926 822805810 732483482 392110594 308529062 785469829 117875152 275763027 322129831 165426221 537140004 632739666 146476574 532595472 80597763 120069789 180997828 210286375 133515793 141883944 505094086 736243967 264996516 374741948 486325316 535853371 469700935 461619315 672440018 199234831 168802105 191723838 407593465 853982407 842887916 460537695 384910007 114677310 7154310 328257775 199848699 92832103 921993827 430890841 960976938 586922696 158574992 716242397 312457629 508479994 100236882 628941326 922813216 121801771 744846494 955199573 799829365 226500763 132086430 293467755 471316687 730059042 225539890 710859747 824270168 80836777 669818988 689246366 504185259 17379756 514105875 788450132 802520410 243995327 844512801 76395026 923119977 23919366 434514245 101042358 918355153 616556219 925197666 206009717 591695614 936953259 43430414 299299670 43585106 587515833 424895252 453593781 846015136 388961114 528461042 285724609 456946097 448000536 661308764 26522877 693473218 912754960 941377975 21783491 948228 61456755 90920863 77409980 651102491 751077640 407913313 851627625 375315872 969802920 993373313 345239454 660439199 716416705 984699446 414531073 434892314 359049684 296442857 962089615 6012803 42038008 236719546 274867736 250541638 949126228 833444603 245257662 504101437 947716520 257851059 182347642 731982394 72906437 955044892 448862871 402321537 886775824 384373541 766241845 340270410 585550596 113027312 351981511 184659267 441666733 33306709 74984853 818407437 163855405 238846046 570023739 549555387 528566074 887717577 867580968 93610582 645415070 308564617 604985888 884037723 738139830 77502021 20620731 282112826 197214196 151997656 464048868 344506585 878498141 399416783 262576986 183238416 559415052 798856686 500911410 754194475 535704237 121200555 583154003 319265643 634202627 638131633 767596024 394766725 660356962 766386015 780994354 354924833 414784565 534384967 869147492 531182940 887423353 569597359 922026437 104025159 591305792 547472659 257992929 492988773 756621872 316146337 946967321 650927665 308130306 358698683 951613726 478376598 710476803 103584633 56896634 726842741 225749141 569055524 392771591 837288226 770377903 100620988 534168693 948854247 169847385 611581044 221424841 841117312 892520754 634614832 610121944 33916062 872727786 847256078 43340752 79742820 976364488 178711258 163114160 352857581 585816868 580716184 828353739 780267972 147543022 900060414 572681290 17716074 175130406 81946615 14237350 72829651 893483105 903894561 798390578 394102249 65965131 428561744 307103631 351390472 108718879 963560713 230344245 643756928 414246705 110501128 715226865 17326103 827339109 576314810 896917345 901301124 373101492 851736771 846719866 440677109 124953518 332032890 925880323 429396106 867614451 106598760 476771095 764909015 714555321 992328397 967738535 882985574 255822154 363852059 890594550 978209843 589392514 818001785 947756827 158503982 242826837 705587521 620948866 817184957 650303047 969565314 529170027 536607287 41622258 133380222 988467818 548164458 837557892 613047341 754433253 173700629 839880510 198888121 167593625 881952623 768819190 521793024 549160982 534214814 791967893 520902421 291796542 484831553 561770138 201468096 730690762 672794599 913619862 352459257 629127877 363624086 841785774 971018864 634948879 982719813 808982044 330175752 956712667 827481185 734943662 585716312 459427377 504461132 273316166 220494121 752151149 395196121 365881944 649143035 116881598 988843986 160851311 975216767 588363944 535367026 961177256 62488094 274203778 293215723 714454069 853425777 571276793 133105378 736087259 246401734 643805323 617245166 119274100 456102818 882405389 364516636 715657326 482922810 719244582 812342638 11859019 390140920 946048977 165492567 369437215 130187516 729590751 777530177 555645717 84477080 256039795 362625031 126454250 526862547 508336004 326380411 229793648 150562791 304935518 936584929 979301133 14805188 501463073 936487794 561440569 132869515 203766081 326107867 625430532 184329235 113668356 976973243 578951053 197414503 530738183 6089768 991144588 171338565 168386746 691424811 681149641 215645857 927718879 200351295 845187490 901248544 310954767 239820758 274361481 921833374 235073333 294580180 161534852 734774696 41067280 996384530 594473388 116810755 512846774 397551324 492071342 962517539 174625548 101406579 786821197 720351668 184195150 570944652 555270366 171299605 28254861 169015248 580394954 989700568 407695148 952576858 448648463 24431428 76881507 374608956 313380544 89224403 592357308 454892282 171350913 815119028 924786329 452411405 492886283 335267914 945065132 959792225 457856686 869659307 349562492 408996823 362956234 964385569 587605479 220443076 324199509 848099245 308215450 946920304 424484696 74126207 506039963 820789912 966097778 781009279 775411904 693242349 650493779 537497288 345038133 672157075 702344770 210002215 440189434 404558243 565446808 935637920 275545443 350966953 789365315 448391913 746675350 923634214 659418436 178428398 441937936 90202383 915388465 277253195 610988577 333140044 225609396 238123733 597594987 342679354 691548169 693405202 324510567 760118314 227325828 24858299 296730336 731149023 323162889 200548929 192070261 443260692 175963538 161465670 999509275 597375732 286213037 794014240 689727130 146967968 179281403 579781465 987706379 543713197 8766387 666591281 428517984 561377699 65570076 113470234 116194012 329336959 481786390 960096315 693520279 436079665 542661778 340394479 807884795 280559135 789148437 75527491 118476618 129498529 181670202 250243707 866414357 637367427 764215853 674809229 86351302 707009414 215151408 339986596 518087447 458668766 843522073 790309022 197917849 159805621 759086546 156336527 64835119 649703847 308073176 707469628 386429584 612742980 531843005 704643489 10173384 716656274 21362087 956019052 462438327 389034632 884103886 760240255 453257360 196030100 824482561 160073329 274823516 626795798 732328994 520350478 757358197 625379811 84905126 705048787 119691787 795286723 977766422 223140211 738592418 652265970 974774672 12987988 990798738 97457315 590499910 603442451 116389766 451675000 573996030 147994620 372793598 869883660 263519120 248646802 547463373 648718441 222986092 118872077 970868379 632837010 266146321 491962327 545464163 278363131 810912407 861870606 655377398 67268875 78219558 90665478 219725175 619269281 361032060 902748868 680609246 538045836 653398892 660940675 654415989 478408722 3878233 866061875 692147805 514913898 663418559 52773365 48294666 401325890 787892907 474155424 395222723 362908217 909682750 736538176 270683939 155487334 274535213 188096913 740767643 157074127 150711876 469095048 726675437 283931379 659418590 99264971 694393522 57099073 723756655 651192372 184176086 623534494 67020027 875871569 295871255 275154404 475702684 598800871 977951369 443781725 359486975 642767467 615444756 60461132 713052135 161884551 248685812 997929060 806092713 880215195 77460025 641375055 191955119 455852602 508698437 389210664 401588726 128095913 229455185 841966337 133462671 834574435 820544743 585536350 662991905 983768215 301554793 501908664 934273381 877465000 851791497 395572988 678879401 686514092 192615631 917096713 648523854 686722286 981348375 815414070 634224970 594795629 701916432 212280265 155266983 333501530 444638398 310459264 818058498 622424734 964300536 24308236 930181901 539731793 264850154 829798034 267692557 668652356 7598997 439522344 241881436 767871609 457729098 133669470 771136488 629543077 469808947 491591090 651578034 186754997 624689098 86068250 63611729 961489477 587042656 799953791 681663084 709038122 722425751 948942396 353754180 783402730 417151208 109800867 87869223 254735935 252467487 116425848 146465790 100694680 207223770 174292852 507448000 703593880 978801421 853108675 24402684 978806933 716842368 887562118 841210964 944812826 158813007 241310802 131159292 853780837 790638698 248398768 976173119 1759978 828336403 638914459 307696890 639536846 239685730 202363653 545565215 894481004 676206276 389316178 941750580 940129748 527466104 335726042 477909714 450854983 151887377 825081964 364539686 945926845 14706935 803100102 494712946 371862623 25166309 405931806 93749645 522664716 917779308 696892828 883608159 358388184 651617391 282766045 307881063 923125129 324886693 379636594 356152117 52129561 857047323 844204895 768087279 264972855 847743663 440448156 801252560 140388805 764188822 797675927 72420773 349101147 816409302 223053744 543359054 806345923 55744717 518109116 539681859 481434235 523561384 897539715 728725516 669111862 617464045 721505090 961503176 84384859 30873330 376981546 171366311 670548868 878144355 263951583 602710128 834106113 584625600 753749753 167803388 214947667 848100316 233932934 823889849 312818353 428867167 787729030 177791784 395476358 901858117 319264110 925241950 795127025 180482142 155894182 354338439 638478659 643408844 325158411 780575839 717152389 713877127 67513454 974463671 924361455 726287068 824760338 710784758 485931890 895262954 984817202 382850453 821520431 833015076 347716217 777922210 56173822 156154578 161588104 409101886 310668264 718079631 933852019 337837343 885478317 442501324 552110148 794549519 482371135 476268620 284306039 715552106 527822149 356114598 341033852 985841572 375874713 913957575 513423417 772665793 541545163 626521965 836120965 184347867 368356763 948683692 806062766 490941344 452496514 420152685 156688884 887218898 712299818 405115882 804990731 616476101 934846450 330016308 49384349 903413988 53124203 688316333 954336198 547357228 562482653 835427982 970026646 521346478 38506947 83579490 586741395 192529938 653235274 537996425 648939060 74795791 598117079 383045303 360120935 694949364 957751934 983629170 360199948 433372195 740970635 78622871 593319287 894362000 645976829 876327381 427668722 923619142 230990086 80505648 961972536 505365986 280409484 662230912 657916668 636067350 155790251 996844271 494348384 505537831 236278065 983287167 210055038 547503984 604670241 571107202 84098275 402257117 14400561 341755424 844762127 129347953 607907147 138232276 853810678 366547904 711317520 461363439 252915074 169374581 25154896 677136404 905367566 268950990 334984595 3889850 184969708 979630619 911083411 160667566 784348897 367398978 665125568 105900942 849523364 381258046 934863291 361194830 124309858 198234011 15064795 605029559 948759101 438378492 183686315 511309027 577904584 220001686 422421097 522953411 582097548 245897394 134528649 959754137 325949831 346844975 657733425 547311998 851553448 844033789 926670522 866223581 439221076 41367715 352991285 941139446 103649508 219408825 546573284 360183644 478352677 66133871 542468540 829922423 363605718 309462277 892202474 580653315 966723629 812831313 50388299 11675280 79806803 166468668 204530162 911523584 476301027 957565765 390493606 72591115 259161199 628456956 737252449 164095678 552763643 572815240 253551314 657187319 682594176 525269538 181343452 969587947 450692970 729552792 412050965 112414881 848628507 679698891 601889864 779577717 858727014 393736497 304020467 955397014 700058900 287495507 752753354 606966663 784028002 308743504 258394162 356265633 699445889 598154329 230299590 814438800 360487701 860134963 651587542 752517330 793196983 666786744 420344803 164959036 790072691 748121430 46586149 694472820 106852427 197163406 864364805 919130487 460131250 201399670 644873123 355823381 193372945 205915448 194049617 421142128 929670213 43379345 606578197 24868737 673415199 128726354 139125291 251585939 396538083 220685283 958149761 880887750 797437641 345267643 408331834 952583565 385837184 348975081 594112044 590279472 116929446 998626702 433859425 572558411 20835665 79383649 972592026 622875725 932297865 38046505 228980167 712774394 599513803 328759367 843978384 707964650 427196040 720195625 648044751 824039944 74236835 941669336 216775700 213553683 703697399 941879659 894541088 604136224 355633615 213302929 213678186 800277014 972773996 558072076 411853981 313658160 528691843 714721584 207820568 435087487 138585788 617984104 631789676 725528166 574043188 617262514 139883234 51985948 870750972 50865694 900511475 148676141 528455319 989795666 469005774 256732921 831245440 200674825 600808405 363156276 975834786 267147919 922408224 646331493 375778782 608133447 763497976 480559463 743661193 528199974 578014557 633757418 984104171 531191861 709654913 99686898 795304385 455370258 147616843 606922327 167869627 826590831 524442069 117525316 275104511 863150482 685731567 490708921 526558628 99633876 759011225 259090697 5459000 978056482 384703884 850207068 79447867 725277055 733108914 659335726 674557601 932530560 386244010 190911694 828553300 412933582 630884933 809578720 486101680 840434344 15654412 92948700 891106566 990403166 745350327 785558669 829336089 756112855 532231863 863709586 47460003 709659916 397226413 999665120 170377169 926226315 537261808 439083582 156554179 954766068 918895628 808144583 402590733 638723967 781501246 731049324 134484025 881828981 318335993 94977136 182096963 548824755 967584099 64449258 165555995 160210730 431697624 836356934 89647399 225332577 379355238 506325444 294501566 714302961 399323472 859354872 968094382 676027656 821481612 779728968 968317110 526003431 763772229 309065841 487312397 463525988 466631513 748882435 635106266 233288041 373571547 81852384 130910649 772601715 307197330 382740929 480001596 249996307 512651129 607588017 466183016 660156785 843497789 624909712 975007028 359750852 268971458 616945041 546959373 596929243 678321566 293603516 372814165 769451159 400504221 994332269 835348959 100083566 119446843 828582867 960364661 507746794 634639661 441399410 838840403 78268456 133130712 745417377 349829545 226583642 773656024 500323853 160285724 403862341 213876347 21064244 520348997 575032516 455579716 749512939 359696688 14923843 636988776 450362073 948455647 138990916 298290772 183104505 672181445 221854686 106681893 194147356 122927948 929804601 735356718 534446437 510632271 737931795 354500470 102720203 933246112 796226366 874672439 963847834 21931651 38188063 436597600 945256690 628424753 805404465 38470676 978617415 364696919 249474688 988157737 818595807 436492436 835382319 726465194 920709719 930016254 332221170 968372566 24160287 680859550 820691604 732993822 619747321 995720687 228281459 385962411 674388862 509183587 95984127 284946645 410553241 219764702 621171518 221975853 250542857 866384185 633616715 56720500 445586659 207724992 668537555 78755874 629687055 495679413 629172374 86527968 426988230 329525451 353779180 757010446 12703002 657773227 163048253 738356798 470213998 683254130 21524104 33185207 378082298 329739313 950664157 841474547 861481544 699010412 364558307 308506401 662274490 44667804 808231507 399427235 92901377 168913325 915920506 30371217 642656679 544304512 833348027 800975669 726015623 533621354 608113163 32909197 729305679 770893747 558581876 652545485 464604421 198556953 64780690 361754330 728118143 511159626 39652889 694317007 855195625 990709357 73215309 445428348 131272771 137915546 435241864 659208674 337532641 619855453 562265783 908395704 453721833 520877367 141308637 920719337 92943064 368395805 249318031 602880276 404027646 841112055 615989623 46811915 149528061 47489570 996148946 964090964 808639822 631981807 17052145 179612587 748642748 214376482 957220028 132153470 387959270 669548915 825014826 849513839 69373121 964573968 266132170 130402518 261108244 464329753 144263997 478205757 49483003 462275363 279924409 585508322 627565669 125599926 16181640 410307384 611038102 653066703 387879303 262522214 196456614 304949855 990666408 305119430 961665279 513320393 860659568 414934631 967423458 707994984 570318201 311460492 934091491 833279239 495773169 205642027 73685609 580215655 230077978 925510767 581172271 716738748 58848712 849721655 791658950 58983728 843851750 954625429 346667281 365581151 463500017 111837519 230684359 389191898 926562171 502104673 246231284 571922084 839623849 551866744 655987064 770406840 293228726 595952761 375865478 406289280 794773358 863514872 982248743 197838431 395014835 917107905 126832565 554988585 371545340 850490451 99227744 964392102 312544209 915775840 981695404 543523859 381663312 441627983 608985841 957138336 657118635 637556154 522386138 775568882 590455720 89459440 927843302 230459299 891596576 137309812 170901739 233874365 343539328 227234172 511870862 23851587 362234955 767543667 636433611 449021097 89206165 497044599 934869363 830781014 781675145 35140571 736257705 548644649 541698789 79382183 958204005 521762289 936392825 255971347 602737649 742996212 157905324 341743632 782104686 660754537 702931447 748531647 14914384 95884542 136951399 948323831 249023198 745672786 154926111 34755011 531046579 701880188 458564820 333247202 589686336 4399490 146849103 859941446 507375943 752444387 932849647 412407445 851211873 864298766 522598180 149871275 517419898 526891753 942770677 643700758 982384720 995358539 389622395 365724057 536619255 260279425 347909732 625540009 568729687 369437645 103601009 642994419 289770668 65724386 430864888 351585492 156326918 819384170 46406498 25055 445139655 820177792 955332782 656255067 850875943 930366518 809228524 657941699 23445171 930216720 561301444 119311428 415996618 108428168 788274669 289067330 734850335 503042952 686361525 117732307 780824890 89761266 318306176 685799490 10165239 214050588 581381697 633317773 999516165 470600524 716032514 49010152 49800295 658599745 634894946 917050168 212356855 143067818 92543762 525376409 645244638 277162668 77010519 44057561 617958174 321422944 345081227 100197882 603695880 902420818 33713564 263757748 3839174 706638851 649224076 98182384 180183506 533604968 889126127 117275214 946682749 599048298 77193840 613888928 378557289 454708836 453529676 453891693 753228815 754364840 756477141 417151599 579022651 535427834 644944624 965177877 243782282 171258131 389400728 730220290 902239731 143258399 505385817 765694604 44909115 844401472 155250389 671100990 27990399 42823433 970915651 139973718 912133038 39060483 855082475 523610183 417150221 292375083 277484971 101539641 870329521 488410738 931491701 967895172 299131144 841027388 428946638 416995897 800464465 852126434 259986001 746484121 781203743 506170416 796281898 93763483 848534234 215860967 936560284 982464362 265276477 27974204 405823611 189352677 708357593 409733975 822820787 852655390 426731153 552328149 445289919 163419868 288756252 96896071 428822066 174925080 205114247 665758897 970540850 782359427 373570480 284643595 88662520 149729535 127560652 152296900 707635025 638282274 907676129 699054138 798117920 832213430 315952461 52595522 125018586 195108668 214950717 266168743 579248904 828629348 851164471 923787427 35031496 823767190 54614929 683311719 739487309 89886572 819523575 506818713 381580635 762709301 617039849 597453009 894924491 807594612 120380218 37157659 362317325 616093536 886359186 423024760 846021281 568328802 44400109 827734364 400576157 87501977 885292826 26535985 137805098 562375257 222201406 178364371 361827591 880342951 824242766 338129427 398180101 189195967 346090904 850297396 843294856 869236367 836999227 601298801 751946253 74904377 112037034 190270325 343327646 826629781 746346541 168154849 873232735 170591916 814841695 731484617 340759557 922884158 660285617 342969399 5305690 265595709 448225510 107264679 750685371 572668752 346856853 682716810 223019930 772216913 115196331 385340611 707938300 549162191 316316134 229960236 964644091 297974413 567008602 659749906 857267525 48240385 940093424 312747701 238221723 799257558 978850530 249578442 513067859 976086890 520223553 958724344 704548055 124685649 529901167 450958942 878205988 633812176 743232677 44744460 24117580 552243554 258645358 426530693 913485044 89974071 901868586 105322051 660816086 940481456 324528780 521060403 447700545 385697765 121332509 359001397 37687444 771248415 350811063 514506397 5350342 473072478 943274506 589169589 188728033 88706003 112253978 770107449 581594242 283426663 353228991 342257369 687560027 433109811 639630371 164198842 895752882 97025286 590927432 32535797 975229151 257092067 617219968 751705367 240587730 519793791 548641523 583118240 709816202 524918215 984371484 611428740 213660831 592325464 921643596 63369645 639428281 719115782 825517862 530999158 899370774 375053398 80743713 573631281 265420552 631361283 47533322 897280675 927781493 67538812 112400767 690732419 788995669 404270180 703141748 860659198 425944376 39782929 461278386 712527670 495946174 131953935 487616595 247456702 363145500 371347098 417041224 566321184 139851677 852103463 373810387 166889815 155767071 514803419 235213581 57482581 528554898 802058770 997726049 417421182 466123133 412953050 228793103 143246635 30264953 308838005 489420714 112251945 488212403 954807259 612909978 309648183 900106862 624889909 206573211 47019659 836123775 460394083 905023036 119804494 949152463 873447543 245375073 836841243 751659485 681989688 271572418 946725508 921931322 696657824 136987242 911598989 1208586 393282911 306905656 821790511 348209801 284365141 545744737 691308247 684904580 905216283 876137196 305392356 20522716 171866235 167975221 646274860 802049031 122363892 435455594 28589943 840032143 400429879 94717713 813659139 908807824 759380908 87005312 633288190 247587902 928454894 802562404 492961807 148453469 664010059 964470843 823669966 193178567 470082117 676159449 681772872 369480426 552868627 807856103 773412220 113706567 962445089 678859615 909527776 752572148 266437771 618554130 328150748 273035547 387371174 44289570 612127565 365273209 618125944 450876552 493872388 305413344 780828987 442643855 152271429 728201397 160735966 837910103 835087177 650968946 805501571 702985299 776595132 720655909 934663426 572851147 206294591 980190192 141628773 399492699 521691879 99869831 538963306 683841906 810259900 14050997 946743301 81686740 101561403 805107415 17402843 496416025 717672661 925298527 386653127 971460652 693666670 362411858 511392088 416369100 263550942 833010379 265361745 74765326 770973811 2014582 81531945 318743001 436536941 200511765 508275337 632935784 881121921 136836607 821389776 386353868 54612311 818706844 490856082 286018152 145028620 299473642 276265237 955714931 282951345 532602107 772757458 398247545 311306954 454568309 355059194 550659546 295859151 515705616 130721263 58741322 398771118 409427996 271933894 506634575 337871175 104855800 76708812 417553351 717061871 645957276 481437950 876069983 135353582 855826704 657523599 155195932 756204545 849927667 210948966 486606038 625357784 956131061 879053469 453201336 604969369 810466908 879819779 387329474 135063131 165736835 235953051 89985607 464512940 230631767 251327771 948296047 740214284 28622552 425940590 985903798 671560560 284627358 825846322 623700843 688853439 625034834 599987771 796152114 903400280 805437744 893196814 876914307 608478091 559440012 217032551 876293417 777371931 499126601 716448947 447957699 829760195 414601059 792116119 107595078 74805165 664026215 970160487 368513401 252115452 373065206 716534191 110038391 393262404 743289926 776669358 175641905 482541836 95788192 110529494 279242474 561862995 485499875 782497358 102596025 582637832 841829120 825625456 998924298 404511377 913150332 81264459 882292253 235672645 787442673 98241826 140044422 700424946 36998284 199227370 687532715 939485272 650245009 209151696 722185545 32844715 765879763 254114737 574177520 9352213 216422716 668764577 527470722 912806705 962033995 183417189 295767992 400640913 939925905 318059000 496141213 16825658 404576819 64819978 87771409 69111331 589160555 174292348 430765895 648477370 245401863 906417125 941640775 418909278 763320552 218153744 530916205 427805670 514055557 782045308 977755112 97227800 576842598 350121691 929708348 5229107 137753769 84378771 698292672 696224358 45801343 428269120 184313121 800860758 501010096 54659376 443523805 58967964 673910803 68406757 243154633 849101381 196938007 878097047 942536076 636412240 202752318 847672751 348367137 27548979 206198428 462257229 361093465 766899799 296886876 880163524 141934167 165556631 482873659 848201497 844940562 244472517 586470923 868231559 783892438 380771621 65128498 188816125 709350083 950470640 723203624 518479262 877075533 61278931 64740860 670729536 811944890 305447021 970753488 66336238 470184871 618398420 492188249 309115494 300263043 437353489 181043552 336082076 224111379 854393503 458154051 882441781 887257837 771460592 721844852 683961613 765910780 573328616 316769273 199177138 78791170 31977568 627935211 345883622 488931601 916850596 997105399 701068576 916377617 495245558 411730912 534337292 517368382 508385801 892951034 913801735 438698151 323832966 165118385 288385444 922288816 980650634 407376640 959651625 231095953 663863078 341347323 537973266 515149268 140798686 537183045 589596813 904709595 204122667 451935386 991409149 456477783 270042617 314721095 314380664 771140050 664767529 398564525 557034569 386565671 437272592 229462210 238723182 66181892 342314743 956329615 281853722 589457519 793558681 729724083 621371188 385023806 558057895 94561758 409954263 947057053 335337543 716317015 173749456 91626892 615682193 81853303 253660451 325418847 556031761 576238124 389260679 905180732 975665992 816247671 406441189 867745440 297045547 782389742 787342045 484823259 317986466 486001978 865140288 653546383 276631050 732472474 354669463 35036213 55760052 749094751 649648027 455788439 46873188 111226222 844684219 935784023 458222290 966534081 715033241 534580583 261595692 610694886 785173133 31449743 435308946 754191742 511046176 118150891 605646745 76935871 358801554 764011370 655624393 928094451 949098070 583467856 865832991 78756343 711713681 955343540 132637580 470999485 317171358 750773507 768107635 64807114 786077836 168284539 307617327 682551481 435812254 270623153 422876811 376988854 632718794 205207052 826793032 905513475 877338427 841286215 813503898 986127990 706767568 156100595 837014187 157919481 381126298 265229042 547070999 599590921 929514082 704647166 713858927 992226360 630898720 559495968 731856310 208370348 282459781 160031289 532732903 18259869 929411442 935283580 956833645 642590938 735986815 359257586 794725545 237188677 893663605 639747061 6837615 606657618 39757524 285531061 405877641 375668364 447214670 285539254 359228723 196891665 140490570 671609168 303248285 517132305 18837858 439962926 891112813 944736850 116359397 224572879 237422906 263941551 212310358 83554824 447946770 602275988 497945067 263695744 101837812 241102724 527577102 354494259 459450967 937042836 964405216 130347504 876865186 264137965 717156529 926475483 958074033 490690381 212756873 85677035 578414935 98420359 744876963 238223469 75970262 686961918 401744620 72818559 803892584 836085294 458100872 951799446 639957434 246806820 388182350 610404857 999190380 474043136 733811271 833774915 26006418 948399482 666721587 406252005 219419958 173570907 476684035 549125025 288619987 442250495 625049696 448517904 769243099 390005978 55676451 450102813 244552499 625854447 492156891 352106120 374922162 283110490 698229322 210921573 638664101 846984648 97875944 906524314 62176846 798205946 982746975 950315364 628425312 42064198 935193613 997971154 921651333 153740054 907431557 303827785 408735192 765061734 36146446 98626558 679037035 111828554 727969314 624493951 329905091 918992998 239278320 429022763 852484439 608653172 341363163 453810357 782094100 457013186 261830906 646314661 91917788 611157937 837705878 106907351 714554882 571101239 685833134 833208314 575121359 828758366 8970358 683143953 21418497 330428611 571366099 418588662 538466375 253453335 559240929 249636306 809994694 507953058 441293166 929979302 839741847 762670779 17851004 629443782 59320646 819158609 845150146 873506137 90463573 686821733 587975980 413888218 59116983 492857741 726459735 838555290 347277397 299002227 323517462 737677883 454177676 911090004 261825776 824817206 55330989 754016130 814994335 952437334 799859324 31937763 450649234 543612987 388998578 620052847 545305964 179012569 850473339 361532085 513954178 232040438 237503481 155659863 267801697 637931183 378143423 264384649 181714503 99993075 802459990 911367318 569028261 273207302 835465659 302384475 184211107 344210944 723760863 50500554 490740124 973179468 427562790 176193897 662202269 336303402 339587305 230985424 907745770 441404205 945146612 847565359 417053562 80696253 520893192 249256389 442165110 620265877 269123674 81913962 631257022 142390598 889842194 966259718 268389220 217756595 460023757 417189399 337211694 358631571 229819420 892362800 777956376 640227059 85744899 19808884 922413520 604283313 486430843 181007391 616178489 158722050 682818800 184267261 412950760 956909036 711857603 197035249 227282346 671685325 211404745 919997552 91575036 729648082 262487498 887373059 576555409 8252033 694451459 830089417 955135440 888101168 550089124 434554354 25973332 436174219 301994323 284091717 566758506 409693970 125530536 310186139 32417942 76701592 926071471 581799777 709301006 881809861 467342185 875325722 356289085 540030869 595210826 495599067 538020674 896542935 566281660 158256846 10665582 46466992 37038235 924148911 569351114 773964565 342211768 934036050 819575183 30853972 471260503 335694619 673156267 882544268 570215856 212372868 534737219 200451375 216071537 556666779 86901547 350715015 789709114 448896385 714356336 128786223 52274463 868547564 375632335 265886102 799660842 463473829 517920059 202281600 580129239 288349963 987152475 511351172 844022935 930785423 418733833 477647246 35369549 164127542 515468756 776347999 254934996 626272282 296938623 614521352 435760246 200362985 259248256 240149875 512927862 245078884 78663554 86129370 521007496 369478114 218480611 47229262 266905940 729722314 879096118 113859633 423670262 455805724 218520771 454931900 788636801 754784745 867843074 983157114 756550007 296895191 281222436 845398219 526889810 429116318 909261706 603963746 830655231 303686029 544247883 820933064 284422238 230495749 475151539 934211031 785621187 861016317 594586302 189215039 952933752 735804797 966839201 180807684 938122297 435878435 764131906 658912509 78522294 507577249 919945659 251754583 86474772 574547772 360301531 205472273 785977709 102161743 496722340 224623230 401173067 435859398 596182478 709502150 54273585 49990308 287890755 376176996 12233746 295436413 693633953 561165993 205724888 684939004 185329595 159938360 612172766 96554334 417363992 323530888 270940535 964257526 935353203 650255205 83948389 212548519 508886329 396556912 73962850 804197997 295718926 973462170 489265050 771483604 281391688 824645549 657546543 573263487 824323186 666186947 457315508 25553827 4106187 503449805 227719347 714691465 217585860 422651661 886002727 987629071 23241094 936042908 336374018 789123880 781772394 438873061 495006889 446163287 675360382 687201064 681722995 43140152 436733959 783979256 745611309 22309624 954982649 335815613 214620312 154343128 532197249 7434035 369560042 603123629 25733244 896982761 102919753 48679011 779680765 266275011 295471699 807435637 974929355 630741369 645026713 618156919 427413472 639423766 445546783 625466765 776777963 488560505 322330078 333446129 386260175 287975639 671067459 817973361 462154530 318868023 426965933 612387054 628074415 451227125 148177650 703768542 254934260 373438527 72266459 571892426 289097893 916260251 197818275 976251601 471618087 160616799 304643708 375594275 441595158 832112184 930871306 523088264 219259839 353239204 274004709 83730135 299854758 373794679 249108508 946912127 54551042 954153050 708736429 111832065 794238524 659886663 888928014 81145715 633931892 6318607 690901927 57713151 658730492 392194260 407869781 27711842 21041115 437864591 435953385 409748845 167243595 184022667 283261095 692552839 343342139 649037288 282330312 38159402 453521357 834052633 386353144 594268514 867040473 663116646 241803736 253157201 108194921 636501867 108247421 412040621 145710139 105070487 794402799 472370496 284306242 11058606 242811051 897792615 613004837 919511112 947665954 585412500 26565055 239881551 197228088 890506189 635229085 733761669 573046469 469579050 346986115 549964284 611285015 816015706 7912167 300366492 7313775 437526047 559091572 277212320 269699455 749471181 42589577 121291289 396340978 232703439 195111864 841668458 498550500 216189219 990207047 598656458 395824998 395573465 439247794 785741253 42205180 601987223 617471271 102304187 16091678 191261464 534600968 142086240 649457082 462312104 806966637 240565050 760889264 588154794 281842335 906032935 686465109 933615378 247140254 77969620 127845873 770321132 834435229 504405830 149813569 324433619 857916288 104790101 13103093 52313722 742170213 940735276 351205171 530436647 699861016 703663819 291152402 893749043 439677597 980798597 346383904 811913867 155490218 491548802 844532701 949120818 674026794 982903870 429239102 880109245 655184827 50560776 436157995 474815445 446511409 849829508 435581696 248203961 779989265 950218026 723921680 353267129 613184278 630278852 165142813 89830844 619375024 206135540 942632930 303334075 354715776 557143980 638635657 100527171 718193886 745070004 261864245 277667319 824945747 72681767 98558842 279916556 666872607 811361782 384548576 221770188 112149172 313078883 540491107 260187667 588001337 760539528 893842422 520345045 856143624 871868878 361206523 888665238 442319152 209778550 80912076 248035056 355772403 482765075 221546038 849709329 14371913 804465166 928709881 78065466 147140444 97935137 316610121 184100417 719259914 795967197 84969296 766709264 359848038 58901540 544704425 722229796 446588984 305053871 64782823 207787022 293498232 789398409 871538188 831604725 733404630 192536977 661484050 625663251 322271797 901413885 454916198 50545716 529805612 691749074 365387367 107580986 286309764 639054189 971379948 847410843 912900285 776263933 588969147 129388001 626553224 889840390 449984787 138095657 349058638 673897439 843606563 397238693 372959656 83963701 82401168 305487130 508184804 601584774 181077235 660212323 597077639 743186343 11140697 303024876 872349894 629953855 325727425 347001399 977000459 441343305 317091490 708058714 614333814 173687702 339926114 290240127 319508313 941412936 29532383 945911140 172185019 712490585 878079466 821893081 648523990 837564434 36909768 548827460 742287770 70312852 761862832 145310240 136464424 860646226 470881103 254012537 189348439 109552789 439651654 450250353 557521970 734712823 298191019 293061823 782572151 636701672 873550724 400825131 231821082 189889837 919448655 406119187 696364480 598196059 825293949 219800554 807746629 83945824 789895410 403655091 163565878 943840251 873799815 544840586 129519191 839855679 281222281 981885979 932736799 786446356 242602295 715533865 395989303 271960246 215616583 286003465 491753727 947000116 465049953 191333156 988155401 619298034 658986146 448147065 845420444 875244584 987468571 994231576 453757746 737941088 360857936 730207144 301554938 361321212 312164282 687130082 868208727 840025517 750867269 304346899 526235743 632739069 653314003 195685534 860492380 707207878 445787318 737889912 572177999 695515833 865782074 949329834 751364456 877436121 745861401 389037779 862525071 712325117 590402821 311218339 250647775 131049553 163259681 78931553 624299045 911617493 395349896 790254694 856680805 334636765 938384581 63020704 396801877 550302351 752578137 817549584 699949793 579957096 571164473 145453132 963635621 781570999 964596301 608193022 923367030 278071329 157366514 25376611 484614618 556064795 254470521 510139340 1956490 744959603 827315622 783986976 533582839 576406472 68039473 5865049 512006339 16481037 268082761 112201218 995534147 771329546 960909324 49121984 858509828 294004699 634948367 651464134 230800451 787892079 343999452 975635807 836717683 352400906 240875887 602984 47514811 633878467 262530489 66580946 935257462 528361991 344864286 836822309 825343409 683833364 33615350 475237624 783581104 113653631 467965711 747167866 44257641 72377519 468115497 102399212 76943623 399477087 291221369 543645221 931622760 652098336 947520807 166818573 654046880 511092692 318423503 723093026 776960628 318506548 97197316 777863670 791191264 969741900 82571209 708810158 806025874 117966842 632272662 897201029 472422252 220166002 910221913 588376391 742324485 869410236 545644530 406474454 62884649 93897524 929483701 179597993 403587669 740724234 270115180 218836552 886674492 781640896 664575315 273698001 987112516 569993391 87185050 395672438 567823370 774549634 270587879 834342909 438446042 693060792 873394641 624857406 66590519 520054310 89406310 335488425 712205145 130847859 25862310 495837117 676131242 853414555 395149061 770138770 976340040 69972333 391291373 398189648 372996743 623162381 374341434 497670838 607797612 190264946 480285628 946262932 794684466 757504489 505654712 635042641 696761033 986083216 328728935 329024869 210848850 970198748 533282166 629854944 191226276 204756500 714434437 302093538 584266699 183647443 359339688 10765601 187590275 270662794 534910441 134338150 521714369 450744571 885793987 768486672 932290347 284689087 605219241 688804239 241864346 470057409 386490493 421341418 333011615 972806593 119573785 273321786 891278844 368663763 895038410 890505261 17832231 640900061 290213839 787969412 782712010 496173852 913739742 603165076 481119813 648699039 566606496 114164681 146501675 380332747 704261425 638071583 454584001 57767125 23559585 550064295 994601090 103238987 390809461 477562376 982314653 904638604 965722662 654022139 351156085 817421643 840030624 461053646 653997856 242101008 331657925 254093538 35212777 674368182 135322600 862578478 303688911 870113006 700315474 684341177 147919875 196282043 944528321 777479715 477972334 254224885 847352548 768203293 446798120 254321094 415194592 187671020 914342402 679252271 667068878 44464874 103228925 44989828 973192250 329083909 434824913 267737836 487582630 923292223 835589735 459989730 472715269 395076908 516493663 746145463 510315328 674924407 803340683 827503629 784163253 701549917 801071730 744089949 500558002 282270000 155961294 139695218 807883006 76054485 752550414 958157036 756660561 309780806 607866069 495240383 309684952 530365714 490919801 604103857 757876658 151856856 470411653 418542303 53615989 818519247 557463863 868583224 290954153 764065345 505211907 565682176 391683147 208520204 37460750 624513615 242763852 985511712 282045363 752017552 568482832 93560067 312135170 397242626 193806832 492999760 210020156 489750074 503302328 742596915 144720472 37813663 999893033 293742575 72630402 516275693 517375352 925207896 388427670 465635763 475743181 484486489 969021609 749910997 689911494 371031920 616251521 74827274 143635697 830447405 270940696 62543199 545564757 557352119 308717853 264174770 737228522 792154950 551027826 976453431 451800348 247922090 907302063 432187127 14231116 892253891 194354334 215706444 233541967 53652486 592019389 860415847 486097133 119379967 157458111 510692042 598691939 345139401 911315979 657815502 603618274 212338840 140564027 103843359 386600717 217298479 900715679 947956027 316083583 397569386 307009464 656728822 104691523 848755638 963575741 875013624 930004826 563825300 64453401 217425469 416741433 300933658 863589610 302715284 845803080 23434097 254278020 714274337 722931300 761722712 393106669 955120348 702299229 803397279 952843614 532496912 390880121 911404205 103677384 163243484 840296687 590083579 354522700 769315509 484665965 460017815 379708610 139359202 326775955 280704162 141750579 660172799 537760630 567867090 357891167 49052539 659478302 803154673 476380728 452356890 375661063 879285340 111596133 673582195 768818596 766929540 559583424 744946290 223227095 181462384 352236505 839229912 591166587 551228474 365244272 728387510 480322523 289180046 778735870 512262646 874119479 198379054 587760173 283254738 287177286 973831024 102042460 137208923 592359087 19337150 959691804 620663539 122362511 241714453 473296309 380679123 287028470 632214919 379959714 881886854 888040041 763681721 989762064 787366508 320637794 903150949 650430051 145198392 750985419 353185753 118333362 565572979 429456007 884035703 745451334 676326646 921054186 570811699 711608607 396367220 838658107 751227160 240118895 983517422 456340281 496328387 615125020 840444988 768401299 741860070 857443138 454223243 573170031 989204167 925828015 92194010 27872484 773083838 51183206 727983740 815908991 749492922 39830045 8746392 846942146 573632701 785830334 567452332 426145184 132144987 562824426 598574598 585846531 924191296 204825201 113660490 695254343 399943847 350750427 104747247 624050876 162827235 945340642 436330689 652580135 105407450 304226806 844455521 257973313 857815940 743131320 383440064 199834679 573403505 977099135 440101800 64758824 385294400 991771862 446800947 43952298 279020841 894640123 586991953 498518086 34164852 307725154 835260999 201239031 818298880 649011505 758207787 27096495 704141757 984327105 247849833 822178515 601107506 67047971 339388993 414262970 364645112 205641369 631246662 854820657 12249404 631212824 765451488 95377146 933112385 670948813 964666571 322339912 66761180 876390293 493634198 102837060 80320246 436404867 989889061 980961420 131641358 736030814 139641904 719293871 381703604 599558944 426338498 895495090 761957135 32138104 746575290 16336782 314463320 58129225 20093773 12337839 644167517 782859817 323270786 341536630 607434751 878348771 196933044 462735288 787737268 563109109 686244116 135722302 244325637 193007890 673428773 792148547 804504593 3282338 823200574 84013561 912337673 615863357 654255628 856048900 411739058 381864244 758966285 267526653 877712102 467959816 637720597 110681072 252381459 777544177 152966605 67372766 630365370 814584408 96433199 338604092 277743345 899934557 577473548 467396466 167688674 774093394 58406022 283872350 25391946 564958781 638232982 827229646 517874427 401068634 697960583 642480649 12510042 426024599 904313 673311047 772983777 56665623 717356767 445488692 772657054 203322800 731688961 224495729 812395955 413729900 963271035 187326227 252496340 501454348 236119740 617501474 871755468 448579456 244936072 426663963 417876728 235948400 506267255 210785391 353810122 406391990 967392115 489862146 536055111 500058338 293311038 127917229 703899274 994184885 991992042 662987452 14193215 211198118 646639711 391929200 700408872 606063968 362598616 922132350 635716764 431051842 575626854 957552014 729542915 687379421 132759404 188506301 209350235 323298426 70389537 4248347 439029686 589603986 640962065 711816238 473034426 899406675 616377500 368812397 225633311 689059618 131492726 70355654 926145588 507404820 591587365 638340377 490077531 861604467 524141958 641097915 64953481 576211775 726707273 166179828 871118279 435249834 469246832 231295873 187380915 276085915 833217236 861893906 769917696 829774124 936292256 855931853 645691633 780735276 444661972 252831946 397812706 837484702 591289795 434479508 513449663 928099640 74439829 826855086 915053195 361854181 344330950 52671500 974405339 716808260 809752485 121556886 849920088 511293222 293294294 808881065 178492737 265379604 720000721 584590741 13859814 90731974 198956896 715461152 116965678 316834733 724843045 644836865 67132178 804362858 859082002 342024294 728543008 168313172 753915630 911454062 683022585 864528887 386303959 914759856 55556819 30571664 117928379 742604211 443140087 100458130 220436701 951029875 699012932 269164323 407009879 177716195 983711146 791510943 808343186 259676261 296660144 389354004 516328911 905343571 52947695 336716229 830193825 897268346 722825877 795324840 717469297 243294362 960854499 79273192 413226489 581379559 115828655 22177635 219817417 640674699 239097315 669548588 837034694 706143522 435356668 533304842 775562918 842175292 987509644 288877560 216685685 801334750 82257592 332129187 928340242 148576513 717328058 724201967 553215922 593162002 467517024 632939378 896909405 105720689 544309899 363063544 586859628 850301170 609122482 638230525 426937105 355764318 781408092 268310838 363821519 879007475 342597801 685090056 764070142 858472160 356284106 718711823 280055369 301837770 429381253 523881881 515260207 164264266 363656114 784277545 629463941 639766381 549859776 580816884 857311730 700631346 724634160 555697511 145483889 220758800 963282713 420523423 685767891 283580269 231675299 289674479 385727290 809212712 796647564 80605022 502994592 636474896 424372390 57926950 731560270 578478442 917737814 897451830 744906085 416876143 47420695 626826673 865228120 648530635 620133877 351575149 612158576 844664096 388358163 70199157 834170183 55643521 821699109 67238280 532777549 171455479 643819511 392406167 816418375 449063167 887757540 732380747 516090058 24615434 247642719 789880444 138420420 188990460 486385262 26913723 712947444 807131054 800973865 702589385 310874733 792292973 96864320 432331294 692156183 444574328 976394099 157955683 986743854 533701509 56219415 635913976 763784385 430494012 431836056 485521775 591970356 417382331 276224753 847179535 716162750 125558288 413599541 278449490 889787884 674947778 949967626 497610855 40825116 775788105 41788969 735606704 612103171 103593361 209792992 55900229 970918184 768292476 242173839 894568816 240478822 377561181 772530478 324298543 395006830 921314941 578736070 730774198 210278979 891526297 21602291 418007274 266152892 134463842 49434217 752510182 848310277 491502332 343499372 696798330 1741086 850022271 524845142 375761063 584755035 960386937 194099733 616703524 278528482 696131179 449359786 980699100 803956016 261185863 38647723 273795950 72723348 652162297 19950529 442712492 170436019 825996507 4238123 802568988 39188738 575266622 651712826 178950266 823331407 128773096 449144275 129449780 861781561 898464401 489056752 224611820 346419123 318966629 673530399 148436730 511647877 296466821 718411521 730929896 6951371 646973829 665237964 784484596 328670324 62698992 491913930 559980945 202109892 615762880 984062936 855507686 485693394 208847590 860330728 128150349 348097035 693276872 796324479 164598741 242128301 136463037 85113399 484923073 700827213 453973651 980260158 408859655 877681746 781360394 826900694 171085266 117558647 798208599 9424083 244206337 785731917 434061986 50148384 841851814 689858486 654145672 806108474 385736583 202511723 468763545 97787059 542442656 706738808 484571867 811572656 575316382 659632827 755925829 618312812 680987750 24199784 183788613 672701619 257428620 690337415 23493179 905271912 892413916 351850868 2123515 744563711 503872213 821897055 631542351 13363459 888788777 366802122 165463667 875386001 444446271 545720078 495061655 513351644 685945265 722024150 770733409 101557927 534831054 908609697 676284264 949287374 857419801 565288772 332144058 909595069 280313288 547514470 950472791 270296311 847914566 107093763 636578995 794215056 535685041 927198698 410086456 531248308 918370140 424387135 534226114 407593758 732728911 774624761 585071905 256575905 982929858 57725541 30247322 725567651 552395686 683370145 919150695 12222365 160279324 416076322 95727154 319136156 879086843 522751791 717093534 783688643 46232654 811119971 788129470 702394311 754218196 387252783 22295964 73316977 642134399 656794453 656919220 462297632 199615733 213836142 691513974 927041348 217434130 320919653 801913543 224236260 958419556 117289978 24532864 332186905 940348590 972104769 110789870 273031057 779138405 408507936 50821712 243863053 674585398 479129556 4151389 347002083 394733950 339204972 637520827 562534268 920380112 709902156 696326537 891139799 217998707 548516524 613586390 213634053 587650017 639741975 398563367 542832811 551393610 996784109 4881397 307130755 464418319 198761697 754474284 758636763 98781255 196550267 687390894 529416980 491665981 265084310 135968462 535139108 628166895 597481187 866393558 764125973 285298321 325729125 123285121 369513092 939534088 390494452 10580097 167436578 749767792 284824250 285139194 528801078 692538775 985825208 916185349 159381530 229177983 245252930 392798254 914844858 308400864 71457151 777158391 637173784 204865699 572291562 584510803 551726538 329925736 302681556 694541611 242348154 834387457 931554015 281479901 839188069 250911989 913668996 877390776 17859037 386983678 347971470 277792385 925843399 651738763 894145181 118418416 854890526 51822399 916982949 296016180 59990126 83542640 901551212 870852203 563838041 779712425 175151119 315777835 444791318 251228968 283038589 256899836 596541677 263686240 314006266 93562332 301372348 426739833 105574814 568676537 819445109 169878219 403382228 748119034 881117598 994143079 296756187 815002103 297863887 373397902 14142536 657027452 385008951 954916919 892245122 370229322 371151640 195525773 754867525 280341398 33859911 620975215 4303648 180869257 437483437 762694895 743892727 101400254 278919624 322033364 392242305 793508550 22743850 913852183 676225227 85592743 578963449 749243241 756962995 728455257 435015534 405761196 83993453 671543368 418526806 81652598 651846402 994684373 740949396 491520657 665358540 917820885 880694429 117627773 378928124 416981776 326967290 931003629 815094804 902217411 283676618 450228550 314891117 355105567 562813501 19479331 133506995 497760199 903867930 829108179 657385571 826638934 837050170 669021657 355415892 191619287 909542666 194763116 69961515 520849995 200602381 781278453 785641957 672789799 172044120 36918675 862680401 16225235 931011861 623505818 118659475 972822828 279311104 665572111 490427811 515767042 813045229 136411182 43131852 637480091 909385536 521047525 541082157 531100974 450709363 123437142 634911035 196305001 146673299 931714905 863275069 635170028 98683076 643525879 84167631 13870284 700925625 168217072 769408608 394874385 188131388 378014262 532432052 927387448 514422444 521037680 72118882 221100977 679692154 892671864 404926038 943345250 329854123 706395869 512924496 769033250 151634777 533012322 870866020 554249791 777572914 115530877 623278969 133273337 264574967 223084505 981304778 485347332 294119934 886918100 135955048 963579146 913279153 189678082 315756725 840610855 398447629 439728552 50244842 924730475 895849508 363630657 994190994 256377435 500050843 298949117 26937613 308145777 200827949 890855485 616277518 214448535 216162086 917021209 808268317 787610032 430354408 60334810 390016790 149266448 363805290 965421184 492173481 151455230 716340147 253148220 846832344 15598393 596600420 279776503 269569147 233131120 630603052 111327178 167528895 496086985 322162513 27457156 101780643 16225627 102137646 238031400 522220409 889899955 118259375 241453419 630783339 801122387 593926614 527803194 102449396 513530927 384762170 487156018 521873507 699534894 839283331 597795366 124465756 907506607 554457839 59527838 121982038 300690177 62913488 373539666 172743453 56628201 80000268 969576370 862827345 937195040 615515548 470363745 174485478 212201427 478779917 394239413 218930339 510074913 236937474 139600442 699557027 514226081 965144495 326442284 292611286 395915481 832407648 929910528 926037121 210488520 213578992 836991451 805597114 793612125 66080082 968430105 187874285 297851901 216443916 104785096 2906202 561214465 567189175 70809642 418610324 510723381 242047105 97323063 339017475 639161435 97355946 482427160 89827683 2906022 175447818 587060141 615641411 838021439 659348106 762341384 731369095 572850116 546635686 846596592 308462567 534756036 996758258 477587295 406926702 412397380 581822866 227656453 249953019 860070461 129265088 46423234 240818883 632453915 648769353 802041391 237807565 797352511 157808656 240589078 497856116 824434046 263442058 468074486 166634729 993908897 468837953 206984832 83155887 127199715 656870482 82167324 56015901 183117942 373397998 6954085 54805215 120715006 716942044 220869545 492113526 756729876 554586613 871344490 993017267 325283524 361858471 832660703 573642816 118967055 667940468 667229044 142267671 639019626 317889904 776833349 830567176 693661246 505669829 414453671 910353720 536723046 203267122 418617248 174699421 470109107 991861128 739265642 736378243 553221227 701941548 469544948 495174154 396949190 536171161 93531488 288796325 718580592 143637723 46038406 89372572 864961034 537676564 73634672 230316683 140145065 298028794 460041948 896865505 461560150 701082455 381632190 377622114 505750668 95968392 786364859 85188006 976060860 892801791 804936878 782530199 10711244 198582209 752810278 393428215 788153748 627518697 677270502 473686744 836637280 775564835 380086629 660082465 882623601 424973106 101019212 586102288 946511484 54015082 687113722 95153075 736614697 234527542 51186435 454860909 644657557 261602963 167386029 71516024 163420112 872286099 498863217 738425181 926348128 484112348 108871296 806627965 910759869 292018727 295359036 685967756 298897107 6306497 737605050 717750288 293344131 828086797 559023431 499323622 364710945 409745663 609934304 309533886 424828151 644082082 869341624 196298906 431166145 276944788 618379958 197892179 808578864 754684037 88043252 915654420 986432871 308546236 471393089 461011933 542948481 377485713 712286112 171153921 212721161 951435764 955354055 441186728 566343807 235084005 668876705 63666254 911777242 788299769 297975756 829471554 501172737 227928028 315039772 119617576 120435025 280970441 828136470 409015160 858213146 897263892 442344822 819628796 27003426 54173089 414335145 851002454 745901344 966114922 864913748 814627703 224935234 36368636 147661003 571174697 71762600 9127674 305939098 626036103 498467558 26906777 706549504 900154496 44224390 819127075 622523247 170490455 216462468 252680052 411568398 881054757 952997072 314847360 895467319 11756630 404382927 487394251 964301817 790324008 254408411 744463855 201355415 689335087 468822974 615713562 480561158 43614164 459902267 14329229 737280883 799233489 484508293 359732766 997885115 612130230 130092230 218732727 546713842 882054760 816341402 403129044 209769181 987287453 653336977 768313353 564171127 712805472 516977328 917613178 784062576 724506515 777096944 702158689 271757993 334121064 6156478 746882956 770588345 285523176 883194746 780939741 946184043 501740652 863383032 778481096 379222078 881317926 967088386 844922840 784803812 222846361 417300435 899465770 115233987 509878557 397251741 293293296 717215095 643372636 491260164 330518255 875829582 165399256 956504226 58671617 43079370 396941411 208355713 273735060 823862307 763829668 650830500 769957162 368215490 725136537 678823038 361979607 858054855 395882256 668534136 724413894 5857157 923202860 621316208 764938420 447232513 753754598 172323637 350433395 793593462 98183562 888577292 70629993 424621523 859956278 334556462 695679758 997845563 707102814 798997831 55439986 119232388 635085643 226555897 254781620 974988217 324106135 267453783 609667724 166703000 218431922 923137386 544127426 439332117 552775776 441091760 924126132 146425301 729765689 578132632 18452436 438848436 677489448 60013063 425319464 436151104 654397677 627190742 483363785 95215163 274313115 505843025 846151524 598100508 975190810 842631353 625605564 156965007 183376550 545124291 731400742 756171249 675034958 548146712 371737867 453946836 135875702 685600723 28517993 861294465 988653653 547915270 248958035 697151089 569854584 689276213 237446509 970672339 942899261 126125528 69492592 175247882 701077849 225973470 676628908 152632620 973852243 37855269 820333441 287193988 538915078 452017411 32770277 781590800 656424739 858736320 735958753 564686083 29533357 780685081 910303252 585964100 978058363 126575807 134819630 336556014 19331769 42124758 657815926 330132430 661914983 827639414 399766853 213429992 440566488 960736046 350956681 730130931 539109429 800585596 849511235 432661976 648321528 177220694 827981833 410628663 431700081 436293284 49110661 653434849 349318725 409783747 234106355 897880415 737286889 831100419 700692391 187812714 13177131 994632490 400470917 708109681 788574634 203736816 86294151 726449174 594973529 44146049 932720443 626313137 847632384 312859134 212183106 303994571 92444347 448068348 365401811 149085348 601224313 4271363 91447605 631309743 592217726 703925520 35130184 901143569 879518433 50135315 494977277 574174245 533005071 677616242 643386073 21126906 545620550 161601668 464527479 290054867 983858715 147738903 680411907 254934438 917614325 633639659 85183423 626653086 686513295 137045045 156525697 334311322 917856890 900004637 158339635 47650731 671967896 533263424 996089682 372303258 281435554 308884782 736183408 849659743 89747363 823970541 238571699 393783211 518359675 890078324 869855827 416656991 436039262 549644081 975302432 105429267 140375122 681552260 35467001 20725648 536496308 873827650 985878102 356250710 176587700 645049906 255657151 962966807 907698644 277345427 440609618 270411578 404698221 328532885 800334145 219346521 743105577 419120091 943885394 910233283 296779146 594066943 75988317 587805691 894081378 239471886 656369362 158820151 303102297 854866696 858081584 66612705 644720747 273756001 989315471 769412122 230700903 379342723 125830167 743822130 518153073 699670858 74450567 42218545 111217280 135373190 690916527 121864274 625966049 973039228 857307381 769087874 441248946 844460646 271439572 455377125 105713768 827029998 117494617 554292050 20419401 42851511 503631269 340586450 716452083 129265108 290012013 480773669 840739027 824416847 304033661 374466876 61063855 745074596 805062704 917091776 324784925 416704067 317798394 265707658 75937801 395762705 459226079 425376553 383453491 945271015 726603769 175045727 213699759 751764242 768033269 485075620 661610851 345792465 597180822 845352610 305741708 7751131 801377073 530635191 697145 193015766 949314608 312594550 143395534 498636513 36595088 632821542 540836739 94250763 21404770 931896385 718069731 668926425 561332813 294712566 119721550 911157444 566269962 967827368 107094391 132729273 704883687 285631086 667711206 7399831 454591045 954612625 871783798 94696628 553010714 655324688 92498392 277954393 959523184 205900319 803480847 693236289 825086948 284323747 84041970 79581982 511478568 8781496 111895214 291630868 743909761 970570795 435544897 135545148 802459721 268544513 710124032 101546275 188119150 116917230 473592082 389123912 846682353 875257823 590012914 905128353 778044265 714337393 21774833 510854679 624076926 937364343 77545137 227652357 418736238 500180600 851274411 558589885 17342858 510725934 314123690 663039747 50427578 78814728 528111950 173222288 955693045 190965928 395201930 294141584 447738058 823998054 159801639 972471332 991469275 525654220 333145663 526263777 390345308 691727385 972821698 457172815 583123608 92031934 247162612 919375980 257322604 87373539 746059245 185591846 195029194 298361571 685972504 826223332 893644600 489836491 592071092 13455614 192379983 853128415 376361814 742006592 849265212 521276694 530419813 353789804 342424897 307867033 202374045 360601269 800991797 873468488 119249805 783937604 150074112 12841013 250012441 523772854 147599649 891149350 705967096 219573660 843373608 676216599 650790710 561815033 695977531 987189430 952164788 557076168 533008533 456511974 155412131 524223604 296461827 55099708 788998669 111017054 185712997 996489605 848563532 503246683 235189811 89586238 377433489 389901363 271384309 966409754 378070622 20479523 58747850 34825600 690844172 721303900 706590946 478736139 460720710 227370882 806144772 980790792 378126476 930265133 22674953 125980923 287777458 395390827 425546591 363932698 336513374 253720124 83777159 816379344 953738381 603114261 819614102 915619644 519696910 558285406 788216760 209408175 122532357 458721012 766578089 286125618 327254378 990569639 884859450 772463614 344805512 89641149 608348370 575962881 2181502 886324333 440334314 285432672 143201985 410534757 359225232 730350319 837786008 425481797 752477157 530050491 665871519 262847778 64131999 70521473 951862853 42629124 107280520 985020724 852421965 498004328 184692221 555799931 975656273 149255358 296738671 547058992 791157050 810216684 799274725 339975394 660170185 54072009 959230329 650494548 704729618 413836195 989783510 522657532 324947964 732372922 584512193 471108228 321997506 518575810 558660493 722673997 974675828 853771877 716789925 212391143 379610999 123274943 28268550 719215771 134104833 21782752 755003841 363253217 684519326 762737486 952531070 411756778 273341102 870802048 730503668 71477527 821432292 118797156 653282674 915690879 2035144 946845145 442204250 902507885 362976822 164517686 789640352 202338528 408595165 65797826 82362703 120334090 212299714 311252537 164804356 65270482 211967418 83953229 939164273 478032722 157902067 17476387 135802587 564910169 829116779 273883858 49203357 605019881 972126071 261329384 598546851 31961018 170087486 355785188 384891376 398295990 679682108 674436541 18268696 454401659 104996288 973300313 903275462 585460444 655742829 530454295 509603896 697371488 337665725 493749830 46169278 307586754 481252985 459096491 135132478 140568175 743305026 780452095 627864755 496239883 447303180 416586351 385973161 184604908 611134622 573924122 847675587 153048733 80039443 824225175 300943158 578487133 399513435 527044204 27943755 455858589 688804283 217117336 294561505 57664902 741908297 979308554 103082984 2340209 462355825 337068583 176633063 390313068 730904434 253434440 17705334 902072508 358107362 334933561 465592005 881722965 528358438 307538620 93430804 758615396 889511675 359062020 472048441 727918790 619341040 501774395 110586141 570151566 651604969 785322492 349614143 213536387 677517982 726002393 957059375 56631455 631088921 591917526 521048340 290920849 428019004 690173932 730953255 67467068 188548409 858815623 612028470 78988086 795398680 187442185 970941218 62821194 361787444 32087621 255397729 245792246 881251774 396170500 6678652 695213806 191986489 913390723 91620242 470711703 810195964 258387443 688939476 131398029 199512755 51926520 870915847 505835805 392824799 569972523 503881221 218048971 234124881 806484632 17182012 886002894 270429619 167810112 372934445 251722127 476322047 320381336 262082286 387081262 528988933 550947337 124107433 235197949 836554474 278621550 560552987 41203203 584565924 282097817 903331605 464403322 786355071 894063566 659617791 829632080 968224922 427580229 718002256 977945002 219428715 815945644 659797783 651977309 636906551 463724708 573610357 573627764 672613531 753467199 630976289 170286253 846931462 98517641 564326115 175276795 118517820 588505084 478288153 979997445 745099220 72260617 560692789 740236710 318352571 634590358 738447164 40415339 606403248 344456571 648040520 101270552 517115845 178977028 48952072 27924259 96962788 776156274 752064315 120363575 508544584 839904890 356817720 960341683 906045440 941893572 347866218 224836393 398510191 830967149 659598796 243485151 841358031 403375493 644335729 822002001 262711209 411625874 851553278 594062509 972219742 613256972 798774062 820045909 733878434 237352927 617724493 332241505 397163259 398833388 884486590 147253530 824305990 81246343 231705718 339846528 608667699 218968826 271071358 41122246 302459588 440261377 131814260 72365520 310235346 349301325 951840010 83216316 209379720 759734785 141632390 556457558 757663718 569250616 352456769 201769378 490730303 434390397 767675944 333003094 481231291 462805841 337494590 663969117 240451286 252339880 17413144 241236053 323843039 450745196 86418527 378457618 57029242 796992505 420172626 57607705 864593694 887423391 820804929 824949285 374376344 848189220 45482771 432411302 880765319 799552319 251364033 555192125 79775453 656944926 81145305 598478146 792074852 878508769 415656956 214285374 597205559 656027164 705952095 973780593 197568068 866415705 793418574 165159245 297769681 169837460 12155045 340473337 996114676 408810685 151963221 136785359 505649434 99788858 165458917 538707678 734215041 263482466 19128814 669780584 592800445 297501698 692327070 628616549 109520439 855710940 830070838 767922431 942419625 678832676 463196556 221077268 188536995 306331905 910822026 769360055 654337802 149291282 738354349 908055215 40350611 427824358 69543814 383871991 627144524 909097090 359071549 717306428 279721236 88720864 968929545 91330146 888073246 140916586 903608249 877461760 620636786 155609219 824389166 54084831 66394988 394854910 300132318 437443966 47266875 642603173 235443539 980408721 624039011 180829107 217227434 106961790 747357756 235992922 428878869 368874463 959727984 92823359 885827161 333587970 541888897 535898361 839819089 680495724 720441921 625958549 691326057 412812626 993690199 745456917 340899107 733207326 303943617 776780524 699805078 929764080 71939149 500688515 115874026 559115546 711716894 172496056 965097437 880997283 587488301 962940250 521955649 253190341 984322246 696043950 726405243 675006832 991519239 348533997 185400838 688954309 587010148 272277187 358256110 449623963 784105766 740627922 749421654 877224701 474140391 314838573 38792178 669971113 598512663 336207837 560499341 750340755 403330426 303454560 770997125 693405280 917983400 429711909 190021194 33453548 334209676 162680081 855140067 743241156 335962086 744740093 594067048 452615596 837653961 473133877 853475721 528806683 652140573 694368762 393948421 699619770 708609054 503200001 394638900 702605801 176287451 401793011 316280190 536766778 401359800 577347307 692191970 194196212 662679276 780055803 863884400 549227153 402913284 693995687 748723919 68936768 636067934 770172008 593181624 358711652 800601519 315246378 470041208 206396691 389524606 754995918 802402930 226106519 5310118 778000041 452710811 499920881 407211992 117360131 902342909 367507025 511905303 694109337 888796980 408738463 258948154 622690588 888022260 393673718 279149 567312304 354064769 13957155 742827184 406337646 229675829 122916906 737181526 868063714 705077757 683090625 101869960 530519437 617116636 120194260 247240128 834412644 328693095 251327487 192243278 333434191 468219976 921978647 402244054 604837291 139325372 99574433 877630928 779190729 713637653 411147609 380966663 288411500 966384696 465004205 943385627 212489295 929041951 36342080 298521599 218743965 797169496 406049127 515215995 885482871 249919620 198102447 245231787 284768626 973492953 903063381 380240766 775849238 957601953 157579468 106483256 603253600 539738041 479556155 389560048 420229696 343888915 272227836 431719699 482727708 878009396 176538399 882176991 919313740 455249334 214034405 315490537 474880667 636157383 965667397 104211607 896584140 33156009 765312618 83252903 555020563 113230640 622370610 524426918 243682968 371505479 339908273 63021178 960409848 119914603 613444268 275461849 572724675 772206894 972816671 463635407 991398399 460436661 39271096 529019196 396536483 895380283 246011737 544338772 770860829 536750732 806451353 802700573 498266061 944683658 770238532 185307380 78568584 407995308 642231511 161885961 350430486 676840826 499000837 565973470 385546163 352289554 752610612 568378571 398291346 477232550 133787136 358765181 807646037 643800828 488474808 137904499 199297431 535193069 410498780 1386112 605341538 502038246 18346917 827279692 479007417 702537322 116677245 620063955 691662608 441544077 385389954 448901092 809923534 375091322 500220424 32211363 842170066 898484463 705004820 292634119 753728235 466131644 53864929 94529629 357835359 44130376 112631903 391065027 48868197 522564364 245127087 120233902 632474795 62489621 174145704 572891236 812364240 456789638 927439445 459711875 323771883 5700116 520588917 830936696 858436098 165621640 216070650 223210761 117988756 497264449 505494411 151071692 989497104 668609967 75553281 923458221 312213083 461507033 90364653 749133676 971974990 988311512 911633 645642268 309414454 289688410 794214627 416799142 912076883 988768288 46326541 532312644 417088089 780021376 328838383 978968070 526427889 909359587 855901980 275869008 391209785 681663304 180833752 854946650 960942912 772626368 977284001 698153135 222690955 719268592 5179299 572615086 91546259 805151122 327929922 210464524 172034373 355429363 309543828 138725969 584678272 316438647 607272420 752035926 816346010 290486289 936509489 547448269 404437980 602134731 553815212 661019065 345218817 127600708 819525438 10615281 430884539 890780717 200143359 506283426 447177262 395376843 802421696 3235274 852513907 792874361 363534978 689297854 288390423 90196770 691282429 213841316 877548185 975580363 880995866 61924602 394421999 735005703 692146553 91943181 570152962 707755393 192786412 143449987 749943341 744921462 433192698 814303954 741565634 512631352 209278045 685518534 417077381 748098732 374444164 121563903 995442735 423078605 894377234 581372784 638992620 596488743 654526813 849946850 233097949 564298844 734182128 292306799 226577815 21942691 12709385 152810759 494386851 787559236 477063708 944391150 702172668 941659677 344621646 64440124 462504596 45440800 50852346 98165084 252482255 685989330 726050096 271568013 629575941 13798606 369302321 698954084 824564229 744030784 226985204 419663688 937303437 358952043 145904037 395515637 441117395 179533859 156274976 171329786 593347839 87787348 382378106 663875131 936055214 239622521 940060793 675933295 381513585 226266661 963232279 921042082 860343884 634827134 240592643 693689781 59734071 188978877 299987999 839172313 67880864 251911343 317642243 461466136 931608039 83720247 937670009 478145228 933857249 181401290 929080831 913535526 269298262 978721521 653468744 326617512 219186819 373848266 397419707 296616363 807873177 454218376 334351346 396460506 312555068 236730607 415771965 570383285 724680452 638938584 385927453 243734800 625055999 578797747 141705673 143501457 983676717 357207808 778857388 665487925 293211139 449364693 652271588 477345739 93426153 758078811 252787397 588802935 182246332 333318481 393379412 998383153 193956173 535173000 703378125 479886916 335495647 56806245 299058974 703494095 25526445 129108322 404078441 965245767 32639330 755293580 407825286 959112179 143460510 121856518 876977534 110576751 260363384 624726405 68393489 800749354 780227831 19352531 128890161 160891623 640656024 735801421 376336517 767987520 902694603 716052069 331230183 122111774 403689078 309378592 904424423 109060418 831436912 240913048 303101509 721919680 435436551 139474555 393845370 514242943 493341051 444260490 518816816 681766074 174379136 295254555 309647301 294131073 436656832 209947544 671167181 107796281 229284951 858020094 908637325 602221080 693636181 718479455 914186881 252550570 987721024 867137120 676382422 940839247 155279759 460342972 214132464 278964410 105980464 759346367 628442086 625496691 315252995 501375435 14998785 297486422 600815452 192483798 268675137 483140114 491317381 625607146 336022744 367204779 478850105 889372324 594846636 924284409 697393963 198186678 673541593 315709223 449332093 642690918 767520557 124890420 648787273 433455884 469705387 617843829 264375580 391967640 62392073 370876433 235830901 404934409 581281585 283593860 244136523 543897079 456853188 306264605 52686212 273172490 953368210 264890239 400911743 424884864 178722595 859452964 435285131 904313003 314473777 979099861 868726893 894189169 162386988 892619315 187208415 721098 984807605 413177138 887598603 87283270 320562467 233030552 392025364 77696901 942963713 18155139 485327501 833047484 49366157 413024992 379419903 504652087 957799739 878152693 173791080 776792017 46357041 701156311 803437495 603103101 610119624 244577781 424160081 96775361 140914961 900741515 895658895 852930358 825067085 537638960 958103102 52315145 222373748 100286537 932975645 487310973 821179056 84827027 43644258 319558759 279207647 425397149 577845814 344273584 218748436 180846667 447661364 662421975 982993941 351450197 98453486 662335597 306217183 8020421 320167784 485935510 580672798 684491389 313163931 98236814 542618294 951936687 343916275 724259874 103698749 609347427 965086418 934134067 957912190 326200564 324701195 977610039 607896823 477633427 787846247 619097016 17360987 981694403 711397411 662505938 892190226 622289627 790902384 929831609 429791668 23933831 796871154 71163953 186192274 181626951 249683266 705058068 955791149 591156207 908044652 729994704 608191933 527771174 78001266 628883174 882197675 367462887 177737159 380812652 178224663 791347714 930057428 335774604 442483539 409469852 70996854 647235843 41646437 105648299 501276286 913843107 238989705 745035899 103396912 608958929 11757997 431785003 449091268 879589127 153858292 30568241 92097257 354177619 388508724 424773074 731377213 210032855 963755127 730612651 703476694 787425351 605650302 581100075 556116156 510171502 181647929 916701974 967749228 477353 571753296 899920131 677966167 720307306 226253213 173271007 681024864 640589238 539486384 495488361 361848930 891657384 851595594 349379507 891011240 8853740 847926754 439669671 924576115 848135236 851082531 681708928 560660344 537725191 246040172 204353357 42075487 259702429 296375886 114052977 181715525 535727108 178601234 195615525 929056315 259461198 428511025 548143861 43217604 701311265 293112281 677158207 853173083 419096885 699540847 938750647 373410283 961258714 91343368 82842342 273408853 236548207 963776494 637041318 44772334 455897324 471557665 291228840 313009150 793239641 915255507 49406958 953937473 915257941 85932011 431410257 865106538 566935184 796116355 438474492 487831452 562105680 235136106 890338031 440000751 172026864 773234339 799713661 318567409 18558301 302020580 673949902 540627746 791271576 86393880 573199966 444278902 297113910 979072478 930614140 726396887 18068963 927286023 278469580 970335137 575732954 842627355 754199493 604790564 550594159 61340629 220117812 47055142 274088325 711729059 220862391 470094942 178480152 158862887 600968003 118209018 646135221 52939960 592740511 617154586 912541693 615512802 729719271 749073490 494099238 410725602 109949193 846436908 15178361 950339627 66416203 793946532 723109589 676106211 706335427 358862250 432754475 783723878 643174110 90547876 91178752 184630466 781093082 298137833 979034350 167115066 192818507 9437511 181392162 32741828 942322586 7383933 978572256 492863371 264407169 847315138 339986427 817219693 10407056 798367804 640188765 145629565 134904491 974467466 447779717 249143170 594684042 266025275 265322500 712986999 979477304 978904405 987841279 495121161 463501205 330156495 505387440 784145180 598694100 649935638 307877093 478203462 485427453 491342988 262473600 894086482 698679148 393273604 533306101 648666559 991425360 537199432 148943 654983231 139107885 734788243 999377963 823739704 423122011 31126296 838429242 634931014 984807812 698425465 258166468 256651703 955190570 295132240 541336480 434692877 979821342 810662569 433892413 308737408 711720458 254156422 466220061 285381498 445738985 49356890 947765076 497781785 682804361 401485967 723347725 895284656 614179344 164886528 126980101 691342918 246530420 250924159 600496398 988646421 582088450 33721168 933577102 568664076 1580248 543723436 637504509 148623950 906647402 243012928 715884651 9605297 959958017 832629419 602305271 527468352 544854839 429271555 490896985 105795258 757736828 852993361 446653017 421763344 962385300 439552784 419301461 828741611 464536343 933285042 830205887 121858851 292408560 781871899 755823773 9698633 210313695 284610852 220112392 625042462 783287031 335361561 622948013 182506778 760684064 446288955 712716623 152774630 828295318 494931264 454118722 475040994 459072360 50054350 605349618 967252384 423670266 522383619 104668762 32698726 413234307 31440624 53109646 519780273 163479184 995827993 960454449 140601517 384850303 939572727 21212415 137002941 99363589 598776950 385342533 461932025 521208233 323287159 910877796 749301931 482648902 139259727 992060754 60762065 869778317 337457734 264266264 338615967 504488576 472379161 970608981 479443962 335340793 994815609 698979769 45391613 976486177 379058826 584560267 92704120 99684601 998384485 859354148 101204076 809266900 281389462 342977138 571332240 565803483 700323998 445298550 932301519 709291144 483064178 56532934 48506568 607641899 544418042 574988555 628345165 352409192 683644051 404561540 441709284 747744695 87265422 72201602 120979529 394197475 23370927 26074090 886023402 147529612 354311854 982452406 878146921 373380005 32467641 54658676 280142366 284976630 850570736 986776517 328619411 856056731 373485288 326590431 30425862 325308291 984565289 559671564 920572138 614594802 471889072 243558185 210972518 94099967 837868654 54313000 195602644 662234647 823139014 909818510 117476419 830112888 955040531 309113846 92050422 83110071 616821536 37058444 804626915 24416570 112212398 236792466 88598581 143984063 290387185 97310430 537854923 551713235 94071059 14469466 86575286 998301020 769386672 179811459 430653631 549554960 630031193 285011691 321630687 442630907 137808913 53857208 285105860 424941821 701877715 242441506 920021842 587495754 769292297 582006520 34881824 470486248 341499670 344873244 604076535 716140596 269935822 285173250 77967959 839914333 381930233 623579445 535982578 498750696 80867795 489271251 648963119 987894314 31155343 914402572 685475496 439787473 528209359 693775014 624531372 862064220 845497390 15915388 72703166 267058846 458419894 778375162 819963156 29070399 246802794 362106019 607209497 712055355 270762430 246042764 801038827 525057889 117795097 746066910 398241245 414887637 518633818 173878359 180274422 1401486 92801872 803587018 621309041 365080025 187352385 304424090 233723963 99836372 656451940 301101635 563415929 425661428 716831847 516773842 700470527 371354751 31189481 522933863 557351385 11032851 748347649 526250426 432542662 292819741 601325237 706765972 668823480 592313955 914221700 794675025 719730773 371456891 909049053 337781349 754942585 346794577 866271141 685892308 305346994 372036261 75214518 379689143 743034563 490513546 689777754 752172990 399771169 716270313 716821972 149405609 199651449 979985916 639739351 815255758 49489192 324842963 841602829 897653911 189119681 988308178 782719633 638159360 433307531 875392561 158282357 121324573 558658560 474124411 225873469 27496082 180734288 479278607 957562210 586392601 395730908 167879074 95235537 770427648 124810683 472676027 712219753 422870952 372542776 603601462 679120769 562050311 348161873 629450946 120830815 292922663 143963706 40404835 364523202 410196901 873411544 986667504 5341528 805859890 449900615 499060630 478356553 665642774 707873365 569710419 620064427 535216040 122154500 132982908 441771019 527722711 272470284 36422455 266817770 627499428 141211478 126732034 272568125 237848485 515967362 471508266 628559085 825738628 676649826 862017365 394718805 797377406 938782333 175253497 948821703 4994533 455178381 643724002 702909191 197531551 913937921 966133680 724221390 952839332 150753916 721424470 255435336 734214787 697238868 712438685 788450967 732449502 910596628 918214047 342682190 591246825 497668346 482594380 125417718 948503279 230689657 570347496 454870156 620699853 493617849 339956619 772928513 603342965 400642066 373051807 771549625 313443693 479875477 332665446 768612877 159178829 86720643 894470258 676057545 588479813 190386643 886597419 727559854 286193300 646844080 910176589 324469233 532481810 599379193 76688743 507434170 430222503 84995008 181015644 342880422 411992273 790261707 582133222 464688198 100834083 184616470 951464206 136651678 716398528 22456399 855573685 337912998 86668260 242448729 783736847 519335884 620414555 719017418 837841699 174579313 27305480 47545964 651385676 743625063 138810976 497489087 904132539 270315385 795643884 501589878 557537266 913790948 227440331 441154806 553658442 791888598 440892717 167626714 286347374 195467766 922811353 57873777 774813662 38243035 955751592 196065342 457919597 503735187 445266183 929343096 800977092 134627614 464238713 162715784 219883229 123544049 331788051 78879117 238694024 777291380 747824639 259287003 965796841 260117380 859130873 331422071 186340344 513750258 126056917 446438557 499782911 403367425 973660407 486256187 776365344 632594412 193241561 658485363 622356685 267389022 517661833 806345501 397352782 909762040 201689384 849451074 123575615 378596046 884150380 575487650 956074766 670057706 973032478 747172911 47625089 58229960 303905181 587811472 683162671 989612504 5489242 673731487 705753602 308129024 340586074 452219883 312268219 71697687 964094647 230505783 175143534 84896619 991079455 832375545 88137217 743063100 279632723 557714652 57104306 975432511 617119658 942628670 290370190 180920859 997479819 654052787 680784379 592921327 434675958 464167296 839139887 115106506 585526268 150763552 502926006 802377266 399949123 735990723 743180528 653546398 653478019 169825226 357432464 368718332 264894731 300014413 136187934 621499692 475587644 465929109 856661366 567003778 566689293 305712802 942736967 8033096 382708102 979976101 197805205 64003898 783829829 466137479 637557560 159531272 617738748 528933729 997115483 99129047 965015792 539528450 109149693 73848000 249420412 999901549 794040435 977413456 554909836 163654999 562783460 290295815 492402467 141115821 467474380 798026713 221595349 221961228 19229050 808913328 452160845 367449415 445422737 355693287 279934408 97447909 764872331 203089360 988871577 516482209 318169649 888714800 501200035 961114344 342080548 971512254 724844002 364955998 168293208 105393831 485589474 184544345 239654291 540289037 501260102 279487077 204133363 889293955 483508547 757731518 407318885 825016467 176537634 952674777 778354990 943684408 781362625 278070747 316912486 639512676 798803475 354994464 473108344 713845627 266877851 287944374 120858788 293651414 469923317 889496287 54144126 856621890 465657422 528067987 201553260 682070654 434905063 286750971 802428715 449166784 406067861 670397431 980080970 79668017 240523588 520793241 629727149 419275628 897352816 61878952 280639243 841988099 871166634 896384030 177556337 457653242 57692953 139598251 743662782 561164362 923895286 658519343 619638053 825221215 915456271 135976003 113087918 848407195 609595461 978920625 249143476 501088465 114402318 685125880 577710696 948406474 622631923 712961737 54114125 86414532 107667731 814074252 443430074 437093357 765916318 858857180 984268635 387638508 600161884 151116039 403696560 773963353 137579300 387064719 294224013 103340864 131556197 105521579 280298392 409634723 139453344 52658886 229780943 446326517 319993579 977749247 791098367 161985695 898154864 986664360 222649678 175791742 312788204 438942152 275248561 199412579 389985584 499855513 394467446 919096722 448735396 486749706 572489404 845883204 556436671 65223485 658113526 897029925 149238416 507903754 28617837 963924694 882003768 579992187 229223355 926679916 144681581 355138894 184088400 721392623 437560569 227716726 366477552 756435932 208756537 752212123 493252402 177235364 879693727 71471765 565757955 434895147 34728241 337145332 188263201 515933257 881070599 77983611 73441953 468711756 458867152 793632161 555050346 329675124 148998734 894745871 776995768 781196150 944670165 659130660 925803929 625464314 14955472 759398004 781961075 656346653 877153085 984197956 518834812 530820080 76720940 268334096 954654017 282107127 219592515 114026502 190481440 336989866 565862461 784848777 844493261 759083767 396549222 559136430 518251985 620129470 756510241 42068930 199617798 774198356 51066978 141830594 254533660 876902913 396964661 426279137 54038552 107741826 580549173 991870726 937678544 112460167 395453717 467888715 108846960 892782134 192598043 736762239 304176375 827788710 945819296 564368549 612639931 618533733 200662417 548090739 318849761 89037299 909598193 295474132 196098790 2737989 763214165 89192550 453844505 823928130 940650086 447586557 811654686 332053065 167476579 72029470 35744108 387594154 613508764 98450053 679126480 782086184 619178232 33145759 457893608 161512061 588479600 690230801 773877417 943658966 933703825 338189103 598525402 308320851 219264766 134538885 859030679 614077833 898814956 856167506 411984590 146710271 782869669 375388168 910445765 802221236 621733893 123666126 855283602 996796311 389884160 100022782 42324385 91187726 559079706 649035687 368568115 203302000 756398317 883767052 286842073 935796107 422213799 956505378 13865469 487065886 906190473 938801942 866243929 352343648 272644969 215783109 588339069 474408056 167329073 774113091 83617101 266376962 208539998 255040853 45378177 62851216 699644801 106457590 414157860 911997735 565000129 40575702 269499158 487789758 409858392 361495254 704381066 155580867 735420178 982359181 937908872 458774933 807144401 369504454 671225452 802677002 47227659 429556992 801523045 985637099 874681162 582777837 664854775 80045172 658964139 587814899 638047610 703923669 597332832 621850030 89840280 190412979 909880878 419099756 390672339 477148327 433134320 22748847 229842172 111709118 538240274 182257839 942042301 776187127 849586710 193647829 119902993 582048456 465842706 975009345 696900038 706439578 445023792 225040710 228658946 864949320 215157038 192231912 968696763 949262500 362711004 547371621 113720381 190255090 116079520 606546345 316452008 48722283 882462965 376096216 456689008 501391036 46267879 341895880 328222683 473473156 517852313 856148100 506382983 987450585 493030847 477764554 605471201 805241284 836689188 96182926 384051886 702016960 859970086 597789813 492895366 152335423 36989493 97965403 334885972 241632805 907277143 27678157 960321752 182727755 778140839 937584016 483536677 998563325 478810321 247897624 616897827 540375421 722755736 823032082 534410254 888731262 257772881 68781274 344018677 376201897 429089637 538482949 348633916 484672539 992791251 388265689 355504922 942684133 325435307 293913040 626067484 474860171 293559444 93672473 492929440 635776646 26782535 236990743 436240219 683869378 452560657 578562528 557077972 775400224 432580949 484710335 233019622 935088885 174856200 720494258 240926274 548277641 713139251 852742124 38765034 515883162 553722997 540937300 203558583 448645846 358657407 127308549 124248789 49680484 381999765 210291148 292726850 301976924 107976723 166362029 51741522 428831306 876332518 225764191 965575982 774577327 82912783 343405003 463628368 343351680 266930468 379873425 721189640 534919077 291706063 698787458 342628346 192569979 334541901 77960231 425156766 392926291 273135343 584814137 260044735 242897649 732606620 906286631 427798013 148285453 647350350 971201171 360445003 260440021 753291408 225478613 42590321 643327849 142236679 576266358 354826123 960755038 351264230 814666166 61370504 827486780 521213048 137742344 700311211 142880512 382780826 830717841 391994382 346953627 849874749 872879788 722926618 593247088 939329513 356191336 946655249 814223322 568404277 824062728 84170116 494661796 671649360 265577602 709882589 32538255 142449787 623209217 999880663 410565583 647111053 796164452 70123008 24409742 437662318 535985596 643216190 934700904 737816988 201169 648548423 666164206 353751977 865627550 226377511 709122851 784430010 349323729 895775166 317651458 34972682 445460556 209454144 17562614 1898597 50523303 286717875 369566559 118818477 310457003 401628276 832158740 386707289 524837592 567762610 889920988 416930801 493830368 722449138 338570484 674666899 572164650 904827017 33298572 482199921 15521872 771984933 608380746 936091985 652290465 454626373 959997381 202650123 137234848 70955452 862018827 1541647 939322755 73301554 722865947 865547740 292534964 484528803 656360300 638658698 873970516 397911006 959044965 551530049 118878387 264250630 435715298 450618560 222181337 479854101 219843254 215096791 196256257 479986260 485395235 387215853 902677272 729034469 56131683 287780475 119036994 218217273 284871459 103322254 940827222 585909146 585267971 991899465 305975389 485772707 224400663 498328673 925256726 430722242 640634985 531441311 409953397 762676413 691436660 863575650 605156384 219990570 268969386 247945242 578159601 389069045 792046576 997260494 982095223 80254686 80335133 432475799 401409396 680446456 534050174 219406627 960316000 901708076 646721621 360643635 56640229 525638324 48637013 985652764 692410977 294623392 611746344 394789450 960102759 845643092 957703401 68598713 17248318 862584840 181659306 571782010 660608864 226045255 844490480 522478388 575121404 284100464 35817778 873640352 47842421 202672440 219188573 10032396 121395426 152703526 383531603 470776281 993451916 534306582 492378727 182187262 151180658 825757367 481988578 953423490 60626632 383185421 1794946 801499141 453679987 828651759 144834294 761751864 148941711 10719370 722769763 296956512 445941737 404761564 961043426 434075351 96674950 410490938 340576767 997276555 806487322 976001482 251706939 640786302 835358610 888495626 640126092 952067140 622802059 348987975 296971480 600830088 204628440 516766759 144017277 850705031 610816255 926679584 522992588 871566483 665675709 981330942 824244361 542755729 298284158 763519329 28382317 800575867 714078437 321608252 623625380 323603936 599407690 222887768 214440784 920436831 940137527 870970574 261818884 610243375 275835627 736859281 542813769 830217626 574883287 3757794 860773916 860245630 150070307 945857754 160765038 801912523 196886314 453719779 542663587 360982023 827890425 503421759 531297300 440164045 720955092 910106240 482428045 986758473 905245618 813131278 262058703 275538366 546937020 838366885 518268943 693148928 482508754 491149524 714979189 673034490 633866758 231683966 428307102 636811050 318535710 229722717 279036955 695973152 750086422 236668026 721561072 816867587 370947740 131983030 493096982 918856203 705251731 517951557 911021305 186739976 638644880 946012974 408309754 433452762 819367520 786141388 141429230 26457334 921029760 851538512 257395101 893466088 725215139 87248700 814710852 882827723 893824560 118136297 73977363 742002387 794579138 471483394 613231280 471955907 116847782 156654855 268157363 367160439 264434784 720253131 90221352 211501148 952755750 217964023 446536208 258279667 162471523 888965 333871327 382156882 903310902 447514181 526290943 245577634 584807408 561134427 249244236 868394402 409697178 283203775 692107671 733652770 874148205 592086715 171837219 552648585 352578135 937556337 946704939 608430416 757446781 490624851 174329946 299431045 592766387 348214185 465102929 431554377 523124230 939842830 558571044 254354514 740617267 767397363 714253789 157710698 751812141 816476955 449094648 584967150 940613019 549685277 349356518 527874383 678015575 465587686 283253386 317584277 784554224 692340532 600199871 250448855 577926441 996534044 413477839 198452420 351594616 353669508 893396477 257081629 774787207 4314538 734859517 167155768 321955255 489054875 854737015 265011327 834510232 509243325 908786823 330817007 277652338 250495814 671004736 565459610 463118528 30291650 522465828 442205989 648330672 979529105 516794029 833363274 815167908 715843430 249473736 850142295 760563123 717764809 308321877 796887982 148070184 182972822 432249000 401647939 309509122 9795452 965767947 394819105 576666483 436096639 497228602 946674405 127032418 313464183 816765413 138528833 285354473 532678799 838669617 165600635 815300055 222517190 397006136 606720235 598137134 45377905 444172932 733696128 431499430 635250359 98856088 955959868 406995753 920799764 821124711 417371827 442531413 56987094 998104283 37436817 463508733 15061155 526580559 904643089 47414184 196223473 139797013 826722182 146472721 935833741 532321010 429807062 322126501 643643669 832313757 465899513 360541448 513869950 259679299 368672895 313244816 397064846 894111750 273520647 193082824 623170658 957567865 239148489 687590383 447530218 911158054 222446605 957424502 148520296 505070088 464010418 188644998 313126389 826402833 33426344 795671928 30782460 360844453 156816758 753717082 358548669 142596381 120519093 225516145 42955 656622918 515241362 442313393 889419151 981744095 237345872 507122759 288588739 933498655 799604164 616888336 468897783 495509804 154285783 839717919 868687887 824415396 911410696 331493947 599853250 762026776 248122343 677040734 309214237 335196556 552688027 476181815 449442815 835145465 601221981 691303593 690372251 959742668 521156859 145174090 664120056 110816100 439916630 588970469 82674036 95221911 610420196 924272632 269213245 182485037 923756847 406523447 570888663 859440228 805507411 404348935 400100761 562942571 973095812 534097668 165815855 416126695 510188934 905325947 514719257 945563760 41229363 224428784 727703083 156198933 853126137 343580314 962198539 176552916 53022041 957622754 182399671 656356131 909925737 793009896 471499516 987791722 863699027 104023806 288747007 299659398 551906772 692277034 480925624 139750728 253638590 54732968 76504946 510192116 752624246 760079206 141744205 742034627 574498166 861025415 33444284 550612065 257889740 677017825 84338696 576990319 29101722 32193407 728513738 389709314 379536788 392215071 415520117 216542754 245435269 225426356 916923338 652933708 98575562 96411877 349080673 73743089 401676245 819536525 393711399 365469685 405803435 199939641 282624986 337087792 32921191 101003949 181244559 813596912 283042741 378387039 49629741 578660982 645757271 178016762 85866224 289028724 545645988 789371101 856381158 750681493 363577348 291883930 107869813 984108277 230850421 556640887 221169363 268384421 600397577 61218800 521598093 854119465 147892838 849712947 251545089 1385209 347940932 392773282 644314595 177027843 244072179 830617173 746342844 291797287 21643986 864836757 765085798 638690746 681956057 346722914 870734993 820281604 123399952 68539374 462934338 447287234 731148053 88327968 940460623 762855844 527847067 224580627 815896292 577029072 185423845 666089876 704642560 435330397 493008975 298275239 435007225 967953881 75409094 162444290 895307252 247519172 116236874 180215440 952885870 178019603 756115059 238794735 791603638 319592366 746325481 199743475 499912560 159152113 324780267 480386081 231466515 133758255 651524041 528876596 373161836 211767338 819235690 36813468 293557017 273267613 151547335 172638458 365077263 468226226 846730350 691433638 400138261 792759180 196014336 682210601 530144838 762418111 176281523 179015363 23585171 669335763 865273296 191960806 144257087 177453252 13508150 593828537 366978913 691607685 956529109 614263190 491925349 581521016 329486388 743659916 194572427 79705847 162864109 659444189 117034343 997677775 903840043 338382209 911092063 871420352 883932210 197207458 904710961 581913342 474424791 837200414 428412778 672978355 376875012 697668104 71430895 888947578 52989494 952274983 937266552 213657318 186823679 679033718 835862544 859330553 376789380 981771682 422007703 363618477 665570303 389962127 144045376 130476399 235847230 764829652 856225555 220737438 50735906 93205818 226540140 7294481 461449250 351044416 954266746 322676110 350929349 303327898 627763905 456701268 634639915 716915630 633716120 910815634 75945349 475260694 855161516 715973613 713380505 475394080 128669563 914823678 469067583 592895313 730743258 707508178 810979558 144186589 294193264 581194856 494151951 392201009 304853817 610094646 520011217 633642858 612774403 301833125 747937364 938929115 858257140 679851408 224324950 992594059 291289346 569914825 470156713 327032756 301012601 488936853 912360627 999158342 357928313 247931435 891453676 670099041 908192374 102438712 562315363 818383839 494671542 553618781 816024378 878664904 213760214 810783920 281794085 934692315 371657030 105595703 44134128 425220364 557600456 789215600 378901238 425844736 237110517 470920908 728485802 950127763 940436664 972067375 729668370 119016786 888916177 299081330 235564102 685202433 165503059 514000609 74916854 503166999 703170854 533709758 300070114 637055293 943064710 621859516 508753503 43458515 732208514 998665604 827900633 893794667 766787966 748751411 458822731 157262668 574551217 603630042 330368200 155700464 680291496 442332925 229212406 306473094 109726401 795461653 313215630 394581873 299407025 58210830 907199710 681410758 245117183 660132041 235232071 910518738 244631430 244205467 670357438 214852755 38032887 770030541 585082703 729325114 261314644 255136026 61729941 340594095 799671670 65740340 77123652 320761356 659026825 186138430 193664928 296565537 467609227 395251283 234909955 605821423 974622416 794310654 101209691 742136109 750437760 602315712 958240681 422379463 614312216 370610318 180669827 797528409 191721957 761573712 651241362 359044792 691065996 263396707 173741333 627801193 312489093 628742424 403124573 334998312 455043739 960252467 555105359 156908131 780856174 558201452 29593317 484071613 620743665 387335665 685367725 624490123 968700396 429599203 431264072 596086874 431769210 557955796 34336492 534758759 248016012 462517071 21072611 475773989 118222693 453795408 408110346 369084603 92164893 51638216 228078419 157733763 342368542 92995355 261068355 644167565 515152042 602111905 779922804 125643034 560833874 174725928 879235092 471382561 217870208 199580272 615588197 836034253 332887279 893485486 275371323 382059516 846058285 522967818 670940289 461636546 453623840 315761440 206224820 49127396 522822270 786030467 352549222 450197086 14518867 595971381 228844732 154993630 670330751 375467825 525561841 538652742 943578677 727973602 171130065 933309229 9922942 415686825 833246527 62055519 74211252 414307930 986855343 963834969 992968967 653873087 523176876 556860110 248968699 129395476 642097748 955041572 420052968 471217033 106269911 85167351 111043961 54642628 713479419 226214038 76309294 80707164 925116315 756844417 497964506 20155487 913376547 777686769 868996901 501936077 916529174 666656848 466673163 378662938 299949448 171348412 685625691 339573936 429347237 282873481 887920696 295548778 578177576 149206972 555742364 932741403 917507812 796434064 781103568 870222341 310893119 180253429 115037430 222242914 898488754 915750924 463926143 801686239 889820234 857038508 967550389 450031388 8297770 633422816 593742642 688437293 893693959 997801319 329361255 598561052 688332714 941338163 478344215 857553764 664771186 177000683 965367769 393063799 642308815 653175912 678819481 549770042 290616264 207731259 471686167 402616964 853760886 266479398 732989542 43236258 195500423 138938783 839959663 848792022 648229820 364086864 960287340 871488979 259205739 402651289 498943085 275419203 860269821 987537677 318793942 170572353 79763569 653671408 491518175 385758688 628281304 968237504 27917075 954110114 65328343 836024233 256118737 293116929 784802344 575460879 828627406 766739433 134397465 693780744 922272913 331798844 772584715 247673055 126813942 215220813 824676340 191880339 63809964 512640869 475047646 648407125 866066871 542324546 579874150 452930574 652507374 495249299 404197693 568538070 397424766 462284669 27048106 656025726 799268197 838489113 308627207 600134151 882095864 738089203 115054912 568952361 71763293 711378061 883913815 887087821 186434578 307206874 833604578 290871955 237993572 36545475 775450251 707494221 135414265 574330789 179505295 478833794 736045383 691614673 318649920 932925420 995005466 649119499 702123651 902793722 395288082 867197964 926921555 13239887 37918498 228237312 447404604 73077825 382068242 501562121 433159392 733651803 285516030 649627834 625562998 190513115 835516374 468805788 911034694 876842293 674118876 757451436 636164910 53823118 426223912 439719387 283877920 267652417 508933415 865767565 713064866 106995038 631512344 612813595 283939404 992096294 988025230 604967505 167592525 79840912 521367025 857141232 187928551 903007176 166036221 410511661 319498223 670806954 480600384 524382512 700855374 691911499 421480352 316585366 361017474 701152625 573600724 484756208 236062237 624648982 390881510 321315138 692793157 944294377 251729335 802120325 664251699 844913356 575181179 450720037 136683700 306201175 399283257 645888643 184944811 15744852 155044684 956209524 114079373 620888897 407810532 710521536 33437411 273945297 222619014 187655076 338472908 517867627 821566088 685990480 313318776 326192809 592456854 597935210 756574382 956707547 966116144 947814282 557659975 338239874 410591273 998597052 239402160 767466709 268841002 458408449 618347628 92258623 867306285 159432398 456379024 278146014 307387138 86003339 128438342 324926726 972884429 856280084 90964554 796943036 966980742 557043516 720031600 798758204 833812343 934070086 517190940 809043316 23445186 241679722 59922888 144914822 210981593 98937686 992936322 574648650 677790468 815040938 391735403 208365257 559637982 31762043 382004537 712595651 464658392 975203281 36656565 969778986 176848309 370913320 574437182 155003301 486507276 605218547 526414661 327918094 444736202 173751060 285120975 658937076 957753773 242288998 336747510 635806746 293574346 62376244 795386984 200007926 652523527 796390078 372228582 361538867 79699106 389919675 203804614 862034735 81715624 336857554 762494066 120716926 628420734 730778911 388384231 805266533 925867868 591879861 752496695 276032096 908648910 873811734 885146631 641982620 213890353 826924733 998289682 26772605 727274812 240452756 395373732 229220634 823243380 224002686 632482335 394384828 974181558 570236366 251521914 276121699 731375025 833961934 143285181 60631617 523626345 178912826 690917766 470131260 922719414 460207042 261073799 513561456 693148611 684980363 956568325 499075499 174975631 585818799 324530267 171903472 27097455 563159736 685228405 401866485 627462026 800996393 664079445 972959652 192340828 413989877 796721042 260598685 458313523 380900614 797028052 206963123 736680373 750387895 458513753 58160747 671226456 917654875 329200243 361371776 778945001 107773620 828558856 881056610 798492934 583661180 919679761 285354930 255644836 980353760 934380059 794128839 445714057 999277823 699377097 449373740 965496274 821587823 26537295 827468831 312864623 830393017 970968313 44279316 537762466 285450200 355892898 257601585 913303940 28070078 539634749 165765839 856168320 819362000 351566416 879652095 192126422 103033189 492225140 138632962 582853657 574173770 959475159 643262672 605602994 963949121 460607417 508992659 819705179 184121213 628448242 808473385 278310308 129251879 965673323 389211301 63137649 492363485 262113440 963589837 674056569 378060589 872356901 617713054 897605065 659040799 701872414 928076740 821091392 377296552 963701701 387421987 137695504 365328952 616578535 360969553 431036739 915145517 432016231 700415001 830064436 196363613 299730106 571172857 618782482 970066065 138496874 47646884 838885216 890636548 49454740 275709826 298210680 230427112 776501609 151913003 580065283 469714913 79201712 812835568 359357826 447618440 399989315 210568530 236804297 715346409 516926349 988470408 37784958 383560453 253125139 765999102 203737246 893322321 91489000 331875281 181356281 328404277 985371702 714789715 500797873 999509903 919096764 705548173 700172991 9600557 871392075 600775096 98358638 614558550 564620104 747283907 531217118 671689538 614502702 134959313 272328322 697805469 303106569 293346232 877132963 721356040 236129531 951301506 194098394 883847064 138656698 715949039 655079578 73827669 837256464 262070258 422664612 509873084 70930778 794932272 941200 281229630 503854858 898993540 840958795 907371967 909141798 65248126 756410259 240592664 319139782 185492703 780270461 836222869 870393497 290888222 965605360 792942711 214415201 447689190 724431143 632440434 718711410 42131350 927293235 296479281 81127223 832137151 537092215 684252878 468886189 347585194 827870762 671784538 779484134 902333136 433556697 75014235 792035464 843850079 249004258 403097672 443048780 814510780 732380409 674738191 594107519 860076795 775420583 752237200 609220740 765042793 31206086 11934752 22343759 82292227 922051078 462842119 449371627 806700028 157833068 257864194 320327926 977455163 110985422 457661121 469151008 487206618 766044504 412374634 573280432 111747240 946943497 635729428 363410686 297030056 226061878 290940749 434345210 681022352 557605383 595749525 839468964 215039051 92845813 335524321 121180305 890488440 162535507 559446809 203122797 964785640 370959298 288446618 617212275 956531235 333923258 250688436 315653111 149808356 654623240 89037100 317776605 503589529 874261066 769152956 558956575 470647524 325529205 766519951 762930506 644848924 738030928 86571461 417049089 583959245 728258294 410504949 983708793 632636468 164148056 166670246 731683836 387315907 492314297 602948052 574814054 826437539 529698352 962034290 625674667 180119597 579844649 276075490 547181647 510435952 696716004 32599166 35682284 504685487 36137717 116182803 529903280 856525024 105847234 172783457 657640668 995291949 185888776 43636380 338447686 961199223 6581847 437637102 619257304 45011406 413497745 226751731 777880078 517115386 515696495 763098171 365821820 135399926 448753916 416566731 624478278 946810735 25258776 503837084 516073383 615996745 566149878 936667163 25080426 350258714 853680798 755674791 555456372 118249133 77447020 951163927 54747704 684571777 537386127 557983025 749951297 881332296 774893963 305815348 744998572 229283944 686354103 573073999 494879403 6660989 916840896 606683175 571201539 900127445 889709092 590778453 624079502 447625970 276964792 396530406 148211130 710882828 87262499 383535833 278932745 750464653 264939104 928543397 465734799 891102611 78718784 518660784 974987639 97882993 220659686 320764889 3956350 406391854 747091273 910770159 434647670 879558660 366203317 663122999 306162885 512294370 402578762 825237994 54757347 474584555 747826812 960477876 891520992 841083381 214819473 193722167 51498203 375704587 77311526 245843334 944043916 890233068 405852587 491350442 818186683 791136393 342175202 404036128 86642886 213037706 816133732 802781785 417262112 367214282 566767132 297219897 562712524 80388055 268900809 424372121 859280102 423182195 81893505 668093638 590285338 226946326 886350377 868275455 875953707 781829737 20626429 542084602 140408942 249152972 559368975 386132319 846701900 1617105 123445439 573550412 374830275 526503614 190078280 924252879 576709862 900824336 805699123 624071279 628526169 396560883 209311970 830142116 408485077 191421130 232772871 773815898 779287466 694641837 623757609 125251955 750878264 214465766 629829414 875967298 998081653 650474355 748349100 62091024 211698538 723033480 639291838 90526362 918220726 766495242 235100469 77401233 944829961 751797268 347050812 805459225 347220394 405510518 924249044 985442378 495001330 737138993 532637006 126590130 774510543 356902908 694732499 613472210 495044674 198935746 300048095 520175260 348147425 319370530 622341058 839799292 426141014 129823726 685760542 468097356 77143773 685098924 782237548 22250205 813696202 493813528 741659255 188696181 377277697 983072672 58145246 278491084 119940732 845647334 250461846 43053326 193958345 569160770 654015591 755169116 158757257 973834558 72082538 266400074 2890995 179229720 924772753 91242338 678287950 156640579 857634591 968322208 295414650 296556774 183402284 740020469 566811240 723969883 318423330 186654661 490135453 198688177 122956355 423956072 45761204 721400875 575395360 547988140 738798297 800708287 990098211 925160785 952821582 523575704 423920902 101534860 815404521 425524629 830309210 923752069 889383828 376703175 564806658 301659609 147071693 903445239 717210037 324732952 770623011 194608157 566507135 949307976 853211839 475441386 32709696 267259232 102983384 360633663 288589099 668116686 130272830 507369652 227797577 82884338 781005520 616963346 707035636 845323168 590071558 961370329 177655900 123644578 139239528 264607163 534919685 458729012 624741396 850480927 70121031 710892934 571552572 565204639 242777037 189532990 458155942 265605258 716999959 5858803 162776106 234025571 487750392 406207155 320489784 710709088 995567896 417986430 108137807 334157548 372065394 822652872 175313799 110592805 326941655 735600379 991777800 720963422 999064682 364595955 256284817 531117214 616625187 738936960 837218546 88869408 50478668 340031463 974226322 157340113 269573639 543705441 518988265 982925526 538878149 767013787 354018567 406408195 271793360 776261685 7188492 140510308 890491842 666898499 944427693 918606776 893584652 362140367 76382134 764855537 153751152 961198420 783646082 35908789 846157448 520165957 738472069 814084064 699359549 138392452 576062403 599059456 823653456 687536363 880316246 372884439 170210260 383695559 274056427 474593245 427998385 734890583 3266629 488846012 865842467 630970450 719006137 30290386 163977530 331434334 69654193 329344946 263139160 975223962 99010602 529390755 407061174 706162197 944848181 611357471 649736158 280557396 137219449 756350550 549273394 405815248 578491823 560231081 149461348 50225013 84059685 496771631 679110652 114856229 465376060 613393203 903534038 486173491 564324330 906510003 540411297 122419177 44172857 726744803 780853345 676948994 878464454 54211496 419911661 433112880 118616131 834736926 254575985 8895127 8231925 272491539 168245742 250084688 563462198 655121545 647749301 558421223 258020340 766194232 508116976 80283102 810770480 180885769 308997401 83921448 697698433 516987804 476786049 312955310 267369871 966276035 300965579 77763278 353346456 286444805 416038254 827448534 432930541 409335068 627081526 71178382 819665014 773165175 122946499 935099563 467860010 772094649 526349576 404202589 158239128 175588152 405268429 110627266 840356962 916056959 292271150 303416432 854224060 260352972 702995483 540652527 515024881 653507474 45572566 858334268 104194782 85425656 854817911 388851784 427126390 286745689 186812523 45323895 804923452 389248195 150028273 823444258 497629388 210169464 216128412 374841621 30095442 652647535 188182228 640241681 29529361 622135763 49965652 803776843 364459997 854066819 106410669 569137131 833989793 767785361 881168578 717381007 257227483 814896067 8857674 976757445 505288219 777829909 169037906 121512340 339968135 225373749 759236024 776532468 985508186 117436166 9435057 205509713 990173025 126713118 370764356 310470668 993732988 950058823 175952076 982260730 55874339 608187137 220486777 819230435 976807134 802413823 385613520 7883780 857679564 181782950 25146407 878812046 644814621 608610705 815019562 296767268 679202968 197270031 663402073 59833953 356969238 420488099 613822599 177076048 160228869 299900547 712888668 209693938 107404006 296337179 498067156 830947772 319984078 625323655 321380031 492455446 594081769 570704156 619246399 343167709 786379251 807122143 625230156 175806945 746750653 327486988 241721651 568646760 176123310 506347921 780919059 457209257 664120639 264841616 304741215 510823762 401021822 154006497 291339615 370680323 376586892 390892685 393286062 469834193 939373343 20175444 252191933 929877700 654036225 757727016 18009423 81863001 408470415 276337840 437230331 991513344 333808186 171602118 711928494 889082014 693490441 726817785 240606502 678086413 220528406 289043468 848654200 82853272 431218444 626120821 556579210 483961984 201591728 804441311 99882649 48703865 519709269 703395752 299046837 950745133 975038822 335878244 333886528 458533048 4608224 938856536 685474931 202290730 360471764 834415359 463283673 317398792 440140778 889793673 5750738 700485580 381263321 805387351 490925074 948959584 695901680 390918016 905639711 806759847 524997009 683060048 782824150 940066805 45893808 47346116 329885414 637344657 369773656 926217742 897422675 949636666 115057446 533258007 572224757 21672095 785376716 335083000 949788150 390246630 960550799 110636672 407147608 308356902 657697994 4112306 398959213 703197164 350796649 871019587 988668765 685944506 895299439 788265248 420802979 96284803 615072112 663935974 591595408 563681841 623098135 673808744 483734471 599088416 480988578 168264749 2568639 579811232 23182945 693526256 874809413 64006006 316321594 978570526 653550583 625018459 341785384 978350939 45093321 337507452 530300599 14147581 711469444 21632248 763153546 963725711 921339458 402797158 682754006 901051728 508648692 309471052 186364644 584955826 405704412 818387113 467522963 360970971 366558227 173317740 545572819 173726503 827581956 684308986 26035755 883032484 913977839 310337708 546427955 353456276 484930919 790697038 842696475 659325423 411884245 790764962 965631011 54217694 522433010 704127707 255595809 670104385 593823825 323938850 435182334 981934634 933774803 842337301 661240889 544501856 338531120 725706307 677800290 713533917 146891381 319817137 116580768 298734928 847742336 879036248 409146668 313456284 315103366 959314596 392036308 453230423 291982478 974998518 588294009 656761164 733820916 458103075 951627409 782171386 128732391 60493812 878358181 735675922 989620714 150744740 397780692 596142076 529084503 250239589 691713615 118254675 312315607 995077083 363998427 497980773 653620203 557714847 43578194 203267252 86285415 104417469 348669986 561069943 116595185 304822070 443429324 117015321 707884422 396983423 549759846 426350009 833801206 480172544 20656410 204988585 836810339 392061847 409054885 348007664 25582278 841566226 904803289 835134920 537042538 670585272 462918939 804092704 902379631 728800449 801889765 181234202 306145352 393637337 357093189 168968590 893155389 552322721 792922716 942652038 186045418 80758318 688767713 889738432 542773438 765699976 107447196 429460783 627747453 585431085 851911915 863002746 567785919 888785547 279693632 118328188 690300015 230384265 4075424 849361346 472357452 871924223 121722405 656538128 947876715 318490937 955226750 194225373 904983219 850176376 436009578 600300242 539441247 13532017 282116672 417234766 484332672 885806540 37174123 578783461 395324281 780995494 693523686 958429148 723485313 941443343 823295940 41107119 465045028 520873357 748292010 449154188 362406083 513450136 699733843 191514581 186800911 449453595 62098699 887735970 678561938 824125177 946768693 515841341 845482534 853031302 587228358 485301412 895732859 974538250 270809031 430074634 430538902 495150914 66646998 692557398 265706060 252827871 715363493 347168930 294368459 710812676 98416762 263903933 736542994 981958604 816390830 548577450 641045108 490518977 743924270 54350367 930344730 687797350 387958781 24109319 464235645 845171631 929450928 151663616 935027183 714198404 53462512 968452318 447992083 706494018 19887356 684266278 155801697 50893113 688062756 523718292 145270180 567861551 733667151 923882901 491638395 903407835 216051062 17665998 196129499 168952683 995248935 285899923 378262411 889804031 477715971 50118000 143600294 99842347 277792831 526131364 458616861 686037881 150882087 593492385 243408947 506207717 611131799 997009806 2620415 146944863 70175360 475916229 244650477 774280780 977009001 171165781 158346813 902390534 626687723 24483457 731025795 622476887 964801844 184567614 69975845 377884162 643546757 99431353 276623840 275251002 372933556 12731343 978669124 222008105 774589099 153967764 680772915 288941419 415566055 416280269 735566950 76402832 461017594 145595765 858022120 29627037 154116617 448696380 838189977 890312587 949114446 755923971 499540396 897034183 2986391 708000609 953643305 221900465 58864325 57501473 56386924 877809437 327058254 441259714 617522596 761476565 538028988 121167606 827696469 602647572 142764588 442648099 892318934 496872460 79266512 66712805 60690900 300177761 620595309 762346122 663677901 8277421 877632222 744210324 393586838 497891066 766610319 407743547 221235926 927692363 57338882 57409256 858960008 507792915 573505614 340159163 448057213 657790651 733915035 497994247 913935320 45113633 548747943 597844688 23147664 889334548 182582340 897583444 356180465 711011289 345999831 506202239 611874843 609753257 228453339 528472181 946135938 126016816 951827036 777363724 94438252 984756752 249268093 692280399 626978934 558747484 891730930 53008636 348064528 999285533 797466502 695808775 37111804 364464081 559541655 709756949 733375187 91784422 756590997 12486146 427830912 87386436 121545095 263755099 108238274 828656064 886060677 621835749 15097774 781463978 973737279 492390676 213152812 250897216 326410868 418733717 203780725 992212536 535316860 830912196 166773659 567097402 90221247 65094966 304110849 388831076 992820284 507452209 22304991 989877445 568742915 548518447 926548671 335834850 822931131 147805791 800401923 116687411 866171421 918704932 869737565 758563239 304328054 743378324 295758420 198912284 996982313 139579642 526565830 648770024 972513323 758575444 859125856 594412883 484397190 392984533 24309288 153082650 816146390 856464740 326298100 94869998 757260495 546463516 523397616 629702131 849756341 26781898 923399708 736102209 297360354 843226482 940835020 504044647 392814659 610524619 97967398 392241891 856764891 6789822 919863719 721774507 549955904 497500138 556784287 965909927 209082393 236863523 649395376 908327476 438967206 283911663 681734483 770859938 886503224 623732744 591907667 526905271 347672244 755572189 816139087 563394091 584058644 779784720 901075004 2715946 181942502 591665913 428922337 230592981 749231819 624875297 525803866 887914177 98525689 176796616 336645014 21309046 526481082 692764001 942497241 524028401 725594347 613300752 34436667 746450210 359058558 989590067 559533094 499261807 476346360 96330966 758448859 675453999 502656243 916842557 660466158 830516016 709260957 222155870 793378758 931167538 574899768 267821412 954926110 127741546 335239064 86670382 203862151 949746432 443423656 234552013 582364900 46771601 417361637 585162505 481577964 942468013 982094817 619157213 787018667 510020698 93515713 943287543 972045825 654318223 900208320 213143865 218041633 315134906 954543786 587796795 583771156 349603387 969014113 618173638 282285364 334083558 585711964 83853914 773880497 193803909 735919651 831513513 2267407 152088148 800929492 281243674 691066278 408756867 979043489 331902791 623384353 720048056 72657744 980215679 802257920 308007050 14708666 16496197 710617366 519158279 824014924 554235086 797710859 770788911 584231817 53881479 465053146 73826422 650342021 839763854 675182932 773085766 551594860 793567540 755559836 199766907 334412793 716519553 904837290 555935973 781010431 471229104 185256392 628179145 96116708 574124462 174245399 699887457 979751201 474064543 934261515 235881303 3794115 841207386 809442539 714740814 723117549 907409896 51186514 391257945 477064788 131453704 503076785 549049730 889498817 262766254 678167498 4744261 616677779 936787840 836087350 448918034 454548794 904014424 938521825 18144462 193313981 362818757 404441481 350373458 69488181 566357385 949848642 376493291 134536016 365527836 122606068 747000792 596725711 32487464 918223067 704532432 187823112 985217035 45584647 222871417 332703076 808729944 564183258 951162866 113504994 391028822 904269197 792522058 25765267 279590271 540924330 284816134 744488732 239587330 727569811 635683999 782682167 28508226 943798266 151785986 889046834 70074965 576746599 871435278 416869998 393449094 857194934 704529177 515101921 846416852 213129878 631020396 406985364 80434289 419349003 395991490 120860966 855155267 656869356 159601101 820108360 483650918 643370853 379627697 717915711 639770791 807092599 273966471 162979430 813909003 221987187 144788956 602177961 938672966 734312835 348163631 409446154 191173701 210501409 190446198 765132831 583889829 873943966 172771993 964233618 946390841 186360988 81063670 56894880 212931719 634121364 687712988 856383643 477508428 54608210 103681808 783606120 280190452 797935732 50654283 238800386 859723298 178054638 76387257 653954037 29048622 878678152 442196347 151960803 513298082 436240990 34048806 988081411 24651965 849142111 365486658 966258589 272076528 547615696 701503693 90460047 865104995 955589318 791741365 724643275 107840625 955607727 825986401 841592790 306517287 171486154 853854761 777779275 535456713 101420202 418183385 358282582 6850894 550262967 337766707 661282106 30507231 851525292 500643945 71412940 307497052 584211738 717451175 277644277 79696087 925900516 759463047 332188211 571194646 930584001 710204314 732548376 499729429 215491262 422849254 514951370 577446274 823506105 547943523 156301954 84883008 913886439 648014461 907396877 39408868 183311182 415145109 862217038 120078395 941626700 608331136 655782586 859400130 616530958 473571334 775272922 379838508 887618330 981296996 733877452 62593504 449814214 718938059 957102531 457849721 480273598 596592863 522317187 762357316 524329090 112000056 449583077 78514373 149994469 654325220 455497817 515645746 714934159 675071203 604465759 533551606 602229628 293208490 243464205 208002096 133265276 221865633 690439820 92624433 248032177 416560293 244302491 44645378 355062547 316160902 590465291 37870556 38052847 403377290 988024641 69580973 46356068 867115240 666080183 415955098 442961125 614758478 411503738 847952247 649409210 582289244 970911661 120752465 855630974 399228455 607771653 961913061 475037346 725636279 203758924 758239270 934263273 19989897 342839007 614813370 375582186 306883085 753070640 748192894 724871058 423678249 997505860 194935294 839309727 728418740 288306485 387888382 34097957 380946172 169866417 733214452 552744461 923259201 330727033 140736906 916134801 648471607 523054563 700637473 191873730 464572808 947564889 973587273 511145218 235881296 641490648 130077514 499278986 27753631 188634738 682665631 883295461 728795131 443137740 624863094 218601843 694215131 685607841 23105329 494969831 597840173 516912701 345170663 448095946 609909200 936605186 351577571 716726774 60649755 193701606 328791588 737287963 281028693 265181171 433055964 588967485 90171706 377843142 614558962 642760756 706855548 357178641 550872960 77865770 676527680 180119322 408999509 184305441 117593245 455524409 382194291 85564523 467823649 901887070 674386066 898760752 923311179 958284168 147464604 150438123 673601554 242952271 790059311 970444013 307089500 993226331 794817566 548780761 178856584 981827306 116817136 597390886 653288677 555164494 675283039 289896865 418797880 41643885 400044507 504968168 65401146 133041216 343255045 687952879 520847640 499505236 795924788 229750143 246637041 60196940 61570035 625639858 802508380 279592796 892346241 109055353 276099295 902257616 241619023 631072278 531382905 625025411 943629958 486329762 750757657 548744808 788326527 3208584 405371940 765199109 840436040 957193992 574792435 415345395 880525094 208760245 227293010 243887967 604326925 895205879 743887875 493740940 204141098 378203018 591064889 339009871 361891930 771774973 678418717 332346770 126544048 500783925 438778445 785927889 835915507 402951655 59613784 593863584 344094493 222071841 208156739 378021666 921290717 813496769 441848583 621298579 335474454 456474364 513809936 777522880 976726622 715036377 423081407 206117002 480941440 951477684 704861162 985594215 828711162 856666556 489042007 904590049 535309440 360088436 350183748 553980437 392925559 334303797 803974114 353928756 984298363 968510123 19783893 232470277 25288921 237650260 633893558 216299361 915084053 771100421 382205073 235420086 22448486 103134052 535076967 917535877 910221109 664221550 957868461 785426661 669204642 957508595 73576908 876779773 225488127 779755029 478935711 721510541 933618002 844712397 438055672 570719078 595670743 729892966 411628826 931706861 435977596 382058240 772604736 817388444 713162340 216018190 398167573 893081473 115964517 597472472 630737723 694349502 201515146 824231418 771725252 672016647 912653457 987968483 179196604 959468327 669667181 981250647 727719325 992258427 350497733 138440686 400085720 651825269 316151924 420529811 918873171 991155482 49466631 288686085 86554086 147758469 509616194 351354969 170957277 46172514 336903835 914479734 756672889 301642867 852961469 202296983 540394351 468696335 914504711 873291981 132574311 447468702 654514443 537944443 88555902 217021470 281019407 723712984 727013060 121017505 637479823 240835184 507456447 53125581 868598457 715564451 709311975 500745306 845107183 961550373 138604328 3166872 457820489 318848380 680837731 201493734 159746832 905675910 680889836 345356348 556326980 309157360 265001485 479122594 723457815 162790591 324820866 248471991 976491376 670304971 819849724 921263403 520449386 312322879 44659358 353338692 61445074 223615259 146607747 816348509 635315372 194492850 900866870 90660451 813850542 52710188 543530296 185468759 231590595 606788357 397455485 291131854 894995081 182498444 390226671 69891188 731450068 463759717 395332842 106892676 252939049 924373512 202100158 120279890 67855171 462343232 666020401 655647425 223775122 702162860 635304698 668879821 682774455 188162113 14974791 481209859 301024010 621093062 218558776 507563268 816183572 761367382 487032417 865486598 963124245 716323298 99412556 716298578 887239551 562196653 155953397 948586183 840870520 599185614 615334220 783016534 355327581 659626161 671047606 54199684 652684090 986948758 909427853 332939499 203769938 699665169 582884507 667457721 850919581 685388168 648801699 997559087 716193093 718155448 784369369 270490403 561972776 701011249 219392868 757628542 418095193 43184085 54542563 788406463 676296351 141711453 108734949 551565175 119338485 267829716 584623727 17230539 115530248 409743642 34594427 503210997 675811772 447455586 373622387 539749315 358180264 628711092 782246842 977943831 964021397 726440556 581525795 967223141 42294274 397503929 92566392 766860088 677467299 943295519 467682292 231946925 824479454 57519605 158772425 609527797 616657228 747430632 243131292 204289496 126577470 316327030 739875332 768996397 485655862 725306484 224645134 147693667 781253993 869978505 897894588 272714748 67360324 325657008 698180737 49044748 663074020 364562106 785375686 636978878 384584092 91442378 414326633 558429135 175882355 357274327 863305529 76031761 783292835 758023469 396084347 895996906 481835036 967418860 985878120 212887762 100363774 24434056 658601644 370727385 764397859 153883975 787056105 699169566 839274387 8246214 980970034 181586265 422089229 842818421 392301968 290980946 231049861 236713238 403512961 643304295 521166496 992688706 396893300 964072458 194872377 866236388 781709390 600656961 21081056 829475515 632245992 582803749 840966486 487183324 785756046 254547299 133421075 285584175 978334337 352095678 914621888 18703853 935110006 511727499 638816445 930341160 159990806 184274739 727564444 14419523 453523580 330084020 551763620 596482934 450155962 960493089 898983503 107803723 303448660 673540125 767699916 882674212 921387714 509215332 748012670 459242674 474532851 657573443 927135610 4584063 579653061 255848219 343916557 752218470 782036878 267431650 945279028 37483285 126884502 299108001 934038307 152881554 582871194 179097847 58391999 338946995 84607563 869707924 240872739 509587364 556276685 584227007 94745887 764978533 469563705 751610321 211514548 8719690 115628315 867285944 449007769 849584249 637917940 616906869 760554425 167754095 516158905 481715870 469433267 893121148 865902162 922355165 610936153 720265794 156060188 563938670 308554545 378956858 542299496 823329445 966654455 362707247 137883641 85155174 520105241 81629120 936510346 117739179 600274746 233096418 750998086 441620226 224180911 619288156 106687822 67394828 464574981 218321226 228843319 688002047 661209721 963352219 300041353 479656997 310636670 392242067 394154049 589545307 939543611 898900041 179599951 127931795 213815306 529429546 159928857 129768786 968963323 978856564 51790070 102956595 991867215 203433660 498699444 164573026 823943421 64911721 54586387 782955553 720049200 616885302 69652296 522964038 55289798 357698740 524892283 657883323 962942419 526483141 530123337 839453693 565516316 61273379 714016322 771151518 18463389 25440215 18997612 706315204 917273603 772440258 963222206 165305767 662765107 640721431 26554278 984001046 143944897 515796703 228933252 694639347 648427386 363041140 709528877 922941106 492149467 548797958 344335208 629756126 57436823 402589465 65116020 254096533 270090772 524470277 896146049 963939591 466119918 308038517 268212018 694236154 703932787 612418536 640159777 750824521 257006886 666038323 272577627 230561888 414558525 299547646 719410144 638412482 170088739 19021890 517166116 665913988 340609270 523865041 457930897 161249231 852067338 195666382 917780227 512290913 429441892 543096369 331370570 260697613 85376575 377548868 762989228 725077814 671237259 695556904 519900256 401698136 97961321 761325137 118091795 876706176 973515696 746078214 976059239 855985870 684681323 635894754 387956592 133752058 755029337 62685526 491036469 291465933 787204972 795639332 541335605 599507619 335058762 874240229 88541407 38265072 611835343 430390661 72878872 857506488 145939593 371755970 361697977 953015828 291603515 854294448 42764815 515765428 179864923 260947511 177363034 829774936 741805203 699338643 610331214 39196502 267254595 254841812 273193108 279751448 919285757 372271964 352800330 555122330 250049288 213426531 435195775 525058288 922879711 65931382 842454456 778375102 928899247 940429044 659078766 955472830 976521436 614841744 264142222 754736958 218238844 102841810 634207223 503824031 245896922 535814294 389197311 341750487 742817269 278768267 63174127 485021680 238466814 663292596 540032130 555304327 598618590 884866283 51240298 449382734 346359981 189334617 176924619 453638026 102295100 421272576 317883070 951960981 979468940 849985329 981113808 639588445 912778069 635273750 953990528 838862051 986826368 29652009 877083588 586304190 39159469 767728315 936445573 198396565 578610606 79638894 835630622 594877608 147128586 942659771 85360097 825438024 969278587 194312302 349825170 178168155 914278512 152079908 758550250 785791705 299468428 644509140 724946965 282138961 20410405 132683843 957081652 87453797 30675654 847846286 88061660 953705033 211613869 488834468 255473558 593325128 809298766 499165898 714461789 310506303 538251726 511852565 312350243 109605408 409261448 428793843 217250124 672888433 935380108 454070435 254005296 811896522 952889883 736320696 510868893 346234715 406019372 669388698 667085140 384319587 889978603 437047812 743883912 248063162 191208244 274859143 598298722 61675080 730753308 866309126 417338495 998193291 406640489 883613240 50325872 847253782 20195605 434917930 376279352 243661836 478870479 433673402 68094418 719669417 352999545 112348445 400601513 138922425 744282539 300483929 88099358 237507103 138670639 464378572 633234438 593608528 795713923 688191651 717855785 14733781 396011610 475692132 378122180 80627149 913700123 747216485 832673032 620538216 309987424 83583058 939567001 483420525 451655545 538784171 817572623 669739445 200228071 368836675 929329016 901692845 375771873 184001218 9087956 257909976 143643090 858725668 76421272 22475083 743087832 536558392 720326188 589580336 426457159 17119011 898209133 164463683 268185636 279195610 370447915 57956952 596935851 119950763 577164716 701922259 144919754 686260405 5541672 772137774 747240099 296698731 905960522 827226231 58500110 208027924 570523573 874610639 293728532 472095822 611227005 174570476 536878709 922944391 424866218 439542424 948029987 79721347 298246841 103632687 215785413 830580185 24876570 587217701 751077685 552293238 682480819 207270014 265509634 616601880 223150427 657236564 522270959 662421459 597850976 635059029 474826866 388249488 150718722 190928451 416705846 80238985 707379189 706997362 849064345 841147599 607349731 280281164 271633711 15575236 197617896 666136016 540136253 42274721 568177684 591525135 386268479 238166769 684082669 195441839 900420962 852121620 749310186 734263912 415833354 138093757 239109113 213527945 481942350 753885045 516378874 299353971 728381303 768617494 596118849 184336413 847155589 881025104 644519448 161109647 630782122 595097639 150649658 27001703 461409740 540715123 37507930 66931031 26656263 698387806 706074266 507265956 328530217 506880234 536374548 92474025 473963061 772280681 930895189 865205330 753453537 691890179 622455004 131571874 974208279 635049779 956051104 636304429 926227831 228087626 627568519 85505694 235920340 955016427 762179312 790920499 493165747 678445965 775689002 567120188 18858191 931896317 920568826 183200415 776592792 344892121 718857497 254080599 509470126 980923157 865305780 339326704 381187435 591264890 810011115 869798669 68338007 473659426 677323602 363684323 84845745 884252414 602251634 592460731 236242413 378521680 693158729 424328819 771029808 966442033 424351942 922519038 423048918 586457612 846821710 479124191 498828269 874482977 441838650 496036530 880121527 851280643 69903191 652097700 716228396 937478170 540686692 465687030 130685302 783030306 352544919 861746814 423885939 762953898 236249881 827728165 41247286 779830678 260712837 228337258 864357509 407632798 565142893 144411357 209560413 207691981 620237269 952305573 868556138 562264322 47600566 997969659 904960144 360014450 646663292 108577453 870686309 578342948 562931849 437628060 670724788 575797876 445003184 760860478 986754043 14450576 150279098 828698652 515765229 81805310 754662116 371292245 419461106 844870932 137995871 573694234 715804066 744526719 135733455 706770480 754254670 131461053 393933517 188063345 533414519 966072482 612021093 838562379 338194516 21523415 53522585 118789183 609493585 641101398 546375644 474528099 742700683 465610992 994901143 156963297 281931860 602607303 372331175 705936246 921565877 840089556 186892509 235729395 404185319 728316770 716269949 959245248 113765593 836757137 12153023 927143508 55078830 232812756 920685394 273724094 386605116 591337075 842541780 674955807 213609357 254140170 218347611 209905709 348091745 780414472 641545967 437486002 629791403 782509873 79816717 777868555 413351952 836376349 728870438 983073962 331076203 224513462 582812445 769905557 727078732 187751614 564603597 779244004 39689076 918319175 590107521 57407302 817685850 155909433 919770746 982286717 956985769 564267983 880926829 951476445 89054144 55505434 770310658 771514577 257955888 555489917 186438742 701451351 916754242 98001967 374140794 1581183 641395055 244993980 55555825 422424815 890571749 312676228 402197558 249920610 181583113 425187387 789686068 37274404 225135343 884454759 875690700 365251480 290044388 319612390 14419794 226310322 696973029 359127141 799152912 995848830 506289189 501168105 147262658 144169623 136441227 136716362 359902745 467750576 547679537 445433011 610810424 785327887 143769574 263367204 237939258 767874317 870281645 246679024 450616234 86231447 55272508 224208959 747143433 250214832 726488446 663728269 477393483 867198701 668064274 388434473 643140442 285277687 594616265 556557495 196296338 708118797 551383595 337227951 786621763 139181695 874374387 77858779 982190131 377490228 453483663 792948189 368826393 732852005 484796577 102845607 229452323 563883999 363101824 232581889 798489201 106456837 652297656 566756102 378420375 703486156 962267270 852659367 484244511 487162494 370913884 207786534 244528389 152979704 683279459 713731229 300524601 261702443 492158964 177924213 685422625 513471134 437115166 60323311 484054292 141431274 937985828 449060255 183347168 866596669 383990524 128961771 532073540 166034648 162723792 231592080 253953911 684562321 593683841 94272286 33158303 33904466 465666847 956588407 938253659 608181144 733755762 539285844 195197498 716618740 761312629 582853056 942061890 799547533 15605461 169245082 213516906 571656349 822624886 233708568 103897119 675941104 565119214 342444351 120190915 345220712 745643272 625081452 596285481 329953403 318926915 238938830 736269339 902726579 354607953 138109929 316371156 160751149 247795864 863729172 924756102 746467355 62445748 27713788 317890262 754502722 207091955 127991839 438580059 982666877 414647767 502236498 631066658 213169208 207068056 348060476 888881709 923694325 534643360 79120856 474623983 162844363 12426253 181557495 792218578 586886881 263296050 355768508 280281265 732729336 599691542 431997470 635091038 776553183 84096755 319134057 861764125 299634940 914538680 480939197 77691175 274205386 514594440 473909389 318292265 506355797 139428921 144152610 306691778 400589760 42082774 486214166 444498440 520527807 411129374 944705241 117245188 347415069 39442690 830249776 779359793 328861752 657976874 533157041 371526401 547754880 282666865 211035207 699714136 710664699 559104869 290832052 66033935 506855620 405662664 15698698 441782898 86569607 962870290 560426289 342827202 824493575 166031340 166922341 748228020 447699609 377721782 490831285 193307889 588365990 107198210 994651781 906941076 783852077 705546518 737349901 945702831 106499902 86551406 649142999 547705030 366559360 899407929 319620421 651238482 600748972 230863063 784431112 294313791 489112079 50461793 498217898 415243630 254490380 985089057 739706886 944420404 252610712 351866901 915896522 128945881 427624380 575699825 346938876 630537498 430666007 824685338 790014066 952822696 927913306 666104875 226112600 311761063 297400265 958353012 4706222 324215344 967374529 304784118 686499528 154814159 134695468 553517672 133992140 75400709 494200334 204010933 327648823 128023751 924019964 517910140 435411289 740609021 449085088 772748175 776344788 52628740 841757239 912702836 576012833 533979181 5827858 80532711 671298570 180116283 593050904 502239574 116121905 237495273 831358787 436520291 633160328 473088098 726127647 144105318 815821783 963882951 563369038 668621801 254448186 945789613 313431814 911443498 24291488 979282332 421694609 227713180 786109005 411747729 833009356 450802022 880681304 788403836 516159400 634778338 995849518 208276931 740409773 298709535 507718925 363246782 248240242 841915744 826400394 623381817 149072166 429447835 576028172 312272373 732897546 902438395 831420750 20294950 886799349 606591583 62739937 107332342 412875983 510722008 263083943 576478721 860286486 576066095 411195225 414672343 806881884 212309340 331672323 481967998 572305094 30020112 158185603 701001710 436793231 315243052 940250125 274998930 703926915 255747400 487434409 733963213 960280964 645685037 781743796 325762419 140858121 132606555 149946459 174839628 876965530 161337988 897528867 168553876 307798357 574941967 521466212 419425662 751372396 254190486 78033097 130955692 665618853 941475432 17751761 984937145 910394328 817859848 469027921 139842479 431712629 107524780 665905392 383752849 419056891 437104831 413417386 92944083 347297666 466221919 636377422 6031836 723448626 996559839 37070080 810704779 79583178 274295110 478769847 687779503 907711258 593819855 819468224 623042446 139819401 64729703 550269241 982598239 465558160 178950963 250934935 763639760 775598908 320445447 427149857 155709312 285563568 77660143 909717362 593500806 741024417 788403882 511903739 70618600 916384216 874694442 920600446 974373669 133131956 391175189 229311124 387421356 112767397 186223687 517574440 172891746 318420402 155160910 998400762 666472481 797797108 283776492 405615134 728738867 216823065 311334041 4837242 737320923 23129058 838429695 295173963 166009292 245638565 871707516 842574240 126436528 805975499 749058979 423166686 879258018 671350099 737976507 719079482 693900980 241977165 260973374 554562114 969745770 249734496 471969884 871473493 733251901 210252870 985915510 936696870 289565210 476442698 775937443 146084925 806744800 4023248 768540718 936639094 764120038 568306126 706866965 515025791 913927538 729500747 985637004 689390174 244618306 930478823 27458168 809776362 14239239 801923411 698654453 808440909 122845158 102872020 449206481 455927176 494615797 749581764 289488910 161377775 406092996 871350289 639034980 549670825 887505361 967491005 452330428 165476913 364010002 381996636 315280054 81815768 360098672 442919065 643964196 709029184 498852934 211769521 678383245 304083938 72575974 986587894 442599595 663434377 527901972 626736205 16095213 446885589 877354633 364434608 365957110 141515962 539588977 121023406 677329948 612770046 201067501 96958694 498653674 926867902 122057106 588173967 805245854 251535081 698128873 310229491 927339179 34752707 20705517 30649840 20060216 362655332 289547152 964418934 44682656 959523383 258736182 208878091 462993649 110297724 389467959 706591818 212685677 68025798 569479522 72934495 788627979 127983485 55117429 354550413 257374198 492996700 626524582 137789352 754801933 534689524 110013981 801354139 644197474 277868584 550416247 817279460 347760315 523358127 336744005 928558611 43912980 441545878 867914891 697242703 857234203 728614843 173627969 363871184 928559027 398508115 675572693 139905894 30819186 895394404 632871080 972259825 468959522 836970828 1008524 818516710 133281859 497591352 852198732 482046161 770407816 576319150 759035172 900910029 467415382 603645188 466382149 150701582 831297608 111274214 767844691 994731607 594533293 427294164 129045734 406965892 793155592 945172385 770432012 715489282 991091599 434660085 225586629 626179154 740231854 976613324 266082438 487317386 938449537 149424629 468574391 779626707 928102749 669799828 375150389 806400748 52027719 785188257 516496337 75624101 697316987 684046439 563043278 746269029 502677479 532491269 406632551 77606821 997616045 62174960 999265607 125940083 3276197 17677935 926356751 407645424 105091032 537907486 217686483 616047826 163245830 390181740 59828637 115104483 944075041 313527837 909969641 946623616 944740304 186017480 529551655 53849370 23386861 677508697 954889021 517273785 145279751 405095313 128332290 299249268 867536353 110467969 344637636 591229690 804496113 229427731 718903235 363233036 114300898 298240641 748101812 479722496 558565138 883109340 442216254 163331136 608512533 582937990 307705728 685770185 650814000 284424120 28504713 77944493 344397022 857702397 88955615 148100497 509375055 474834357 417990393 931068975 975281636 934079635 625294789 401190869 195715764 306149152 814643491 40771557 1209867 196065590 475448935 157376083 598495717 103123589 342481115 393679914 633803127 387486481 411842106 186637831 256858535 347382193 654996791 829735068 588993935 432360594 790880244 824944943 653851902 820013491 827225227 563072024 566849270 533452135 285884809 267013446 943649327 522340054 807762542 283635387 742917523 863600251 604001326 315398924 620022976 848011431 875695027 382034402 932407945 990479869 75291736 627579515 776079221 238290420 434870895 295478825 842014271 127599960 432836541 329731282 43334740 174506698 134594553 840887150 205371480 879484731 440972112 97868429 152367777 271624309 877599460 937048782 339587002 595818898 273779528 152046953 612300514 348604291 190028038 876011686 936023691 227292554 996057881 956399204 578495707 56008128 827936627 309623955 51185198 75705744 898536312 17626554 669945746 803968570 721758849 745368946 781887817 500393297 829562459 411149544 668663627 745704765 907568069 32858975 40417729 303761338 526306037 37059244 430781323 188538455 750542356 686341560 534186683 81548024 432390589 105795330 656354584 747664981 52233090 109111578 724167836 128045177 856755303 570384167 208824310 968080707 357584741 227420514 883462409 699793640 129985000 20225433 950201707 85140079 962928722 990259629 544010983 24638003 913015414 256716820 267420668 399365733 528708125 557157464 801994331 196797320 634407301 963276693 113093996 862175987 323319772 276655359 154395850 985986387 934823881 394467930 18765506 610869030 640585700 352916608 766298841 20931392 557691193 344646111 319634499 331557706 14706634 340790520 559092844 757647422 372137226 7173345 944641395 147105005 985204834 328242116 174930602 493370489 633677231 767094110 70524184 989207259 975456706 826232705 543247351 570164062 202767071 884496018 932863286 838013218 306682687 226468363 766033911 23067546 306666382 831547642 57811218 454913806 868199277 24577153 144078737 710746394 211907569 239549012 900156210 150052653 625200674 149993790 106678504 35893515 314484605 169547164 511505242 600675660 113973363 76455392 146936675 435821530 516120296 200685327 229641872 617708151 541483700 578044228 131653541 465804085 71913509 347818027 449404185 231278332 521131131 469043590 364199829 767072263 267356267 253739948 235673720 641606759 567188637 609520645 622378582 38497919 183831086 463590799 612256116 226379654 977189167 409461084 447507022 657583112 480931107 482587410 568304146 127812197 558910853 360135017 402647842 96013649 40129088 955215025 874611606 828397138 701677621 450985801 564790200 789571653 662979001 784252457 343488646 413276122 456497940 272206681 272914995 207793171 508089091 296947831 940870822 340688073 659578678 120183094 960453113 874513703 421773523 867273177 415117563 851711021 518477553 930334652 540906927 47298350 482983198 817151436 464300491 924217426 997929946 300926729 718382906 884339989 925222681 622632203 907873434 476511942 344160453 886752890 963559359 194293001 676838714 128292757 758882350 766860886 292316617 805846700 356005795 348735095 234664245 227613350 838576267 619954446 507955768 103759740 587780235 891141645 847830527 445636796 713860343 102923835 325122730 403944967 614531419 809804214 430608334 748487571 507567606 941797996 122573042 937287337 121264698 729292448 190396949 640371752 554529102 604408172 981576230 614760192 564734604 413019449 997732235 824699576 455812611 371370056 581776539 303997930 947221749 956533036 490189348 311589057 902124634 722798414 775194597 719466369 765207900 908943720 751425301 568079616 532816345 519307787 407376603 73464613 104825061 701492761 919100627 287183728 645311301 618347851 705538447 595140978 181749236 297703084 283021076 817434960 777023650 105828123 88372569 697486916 357398576 211794894 330286283 781745948 113783605 827763402 398565068 427935929 15234172 170166123 575677999 544282770 722469764 494398179 467536830 561653550 922321150 573782707 149581493 897513645 325292883 706791219 891445572 569992512 395445532 537609744 966609680 733579693 923192744 793592008 377460146 348362700 98520953 104232752 340276022 594296588 206063815 824827887 174818462 598846191 953261563 828409600 777394781 270368649 245827637 692558900 124411613 191379461 485511624 274856365 759696121 775896864 183234744 780100197 122197123 355769260 351924035 531110565 431341759 540656399 455009365 134038158 569079526 537845697 924667922 965619347 750050469 131430353 894405712 410693629 698964635 788588385 760816922 736048998 480292574 115029797 318685486 178633534 386245495 865710825 67575424 86931018 899924705 166953480 170062517 743092255 104774286 15686645 114481065 509868459 421248354 351091894 934822377 914854829 959884342 894988131 161657146 678000952 800805974 678948012 79500560 374843956 756233220 619608913 64980248 495186909 99465971 571548839 752484270 44293442 430702796 637862682 552365159 835344839 3494828 636256933 415937161 414867876 980946084 955756379 86773134 624567907 379844664 908325858 181575589 525502821 392660705 809450995 838321713 534435934 385018763 709354716 358096456 669867477 844415511 420436990 686508341 11441573 800054234 892278094 269363958 545943935 625326620 911099864 842441406 163126630 871820443 114058807 43425652 355247153 930817541 26847007 802982963 883914252 613695617 722487252 957515976 942500087 237488167 498986672 260722743 488710470 255266691 516272545 19803959 990375967 438628374 211893928 546739377 918192639 508185301 867456091 340255300 936500021 756218536 976403043 798295748 695605350 725295852 577149951 15316663 55463687 823692274 785525376 92167895 844473830 666863998 635449803 42641042 916282786 840205640 416190682 901798541 876878126 948627838 267956283 298198813 199166546 408214848 511926927 857414348 499764266 289808675 901384972 210991322 439373733 631519663 121374716 405644730 148048391 999792609 197139260 591952784 83669351 681534378 311694014 841312442 162202418 239216749 927888647 16923204 492197542 860298117 775757745 746887282 651912536 385985725 451292650 567078714 349343663 421594326 281148148 726589127 874930534 491800580 119352995 460494839 89906702 590881905 913608162 391065822 517384585 194989753 597186350 83530049 76177040 559408237 723729689 20477724 614910255 494595728 268175049 349820189 122934596 149009949 552674422 732640550 649992451 832579198 185019375 742815439 676314996 138104854 213049110 73070561 221091059 161467065 34365535 751504604 229383088 315044399 794086741 383266162 204018221 27596469 635404054 778366730 928154563 604900219 561954514 512131390 838797597 40882470 564248655 761889885 708658362 875730000 177912936 997029866 24605551 179745795 939109769 8787738 660583651 658042434 369509429 758998362 802008082 36399745 754989953 783765192 806235595 863480872 140900758 873393845 433129266 704810771 295827506 9752105 99416638 572794900 823800103 279127647 442804284 646728048 829046491 264592708 869727818 882447710 852060359 840411132 484213725 787360908 588288504 429235038 868494652 74860697 596653457 867032179 577946626 679555740 385739079 794974970 345513888 615024540 227523043 22593511 237288408 301713173 653192132 565076960 580060483 549746553 630814554 615534015 268802508 197516973 586158508 447478547 587305779 410616968 426019539 833319582 976135052 930387287 566469757 453150936 106024381 864339036 458338923 479220330 847447043 13858890 590754547 503431861 299798637 490522571 956294526 236353097 162180448 374881786 483998475 571306862 91703825 94153961 800421547 978973854 490883342 542258205 489997315 67253512 700250294 539077901 660411341 937821455 427665340 160452518 379159127 692943049 14267816 977008842 644482050 144600193 17752405 348206796 864029124 174815030 148831092 767818741 621767591 106739482 349254408 55362819 759466312 739306515 98309609 134675877 527990360 72128061 681504577 679126272 112899359 170160741 881361425 472235565 810689268 326366864 256116141 53391032 204108486 503641714 507651132 583160098 223614358 66626040 606938425 901527905 407639290 844734911 889626101 609919323 444740508 253092762 957023762 471872366 917330361 285464335 381338121 462312683 686841251 24271835 374182309 236588694 273339967 665984106 414176902 656788264 375553928 377499231 915004064 740146637 342846730 241534226 939771577 904326311 310023783 242663437 948950766 792637257 818058198 384008591 911930670 270459196 855626399 702947081 473293757 748250749 966436256 605664163 316919219 801878525 927293387 247718072 311014267 810196512 299377318 260902997 573259092 835810111 8667337 34934718 39212499 779956774 587238500 713212394 547635295 518718614 842981302 454359554 150545844 510953924 693521815 303612902 139142753 266029272 406920687 183460519 325987658 842754927 791674940 11015438 954460710 669846554 350584336 125822996 430499842 493419741 452383633 631087464 842688444 820804016 42009080 232919020 125861000 535486722 840339986 158821432 290897519 477133873 808552642 608714006 507386059 390850066 424895869 293289988 692268237 801294704 353043660 897338293 496366583 244520325 453510862 36948624 825009314 246369922 328013747 987540272 438650490 848674317 518595138 260036834 25484028 434586046 640724564 715080234 963890175 796235681 498020694 882483006 781481000 884661431 887776459 368091785 639343476 952207220 988936392 506474794 910603698 92571714 723095159 838363506 479049990 818878461 609520788 5101418 260599400 146648694 450248179 331134282 358124579 504434928 169578488 203615747 306328662 754274982 998375197 580908983 410447222 99444035 80363376 84294715 98715338 95538024 274435858 455142812 583007982 274730281 574350521 690341527 367012945 812527760 274611246 983410975 670177207 677662745 747644624 556585178 565364919 879872821 366046736 249469861 848672317 970493639 492909555 40984588 917785354 833637289 36532115 978969043 301332527 262502184 841975710 270213744 263700886 779347844 133710549 984834957 241540217 738025074 779097231 123930507 253486057 702700442 786858291 37625338 98737992 425240 362464961 473574434 601235663 789026815 447142730 797443454 926482953 224528593 42609523 209988156 86418006 231387144 658772215 877548478 106261865 393827473 170181410 996071707 967969738 62537804 328063830 503026078 581733717 252194445 307244426 399000390 480768954 869960862 704559302 936465221 668003579 124394555 729571752 598537858 59084272 910241300 881266402 483550231 610342086 947972174 730181049 143980499 94010236 538599170 536750216 533699256 169544293 871489725 339049787 896012670 164454056 323751167 282947540 338078991 679827651 427563196 535664874 744119561 48859396 217657054 915681317 810533439 682887183 215330496 881503427 409681208 944387419 153338036 942024214 91682478 938958772 558796415 805135364 540936209 285444538 716595160 708870022 889974274 35113057 732521196 712654633 791384280 156504432 144929501 241752464 760556830 686866434 248478270 896344047 753685011 981830407 377201049 786532498 857903656 611400644 858544617 526716756 396320134 128277071 480249632 792979497 786732166 909077524 570010786 850582420 245978166 478228051 254961608 150336305 891330267 222911135 832917599 715124269 990042217 316894048 826742054 205941192 695195405 921826898 500343379 407812058 952754084 413903108 965368335 233010508 823569985 836185946 663477493 835114650 533400747 82979852 445921943 571637336 848404700 772709669 953566201 544105898 570196867 165303940 498892308 143135946 132530307 979050590 881109589 142973317 594692466 263315386 50745627 751313342 743793179 425406195 202678844 387682794 792410876 513726010 629476736 116056979 728055753 836581394 400352037 623363542 82000871 777543634 276698714 247752164 560801010 593799719 4434372 723262340 58699063 960728463 202208251 540578192 326296122 755724510 572975630 679898227 637389618 912134589 868144123 877141170 958054792 132983078 990967096 179018080 547222876 474931690 115159853 733515431 405608960 870244139 114851255 489615430 249745018 944465634 46347687 144491534 560266758 601808986 429126465 721327716 923906194 957363379 895370430 276475075 854307137 967391584 25722058 219653175 262236905 264292009 448426758 178273250 68576405 899342378 274327175 292514170 427211779 446441298 162421845 995933641 337365030 630671845 720026093 483318572 955154341 259842171 469134784 294793749 576737627 537767678 884060082 37794186 913638101 1102640 282731419 926155171 926209751 511358243 227445193 536613903 65979863 332527039 527901052 637917840 296234112 896694591 72614761 458578298 759733297 562804148 991895096 32013368 686086012 432281472 925078790 455960007 233764519 779321821 471739876 293650233 625820206 548085076 359664214 654534708 694703423 345038406 1031636 209618801 914595900 338068839 646980684 936759613 655507773 484074557 891983518 185711099 436564107 863571365 855028511 948765343 491931430 813631055 441635351 789541172 103097152 399119677 692590659 425364824 547221184 948930120 245146963 118755515 179784641 665281691 909159533 461040548 100303632 258437942 806036648 708320107 374813361 961143660 186921874 604649728 132165210 747210085 875565995 470918499 96279542 257585821 106343656 513375274 192130083 669893731 839343920 642344446 914275508 814747739 238101730 611889437 764269361 56085757 801496910 642633178 934517074 597245459 616572727 499789593 864942984 474814271 862222168 182427860 835198836 209044595 94461659 469538968 585988718 968051830 964304355 145117704 32835071 770675558 599684612 952667993 737294439 463458609 942105285 100295125 770330904 441113114 826607653 686116440 189944632 520329530 322451219 604535254 426728995 128129789 621990389 718083539 190900712 912988577 453068578 922731241 511376839 989410234 129544040 936193350 343796921 643775665 514636935 659500843 460852712 176351552 664778675 19196782 799803186 37487095 834835478 496099833 288936362 298081723 266557771 682418248 852074007 773987906 855243749 851701743 909982580 876864664 908197862 652101394 207755630 653336988 641028424 863930604 406523113 615593091 935479416 167095880 973527676 697971541 625939669 673199627 235918064 48911211 459222326 819698088 789206980 961163255 710619745 355147178 364852652 407437948 352638869 885407278 224955662 418221906 539921153 150972774 431673475 472996388 76154954 9411607 339407196 768813169 244168457 405354523 130217499 765926926 556290379 67559649 184021237 644977058 350444047 151580136 637348951 697165608 986956747 492366663 900315486 365988465 143075048 943098920 591519325 442255775 409481281 827852616 90731355 648436139 272255912 740078457 539731090 881032417 103015010 257509409 18784498 647995743 699219877 534794681 594667163 875654041 863679265 138286158 691664743 674376920 524722036 888159746 186228061 612786102 465050292 227299724 968477503 449451171 786853610 39777460 257517309 750803044 318352017 148510424 363101248 446478990 920442651 585467755 969117920 536498191 560804716 827008624 239874414 974347686 724558429 14099203 408431019 141381734 209054010 770508752 586593039 745427511 105246277 733063066 392907587 269351509 921564465 295978934 758408359 816903119 345381287 522908301 856144589 567227401 737273796 584015390 434076924 154288442 196500121 572353657 298821806 953817839 825178794 489564741 231760402 649742470 997360240 843163962 857066123 47689652 674526423 528198312 534970670 707707648 164681152 920893935 80623432 145566277 308039296 415502597 394341590 440483636 816106592 640944883 523576588 628407760 561884443 97577560 752436943 586258160 100151138 517282788 213226810 78391488 658976091 606255838 31119901 429048128 467387678 310845855 251662969 775626435 50650423 388979733 238583557 453401714 982183719 78651969 972712620 808730823 616497635 92616889 368952077 790381586 818596435 422079783 212804346 210796280 305843156 14591688 761033465 955090158 638975159 689299181 533906886 939665090 786737856 360900477 631718607 773744403 293848487 277578609 125512375 350884052 807516058 820242263 804052435 99708877 695019449 72742865 96061616 614372634 917502617 438683667 693603467 423477162 188979394 757543527 916661719 787940033 846113073 67868332 978704059 761496182 492827607 747198675 216774545 82154550 262243351 272660833 635854697 70416191 383352652 377535473 426872452 887488294 147802945 820604847 205437145 566254674 373800119 588134877 253844627 843943550 722421219 284134482 746984080 650311483 873875180 630127605 676957412 600018027 69715057 757414215 409402196 301566151 73261570 455624919 733068764 484863067 88217250 704745931 799742761 96012549 113763660 756499549 370960160 563635449 761853803 476888156 719727445 545998655 604190560 160376231 393707925 393906739 715970303 552627894 325319261 704006149 624872978 582560529 792439136 188733239 762728149 944927702 638284804 16242978 668808824 911265847 940861413 636466801 739633569 852470266 229703505 850375587 709742823 678066679 242234827 452304781 596304728 499111070 519608457 38344150 76765939 483885166 480029430 863725946 22964015 154964095 855883568 681730888 211529075 876121849 137955979 396496996 302232475 155720603 650289164 87562949 639081594 345428021 543485678 409543096 866888786 71468846 327068961 665661019 933461853 686644222 406676934 687508515 539249736 412586421 816996788 265818966 918940339 343932275 363165686 610716050 882113970 184879342 628588619 353265732 156515407 414272751 172971429 604847410 491082757 705908692 192567978 165057266 79191878 100454928 298186294 992038256 731121143 850692775 964790231 971083372 539093999 809613747 235194960 523594234 844195707 214040801 378984471 606706432 120017885 571217396 740583382 57684411 702162376 192280897 307475181 557723194 864264166 480660530 909406190 34626273 684017490 95330756 791630112 451004648 255480862 880024328 176568062 349924058 20975567 505500581 62947509 400830231 743874524 833921620 268659881 486431826 779075634 403423075 773803760 745822227 993282483 147695923 446715861 331690805 100558514 603212474 287943255 227243625 239511928 348199938 570956967 374880946 812845763 645726888 771987630 716662247 789076546 277843550 302379652 729018165 713051418 371193193 464365306 138197914 808234084 104201507 817724945 88927851 971256748 284185722 42539393 962983887 360308596 325961839 894069043 48031553 709813679 738792089 884657095 559546386 591773254 412080032 191544079 992044004 586984342 691193794 262752402 136852784 896690928 307851089 656707594 93539777 784113432 596140338 495059430 614946615 210385607 369717599 908208073 56640390 366584105 470548838 95455497 999364468 933216864 736580329 473038129 313875742 201114623 185469468 341974655 715025523 754947471 848553546 943511655 539253175 584921869 943990353 615804430 778019330 513306474 81148705 577074895 96741311 471060746 4196928 811232442 690629933 522931270 405630537 989984528 447333601 358368234 378194792 237864648 75095618 454683063 885903840 242791694 91639820 934910178 278256261 822401470 294812366 699837587 763006786 301908973 731364716 713571943 598514581 273189473 161946013 944545007 602550542 380675604 900909677 553490479 274681300 873242293 504705725 841746464 177502495 867306278 118220222 162519342 15955391 357965823 805329274 39523514 13626515 21058058 277939019 601572761 511653651 842148549 189120610 164744851 89489352 841501923 247734337 805318885 181602510 234995403 93081921 388875455 377606232 360017175 436940045 743827911 922902316 657917719 798077221 716813717 905767203 563462988 69687133 210757173 346345387 156239853 398328923 145378984 746368581 81034597 551455260 810226530 652600071 569616594 173419631 888667341 737277722 367915656 752489848 786303429 828842813 441369228 947763759 323635227 958484544 750830362 603657439 279920403 425910666 753206560 459692455 873061349 920204692 971197120 717605628 556490303 758181484 263378386 52392997 908274881 910041651 974826591 607656894 488668544 170980767 681563431 352739382 155416195 966747770 448298524 8813648 34853449 172533281 801708261 202672550 729258050 326825477 537298268 844065057 48820049 619116589 304587280 752569218 749826641 550567347 446498500 201792989 402706060 711539010 380807406 802626585 333844549 233141151 655484985 902112625 460146480 13306397 690208003 148327157 297680629 195781927 382177504 863064074 530187696 863254714 50007317 526998758 909461620 908435176 614898462 219023637 411080131 919950934 380583720 960429559 596495896 620697278 969119895 313647423 182137437 550527342 717684354 367713141 283695221 148567496 156727346 148546165 850811315 632814016 125110183 236370927 516529505 429868641 618530323 318387685 573597499 899525192 934337116 757115695 589833201 871784999 421788062 298049018 634568104 665737028 878506407 64460357 902894714 713066487 397102458 344836194 881182961 107576367 586676173 473028987 340031632 997981166 418502026 922951179 646913098 368143304 145585233 493985889 264353033 869058408 980937973 200659745 904011816 152386572 573254139 464200130 13402618 888409348 920270366 983213328 456933441 612737078 50254541 789469099 129164471 258854045 697200299 249026695 925141384 791597254 680669199 866740075 482878934 238551377 947127170 22446962 262540852 698495862 647268419 733967756 890520364 238028157 78631622 845244670 408634809 961406277 814604080 577586142 425192397 160538302 748205533 879916952 50609357 3157615 893437915 595193708 146696720 107997680 78282604 136861421 855844707 83196017 208773768 567601283 460287879 286066482 416683865 178466282 342077618 482225161 119788732 350674097 488613642 377974239 123086023 209153212 787775277 268780339 522022717 958410947 671247020 316175509 551796764 751394512 621431947 49132844 580775440 587778245 132815811 288152369 403133693 431663828 812852673 847005298 63961209 841270277 689728740 282997456 293003854 755767475 552998658 577759425 427621117 979462415 381798372 561613774 533998646 897959324 177499589 614856470 793653090 837074353 659082199 442756042 46003737 58811898 786719934 895176111 58199724 456855800 476005650 290318751 105834652 815148924 836284386 471059464 547496736 253174576 298065196 726475115 115994532 595783438 462754406 110811358 848248389 977765350 386148088 275490955 659479637 186072797 372763327 838070831 918415069 828582377 612038796 971680156 562461974 305812054 714120355 637870903 32557807 321634116 167136061 172477050 789457803 847421478 722814214 180632691 931578816 599636292 293814687 135431235 32629400 525220410 641599005 600882593 783104467 724171383 730181000 314438997 673985636 425989055 409394013 385020349 934878960 783084714 883445261 996394315 749538898 868441378 565965692 727007492 985806362 901187305 173500802 90474754 163030281 572530193 693379693 542490356 740567958 766694273 826774398 924722329 499882604 240077175 114344807 828952137 661056234 459857409 777958099 203529068 391900577 737443202 404270814 550626048 408284890 731309364 767767449 13207063 716213006 400566688 862290568 709888598 472742763 643458343 404915491 501695608 303590998 404813437 538119512 217412297 517596131 304503080 145148423 706507180 88585823 684082693 694893445 979043862 988615879 492153284 69743130 734230032 816275278 546820967 96637059 512820024 403381723 222606023 582624880 963984704 891529864 733710607 530186503 39518830 253311012 514105151 503846239 771262491 99623090 88166570 196096774 945305908 594807784 732371832 814503548 509045948 189375409 477460773 390675894 465244744 623705260 187223808 299397788 999505537 497153706 146151597 302315402 23444390 716700979 432174244 656797139 5586951 432703490 590373551 696465977 812885131 168216965 349674096 395416951 74713899 681548638 148221400 154534072 983180149 960891620 8609201 556785692 164556042 82896803 989856278 832699706 832532000 75646423 367678198 669590937 300256256 715436277 807390356 725886773 996721545 179627043 125192713 516794113 899363243 901690555 821631937 7883615 223307757 714438348 678078458 352923305 689657576 230924697 225527624 727544236 79714506 532384280 778322708 27577896 291789780 985908083 720279064 796593489 431035612 529147787 864441572 619415633 622114764 90984304 907245149 254618307 616243745 965986282 520913464 573869882 275006829 381337076 79789955 413256120 209848789 756033851 95872797 267935799 169313427 11416739 388533305 136297252 932814965 254410946 716115167 930502110 523603036 345655395 824397419 930634044 135489982 675483397 556132364 680660996 189680933 11742554 950461766 930929525 88249518 559479752 359219825 671837630 569315467 577081067 444335927 233905284 784020865 964973073 39023386 546488672 133104491 667006908 277240300 192678495 259699125 952266788 392438356 689923200 315688929 486455219 509545040 193325114 184302598 123949959 735039406 559142387 864369996 642252275 20362897 936289929 148134513 785886974 860236786 853030349 471420999 524540130 706235933 345299204 579160627 401784462 884797232 442447717 950300336 148413477 725327775 124271261 915183050 343285629 840460467 934745933 963532196 658810529 231783174 925212555 649227506 949510224 551426824 351330653 328365439 551337595 561393021 32496449 999622313 697032906 762269181 647299752 205338080 509838616 629013875 553006710 593228075 501130739 212432031 305018756 686376354 171586333 923389588 307723039 895489013 437685774 714374458 797204870 36341475 896607343 746232269 181909103 964403652 100350112 859485532 816095618 993454848 691998771 605486411 97848029 199708310 506588270 485382097 947049870 905284758 112832717 376763003 754756636 261837223 988094335 816153255 402014975 225342338 283325412 137461258 509818659 851534708 830342933 769787179 809739370 38165216 200910940 404169189 252126246 371927483 868081591 531476969 580791203 803537167 403899993 184329530 126725275 69654392 694575914 564341423 76583872 199223722 702309186 310933620 19918645 391468777 373853298 24589961 566886677 512575375 560516539 356750657 584695275 633854857 36245972 972319685 170644792 78045403 811127720 812875407 673137137 149898776 741516502 190092783 538641150 378792682 87751216 900404361 635603901 163842192 338173500 92098517 472205436 628484699 228544950 873599134 817839874 948077616 905105420 984658308 442598151 226412809 981261280 6139770 824875703 880318324 608425866 548349000 840398643 815556626 970317204 173404426 630697743 847378969 933221692 195998895 963826901 244206035 392803061 849351291 664140673 750676765 346381030 18050693 710895364 606107113 729937257 373699642 727043266 954154172 902469517 380498648 887917075 570249520 482344853 925033972 654583493 925926003 282998135 253895668 326450072 215312839 656127326 14857878 809703617 513943296 185978409 989711720 559679080 737514761 321763305 86458445 619872042 22623839 845050471 897037310 321461399 671656340 24640923 290917510 418304949 313483213 153113654 626361797 282162555 181239621 946526745 474866159 244998487 500488136 561384156 714307594 815697321 954405177 960141896 837664371 378020421 384487436 279755485 71610714 588828405 563444684 338457677 748475713 374816245 230312854 177457151 446416257 562549365 579727516 941813133 376470212 669363995 402693796 409443654 133304204 460557950 214967431 415776941 982238379 307606956 68069554 460351224 673565641 239181477 355271592 59556242 162404834 552717533 52427389 394964633 611668421 680656830 686595421 881305440 670466198 309623076 213767683 514387694 420702284 513697247 864792130 789079678 497212468 307329588 60824192 172214781 919671148 934625884 940487222 881509007 236909417 369300740 550893169 441034507 194768497 808604108 552394324 496489594 418350626 723097544 635367828 997866652 29941737 462511106 525318394 977449059 912547724 976009717 431955685 703462005 218351521 69366804 444321221 68273070 756011028 88710721 831677601 618867612 597887653 22473302 70253458 224556289 685158247 525944480 193329734 77017685 523473731 386532446 92544638 809504322 41996915 428501574 983565968 843469350 406850823 130932481 419473893 821619860 186330979 505786795 227670908 705377235 912168127 703397972 694619750 428279389 611232166 836755585 632193608 811768162 981929080 468707755 729074652 265108291 36844520 338154430 19453808 998417943 943507326 588750748 800487781 563140137 20925461 245117336 40532145 452374647 412864606 383862780 240399710 17859893 207817052 507390339 542533896 718615112 600904422 28874207 992191331 660680652 422244905 386871348 470259379 415929487 376610851 315906459 474900563 781633683 20086825 83803040 868483887 351477648 95559266 33342149 288230473 968889199 37527113 744202493 776108343 598169808 870029102 356750385 942133923 680538501 661936822 420680895 658217674 353857301 417960279 568602101 791078910 637538618 738233565 478704282 444199716 698762851 336308456 82834790 12591671 827164211 342036331 194024326 112041667 215979520 972192047 133009689 681526890 515209045 2320462 153834421 647103843 697796208 995314872 463759074 57791734 871006404 547029681 393893533 119049217 790325112 700101457 612956631 213937526 301011943 520113923 840758516 168633562 40816670 45244422 431945293 149316296 682827618 389328111 486136494 80075628 66344615 357559589 615024600 609100553 684013849 447452516 696453888 315240564 31086743 807264315 454997326 775332758 72526387 954375822 282598496 389769709 605519539 950969876 261227204 208321803 628253459 872549849 789015169 595601174 651991809 408833214 487682447 868677447 548045664 613983220 619229274 451520619 447863494 611801477 923063875 179815781 318858749 861453515 577214495 463627178 55819397 785429751 687374518 602375619 257532177 141808523 891527493 198745550 529027078 98673888 700072445 225124350 469777919 11572385 630619265 114708247 2446411 990764110 658862700 331299059 640797549 227834811 782341065 11340031 337759131 595255182 132160921 495556798 633385792 691366852 489964113 978996805 280454011 586163756 487341657 460040893 317370014 528379626 689111182 608806629 260209327 524688630 259929280 112147342 768656362 497659035 922342453 88942621 361954621 533993464 151911460 113758988 732049610 799931778 690272827 637145192 348087913 783968896 100764954 194232916 124253731 432244622 496521430 783244166 990757560 547176219 975530871 90456005 400423962 513674730 244237689 242346609 985787376 926443925 871830607 299009787 165675028 147000581 64683227 615549288 583018261 742059259 817343992 543925458 860054198 179654795 966253809 409063399 534525549 743178140 819857926 92818792 317755365 545811817 877332718 235315371 222575996 88775426 555138384 135535130 435248326 581551564 596114761 730594226 981510920 467347965 325390825 560557957 746705853 214872353 810107829 346270264 78910741 541257368 189672231 490041734 421575281 779570709 332687657 482765499 455550184 108138528 740983198 374521145 705341894 893749909 380143578 473732854 627658503 711956259 191818532 901209852 909503456 220377551 745255227 714542569 156856119 407672686 925074638 301807724 499628582 411455022 572727299 668829134 496828540 586570765 618308849 616228454 589713723 864312160 239077413 394266148 111389467 667118926 410672929 997722887 428481798 701550163 662096600 512973735 957417114 226684606 771905588 14712236 934202026 541387570 537958545 534960724 715440573 905383209 912988735 781128433 155092110 27347308 995284227 516626793 796857482 863114908 71252630 746439861 791097429 326963117 798474533 712412002 207173701 552848485 471877071 497185299 964407013 412406754 267536682 925263868 717249396 794287377 362725823 114377577 815662180 97999160 629120137 266461749 598798811 807310445 476470138 55028819 203864117 191633436 50340855 210069577 654257792 592475524 792662359 870187952 648251134 604024379 524476775 679319477 558300583 819928230 89901801 689465755 261707428 55110274 294279696 948387639 502061269 509450078 244219653 146570099 980554828 656306974 219982438 968829131 499004112 769048698 683371970 7295955 274187355 263743356 336399390 961640879 898787740 779927046 685932659 55763097 116630134 851320394 257133101 442253406 587684479 582051152 743224237 882679009 94958466 138611059 908012744 36433559 709335550 149145828 231012167 650558218 733751204 952639526 816974181 85961047 561259996 872284304 536966228 496863919 11436609 986966222 463513272 778100441 936570656 529329505 140592938 726824622 667730430 314219290 141569206 494613660 425609743 938608035 194176349 37169444 526915263 709882358 612673172 12793181 384755245 859186915 424131011 271460718 557284267 893701007 378907848 397091607 275398720 293957616 30227569 114580009 246986022 173771602 940848389 938442505 319579724 357138132 391282364 625329457 694863572 338733548 158002754 812297647 463332246 652134111 405401912 66269605 346605980 118322506 545196723 696221895 526712996 623249564 65771963 8970720 503319969 165891225 675410381 750485325 170941242 558715352 565612378 253632896 503951946 56380486 291427910 877400446 648366686 445541794 329585770 188157794 692366906 436228606 380273170 129880792 161865301 435272260 120056959 611007906 457098072 913330863 470511206 152985623 789722786 413717838 278966383 899626911 968574151 279679108 875818423 144819512 2056716 457850763 809891406 217638388 113339629 950379244 300050874 364537721 250619544 177011976 882590578 909563007 741212527 634679954 470592868 972425046 410648970 182890259 463717488 325804125 738720051 914221413 261291755 659446412 825080680 816476729 660518173 292650987 906795612 942701201 5518787 837680153 547176438 982687814 488730253 306130630 926768720 115391107 742072481 460055097 513538617 589017672 989528855 673495498 147990964 498192616 144172410 185956457 392688247 209335947 809003085 253655830 62026349 947511469 28521860 33155942 639601204 511987357 330701575 25750021 553474976 771510271 561069875 487815470 240170038 447491402 525945176 681907509 382911922 95103051 222763580 755640061 388550273 805526689 806490262 185961602 855204936 74218046 657946516 624598353 921515099 554982380 682996053 62125835 975049798 192220614 85741936 784967142 660892744 578886586 497578348 451175723 888105939 522462222 161474374 992765369 434251790 522886616 933599726 141972609 108134995 961776517 310131145 70570760 808036017 399216979 531814704 151579112 825955946 26665430 615355632 675910991 701329014 444022391 330872521 182307198 952487935 671900144 244416495 756526411 436250339 506250961 804675468 361748639 429690422 284326399 592948028 830566137 13574845 839630639 371870095 89434602 125146995 696057199 94373514 776918423 229829128 862760862 66059814 596863290 738661213 209204463 255620816 538578337 895661577 905562986 770052072 691097518 222154455 884355179 933951042 996112597 217069382 336909089 567196327 826504097 252783111 919786768 295386197 803989039 911434627 511044240 918018427 631048881 677811283 647506251 886534590 44915692 979515846 739333827 852456631 921140154 121962078 163252938 868041843 537133449 476388947 821973511 52836337 944582363 144326670 94222968 486515112 321701316 778861743 998773739 293542398 857900399 583545480 312279171 456840658 171630745 727888288 807579961 521704179 441550356 233700402 758641753 746326694 994315078 639163691 125531137 892715556 900764327 144957103 305314981 476274457 354456135 101539476 775038350 374785575 330148421 78867173 298332502 92253025 357091161 235246688 829599853 146582736 70608203 301170937 672812439 595502322 240902521 332311125 634064492 463927093 797930325 310413392 975761879 127445121 954820325 805713271 316496024 406993835 738526018 600861071 691316162 707883011 792715033 441092620 738466621 423835591 965257005 617840795 187164229 103688877 429718227 73100184 697702377 461275741 534613108 703263896 275817869 344147701 175533582 380093665 373591912 907854723 604056500 688744941 817661703 334594702 116382217 89223147 473642440 18139278 514085577 438422078 902949216 938391151 333971265 604050940 749313622 777616403 199779026 825044080 185524869 886383309 105719666 836384664 601142174 679268838 734997546 597818535 447789475 116474651 603623321 467475076 700403566 822057757 863635055 131436106 471907112 863292944 260566515 774858182 729556690 58831884 363541630 619938300 182291647 640808863 777603582 68349347 26506264 848528970 78547060 536405924 509523287 633438975 819894390 300497310 59310284 522732202 178896814 63459941 351954203 401649317 4535128 921500287 984208828 401176385 980216008 333008550 413259642 658332740 985721314 643658824 951236341 660311398 813261216 782836234 498639648 895446739 791255184 238975553 430762947 984590252 195009875 130705783 457023482 90515078 969068832 623404780 531625652 708419049 320016958 530878739 496937781 436667090 776722061 24762384 106964884 439891249 680890878 794283585 800055614 87821932 407599894 43088562 274639217 479241178 781085040 488170919 117291970 412843337 226178104 477914390 738887319 710983545 758782128 695294250 959038894 406484127 22032046 612495041 434317972 542108899 295751964 393948143 732049199 965191906 425169527 297384569 697872437 378788396 566076241 860201051 377941426 225746887 855464656 777712195 878466438 50657962 74963756 466113555 472338917 784763459 190330932 237139811 764419029 520873202 332694474 530463740 410411955 236879499 324846690 621415006 544062382 981862104 53278087 530731067 454954059 544153621 54349399 563868922 605480159 912426354 647246850 70681141 545134104 272228757 972231246 370156603 427714165 785702165 648460310 670406798 964136137 222702336 387824070 197632102 590369980 4869462 837078497 991581997 376976714 305610123 863096188 963652866 244339522 417470217 475029184 463861558 857624520 988925356 904856939 206458577 896458963 139755076 722875216 268352270 342634928 966248214 370789586 595950554 498262397 715051100 149094253 973700697 363282351 747125440 96501294 553619297 705825420 749409765 661618230 872339454 560918450 993788638 713482554 461687788 284908686 274824373 19410438 668544032 19533542 724222694 382072565 288338752 303605584 284268513 755877499 768924710 898810296 4395403 864309148 321482337 5363678 245908925 880383090 96365747 128118741 877151940 598382250 500788628 48266886 75740127 303871495 992585645 911976491 750196677 377313502 251943007 778389716 609471260 257845401 650975290 502799077 244344067 872703028 204394886 560254358 497622921 453523139 124243133 904098674 600325171 436221930 102104334 152776408 415540346 869324899 663073500 302237821 624862282 582372476 171333693 940722152 906664069 910768790 386644348 633474037 330918782 405056935 249582488 637655379 75857791 194296249 381985987 319736070 274543939 608637033 31597283 747358437 85371004 26326377 828367892 681677341 307547214 592538366 364765987 156839852 403001298 442475138 360299541 859096295 584502932 753068771 526206110 799337972 361806102 833668898 325316267 829228625 374613835 890115286 97181913 449783627 925814556 362738342 950334203 844675208 219841767 687456466 883285655 302189182 590484475 193084331 913696106 775761145 333622045 440903191 62470624 429703577 92702981 440159758 7967132 602536529 707141858 55106335 690571254 448963050 374582482 864346348 690088568 563808894 12431467 864690089 439999328 822452733 298993973 957154465 267213346 490447531 8214318 467480753 449967075 41830304 919053124 263355595 533526015 199125831 924265950 852498037 876490371 630002143 262555476 641302599 538587315 512905725 939137650 891480689 286870406 836745992 131696377 313704242 949948453 199414716 747907614 577535842 319975536 742386856 544940810 213432553 448679288 570495152 118795096 577733957 589821958 716622731 549449625 242533385 423498003 284741701 350947283 321445208 300470350 574330815 150544382 808313454 576877721 376710954 822951046 892640280 543092876 883425936 666007756 459263286 850141937 380818763 706523557 229980992 795680070 953383564 849167833 943400126 804581438 630680533 178920101 212954063 347351104 83366783 801746490 830858403 722773991 473523509 951203387 816679937 917958784 63749239 63483971 306847682 360156815 83030296 864747613 128340 238367306 725993921 439746442 578685495 74438172 883234412 371883583 88875651 206150436 792608489 625135332 58933601 777785779 814853468 84211798 944108941 335392722 533194941 903162981 277826523 816924089 522689879 160538711 207187887 940878425 395735881 569679715 819575683 862708180 298357000 145753399 225131365 445470207 459023323 828309107 681686390 98694375 616839262 974473004 502516844 621513033 180264704 890548586 959262225 517015320 13778564 4183978 772665281 128570874 970729092 221330780 645423856 238052812 945825257 602449766 787277730 83016474 894218100 306245279 698088689 360336295 462018105 299374165 853244299 389938923 687361566 93955784 293780530 308374672 579197025 221810604 148276282 15825141 275399183 58858667 95747598 840173995 725120654 482743777 101391787 864964602 247021076 541242462 608307490 732744029 543320109 2212520 947965211 63232002 392906809 682752822 970129229 821078347 47940587 602525430 732082439 868993103 932710347 312810951 583196074 186865241 660329909 359100672 384163117 43408232 129934680 360749031 159736472 333856942 110487736 189499451 418345609 594367250 827208365 412108971 821594546 433053614 981631842 74443613 477187416 757962833 630646486 357431400 91018198 103996413 383213406 433613402 75638040 565902186 46231073 115351218 155164449 842439554 295035291 983738471 750748805 731715555 610823707 496437343 535254767 41289056 728267844 689143801 188728733 310490240 525334416 819310468 262156767 33527293 838344392 212716741 520128923 386252103 62855821 912197493 862900684 45265151 215365075 127643585 642819326 753330044 985407584 97899720 732618196 842860361 577101138 920067873 268502915 802410917 817858966 815534418 774296148 30646529 653936754 942983770 272526885 629453702 921338875 562886184 439753961 267704717 722543008 168634913 351259939 895463972 18262685 3141022 833966191 586167696 126885513 169979499 732220410 302191045 660817865 287728458 721790725 996642032 678413850 599720558 169295206 939107822 396310795 805427200 453556230 729282258 458154112 84349086 762138980 785838947 55207729 377208279 138737168 100200347 923984168 104197808 153286961 7111209 620304967 520049186 134228736 279792880 771385024 11668377 999415627 425664902 953737115 929354102 702500851 502201782 696826163 921310606 448028526 88866302 264767929 366653866 144139589 537236498 602456496 883970565 150237847 117134167 834306671 126589905 70879893 602728809 723883682 182002098 248964356 908082325 898676425 888141889 239623358 49635935 602665400 107431562 527044657 228279294 18163990 830642318 692760030 799918299 34594782 526219714 445904091 159579414 617744608 709845903 474389330 485049345 1262913 690194896 571439872 454789282 53243638 808354647 644813750 306473013 658122062 842667111 526331868 555285160 930379621 661761851 871050985 454668062 812898994 241090686 2464236 964544109 1950074 938489297 820432390 500743584 678908250 802009673 960356590 71691893 83168705 81838831 388536171 322726879 999970931 626509118 685742557 858439813 410718727 724343719 309716661 388139841 289931370 85004816 639781113 403025315 86839130 875818065 896167617 249373292 765226220 779578550 247606716 287928851 790523911 704508032 282330540 68936515 207916775 958756452 838863589 332123 60626331 83223818 135100114 649377517 64110726 774002063 965383281 56669759 223875297 88983043 415745746 947013069 421267256 108321772 509720987 671498437 505185769 260155586 136544647 368913801 571577256 77312113 292077794 579405873 717476350 16548314 176162831 835027718 700977605 658548561 544135170 706935048 833660846 683400480 505957575 749387369 613723323 259815939 383344633 16429328 895885509 609349547 231125835 261805335 431329527 266876731 54832899 665609550 928317009 961281486 964833914 542506422 996206118 929654511 827699869 877359622 477609630 733708062 308379759 752981032 211989813 235539026 288149893 377333949 867347258 839121010 608722568 428595605 423572561 146146779 574570935 73767481 470014193 491253213 762799458 352134241 468352231 63502142 626346096 452024446 574196177 755228341 207444186 225248305 788253092 234597744 891126317 564361938 343104295 363556239 847758348 179949546 888128630 870189222 321959084 917232057 722027391 623134783 736418647 505794481 345437832 671451734 240050410 838887160 262010535 946381787 415283286 749993706 16814153 273386803 729748770 248785301 919560620 90473656 705554919 871337020 70659428 9045812 478672083 819232213 412205786 556473962 482442791 716902795 8126664 101275533 63697593 655614268 28803518 993981895 744857715 852874747 974673568 965605556 707552978 876142223 539814182 879314660 79171943 251643379 630342747 987405404 969163866 697434580 92878111 581594901 394649314 189483286 576326309 800719228 204827086 597273680 148978421 828066545 618274303 768730699 946127211 562954312 795440875 125599366 105293622 230149195 877122844 452159413 622280154 716236341 291410607 594029630 265019823 80118328 826145750 844848314 423609439 766646265 839856470 747049082 295304044 110047503 894147850 977445888 508853415 495949191 351253086 687331201 102928570 448506979 626829012 215545706 600448928 97247254 995185795 282471128 220067111 677269257 826397843 365752862 471362933 823010842 307622338 375921987 288089984 76166424 901958370 249266817 525329301 329902408 636458328 967034056 347280850 614293475 366401951 177993272 987186859 235038357 814239171 778505898 413494632 115239936 282362855 196957736 637343398 757453879 433228991 119724401 663654610 905384771 729775126 188764278 944205489 265546658 43151178 464034528 890368475 899606723 16517067 914486407 910312763 603645323 101757343 360360956 289983377 825703123 727894497 691731200 227551216 905505767 411008317 580477707 864420416 691963144 656136310 188303814 588641213 769387499 744888033 936804241 672827254 309417017 451624679 242827774 433600207 760710157 503175303 771089492 793398783 544178809 732760017 686053901 606318739 440261121 209279852 447671640 476663785 962280221 527815441 609033623 862455222 742898364 146241037 690768866 274653313 916595388 282492867 845794179 191912997 139785331 461489704 555630712 136730195 431236393 617184837 449935349 535241485 371712667 533140665 963734239 515930412 247300474 15552565 446785617 212444380 351349738 511087614 578566171 989089819 645939203 563302510 747484990 61752637 848136788 136936306 575867505 475277163 864872539 93853965 922454687 147959071 12546830 798224340 183410535 766421161 531511125 885387121 690763163 883610285 30728333 106238753 109399489 888818851 213232902 245763125 639966869 26144086 316958342 652506260 927722373 264597350 346452165 733915960 809383220 189410758 89319407 195609773 937428471 487402558 848728869 481356181 757434459 830365674 543491324 580580134 897903005 85427129 175112700 48724394 813184560 604906734 996740898 446965502 449687099 837160355 578492510 199694099 673553432 414888769 939490070 543065713 830284503 886442762 852509345 112133807 869473977 851649680 903491277 945567996 463819701 488555578 244769370 639292569 577912822 627791302 760052605 201522525 746453082 344985793 309433438 475400752 701654261 817297169 529410970 197475728 502482828 509227372 315504321 953197583 239400987 65195486 661496537 471707346 856929615 845979207 815701209 976189460 680690445 794451163 3515951 437245345 826927849 454860448 292615995 712228187 567797424 209431539 946137042 767580601 181549279 773418243 373449147 843436099 728925481 324587093 421350709 116013591 264991476 889278270 934678896 624884839 993739228 342855276 725541647 134006521 31145519 864197726 962762924 782657189 453842288 923078119 814968148 679568859 402072277 573644975 793218823 513355547 590240713 216499634 367138105 352500090 834144362 933068223 642384212 144130851 681716236 931461114 606601012 488526292 40464308 347102298 729728425 16907101 973423773 992698411 461903097 195102757 923879095 823228558 544040283 288161701 717138723 882908916 22718332 236713194 676382392 554504615 332330750 811696407 681466497 8553026 810562804 646786017 728673853 788299315 916164712 795490833 453166814 370364736 583833302 282349062 257394954 804612607 522539182 962275376 353850781 198717020 793181653 518498710 569821733 231600151 325194788 656643665 141066597 370024259 543533032 753440271 308868050 783091913 334657120 790753937 216490521 518892771 890436675 11904557 92528023 723165089 922829367 745727052 331257055 429343591 329450843 718106093 890081336 775290733 428513214 105727520 804337693 853295678 37509349 249015948 841961915 327634489 80858697 372580331 189424502 531553299 686694871 297557128 97099108 40739667 650081390 470394568 840125904 986714325 846746212 366047134 940465593 93899592 374871554 101299988 187807568 117540272 364952067 536987337 43725438 532285924 14518809 175732846 936007515 688130321 197138280 740601416 954792632 184348725 152173833 856226225 576311958 115973285 812053641 399874967 393114285 108985991 160091751 386039548 327192294 292481369 291541657 41274740 549335521 227005544 909864200 151472554 517118832 8166746 411215887 459057627 594647322 897194149 715037952 891001433 782811801 268073493 507351711 875504649 662007388 186764618 489711013 467831014 729762822 344392247 830802750 207140988 611214573 55031205 943397259 705035373 917561500 9144750 318409761 645181168 552591185 411317314 718041737 280777549 384232064 124096933 555900094 555087458 334574414 351805167 325754290 17355553 247908630 337186442 175788488 905605903 804896744 732769976 380333915 864064199 572321541 60229643 783696182 886873717 427851620 394565099 576843035 860656220 542130225 623924500 37075005 608006992 998921544 16325141 603161029 102643517 943542718 890355665 346411856 724444062 402366553 708770818 729730927 639115270 471093779 452226993 275142181 593230491 921616027 255173567 931816301 680152213 260061907 670408032 541276082 4465860 578363219 528473243 871379029 704625672 787583205 373508299 783794731 759879638 38206215 80197921 104501756 988910266 282507372 845867295 228172549 72947407 157438843 853069598 649814391 385294921 110372558 753830089 297478390 491162091 473501109 262722976 353489178 811875217 468744881 164872566 631867889 503778472 968877049 365437684 637267579 434580145 603227640 985859092 131415853 632668098 464639948 261175974 782785647 586406660 400030665 34629838 383291166 239511862 421073396 651289988 730650890 822112040 293300361 990479122 732384633 354323521 555258486 26522010 655991203 598766842 546802653 588971406 272926515 704923489 367604886 978295350 61820108 692363671 529091242 721508910 8772738 560880210 837741273 896530404 642282077 352491356 299950357 278778398 872355546 224737810 565862661 604223091 16592233 579148773 33234563 869076941 682158832 324273885 11320862 186882285 627291718 980468753 981984665 421207271 158361273 398449712 640263274 91958689 567995529 417063419 374136892 703794777 11736426 835280584 920035693 199215132 312173318 672109313 975449489 743603280 889196409 962812579 861575149 805853995 492598227 415261120 292760573 534171705 303153818 586148605 126455278 929640154 192284741 734157332 14115108 606932673 624562114 213407827 497719990 589411958 292172016 792055068 819162093 441014229 716657446 738397795 783001289 127300237 783209387 96858931 385937020 130779298 37358651 174202921 404311532 571853548 837527944 666821111 758175797 488880534 301967799 687836643 181691173 82020511 933557471 247059013 842922943 270851676 658263950 92982028 481636537 499807220 183485763 894068282 169441533 106953187 421949685 627346020 195931179 134407288 608655242 173106483 117872918 494049366 754190433 948100069 97494083 136741111 925259209 127731660 707983469 623379748 682300295 387333838 44006147 90389886 350949204 573388771 738849448 570226937 102355805 665567643 706089395 755126107 531310786 544715925 643077293 206759362 616414231 800007177 630956757 579369243 146527205 216760895 355623583 387264683 178755370 130819862 206221360 583368842 318276565 222283390 913018852 825798179 709953867 187053310 543891145 900099766 768284389 986326063 642248993 943089111 8420463 726427966 678406372 562115052 220365995 239463790 498442811 884583602 206203852 538069652 441295878 782177208 950953468 619237273 467859032 784622306 654868438 386096892 558797045 186371303 558176492 229844813 580258267 371952084 225523778 534891955 974038966 388494216 61742801 66585703 639072874 985544758 963666949 888676151 812097933 979696869 671273024 744862724 272825065 562339827 417313109 611965764 692432127 943740814 683291917 508639873 338765695 273894458 763814309 101116631 219195346 264209230 939159630 949743994 631378320 615185270 974276012 470626350 477453578 554783538 957076056 812696013 818886081 910600022 502216030 344836293 480902380 515964296 772076223 251689367 279263735 248852678 588376560 470640985 30332670 21346781 689385050 86470709 98161494 811859955 303726040 65363944 800675333 758840573 154374460 74195524 143108677 540910153 152933066 120440238 240627205 903343862 247877306 35081120 367599208 205816439 617039802 968560936 952326723 990014741 453924203 542530920 125984931 322335338 58095840 625368084 566854469 893678566 520194338 647044599 929051421 377306957 820353454 921400686 598019792 282696502 598472948 937535211 650779449 466992014 116478682 768448883 456521192 388331539 602898232 41210657 569203102 816749274 502365786 929461665 777329362 584198346 581919617 369984181 812831791 205300767 661564258 384261812 993221396 336309991 514193061 130218246 492231186 826499464 208008807 409547945 318746482 559153464 259213496 111811759 52079021 138516612 893311262 596485822 83576817 786438602 794862865 415646606 477891235 438839742 855002237 56655215 858541015 246179305 921284163 839373504 300406234 737593125 820157623 857660025 360876457 915858466 748535331 556008610 428331383 411500005 405141315 872890585 968581419 783171140 846172616 803814609 582495455 187434091 561817301 266614989 58474338 87723865 536404357 464452649 156015799 536934500 331431779 482213842 179216532 431153585 287911664 656788680 27109092 849792701 121324576 220814499 119643718 732269783 995363037 371226635 198511755 125535651 189327747 968377151 956584251 201850776 450645346 890238095 17941521 442459779 522390848 894126306 144015739 357380610 945100244 809346609 70824731 826703882 369162316 390675978 152247368 553618274 139731656 945969166 582835854 652711462 282835164 990138483 833190441 16497732 208682514 330312322 530153102 781314 383834726 269734170 688666851 446453366 39233224 802215211 360366722 485121548 642304414 490848828 673072506 676719365 168794943 43611367 822317326 569546738 534747768 562461527 269279284 120072764 866461451 643072464 596299286 419941024 874782764 480829736 607672469 643211691 376117506 976648518 574226113 878854210 496841004 689623978 20406626 16554525 611175737 468597221 55445362 347131463 98081070 658242076 346760353 920582560 356216581 691123593 785240528 283585883 98992424 267100410 293956502 350113152 852793594 162308944 188185790 837635435 466714446 623344642 412193991 68632651 448989934 367627671 969537635 219584932 313964309 698719791 514927608 307438542 374376437 524961787 189176354 268009587 615881523 750804929 186875951 872171285 6914150 446174041 501307041 698416517 575384987 803635250 986354608 289551469 441548244 510805966 309213638 297089480 410504068 295379009 197422593 187916132 156415253 527345846 340255924 805234535 591710562 550805994 43950566 14419143 993731645 334333103 114130385 788345296 393710314 844552299 715517284 6485154 996101282 732974998 691474114 442000817 195267857 332091455 331488705 36507715 452115161 815043720 798286956 513916662 737704461 114241318 166340994 813214775 959484086 495256546 271284980 410066635 190227282 657621530 102913642 645614154 607756624 373665600 425510335 510433695 416230805 603950426 371812737 410216842 976426746 40996736 769284978 349129502 97076939 924867682 928996105 544498755 893827913 989502656 944724978 361741365 731806249 613065199 426444426 570844163 419140884 524567643 129376868 259305233 306979365 609990143 456324294 415278486 95608942 680579822 789862188 961959711 237772403 726736334 411637188 949031178 466082989 679407192 941132273 89570572 680387592 528367066 40269001 358630828 404571749 154026421 591605143 826127045 416143641 228114910 752517209 920459272 451358060 200804193 44531266 768615799 878243611 141092058 921691194 417309675 724319447 450460410 509563737 127944592 941307076 180248328 569600368 213685860 406344955 781289821 375811456 60440251 959960584 507918823 94741568 678391742 534510444 992438951 853760667 981986279 205987356 305672755 972482608 645167494 731165952 800492596 310498257 783411007 64687989 448586729 636443140 618615946 840944076 952003235 161122181 188787762 396912072 686915655 948218818 476696279 610036004 944491471 784758621 614830444 891168267 996261321 381184174 339102649 868019614 984013014 26191423 308753625 646228594 518991916 480401230 191898557 971040527 164464149 461694030 902241192 767345266 592050798 651447654 462269106 790661259 950469417 46071024 866318917 996575424 65142987 50186747 953005475 668260969 110197998 376470730 780335709 457693010 692760768 64090963 389329629 914536508 303201155 920615873 442737374 813693787 710377739 717837043 82570734 875085017 751027779 758056698 62900723 137293138 936224168 777320351 25678755 496838230 766950348 127247578 847290634 761409259 213737429 463577948 958225416 674257416 573177339 7096070 380114129 673366299 466191373 35261296 963262571 259113092 95406061 274944611 947546931 39765528 362367503 971278943 817281880 978732447 75107326 32384790 954690399 391733077 978095320 594034159 979583645 435480685 737773005 1840772 375577024 621200777 649850531 307194660 167800647 525131076 447277109 773609810 388663301 878356136 570044655 479451716 207320994 53744568 532479828 345016677 949840154 677573608 86098553 453985491 586468156 356780703 746351239 630447585 84498219 159751612 814248252 180624278 860704993 350866446 673286250 152217901 344547751 937716187 812473463 806696595 615849631 660770138 38418652 555775212 286977338 396330809 479405734 497267471 342058946 972990231 442207480 973916677 26355153 960183307 971364743 242605454 889671896 863503643 342436125 13064348 414120090 257728966 943846934 655986133 959941550 578302075 7235814 956630037 108918784 889692959 689250960 15335146 963985232 530386827 926255408 93812502 373133745 276862988 167133811 194471697 479697932 609785826 279453210 817947525 414529179 931705281 855332475 70080464 467352430 94983251 633070847 510320261 706244841 579845811 50531493 804026347 707108420 731136755 860548222 598376060 793146890 169100439 226655791 674505576 955410586 611335960 647197298 285100816 97868457 276180579 225161621 20453771 581477822 962253143 496827897 401771812 73374389 606476362 443019924 106497241 563815485 10666373 587980144 74895070 923159898 63905219 601432618 348113176 772140003 338068150 90670707 810160547 652544773 367638402 96888979 235473741 609311678 261621056 535328737 152774168 745445219 400119677 45159756 47951804 913945114 747552952 108782549 414293538 240897377 420195047 745338130 912277482 570081925 654956531 640691629 311664358 145482540 831617591 987299811 372257437 460372940 319542021 681067526 42073801 687186993 43280161 226164987 692814809 458932731 92426052 641654461 751052656 373340957 455228058 501150936 655309028 526329439 120397124 658235631 108474815 707982813 583147223 240240438 614032450 831562631 328035036 652217592 149068765 587026335 19742542 502961426 764887992 849013054 86956831 144273014 562675502 547770574 335461043 678216362 748351564 201223313 625689186 629244486 89536599 828752665 645945083 969887098 312665155 648085966 822095420 991280773 337514300 672286572 806727003 355065407 52685089 840191618 788314496 353204880 330614020 344207347 794731592 242193654 245030315 582826873 466786372 331997443 146113042 19359773 7520632 172034781 963661287 60555968 258075612 176973245 168698893 293280406 546314718 832088176 403411738 720055206 962332382 512756185 64624088 407121739 462617521 882870637 209102791 78252214 788136223 649898421 760527770 684170601 309512293 42029264 571985846 384522685 575613364 288915694 598333622 757921629 701533872 155789014 613983721 52408777 36662001 235909217 559503826 113539796 31915653 443998460 50166439 272867111 994370156 771426346 828855507 673653948 418384667 145707520 358244725 965250915 996319482 945167784 104332511 225968960 143259366 199263710 126181143 266532683 835249328 111593846 309522521 537849294 71750555 724087252 150758291 28014827 244476130 986837362 493126375 47865108 541403696 293950046 366763052 357622161 542014502 780941497 580588398 421419773 121342680 784869177 788255594 750564297 703183952 583669671 101363731 167818424 547120906 969434466 167667984 65494881 171355254 52943323 654672955 814653617 482630522 236640535 275184163 217949030 430478573 72547888 870218379 574770837 334154269 228216276 944069353 589101604 419119434 603513028 1513704 31197009 329593896 969354327 785287910 936655657 603900001 914058484 783897206 192891666 629692433 596989083 12932320 254513986 239175752 220860253 526442396 666975045 28691340 301802463 202193627 160173178 129782356 895515100 322008062 410521239 745779598 127600800 26661916 381516321 382125338 433145229 345260673 758213365 1849420 55954074 423392041 336528066 633672302 488889551 440472905 17766796 543997243 670546634 624512967 577678379 847218022 897812797 11107773 289366218 422069521 888763757 967220986 941123944 53921878 53268917 358765184 327692378 251726274 498167297 809117959 622321863 19402453 228131411 708558713 126266155 51682435 73101122 188093812 751238100 159649205 991262326 359566795 712186216 305071561 378124077 375351557 851776861 313147150 460019897 975648733 414278272 302197577 826598656 700720064 532317039 791490612 278728955 185641298 897799967 352509945 123727671 597627113 337614678 168151483 63026775 985456400 141353777 718210573 916664208 627085574 738406816 847738744 800487211 187917117 907348965 763937018 526760198 90034139 632448025 406603394 780504340 843737916 704808359 418951541 276816856 645991022 935919055 43599148 284135150 536585651 589765668 366446452 10284931 915869955 995664655 575057164 693360856 708835975 950017610 476117546 7641282 698418463 878161765 989198071 408628269 859203293 646858308 201014798 222870420 989629320 993302430 890991873 64805771 718531866 72131968 291522260 97729846 427672642 518339017 527595648 391351503 325379299 287486635 615879025 860158499 857043091 422976816 537359881 307131669 429760797 558555059 194833947 212568602 941219071 692897379 220718960 915373756 203037677 714012099 897564229 906933784 475620172 403573549 746204107 59101535 208369336 1973066 432233126 495365720 123796094 363401883 889824111 976275421 828745251 617879028 234972466 574729305 439515867 891803387 617736177 447750225 574052882 331074222 589672735 917304536 123986919 594148826 133934117 565702168 897745324 483369380 45771488 574074320 182308968 93274628 580246561 329123793 599270229 18766917 455259692 474313856 735853666 407376263 243581241 798148952 432898737 38800189 755461623 773754213 268885786 76875696 102488580 112335305 947282599 903639161 985120374 517791290 575598358 549561611 413099605 273372546 854297434 452010791 955311902 563488766 114462234 28759397 101740354 235071520 125963313 656291762 970216100 273506542 455784748 772565964 366297887 180633216 797075407 783252936 335055102 824780933 613730960 8236173 309373314 895197375 884807195 491911255 392058208 47622018 208405452 996626740 480752448 190222905 170597432 422223754 167408703 199637473 239942052 843712655 401388654 810119053 818672780 735937232 530587472 511552224 540084766 725481131 17843808 595416726 239724220 895474388 111481225 506180347 612411006 367239380 201558444 183155826 27626926 841445765 850444062 124057071 338252106 845287831 620330023 633700733 728422277 807704591 577042307 695263930 877129286 755965123 315403493 259872598 455077799 979103967 793663856 982874520 181788791 922445154 938257980 281975001 980982457 780137890 542977239 941045254 389489699 839792580 201033153 757290018 218126496 819756357 196503278 171550914 4046542 214819700 140965960 910458511 828640385 460405237 527427115 533769671 777454398 160721215 931144167 150909117 797582529 814535455 57400898 297463893 510222711 301488435 40411123 832685193 855468292 110406000 981987368 911028454 191739583 367167645 626596609 366689551 834233393 881231061 130024978 861299513 247550874 117367305 301545701 856413358 588701804 217475708 871349622 682264138 599299022 739912517 25859253 500786433 908026650 424883920 281154824 973490263 3213407 778690909 982607558 562807526 544211679 910714752 668851389 830911708 579879826 39468191 542531244 84946042 211829154 474189688 397643722 370918550 867119853 120396440 853935421 937234202 666728071 572342500 605871780 603657090 177927477 664942100 642233998 341383522 911625202 46066995 317031681 165039326 836034158 929461537 486889972 734355249 242257802 864347921 67774932 950358311 250031581 96663307 827196419 475344290 93386802 976736363 324428116 873698840 908104712 434272864 818800785 644683539 754518544 728119918 944213237 554061488 256698035 294466284 572321459 388301089 847386762 341939591 316586861 530554155 803715300 15112125 521157821 701905064 701071939 517344611 434502319 640637703 339047647 401445152 746316357 595147207 64557857 422885104 811268082 48062719 86360617 700355233 207198752 863452121 752375881 322028121 879658410 305943827 486128008 933934862 662223458 990166397 645061153 149867276 961555340 342017149 825757953 379713651 422539873 416371342 539417164 900622775 822055566 5824444 867534808 134751262 540712114 218026537 188704176 778568773 709188835 781952652 933975186 68030108 896431402 415737517 785769586 519474661 183010818 224987626 149079797 257987513 202630877 82457014 977063927 929826051 29951135 651371540 632223237 420317827 829734433 380403232 538549988 274113356 188633775 988147334 30120456 90259270 326189195 246906889 783641373 613537709 483494248 822373886 507199106 882769808 528494319 208426702 861023177 603792467 716721981 188175992 302037561 769001517 207278435 71415564 279725900 184263339 747920869 529864497 359443249 40165675 381253436 492315296 46488907 952853858 533513300 655601318 897290928 894453718 350150926 951459494 694925994 80895077 789657279 515047061 837686074 474225341 204554927 962681724 756335504 734683873 891231900 551582202 648530068 340611498 753776948 963842751 710658913 279605572 210000030 710811410 801944004 258551725 747797746 422094156 792348353 987857721 904912060 647453019 160912655 939876112 556735869 907616064 544422807 445277615 553553962 157477265 360519160 68455267 732595115 841983992 853437190 784105169 225244509 601147314 246241095 871189361 657070481 860528656 274559349 398814222 911454731 378203385 640267518 178651975 705302659 74598 317720711 840958482 930892071 275958245 102418021 726315060 173662487 417944344 442277154 437192393 205072104 5841459 504649726 655852738 703335202 730984320 583282539 703339874 726752962 923004638 959822736 235923137 9719737 870912574 620286664 297503305 593666410 29123621 475367968 462708028 207096112 27112494 874475996 290737451 141773014 837187461 661913586 318600832 737139997 466225004 455134349 235564790 224762937 91462586 96822923 268250651 722813524 737904982 781363200 224203221 652766218 463773889 443391153 197606618 557379308 641778314 343523482 774127414 826181629 367796183 960917609 59114697 757936696 408963810 606365696 317982150 561905927 317740922 796849399 753185590 723902157 514753918 559739671 602423155 607027038 648306534 821855456 182486189 102345858 389924026 945999364 771748200 456168054 339570840 873244138 272239868 331584618 61299762 201451052 429111828 666202371 387654478 267350297 469115184 865492187 916749508 782459955 591004451 591276284 835735300 95872690 951192469 910868329 897604237 159978496 255930242 357057942 414836855 500918843 587989432 481588458 154271978 370988727 29902685 60063044 876719525 90644089 714246760 96025459 908859512 506406589 325453859 862202813 861349834 604650864 857727920 749127769 520785683 903436214 951577728 487317493 857619299 97714277 238587613 381978672 697762778 940441225 319617121 118834209 769557038 972426718 788841597 444069582 264220968 995338585 454654196 149310902 392142118 59150240 148866653 660264776 522943131 710841229 552920740 28039018 686154891 420051119 210481545 96895987 251083536 809374152 479645471 577632560 868737495 670946128 295380558 453688931 761071779 248783344 304931155 836869183 285656009 620096265 356744251 189073262 695435955 421435691 34619243 425290507 707401310 662726302 996057115 875276584 812202459 195979740 53457110 161114953 260380369 242899988 450366971 238617319 661340665 676971433 365222975 770427375 835405217 921296049 276274985 21074752 127148586 669386103 441471893 714434353 895170186 593991930 564780082 888354824 545747147 567720812 473109508 207464580 84858506 542393011 728084194 996872788 566624121 696491243 315544057 126522525 108682717 436142817 577384007 139091576 734630160 377116826 962561824 392430961 155376640 586468298 958432941 558641673 575403438 245429342 368471656 570684981 697926065 913458419 402689442 737344990 863264433 859196252 574787070 758052703 807106284 250174239 659188723 481789962 355001012 253955064 800085325 659700899 931881198 230717526 537840556 890246627 807165332 56015321 45890819 949994230 840015412 944964570 193244186 926202878 438911088 707876835 935968013 23054478 866886268 608330290 152842700 616489519 840255395 633953851 193634457 523238622 612063939 775719203 817212044 691272588 701420748 36533830 889063442 417297565 434729284 343241137 173485930 839029866 69061318 224907432 615927591 857050047 629568894 760168994 628961969 144630877 831360431 247700808 206314691 414732665 921384493 756474874 429617646 733894203 140197091 858227017 832617749 323163200 987986767 674022398 478077936 240943129 690782465 743174930 446105993 998522314 224482336 84833844 99228865 345904459 542326756 309561926 39015116 310691082 6013725 363013088 336316337 212279400 441344171 413748684 164356811 157347383 958183939 460195720 304636234 85088067 978062257 628434887 717298867 833872070 268405200 904201456 923826524 530541297 586983059 588089758 121867505 310557546 127681216 378326814 413655794 531295176 263444528 755058164 308887858 238781977 302304849 443305046 762852442 550503774 28049572 796095663 664714851 908220937 9065279 569226270 933063968 861572229 447990091 11876596 696491186 70769582 403476871 879776570 181066257 724398933 68151491 998416168 352393610 506446525 330347622 758013359 86849340 424568097 664516329 995888369 341576602 6212140 760410202 105281219 942453228 979482751 681965786 478582066 272121037 253208110 961854751 446519035 677340334 695449923 551739123 748226577 424944722 586143290 32331187 834118170 28786000 334518915 134664400 646012147 411093141 874160900 274158161 526055720 114997983 421534356 381929296 20513404 590000451 437823105 286846585 109671015 605446055 499376395 579390606 527233683 562416456 433216999 928556261 466180959 278223670 702211772 302186984 904334428 253457619 578703785 696119188 210882770 422257752 866299838 939452923 264116284 156436817 754907006 951520706 908004551 938959643 431923555 572110499 31434712 682040685 453865050 274492908 820175491 236875980 16369731 933994751 98123796 749879573 998427250 860868048 965157002 984546807 231834673 787047274 21936919 503445878 434897212 40519274 557636770 396294762 667962435 605021058 758088261 713646846 742223723 266928120 608726990 33037617 382076621 204686884 114304066 363238744 992889078 792292341 379254870 337861786 497744742 880602477 934212341 457034610 563430673 928858912 999981501 799577137 315607265 586918585 167460225 675235706 593185841 458434422 618312392 38418628 915543379 760291495 283897932 563439324 640958988 751756850 547316605 945111136 43351059 674713362 404464380 738980421 653228949 369407956 105342752 323582033 324009908 592449304 900461684 776146337 471993603 130459670 749197367 924434213 636880908 849545494 869117658 763303455 381834186 316598775 870993030 292082344 316478511 47593641 297994644 122791467 450347167 116033971 269303570 263844328 79559283 564644014 694300997 979466098 24452472 918577351 427893281 843376946 368657005 794680129 214328275 266212065 237648264 676164593 725361976 194863122 818495218 142033856 676812387 654981286 142005574 14365485 104862491 730386261 710757398 162965704 595126106 373910572 487791718 602878392 881015759 263814409 489409327 946529846 230387293 915608097 300223454 694112272 790176922 426562683 985414354 396226343 765745233 812879987 787845601 463842801 256413184 864808504 163951827 5973495 639461723 789485133 260480486 10862168 28786631 643724300 499121224 359242821 329587935 344966174 288476832 605657987 61380339 869708036 664487302 569118444 976160644 108877202 369012743 997726446 770222026 759737710 637268002 134352394 878802734 985798549 64833869 21741910 443378128 104059095 199137008 819310332 684411650 763603030 913432808 391753913 918171594 739072011 588892678 361604191 192241508 574252865 927713934 161629779 101726142 424079128 623209145 135950863 394004987 247748867 706864435 45537953 546431729 868304714 184707485 815162154 775448491 657794441 109524236 134548833 947250663 810441519 673198728 136335886 155632280 963609600 324206478 338096527 8412261 152317588 883045007 829990998 806564904 490887382 80840559 344926056 722653041 512346245 405946886 991398623 373176577 332028854 333426850 407549546 725064527 929484624 623819907 413400008 322105094 739148686 87497822 766811473 205516165 707943553 15916251 214809197 622779742 736788108 796033815 587658266 571397847 42995942 870193443 604884842 381126252 538815003 301265027 710486530 983673163 36061836 41126575 353571485 945609174 314558698 809272725 961129351 671171109 533672639 415205909 784781091 935068289 445455077 973350020 303034982 49703914 404167180 28546858 630444377 469099666 94141241 616099012 428317594 754289760 930206785 628283650 954592475 415665006 572569682 829699850 505668962 529727628 582655083 869558259 676767368 334963130 645898719 902988107 965614906 603928754 7552727 612557202 593454715 65295707 110843084 125961917 835979744 582642775 63323409 6445235 434637330 245234550 865962823 292226515 250382160 420693057 749247462 860799853 896339434 813338736 616404155 267208772 275355847 481245812 108217700 440624915 828027872 303035374 880769494 822588676 90221763 800429622 524204248 780000826 824883473 964606165 298561669 363328073 742395136 178965515 359131342 68665528 493567961 497867594 279793654 257493382 859054715 605595064 541244180 655194018 333594582 396391089 154608788 639624562 317937009 461009987 547987126 522063181 514978277 462143409 446905870 187232769 657972576 424667633 347269634 861860686 104677411 910765102 271920463 882503272 276828932 268973638 411147909 876540537 391629805 788779852 805962886 297330972 601623643 110390279 144908555 187975395 626941920 84675954 76536095 645467603 70764193 793357626 399097250 960000995 212604888 42144835 257523655 769625473 854981203 545432356 442123670 759845388 705004275 537392294 755679339 84652122 491149102 624452168 704528245 529117492 29348238 611478718 305009208 727467478 326215728 282293358 912395019 779613296 756393286 640015345 726179227 310917287 51514261 221903000 444653414 455529492 901125368 764136165 905302081 717509828 224159963 971321101 757698771 107293622 318678208 90679677 391926551 500133728 613220030 811415890 665998046 19908651 297232893 958013151 914779723 688474866 12442939 576225323 579420245 704180615 641594698 974884720 511558984 766794030 877880207 922845086 893279044 872463648 802352773 315517653 294432445 615139082 428287032 48980718 578838265 87102347 371081419 153414131 696400533 463189177 553346290 426216099 777658881 928357021 244935800 969254639 131573759 976910770 736180411 472538240 876566568 927582058 800682795 672599854 391481191 734205609 668707791 467948426 857931387 621037128 692437439 439712597 824056442 821372307 224575403 837388807 838866761 400904396 308872274 746814281 609884196 987318182 486031628 33667451 544331292 101645258 988312641 115747887 916893844 94606165 665089520 54851756 674786756 224834392 144708649 691004524 782903606 991498839 804870547 754385310 758783052 789693643 524639207 331398052 996213944 349771168 28289138 511093142 625586433 931228343 397287575 484200638 918819077 369170277 696579147 97643290 985793138 600458483 238938264 814853086 315184459 426607900 197239834 472523247 132415081 827297425 205959557 881151080 438176759 909613944 994768925 209963289 829151221 518237673 745081916 310133507 943956663 166912624 201861583 720387293 999428963 220776590 588241114 28670866 936860790 335675192 604548080 194587841 400152640 881855830 897505979 430221116 464179555 464310341 543554170 558267273 873810776 859022422 647959678 107078756 427726058 314038605 204530348 340015419 922419384 891010786 151747070 952256689 553915319 688646467 202420994 633305371 829683119 936021392 797600345 741188358 905911225 171591262 732983609 104398767 106752199 859512373 632163820 399923593 142732316 152722962 415694927 545810107 112268240 159952358 43943508 360454047 236944717 885482260 169725056 891957573 118001621 134073079 405160557 643388909 740116217 286896986 282480457 781178257 897957155 579691774 429496918 563385945 436933645 236030999 998221160 13395236 2558792 455985871 51304298 280229894 611837623 50337218 782353113 381997764 569844497 712613505 101546055 33104730 609676898 301734415 549737177 122274421 283005066 873255783 466776778 635015674 551485372 731693556 511821286 636335997 292708609 110137878 387255824 735563467 856757939 446735268 865010620 889623648 926634754 638857829 403911285 688730097 822305394 30107286 203421528 120863460 863604315 283940199 670853527 263362771 404370280 922762110 809763064 271107085 493187097 226788722 875569236 928110613 174798657 12521553 107900440 772213281 124348552 373913626 487745735 84418972 548860649 610704452 318758773 982299300 701021493 52834358 155502670 588852365 805934735 424253900 520893709 669901916 319215 882711513 534927237 433656652 392370079 383303839 470698524 788568909 705816001 193514072 565734987 499041152 842734790 936121265 178716959 20442300 849862392 300012618 748580795 186375692 708729329 517989175 572930516 481535279 690142498 100189058 169338931 752124183 932008013 111209638 883006775 212756586 939569164 567069461 897828688 275226628 14036552 963417780 399696261 430900083 239374018 850067802 867899887 313353594 647299469 787551572 952297020 132020878 721566609 17901540 261357101 585404252 856980234 393444797 975901208 7240001 617516040 493917065 392325990 2906832 454233325 714649699 560782614 247448656 616617714 241224797 879557177 577218620 263517345 34345212 651494004 45085633 821219420 929506743 88208001 361265475 847399637 921963643 363792046 163982552 347950996 80375850 524043612 860833483 383221109 249338135 506856321 399007259 588563239 772344203 310721831 600822521 208936366 640729156 820921322 664388942 481412833 597655281 399077246 601429810 623227884 200368823 518231591 311296886 503581136 12464815 8464192 421672475 17017822 867362405 227105205 544604889 131891264 437875291 654375048 264894873 664166512 258155140 239439695 690394363 943472063 507605705 296770228 936224465 438894544 736887175 783012596 822264482 41487642 544416271 554777185 690480168 668719465 810066213 731136480 616381394 535251549 252510594 480286572 808698691 607970793 60098130 161258641 837006289 791708373 56341943 911768817 361773319 682815805 619827012 366716611 113945379 590035729 750346370 873994063 945762713 377937043 198923118 272847219 952650126 920099547 772537593 357134369 903097437 419250262 311176071 670628062 366657046 382135107 90960753 995158085 578907642 368950325 483335555 795158658 863100160 514070676 826145662 387060696 479257172 622023963 548573335 815184156 535242706 290682971 748299766 673345591 894332559 341126455 760989496 228892839 596252497 195160934 421949166 649400318 637351698 231595509 544324892 746366050 357945729 535676354 177169851 759440652 283877760 846523394 191931191 306492105 161680295 845335739 224243953 232467068 33239744 358037323 636671934 524918682 627255369 821472479 299991142 144716460 100670709 547086589 366446630 305827280 31622443 862305787 171028782 90044217 490111365 866195333 301863204 424473003 831057747 626799387 379817376 23686400 947836182 130772624 606227118 445116069 818914053 599193228 989898575 793018397 708502923 483711755 541196791 877691773 395387846 838513629 589921040 442291694 333339146 9620260 987573110 821240879 436013660 957799896 165862650 793533713 321975544 660869190 765310176 191492089 322687180 509721229 760537184 752724321 794008058 965813024 162570536 171989334 250014810 43593031 230039512 975720443 88730101 838199709 371001476 363082246 256312203 881192595 61406518 595833150 447449358 319366892 982758506 519457027 16115237 882408511 599692689 182617286 435798186 436676473 441116558 301705356 966155564 736248664 690645820 739838319 612733806 689477360 960820709 898582557 270475494 627899946 75399628 220700503 843315007 964334656 255346341 385912435 808276183 419968579 665730072 881414107 869518146 515838357 140384833 397111180 321665989 979561071 873879603 374807960 494889948 306754652 652336240 166219940 472468404 979748028 950414194 172299883 288367281 670432579 356122662 534368825 563191786 14053495 637641836 726650736 648872 263516725 810716056 702782982 664676075 998798892 777776372 763125509 34740709 29363808 400895548 557968651 531955324 108997033 205969952 998514376 390005708 87761457 279456965 529933698 595864995 238575610 35321925 375263635 687418628 37250902 220449578 437291754 283277989 650966893 497674999 865178502 355468656 383188154 882403487 979730943 469624069 203101070 982395148 582878717 472325175 551619212 40763289 763118270 420243339 838966059 370049688 260456340 575143356 102687800 741971406 16389733 223947833 475180625 215546098 572232234 379497381 10084970 489187377 300968816 321220183 43414604 284348077 997690586 598426328 391300881 389141241 842800028 601359975 907619242 10507167 397557762 351838584 859461465 750397338 771170791 729133616 551062583 681737948 961247038 129463531 693222319 108603081 114328717 640149687 881294081 276381882 934463341 160579030 649320896 749276796 389582603 862502976 987162196 323053262 259138730 366711326 254789241 558216679 346826783 502367824 648426431 922594797 734212180 23795945 794530824 602090878 993006533 225990573 497745932 237477931 723095814 354917018 886996952 965285624 216961851 372235356 379339082 903443678 420381342 70421719 249011863 929515850 170787068 431110561 633883846 993880731 304994872 34350724 743171123 550451367 490303175 354167809 521596685 817624374 661305395 747381704 512213463 827823238 376719257 931581762 380505067 828734406 480845866 251242503 135009778 694713755 263847853 649700968 679130733 229040797 976233723 264139750 168996912 813386715 385792642 143642040 434337505 280186707 900064451 97581898 781378429 949613179 24319189 405926584 489817300 801403579 600259807 553738583 775793160 23428592 923164833 757898285 788824338 243043051 948292076 649301620 109031741 568493552 816317221 958814747 850082729 70648120 874440135 250159685 943911369 975504751 261662942 772394439 679625189 821236790 800141708 480659374 435317657 367813794 182558599 99984823 496194132 42304443 19778457 74611414 626023386 745022718 650739231 620192688 622579907 31477468 670533515 86485280 274223354 208068921 697842914 639215286 910602302 687896045 449956415 887436083 425335972 548742470 891430222 535185678 244917011 822018693 236269010 21262578 238474182 855973980 950015007 389923389 965796046 733595510 129279392 787081603 655697038 493519599 445677394 320058634 571675709 310761176 120008775 569766219 31216743 551229621 344849957 317828983 987218797 690809854 93948324 442032112 60132352 970265249 216814868 843888331 224102314 850701182 371263700 625053269 366998853 297719530 918629852 367153547 374714753 878298413 172808756 144709792 122422627 662377732 200675195 373045627 527895744 16115231 978425697 855145526 328515270 832176036 307887149 181881248 923560564 588310698 348387639 500869564 529135901 780287679 492693871 798666304 969100010 956935779 623690197 663098647 122080596 420325259 439404030 23074528 81840557 788114975 395735190 233842028 805597080 25572987 127974360 510293059 194701197 731990002 213214744 7622432 910016855 870107974 10995770 987685489 629009557 699467570 606264887 692671960 648564540 256023776 835654047 510492844 645562899 205980787 629968402 4418169 560287541 348898175 620247494 320993147 401378451 852333452 301005316 475105063 237292656 84866198 105586091 438361251 104080355 890685840 789106092 349522249 732481368 312624348 438775692 943170856 972988687 892411604 446925797 476072323 864993692 6473285 793014501 921986896 70611557 841304815 567726797 429356985 379979815 572132358 411813491 678377119 431611250 932201652 250074560 603299602 424549672 815085716 651106867 404130266 586703106 468404793 844618077 129539057 343215115 974020005 986751331 992056583 323142435 727290578 519165823 16324605 261319037 236976685 496377471 999769962 414381857 373381397 153174853 428036633 592320875 541681249 279635781 537712009 386231690 59924183 133127946 900084332 816928514 929435574 953392817 54666024 402806314 173327149 589528684 823270489 31190703 485738209 776029952 805452621 736097807 87616619 27816007 103572614 832079391 897784792 890494383 434179132 818106758 208710183 979519162 436871897 357982271 187176910 107081084 785489787 438168603 181342518 26363168 608035445 151431997 690168122 925322339 478461902 47985820 776786860 364759575 360562624 240882820 692526033 470528930 362507578 819232021 290082016 866615676 313984607 854295747 39611014 406842293 837649157 679573204 96843620 269076588 442976567 92321253 816594832 780120665 347166644 612233830 87522064 732050244 173874797 545699609 394431586 182130827 263868682 4761495 841574647 36391328 641177958 374193867 848519603 431346825 111334415 731020148 620390767 534445663 207926471 922053799 606362487 693552591 749049605 101878860 705181197 161982364 170972277 492498844 325761764 836872987 296121204 341512617 761542565 759401653 387144085 224819158 434720877 887190632 756356638 662404699 242639437 964550215 12805771 647493826 839555529 703315701 98922762 519145581 107436890 889767982 676990718 558083342 476143084 851808575 121896317 39690028 260928352 658716553 706976210 332627109 83657483 732419842 378703355 682091302 73863734 66208435 9397547 506954421 739536028 56945467 136527434 173500968 30958831 382360394 147087472 229183403 762208082 620107815 283314029 810817342 505352672 714652203 511564869 998562613 939435300 372756804 604073900 601267894 251532959 872660851 490477710 295955006 477560134 872188238 197620362 828777501 904944641 739605119 116846193 1093365 948312109 135823938 726196940 883877951 379368987 811047403 926186068 302829254 617924495 604893534 982581880 999631145 271657025 655109525 887059418 674536541 944073311 593556766 65830098 825331241 555656458 833426074 688547818 405139369 57163988 772212544 558622816 904699340 16578632 341816151 248688807 394111958 23528034 371082943 4029670 49969119 170162451 107771753 244383607 562959185 881518015 776954330 72528233 57010029 404698558 86111661 288201983 366116295 814165214 252846606 954813487 304276166 574144991 904215103 391685924 284078117 90268918 678551062 747281597 492088693 528225867 456240765 917574923 625927833 749223546 159031281 764891095 357613640 67447574 75664644 575582489 254096526 783731490 340768988 725493122 948642635 6600598 844942257 104338163 759212722 659872224 353845586 813523716 609719244 550526560 865054625 449928062 128407795 502928106 966163218 155578081 556560471 363219784 138640689 205658847 233359996 529002422 537983769 654620383 555067066 623884644 936790013 768877691 352006076 392843512 788586402 942800898 225384450 886608137 713263843 923120887 224934495 495852197 453472300 619286160 336326779 37619660 716122624 287247927 952273745 408911346 294033780 610514445 719079858 106545281 767849137 490195810 690088641 104201556 305794933 497201470 101962358 218365246 178401683 41186524 477086235 524824193 689033070 9146921 586426577 267750743 853995650 226733641 41571340 507320941 475739100 637339667 371589651 992972131 4114077 492405904 493437569 534346061 908533882 63968640 263707335 189216565 396923455 815424980 859587751 136760982 697820231 166679605 271131834 357680611 759557894 933108092 975579884 840004350 549529472 399845176 212887291 760472001 39083471 50456107 398163195 667433081 746573216 830720205 65294804 184598629 916635830 719828424 776721858 859266107 9159526 231335034 890427605 217879204 909365530 193037174 696329583 847558843 272747214 120427779 89522888 623857811 302053782 136746907 48099693 954807726 295754518 839325294 332487101 100037510 481379848 514081245 917475947 218476551 280541370 583187455 655068415 877860371 119560077 424174879 416513621 170288637 537273207 812568123 562607388 832588302 214506114 253962119 272701527 204279044 382955083 161990376 28448224 256619662 943322756 620897402 21252320 896652241 208489842 945045259 828525657 24648166 171486831 569352861 828895644 718900825 607181929 603526888 58920659 259897260 769459809 96854485 971720056 878132178 215242734 235377156 385466588 131926708 123820983 362941767 910745249 194869935 599685116 267810597 424475968 324891924 76633358 29220184 615362693 657380007 652862419 79893071 482476046 27911201 361329219 32445357 155766735 855629999 777825261 449025224 207398032 971626608 86740083 105147178 224171117 739618554 661782537 114884884 67571541 332219349 376990202 866277366 599557005 465260286 486786339 766164728 116340266 144457062 459175030 605975413 456838554 436657009 530695545 185625466 230135836 816343928 244785348 166595148 180240963 860486215 955704455 585540831 770738039 323686303 404224769 644297311 781228147 420893877 164744970 518973099 489275848 729865393 828244618 362171093 180366425 822395185 672172799 333214627 278909405 520257731 992037884 978038289 985537377 385816430 379146660 261355469 773616579 738257706 371351347 953195450 249169976 521953891 368548726 879346798 715192518 976670330 593557325 830931635 375893707 169722436 822687792 421916169 571266420 207796873 60853415 686644515 185433671 732753030 862309585 566944358 446060954 683188843 873487582 996279405 921941785 532190174 508509077 331671175 121918020 235236471 901643471 140845367 108793070 607628354 913757178 138063027 91940799 762069568 69485718 170659686 989445811 407327462 867817147 403892847 299765146 747075228 95621522 129653280 767943830 480706111 737700824 549046399 839068319 111791519 478980190 972834760 330294786 291249666 56547979 615092968 692817118 496079007 786966232 746021892 591631782 629833508 156181331 53234928 681397666 743952945 956559901 636428729 820429165 556453339 925665772 921738012 737286520 718216746 474188426 286325516 180546694 849919386 306644819 323342128 745314350 435906462 149560763 127483746 934525789 357798680 214286790 951965745 649472209 653093091 963943566 351907168 955077534 954408522 131862721 495118949 113245101 29364109 373320993 291005163 383188536 23689827 569738498 256107344 737808976 638048371 251948751 173041447 130379607 718889946 832354437 827063224 191353222 907048360 326175285 754122875 332635240 32219746 807012999 658366881 286735197 916899458 74313522 559352459 449288216 679917298 437699973 355226192 491158306 799257493 123543265 650639932 406950997 667176895 925865789 248646731 721311073 856035511 313053601 178706866 37067850 992123964 505780395 559685463 716626408 137253117 164225293 737940052 37235301 345763104 595379724 277585528 122496451 826952892 965070851 70572229 4970068 982656606 669422814 206871539 746046272 273776008 460397728 711590124 453497602 408646445 66562013 739056462 890005483 65878583 161754688 619517932 928861342 369520130 412514567 960426829 625915026 344393950 461784450 121409580 974357652 178304144 384587671 656695286 704606530 861801681 816820801 429050191 957042576 635508174 150901772 777434765 968204103 184884902 553523099 255038523 527303553 275998703 415927843 582164888 642517807 126520882 918337517 717348118 629838739 407707754 751246039 690229467 218310342 756278409 454641364 306917187 474286131 138373108 771703400 945686364 516326682 884540930 230843692 770608488 542007054 316795520 467638352 478748511 44089463 715423280 533093652 927842154 751955729 120785221 267525454 454387817 890155627 314929128 210500583 263585902 376139882 850745015 900699486 379540288 835696067 981606720 559509059 407621849 546193540 169924747 525707709 414334952 118888075 161631117 911232005 412064336 940679693 275866550 775465193 304487847 777860625 721072484 40355914 117804472 331612403 726175341 501436574 651150081 755510497 811463834 638099822 31687990 48359009 450716710 7486425 57023420 590656201 386955331 944009488 789349935 422757574 978000789 782536920 218126556 482070742 711328949 326826507 255498568 737902542 336438959 515411735 520845479 234691924 85498244 893263485 134458981 657068133 778736297 160883539 164211361 514812881 271728006 815777219 6850733 707943098 522603513 603195274 725003152 220025113 494848720 605520505 927925892 105664057 991338066 571861752 103039864 931830586 970299063 844088958 300090766 768219023 466666667 370197530 173437854 966865792 752793039 502333677 108442290 796276905 581397304 13519022 622805640 221218937 843126254 382450724 548785171 473746612 65872238 342604720 670065658 122825714 170329641 974299072 359625496 374515230 376459267 377004893 677051642 680329463 191752917 373975198 485072996 580722834 327230699 335823666 822282188 1249750 16340870 654393051 908942814 806512382 779970394 90389485 761450486 406425115 222094098 943907795 751549609 329296272 809244616 170925451 972224572 74620564 928033677 744675365 928989995 542947251 715857895 600848711 335460004 318307661 929178701 789231020 490507017 530880022 372594349 598231968 105942130 306128788 390972391 519874950 161184553 333963941 47494736 345134674 701242924 684372982 228959280 156723216 984757678 654670476 962005060 435927643 446127510 669490239 415233084 536921830 339758078 577498682 408053566 541843447 897265589 941073789 472137825 966267623 206323902 384576859 633190195 698287267 774484687 173684732 963588148 976791598 870414803 842431196 479638873 377958173 428212840 463407946 951649418 711522841 610136674 276898026 8991268 116053857 755219270 489638964 772250999 748029253 827808464 457838323 879359304 238347948 370207597 890655430 186276945 863188367 338169025 655201186 882065341 935106427 708880419 176728142 339741612 347165203 899161372 246058725 478496181 976716172 97832428 719309144 255163231 872155952 892130821 788829674 66899622 247983068 837441678 237342642 511394941 954759809 595487457 66943772 754359622 326527142 111689485 610922600 49159515 900933348 421187156 517720618 462257545 874828649 570121134 390890440 57527184 770708086 264620613 489350143 119367332 758928609 785123319 102450527 179575279 542424724 469200344 174408394 18544909 53821196 85674157 505033209 968368270 633374682 306188657 310588919 43576951 643952422 949653460 981179300 480177345 342298663 471056567 254836787 126840793 774413740 872847025 481516972 86440222 967479958 933476493 464325995 84263783 918963291 218813386 686729887 275663226 12239237 129744665 865712332 965569174 318957105 746320099 456511049 4347114 668128401 243295169 42786499 988237339 16702826 323924226 725070264 360875458 911696023 581683496 937854717 888895980 711092100 393724011 196725561 940272536 871271347 712235828 260306535 517702461 184596283 135554211 660639320 616948033 953550660 798020874 189862191 476293251 483989132 96734832 167381987 677931218 406633957 54537488 89759424 472107891 723766452 500474327 583885286 239665055 439632244 688321769 396494281 744952066 414722097 41100828 77372847 985559102 351590670 957694331 816847413 855655270 729002175 965257156 745962955 256444547 75509007 346218219 501379379 424390162 818611036 978492053 51972614 448283524 857439510 580704414 365796655 952740797 363975747 738994067 607355245 208430486 318550014 283377977 944948693 39576156 313774324 423673604 626525774 390554702 537017317 982778528 227749396 311948578 957989417 294383724 765330486 827129984 271645736 318547962 977400344 431668870 687382497 858207377 992265714 461116482 479933284 220680619 997259598 167659067 415925080 176925559 475193230 151544041 555866486 400070488 596955235 105348920 186313483 273926244 145070167 217660170 577858938 431374309 725112645 892219826 1381048 826666972 905146587 124336761 635388878 714698105 341475615 815820572 263841627 947726756 570770663 591544396 878464016 189804920 978664543 75257389 333595954 516170946 28630919 997274327 175587099 534329990 956659891 561177304 921559480 907722107 519736585 203073969 69539596 844456074 776363782 934543956 920859564 66941266 577492730 147918765 255926082 403892903 268300679 69353750 216885003 634345231 709559334 445646560 141510232 559195460 231298978 276564689 907710737 199081140 261728410 956256929 351178285 251531780 149264899 882360956 766829115 517583241 163262884 48669571 394647516 349464525 215040665 963102794 665640006 5591056 533932497 251984220 333754819 116836548 327167120 321959858 324845104 360254992 597625069 559087936 295060350 386072143 923666517 476170601 320687669 243400846 12310534 304091525 877090284 229519633 820966293 644677986 207207890 1677262 714435433 2195904 46288168 582274288 57915197 145345748 790415301 18401109 217312930 722769606 127794833 646764817 457489786 578708019 10620938 473373673 430840959 221825707 793031362 966089689 766324666 8542004 792417758 398675343 455226636 665001669 231720857 580914925 704725160 263776460 803932607 853056395 872810391 378731945 535965746 870990130 544780851 899512624 186858345 186128994 719801516 580065579 945296108 155937997 606746502 778370518 927135705 497275866 917821977 448040033 224946018 388788515 27705616 663825778 931693389 496702199 531458282 643182496 674136691 69984472 416235132 514645497 768551745 893128190 346407790 440992381 906462266 552916947 30003385 546726560 615672946 948208757 845745455 93332428 338729492 290214200 275914227 806559197 926633694 621664033 266029820 755651491 646064288 761308011 476747159 169863523 235254721 476889606 481161954 356238679 211520954 504858643 334242898 255943721 111338392 495644777 379415086 911125372 49165438 908577812 754454545 254154339 12967457 283124432 564127084 153478632 405725002 687118738 267368961 193693575 96873560 936148736 117282409 680997296 351337915 228129780 185705616 682356808 325626490 683368445 694273587 508229928 886308014 721190365 249785193 708730013 315485701 275871756 928571159 70670310 307945024 548592947 60649850 167073722 793615797 582653106 226304162 539198143 291473869 665288988 325838065 818106900 155553671 477515446 684220831 78374344 289007603 709410299 886752057 357879136 489947320 563750938 433077278 122560085 813539984 717063542 824393473 566756499 795550150 978939941 390321002 966844156 490969279 577274994 239110197 701228003 210970734 941311324 824420369 388784018 858062045 56130836 841111041 178885828 604616107 782572931 305260511 585007403 140069001 880941250 575334100 967558123 626739132 972267935 672265698 963329565 778031774 987971615 237824602 730453837 356513821 564016630 43547238 578776573 379065147 805664017 245449600 655311392 991343500 390955533 652349689 366430623 676771771 70120125 718569075 964296408 711593989 180679335 620841063 285468442 152479420 947746183 847190176 505351466 875733701 367464908 81212094 880753600 551631899 296849686 460371125 526297099 217174090 608164030 360634187 922873897 388340468 143812686 369880221 479222704 593682000 599674884 505361050 413951528 818538406 907919700 147285895 159817615 529235412 956107107 360079993 141380819 385429964 378781581 354980830 568520283 44616467 846598111 300322293 380751487 215002180 413093277 552285009 200050699 14838667 870484926 990425946 179271360 4116267 479071083 195040459 859880915 892871160 17519748 86765621 162340973 519652318 360333338 665489531 336663081 584896088 620987126 239511892 20714904 387783929 140306961 907575245 263884992 673906663 13099290 387599044 390974361 476384858 593648371 745674606 948733583 822690082 340142644 409446865 337423619 676757791 714658727 785525579 815634890 650912710 415107274 470916361 822690732 333460387 335957072 208567441 933658598 491604177 678152352 66416697 313386665 162444676 76872789 190017453 768786840 102456447 949213372 474314349 960555598 26520990 786322521 588160076 741970134 775160398 656788834 265217010 581372977 1309712 676569154 865367899 741852372 779615994 7642648 815366742 694155047 45846069 941107509 419787528 226695687 267170432 387613090 772238950 475172676 371463851 943114135 142717118 108069924 943902749 986440709 88056879 870370270 37905743 441106190 180538667 48443936 630928463 912436871 901830396 782584202 469609278 432046205 603527229 600845873 31429842 566002605 860021597 698141725 81227989 356667402 602787104 35737547 350180516 621285178 856072477 376961195 958127536 264712986 943244352 349279139 316972545 685706294 277215562 544287114 175918766 263635537 49573708 769334190 46087782 886882531 218777136 658029135 763513322 202513814 785345840 850857249 597770896 334661321 573018461 122498510 163742914 48175117 687618585 303789170 578948733 888281258 552759709 610939421 148094419 171628059 563883380 475158356 615395689 108864653 274183422 447926417 276442361 836100453 536909294 587842750 719546833 441018295 91080397 529369022 966784851 526283983 732718965 227424485 229502835 422678188 79525782 226500474 328241980 657733248 698745140 339610940 717610827 264066866 295958310 513244890 902156882 222905819 213200793 663201402 880421783 288768588 680712332 164718131 237993842 731064711 631189074 58398866 100363219 950817858 657765907 995658521 534732985 36806504 212214858 67368635 674977468 531210391 78934344 437278306 801125764 10128034 535191984 240920426 275677775 832729616 66728697 741019171 151475311 40459163 65049583 988825170 9418186 780678323 749671219 641904048 809303896 712651769 381071798 986931306 86927273 596096452 543435074 896498079 300004188 345472671 468837105 84135398 251249577 415296969 313882036 741797829 471113944 918259635 388833997 776748603 937725128 494124678 252490325 289034039 320248169 948871322 374425015 254184990 788230466 262491392 721650227 9286217 410652652 979638778 164528988 207917444 936759956 369366909 340779418 417397905 332262013 514353590 444175017 877676451 241447804 6373762 695490584 334023907 335914106 909357300 860184523 307185391 414579190 737262547 404168314 872700246 161425024 128312857 230569520 697372957 845483327 780640373 211272908 805647165 402309740 301252298 74747011 401834274 138653141 670111406 471796316 444920109 604709211 949548012 256382643 844471091 626276724 718289154 188480950 335005949 992573354 561598372 405302763 549131462 606658841 167550263 490152104 539766208 674378997 230244694 844278938 430749839 624069890 126151761 708606527 209070028 305391642 287375785 635641451 586897027 17843371 157869206 765819591 88133301 257807670 38726785 911860301 342732247 821544145 695461258 267528654 60721490 218827174 404167427 422962796 382451969 811000178 159055858 125265952 112072629 550136327 430300051 910523957 79347124 32066506 159490516 976018379 301016374 870850613 987750360 947018837 385120487 263476822 442024565 780508699 685447784 211573583 439483061 5772985 836524238 744413396 899241561 215457182 407411489 563486128 80031313 806114958 989642463 289525824 763195205 182072353 388692086 689527542 913826319 685142081 580443597 392514775 483092543 949107376 853442236 885128702 311306390 435355008 574928783 364458007 275050891 945713049 948256135 99066084 881682889 854341430 822353753 450895548 760112303 375623272 689776557 293548295 159519951 903412626 887040928 340502211 829807727 107208171 807335746 833424130 998675979 438456319 516455961 634562922 384763601 153142318 877299101 403065523 87263011 920010028 218017721 45917485 381497625 113151103 589335377 803367223 291009276 719017733 886809270 692001225 483702220 824911723 365581363 764046571 509196731 692240566 95238788 827025979 11359408 461891774 731845978 720532332 405615301 645558958 429134808 949786817 605727946 904985990 74012441 229965206 328691391 282047129 240584360 959357656 67325022 540874767 887097093 256390535 46567310 970408804 378854951 581977915 235059953 576412647 103428085 119901853 155147351 303062844 959678668 814314985 484497225 151780827 619184636 172884338 366052223 736403854 488092747 841119774 414188394 9437687 894970480 709174758 963382955 261706504 505962393 291458136 337833114 443567497 872291814 845699861 944140992 186809749 118275819 948366419 498009437 271998237 34030642 121024859 261366755 983962211 891418039 441982732 418544504 634854529 296381546 618508375 428152696 511148512 824582320 190745281 863274481 40104129 272906979 274060004 752737318 502025656 325942733 392463085 337671437 70399531 932929329 989146912 33188817 726686423 356913730 826394192 749322832 220193868 811962922 29176423 199143325 490307948 882215557 632125668 771483263 589956592 348062179 72365912 24342001 913459939 300059209 503959016 699796384 102019364 315626416 520007118 7567472 181507049 762098821 909531096 249115896 517154615 61854248 5095143 846448129 84518507 361470317 653263474 379390730 663626420 246253342 983220992 104836295 877844886 106095734 391244977 820208030 315090792 339169191 212805046 861330472 922199511 555536981 205751509 841845174 581326945 112701978 942292966 381345482 312035547 749636352 167469656 520576921 503092716 986210826 137792941 261031568 812476303 141534123 521804281 304636620 571636117 623074380 101120103 178837152 628139041 718858443 358046644 445520403 620134954 30152439 248905906 489121119 250300924 689153045 211269831 807572339 348710327 405099870 787547243 882481266 2150862 636446334 519611821 916125746 642850186 493965335 348650671 333029054 694888325 666619964 486848038 429300949 848978991 766871798 879286747 573578344 157243469 479225539 521453868 781380896 671353204 982023442 66843019 30304469 109925522 366394568 361599230 733016600 54707814 355726013 136298142 106253482 705256963 462723136 444127512 964541955 459523921 159330703 309981487 339092428 517162380 323329632 962598455 288600677 306801603 331421787 5636764 733164896 25496922 934314910 207092313 107026436 343883401 380174648 340364673 123867595 572071130 436793262 654068410 195885796 451253679 743594872 491099581 906931889 361771193 430108549 946733528 327020618 980158594 534608819 317401708 990357753 93522661 313766744 463171438 873264316 317560208 772088252 833371114 865292487 110552201 645784732 801327740 84650495 705004710 419781801 194787285 990126463 602593811 575340039 868444476 842900247 923214544 76657870 506870026 401018312 918200113 960770445 934783789 722562633 54342236 539977666 457415590 424321925 516792526 76546147 411537675 794842395 864942295 926709336 629080837 402002397 263391513 664249598 907076307 906704977 612771597 695456933 285842374 978645299 424829309 598187283 257011651 334697969 560152331 53826048 55362500 38890286 74286249 988183960 215051863 495132991 904504351 290457340 196228637 899626673 730877065 986201281 634803276 574534849 89712854 847768431 376760622 756022754 965848138 176034307 282975392 384456251 4349180 520373357 688729236 344226854 492350041 529191955 826090895 591732403 827059615 48080972 914833195 777367074 641796707 404568294 369771158 9987693 155569420 761082529 861881618 461335484 735356757 793775538 872159859 952219374 389343951 343497793 830981540 801105431 126708060 252975339 334831394 119387900 859523509 425878848 888089983 174152089 931420646 691446854 750733281 800048795 232082381 275036404 610340480 255907303 652027294 456221880 462462763 279577873 554580065 397848050 111940548 906584038 83542131 550400631 626003647 842653922 333256193 329187854 435383719 194201018 958883728 488630518 638699930 261525460 48226424 977164382 880070088 674270922 362505572 477350124 966269943 852114155 401295571 479131959 472808706 111386554 978813338 127694413 4972885 229715565 174194528 473738286 322239859 785494639 456462625 259389518 634621553 267578334 24276908 74829847 330659960 815125518 315742245 498302309 527849798 62284804 760463491 117109000 304505005 551496443 873913363 906554181 157877011 697268963 551493619 847897686 614007281 67816669 96839576 91792613 563265621 257694144 774077769 465576597 613761887 740740759 351334561 349079161 268055751 843105569 235927313 469946779 829844310 159531600 313982043 980375927 96704872 976584906 712070936 485404797 450577265 408968555 422694707 510514322 297898612 43498433 251304044 63911311 526728333 505420431 279522519 967222721 568692073 865723978 913401690 562810471 311289033 703393695 380164658 134510136 531978499 471082987 996545390 631593434 433827201 182615489 523230579 175672428 461208383 620623720 925963126 134809597 349220177 425021787 553989637 849767442 984606043 421335751 392028031 823173156 488525847 521731088 346776215 744939040 964453331 600498508 147430101 375479525 510509808 208386246 138706197 96224457 492176484 221485949 45641221 350562837 13183033 642380194 650679467 819713924 768790028 264474398 718237406 814120648 349127566 212641289 201446856 549730053 959938823 596691252 920134250 526706004 792498126 964959392 428728344 90975554 526970066 816791045 265661177 123932494 466762004 575296332 919027848 245541742 528203818 589612821 702443030 411950474 428682942 984012594 5180229 181467136 63727885 594928938 443270286 679289375 984099177 457760439 985961404 957175980 108107448 854407752 328125039 920053344 901248754 740352384 62680219 996965479 937473958 671247797 692382470 930704610 266692726 512752754 545331149 909825894 84466070 142257141 708217055 893123963 382003793 442406322 40555136 111124767 816253828 548250830 349661128 846374208 628884513 784742052 872376098 130845253 382780846 156792644 440369869 474848902 452610755 628427247 872469854 538227407 196768144 686533532 85170748 849947362 932578388 630337398 875017763 787730929 392684519 126222172 153559458 764191528 67873329 256770144 662418333 868234785 264258224 921769289 211736523 878484333 471082231 824323345 52128569 39035666 981658409 96054631 256178373 121705736 352736386 541622061 14626212 359478715 714006990 799351547 810762204 169849996 634211312 147544986 124406474 407867984 698435677 322982027 877512094 915105231 728305566 113307262 803738075 944423494 901725138 388007387 114697688 392959462 27785001 278548284 605977921 718649427 258594410 893435889 109547926 768591141 347655022 742050938 948729514 482629738 100776866 160810769 583335205 862678818 177058953 685589534 816017155 220202434 558487096 68767936 178833939 321963186 20322777 973859147 123028601 77419215 434472488 556124612 435319085 618222569 542607353 455130215 435472506 953646406 457359536 651754018 972010111 2970653 36528839 177988887 933273521 888013340 223724620 759317278 165438807 650977251 544381792 961301056 38010381 770297735 916974777 778110781 774306370 33442576 25445408 10609671 5040826 97876219 90224372 100524101 888924428 191372984 411333286 686097361 536080420 589859117 214318907 669083450 772665539 774989105 347694541 352432707 640257530 161891858 145368842 989238882 581147059 223509008 827090355 624121154 22076200 109780703 108390687 69368641 421132650 702865449 542098869 877933043 778092507 889171466 593933173 397166749 213611700 75396498 54399600 291802811 219724672 442135879 42415435 467126394 651322271 955009440 156916673 264583486 447078596 897198475 470189342 920083486 591929208 381292263 714029764 255511139 938581396 604821771 252828330 883341837 300371659 948545854 435259864 252095566 455942942 138712380 766793964 242732044 667964773 415504311 563082904 526239843 916089805 983957204 742850593 713523489 918173269 11655850 889071586 391999305 20378448 931597767 376435655 901314961 720277990 217391530 101881298 840184035 62886546 959129418 795565210 103218911 548340133 592394637 683603911 279960152 953616834 962096082 592563863 925985747 709253216 642237544 565957725 604316683 137228363 896346900 65037052 786819695 196974628 554289551 215347568 218999714 378358492 763290118 926952517 834544123 949750845 554906520 71714846 930318851 316196193 914863836 860750896 939539193 581300536 493596760 649317572 146420561 270976775 690568459 336602040 611303216 317299940 93710052 931435775 468808946 601567291 495659848 928753436 367656357 80098892 341283216 755851179 512279435 754530986 339223944 696060889 203473052 904366525 560930290 808033511 447911169 753069377 331983617 661715626 143085978 980576453 173180638 725724686 179317881 822138925 950437927 831841166 885492581 747996209 981020267 343156670 371417688 579960028 993551023 642399170 543963650 790851597 231943148 436650964 5081155 594643961 780043150 190343617 907400885 153643943 883545591 295421804 847481119 790114162 999119610 369277770 241612291 468046219 543141472 191007973 581680913 189398133 944065638 877731674 136180146 205476231 208438845 42310106 539686782 715068782 204667529 511113772 737790150 784297640 260173795 301456682 477877003 951621129 738651991 374604095 280624004 791520058 857223910 437041392 564710813 224686901 761742341 797437776 412577650 246512843 644602397 126701706 276939352 373696798 10140937 11593818 903701333 336816167 602155419 148729492 998801315 416237361 975942679 950477724 924087089 814505308 37135541 930421485 52057890 856400923 490926115 299634579 800299595 286134198 334310402 807631536 669051833 179163593 360149348 726940154 663521577 973691331 57869653 876410939 200353679 337048424 509669199 717148624 944936848 919271760 40496579 443884331 843502599 689417573 429995671 199185746 704268419 429931369 383211427 250314845 691224520 652005230 78256947 481444347 556581450 389864540 910004872 151325166 126468277 83487854 770640471 969400458 500830311 954341813 310362440 778409786 94520308 118326420 421511288 501381371 348982178 49465922 38511095 454865120 199085546 462133067 563750731 632198796 108904445 200952335 912040428 53359803 668720701 771431234 994222534 884866489 505228991 833344106 884007866 508563433 787681744 514888292 484315676 38555199 270397549 163964896 937473846 35932358 362116297 116871648 607691716 797561116 251789515 726072381 372606327 739325681 33540237 8478242 53151602 124223116 656218846 845854351 916781264 663688006 740818369 731563735 941167388 742358540 772936940 224953122 341783767 450576865 225785930 195489516 513500149 751602778 286164602 639498628 414157920 248194592 834291021 762064526 834066548 762199921 582442059 143557250 355103105 958923936 889859375 243337002 705050189 408051345 605517927 422213160 489853327 690273086 292170133 419042158 877230709 547266100 929526288 481500099 268962591 425952022 494914404 637097285 510254881 897440793 540176333 534646242 646325253 226458247 809305280 666771421 981404615 218742588 921513827 815089232 768902487 713528620 786164496 238378916 562913562 436535259 859919318 403175962 788520810 967883747 485780728 610842693 518629137 279676274 48014700 550857614 44174802 259334857 616535644 778452143 57224929 862107838 405992873 560281144 167890277 35153211 416882787 418040078 385123581 537991613 483565394 791853287 827491384 240745941 693716336 620831951 44163355 857531306 460521581 529572261 74799520 590808694 897471786 984759966 650019889 797077253 798444606 993892802 718259249 713130553 189884020 695404650 52497523 696542088 445149003 973497289 981361089 807322492 330249589 750127967 761947990 168718898 4123480 519613319 658873700 593914332 968229776 310018027 219726736 245712191 723229035 140492810 26230129 953844789 215117675 329958841 98607380 331078189 480840136 611586975 796040059 927461030 132551916 428582327 879327001 64103863 419708917 639581138 825683031 961713802 106384694 769363986 274259987 867284957 433234614 793803633 76049948 258165376 326821551 769395256 371985335 421744089 233984016 385757832 875820061 5674083 340415228 752388308 474153722 54038058 415508809 832033893 332652784 109900624 319540482 871927765 66378258 285739660 298176741 125616020 796289129 42325414 503057126 808108647 112082035 691655676 127956138 862238179 66086303 882201857 93430797 944669942 968814802 879030456 859949469 521231967 187109093 545036349 826290972 720527153 786359588 259110972 470416897 317977428 308268496 322234232 871609848 181881348 27804318 83534662 573562718 487068752 888329015 420878351 129106886 549580700 342294454 164125138 664020598 92766239 675073325 759678623 732562666 146443622 812974624 603951901 504000848 631392975 295103751 103823621 373673227 780898319 242114257 333927844 820886321 292938669 179674460 459135069 686763277 541164420 162174974 51892517 334683805 116134725 341334015 146019077 985653012 136114419 775041308 387962012 589641562 277558117 37421574 836365978 674099335 581272263 454832865 971421254 17998955 349775129 856284614 698507257 689508874 692686511 886977345 583915937 589055512 244269743 666569939 494696255 554753409 211236246 4126065 454427497 809288164 469578675 262280195 486391753 597236242 714595755 309491686 220676508 842175636 701169395 501560683 330729523 311335971 760983129 741277269 981214069 465257006 331759740 378412639 168487003 588533079 550305359 331632564 576263027 821103094 199572890 266995573 838035295 664465556 87588217 637837367 371557203 843914866 56278747 441190018 204969370 858538496 34619140 153958739 366565904 72280934 643390475 867723930 486796457 651947774 322676061 930460093 27881450 44357591 643899960 921785876 446656363 801578036 886382641 425001834 234103387 98088971 509588399 807407746 506904059 790726535 452095597 838137744 436523554 123431303 104196092 143520444 445914039 778673692 209056830 896275619 108283707 439012111 188494828 749868757 589737789 310000728 623934738 453717080 271760611 117523624 713054094 792964643 933902951 400929760 664166292 9318820 844844440 767475096 118588460 800833339 595378773 609768345 867580850 429756093 232763670 255890531 749495382 945346546 780218211 534889896 596638874 365682454 786237018 115354319 602446295 978267484 298125101 321724786 112092344 566019942 794852258 663498720 820264380 637398990 58615953 460400028 557366200 688759201 909093482 475019740 989033043 260279007 552023980 589563402 945228425 927363836 181180271 276491847 313030953 796616034 496605147 980638691 928286039 181051373 663948463 983283174 682373898 545337197 80122299 813937547 425024399 758701096 325544294 991368895 924248068 306997845 891926824 214335654 440610270 364862113 899206161 885310487 606059876 956850862 842514753 774099483 279818289 50594192 495814766 307309682 329180086 465849422 837583457 619443213 854052277 494662759 367670649 183600533 738776775 825348682 5515814 904170467 315085015 58586588 951285103 272389766 11558309 957894390 492083565 693589568 859699525 789139941 164565453 703558025 921278621 628166121 917770322 520959243 436792810 839540150 217848145 896448036 696686907 668784629 676312116 713446247 874525429 914344388 766811128 741085467 784711757 553394994 281941422 968683962 89168849 156297668 221740285 760277108 213536224 53582579 38829726 694116778 148150061 100006060 142372063 542859635 824122176 952049614 165518369 505247258 227646708 698837167 50150746 798892701 709001978 447687064 280831124 391958320 403276373 407534916 4100460 795261880 493897437 320485733 96622484 887268945 525115836 540577567 351365457 897905609 832884723 682334603 619476477 787746850 236717270 583873590 910097542 893272339 29288588 620265375 901023214 290238088 981417104 903644604 51126729 263832350 164455987 699515510 271718082 365003432 943518999 678677544 820108566 249650349 298904501 853508132 102888727 792123623 208725464 436179758 409041322 26611653 74656032 840241663 71326921 266679018 614169473 602566595 25992194 755867564 238062017 870515355 146312439 827847061 590496253 718156316 975732700 731157734 305602084 936677839 536680956 131902223 298796154 186875311 763900981 282439992 744262167 623913134 567425911 497662140 71728486 158734128 574873416 572726184 378336934 943563661 354670147 382944577 942767212 945859731 105639060 711839355 936882719 472186371 751066238 5177474 507623547 327597840 762339541 864485685 635928591 168910051 942955396 560137638 751145919 396136217 387394057 266606747 855514946 578412099 30638580 739290896 323873701 892348005 438900076 18706099 923777990 322384247 393699241 773763687 409520345 116234215 557907835 196201665 237474535 192071445 908509122 772583566 545551690 445749206 319967731 827048779 993881395 529351922 561927834 562749356 807495204 180499366 796167634 14237718 131971702 873305123 839864270 7257380 745640405 708834829 554365780 498226213 307954110 82154748 579666493 865813916 720100360 183367422 786707447 346357183 245767512 914796819 450143235 101789433 524844459 487682480 470403703 414754409 183682256 221816125 806661244 468710497 740577003 149595287 909210321 928351975 810321140 928764814 359000646 676353591 700159286 556816744 905754178 817018686 770989520 167701853 613307710 810687521 666117943 203568921 732895048 436081844 372961970 55203644 320969857 834047748 538722525 701829085 109349279 821973966 239764519 491539203 205782636 339964677 126835028 734703915 218221125 220998736 527149563 523521989 722259099 230248329 756156168 659386295 501844341 108836159 413144892 439904728 451201517 348933429 804486056 68244854 318275247 610501857 507393590 462754513 585280637 332747246 55228448 882943901 514301613 579669690 508327031 852354948 696777129 715716824 552147101 24415394 894599022 660150672 404193483 60651015 289051150 650006618 599837836 513753145 274278446 641157991 576610624 815017903 273835912 871156760 283513498 480129879 305070954 887418244 32136482 648020753 62166326 466251511 17266356 723824689 840452832 66886765 871099648 747415041 675260787 80719643 455241224 379751484 636729228 238537703 93809316 930109333 241973725 38830571 647291649 175313966 599821740 161123062 805184286 190098977 297287505 896096266 827779405 355534843 259060923 594303967 87865528 958842683 30315500 566017887 434666458 43782872 63693688 737822248 371642626 962256824 991801098 509529357 62108884 194511162 522675680 859669141 75727559 861001133 761791306 490553211 812653479 354321622 140184367 310752556 43182100 523585647 25711239 116660812 14962434 149772962 838697954 204822321 927603256 590796434 173553631 480232550 345025745 980075730 491576246 583609130 514427325 954405355 512177583 98640879 449960513 572150491 923744681 777090267 546754163 953885585 635965332 395311178 324477375 312484210 483279351 893048650 289604965 840557527 928339563 819260957 964241656 336848013 414458397 808962747 471536864 13132371 116316752 230049613 219878105 876220767 746100441 579924659 986651762 841312730 704755873 26834175 837477263 49976927 829620263 880883192 407494376 671795840 303475195 837101976 648784520 799347009 202696516 327887502 846757966 392259995 702516283 834329277 178959471 477570810 120851630 686224315 876898290 340486592 264636542 14405459 60215090 693967296 265019937 962880003 656328800 210821827 990134048 451601791 822610431 495681286 84008602 985674028 982729062 459469242 123191232 828660390 376229186 917259139 55756375 822601786 284446737 842741498 294483769 424463213 471243943 149983019 242560724 559731059 36428973 957383192 724565929 206414264 454349085 386104116 213832398 472658523 510122183 469463016 177267309 840361646 713503440 262066705 729355331 448252344 797524270 57953408 913114146 180839603 964659501 709448569 340963951 162623886 613281773 122865972 558306468 611872107 317165793 548662368 811197391 355309858 234738257 995387035 285375761 812549565 581549529 828456699 522792993 333819130 550512360 831280776 515134407 266405836 101041474 443937983 381688929 230520026 132801407 189226513 190128225 846560511 870655369 659225185 841765580 662416328 985539874 606406026 851529660 329854969 902484060 448285143 11024608 210346504 80934430 463187593 246983159 834803361 900510886 732921429 904345945 128652064 368756226 112347107 883603054 234531866 564574869 816810064 226143796 276370388 726131609 381791149 993663933 779648714 943782295 438343037 159901870 415888426 760901872 444917051 853502914 966267990 453702232 43671762 55615813 867100006 919723861 418240291 242860954 984164772 274112196 354404483 643991478 642802190 193302357 669880121 748692898 773021399 365592074 194719748 771123964 324858854 133260988 508564116 534010230 199837013 26940566 451392525 97849686 983104499 879208088 403673991 257442293 140200899 982821397 663571088 843355712 982551163 850520373 731974056 423304506 472426502 921219956 808783555 808130680 159234306 431118369 670087627 719204515 988405059 796717280 204128028 819725306 87630926 837464105 203023878 483282125 816478687 865238470 398268239 972593155 24539747 830679897 930197934 767116693 193611134 778683604 916217425 190825233 311102599 616393470 71019352 512437272 171880199 22309365 465297495 785154272 327957310 871874471 844403928 662269618 753400990 711464535 315132119 443551341 372123214 732192542 558274884 617707777 527716264 157077096 419039877 418675189 998332603 693037683 136923377 819655138 485632201 941110739 76515158 285838582 229560522 154366449 818184051 852278642 806644200 480853895 198230655 229065260 180085249 333824805 965822368 470594318 670238761 648177072 681645173 593778069 252966181 510332638 476917645 217668947 689383920 37895099 867034350 756195437 304641081 693163302 854661775 802772509 447028964 603506772 677812445 952460593 785154693 525034829 628553018 944242826 162066920 714840938 105902201 463762334 537788044 673946077 960970596 96049911 760104226 759302697 938512182 354874034 761018899 576501414 355050018 181811969 230266872 846830335 717928906 154219177 442668576 977870515 344402376 776070533 645816077 375999383 584536616 238723841 235583223 721680466 524307948 683619999 230865479 377491167 966320519 492052598 188639773 803214095 410543971 288296366 971208907 476446980 694889051 241115909 924610648 75946935 438162497 390936909 119567615 134121844 963512921 74090475 545503661 271083609 485455836 655124826 916141190 318264026 612587639 820844966 210624352 400438848 207693001 365367538 667788358 582940453 286403816 512020466 430249462 625946105 817149149 198725745 76723812 903053697 316295459 320147405 473638709 982813522 644338476 956788598 348372549 943278170 485073372 366563699 471755809 694315864 228439052 371471068 879157902 627924831 206971144 2513505 194322688 983761495 839160081 454298817 66802467 658591612 507856348 434015572 999350102 506700253 821314322 147705474 149710123 845221598 799439566 520038986 275812329 768684726 520628258 387381948 706261258 349668082 171771282 716622975 739916477 844457712 742748567 362203468 676906597 927927909 879310109 852760689 262936 566552536 471457797 430587214 178647072 770317604 661386660 321706459 91884926 373536762 32153922 315000097 570125922 269774941 484361884 861919676 175430580 369725220 350672483 594165344 72803471 975897723 995603643 935545937 125576384 13776482 179575741 864641001 572134219 50458412 418172917 955470102 448688358 269409282 162526948 164952537 9657981 258722654 87203199 710504648 812122028 464821648 795655854 5951884 100235592 384788285 397183950 547384676 620039639 492472794 61368112 67890081 820254227 11263029 719095447 814282280 226391402 427991789 359606718 946152435 889157761 343895797 397381328 493019536 27668909 964270613 708456686 154648480 854314360 825660265 724356269 92920153 507289890 648508384 929830037 177096453 206165789 407687358 88781731 996194945 603764624 909086234 935489479 802308031 308133590 62764385 988956263 951225156 382886908 455731153 440521435 724394666 872500038 796887295 332111599 694799135 204456106 693047634 743442276 547329509 477528659 740333189 781525614 726885072 516797215 987566121 166395959 617990347 793158434 425234464 628340059 773397587 749221409 368134947 823865707 122353146 787871768 637964093 450825066 641741029 859584437 887275598 755942995 480603471 732307162 855403658 395691408 555976964 572031774 737947383 271164804 728357863 738634317 579594738 896201219 686942828 282697444 770319275 733175509 36016158 127605398 236944548 239562294 663176730 376490697 706965046 262041945 819340691 151685914 472343819 521733344 699915852 405448661 244050341 950860646 556244769 719004797 531749590 816441333 847331966 4694602 140138566 955162256 889415910 168678054 320456945 495440555 756037485 132047279 650747302 294717869 38758975 882331833 306067849 821781877 624593687 433780425 414801041 103066322 629954504 685975834 352318475 314436618 487283896 869180316 465929493 237557076 871232864 388367728 711519012 279922526 332069581 630764909 40941694 390505927 320226850 54181023 774880449 444948902 342910228 824550082 373312858 23704577 618332780 273764043 336658447 144474199 930827913 166878560 21384566 503990039 229234651 667445083 55741819 641580070 921449 136589898 718157790 605459294 44752716 435435762 952575155 76000009 987156274 593168840 699432160 298655338 858169052 453116278 932060834 249549364 348900512 559085404 257936904 713912081 619137511 755893261 534587254 433758236 614816688 845845454 490751012 129006951 296486668 294859546 262285981 593229430 246850976 223739680 606831425 600723138 13513254 520898115 332232387 239261752 239717100 200506009 313604779 694580663 913649235 245531245 53949396 348550038 259186513 515327166 451496687 324946971 287575536 94178749 420831999 637704708 178848716 677600595 338114523 865087234 152430745 150488473 282445488 662159930 842754203 335440733 415467132 393253571 223365933 64339108 586392724 252877866 267317051 598761762 108773151 476620016 990513095 19364036 241710488 259861770 105989735 666228262 376649552 15374433 683456453 258962718 706525673 447003984 806107678 324125999 431068 445726505 710631876 927893014 162849012 280716976 222051228 229261378 757661905 455366814 347593121 300199763 65800550 413190687 381089119 808783010 588381564 578538836 186873976 4461497 635796269 415591890 484500259 645351126 72202857 737161506 760902312 608446317 650991988 365342015 792755173 774382755 947258214 407319835 989006796 221473236 566512810 661681946 910901219 606649101 961898879 297692052 467982530 691703186 556110970 899337560 265144472 470293082 427472130 468389924 620007335 339841166 369255891 546902318 99990724 503000078 304793980 715022238 614946264 638386667 237786337 189841681 811307617 827250414 856385977 335984152 731022833 405506064 627486992 829551287 246900910 704122624 969466311 94493926 847342545 186267296 164235535 541881107 104516135 790495624 157662962 827242655 61859475 762450050 556308682 463251036 199832202 83652364 476600264 115288853 35767957 599239129 116640622 202562055 878426835 874571600 64853013 265630048 528846708 963918860 835008872 31754951 597339455 3461978 204644071 439156179 671891469 50039742 692193894 167817362 194851659 589081966 977149579 742531588 263906940 269428949 551164755 79018142 575862709 638372626 743044237 169418440 572410399 226272374 430309981 590068575 130791033 553416458 135060923 589146676 597299092 419035398 124370674 655456394 157731029 547515227 611821601 868581788 889162934 227864618 900386237 494848277 610583364 750291275 544755981 441012630 238952099 826453192 366245549 511815475 990377862 260989790 341113100 519277046 256340407 286801667 272024301 794332251 315036309 143162714 444989418 616760786 253729169 850875456 86785260 732161857 194170544 61960260 907130036 95019391 308627212 253132582 209550934 244687322 804076883 853952607 604041657 642398866 29186630 340027289 736072216 693022044 453884731 301060403 620585603 189396959 108369564 89764542 40511071 408642618 882695782 423855490 509051362 361579388 56845483 525795578 773705368 296218155 172097552 419348307 49726433 144498878 740589136 677656562 824838000 854450211 729055927 32472555 569750989 912996410 763816103 461341834 786151636 693277271 781253654 674403278 719152180 827706820 939655182 338465513 723602930 903308349 460559149 259181761 945234659 108492914 994635811 476659826 446915893 258817160 43841078 6125002 667269862 953534104 12456384 5622732 123217483 848776495 390042800 125534510 385129099 364015565 453349637 573631194 21549602 836472678 174983511 722279537 622261599 38146276 58072398 509990595 33608422 245297570 190871080 197520472 718516782 4785650 265853239 676226026 888434691 521234329 268310625 432820457 139734789 838677070 641219743 419939830 536812584 71245886 609944702 354204520 392794419 174531723 470227617 880453578 399817025 530826696 220038716 71191643 33173314 321290879 93315995 257216396 795473531 694734763 414698649 726811014 754293506 648620862 811724073 432309409 456116291 714153116 71427537 355437550 638035326 347517726 60335658 885515183 181048390 536474257 110682978 709726681 659359491 790859188 823085753 442756761 975775089 312967357 473139719 746360524 194189087 976432085 33503797 524889733 951991281 875276695 705111999 160026507 192337567 870064533 1917753 609989592 46752051 415457491 577901511 354967067 107803535 567950922 443455907 945513015 736478693 116784486 710426778 826192834 114157373 798706313 369528975 768220807 189574642 18276230 677252087 422895364 550609973 642680870 565785180 680770285 761549961 469686951 813886683 63886247 358459461 393998391 287378085 233756877 468348437 15198589 980664705 445114031 344164986 204234513 968967752 574852302 429141573 289748479 222846824 396451426 554794272 397934665 973791074 983003860 839587333 600800098 426192205 143381060 706648004 456232115 538072912 595558916 160068482 840363545 989107499 811704090 779851061 516589669 914912943 83633346 192612905 162964443 807328321 940381418 644398461 686805172 875426140 850822837 110950055 493739420 601009420 94485241 796420076 379268148 84384883 945629376 772998889 472919953 69086023 469012939 885413133 50354363 818789970 215738122 812014108 85270831 803760113 515557157 791870125 218939742 431788694 906835702 712169133 993204012 885646662 889368589 183704027 758436977 660703772 107575595 144531529 740793723 756796100 335108295 330480353 900044682 112301313 193673612 6937054 646456147 898631975 643400921 669691727 9127806 504304289 927923519 832695191 212250408 66282092 358594823 102648304 367211106 368687514 870178474 98110691 156506287 139037137 948880215 102029009 442732938 916883913 121358192 335381614 268636894 883160530 271658765 820787520 190058892 403661899 478262391 989417508 310952425 587635756 712071854 280558026 32240189 58579837 821673956 439757620 137094469 440665565 413615616 794878011 371021489 195037436 30552860 26984970 926813607 317948193 781073416 304964513 946958142 980146084 284587204 545837139 11333892 164475253 822043401 426635336 492119929 192789396 235303105 986819324 809974929 306476950 551593611 24691646 157022262 835160615 428644408 165377074 761453252 526333314 589411665 521025232 65389964 982387707 678257038 809283426 316166481 563676790 862176608 530989450 359664845 930465004 96595048 736302905 257340205 279276781 719770110 293732153 713667217 969862681 710535083 592483749 490262670 118973606 875485615 913145452 825333931 752529373 760337788 582183377 465326823 527949469 655440952 229731053 448077873 973774295 621580607 620395564 667297519 132204816 940507807 347299276 163042168 226433250 622125467 435506785 655859866 489932667 410718505 502514004 827101716 923886876 925180020 400738143 137799965 55547035 791519066 341871890 984476380 365356001 172900078 936062290 11128557 96680557 251436535 990741972 666088930 522480592 305963888 103970726 514079168 340968495 5480710 876893607 196888702 139126468 107722653 276144906 348226697 275547741 729371083 428916695 100792131 850574812 525607004 415459690 610946431 878481589 668428492 417029874 524360711 465428339 459099088 652427763 166338071 507981363 558365645 56948933 203745759 461951783 613201759 548645138 902363908 543360276 359658452 224052316 459904287 93465044 10579375 235559541 236090940 701535445 455427365 117817348 150211933 699871129 870106275 338134791 52338421 601306164 323816774 975667532 823749486 252935633 278953313 52489462 101983139 359138093 828064507 854123774 623930726 274132762 184910 976784304 782508027 776631038 802892873 836546858 203823771 976437073 348578575 485933536 106775283 412881443 844191862 253323035 424129954 554630035 308201609 682961781 267721918 542996057 824589319 879396702 11456080 221822525 241166561 891157402 649529043 397859997 13527232 297255361 215935929 653427435 894063484 439320766 649279974 133787949 215366054 432179025 159837235 437789820 149751039 975124621 365753836 413161349 89797375 768433754 749278547 432436491 966431567 618693620 841450523 507198051 975851599 1937002 308616173 786327030 618179985 62765344 145577190 142382018 129215580 636568141 887066135 27243482 465224746 806516606 944040964 438610145 406092074 94644753 938235174 234403987 222926526 346768827 393710697 973451325 259633150 813824771 672826286 954253632 914070068 38551492 475535434 202195858 841439070 876503471 429086085 971402300 993440432 98305223 28910877 646791645 465257231 387893731 590836672 122964261 572608406 527093551 800094613 242745179 510064149 65392811 838738100 819927256 186581901 241210538 743311273 956091274 136888501 728754261 907011061 776848754 673522296 353246758 281112717 554815270 821242997 334156397 693024345 669859408 841772414 117297102 208851126 341670956 539196441 98855361 457191413 289042446 747298562 968259857 429804506 644442586 403477415 995256926 931073565 524342410 809844907 290921115 75651308 428009132 796748899 54147472 305849191 186125537 939828572 785065561 492294691 200298592 283825875 936055781 335405480 736829296 871135035 959260024 108519155 737665009 304167099 499778857 97183733 542833620 546398125 445706853 854880785 920774046 384411937 140354666 294953122 589817578 595125591 760698061 632413555 835359972 592657481 438114292 555915077 429514958 437860895 586019229 751611980 696174718 552750008 395790678 10972338 936875230 362253608 385360130 727680787 7307883 931318324 383468890 312584960 565090231 158187736 433474665 833724284 472009192 509108673 628782607 975007106 348768054 291457748 288786560 977384573 256492912 222410661 440544450 116899021 923342968 55792129 936926514 479189577 57322690 463877732 453331456 762593464 519316442 481756803 336411054 816170071 973014235 512405956 577757077 745240662 959296760 155521473 344170591 936388442 583996918 147010249 662540430 102650877 945157296 185175647 986852084 424309578 6237586 484842425 352146745 717454657 777760031 567612482 757849 784274777 69876844 952178712 651072291 605162233 269894562 316296846 162254523 276890109 224612991 582514860 495046936 857545527 175367382 125086634 817781639 12149996 71548682 681913209 598331686 908878163 232654487 888640826 580623210 302066458 44639370 6650820 829719193 622356448 41766404 481288226 691556433 58584252 926325434 658738195 422916607 765707957 220777336 359530633 651070825 482954567 41948825 642162218 383878949 575774436 44366481 687146962 973716767 843861361 346331236 577996559 203714839 506858181 866218028 316369572 340539168 178550573 125991318 82547974 704644131 576070123 418554981 426527970 422271066 442502578 743385838 458818453 171312085 350760748 597671067 98516914 89434360 582778740 586843752 981012352 868818683 951489180 341848937 268520314 262440553 326579241 771307842 14696653 435405217 320819602 240036013 848561117 267581785 385552068 466385400 672953024 509085462 186514593 896501124 462714817 315375028 124081020 933768263 221622751 55343588 562361758 924826699 268994891 144893609 496027589 241789229 799571437 477407194 119418784 457260703 418795488 129087140 666662484 876867814 433597426 963279877 917468410 8757084 227391013 872673618 586428702 949983983 759648817 243813554 858088257 868545696 237095423 398421920 299654489 768352774 229283887 412443500 90042700 136958408 626788499 137528251 613709176 890779687 266998450 510280451 828705070 894014321 282317382 765058832 59338034 986134159 833148862 228583810 729220157 100746104 269803709 778600524 468801915 795064763 242552473 954110519 784947470 248565498 368027357 636301661 808477833 862432105 463297991 368121774 901707637 669186643 273881290 116574062 334349263 318875797 468955918 472603573 270621832 976547105 639018475 115428078 944151044 155707773 40171890 183955288 232418460 189606978 864728292 809440136 319761180 424654749 345080120 28783845 150380357 395824080 426311577 411219499 983382604 63601074 176268774 226043881 975768921 143828267 4692273 997299971 668568585 243259834 335259713 878800176 670691565 651389167 382429200 462098300 326692361 106486512 194990156 677344456 569644885 842118392 200490458 371945029 143688512 869240276 957134159 329854973 938709800 686596708 725492597 309692746 259187171 582160928 223530445 678239581 7675961 321140624 291994375 452625848 571287399 706773715 282218379 599633588 901271453 465088025 404741107 779512828 279307905 819734057 153096079 815111952 82537899 454048988 447479007 390090180 789739815 806726048 145021981 391537854 615528950 907432438 942833585 18620411 224929932 145356275 716851386 910757706 756086611 70534851 162253708 80744655 220590375 354233634 450313260 651873154 547000281 504475617 640650966 169578926 982921900 407027815 49229432 96169330 520137435 544823597 723729204 721720131 816878609 245049409 73833698 991625320 668737775 442939844 398628747 640456061 846314889 531819628 949004271 722877681 734332905 490644995 793189888 325360007 244489867 196250597 472180069 30756057 940119264 808759174 126267896 566570960 242809291 186302186 880418888 677167917 830519847 186869547 95151128 932809220 892223806 632048375 963577566 323354172 644617043 184555792 162559045 180718352 353138714 190100682 352981163 953957776 592743739 381603984 378571172 98562849 736455890 130804319 289679477 638852601 653441010 16327240 459048090 515842468 929940253 627111667 859446336 49259394 619807949 230373911 240120523 589353798 627463663 207844611 864827218 97980280 174245475 366124313 308903710 528413684 886864765 885196365 287364655 776490601 773959303 709788074 844772791 552832219 400219965 512131533 932422812 928114722 476924495 61263720 521064442 671127657 246974434 697540544 742704031 914926511 564485647 588911920 563298958 301611593 450533731 385577892 176171900 766351710 717619038 529904927 752029526 637148010 847823604 350218805 44363705 783682236 725928719 355478161 216634745 6410743 70886666 581302641 708756763 300565141 186029367 724637733 428840794 96910687 145504603 333123219 343946149 628522230 163868973 877282230 2436255 595384398 717416154 883249690 255057567 641065773 407186308 826443874 931249710 166280369 663910334 178184643 651135115 912225223 641577490 866546310 139087914 771657653 41112955 370747529 80692528 894063761 841877995 246664639 702838265 640084935 445320390 978686124 356564371 708224150 372960101 108707049 316034624 762212500 149651349 744100262 143726072 499487782 731096597 524440611 882534628 847929097 585508123 210348086 767859172 959525068 882419408 891567816 327364874 860772179 700330447 725385816 194159645 642840406 945574314 782479734 275148055 973506271 727994725 58774345 543752360 3313616 561013753 647216650 200181424 535725147 610499795 444351367 556982984 884270984 416518226 347657633 867018426 155857842 655761996 20937422 188068613 67788042 468445833 264626327 218787162 18116627 426758471 445767707 213708577 433543716 343363509 315291787 280544757 892337129 790897784 43150764 674373156 683979234 173010984 449594968 496379184 205169891 806675924 122072317 311663184 921508499 188201850 918509596 973898480 234683885 936037008 700490443 137132844 184895425 495712382 261569332 78300761 606427956 566782753 165486356 308019069 526131260 806079306 225748540 549559762 142466597 65327933 927766804 57798983 774359566 963610931 857476883 63119103 323395437 650544600 261919560 209844687 312110215 341768397 494494420 528402628 313579769 525012775 602419566 68173211 58591794 602127342 805936605 845195592 944652278 546620575 709451906 670053488 579757276 188600747 536208843 567972334 552048337 461009142 965511361 706962257 737419156 254584408 530150779 319348572 425378615 592459807 337968040 888923782 770634404 367592331 738382090 249359224 223909910 324368209 215219189 40381329 497908124 439265305 390465492 818031461 73033113 157210880 444634021 197053754 563562310 464554007 674153080 860810121 114217775 183743202 840782835 56077187 83306418 432100569 656378065 600537994 930252163 306548202 867845982 258612147 729228843 932648693 453139453 487839307 473663108 432677455 419131298 914455631 472791359 79409728 887129689 32546290 101490014 835204485 375001021 115692315 87185082 191280590 637508481 766833124 339169406 355736129 821734891 839267612 238652842 64961525 791679572 311664838 785403793 58311800 911848361 92195992 872865883 496864842 182793965 723995773 530993028 592026464 317682613 40950035 753960539 221019042 954025130 385267246 570666628 783048044 41526795 416809811 711960694 54639633 658024488 302508606 692712446 322262611 770042344 343996253 665031355 702881517 140951364 464655954 353440927 790820105 155691465 832928372 429318260 657718474 808159514 466436431 918232661 126654404 740496748 26063135 168304688 901280639 415761417 197313369 3392075 970070007 892515278 246469923 116626364 397240863 424456620 36530135 536776432 522657881 341967658 318312324 209117221 527416575 294828769 760575341 896002543 147637470 940815103 119898248 622434743 237525942 625549253 588775935 934119991 123222715 264357385 75311539 60376063 122186519 774901685 557658804 297361396 87758437 23320134 210535882 482947531 875332408 499176269 213495791 138319506 281475474 813119730 926300883 69897000 792898925 847939692 741101911 91328704 138405686 986779786 860770322 288715618 818453580 584269357 478787023 334734442 366443910 355663051 113032205 555319559 116870570 967155438 81867646 150954685 596036087 186311859 269181576 762345956 976489628 394624076 403368903 641466406 249831742 986059390 398020745 899051269 795547510 740266276 427513168 998046803 701997905 461351850 251185236 444180151 268491214 120072594 834725887 19571247 958035811 367389427 392403311 390648457 131452537 343754997 235775223 245303272 492643819 66305110 863105182 520411973 875954059 424085992 225634974 904079084 562327198 953299728 806590950 683810555 129395291 240274505 936455321 221421542 866519663 77702047 538356365 256780534 833259387 527332149 700891597 22508229 532254612 205201343 894850839 790815683 411471043 745716488 638968415 71755444 369959811 920243310 613108042 894389552 139329350 334942561 128923572 326176802 776441072 780740583 707584555 892527178 951873370 715923227 783289457 549035195 873777616 140389802 965154813 979032925 775574676 247749716 317291131 913457004 585907033 566042737 793338952 613538807 408856008 676629609 177852663 647524962 344670206 432903739 90469838 516635364 534618380 33802743 553850441 701569802 885734774 810895428 406014614 91183666 262951861 688590043 773247000 670820881 683068597 341569289 548769253 218411310 662189143 757148721 670705480 924009828 978306544 97779784 139212351 107766884 27177673 151860312 780068861 93378608 839202973 580753149 911529833 558582178 989216285 213727979 889495966 885992163 740108143 891071334 956085353 210087924 267127467 678508232 405698254 779478824 201089629 377326334 39853956 806713768 154605062 608923147 910188404 73705454 541189787 943302276 794297918 886161482 420059908 361240083 457651379 794614112 21499038 548524021 928671580 213387432 207015354 785905019 244876530 518574317 177113628 760948877 42213604 585510095 936987516 273755682 78969812 457441089 736018952 609204425 215808026 829715979 225018080 767047459 806247999 96224841 158063257 55935078 457016196 543864554 290656187 798172892 960321625 418320178 490929987 152259682 349005030 929422648 431353122 936517353 220415877 115104361 422630587 76792057 120991557 955511299 35041129 995273769 390059113 135076251 926433527 995090856 350911207 216633239 406905382 164144823 253711082 115808693 815817515 297322797 951208785 99790722 165518382 458032114 289582637 955356388 164285899 667018628 746988359 44171409 991320981 997103221 95507095 654820501 783494286 638740970 989165262 776965840 167182769 226657310 354514893 493160822 227022441 551291613 358353708 279874445 761190679 67635721 759524532 912722290 127277967 53833753 250743525 715430228 748299675 431559829 692169073 911457208 215990135 274020507 951407551 226207731 793845843 797900637 294472553 927969459 692331733 319505569 512519358 206326903 340231060 174689600 421728577 597496850 425932702 602485671 321243176 89370924 667058930 920723033 395467997 105254593 853755655 183195242 304049537 407007648 909200196 92719621 937920356 244657901 248510341 638572264 153514382 310670495 756406941 933207779 533455674 893908995 324875470 421819485 54656597 897510455 299815506 246855375 128980995 274269872 76255702 694535494 829566747 287715764 362992890 886903525 246172326 145203937 563165394 42469217 958687332 117997988 578896488 398634883 669069126 801657795 358215479 132155818 949774325 919604692 989087153 698637382 506920266 411618243 689988539 288065630 213414100 621416272 662786860 513825803 71544661 541140110 293277265 619383035 830266181 538920550 162716268 620156655 337731406 19015442 941074992 74330173 300503246 77572258 787695175 806575182 714265688 839155578 56008652 370571297 598241331 183844050 926297297 922310854 429544665 154596149 936947931 421508580 71279994 403968258 440998241 977011253 148171382 732822254 855732816 583044612 200421351 713837184 985686154 686826422 49569301 714203284 839306850 892899390 59061247 892695513 629371425 528705446 705720281 602424147 823083653 360709517 643708808 172938969 134913341 101563812 818237224 540822936 130920302 341179440 391583111 151660686 517503537 235016331 269365927 310609680 508638994 304934819 911874623 473594692 763449491 548818042 977662011 25929384 97974951 588612260 385482552 225640585 824867127 524387532 548995849 559210125 310574752 463823663 702260533 491396906 789788723 299530271 973159286 747693612 935046836 179451009 589005371 633830195 651200220 471288400 493800743 993979442 108850647 875831064 559225232 925957618 65651655 50869883 98751744 872176269 553416255 621513904 23781304 707723251 37448904 299674879 315535656 129558120 367137119 348256838 276834936 454313220 552687861 877807991 304486147 926402610 750795246 894267415 650386134 887662641 558025379 916602561 767334710 350464406 833263584 77736865 159577367 622728136 209919334 379649274 146062757 495328131 289875050 196035488 604210879 610790742 875091476 700162943 872743287 635287076 366632449 390511634 407095955 758039463 208085698 135732972 75258639 142449384 799565915 923958835 439984793 186289353 554353861 626095904 118173716 706718843 249056364 456979584 370504213 196522504 949627569 934863670 454447465 783368906 922819689 266375350 958317453 660921842 246305884 619486604 620741940 412766466 261935559 984703443 559425221 277381203 586403034 14425023 290965211 65478544 483583291 269309971 306623171 124725817 699952770 200568491 180756225 603710497 402895035 843524852 94863819 803502577 842598631 678839919 26071948 46334883 310400378 974540082 507802467 220015879 167590623 648452710 957648290 559309889 747813871 873721034 638037583 893540937 10280062 566737198 628287910 643437930 857985487 787130105 92474516 60410819 366064410 410761892 7074622 206723529 784495629 938693693 804204408 204243651 4259144 808184293 40811855 626454861 227249376 85373010 739863424 730097621 908645596 807638350 506231294 560570657 373479867 882921014 663471728 548625608 587206893 455206012 450326704 418504628 656078165 638085157 920694093 175931558 211429326 762891851 20208138 81744050 357083042 165595548 47176797 857271742 321457940 747523289 252169201 676109064 95520728 806040920 465895204 149203357 270759830 1591171 935024521 611806947 561752682 185898327 149469288 178143504 401500007 817003238 844418361 156053936 316094735 940625109 749840941 574887459 498197469 6322398 879871141 120969756 996409019 686492752 774446008 659775011 429794188 181521034 341899954 61430292 673753507 121027459 871702415 675590046 786252362 877069893 388955012 269378245 715585341 924588909 411182967 268968033 381804332 237341613 562932866 205774493 597003836 713234507 420324468 817945464 396057223 991053215 441971279 877497671 358798487 477404569 401774283 856133937 159137775 278197304 575634130 855839666 182913922 699604500 286301186 664483097 606376506 776181973 705457966 568040457 243251570 404243897 132468957 784303100 157432189 634895890 575711690 354808251 945425949 923362246 829505890 510728679 903144204 279947725 143296073 436606836 718182519 411749047 149108437 442995240 899315581 106909476 923407249 334645025 40447668 288065097 192348604 106138956 787239077 10714737 556163528 222594031 444333643 767759226 279092699 629762335 877044632 878482772 585735761 494377035 955672561 119641734 408679480 52879535 466844845 60447401 121358290 945378274 507544985 478664938 374529303 754214985 850699638 786355340 871048752 677065633 500941434 641295716 364339709 53580665 457608907 334411355 246920848 759354805 649388295 452478448 5290416 568677645 673619647 19282611 212168535 338242443 447720696 111425483 377120820 227454737 357834408 702572913 609626666 490002897 880570175 252618099 993173199 364869843 766820123 761230770 953791470 231697010 550462482 69890212 269520389 855401183 287717869 112747987 134870216 343888029 637123303 157983323 492546972 449563395 553929778 17479536 400582685 698848957 276446322 965881558 574906520 434481739 701564992 540477287 487018642 589250177 879175336 536851857 975987519 785273094 743054763 561874389 903297547 613538005 477311166 101742921 166301461 593155774 474187593 660529687 354039215 355683302 297720617 433057788 691351264 128956482 403736879 947369674 980804578 6332704 4671391 186465510 835960484 689800095 77361842 890220490 397745736 916007731 514296596 41482372 838561190 502678562 623604326 950764086 191812040 873939465 216208829 504618132 694697580 979415127 698730017 965450857 541557893 622941392 671579919 649503762 444397242 465671691 751627512 716469761 933423078 428896245 82679744 61336379 762127766 654647884 35291967 256451035 110392974 147475749 909320644 668716941 120298308 563211111 427431053 150972947 924004451 547923278 849141327 82423236 584257866 634870504 756348340 27197448 728061067 581158555 201070040 57916381 388626540 634125213 199336140 824408661 590908265 321908347 96135700 601088278 235419824 3898259 824534312 595439832 254812323 196807065 204901366 655241707 927475546 538255382 344549726 673597614 196115230 869320164 678680501 337420825 246011119 996930996 836118339 275495988 899984640 642593416 274854085 562048669 763880245 566313017 460965867 242323207 979435436 24691698 895891931 757005237 651861809 565606067 165432748 246376451 244023240 506505679 147720940 287087326 33982759 343495022 445501979 701982534 562668857 952768780 815306030 97176787 474371228 581765624 28265997 668475438 374461220 330750422 960502549 195196307 603883606 82252573 73215894 746621270 106482158 872443802 19752021 330173018 520216153 934503659 103508492 799400603 576939835 435835141 886233574 462626214 892304363 878701743 448957443 892034844 354950130 959145477 300434938 281326387 58664336 557263093 969825106 386101556 991333943 259363269 102601735 808083966 581049102 501286283 304441100 488347266 481015151 374470323 114233027 43003461 468646249 271391102 215679366 567124961 916039742 970307709 913139746 422501251 180476646 396038938 31666775 967950191 414064779 502621711 657592153 688809592 751381771 555225580 537609298 24054920 658264442 867357077 35784926 666373406 891949725 236815554 619620237 667101643 676472687 631033470 764887140 458890420 109787551 985001 299466076 57664275 918267409 987969398 670716642 981504438 148706649 312188397 384561237 737660798 49058371 595554410 906367116 814345186 288266318 155456540 77779021 922289002 727753771 6461063 907899095 388327988 506162243 938792963 919646809 610506865 711752495 295564858 202487416 949180137 912731197 988235438 4339917 251225971 789045746 188541232 750602085 739367294 139216003 720371818 593502015 242344588 733825626 100732503 628203730 145766577 952524951 106513605 634521220 878046488 377444236 622831066 838365492 181963390 933629760 487977612 226836657 497834933 753393134 548309799 745878592 387768867 882200707 944220108 971664666 127366208 388564771 161140460 387039467 553379867 695132068 606517712 145671765 308468182 446674961 836554517 51153259 435750438 54688552 444920104 784613942 374382292 511684829 744183502 30732083 578742078 22769365 192654239 503609299 509382358 481498860 91678854 305699066 467267490 35533231 202939971 284668801 472769211 779768035 277270505 227014325 102894286 949283324 952723808 184681685 481275550 896301222 799697892 669447575 693641087 156668224 567681156 265627299 713789405 472064348 480486052 976223255 259152307 346389057 83881083 407904513 915861269 392399721 809342870 867901928 839815846 237624579 693047123 978669892 278342178 469321330 448511847 974748673 577076950 407378124 233328217 732539905 121576483 926740315 803878916 568992407 647592446 861645344 443998745 115999500 602560371 719324747 661897370 311107869 792427806 697296580 442440288 746987387 516716464 119387302 237927319 272862282 922259568 517623230 303068733 547399074 430390199 957105424 615471782 574915601 540404595 663399762 97762299 224662807 119583141 458918768 789000374 792643497 131394787 463256326 313873703 437917871 562192086 58513641 144969202 231750535 477189821 822523295 213083791 363026047 204972009 405143521 719638473 829059422 227377727 218424608 80318528 186877916 39927481 856061438 939641575 418448421 794260453 671797457 731941766 46392666 202312804 809130019 748853561 113422863 911492972 865643828 426490607 517812942 685197639 400731766 359588843 64543891 70622674 473603600 596873799 862282063 921054975 158254173 393983340 261509222 184122707 229012074 484035228 171581744 372467304 981910139 717474665 570944379 663039853 597561478 470323258 578109447 22225825 161772726 901066957 216913161 68675291 551709673 50356399 938433705 506284549 203418675 565473222 947307396 314566556 782566745 745332936 80078634 352322098 744705879 616743361 160640161 608046829 222823131 325478033 254084832 802531845 223219143 262213484 207163733 806038345 974822322 988857688 67385952 573701275 22507112 44455602 79471573 305066095 474546278 794088361 320021374 93804112 387868511 674496706 294665623 974723420 896125625 863772498 64288080 846213315 829266449 5033991 791526735 663753803 596629427 450712416 346735147 519271119 616059170 8380976 730360562 972368571 30256022 111091743 963041700 201840786 1023609 753070633 409440181 481582953 900047337 417101597 542344847 414460777 103102778 266444831 413169678 95883344 341124465 398973734 717156610 415289841 343394761 927074686 981450672 547445935 78298162 340549192 354578513 299597318 583466445 463516405 777134482 169574147 497007985 725735887 908421395 249542 954168874 990858353 190165992 658581767 697860532 248306761 935722779 50847375 999224580 942530845 588242471 457221050 254687424 597770627 392827263 105642236 525184962 703016807 909552389 285456728 834997144 658650249 753366675 224347882 405988615 516636924 621184630 261890911 84828804 248977833 210128877 454076536 523455161 133372106 417684910 574568075 934220038 762701423 463276130 696315650 801765374 224545020 142504229 252650713 589379046 666111401 583466503 101963556 727876409 127852289 445127821 763598727 6528294 226269027 787357744 337828028 266214928 126638468 167617244 239783185 32169485 560745195 115728755 597055207 518926696 503484532 718169672 211386676 463891744 450803406 875798949 135846402 928827238 794779389 169004613 219522798 478032931 946195672 702681562 295408553 4543344 843691916 512151432 123162235 994020891 601101335 711686760 11766971 802787881 414736846 477822982 978492248 710997326 802656471 622636772 45027155 305419639 378036400 169966837 642328130 686924608 9277606 830746146 468547279 956356734 404833887 934223561 975190839 774549687 940855889 671611960 159089612 242317221 27480136 96454454 651064180 312333240 380131812 590644859 415334439 396561040 222707480 548651316 706136436 735687046 539341997 116178816 453975293 842640420 478359741 456752373 308376310 900742824 570726712 191709467 266885802 284995206 149567074 741464559 121607414 198186211 265636179 67223138 510868172 41424666 202845813 386076888 6521778 778710843 105084426 114921386 340995648 824645767 276122788 65977764 3887270 442194422 121341355 514118791 582167331 701143217 607531483 563926408 855770767 912291992 114857411 576165327 463549650 495392444 842319942 733376762 79940970 774318566 594226974 612881815 148110314 453520143 308375380 433770413 720717941 776759782 220593609 735520564 742311495 100352333 522052529 480351896 673590828 850216924 661417235 463019834 514092807 827022941 959521098 697672687 346864205 709199438 781736839 430779775 661929095 359732322 573289804 835182375 565454292 19401472 49229042 122679576 961797732 473253058 303368228 941511925 673253118 118505208 563564130 384600153 155753339 877458467 12396927 40468815 342054216 280060026 117548580 688867544 576763368 863404136 757950539 130477417 453523312 428646156 579432388 734924650 623456010 972875447 874139827 168840632 239239538 15967602 837557776 490945571 736089468 784131957 122518053 983877617 81710220 327946673 926339860 235474009 458155292 816820295 586262351 42661129 934551866 758001935 198448158 188293281 39105287 648786450 879791133 35835702 768021305 342189072 712331194 334798544 401229721 662962427 452342203 294255083 335852422 57360506 942199734 206922746 850861169 781280359 946030744 701559263 854589535 825197394 231514399 173672565 303592042 323265787 438745184 395559175 609343296 613577947 517352001 674713557 444350370 795843228 603196416 293100182 414922983 199434397 727465130 807230193 863507318 137619567 730589093 169070339 625077583 164431706 242110247 845343196 522964611 102167769 173887676 180506625 298844087 588472601 930293700 755509228 476790950 588618623 903342578 893683847 340252316 450778911 148342734 408308661 496829179 748069189 967864116 867820234 418329530 568698352 788603347 334025997 627878369 50774098 280143279 570367549 976297998 28253521 228958112 319275785 728419059 873536521 116573137 770642327 978396117 533161032 962173505 300707838 328503567 519004945 211149637 202716363 982233229 778474266 253469188 567734144 827021906 818352461 786203898 651854608 589148914 555481931 162733685 320514149 88211480 642391012 36662043 599206619 938814721 357491104 986936931 441497794 233056512 534087481 574335255 378969567 922735096 965324319 928243672 165518315 399784165 11086067 126539674 848667923 282710099 273565196 94324259 936381558 171812581 657193973 189593745 22073514 951086544 538133997 799666641 685982776 439826269 845514853 317457192 472604188 466503530 647271302 99923118 678405190 345388010 524610984 337500110 109480475 489334112 443136476 400059848 469580532 872424296 731128420 677741615 236288157 688326959 45644085 865259884 426845656 614995446 580221564 589839673 447262424 983754130 80370966 722113318 895302086 537114863 57054998 778502935 432116032 298683528 64655939 950355395 714396885 936704753 975992471 780795703 55201162 607511886 218332865 214071122 320219224 7336921 625332388 568349255 839811243 321023071 99598806 729065757 563215076 907615428 641407010 394757170 941382872 243592570 938693638 975571892 990546512 456815118 964035894 425670695 221265799 328935324 213610775 947586274 207291311 29138261 119439172 934018705 768775020 506169088 66017293 175494068 622773591 516044151 584423155 110981407 6231164 128571173 495718190 720980600 76335836 192967823 855138855 245016253 459861996 895922888 938755582 429977275 17619220 377339387 513833477 121001367 585568306 461425124 540504386 270852937 962227220 856431703 70001905 831099164 864094465 862134200 780337920 701934640 711945009 244320642 8206482 679461368 699831120 532546753 497747069 713574589 905240319 747548311 840679371 868921880 218173267 452473530 497399357 142665596 192554324 196274676 67025091 736151722 462522496 909813922 738719749 688182330 261951813 630362934 576958173 975769625 442582410 953028278 261604059 622778373 515839783 986885434 215862464 388179987 187348072 667738225 247611139 164992298 961735822 486400541 378987599 90569094 743450702 28045970 565302275 166049077 843648080 309676347 861157040 832510621 192692657 483228949 389487263 19457780 516177025 63414579 480734281 640921799 914476102 721257784 835105501 132842612 851679351 437392864 665825981 913670319 455902466 130151287 963180033 991331585 723274439 82499168 346118386 433957956 567871003 336857999 698277008 925643560 357221702 965346063 388652813 919199410 891076869 275656318 70910032 753747640 530996488 369293196 199953523 563852902 863793781 601166976 558768710 696320699 476251236 308635827 514317257 368902925 23805024 786771730 183344821 168156033 67450604 883669152 495103732 651174292 730116092 15486706 839630117 692105877 779596152 460609713 446615321 323601448 570822589 411685916 154565209 735036612 493879323 744929155 62716061 935591990 567119704 273000397 316917846 485814812 371075115 306637555 597494565 519862891 579025858 543151746 575297634 707427818 813037629 526387229 816605590 431058612 693813552 873508857 547230977 299417786 638100005 287106400 249274901 814238783 140680984 985682222 134181368 42889306 983383801 812693591 483616774 896695159 36933677 850412639 318344269 416441302 892888846 735348192 953833488 340776971 843340902 424039176 530928709 204156 931411960 662287896 457870871 497739495 573613815 691899366 799971172 922434777 719013517 582863452 107509055 546616887 419649622 852718327 31756399 202726073 118957282 960186696 395060207 51116394 410234934 449423734 799584108 804515626 702976075 866626235 385670090 764272940 447909774 484681699 412791199 667927928 222269791 577990096 874895287 765519210 879786642 233818616 470092686 570011697 2168305 647367909 51390937 491169105 662602935 522557620 437292797 827871521 514297622 629698967 794560918 732425550 347710130 300613715 972836082 212131671 919158564 460582082 952960404 891931406 145729145 867355219 525299633 970514205 399409073 210545285 616698294 440419711 293562688 762219375 131153600 476587010 663949711 908260923 919155490 633398476 136249724 435968423 58633443 118772435 919177942 126810755 15771197 101588579 61999842 918556725 830161439 744602012 939682521 463665464 29242028 830923506 137946215 352310680 831631290 177666475 516667950 892906359 65915220 125360228 465956929 915954060 452915769 41525133 427987113 156504991 506417754 357520360 924667876 514030350 852194144 280875278 927548768 539571020 905498915 364364778 552060421 233597532 525568052 221636924 128793256 680258394 314531924 417056791 621949593 214851314 675146491 411129443 123615766 9018343 749742034 983461724 469523157 298177934 65662777 210156561 382261886 938206800 883828930 156704742 594133807 873134124 498371508 423365394 297282038 617893170 345400713 609383714 620886362 566353417 839053936 54175092 612001747 681376874 602345931 13755325 876055117 180319650 640007858 901526148 437194410 214742804 425202799 961335204 176567869 551020213 265117952 812641486 605183055 245038990 301035417 275534852 170107549 709925438 685031199 706178079 505517528 682189685 683296941 613970763 120416292 924296826 979300883 489990534 232525721 599780774 423201362 259206436 908519109 236872935 133401633 636565838 106925865 292399678 794134635 932804222 730486711 44909633 815891151 126385412 797688155 305584282 280163871 341302660 266354543 957558918 664875233 910631798 738175556 632929110 345862097 193211813 544126880 457118961 567743581 595964593 499311931 928715345 279560487 683965325 898062657 65925633 286827143 651019777 755948755 501852838 124162823 838727464 874270342 868892531 88169445 213396467 363686114 876235955 264595860 396950949 961895652 793715267 563031099 315572822 468516988 869814804 178942516 220911984 701586192 682516142 485565071 569082933 549502455 88331176 825928076 40504886 196598015 888063537 266564389 256444893 491928808 185273738 893776770 598131429 47926759 373227914 774685570 18408668 373276708 696904473 647062841 821310888 615579708 507469493 649995884 437333503 798862783 705382128 630599447 963597293 851274163 106359535 573342695 998611794 252225295 59619564 203829953 274533473 689918785 215567030 156268857 740605987 608382633 38392876 337989916 754501874 130065179 225982918 996663526 16269566 107485793 412522764 253614668 381626059 882232503 373071644 929129652 621453745 887904589 889174824 46237624 595891803 706254537 194184438 583484839 821256521 219881410 663396702 185759236 299874126 695872326 627528912 432245253 436912146 54917973 619747275 693894421 362815633 806184803 940564839 153073490 884935066 241136858 133306828 52646415 530716752 357904278 916336313 459307604 587707053 832650855 402787838 922444633 219970042 129816466 766301698 78440719 943695193 47502673 516319805 401082007 789294139 784823374 422342591 821054152 339485930 118975532 521896872 535706797 903685888 876092414 566553006 615005701 18177006 458382542 371324058 587033538 817736055 201016344 892977355 717355146 951913010 845959244 927691441 165968185 921160715 527110991 493831507 94195037 203762370 14008570 555130570 495046585 344386666 363277210 677243075 94741186 287078892 10548334 796318977 170684709 317124482 95521325 912606681 505016383 12683580 145676669 196713653 303838371 721041790 96676733 775536786 115632280 580550016 982714428 269991553 33006233 952205261 457326911 278751785 903797715 756761284 356828159 145427011 934079658 672364826 633542249 201787677 562680116 58115158 429444444 324075800 173623740 235755348 570027310 298168106 397526848 511885507 736439336 787403101 872853492 453954983 109529349 101114702 80045501 208083927 54025591 979503279 279111351 663219328 827382434 670097861 294894000 281906848 617318303 748118506 965344426 430230924 862803963 142142476 133149533 300309866 579653685 490487085 259116978 708546488 56380995 35186401 856541769 687031235 863802381 152049619 809769204 997082929 56628721 964323392 522443066 936185976 436869950 969443450 387422933 251785060 116630201 464550246 608639540 54088597 101280027 338227966 996908282 855937790 977911184 483827409 299594365 90005095 542565433 622075006 489452104 845595116 205214379 845070396 787741337 466977661 821878894 49151829 664555747 170425180 290380160 234856103 558269518 300909730 743030991 928521506 413060146 118041017 4715202 812603980 937396384 379890915 153580465 714621120 346686681 674316466 789260904 136864426 426373588 966342286 79833769 564833357 562961596 284549939 603597222 735414909 529982832 509164847 122548875 639194917 351169794 813933416 452860146 608743363 198613049 342261653 660374380 27997671 217379343 869071552 820450815 522682808 123865138 474423754 364372131 169474158 158318471 611633127 900133828 683781849 211364515 752426782 162363587 166361561 891758672 516328138 113199733 657693923 897362447 542998556 41081762 90100355 454047376 241063062 556736391 152521428 834651195 746693265 550989909 673042953 207813034 394092472 535440303 788875496 67853868 997377931 119100208 4098378 100401732 106584541 346669795 523508381 785816105 357797719 168178121 189771362 63931460 417815027 210848855 518666927 336994228 487555457 494115573 748509357 709059789 473560101 865230464 445485851 47808916 581034199 641661640 643963593 61139525 829057505 423567123 269991710 816407502 710203749 247925912 77284499 601437265 531394005 56467717 829991734 37754278 584529529 76654842 160697128 268079574 815308780 503547532 521397535 609827233 49262751 784730563 170361061 470293753 564851541 4670236 430877655 79141253 450047397 858231303 358548838 692899103 927430268 258586474 25787289 215252054 1622168 987305500 190966154 444510445 230912782 653367147 441795557 61029466 50825156 1143191 300784492 429795912 953955320 613776468 514422645 813744405 594344119 530136396 862528618 924659797 780605287 257530523 845572680 521380685 800714813 335136593 83204385 776693624 903667400 398744052 857848730 723538694 384516196 59060987 169752941 687685464 894965448 776849236 554370536 698374022 12180601 522399454 324992621 860374233 915349844 278422768 331264752 254793041 312333064 147042512 593301628 59735072 202024857 924763709 800401326 86299692 744155103 815608294 479723320 433698449 879305733 340206065 940307040 865836829 907850250 501798005 860629374 667246291 817103427 470727680 991096961 842212968 138247639 343215121 339818859 659638473 712170306 474822047 424024272 869804947 377460946 589819280 183730268 107948954 995281197 975566147 14905674 973171043 456312777 265762567 161094893 541347753 817442675 600101537 509916459 96586203 27475657 760520650 342649084 325143708 761368768 738771119 954301680 451051587 925439262 504360047 885860262 13330777 271612672 150291873 679234646 967465757 797621078 209782475 37759816 849176067 925935458 108716268 737815643 215520816 818500413 64183795 320234879 753077760 667830866 796622149 557639483 792316545 302473185 186930747 236664104 745818613 756755325 256981153 567167091 980447316 159243151 890974009 166269535 951779271 7873489 782340150 776069313 926320430 441076691 794346945 119469186 565909659 378592633 882315384 561196577 954072533 302581114 552752106 173708846 976337110 470683619 551646492 718176720 550265934 542231187 729521415 544736576 963623453 419227068 815622935 874526284 665744860 735386216 673568173 938954453 952797525 327736050 477593759 901274449 176582919 785389961 766467507 468142409 630277795 604976816 885085991 252053468 254436753 613904321 259364908 716104763 133514092 93210469 5006182 241456171 67008642 37608477 59962222 351238790 765993045 850733245 661220688 83779514 981667868 487911659 897882381 964685896 583747907 252760997 533513242 878686022 581467110 343651256 426875360 429804254 208551258 504969801 551563322 835219661 639758501 779571024 134215162 174300389 219337473 253588504 962369379 153029515 396403293 82813889 546728624 600506425 483677660 280294846 852109964 537956861 439673427 670187096 222360217 465131001 926078159 298786600 322188265 678067169 594965773 633060257 440954760 397350016 688759809 583618948 882658032 746154547 858698832 631082345 218729618 636193644 161838805 381014845 5466708 210498352 262386975 235188926 371830286 518034330 75943409 960007169 332579340 544175702 254526402 323208173 677331343 475445030 686196027 408149694 115387212 280403041 688370619 727684738 169851371 838111087 185748950 237757343 561840265 117802318 91482578 659395915 25564982 600486160 335007784 965390355 104267128 237754459 498298889 739177557 220017351 5177831 419742679 774493893 547238671 87887363 140147623 836440812 352778545 816923921 865265094 305528740 909606785 347025414 972343601 600955805 227257929 587768043 402962459 248719324 784775237 648966494 365054059 320717879 72866086 809383698 263986235 577659354 271949327 211567178 763714650 340779460 140324379 383048290 555201739 327322954 59906261 467289670 930999108 531258004 502195390 891293945 581137328 764914972 851600330 328041488 274242733 308144178 645716451 508521012 297786383 542290810 305598309 815853476 248137051 487519083 249199008 884858032 588459085 534042578 567561050 337007679 519477586 465373261 319629642 68005962 104952335 376616657 503614622 744857695 969373144 946396709 475612534 985989151 211479098 293561444 527719782 148646848 335064945 609646975 808205304 883037835 748399346 837193145 62580520 696145247 346224611 25193513 918161894 35705132 17626526 896794939 35413655 498912633 943984178 192457007 664294805 346300639 183981794 219447449 444756906 434476940 139855524 201742559 658649241 159438273 187083938 195871423 378899861 256683092 795774652 932924614 120022984 916856111 119081477 910615001 218378446 144391631 92155202 220479920 298381111 307842502 484008302 888660310 813182728 955862841 448441913 59557291 985295931 112829282 414924420 949085154 211969338 682107663 173148902 88854531 604990824 842815777 128973354 262485354 525707672 118537487 224921551 451042118 79574164 638800224 827029639 916464923 420823447 442239028 530044600 560584000 121905363 672812988 352712958 122319202 427141101 92639422 907703975 115916543 77913212 52829458 72007733 193105900 946172045 506701351 785090016 949369040 575918882 468019070 242188305 717564839 193871022 457113902 375835625 439608383 845699482 187362911 802225080 434882750 503015108 87858127 552078726 90803738 605642747 412762192 675277197 200737951 688757892 324816711 561491644 951460461 42429336 79644463 981864758 901828088 614458595 242693652 345349329 456381574 947286791 160416793 428789144 299250356 153363479 728150514 648411209 520123634 258753564 845802347 120526040 356325890 309944212 276847583 402541290 688070013 504757230 788332737 389278299 772772430 394859023 944609303 115067833 811356468 869400784 865611001 682543302 41232197 114363773 245213207 981184249 986381926 34360407 117047857 64599038 431116243 803776275 582361756 75435570 31981726 637512026 544544196 906739496 381816359 893004615 706724772 293039654 949760681 257949676 203989583 867759784 581240238 455928781 996845163 263532764 293862549 719685986 596498865 343900197 60203283 879194010 61708143 636622233 261436846 509337683 314432773 943766147 803691076 764652771 447197291 85365473 405978755 989775506 680258218 934575078 80871022 376399133 461869662 497973369 315991774 346365749 505631803 557529013 669773823 34955518 639432069 570451815 630579151 140321425 741013654 236640915 785027234 540597370 373376348 131024880 907019680 650430522 290812888 834967655 194593093 279928518 383986336 694751128 106668001 110269190 363963229 493565524 376685590 667158103 854166862 639528740 413686109 89682697 861494724 74215617 851502209 925511394 69038756 875546778 864272417 303879578 785654504 953706321 55958323 99727709 886887710 413203262 763074428 493924172 385150439 671231210 355562008 387656188 149671033 958857110 969717240 430889461 545615134 513565106 254870623 896416820 857213875 942547302 184889701 324085417 280301098 136155404 474206324 461908154 892105480 522517939 648264398 709725630 980115943 787427742 906138628 130041219 44111861 185815747 311684224 169737417 633846900 66356045 923591676 111437765 458878264 635022875 215059977 218638495 645163820 398531390 153119370 878768628 957507277 790386815 370039350 217935188 139956397 867937750 305091353 596284357 309341169 668825588 375435539 83219006 805798100 12672186 733873239 147911725 705351458 722304448 148422638 247526898 314367166 173615823 16007218 372839778 30589980 533248615 324479315 825392196 559030471 59139130 600034773 829814999 432882652 658596271 710706960 511060555 147397774 466435680 781322671 733445955 73655968 687356060 897780786 937771097 141818094 988612070 296542572 351134874 459548644 898345844 826112773 622398982 322819589 408275120 53613048 129485841 620637797 925258683 309056278 341089317 716292912 732386277 345094018 609498142 619791393 527058998 264429364 580204236 992931595 412468713 854127990 943520885 87736404 560556267 423709546 652409680 573233013 995653728 67884673 419190794 190913915 759009055 589513477 145437253 186391433 741345841 439235728 297128724 742660948 533842774 212839571 589202305 818815397 934373759 17057489 719555336 250486491 383133013 660792289 442092569 672833382 537241521 369494447 857670809 808194637 163101730 239108091 710249569 187656105 488456554 101746392 716040638 779616040 228125697 409491758 565766640 787729547 325700241 981350713 647002539 761472040 12715640 613502729 594032024 172819304 744203849 448865536 762872021 666072394 218590795 717252695 59622769 340742879 589845240 521787289 113954545 682856396 671094144 563969317 940863182 957907659 28377667 29008304 185905397 969403434 442239323 689089217 775116357 740126794 637071632 758519604 63532308 82826273 445958753 153127352 415891371 964720569 177369474 166722385 750079173 279333038 42860120 625313750 535345684 654364852 883086591 620411508 384088252 574492175 78825541 904059945 487884758 549175322 185171500 281693257 707311855 882399681 829370475 415805181 64433286 488829446 313175278 446613439 541721233 577905791 736882770 37353952 829901561 52473814 745037930 34061059 224156185 146013768 979998909 25233311 842781507 231861799 60440325 747400576 299283259 323747416 553748913 652365894 997153978 491050710 18698852 660243940 171753196 116302125 902739572 938459426 40338930 120389887 505323371 963597852 869988705 368161411 113494410 171162818 830057154 970543361 411349569 96465750 727315472 73936215 387377336 668541680 213947453 948846711 93197898 875397629 56396717 457296871 758310148 154211004 924476600 434538047 198772266 52049856 633764908 785847214 80715955 774799985 184241610 633299062 493374920 67622794 801401541 633636204 732492105 299792796 147735110 692627577 133119560 830634378 794556906 949020955 116571531 102266636 275600962 299259620 336361998 139279660 115079505 496477690 849080191 381624011 978065170 155653014 3878081 803792669 575479792 443152517 688142441 82854441 915523916 304135082 855975236 21389642 382798843 553575546 238959823 447020976 381845701 225058174 272391101 722953440 846568167 859465429 878192245 466131248 262923410 668259503 601110418 568174156 412556138 894133715 364420705 676376500 881554183 575322650 267177830 415872315 944618359 864884977 273715415 133787529 20493754 811465179 236755231 739505306 496305733 150014701 945234269 297709118 331447168 76063569 261779427 665191063 718986824 196708291 602813623 801977501 375415405 97141015 750917141 955168413 170732853 699974321 473394410 94118582 497372632 684037387 210424155 563432795 325652993 13273138 305797948 968259540 939742803 22603850 388928666 398622396 302050018 607709190 956432434 645740164 435926966 868750128 460229111 232079343 203093836 419249959 479202192 926279316 634742036 336574300 993668311 140984160 347198964 871332820 588045403 464091409 477673667 132103593 969352671 415986876 32025295 872096137 638036697 914473031 708085336 453152309 341012724 994239727 140033298 952916227 189031566 826272708 643324071 188798557 939481402 27299368 81544499 574226496 676490304 939017300 661237702 147229374 112907032 119908307 282047718 213910652 208269299 381943301 234951434 638788917 28076594 609621150 18494240 914164789 612227820 3790884 795699975 952834270 7258989 746872436 134022166 789415719 41142193 464670013 720349076 220039703 500118765 331346051 914321213 80812111 473402375 806362398 922234820 991771262 219722777 704913208 912656203 631664618 57750770 805149907 702043628 137245422 584191380 940534849 206562356 525738870 98805431 404429994 954677666 685060996 578432325 883023497 457408301 130047407 371305180 206734383 324676539 390574495 737936463 731936319 948822187 497052306 458277413 859893808 677893708 210729434 454932761 406403791 66793059 828936029 999629976 215155386 946909865 659110420 108811590 142312677 578199371 804239500 923294585 262207769 623871849 263502696 466992060 125706864 81704855 869396956 204028750 579721691 110995038 868263476 904218785 661913756 330942652 997754955 309101019 744158924 513954464 150784532 389651800 103363030 466784111 54756373 387573285 492696826 728664194 405001703 150360711 274839499 195756965 753976504 442507379 513556146 695612314 446343112 572228627 32214888 193655956 825947375 32172615 566807424 493269181 547003158 872075553 430065371 269460656 476960953 704585832 460636721 848881663 104416364 178209302 757292943 827687854 619082067 586437338 346292947 272640694 148256680 486048919 836323378 20307075 663251256 391605475 556943027 371290999 712423398 530956169 743457458 252876133 987581479 139533063 227360862 950240790 613011845 638486289 448995898 749068231 485608733 783010060 690099104 926389673 453253664 848758932 632624441 722262112 929054805 82599414 36319110 525433477 440107669 774413494 192880475 902936868 914119502 514523147 255412318 362242111 461078273 253515614 606152588 813887304 735108805 802304719 802599861 327917483 870375105 798611888 515722747 342550338 664236213 123206920 897445463 986949855 558014066 830997009 756361236 857502406 628309597 154983610 553717842 825408303 934474225 973144101 504663684 585968840 95271994 181452586 418479346 840844082 397866586 823147731 693475640 644629376 712966663 841242846 240348869 330968251 322394635 878513726 909389149 925322336 29839555 969307034 118356376 130154719 246529185 407059405 568137057 205956126 873975466 706374244 769202295 578352117 847435513 690630691 649865967 836467376 772014394 804133760 84575152 721233808 549400368 37134118 202191605 902210378 102455087 953286260 960537295 353388166 247355554 904981500 682403233 127251553 538736262 96010756 523901602 817343724 944424941 578509064 950212190 681782186 866466941 722940470 857226038 306417686 117216495 538398704 117710299 676148763 879052176 28211278 821566423 530574490 599367362 81999257 151667204 932348903 627117948 359235793 100053266 206115404 474363846 202544681 72700422 241239685 665378623 248463749 233419957 992783427 67630487 442804995 541893197 872543913 65613589 786481519 789861837 680498898 579237137 979200717 37006984 594721865 385029243 368176339 441859751 184188303 148619347 859518316 693018531 399935128 400849454 915725110 58589903 378230606 439531704 418554885 159758796 591578637 682299948 363367774 742321938 976776741 517934814 70833917 990068846 444402268 551126450 468561231 720101246 943089513 39620257 263361016 692216887 285379706 265590587 316257871 190836064 277433775 135547680 300674525 267009300 48690332 384010886 850883810 112894276 937530571 62293687 5648080 22564403 996316216 505275535 542438606 231513336 332546003 535269122 227167286 398309887 268911106 603603860 677947159 887305096 955721500 651817183 736640691 694220327 758105071 502671121 685409794 442372930 490555962 20856427 222855726 728191382 876029748 156221891 163744021 92774835 784196099 940791042 531250122 269984379 701445702 688845735 809224469 390200231 818088076 233933635 58066926 612668994 564875483 149350907 569364485 874860844 363007786 189566729 51967549 485836184 55580134 653518139 399133997 338014606 135748209 684280691 454285726 888767594 232878494 447792421 418649360 5894491 349789239 67900636 444462132 884183013 452788087 610485 657435507 793096287 843611024 520270050 347449702 956090998 878416423 607732776 371796827 305018792 313480915 857687137 893391831 31729098 215242657 108796155 434946319 121249667 657518483 13399928 245004141 906067150 709592348 466297324 659280913 758967164 476119718 177868674 122231117 629871536 645314828 722263799 608311080 826275425 58512928 132344605 168741852 447935451 64541990 889777498 991728729 136332350 224114519 96223782 720511168 865042430 581155424 852022673 903141608 168051809 443086048 520452026 871272156 627844612 789556973 698874713 499539802 80530775 749365904 631664694 890532438 604263196 889448516 593283503 988526453 387966188 884133755 203907382 621705363 919832498 118975257 645050577 160514621 949935149 212219895 590692249 588829752 821607283 750999393 552866875 966158840 990038889 768964504 386401146 177600809 989412171 750171729 99601579 185809962 409075242 209616181 133010487 658968717 481516905 276990047 892313628 741857177 773734208 824461537 623143533 469229256 909493049 98854207 467240398 714034249 416306358 388143602 406457336 544989055 221255529 617076710 871330875 351512448 915819481 652028668 857212407 815393174 883483108 552670345 180734242 279281602 741387575 119156181 90076869 229388084 104868824 210754205 621594495 588531412 797886109 60642706 342335488 278196157 436408242 593315032 955138447 900348860 425779479 88600200 963712133 710461909 878301472 545006382 741461712 721893054 499079411 24787531 538585201 615647587 272880909 836495572 924698622 532319584 883430846 396624817 770197793 369168266 569282472 301101631 556712726 70990439 274611780 790308047 682387249 947200688 461493341 571889444 651877206 632243158 441715858 534246137 126667903 311906939 297030616 918183545 339895098 318259957 398492151 866355397 862136872 211439054 724745224 459925618 295940224 761200198 765106941 326555656 611859081 514837199 72396313 115740292 412336675 197734288 52909940 772374998 235433791 857960164 66827384 577577316 252640866 266705368 159189607 172085382 889591079 586499760 816861394 296893192 590106810 883725154 107886115 593745323 814302301 326269465 8621588 504992931 569005030 822514611 1165878 223110170 530661951 261447748 606690412 861124268 76973541 670457745 383251309 557300713 585455978 746821014 695644997 551143127 88648692 137373441 855148500 728932973 19776443 806262196 28373325 793444377 465706638 197572934 385419449 258230331 848734287 992508803 691538546 636735144 548434803 915553000 225550504 248692008 439800707 903785768 81300447 112673271 447586205 257029545 702725999 560060488 696270579 495812104 872302595 759966397 63999307 707929233 810877467 188057073 788773245 62270151 788307594 195132654 99687417 979561954 448039672 414485943 604659006 753267020 654137952 59293120 232485476 779247395 337756563 873710192 916383635 58031291 157902260 169571750 90366089 858341145 671475387 612481585 966895385 651325304 722174450 450887767 265296294 25597896 57161850 668798543 595776428 845778730 85443527 885007047 282651192 977728117 641398816 548653918 283568747 326164661 12351776 829972779 269243898 748409254 626563128 245345076 587230641 688347197 814223658 286938360 555324395 707441952 253425807 800000230 849116444 883162921 121266259 900182755 538135112 128839142 772650036 667435209 239079305 526918684 601231942 30222562 632929420 173679168 213703537 877575793 304312596 615678716 677834225 299836457 208774518 717463472 906432470 106197684 695159068 475749615 143777666 840211757 466712323 349909758 76307502 318619558 117986364 83496024 606594660 316186019 452567150 951582252 237505670 241425565 443948626 840305373 419903302 726978177 12849718 774881409 756940332 180896814 858152059 246752099 619794964 862818299 679331863 455501954 566812589 84108846 704433428 661814799 964563451 666392965 887320335 964109299 578665685 523168177 265220538 92259398 930728295 203814359 18785626 985214425 463472818 290943245 678822729 639120558 919332359 649530083 960684661 485344378 329032592 366203351 318592479 796791594 700816583 871771103 495789342 175015258 428632829 455040228 57464537 987902175 128900052 299227457 59704145 31532351 435269573 407331400 473221844 264033844 836599964 102384829 997264971 783294509 321372151 822954841 279146413 185789133 181041098 24917320 681790089 957681002 230703325 189928619 108594305 810139023 227629900 697612055 654476233 156976506 603193095 673633813 355130796 161934495 62218320 594870688 89552135 420834851 177453631 143934634 919604940 200353633 238133569 580742551 145635457 728095337 121458069 387635391 487740095 250736252 356518862 366328049 474528691 788406930 283400532 404005867 938954143 109016020 818563810 664951523 507883866 795028513 962694921 220445953 658222796 469514893 352798892 882717154 397969268 999431134 9010050 563468311 891307234 365409550 763353752 759058340 522797372 285539276 226295500 122794113 243884477 533225210 742475091 124238108 701826354 390610224 680587827 175781589 519747707 33053496 747337930 181147777 428384016 565243024 850893893 82798824 383341433 610102251 180603946 260834631 279202261 202911664 158676175 30008783 432901204 798774393 837103072 904435236 191050173 226995094 210507485 474713054 703664105 860149640 25148825 183555851 442154054 299281030 614864060 489853099 295254613 311551227 957242946 367311667 703030827 670786566 658184699 877399819 508826356 431645176 47101449 261412624 192636268 289911514 742722404 54423315 462211684 806421220 842706009 813507159 940816195 659155207 539042055 962668567 959143042 532443492 28342753 760019966 786796591 818922963 660442671 663497901 649819755 321701981 194318988 222625336 233430508 90626498 441256297 470391977 250114684 134646260 428267913 152221820 296419191 12450458 314497155 595419425 737696337 817166734 70006084 701506430 281711886 180442464 216819338 320379498 803967688 342497744 516034921 172729651 959645741 447880791 595203530 537009689 337266687 836096159 570800359 129704656 928593298 149768967 769043409 585353986 592269137 714841376 651143146 635201227 353493817 931672626 626979691 618522939 223841115 975779768 447382495 953048 818077279 395380703 456454310 395208729 1806844 336661004 860578676 935474668 804882305 732047187 601796815 636301873 957625424 675948288 164711572 508817468 906753117 363994898 887127154 373642583 284404915 451687099 545326701 524844349 130542063 672095969 91327837 15681697 209790147 622497952 334018924 355276197 499750516 603077574 359536284 14226019 832302429 172812630 95979839 338852200 262607722 229416966 496747645 656704564 141286558 489346752 997277393 709210555 697806221 162853669 309389452 866624231 331547618 788218885 124600401 911078675 364888283 256933864 455077783 55170705 883230152 956932488 403169579 87272230 652921999 874416213 932658603 568860297 749993003 491492592 515300363 291818727 444954408 72726448 990305812 135668578 19703849 228511008 177264352 477433485 738591843 791638654 510589792 731911921 669991967 527583806 219730134 122075020 371932476 73402502 980787547 110782541 65181098 142783407 697762906 279204505 10369520 151222474 813887251 225637833 359911846 840195609 738998553 973715882 293092860 225075089 139721428 682265339 316157490 353169759 229710336 188822002 376767006 117846624 19969581 155244216 439507625 458601639 803362621 157993448 933106770 73362427 234196968 972533524 953205673 991326294 690524219 34278720 327109077 254434919 765133332 610869605 476031759 943578641 203259816 225973999 347830565 656600298 516591102 669472832 965580792 988750013 179394930 801202475 336580094 658795528 923415603 551532921 242607296 88005247 269114052 378407271 878320477 706993543 982079614 420085798 311454470 816349371 192848909 657665114 291632000 741644395 11769839 142512796 612369829 202626584 922825465 234883064 365948899 200577786 633020113 38547056 535554747 798636666 458959476 801064823 256328003 458880184 480721586 901996662 601759653 965009158 311137453 70729034 682849182 599779434 12035166 878128836 933971199 597614624 241081104 607943464 336487984 711293974 96248803 517800622 631985832 630109551 173368394 251402245 7336310 975355649 859190413 206441163 980814779 547289046 48729672 122002966 494286126 239819695 19122410 894855918 870350486 903449468 422863415 588370128 726192724 410867173 273475271 640607277 674450646 830656964 725482629 218351848 958081317 360113321 788070704 811007708 361603928 90045269 120529117 750273620 445299998 995195455 200842355 650524817 144079417 733885458 734029869 771819592 987358973 60386349 205880348 832819233 432585941 957158177 466537123 318688057 878420159 4470071 283450617 981356961 889961931 900859624 749841834 372846300 88568735 267293027 610801942 372651621 331608310 872798986 192261105 185095719 418575388 136951797 690172866 690361091 597035380 34316397 260068708 300230990 816269811 145459570 645345671 643617104 226095522 281745718 832689967 246274502 898226719 754444192 753017396 522050656 84741916 272522442 372528065 97188420 460844767 531309444 903293654 914588809 306311873 334067150 277332166 526757565 476761519 735850337 524561849 547881312 819085484 394602535 129479979 920390246 493858637 51336383 901764715 592555961 286510651 884916986 759011101 115834805 875560885 794637921 607099833 758924715 585621003 482378924 810332170 241030238 213648420 389736524 396407215 465568392 67015673 766450914 827690653 853706070 602683160 738061765 467127195 93897960 134737185 973950593 451696836 913327314 360946764 223918931 473267209 368367262 443911650 537961902 979718573 364871240 388940992 898340024 941087943 745274048 249081303 645339085 459425219 332336748 14301870 746554107 198917857 842292643 44437982 216802693 862034613 994934067 852828565 401033825 484388517 448506075 406969876 177300154 336452462 307774418 518796337 179087982 732714912 904834367 829748694 386872464 200199197 433292990 312958592 944649703 521561758 162924257 372903872 672177518 303169070 406201261 901544894 375869138 709877677 672754457 785099185 858862327 18469966 865950610 294260840 320423027 143809561 942729338 959560388 18989074 502413930 355402404 285846075 27751760 441915504 852606170 550694231 263354594 966031791 24205400 16265269 282417965 61957246 566041422 837393159 479689933 279875722 443177313 43397266 284417808 324614993 723579946 119458481 684961401 373072552 567023541 625473744 735424317 245436726 98241796 435256433 353864137 155176182 75966090 884911531 693877050 672889273 185690801 227196326 645139427 76755874 974834772 8788768 806134219 827844520 930453317 797372139 303897388 35293207 67932872 217242220 776087797 870754575 164106262 48908318 804231497 536848132 388031196 247983117 757279230 213416252 419688889 143230556 33344799 927014484 606011075 620016575 270212971 367272124 342150659 977361409 608763091 836340534 66582004 719110272 360537856 59324251 684451336 563703468 1200074 434082838 633869091 345024139 423936962 795078694 807245854 92273976 353960617 685796000 737379909 197213024 293159927 169330540 624187354 103147971 280251733 919684547 831384720 638021561 687057699 947551927 862228496 333940650 48694003 460927915 180370551 417065877 886413836 544673495 47497430 84670346 984654824 663624645 455356849 834133040 273914550 135254999 614304641 519608640 637514200 895596734 551783218 784439815 174642278 458395396 448709285 856025576 928336298 598985860 359016239 95797976 582601634 15670508 783339544 960358881 740072834 494108226 808720158 142373279 844786223 818571100 289715951 573200582 121088708 979590758 808002482 318697626 463166737 25765728 480591743 232275317 986870807 758597790 675027682 807582532 27362957 866514246 929290076 639348234 615114590 861662677 770107362 221961820 615855657 825061019 707844956 6386148 688000960 211650618 124616487 224699359 817968297 865904683 362555284 887325086 702640544 495201593 56330343 384309001 468946963 474703363 735099736 87739159 778532516 913433470 278296213 473051223 93981099 442948977 568769854 797519210 189834674 491282168 47166952 969428870 778692087 818962690 392976155 663879413 750707949 163926739 38330324 289727380 508627643 429068931 917539332 668389717 163386299 347408764 58088718 819414205 349994748 650047743 217181773 918848358 238202049 570125984 613735308 895479422 884183296 231993542 631064460 882548551 405247972 94974252 881428609 511314325 907336780 587838819 729736341 408862291 458538570 727372110 391929444 132937726 316735396 987157924 891740031 416002344 206648918 334901873 12028137 910392566 197022477 461529493 30528925 539558307 595892142 832103747 953916677 571849467 692133837 359867012 98292612 498669792 732629302 433667506 425597678 993523145 154697320 777086717 976986379 816082750 296963861 102164201 851291672 390037597 187381924 693868238 396367685 201116248 420701359 244578647 78227767 738138357 389157253 691138819 213681800 583724301 414259881 419866280 586144834 204812045 196771665 207197675 405857384 908609912 43004136 723705288 681102958 981828962 132459916 469584144 174512571 931254006 565351056 832051430 449810990 993144818 912340732 341628226 172082326 981717542 11074056 760418158 90306361 317368825 98654629 825654411 960425550 264679140 215539956 102962701 942332035 875818996 579739340 100913723 629150583 248488524 626138680 888134832 411130945 87934881 117070071 754130141 164104679 575511740 85990395 683920516 311085544 763777020 150221802 118125630 8772787 524397521 782021536 364822519 704812078 133947202 907697835 927448941 975752240 386363496 645072846 364910772 912374022 301102833 34682750 451463348 943248882 482394782 791933032 962877353 721922471 217988549 619083241 271910307 621178063 368460751 876970644 986249988 173041797 754556347 961244336 452326148 105351899 251228825 643771576 425852976 789846357 743964177 243202521 606216935 494679405 16425178 101250679 799024092 39415053 127439170 685728936 9651863 50358551 114717613 775819447 372118004 46603233 607202062 417695138 420061346 60788657 902471023 965759901 694571940 258859334 53700207 881617037 470008532 73444943 462330303 442742414 475498331 299068401 300516772 803202670 555030075 139275077 96940920 195519023 447618757 23636951 313768489 782236553 198794019 69158952 113090233 479354469 605342415 416450093 44266172 748646755 79511834 790308303 644601053 354035797 719381414 388017001 864897369 565877442 158851308 917864525 895307394 825517668 726558392 829644095 778875709 787685290 762805415 692217080 248564101 662226999 625094320 52204196 232913638 411178337 592090520 712469093 156428034 19778739 653013884 49719246 246126608 496648299 427176011 254708840 386279256 458858492 91633226 871318576 812861368 278869134 376244878 726637079 923716130 442977657 559401349 147056257 727435291 478619342 14209390 233722311 831094846 808084942 265559260 322634933 102022327 77856112 109212983 871079692 197515721 616452319 523322682 847083521 306569288 147062778 888852854 418884796 441700896 869011923 806158030 991334106 632723148 459134257 717904633 414369004 738070495 829337357 791194372 792761590 623041919 796502808 732730829 750299888 122429157 872750132 930919049 468262217 829987550 288122103 158930238 921580895 965342285 215729707 81903434 606546439 666956455 32556881 521772506 183733772 766390901 686141721 890755700 774795944 80582101 246154731 955330414 778036748 777515258 762046049 845986420 448713694 107324584 715585482 580620038 586229686 218841784 292390057 754461431 96668064 587089050 938680629 115597551 760929949 934740942 312005079 929829098 354073377 443688554 636104110 917787319 723290006 214346647 275071246 892266619 339866328 278223380 718032380 85795115 921284792 661055154 369515188 239072021 820405369 895806677 19867172 22057560 28214614 728554746 276288622 37372775 269371642 953406251 829400426 711561098 518319110 451797388 847085345 757947740 231905934 370320594 306446931 930593614 360578204 358620871 431095538 628103203 700165804 198540488 984563877 998494066 948971055 189580359 147230022 312907816 341548040 126321993 579121508 92418307 635735825 178489064 294580418 458670871 391582871 67850194 149132502 959863885 630413530 534164680 431643979 650004959 515531151 854157600 131452543 798574814 269623389 558051140 889556998 537641132 908070755 55441713 328517413 979788162 262191025 667579129 20288343 70670571 986317770 856554817 513453260 642372167 511155752 77228483 639793893 716910409 160701880 696742350 717156026 404438650 367324762 207085761 194886036 11852212 687002978 758083731 629474163 797595303 546236954 827550798 143945096 550355287 451689022 753121423 100143804 975313052 856933502 74488328 913295400 977563808 834835711 872229375 995991963 721183589 811448794 790582476 280349208 643712317 206294428 373189727 479540308 189544272 473682373 871935671 136163132 189118489 296143177 467701868 266868333 468397545 651210514 603845926 454409403 346213731 289084539 893014563 108231339 464617470 180419542 555731125 724918008 429499527 260215528 830936770 796769553 321874844 145452904 575930178 376912281 651424305 64817539 954675909 431522534 850185231 620179547 164394987 618800004 821547088 139304067 983193065 898690735 100070885 239474309 207207178 531179228 63526416 755353436 306533676 833685040 371952874 483985146 296087615 981245191 214248414 388602563 304420554 159841903 553911340 47942672 357748326 95222442 532100967 67247790 413241920 151527344 474938871 718045020 931621275 496651178 141599128 860866128 791523916 873135480 896577497 969054643 412254524 428597548 219182750 377196576 311801578 796480653 18352287 254291753 504263655 825405333 769507303 912307154 722952535 472808692 787886165 576332052 101224310 458083978 758433822 195696220 533163537 985373168 492474953 581202953 260634889 934527216 203148082 771643377 452724436 890715145 80900871 785486812 378500348 338500844 77231182 743844360 698011293 49148161 321362013 106435491 515838699 852302307 969761761 108146004 231723946 253895136 244296024 893820339 257552820 617967226 129975702 830950349 805686135 710452968 380015684 641153441 631459700 682988182 754954844 174995621 832452801 268100000 145924783 185139777 231698312 623451995 189796447 297528402 705886086 678405837 660642149 460416937 959210125 71119152 604892940 357114506 851241730 271320179 572392052 312311598 258672223 748783032 367531792 53180481 602157490 928429527 717709096 179485028 358586909 289253338 44233816 131006892 143527764 54607743 314420239 900037665 384869922 675510202 718344721 544562752 706527972 608674096 890297590 548729466 577749516 1882812 750949545 477277363 503044767 720791533 859565289 305208003 177694392 714373510 334255563 129778424 593307139 930992638 684081206 351898258 985743426 2599422 264999525 951922758 493042636 569302757 694408297 816509116 434202633 165484359 766111909 540304145 538603511 413739882 617556560 423060310 945898664 542451655 433761782 53027599 910396866 924264335 854359031 244817844 466775037 449298724 926513415 416542515 321900457 860851867 780178092 95005804 652040485 204922433 478237124 827129780 464124265 587394835 433635580 829333843 879597693 15294788 410426713 495235590 886199808 480627899 695963315 152292221 510977954 879185810 840313397 253357790 139509673 197405848 826730207 690534208 673895792 642390480 28633092 634902065 913972708 574481136 108997580 587534897 476197893 780428259 918037427 778366261 528366955 228657991 26186504 895072036 86845631 367322352 807955311 14667357 785335357 285557347 604091744 378468912 319826489 240342876 872395430 970705760 793696662 623669320 640699616 171432104 256049744 958139084 733999619 98814770 654495732 172506684 405142742 351172385 843745827 287378468 832820596 633008649 476342035 592439491 460933582 267656561 646929421 977379723 587381799 561102680 353135600 153772963 227680150 495214765 960575405 945947237 993101959 380409814 495850185 631929312 449807162 459384106 370451422 635006807 520343107 341185399 533805849 960361407 359442696 510190717 614392510 697176133 886987334 472194416 416953760 266758342 799016077 785818490 199001001 784539222 866668223 952754742 18958424 935023034 710168725 843342902 658683198 898541 689486618 492632447 537849984 350833311 553741614 900921864 587687256 556452529 935127044 850863679 264968340 346561722 859220388 594313091 671054613 880660869 230832490 162410667 906956370 913606289 970970757 627817597 843911379 92602512 323654265 400783928 222824630 432271848 758491549 835047947 844794924 860417845 29228958 153513371 387141117 269902789 190199290 991344257 407540224 39658522 571384966 210050762 98059172 647593580 196308969 48117621 881965675 793411364 148342814 383007480 388995177 486978914 89988342 565729212 648118985 351430009 78637204 488676508 532064328 754477934 73004527 284194154 629210552 628153724 334792531 141838698 911014015 825587346 431296736 136226261 58618645 531753683 293335306 500178520 908325769 719841813 758055191 468068754 468331005 220856419 201538468 684456345 463335206 549435515 20354336 514079350 222025933 482128465 211188304 548751012 500034640 973996426 940713162 879702421 520993569 366373890 93804409 228939821 499343174 702008391 209525535 65239877 927702488 977930779 301089998 859925545 656755588 505660149 686071406 597302043 848325389 119345793 923459899 719833550 755549639 694100252 908232260 623844331 897286686 309186137 55810797 857557391 122922509 178364798 522988910 576709579 682787240 279008263 28215633 221135651 138505106 922658 454905336 44398608 49341831 92541234 712107796 910678398 596347604 355270221 936634159 487340366 37886682 205492926 652479012 843305173 451583375 546672771 746204577 712087900 32771580 106199759 275552172 715909790 482441920 424178825 229144859 529728844 968104075 327352012 629879322 875913612 467839652 483720037 845553321 433596278 686452580 643746648 81157404 564325782 658252985 852735836 484181657 943614317 286224548 747981402 64998813 446164464 787008443 638164978 859754104 949795335 810429863 380835573 326987212 149867279 688017319 209487852 735410962 559124313 977578252 287466384 10059028 832286377 560106939 760969040 545315956 755133623 634020526 667374030 856128548 660221361 78656115 567509346 782120940 177077943 906261419 551910037 195658984 951206494 831865740 730498727 346162695 497605934 55872608 772763147 403669133 531880484 790347268 345711334 276550289 98447153 221897322 55851411 79168384 207904696 147273751 139412257 703672984 210586900 759914150 312882131 993511278 706700560 9086275 15085983 891010153 153325677 404559664 509858992 754015044 43324255 88993347 19473893 895742864 187621904 600069478 233618767 415732015 480336156 127628054 195937975 871816923 141771796 415782373 832488981 982314141 14794747 355781369 916065818 884226134 84971980 758437002 392854183 908625465 986854642 509062247 735149908 364494159 746158030 411797618 416909802 104961010 828689460 490369823 376900329 895986258 345035246 299382777 453115395 119236339 491247928 844114974 622157471 635266861 830674754 587580094 766671959 768935339 425352370 148352415 530726266 853545196 847522335 621231516 462173067 11265989 843286679 671023393 216077248 977965533 46028313 83563185 61938051 826148912 84930588 553744737 287218421 203087245 129780231 373163354 315278694 965610264 302093238 357469274 738179038 107157192 146386428 258763828 513961368 976583146 744876315 992981323 985712257 330850204 471500109 110927131 989081021 316663123 236127551 482813105 967056931 723573078 947774609 80537901 986281148 327166784 862011479 905651783 753993544 645612674 672709531 537376456 364339896 194843870 785332696 461228812 17150389 369324781 867052416 356468103 482494232 438252698 825799288 50444092 291832432 715986341 490672279 41630791 398203519 760588322 153434154 258121301 764674493 874520311 354512499 52756263 336415956 948072033 140968485 167172883 712879394 905985647 697150954 528092035 35913530 271852422 310740701 76578163 243927395 105719003 509663504 394495991 520101911 574208252 820569096 567903411 748928133 824043080 812652860 348534881 247634192 834415474 880263321 638166863 389395407 490174466 531270913 232318942 672334603 273058004 424244935 680921348 478339011 640316055 550529588 890435275 318709803 683197006 513282566 61358288 243272744 975090131 122510828 891435204 615872470 175214159 131587339 161934575 287287299 294260931 995918460 507606696 701606065 81602179 23105483 262880478 80637847 89881526 163041658 766402706 839804065 854185943 571284860 29536090 300325996 623219255 741571514 146238432 479243467 533735032 767530641 536708193 322125125 568474387 452174162 734547247 426981780 893811155 644064961 702030128 497521703 828106840 414470039 509680220 26644641 683042966 438802176 117262402 500439639 318362451 453230878 273822340 19482326 604885676 27622788 804841302 676325468 558503568 475382203 123217923 53777498 204141891 129385408 399601000 696805368 368804317 185825412 894357111 789842577 862741193 645215851 817796790 376908338 680140359 713211342 301852861 150717471 696240874 863977337 597567676 622697295 429114906 602318125 710116594 597671659 128685202 475470367 832879671 503995091 408996067 606740855 513109619 994528793 505863664 680330450 950478116 346857347 333592432 787985601 63927773 167988749 426964080 367142728 113578689 159815525 744839630 992192608 919739148 328712302 338161855 930433141 428016522 460611517 101058889 20786920 643318558 277193247 152494282 453289614 222976317 767120145 961970799 989284399 695264368 450110278 895434686 803903752 856520918 616098085 242899725 603629385 777490079 306942281 640958984 637289624 550012050 164079359 216792623 44462221 514902152 866392779 513348437 332682548 516365294 597694179 690235938 812921742 173268551 577857970 780906130 661704207 727452072 138990167 724808308 345336097 540042555 482089251 798755309 515776928 302942140 196619807 218754546 153828189 650195967 397674372 781088977 629816732 574295400 30876224 264445097 377897877 677520497 885911672 526421484 904216310 990852904 409632256 137452004 95179871 893722542 865381605 59642156 121173988 545428153 432132580 313567283 843779471 242953746 445908208 695248317 400070108 971320600 706480 951997793 374422076 640466236 647119358 797713419 146657682 740359299 315914857 244075132 513929401 227598343 240179892 911186373 479524091 371208310 140040277 200394704 404673179 475140241 284515575 638412759 674963789 662957487 693714168 260659435 19594937 686353463 256707563 952237166 599274747 342141993 468422936 377470105 272020262 427436438 675731959 324096247 699125692 40712996 30301369 213253864 549596471 128185995 788480191 991885343 481349252 90090266 252485408 719508261 806925699 283005490 602067752 955929044 571946376 607121354 863763667 542620124 173370845 595663594 806397782 668362049 830402622 406786096 235561367 565219546 412451163 500966990 218162352 816362708 953776985 461224073 166341232 5621038 946170962 681517372 74614745 393235515 852618960 794255955 675564963 637102883 690319958 445994961 433494200 712350305 622770647 135354954 530416822 607435334 169716797 420207465 137597552 830038901 479462627 501256299 341195373 590621029 986209308 24469667 471105384 952891106 158692266 836622324 402323150 89021069 371118919 977938266 753768259 87061847 676837663 505643361 681601309 612423946 93506644 417058988 672841959 193494720 23404921 820218992 769514464 977627498 531263256 808498422 692268153 67509834 653761068 602076188 915208411 576833401 447267495 746554837 728585567 711004770 979823598 257042596 455364371 265477189 35987288 496084005 75723324 751085749 957261490 718569861 190465230 845829146 934904509 444124165 324338422 44279344 307335087 348241786 308406673 672584838 833034670 935291600 290719410 992677632 496030552 910240898 340658720 58450006 653838910 546296100 790677461 719049363 912212836 122979802 314370688 583554454 420255171 976936158 75502084 145789332 556359880 734658558 47792119 538089364 939701458 189920027 575608356 492895730 698171319 170080939 816286473 941808348 371320640 76907575 754158170 885247192 555798440 233592030 682491772 249014076 756967457 141794768 952503819 159240885 251018575 886581973 688397908 604167617 287139786 504861892 468153307 339411252 194642081 565104652 445409751 520520887 469833170 187618606 806119857 498164036 166400211 699330368 347898249 736949164 922925324 812641900 574551217 463838993 579858522 172754031 668529712 376049516 651320206 709872410 649177408 775067656 988115180 221084372 45566928 558203397 33533613 50552087 363051266 18533590 311171965 802196719 408043438 189741763 171079933 115985790 834245342 680247656 757890626 452581498 584163408 655669812 788840020 879993005 841797879 539879147 522394800 226617460 753307514 237518373 473294279 759441473 28708532 418299852 592706429 228520218 140372018 291134882 625976234 267637527 264124088 73435065 26243228 284474343 9773756 726232313 532178836 215237964 880518377 641851293 110419268 407630234 360241822 917137846 773144663 711709244 728585837 436506023 636445673 241610288 220185756 641405607 527264779 471293574 227551655 776487234 183309889 368414436 187275964 566487000 445009923 345657349 554575421 159343389 567727935 679307317 440132162 99887767 212852437 781845463 926780180 178839844 322403098 94717407 830842291 982300017 818121302 506149977 192505426 947971715 828703046 942309600 24647381 438519346 674618778 996598567 93875034 685872553 653045880 839338356 159328429 825443816 796023031 646388000 366951634 215511106 552819877 78144280 120523647 59001567 587857922 543719007 226575519 897910075 493525763 59289738 175140560 360050853 601709968 613083202 941767142 859471041 415339013 716350406 455599974 695728135 327786933 72078182 612231435 238209601 86881122 734787081 511025477 4933393 989827015 862323112 677380021 62619241 240539150 948487120 451254195 886039825 189494874 131799588 865875656 395577124 599495231 682373849 235419956 145547411 238012229 999936313 165935721 860466592 593409384 78759968 924445582 934856549 365947291 462222978 277633533 347973707 162303040 333736931 701098949 747970707 617278385 582206173 125927976 466598608 717959355 179875230 336512542 799702635 991951134 63874151 368990417 66259486 321612302 534264334 556739615 802276986 475225781 373371517 237425435 139832929 264464046 368881969 956614285 90789260 934124684 610617275 39362925 415975686 415314001 75147330 712293227 840296878 849507831 140367360 596221802 319942842 637205483 875572673 702707713 917681199 253331852 411097703 797392377 196912490 717558193 375385960 647142098 95374234 980057376 559058254 582320445 409141827 442685720 593143862 565430691 573510076 977448904 32448082 481000605 74935218 6869205 840986727 277681017 446948259 99394008 666749520 409719996 852260196 57893086 598003577 397364891 143212444 636086502 352161636 27522944 559980102 570988647 483755559 306263691 949004083 537163719 343344364 156811790 943135877 863367140 846595697 57753104 654347062 922143375 139673990 133631179 508419471 899998989 839737233 55764783 239752625 229908117 806083853 641997149 510594063 712302292 486151686 453165868 292642290 448559211 195654302 219011751 271806964 846301040 20720524 755380876 124494469 327539177 824408728 187856591 618076778 179548244 217435936 729033493 856117560 648468514 878793367 555838266 382310877 928745527 853269248 196948939 461560600 961290604 218651511 610478220 39813628 874930446 285862568 262230260 322136689 399652188 352713558 621546156 116849075 638707212 505151190 206760980 897231057 258117830 718224785 818940094 711478575 302639527 437240198 368851441 973609733 352198592 336361157 862041895 482813917 592333205 681660917 948288655 524678425 380388255 113564879 901780364 779025002 596033738 217464992 838649652 239224410 26270456 539875531 689377489 186433731 233998203 912831813 17809508 420240726 960256927 788659991 822115101 890747926 482454814 180489440 654981604 110901722 452175018 57688912 168257492 858537166 78916198 585004974 721024698 765956338 760908909 410260051 853421978 215292058 842046282 759926573 319368490 241523436 207244926 787878461 52996694 316562021 409936638 435076121 886506682 56410964 993696690 954875499 413089067 643522142 628252663 371010672 424831535 555112696 347229214 330280825 969183871 777568240 207985643 507688813 964073356 769836005 523494166 311561030 702287864 926334410 693857742 469654415 681085464 36842855 831517489 53070573 328129145 532623832 123613652 985171091 164954712 266617868 692288065 381269196 358265896 665830727 984728948 300129653 149343248 844467104 393644894 273843839 623745131 170548356 626454883 150806130 681409606 872773425 847485147 664623333 415532517 153830204 56697748 424494343 800323902 376911628 437706318 536244249 106992252 821950556 818866494 840388082 729101949 576181949 349876876 283882874 774770005 247244305 805884116 182889775 189368009 697159953 267078569 958917539 294380757 277716937 9882638 185892859 777380903 856568855 288713467 219448946 498888865 86270511 219658206 322435796 846746074 303052569 360140055 740260611 803441566 828308273 794567290 693172086 293796458 524754599 392631249 650950069 762032625 584608253 268124504 483187422 579598233 63470732 335024191 931050531 785413375 85960959 833429804 577117002 51939439 133721557 332521142 175724331 683853676 942362595 179613163 714996790 3067182 519623888 344322251 13054698 568913183 349952408 651239626 34336863 626298205 451398410 775540050 849852093 848102716 571231818 693393983 143391171 619692481 60653903 513152097 719913793 672752167 892393830 143435261 160778142 897275486 704094637 881390412 554927186 614872967 397602201 236005115 431641197 656793209 410115953 659826858 804711183 862184512 744291536 119120749 484158446 667287704 685213991 248131150 666734035 140371574 821679672 677408456 898933021 63134848 545078428 433803598 853376572 793066383 970094654 168085442 742438967 43271476 701514462 857671678 881844519 256623153 870140560 659440207 743254714 171968252 84880442 228256756 741658289 440631871 634431001 669584291 289162081 558483802 739866684 982672389 629037622 446171360 150930696 247397430 9877548 504389910 121546162 326430790 757103188 987524215 971399880 899464122 401039445 402372146 450470569 756603403 993858280 420909226 300182536 882434341 335826523 870298101 382164077 651786218 343516943 154162270 20375731 254330541 834591227 188780772 129411979 133350839 149671206 95393720 72499704 274761670 889175088 86900419 910363602 46892169 57571018 182407197 800625219 418911525 340769081 517058711 126306892 118878899 870700247 915129906 626266945 576567487 39758994 796872358 451545417 377270731 121395564 352561628 701150687 266003402 271355641 822344820 983431764 475017893 595245540 589264448 449933898 714774202 354256490 189109447 771793466 652381015 782659805 335931843 130949103 704132419 205725218 548436899 249100553 983631158 313576499 853155338 271203708 669385821 237715615 343055950 180097038 723283159 620451589 314550266 98567900 732635194 287316380 714660172 776381397 643300366 599568814 933949880 128727357 787535440 825638937 850160227 964053548 185461745 918966733 914753704 941497101 379683669 856470096 614638231 257374751 786128085 301592125 733883249 181175287 731586365 10021312 951340077 125016572 905024590 187954972 289367543 355759850 613013821 779423013 555618475 469395792 977315634 347015622 654207838 467581458 783507915 618303613 14220502 396388071 49547158 243000538 611211789 835661532 73346714 20326660 853835954 546723023 505245903 443692083 57628071 907633652 18020001 161064759 727689604 859954772 336745841 410852080 125278483 522191177 960382484 891346131 190118866 968770052 274402130 76435308 851608692 770868231 498768488 570836182 630469984 532325803 838123911 508214085 14764848 567641756 207285330 92036476 372162868 249617496 96872036 271821143 179618797 562048691 95616456 126083651 502232466 653349461 945600383 594887105 312664718 774821690 705312766 384622055 306416639 137604401 343892397 943911390 408599609 659603550 200830313 116265061 894412098 824126905 294139138 61065292 583532883 810612109 270065086 734347514 902687069 687998457 426245332 777217768 100232065 162027378 168810482 112046116 961632663 988597567 514736056 385047759 127150504 509727228 857061947 140577695 611977844 674894360 691934595 656831070 971410413 514454615 100046348 605690473 811266490 704025680 50353993 453178161 890604981 563026159 846426140 838959293 298075246 944593653 220497248 628258855 499865509 395648883 928006240 378350107 519366355 773577811 887187804 890973531 761565602 682260687 421126155 322986301 981601393 86505464 863763988 462286891 489755345 370370352 258191764 380629026 657820170 644763312 113274779 717247284 772437399 717333507 865201838 851725318 29281189 873810057 37143367 122844242 364364696 54062069 944912464 750112614 437550727 440213200 983257004 758136996 234975163 579604723 708164271 528672768 173500212 194868241 689839264 65569413 933391396 781085739 501565246 335257808 675981169 686538265 883410744 724901779 927987255 65875464 993967796 594399252 873141316 393148919 641753033 204665003 988264091 294757945 61233412 436970311 178081778 318799861 155653607 441488874 715055923 260967849 199717733 776325416 791528959 504955299 2915432 373309613 478106918 163600519 349153356 613957556 254725424 85967308 259884897 636453776 877584599 35295294 676346220 408461863 326710155 816178302 619715110 66393713 196173805 68141949 608034748 766020862 910427732 863211781 400920397 637884013 596451147 393401904 931562351 646557174 982570512 63170542 214411435 947679201 527791383 101368708 650346492 439904269 53297798 408869640 489241428 234661482 798287542 951249894 917138456 602953087 259591864 121353566 995535263 766431461 946499278 308503811 564857270 437802441 430106861 134302525 349698847 569383278 602607426 624214472 181065229 674757545 703387818 708847155 495775401 478666595 412918072 579704418 783969681 140718363 582680243 754099469 506277972 889097057 301378837 623695935 770364919 698334044 407222541 846304727 534571379 231619397 212671614 603723786 75556404 407471850 518244094 386354655 198249115 315644460 665565784 325789105 84632701 993103745 1919754 268774321 229210019 804110962 575026375 299515490 520169544 603142174 924752631 861393179 882888094 555159478 368643378 516972681 528437833 603452671 109680073 221976874 35731170 184016083 760711229 785763794 89783925 865398688 635877830 659554346 943975171 912217063 662034893 512743212 720069633 832485566 850854002 162408361 886538967 661882447 909366023 726814915 184181091 928406615 33856658 135750771 548213875 988220584 28942415 798493188 229783118 164917159 949571628 915668118 775419180 133064910 181707596 652207004 815562681 85204779 816211589 291125598 71685526 688071136 787600609 777161592 824062424 98239137 237622305 802494809 38234503 434530873 524250933 451643589 194627616 427135237 304707269 254220372 802878484 992416119 189937067 510333424 854038343 174736532 680369527 56097115 594139026 603363959 628712682 710391975 931120961 873169612 890109563 784077500 188639637 853791573 823987925 685728725 624760131 699115113 107933527 514828803 291029747 185889136 589285010 628065193 161010114 384671080 580495567 880249342 199425984 410620771 611136135 107822990 489518195 328253191 554268392 926732985 239518034 816803084 920016983 788992051 686147659 520823745 124051177 987219842 157025342 858688904 532852456 794796419 719544704 637631830 12564820 333879526 369867865 262004020 483074143 66741421 382224262 165053632 569550832 946881713 175108279 187344813 747670049 415113757 313279250 7612478 321317313 194832881 369443759 68570575 205246675 642950528 179016729 290505548 59662093 994655474 573236947 480056248 917017178 617868739 16685009 307411112 733332825 677291330 58526971 193059525 983733723 376946963 9439918 208048206 48375657 280112046 569573946 929061779 985167291 529534173 748041317 215594363 132148546 75708482 914670566 581627903 793254303 469543887 173619179 357410477 661769257 210078795 919934611 709343526 30354540 274906068 623651189 790514080 581577893 447019608 916693016 532035428 510023 792797210 4391544 161742673 210524280 871538740 461625224 131911255 728787604 842547983 242801066 152100349 514729 676242668 566449464 666695900 585007098 647997022 601645823 989636386 908153725 721723598 730773183 351514896 249567325 120540918 244023212 528691068 768950904 68708198 721647344 408323664 963738849 330326275 197703719 775022857 621365855 473098115 360307169 307860281 607353325 677761010 769909795 539355909 88350520 823518511 504898278 131400103 134686500 971123311 137791639 86192621 623056455 86757306 898229910 36865208 527274861 83351657 700041655 960873855 204834834 612407214 684276931 461903049 651983083 238913292 415619320 270909622 149365853 598851291 654193797 501348215 157455108 53063878 35334415 272825298 491896878 255580236 995704367 26291615 947896414 749816130 24119282 311856205 95550921 430843471 456887639 284669789 515557084 253408110 20373205 584909030 864118964 868101744 695829714 220099088 562409380 118577527 950784045 92303769 734954931 844332925 496965813 400385107 222515483 893510347 635578799 902182307 267059403 457593730 983814740 826808836 138722534 124523029 79429712 168763266 769331010 538047437 67231813 354713664 633146346 847631172 177794630 704123122 147441565 884026602 929889372 273386340 787633740 911631236 661861124 866764017 636359584 44106407 784872879 414511372 378078577 47757121 458358081 421424059 265240656 973730833 581065875 347117078 717396478 714482730 838174962 148453581 256086003 944373620 763669661 47606432 238679512 201378603 115199818 589978340 370087437 850275422 503095969 136641541 225810980 428533873 770028224 761768446 494944612 981596059 429163189 135090402 598727495 652191593 999807239 504582487 904401404 323163961 593596462 675923734 801138405 905098432 945793302 857688941 314230554 114149509 243394977 524679100 708433893 863965795 635420450 448289787 872452420 525029899 557095138 269177651 852482667 926466944 829318302 809849856 284570175 430037913 668295943 902280470 64819675 735799938 579260993 382316473 549638415 907022907 870278244 393704003 339000028 406177560 146372606 199117474 933075961 737532991 304376976 8263895 854838609 455571501 736376076 681916280 498396803 898516785 185606238 622335022 5981793 894004208 982002656 693504568 57866097 692986847 919761379 296959719 870074479 414969804 931847725 666051616 303827657 589639254 324547190 80994013 756873505 634821232 863879914 23761836 116627919 212407778 398447274 102653742 843923293 72788936 225509450 826232473 656001801 209790737 319314005 554074167 434222406 824618753 234443205 974811621 99558971 826642863 877160075 612181909 716223042 239542408 908649997 115499468 898302570 330117834 673317794 179778084 121019638 433951242 289859864 771456971 772825564 166061743 60869935 574216195 403215175 130468468 425219100 278237344 465691670 990011626 995218439 370541709 775036507 827509235 937533837 446175303 468776412 743179336 158052926 974818912 561850005 245403637 733660960 686968317 704036659 803364056 738718506 461111641 634839963 303950117 159596490 822345792 701309281 648140260 367912288 636201621 244769361 876341617 557717440 991285964 36123370 170224636 424408244 337066608 438157534 514698759 482274936 45395102 232208276 669290731 570365500 751626377 917522086 681981779 599390886 76711412 167067235 666779070 206587981 931697595 906958926 562885889 504174143 523281482 518811037 146742979 570385020 405270052 873544635 999654912 470045304 958938717 892212934 3514247 592529309 118803745 369980433 97241724 330366407 350126123 900969636 884644566 599950790 26724686 189118391 815060450 728891359 574305520 189073211 72214206 463918156 277408394 92157521 867094239 142216119 939731753 311284688 176379532 61313475 975685104 34534595 404609888 858642819 680115860 706279657 217973452 623144449 422334942 830991156 538670226 275615929 247689773 298885706 24660811 362444315 523171313 732218631 3470562 465780236 515001905 518497017 601547543 641773669 878935302 925359331 916148734 626877811 495329310 800036666 834292861 446656629 394979130 146342059 838578897 800319010 697173680 741135507 264570121 506237728 306151401 785725317 68797833 827357838 656717796 44543944 354671497 315885179 993076146 731141078 951751572 871973484 254228216 966316255 494215178 408433114 775336048 942398276 154818462 247685809 990123624 783242012 993412568 110444499 910484801 819106482 46990739 465834899 767598065 280236804 254983040 868627003 276621954 234868294 188929186 824068230 965260433 159875677 242025169 752797734 606478799 528716133 267705143 917745215 874236547 136434732 311921365 885778922 445587975 383843508 591630079 727752883 670666055 291530933 878260188 411139356 482214213 201600024 989974759 451421976 985990039 302476157 793377649 896513168 764168935 644996790 465568028 776113634 442400114 786304330 171430497 301311069 536396170 674649331 439671051 758266054 618378772 16255520 582260410 769038293 356045067 15358580 780729698 224110777 971988987 590819653 62970313 367896464 766055558 930927646 943906828 376648176 650247907 300692285 440911898 250497889 139402330 586190357 589853751 533593057 361810377 329034702 120657275 624223326 780978722 235712960 413662801 949889343 458555627 558835196 33779448 997913820 932404412 277672899 227366917 581721089 418365892 36904460 373795551 735801967 346747973 427789826 741267010 507003739 354933012 872108932 546005693 14359022 554171930 766770596 561752884 720083907 903269077 43040041 861190494 239189355 764508375 303882508 516416584 656780524 364685894 536791806 127514832 126102590 527772763 216013793 992829994 58422733 774736867 763743307 164019295 292612346 5501377 257754374 318402249 366830234 506132330 162930578 899260057 343720821 226442599 810111650 264115025 94972616 666700759 606998683 950092106 877628612 190299882 261339160 377202224 455631628 490709863 113914984 258916224 721560379 473579815 354692622 400035089 123688284 73110935 203299649 29059976 23065200 762558010 971264618 590507746 275428076 796269861 991476392 94915310 485625656 628147074 260759631 42754000 802193457 417921549 565563236 144246912 520045991 550701466 628762659 515234633 34315488 799896973 991028602 864254538 827018003 153086048 628043147 734864888 823214062 944479776 442705454 135610778 77512721 950767345 562820972 228079564 230851985 242626438 144539141 659100413 492594294 644418985 359736811 359450609 62790461 647870649 581216453 83081279 365343574 990540327 421331053 682094291 610635687 321645560 736860530 206455405 875752199 792592710 513823639 279863841 497842372 853708991 245167698 986451926 344590622 362701604 24172366 303206087 836501961 212302795 990418665 472162309 420560495 635803422 236555447 937867506 583943468 863100698 643331581 452143559 21022480 331742673 410091574 550061071 650562720 150704616 568141714 192565034 825502294 319816474 539026802 857414859 598887196 587220147 222124270 604985210 334536405 919303189 157210959 845481235 614566101 76900151 559260309 241590598 9792611 278421792 49398257 885363221 865565502 116389489 459227212 446170712 761436693 396552665 314041535 902398012 2560782 719036574 755791129 854072256 455686720 884232987 748919389 12558646 316059192 207977788 258190656 534142408 744326776 312305923 600493743 823933425 837095412 231458055 632431175 674568704 937055123 85955824 402190555 220352665 294779572 61008892 468295411 468376371 79239590 628112253 767150919 593438874 681213998 280419673 500531015 769372014 440448517 947154057 312887190 216013987 343083352 198496154 504952970 347519488 413298502 841320239 864801967 291367072 670121574 828969084 821352257 426354035 336243006 948819917 704432821 453894590 168092877 620535549 573212976 561885079 683934466 552879103 159123726 548458602 795457858 72350553 204391773 669729655 771514086 270882468 423122015 886709841 511649210 465534222 544086028 957428064 684315776 313564119 93315213 862835296 19794795 749608663 747871938 921509600 150578340 657651447 158625469 115545796 70296777 715013811 848558149 55680708 176837993 26405023 907931988 388123371 787459977 175448031 229722778 5462296 760442402 818375853 175852023 925924224 965587616 361979094 211821316 945541418 780000612 525109821 526818187 384525937 610224195 751340375 458735627 128440198 958756102 316840878 20066357 447034092 466993640 805124191 388626289 695048186 290371099 540872859 365967194 238835036 532301891 810035753 142077502 822769555 797121273 539318754 498648479 109211504 284720457 38341684 533375156 381046429 72902964 684272033 564867305 512269332 216467503 292415293 608971866 365560997 372329891 972576050 573731420 841634165 957854571 232381759 88349173 737370234 64085080 280461621 612599903 722057472 114961072 581510521 44095881 776131623 102238379 627131270 208512661 379800930 330931445 399250024 965013595 367310073 1957679 514421569 750135781 454852232 411252846 167357895 318059761 984836478 710608315 917299396 485069427 338389407 704340113 854301845 568551184 358841731 741670753 934464940 144310691 475718932 435574289 356315406 397779899 166933524 154658937 7061206 683998235 207385237 195159269 128345264 820505402 49557374 618039958 42249823 904895425 688092941 162844737 595812919 247873807 268946256 133818510 316245923 421044152 521261226 248791706 694628768 245810690 158825557 533906549 827971392 558176870 467125466 137669029 121343529 78471701 58910874 890113442 408185620 131787121 359368265 558975064 81953870 862381199 185638765 510966440 869907514 356102076 878643427 122879718 501805516 133138933 865045851 364078940 918953231 526571373 23894999 556187846 832798625 272779275 627438128 145385173 733476658 966618089 649043345 691275948 266963977 57930198 345393914 528096614 759618430 179865045 675744190 147157134 338084481 897711516 104887301 242965156 418523666 475917590 771908427 157954975 818608582 40750817 791005407 846295398 569195081 419475153 93131877 928751702 829997014 63297643 324192853 151497151 387528385 776399211 393735801 262414439 529891310 972928574 559241843 200202501 374597463 474328713 50959412 408336583 699173001 485970336 143318662 797827533 740570919 550956815 716326276 357559723 167524198 619439381 734490397 880705515 306974864 583459108 138963860 507480713 842792833 632236131 586326018 535701621 312882477 593275436 684753107 101716500 676620056 747459726 82298437 997562816 875755484 142400204 597149932 63088195 597361575 908727259 152640049 738992992 43288762 400250088 766421198 306847818 88323051 738409424 399356755 713865771 478937892 211813287 868398245 26466975 944642017 660837170 952699514 487119414 389374902 114586988 238813661 442532085 101618887 987489797 257825200 523866837 99302990 593204190 122546981 124732483 492689689 662377870 385298501 426998431 845724170 123366880 17558121 53898941 877425813 302837843 434449091 489820519 14208837 845644697 234933974 585293272 224458295 911871000 935391482 371970114 741468061 590700140 164011737 980550217 850034236 712236515 900949493 218185095 25437166 217003775 489646624 577587718 606035489 848445432 83323905 929909961 832386135 896741175 343231382 556335171 752952484 577965020 85507245 73235165 31347763 253735482 27680617 457580405 233759169 249789014 295362243 485976026 923158048 997506155 276630791 936710481 526802102 80041320 66422355 812473107 681905659 316138864 361469211 216396492 314294271 510542937 399528616 774354718 85601505 359044142 894625684 615443484 720017241 733725613 789214287 238292943 172933423 663720650 395706269 108642485 143982529 600624938 768855830 677492285 221611649 556608169 13648293 287045964 393779573 668912085 903741962 489588923 430254006 418297456 107487064 91368918 863737841 850830833 304531319 101211870 219073769 897409028 433864611 667467656 93122547 888935686 258382059 972689789 752745848 318359177 92481203 694003928 964055414 717851094 811877170 337638571 442552320 443527782 165639669 759317370 613606842 221977192 559591514 60892605 149293661 77292863 868952086 306938979 277687097 881528321 309392816 247319370 129377198 890592249 532579075 831322568 837796786 931308837 432724928 817780517 805926478 836872888 674513386 861921566 58955297 906058137 152749656 554617956 592330203 258183907 732930870 834166043 777373379 168768611 123959940 989583707 310735154 92944157 868863637 226067379 292536086 669990856 447067794 669462433 230438000 927414605 586087669 231074843 932701142 316384076 758977550 551006729 995420402 504870038 516214914 757483208 930099968 142649780 436557254 359033000 114043732 112419679 979695784 867390319 508837330 565608198 291839431 382406357 783335796 550468427 73255958 505219334 643857608 696760454 519585117 167848227 359909487 10139456 66192056 208463297 281619872 632357561 275461398 96395624 753133730 107508068 459273147 434646293 495293781 931683686 36518078 477796024 170088362 311095578 489559948 63985079 810716198 456603535 478671203 353143145 552694372 144915208 486103000 617735580 693284240 161514363 576043346 740185360 383935724 425226003 515775372 250377210 795662926 209484463 318218263 696887426 475317920 153139808 146585301 409600837 889586783 650624495 520063615 214568915 252192285 189838164 379985184 341602098 620085504 59293504 278072984 421373017 321428800 952704916 945285915 134069430 168981165 263674856 128158639 483077801 542211878 54274053 636791473 656631303 34389795 465258603 595032657 510284951 824014380 136123596 186248977 809473176 349331295 42940047 399341130 193129274 974952942 384561486 727268518 165390624 74835359 500445528 28020391 452343012 278678858 464108592 692883231 730538387 902487391 284186892 468860342 883283245 699034717 914546006 898898792 481619750 418173276 767224111 512244996 172064488 227950212 531779559 551774126 769920591 677403540 601005702 966688093 768998955 691010652 900918343 116564318 119503041 952464706 926385943 301713103 13549643 104324033 424695322 810780965 309273971 335092454 332545575 337687206 418114524 618453970 108666951 158638320 602499737 695479354 579591226 593449328 569688244 438279914 343622897 384828908 842651049 878369341 774277397 636575482 297354728 583452327 398884735 461885574 593698646 263137580 509663678 129080912 958772172 299801062 844598420 6095980 961784215 18456194 162226297 280053184 866279926 328914627 495307799 262042249 81455008 324556030 230531788 120855766 441566523 9899165 138103083 761215243 305033190 184133277 55722363 449963616 153286064 756440591 295349814 729970016 489529374 458900122 83925131 959473771 179656361 101324535 248521949 356816436 18994494 391851892 667934019 776936003 349982396 775335026 735288838 435122035 573148537 264300263 154311205 243957877 776568766 902375645 816895444 439387724 266623558 418237937 905569016 81495247 176562371 923577301 635622317 317077291 495371865 59875534 194879680 445988958 144558625 346412086 575046710 641970621 965101992 827531515 835713475 849402223 994066797 426883102 861340500 68847 237137766 723835702 322946438 711892366 762179964 540653291 431988268 484217582 373778954 810898811 822674637 554465672 36566114 787474743 975481123 762310951 229792072 673955079 801451933 824251755 29450101 747462370 822526429 422904903 737394709 633027159 660807995 292849796 668013897 720565512 83466561 11000892 505684646 550845737 717915182 476524895 459397044 216531973 232472435 756695601 495574129 14109305 163721272 682182090 461039563 567831927 866717144 597745813 360809001 914060421 546399328 711805649 744266723 31540284 502177044 807618835 455098821 281523401 668122347 942264002 286855569 73044078 770276622 856572058 100724858 401760770 468352861 854457130 586079145 754369389 585069802 804043606 609789627 657859630 314618491 272833237 756786241 857348565 625592076 814097075 268397630 317799560 546336331 506474961 400957101 155209090 964904731 827629408 968975865 643735952 678832145 186364266 901475715 844250514 988001786 223825225 176479264 866756352 961517139 520596014 532000408 201502818 420444111 651916187 892869672 962707927 713669333 597074921 463546113 903654799 187775488 270037187 559642311 473218129 453863069 815472553 721278226 95121398 869458224 697611887 800784368 693739500 221773807 131937723 460186209 555298228 52179781 941541258 462065370 617345891 616108625 804840875 516114371 50746917 724082020 251308098 881295353 202608310 788876935 711897671 219372364 190727143 781287411 946363397 950891778 259648799 651629718 659717531 849518674 41144023 353488533 61215614 67678442 406096157 519706052 214389493 229259114 30459922 482761264 214958748 914209255 678109292 708312214 466000610 17697385 959435253 142891241 555179146 281638253 538021386 56425680 472957742 373836387 55568412 197526053 903072695 23652913 343745074 979714935 887879910 569881006 692530534 136824969 495964111 90550824 10947683 270982353 30957657 923897823 26651118 259321337 502261695 738733703 708965722 134573666 503100177 863704010 397046546 845476764 544752052 125908420 921946387 171579632 774091742 230331269 779724142 308442070 746537243 520711059 123857099 585014911 464164043 265935461 691786465 753406028 330310817 935479529 401244415 295656020 111550757 119112446 224158343 676130786 746286643 369869819 741194605 303031029 204683130 888600359 715565756 674371775 12676351 352918078 729061649 178413095 665088919 722541554 456627998 207405127 391647088 256904808 162800680 43624174 978756744 351010231 859970698 84202782 462201140 960312429 898825264 861898127 57474203 300856841 896792861 978813227 244985145 755080066 285864421 750448016 894728029 288067006 450309683 730041233 28011434 153155612 1913157 430547893 114863002 81875179 496196203 411828919 389786614 331780592 336203147 559418884 530683231 677493476 170787232 972988992 926350025 952073716 885817654 292319681 681662971 266359871 37298928 653582610 692717584 190651996 619118083 269866866 871990776 798857937 580701368 584871250 589229304 40048797 739898606 915311835 549834022 255117231 484641429 79352934 706040302 774019948 694919732 361822977 202991247 614397741 701463395 930714865 578123935 428289214 885266770 915588138 492083331 920965345 682832193 263351513 36539896 890944457 85533958 157259227 111619213 101324192 92037002 41016643 910834726 624486145 750453580 865332952 508027259 770425726 182598364 844703892 921526934 264194587 170175329 735066406 759712601 899866065 865657620 831111281 645755382 848820748 493528003 802910731 358635381 253334830 85557071 92807103 527154225 73759498 658796590 723018251 313568347 894718825 231122409 594168483 224604790 102170760 102841759 391841004 555888089 455977880 909482113 636356226 670448944 999733053 113900116 440052146 947203324 254444048 550232050 429169152 984577550 983468829 155384777 958266019 474403856 570972773 506936410 709134084 25931260 745609053 54644411 655213891 404763810 450969966 502206230 192907954 816430887 167340659 524086568 291193944 13177217 415926078 688344258 648073583 883096828 82038291 339508812 834611685 121196215 812976426 773288765 327610079 102569000 617338161 636667556 811753266 288908180 112678345 444681122 802022889 858803352 900678660 776921070 349709506 257285795 808096494 817175120 816065712 358747001 164485121 238725926 299746394 785432497 793345966 238860514 320375451 237961528 357353435 813485705 89276672 891929037 308231776 40594485 844559949 786996098 129941897 818953621 609275128 684486465 672428695 66682472 165002156 465568581 952380991 920492805 489437640 969993117 360132393 583371479 867199454 556888236 158720626 713938137 958234676 707418540 171320874 672338462 168360774 364068646 298297815 194213963 552793666 821993339 773665521 528161307 626306442 239030623 934219620 392725466 49604918 297903704 12379665 982707179 579748751 128141635 756350284 57012547 34360213 353498320 5353311 522670059 702245243 295624705 336398086 664102785 462605093 711226031 521784306 285254071 286831793 867962373 804062534 34548435 833215723 872011523 55150621 829154862 868685783 413843708 236129794 986820789 905771819 689204248 176718710 77850987 937506514 613832659 287255149 83026405 234910570 34935164 606039761 219069132 624473799 591031479 305055998 707054687 124358766 785882107 450836036 388939502 103689754 272704789 643261289 151319904 963966011 892390308 365503780 642056622 294716530 907570586 544464035 996270950 306289687 16145857 429210118 85669929 603370675 414585908 607566049 795707436 627978886 368062177 767308478 63409339 286499586 482725390 350309785 422871730 219873614 298205393 692330082 677991170 404197060 342839703 603320191 86723890 428577139 544453278 20387143 751668187 257875613 376351354 723900551 787066155 161610042 829138068 888241409 440328547 283409524 545139622 193048553 135964505 185034281 714886720 204991078 205005047 609921900 209905991 725260823 149327802 546265348 634235504 684309387 224763699 970781164 854066889 588653255 343144842 747364305 692159281 892799429 587112438 867968919 862868187 805810927 324542790 195572693 285902799 228147112 694850139 643245908 122421097 727686851 809365163 362337171 478398168 431961866 272192192 223485254 443748768 926967736 42186935 760608979 414646809 761601279 268387522 741976788 43848173 134928516 739990950 122844311 658872478 749456350 639129406 814503073 720967678 516769050 812314870 476412711 415223988 474542394 579360336 780176531 953092286 533730993 108634979 10446341 95249898 4893160 829541207 146499023 3672667 645699005 5336298 61442040 835185418 276997631 929358574 450723514 845374019 827198963 347525832 995663621 932742692 809835730 466687731 767941370 597522721 473197128 960303995 749203568 482857603 686064887 678153347 622101362 972858596 271104242 625577663 68592830 899167412 139786818 276767738 53153864 514861751 927812453 40022418 482796981 418677893 945099722 662918391 340103905 763298057 409241174 45279792 349860953 964589315 217237986 734960213 183493601 886118278 985259962 795121174 294970096 295064186 149229599 448152626 789239087 670095643 113153222 832834049 758610174 347726456 875263832 51648491 624822767 883792373 183753712 736298991 634450249 549513161 987599264 613286429 81545350 502706049 451464428 194940188 249213397 678349435 633982541 352096421 166664345 774303340 21933743 277291013 195347944 128227291 70714867 521175711 423591180 890034339 810931566 490290792 511010822 220511349 92136040 294835818 859566598 166369108 715811998 650882881 412045300 95490071 197219009 68546465 729173227 475455210 860657909 182812366 922846904 707646925 821541203 856392482 432811103 412853523 154986599 131215498 775605910 969121253 147018674 763065097 40113225 556367549 558919721 963504436 332760340 556951019 841501876 551710901 310843340 973542931 526667440 620239049 418273526 867871405 742837358 128540866 78823246 653314180 177617329 889627269 235305026 582653496 690989108 528962828 366737525 47376060 687966242 117722853 218499644 254116312 565887644 244834481 746662436 498029736 729077303 893445030 932804970 648381979 370343291 452261390 450353281 884192629 687746917 457504710 556392848 133271245 714290661 740034752 372616433 829043088 542146657 521944449 953534900 461076220 17818161 65333155 92211738 962514086 81042208 939346516 794286106 198318324 612124657 676601046 229849055 104526244 242144472 900884733 825623623 101526595 233601021 918516148 131806566 100521143 521685501 515352440 26280193 422903222 626505320 310383323 883029780 735881036 424851012 561934082 911444557 469337 733128328 338917928 908486286 363773457 910668450 317941785 913262446 651378298 863950066 875275447 434757305 677257457 590636365 806293113 147612396 306011558 805152123 458458343 220115898 641284891 960138168 397977375 479264905 939913896 389428535 676418643 627128053 298082042 563518618 183576649 411568973 937972368 868018300 196130266 627670289 977051709 622531559 304004979 850198906 364873641 847630046 337693079 146756594 316550608 511136981 797630810 403910807 176652673 699915571 934775015 578821309 802257888 278518231 414887420 884020073 134534884 258377104 639170153 915370454 663924186 454173348 638736533 315199476 964128224 953849674 716403193 646373092 600233579 642462768 275343266 677879677 234969537 180498165 172596403 279851722 241351552 436940976 942199521 850620042 306424085 560215143 733127925 479630767 514267206 636690841 961771854 794987744 319905193 156794037 542267996 46260470 93494570 131688352 996948774 928543106 556918409 749110835 821405125 899237190 807273945 600322747 231330791 947233976 913588227 629623928 389343053 414192258 606347585 10060318 143821389 906878980 684642211 702056022 80167504 266257873 818720141 819736638 839611477 989580333 962800183 603383781 991670637 660220310 755477036 187508432 581200701 253139256 115284427 596885624 939988607 40542071 124991945 278501066 425814912 474146409 506324910 919196837 105273508 940704857 912656467 834858591 729116894 661837382 143395946 61774913 918342712 216204385 295548662 883199238 381250129 366323347 655292366 549488224 69191898 774397172 304906783 463785331 785159192 771983957 939006183 713032024 973244262 211842743 167688571 772536220 391393199 935235026 519254529 705729214 819356152 250914703 840012279 133775540 710195668 431337102 521947306 947757927 402277870 731267745 358248384 54136114 559003267 776989007 203903919 970584423 917548517 950643282 15595587 457064650 110937337 539659289 121483036 459297812 183620538 558323783 888368685 979841649 453321652 50551346 315220031 789480450 908497033 503144805 100658540 331636316 95549040 100079134 393065892 731906312 599738545 975152593 913525547 801494529 758403626 679479715 457549593 624713785 917735885 516216559 992122841 211872276 692860703 94099909 459703210 425403882 705610427 862645094 103842081 563268234 413635277 963337929 417364901 809755570 642368920 378171162 93171186 346499736 278383088 34143285 341021335 26482788 122688449 882602799 919670904 876361395 743598214 740384462 581696332 787697686 450932178 571473420 488155167 794310289 905586635 95986840 382288850 571998748 279102890 16106836 90620822 812238117 513666620 997599960 249844597 731714828 519433828 933406702 361349321 513236646 217350039 152288788 335091907 879033531 172930654 901566973 536106213 8425096 756806359 122986000 860080008 282433086 14115637 50282215 587248727 816248193 352162876 311310290 494589138 223869929 85781957 141507410 249219277 155571588 909677376 78533022 16230638 270805842 681293357 305216801 797302578 795431368 523888802 183149305 56377704 321642318 823970248 714275706 297918900 140270273 170054750 903922857 504572686 609110514 937666869 738260162 436815809 603407396 392312754 654803635 201213932 882667154 861798479 430071966 927235076 666782439 974646041 590129755 950322512 235855299 764217907 932498419 145530988 993383229 384140370 187269158 590377415 589953372 650564928 822751462 115046436 574575261 112811610 551609818 257448221 729250416 421152018 643217116 854499227 550227387 509814125 678087804 821479519 563901781 5035653 249247354 151432829 497070732 619018504 845315663 658844124 362060192 613602231 543418789 536243639 205786181 780968424 259627738 960784158 371432997 491449349 725140354 601692022 318367068 399107083 138929890 576050933 916016890 270507020 712399990 931534119 906504581 482552493 688420459 402355564 795564404 497367465 704245285 576467319 297152437 657885772 163207867 998341584 365137448 660039160 5080438 539590227 933176353 370685603 110421590 571396783 910800618 973444439 157433997 159861992 359492670 896351409 435690241 14521814 377966800 969972067 293933774 718956452 808671426 488071347 636361666 737507409 145537582 506342649 721736416 43123250 328171425 270933541 234696926 483269742 409438874 798581302 504304806 478440321 203974160 190454724 868511193 798661562 76914921 384141943 387912007 874615228 496254596 826369421 880573816 163207937 645071152 472615512 79124262 896354898 526208690 19328190 403848129 246520400 554963652 428566455 870209514 145592815 329745808 290673107 654960120 905580277 390790713 940784050 468093558 617294976 449241938 969181321 51799202 29543293 469711204 581978276 805664496 377061170 249005933 624118238 994788742 216283060 986368860 822420010 822715069 482180210 302511254 641050638 218528678 714037928 39501428 455233315 369237634 180198893 381101763 596113558 218246985 620178598 226245698 128063402 319283749 831791760 477476647 220879412 651468788 494807354 396090267 952384797 868233929 836012680 605432889 954298596 104241770 361005362 32209555 586574362 841986260 978839874 236424109 113981411 965939379 423282842 789485184 916501115 480189931 257418092 787814520 27078575 111123474 418809024 781084151 589320544 801049331 291147505 9211088 839987204 951112460 181248560 781923532 158461733 396676624 648646400 400961064 789724639 367223143 720139448 36139029 441408358 295313577 7692292 522629431 242231678 627939879 205225828 390319655 46475009 555280738 351526316 659406321 698044509 281685394 959229571 2797719 378844179 148646944 472338660 982925196 355020089 936682796 218756511 423327289 568065017 888080904 958825433 519292539 763572752 806610362 55763336 546850083 988523856 426969982 63657976 9595509 42715166 86913346 552524872 31711913 692457972 542760489 81503214 319744622 715399648 313734409 661691695 704372578 503844100 103887084 959148456 374070427 278627092 926095251 114625224 688053537 592908507 459309038 692435027 158333041 686436534 658746533 67528928 311835900 977978647 266294418 579861084 203742373 970934531 957079877 98340998 850076999 790992533 430967167 231614320 971118381 744073081 799891383 995903492 353597848 948318065 205877912 574457981 221076797 606503124 532962177 549177578 118083780 297026314 425862915 740067758 175334218 874474769 468908903 235667970 611578080 448004603 276533542 543041650 252519177 707463534 325431662 480499548 156464448 144895010 839995556 91505012 748797808 688642663 780718813 507670595 919613562 774359196 981465699 505893027 288608947 122256313 7253558 436230981 723967075 255013318 89857672 23991595 8145478 497141346 591436608 749857326 800449039 78352701 684615288 248166777 373698273 932997789 577021183 625373708 388480468 536546269 444041432 517009210 344440438 318709738 884625337 932015403 518501191 766702533 220915597 162729819 64953403 236476675 453328115 632243481 354204988 765485136 414403516 453651465 829942950 554013671 265617264 187418786 515257801 870237724 208937418 668583601 788744555 373652946 300702520 336660436 254748739 79797509 273241436 805950976 361643391 771644226 509678477 419269116 214642495 169156138 692896599 940297188 329758487 751376883 35913975 827454374 443956881 715343846 626572256 548545928 541277609 582879970 708761912 290934944 270379343 429774296 980581979 165441371 492265961 522675789 970701655 60125687 880877518 696011995 792229231 932797192 214734796 752830895 344954777 778352119 15504290 403575565 225230080 23542654 850429063 799896008 533777282 816345133 793871265 201797066 816463922 934842600 153494159 91822226 9209815 352988007 577428448 602732465 286166892 872907445 359226778 170235724 141299870 410621874 3628468 988121757 670786641 135517073 217978523 472580722 602060571 106906202 464508337 731867053 550035911 110764393 955891657 705856450 949743060 541535725 260045229 552391996 299432948 582290282 591253144 837656120 568597645 987750456 919709373 157495015 607171131 298516481 825526206 405040145 378182220 814203463 827941685 261414797 893144898 819116251 165297454 151888586 200844629 185824359 690043051 524226378 510123247 206633190 183281183 302388001 168917806 105429542 526830580 782228346 331759205 319529037 72049925 662054162 479357595 441295953 492569380 781057723 689385994 501403775 190143893 348095963 784239521 183381237 805013905 447299818 497890691 798708263 319443141 909636600 891846022 803871582 252630480 571947812 292494773 347430708 85802184 772502822 455118543 884018713 516889014 778798534 722652357 13143761 997608725 250847330 627717440 522589940 381818455 956031596 827499544 899637101 729884768 301055466 70115806 429076732 439615497 233166325 158203987 717668020 130918046 852261178 986752239 672240253 174356064 465623164 71029083 17144723 534740229 746980111 683966967 759068421 914220083 633558367 938281045 772943927 818782216 70183271 290850747 164466016 169402773 741509947 232527782 993195533 682456414 109695358 479531586 393186204 254063068 252496876 390575346 694743490 578464763 27233746 650172110 348762374 147280284 832635537 905234720 78802755 917806612 630321695 278003686 80672810 819475627 917764485 590260308 984286653 381312798 124321634 545388367 664646870 502307870 100806246 749059058 289411998 115954639 665975768 746239501 927875094 474413130 294561297 791255713 693388433 126603291 882123007 195927653 43392056 466464963 29907619 786972740 201111429 675245879 474465683 125233117 225151688 112700511 619042680 764739074 259059365 831402392 508840337 918795577 385032340 708776243 576879919 926211646 937967456 461205236 427287607 243518591 458746793 64343699 573475747 109406366 63432802 42019390 203012609 214020851 891611987 613186325 626654706 639245832 913307032 33888173 323436716 545870107 988141088 893513870 270494841 129441951 678617135 852400821 97634614 978371771 665501660 780288531 550165205 464011721 726242452 92307467 573836251 760641752 415456661 37433848 234370531 388032555 840506484 596361125 178561049 340255672 90147223 983991251 753344959 433717162 732927676 203100342 576959147 739060960 666147184 913758840 469670343 249818987 414534041 957846453 300093328 62461716 556340205 904315390 783835800 16497108 657959032 579071574 983143429 303175769 408916250 625725368 911391247 68765831 943034375 261503886 23870085 614907381 245686853 643235387 372950857 439277676 270371889 748480915 516482767 64179308 950699514 353321310 266488994 934702503 601258021 199978456 595342304 264457604 242142215 845819956 371603385 311495581 299851854 530897172 565793779 114708033 676970361 26168595 368546665 990586099 530405979 243465531 684187271 707599081 324703388 617973135 170136016 478763918 371733816 498869123 42710105 514660608 794771710 947268222 851537483 12230290 32177426 708036703 822115684 358942539 780262763 400175605 528241527 929627750 534154070 765745030 911830759 860985808 336029169 519476041 649150768 171016878 611542193 756618220 88491871 864399316 888582620 349503246 632980628 593615950 947976464 153248710 921717895 518436315 586838970 746603290 940979713 616756589 106703776 800814217 898893662 261148074 788055384 470044290 907666706 953148782 676578510 549017834 320991777 127098439 337733058 432588699 120710820 379718904 366913607 153563359 898386507 523182070 482128198 742999545 302525654 649789422 692638457 694225820 88318107 590131261 6754672 581042802 852324100 138619254 96690959 220332950 499738381 152548832 127984398 901246234 617633226 660598261 802787832 426894466 102303455 672412901 111068204 921892167 819301638 225196817 682679391 778733910 477259917 301394576 634595352 555791758 178085333 328125869 587420211 179939910 655957972 944097126 615898463 603750852 656125076 781917167 198959264 664118471 542729138 135252269 524066253 512942845 693582559 481153340 711494675 690269070 497369187 66954986 231595632 259270032 35221 286694969 93385273 488752784 593989476 271260897 807384980 100195599 87914705 964360907 203800063 656478978 50755954 355098775 852251847 944528466 531654641 653476375 106338706 389158234 281888907 388338386 936951510 561098604 132920210 277706882 931863647 158377292 518065644 456445334 470619597 577662387 475409809 946607025 943694611 145677773 40784400 587192361 165500154 577566652 925197067 255071369 792529820 250782995 796343478 170869007 670254313 700765531 27676764 301045550 964676901 579370129 455463130 611635214 400905576 749082022 913610530 712792327 360011804 807541502 234706618 803678250 389988739 1350898 791865402 224391864 383807023 92170830 978656210 155993512 975975816 316838099 501079489 573138981 287270986 192132022 377921759 549721614 776619268 238423071 424144148 172544629 954426521 934497707 833100766 607186976 627580611 996638955 214347984 111052299 298043019 684958179 999704077 813844964 184281810 185421963 27906257 380912270 580010188 65352529 899937256 99466399 112987776 501451670 328418357 732443361 563415369 436238380 62367533 716240084 845061720 984421342 342166873 788496683 228071215 271674857 12813528 297901131 429918247 110337147 892038106 664876239 529233643 257538875 440145702 900527110 841442555 207436736 14958229 323590771 430194218 396586008 762249620 884389965 846765857 604952899 24079270 339476989 726144474 920830902 756264672 404986018 912401445 677914073 145492076 767110288 220846630 550612617 729541894 934215116 469639381 602247575 127984514 901866642 332966012 315153478 391626564 501503440 620089149 605831633 441002694 562067880 3980682 825296355 452973590 466056178 949181611 252602141 296652629 547494071 135153980 140039059 892287289 405129911 411915179 96399183 616749963 196162532 479093438 674614989 222466986 372446693 555504652 375452029 40049927 306567316 579496063 479758405 415371175 888974976 605151448 542454780 997005988 291277164 178402859 768663536 32289452 776481486 472117342 775967841 704592000 768482897 401645743 350269188 361659255 660371539 631198251 442560384 968450040 343532136 874574904 415730676 726458371 847294421 943081228 898562927 193275817 16619541 24791091 268927095 857707408 671266136 276177677 650553219 704724336 7834367 669475661 881144705 7232664 514229794 568630651 365604945 808735849 891607050 773409651 823395143 159796954 267937975 974206692 575959469 683145971 463248730 798593490 170579775 11723602 559331036 310922517 954495661 727550121 254964310 795780824 230176796 616966717 472888727 575465754 392241573 672649833 799207842 410566192 348267989 261073689 613041964 555746625 944716332 1242192 181072162 812747465 844145566 610723490 803562273 459789079 944623381 480129978 306574844 638137038 870442476 398913237 587590202 280874344 961718901 913416006 156159638 734903214 683305589 803436784 404610685 328133185 771809187 245452495 613307027 674960917 546189868 790778223 389890862 605461232 807211826 566225779 43831514 720683504 392941896 835854864 5932243 818922498 135804664 571688335 768655246 546373227 213428541 283707342 102258480 929962307 801973769 794358976 357982741 494872053 975842496 944946920 701343563 340993473 622392507 784027106 313556756 904971835 256542151 822281435 275439464 813558729 727591075 65488660 877744752 935054376 432227717 373416546 215260940 692251879 223659158 153452977 3709262 206231530 102742129 333295997 442068221 564995048 67096232 872776791 134146067 469257454 855102015 767944038 285602112 395372251 825751087 218975459 544445540 149052898 109968868 708235420 661103384 414272267 636660160 333767282 734729510 654170801 625458070 359174875 269237005 648379141 219971375 860108128 642032766 876283018 364231881 979333408 512883937 134416535 396836754 212040011 894014929 1732568 833594417 242790825 920011164 137494733 152723262 567318289 739285444 884880970 666293189 592547826 464702848 150093813 967635912 888563917 782955579 115839180 428496570 728875704 751181844 720671644 765620228 662794717 279991901 161853835 685718403 834957817 243528221 987846286 374363144 692814557 757021326 575470067 925956567 4484337 161248671 51719897 437813033 360335276 857724530 102759091 198210730 848355869 432779743 386399690 483111931 686778725 735900400 580796856 652836401 234169658 606095715 791314925 497838676 878600294 651835947 463438893 358645217 778299206 545682928 588924175 245525833 805091916 226225546 245053568 144523376 899016830 207928457 939356222 750764334 969863668 148247472 653241950 325239761 787754077 905700726 765683655 103530905 828002171 954185860 571063477 81541947 916804514 818462265 497516342 466294111 237288509 920239913 806561200 557562658 573469258 229488537 678890841 499811477 659252441 862765061 483592382 200994620 547812240 894326171 338112573 565122703 371775786 944433854 990382730 50205308 704765939 450205571 977507118 961334243 672391758 454024247 4625667 529013529 922086703 47876567 340172473 19486310 862169250 478722198 680669013 117042823 755505218 547354715 679402157 917714220 173097922 290534720 150340589 857401211 114626408 228231700 165720084 905708683 431607437 748652250 495257720 550463978 360013342 75245896 722762558 403278360 58583838 505598793 347310051 741352202 209295138 248103803 66415542 706208423 950863571 275325874 413740635 630675278 60059248 640748403 226392137 12490319 918108745 244549754 348355917 412638829 230340933 208705844 478652165 681985634 648453469 693568326 432221030 929964891 193013278 478568964 533331767 29521272 441152299 849998586 543497876 325963342 136452793 976994919 477288299 402685284 441624594 85972925 355856898 473241273 478554642 274417699 788020591 203171644 236567469 30880499 915776030 628305747 44286567 300667964 622215248 834026837 105845978 29879105 799099030 11980816 988222772 687684855 62061658 137636675 939195318 282536075 157453910 231311909 853178678 764879834 324909850 968775133 939361694 789324792 644289418 585160199 483905131 811356074 918631774 831191861 42626862 325237227 494978977 640364908 164100110 387332715 402346803 957837987 435301957 867725323 734180679 274050888 456730783 846676834 166644709 734587066 553628158 306860859 79870057 392102863 511545304 635984661 421143042 454054736 470833335 318055842 961944628 108699257 613847224 358597960 635961687 177631610 779146253 442491555 538478869 904563704 422624635 102586113 792502000 586004364 162203869 50390244 458915513 727190083 956530079 427521156 974536474 846057756 819880259 990649930 73234446 334678669 454960607 175832406 174402915 820298495 792116893 905094139 18028863 3094861 348352571 116984381 325902488 785356105 699621257 701095002 582056378 463934519 871993325 801497918 539617989 332151632 603957218 505228557 601438253 690544705 199851380 596287901 558276920 624833449 351787718 560975609 578410116 291010974 132551820 152695263 238550654 581729833 432743569 644411459 894920683 841049541 62355507 460681162 759352419 346099172 314032354 601603152 341651665 243408746 436050596 481125986 10199541 982066992 601835668 47456197 119684834 459987586 953853278 439523821 888322432 909023138 553036229 404600967 591122699 305160771 803554078 664829423 278391954 883338766 983586258 752327098 380599161 563052320 657906144 843740462 771921911 122635914 41057112 846418885 971431833 178118352 689302753 265648046 118364093 473353835 113627188 890479180 883733016 28546631 622314142 635964597 419495217 590139973 790771074 843835956 616775907 111048634 367341269 822798535 795427551 345103342 156057504 373557153 719556391 404036767 347572866 48944041 946033300 846410875 364976684 853954042 240517970 471858601 789243362 543186529 669977439 620789313 290154496 895900130 814938895 629357775 221707379 22186804 4032395 912510164 754214204 382092096 513800525 390164293 536625905 831318438 387770021 530790666 89579324 831974199 960288823 803469696 545411418 383306876 510279035 44194552 101036188 742221358 860961596 881157942 565334249 80657852 361495066 606966770 313180475 762653640 367355144 462118746 687507997 660209834 22780878 710304398 660525620 898222827 32379272 489049635 528290995 45494731 919682341 123296929 241456101 362228669 571529704 325984005 575939495 663585510 591874027 484975936 533656554 703797153 679534743 864667829 551365942 509791485 74389806 397622975 337248546 602725181 737663809 499376937 720106717 187127383 842991930 842514100 770076072 948430454 822601940 935824276 891914586 494365305 372935581 780919283 154117851 845001841 664098171 137301101 536486057 930919974 460689188 417747091 196414294 589891987 315736740 104960360 905113607 742971750 782995931 81031143 577366263 739803009 771723005 394358651 502688242 38477692 789228816 534536836 42156762 240510752 654122097 924459737 144249382 76336877 445994831 339809345 449547102 754647701 813227055 799221497 534342048 306180991 432509542 598673457 285638686 988839749 928455842 364457103 683831454 234198582 380125538 579801770 335198712 855349717 257965433 652133264 489905820 847583064 932279951 908668736 789451017 105084969 38347680 534831409 979192919 367150697 275215739 214990538 876426414 42682728 369283907 25451495 39009229 189992494 846720242 727442267 579590532 491100150 64590289 787574632 520774714 744123565 134177026 539540040 613421928 327480695 930348534 591669416 991966747 294118699 199265527 490496040 289442166 390453970 103422368 158246876 601274670 146437675 639028063 631431374 375361548 261397034 286124026 183132793 385698415 187987829 275076103 860397391 897248455 223002342 399483762 280310581 835303963 871877132 444842491 385321986 50031748 431262633 232689589 117477891 378510256 728510517 707296137 203679866 654018400 243860570 662632881 361659418 566231017 425336182 163625533 432115597 931096759 988458012 480632209 51681774 971809990 586217619 620510949 837230927 578802471 396170581 86609092 228479797 588353921 134653841 220382093 420966167 733035661 358523818 688885749 862156002 716919961 394418103 764506499 697984888 870528006 965673473 452141331 417750316 34658251 142372231 413557588 162384967 306619375 478697597 26839370 744928647 770976274 809988296 354526924 563069595 737457637 441746564 303071495 341592744 524170157 14158974 298581241 485988551 566534340 971935931 783853559 897159300 901773848 89283823 868076583 492300896 541223083 801193735 375361799 320391761 966300689 936780192 626482660 773455421 406362869 689194637 316013156 625725058 78806420 541037908 271328509 920546929 810723904 638761906 308224891 641958094 514206174 42219027 163294078 83493970 318622312 446391322 834811641 155250217 478163821 952649503 609749173 48374389 199700108 104869036 186909387 774502601 345083900 474100480 672711470 92724398 559575815 317026700 754230815 807473697 931412619 135704440 475433655 207658003 933343096 425217055 609854816 302535912 154698580 337127822 375944796 13030137 982331578 722092297 154518077 108131090 790727638 364433287 940198507 269668596 510117099 117037105 715269538 585425364 358339789 29974247 522106481 260939482 419232615 263037627 308434363 763224483 373305911 121421939 625707322 453871808 491591373 649527051 443404279 531486261 361229648 362657329 341779155 338191867 944655608 515323592 789998338 346167422 702414485 244234085 803681419 928808223 978636551 557787349 837814473 924167347 676066755 510229653 702562541 623115266 735301973 710259544 854809209 978453577 468869592 966208389 958236614 868530104 317843328 732476343 287350911 880958965 904544016 726232379 21270052 179762328 831986276 13169301 34976904 582620589 58066153 155703803 92375636 736792117 432546848 648963544 547704194 663437988 845287967 668912971 721717218 881278820 623052815 943518885 733258136 964199761 461182127 43973103 289623964 296158780 858909903 259708258 267117624 379295080 126234582 257009644 372781966 143090704 19294269 933106098 77607952 888695775 733413906 254532232 966481670 870473078 212566902 78307963 333830411 290683113 24566047 365483592 130429072 719039042 902156503 790609378 805950552 694710269 413208059 419067632 900663290 931214219 270567420 846318924 446278755 422219727 224781026 374404997 772021841 31399332 345404868 262909278 534614233 956590676 579521361 753176653 337624545 342763042 290722890 241116156 774387367 959699138 273807365 601469644 714910776 75455452 308640492 818824781 928330746 561831308 591679228 898071495 554696227 532654309 317154375 641362101 920440383 479027817 110434674 176716613 384794542 942930066 431765047 510659289 862796323 25400397 919504356 593461384 275434022 673830778 978159579 664154525 150024595 704659821 102882320 621894679 490298393 464096112 31048078 791194920 775964604 481535295 648512242 702257591 815454548 687949194 969556718 101445854 952678156 978638966 252571848 897636972 638287075 613968925 468515544 929141091 933841710 773883657 190475021 387650171 309570836 16047805 963182953 663405726 792158481 45513772 212165248 13691754 652044147 322221632 656044542 746414002 901582560 402981972 994145566 965594621 280549582 704065210 900764467 60183814 112606730 145944375 127525923 52115514 62635314 992335234 47877350 776394813 730257211 231304648 848820748 59413349 551883755 61407531 333620788 146419261 283047007 242681406 440675990 855950852 455006599 664593291 318612346 101363499 526662309 916108301 395047615 977565147 529919442 370412982 483378261 953414765 353071737 248219114 37320899 177293807 521467866 583418882 674838434 34533542 430278536 715388363 612626975 615575174 103877100 446375428 505792381 965432764 622725824 147711716 671425937 273587493 504999828 332621969 165289284 515907284 737670732 420533161 560061717 55082128 369862559 355412925 710294420 981157459 32614810 156083665 713271784 467380428 550016540 255371998 606565450 920072158 409314136 877842513 202150024 562909983 813104213 833152137 176072835 211747418 739113329 896664412 490617521 248321037 657465562 543622290 97310876 835127276 628966164 967243369 819873632 856103260 899595638 459342864 736956977 833892857 147933868 379301932 402571987 235569168 614279990 669499221 797256736 574125349 634885096 622730906 20925062 323163759 630926952 735133177 329696902 221161303 670009780 757754088 531675446 811098621 849248921 513875663 244392640 54153651 548748348 403397515 403326177 915910015 51760789 850616301 167806315 185637533 491028207 974543417 533652163 558570747 190318186 715166888 457649763 451613116 132361337 607249894 808254297 566384566 923579749 309229972 728030919 3912180 574265031 823226055 990728289 98332724 337426962 154614919 133000946 305589609 561028871 908500561 770086103 266233402 763537470 943828630 523216002 483490690 571628452 59030330 287260920 48561358 97843959 575317013 249652308 176264930 419684428 833502069 44042306 470175796 860674186 774276763 431996036 156719983 7168493 466517049 789264241 460859378 720610435 723707130 149591153 843923535 51938482 294975994 123180162 691628748 7049136 335930186 960107702 911644133 105460234 424838766 316050611 162964168 104061982 966444254 31744305 495658967 889638048 475872392 971566720 7837482 186036505 730021452 403819263 325868298 322100323 146216575 570474406 557833335 253087534 66383721 120450173 393311139 672559231 503670215 982402338 927991925 350958636 809914697 219749704 226118408 755298657 567165205 907098930 836311593 493481757 420130370 188289084 390523356 863125174 748187230 492213075 718607319 100630609 859955689 381776247 270496261 186661739 681852120 252392000 342169348 996286803 563396883 692975190 582723240 344753069 843553526 380175352 14450294 420522224 729878484 738855286 447906345 79005417 118139503 455348151 878898737 609998134 461262722 898592436 864969263 297150924 139649591 78285307 894879611 949042546 889948337 326173997 105140638 64160323 697493124 608145024 144780504 532442160 395850552 566321981 771576987 338674044 9375433 641053251 801909262 333542718 299893290 446131842 673608331 357061602 51060669 646595969 195567649 518588840 130309084 378229210 11490322 922452772 36738900 977770936 17696086 121985468 531815909 348320607 512151831 658944046 838790339 573836196 188195635 161244935 593391896 738003569 742193341 623272236 849541759 297678659 239553148 576514133 75669899 328633772 202742123 329990541 322698814 495881169 408531767 541369780 887038098 172203244 615301316 42480637 481297140 612532171 43999913 493005936 431411907 572598607 706457007 742561897 10484438 910755055 692504917 589408023 318624243 784246578 489277007 149901310 484692313 484320824 888529667 160670581 636508983 353953842 209179147 284706601 553873714 135472102 655550645 169070744 526909155 145608492 849055110 285062551 970791511 2723187 677320370 275799757 392101517 900628540 531371686 706664502 218643963 776592798 888801919 386133920 776099594 351849153 77180048 667114801 290711189 323769443 578733280 492105695 812541550 51639126 593068969 429187062 971861978 933086464 403167707 718214038 70617104 612870105 973584790 796387123 205856445 779016688 264543412 356364307 363521154 867317095 212748605 486187219 703619957 792581874 579496432 872130019 776635804 282768989 465533121 314304005 455989621 320253699 762202453 512758482 486840945 539936343 611605384 431950133 414562676 495012959 785111527 570696174 669938007 958123059 176338486 729334288 588057446 868849795 341981676 695059843 504765923 150723599 96557234 833233795 242057345 85647404 256310504 806779167 520666857 146651462 39909408 6846907 701101368 661983064 184966049 46875534 312562815 16210549 758064357 211930149 814018370 649651011 690918939 417888478 972729338 48876411 807829158 119895918 714642323 528232555 252240795 797960796 577189358 413045108 687455815 351457667 200015456 785194123 987190952 736928404 698267698 610676924 588705263 809206673 359722783 9068706 520344836 901326675 870895577 776158961 729713921 954298374 90620547 30022893 98311094 194707368 813642552 397505776 474366500 697587341 997428355 881263336 380259074 590740957 334190565 509490390 855182140 598495253 214299731 850124624 148340846 562936194 851894965 291156991 443320685 690363081 724394088 889455138 845865662 941200738 976628669 497246986 503909661 339023384 741184632 482441884 382355960 547885963 872584273 153420754 195559922 465394350 873130358 623831354 349564256 418200905 877862664 356378485 584183503 515349623 896387993 314960825 860396412 102594345 816568244 984182864 785271258 582361762 967152213 8992535 351878160 311244538 876773229 337756160 470810744 11946395 313433184 774666640 273042978 281032135 353378438 40386401 491025231 336340751 296605613 792709281 858791926 73921501 204548245 437992594 535845954 619821036 828311411 388615944 247128337 727971530 173608047 27322094 15945847 719655005 184299557 51408577 512957497 236073307 942094888 332305683 717964371 648535504 888629626 204020489 8677235 261585308 200529686 469813982 78114171 793269490 491408487 509038686 858360322 335498971 845910990 735549804 891515092 840818097 362096927 44303996 605271150 734402980 804408868 883980057 664197251 968517432 613510425 738602593 776939129 21957573 308938542 198945668 65112044 789837302 91769097 969908296 834567979 62932043 66827585 220772744 229487542 279263639 317393124 972480944 496061638 647397762 434073074 339496259 929788357 440034568 849744351 257510741 968735953 706467576 424011285 771444242 205948222 146804853 232383087 474849077 281067025 166176633 572267456 864839825 442164869 451863885 398242890 73890444 760533130 784884499 847671879 554786975 969782081 778480700 617227876 18808279 69565825 477822738 49225793 21751127 420925525 113495343 948250354 217470164 438727036 957773828 657025921 815598359 646069736 236765524 191566697 857827455 30927936 19536310 267200796 459253116 839656797 185715478 495348863 549988117 250001104 450536756 291950953 995882851 793540955 926669347 538808871 440654356 781598580 926256844 863713787 725372137 682877381 632441705 535036312 220460088 707284398 206080010 283769768 651853162 869175746 151015699 162647878 713309054 597017669 850533308 176088197 89012613 731909045 496554128 318089447 815492900 842835262 327805934 26266598 504131349 876943684 251847307 875749230 944626598 147699677 489779694 899092065 755353912 451151700 324197619 71718162 654095041 397944488 498460745 57374154 756717131 386307594 485577460 376275271 899647859 723322723 817903307 486460216 851077098 927448267 410195195 725231298 577684983 663060243 20777090 621067006 342173428 990668860 484269237 41485688 401260493 920726014 180705722 581338290 457819524 915259970 18566415 816007839 862002095 873705896 217545729 45437224 768823032 354610178 455179318 485552810 549450140 123921623 169465380 801629302 302486509 36472801 326247319 66292048 807716048 928094607 901204527 786321905 823634496 191598468 807648735 343490437 523114953 89163542 388418927 897431086 737418509 377969104 153895675 149331839 813564483 878682608 470091379 100331265 934090419 95326442 451361817 58531505 47021883 431722979 225214213 629758848 324694733 511684150 654612900 31443922 888067823 326316019 679831093 420467200 88652345 956219995 63684939 797090518 13804250 381908069 931620942 765555221 235455764 921465661 944013306 623926514 907726268 899852991 53436637 552174741 582520507 957705216 732518877 632016027 336315791 569938374 856068785 789466517 652264906 861456139 123882595 484848007 426147730 630847870 848433620 721727082 572387360 571338241 108725816 311695018 141539393 366612268 935228822 436939176 771974360 22305737 277309769 476351033 267934554 109705558 674749569 804781861 699000912 316970118 608089283 809054121 943567833 180794816 430813285 508409845 516662821 244449694 472062739 18084271 207702523 827346288 164663885 418434159 806776628 922802103 883614694 482019905 983676221 153030314 917887111 970614310 55073177 842777780 390143018 668557459 296165981 862668019 427583647 412473840 719168691 44112315 847806474 87684889 334064983 987350801 202342243 458607073 206584605 183844657 841448180 969380235 54715753 687116553 436375775 733621071 12561077 102236859 114141590 476335323 319324943 617894431 607994465 915156687 801796248 280018750 561950683 971756352 572866566 627208920 950253173 75549750 970053922 372810975 540177650 482972717 265900363 146893562 821941481 75562136 480047602 426176771 608548679 521786457 683305244 226018697 74249930 595758667 167387107 194264655 857232519 116632505 914568437 998299339 477432420 179335907 688190739 477916328 351476127 552232320 600504211 518417988 143129925 38291255 407196895 644611379 88655547 6561316 281421044 747435194 111497785 313681242 591135716 280768085 243254091 412374875 127454292 967553585 142468430 54083234 82327039 239075250 785310201 226644505 630204977 205450735 46604241 22999971 160165964 245620273 367195827 655688339 424491591 608540792 51633230 779809331 758818090 810969078 828489894 278163519 935340947 611845521 199346835 69951847 901541428 339364965 110140992 220827600 876813394 695229504 486210988 218468244 858338888 394447909 268191020 383907133 145651714 244205770 48768487 942787150 962941826 545343769 405635673 763413946 955241823 905775794 748332752 115575403 804049217 48266856 837892082 375397820 146989670 933547200 274407221 919777280 226379296 908959349 941673318 627899641 320013397 127219959 891402531 915491937 211058686 523520743 702634849 279830117 543030184 20352668 190332390 468965924 697610742 840965793 439325135 390221364 325756444 446516 157192716 958177054 146820710 470473161 931813343 485061085 823427759 531384198 239660385 735587939 677430506 872751044 559674877 419584533 832759197 248120724 393584883 762989130 229759073 436646711 117899222 793838799 161230948 767063717 663492367 659776102 895331558 374330888 171204184 131540802 37711807 101657150 558747969 181121420 308198360 362713434 600257966 798154210 936310189 555225890 170698326 266907602 588346834 232929171 573588294 145098340 121107819 24277849 26092637 620023437 767531698 468618840 682145741 158513085 963978612 460804134 933640864 793714770 413604244 695227022 263317809 471900706 738769287 599998990 270630319 87636214 331833047 930079833 63819933 625447177 719873185 710090455 697449813 320279437 386514966 80707360 347206784 42098470 769335549 639141253 620949663 33846893 860976688 67326855 866296454 27703918 649080858 967880797 336359899 19645738 995844416 252234611 369072027 765745686 29392565 828820710 103036566 704120474 925118115 271499272 307512302 643824276 203052233 282942434 635065756 448405202 780089080 559714733 711996139 923357595 644087189 754225496 949922043 102950183 109840923 178443782 661498175 306922018 222588822 496502413 733779456 628475949 327501608 808225271 59429591 116713053 669805191 256652292 837678391 985610682 109828221 542508455 139316449 506267585 242662759 425561989 680194669 765194979 760016311 846575225 483090888 117045508 765830259 125909011 26477232 969211389 602289075 805462804 758041914 256718362 546731302 301630451 177848397 367627420 196112526 594919259 293851172 193644599 42132543 49911467 474761424 778112918 78853540 434703476 661190324 231920083 40455098 341629695 40361735 205259007 709628819 227890373 593225814 244330144 458707157 924253428 782544639 212134957 678381113 105441777 602539958 778327444 519072780 553129936 881242116 629247925 691137201 374671070 865629379 509384421 437193500 828148760 696872099 34613100 921266520 618419121 471335593 598542343 46134019 330980752 136269483 823450726 453983693 442063311 128757717 814984111 462729725 40659773 318641446 929428729 356405995 776702429 716044275 571274706 181762439 350650725 245509732 728531642 600233681 990029248 784845298 701083046 441327198 727816589 909861360 241701502 734240474 562334877 419629055 450616223 758836864 395174008 881982615 305024089 564387236 86512857 182805381 623540081 522316586 391624750 992204903 876945825 81296140 511300633 201959218 920082452 449956567 141042673 436979373 491451114 983895598 963623234 337737971 805982650 862827334 703147081 772121589 585874955 567768425 345549432 106363382 397312985 521080179 911463672 35909133 899413015 436354648 437346594 252516006 624801575 799480220 437011205 742146049 610132835 350412249 16962020 510376626 60366232 655233853 153846453 720416799 214897030 906477065 235742882 218995461 360345697 470088467 608615820 566588916 155990355 217513541 43020419 327648206 216113144 270529819 209748559 871468620 676091616 394683177 913814507 141913209 706925072 186978963 978222852 816824629 7810945 741862036 924806782 3847091 316860320 985075703 568930543 554068987 863039436 381112737 916981026 926761833 19915484 557682949 835457174 843611948 483480982 403624110 322505725 602770632 835197753 742506681 35929533 248169108 362837492 957306200 903119986 113016893 655802732 385866576 960897898 369469249 928243514 926249595 296665895 677413237 104637803 216694855 766087649 963992960 452595966 64591414 776034818 50696541 485000810 828225116 165438120 98465501 725228053 188782564 203917350 715112483 491808990 172936075 293664899 301857318 341888660 199182371 357428217 824842546 7091324 694987026 654529399 850514791 149007823 9543376 462009632 934995257 210853945 94757229 268500682 213970926 474251356 288754440 998373504 630830115 969687115 724352089 619494145 574506568 18769935 937368360 97960510 10820895 540797477 720505555 957576159 756535873 747910142 291535053 696117695 799070361 122680446 783012633 43587180 678337766 473798270 128734931 130261416 654099518 856837451 246586023 357215467 254267014 518666020 980427608 483626462 115392250 573137855 146669115 308490465 15115948 145148100 722962873 149396870 797513980 637083729 744485840 770701587 664321573 119475572 316477075 247020293 634429872 756172980 617137830 928191368 885890815 564731529 466600898 23756287 652173764 534504415 249853239 743740290 667815046 251678872 836537445 363510619 420800291 413168135 138556226 912462728 687393609 343889781 762967767 905401149 840008955 353792159 536918979 702447455 86657810 366872630 570028726 792834313 607049145 694299742 980820215 495722507 652239089 430595375 170948831 809566566 1093899 574031159 387496540 925702609 137669936 755892727 749624687 984669239 3966428 667314785 900587182 508783671 678845791 396463457 996322243 379807395 292610139 281246801 370862058 900338689 905069129 288904578 557230711 918973709 724552180 499256506 472383310 929470261 899486715 375758257 644764521 431467803 9025875 755209875 944987990 109226775 963548100 986738817 138728886 432624563 642381927 506958863 80333760 124325421 166339630 16133063 972488635 795893496 585320540 758697125 967115143 368509499 487310601 59834010 186089237 768470096 72111007 888290058 978455786 242072134 32802144 860206925 326258849 623280224 728957405 24245553 440706406 328369300 220135808 347271030 618035835 222661901 251239939 388173905 720507318 836886186 651919095 105257450 563849729 275826044 626996287 73348830 992313306 425035596 427326098 847106749 120921040 510945298 825872892 230775949 756039948 168585343 538850909 85705029 537317317 359832692 386776552 59922515 553810891 599199113 912384934 560321047 900240125 740316551 218190321 740589157 55231955 777200878 142887673 346721031 66195925 578306928 549346626 468362297 356329505 549749876 136969764 778269995 627104233 386455444 374841418 14282883 766751987 984862495 120823348 910057688 119829015 116007064 384221877 37715768 288335813 618623285 524304757 348733859 968648828 412232289 726044015 978333581 853188436 146902074 587075444 725455456 434779765 7670291 492491431 885741560 269556126 356194035 861349632 732540197 600836255 595073045 738343881 36139052 585046495 265943398 709945380 678529350 34357974 951938571 831515010 328512288 976379540 267661528 184801837 291572570 824775737 175268057 247815103 344667400 297353082 103926221 37858729 860166964 135024931 422395558 112739757 939068761 716277135 540356618 845420645 489096682 661537586 351275221 343237050 923723465 509792016 318466197 362778477 708461008 780451651 902221324 936275345 328112460 443705720 516367282 890759438 609795196 392591218 713633841 153848352 296840215 164222854 696121575 954747095 309724867 764545310 753720935 373285269 247834015 536050487 371762936 198078867 593077434 92737762 767500564 366946651 861739929 495090118 995411435 821994831 448794037 805786268 952035806 590379553 452424954 335631794 951203076 3108697 892298314 264610153 557714856 196317139 951201272 473977015 116936904 503083070 898863694 342539174 853869208 192071070 548481543 502077907 28177661 585424330 74225365 684700912 624114195 653872110 7954396 425769794 802800808 813198603 362702389 291351587 630324414 149359730 555396460 704127105 421145613 44779597 656535555 411209565 221172350 857534998 778087917 808901198 743583409 544598814 106531091 682030076 320172664 72197896 805455827 643327653 171047770 328951371 581625211 399926426 712738065 188587187 34574547 162685635 459256844 830759392 94647952 536495383 201052142 778522565 49848802 963418917 528909837 241961258 145357543 698026639 399802868 644040235 591681333 893640073 932949985 572239544 920653396 214968670 712694087 75501331 870624833 73126123 529983309 608911956 93930989 315809571 645998926 958017768 854017468 614242185 403110232 174930190 474136071 243045561 236800173 353470809 370597786 171579103 467467332 682410289 411287606 418419774 43248968 484615505 665504528 389076906 139599256 761591370 860719952 84569358 594372166 392088831 960089748 724358632 983781912 128339751 253554026 925265864 41458698 248673231 585417689 510825684 276644298 428537813 877703129 154651719 679865403 475103854 994367958 967435502 581179379 385774497 184158001 706312617 914215868 304276681 186570431 672037360 931334934 263936790 159148360 404578379 152682676 59619853 29185033 585113817 524229883 939486724 361313587 854333386 721845894 574214311 961326697 222031333 563363492 846926710 161875782 628343043 350463960 620804676 149058005 170339474 542471768 937356729 576065303 40035347 820469392 663032785 761363329 229647771 108704156 233581660 897460603 926482006 309692881 867593084 183010786 928302848 783343412 189806633 597033094 387855466 401554945 692780208 528317101 190938619 442520358 681893680 61309838 101532204 663155397 44961308 643242199 398009099 73255094 334267580 422336808 649143481 78536450 379582891 564475542 68756460 339119209 656618330 907744041 9832558 769738461 425820812 152355166 181540252 866121221 852875480 282044581 26795751 264691643 994329899 948240867 950789718 205844622 630377539 26233330 434883331 935595073 108516661 445274653 801864089 345770570 318196711 582445733 597649629 80453204 838957462 95254334 749934626 970848445 996806994 90203026 868847059 468747033 915960445 893752765 928073197 432456365 848289104 186263247 519502465 320453876 618004310 89760589 509556791 272357406 998106607 985461681 39159494 779245964 540734671 232886501 729170813 740161621 740703868 821204172 932026302 383551429 677973715 75773114 503436669 193807833 440429443 988020214 202576837 752076227 987651216 696011839 300319539 325918828 133828306 301679684 323507321 680184557 34399859 824026155 787229916 64873749 824701301 314001931 951743159 187591655 513565738 371811441 593057270 978972184 838131642 714675935 719248540 891242133 761758368 512989768 205961533 612811515 817555757 670741910 397204356 433353757 585360900 624504357 606882991 230538882 630424220 981615685 686497806 89608933 399152066 441918395 84737415 120332979 370908692 500551744 870980117 288092816 948601990 911599617 635580484 390299858 701450465 870638621 78192311 713224708 584779839 346939691 298049187 13360997 995134865 504071601 89935441 243181927 46098969 898559662 980388256 913625136 193200112 711203857 19244160 789796892 582932097 649176895 886110072 280850489 954763020 121128849 995591200 500309193 790893860 118026451 401851816 553281988 819025202 794713543 949823312 135656275 971985647 476742816 860877038 419389014 654543342 957940103 347195243 202526943 219724304 244757274 579367750 678577845 512335885 607000808 30798607 709243858 561181682 708258294 12852205 554269925 368023965 316156733 99686425 756667345 355688259 984413225 658872673 204523052 538928619 86726939 903537062 832680385 319547377 299723752 642729310 600232719 255028612 6903897 34475538 991589319 787197735 159841449 237603041 802639185 923822644 870792202 500943612 775568712 385363796 118914848 625557032 639965178 882549512 788194948 857557311 931449065 373555236 504332610 364078255 64956236 845804110 125464411 595192057 890823310 71827075 277645380 727234355 926801102 690134419 817091941 607678855 877863774 155831456 814165660 638898098 658587973 125320099 115361975 746509702 276919741 870677479 620853757 89335656 839100597 932194444 20208806 552927442 896752975 361227013 207030110 304269010 210563171 717737882 561505734 805152393 229011707 886807015 350186739 63290286 494708949 201435995 23087085 2991369 270016740 232796090 269418034 742249720 188641231 167399324 213299760 908443117 744025201 462754540 607968206 494570733 201999959 848316777 343208676 854480402 886092869 185862952 941117374 799932171 793794226 763922704 470790557 701388695 11058759 542703452 781080886 198692365 990988387 515827229 683614001 920251864 626364314 335433142 67516587 487809523 891468849 458342238 462482868 707065713 676475556 311338913 525999058 721796599 526391329 642598624 93648509 134626880 770011402 612745164 449776544 437564056 771014007 516140015 392198686 261359970 638428082 888263203 287169611 341247379 705137337 158777112 833805935 450996020 678518463 223578067 507080519 780356579 379560875 856306729 339367556 231092562 649832343 306308424 173174089 818735047 480675154 932078639 516258993 490291867 250353375 423326769 653390918 365432507 507317236 611169143 447977099 586947882 438105212 280566138 454893940 476240253 687785749 25783180 646988009 697462877 880091539 635958608 583644999 795738121 552136571 568684862 965463518 891455697 137426569 721706785 827003252 284827548 937806634 916905112 858181312 747132515 506161923 93088664 46386416 390775476 604009320 882818280 854650404 274505264 41326053 794137763 457777136 382359308 50686137 701653178 319568862 60482708 294704982 238164848 495709674 944760228 748471523 404555228 80277252 700221229 175769786 245740138 944439185 382880950 802090218 730496858 934037483 983781592 911609014 950257984 563771612 624757697 479321363 299074434 763543591 205245874 69942062 114006237 299071231 494865793 335994084 16895457 700128910 433355032 350205257 777601904 249315952 344434676 8791330 608651075 147429173 610377639 688302442 861030501 384188642 413055574 314442193 662555574 746733936 127506235 247725368 852158569 398588748 89769764 360696886 108361350 597848534 276537586 701043094 905102185 954368482 696460827 336284375 391101505 103515706 790729001 476894379 482195602 285218841 501965369 263750008 849590451 982921649 519367549 635298266 249413713 212314278 521054650 78636319 823775978 327917202 598687435 576099273 425888851 742811519 930218524 654892560 943620915 186607728 460145967 478964829 959612805 809180120 230162971 132712912 660202778 553967648 940783624 261267132 614866453 723106854 710679988 460643621 877875053 615996857 218392561 656680777 76233070 3492894 466530852 616344596 798505528 507014286 64640712 859165610 658193983 734957237 394627561 5655009 736868553 253030197 170776490 668410052 12598387 55844897 424785087 506473745 985686957 895682946 735675123 808856252 583293241 653136342 549009316 387125098 169445040 893303947 341718082 698270455 481615613 97352841 754862804 343674864 900895455 223512229 230826098 319285274 971337579 471851055 975631308 173922025 343300233 392706917 627704225 197504522 143643506 526110205 189327689 116159961 249194808 670179743 902663980 724125675 343137598 70121065 76967753 197826438 564095932 633217898 745625520 853165092 128544316 320341799 452876040 206045684 86376480 520169496 44517130 414872665 408933658 720016684 402619651 355202665 482074033 166924353 783743574 200444271 232116163 709607597 506753272 449447273 134074109 746890680 89756147 963215242 698220901 816759583 469812707 483332793 583321041 120933779 956654460 583946769 414230125 330048824 498982402 489917791 602812217 874877478 130172367 368800167 265601673 843087596 61636304 484906912 354391939 312582408 607931144 240455731 599559332 849768816 528858381 900419839 509432380 211067148 237943942 457108184 89713389 460585273 708943539 580784196 389921840 63334471 68186853 669503485 344340176 869148156 859057409 917442418 827546988 670214672 743326209 44490565 248697593 33223343 558376051 326148558 249531198 437492986 167251192 213687702 543896919 122588550 750979782 971032029 471020595 38675675 534962727 321101590 749580566 93475830 866366712 739253093 664152600 522770119 871127339 565547816 183055011 38924980 337642309 78872427 172856312 313806612 596443872 424613490 832583595 753140149 892823850 974526003 493157411 552378711 611338597 950604505 848032539 153149999 430453605 538847555 501114916 914393189 789038101 842850178 671147809 958825110 335821298 543937886 399411913 53301330 86124942 528295122 487584040 872287391 467473934 850797708 929019934 868167284 912847277 476633710 910258654 717749055 686614583 930862096 987965809 276271968 538627470 955071803 204095281 268815531 822192681 453503599 763697486 596473066 22285200 10904926 131941964 629485657 91017953 87565679 433712003 487748136 645502798 768886844 29089182 159569149 916646557 189800980 573812509 57467247 601764263 262112378 952696019 136735372 393823449 321561763 847445096 72040020 970510006 486611452 280340695 6095419 266914386 54228131 680428785 890508715 333468121 803749353 889314265 397212800 977635590 169527510 729863559 10668426 889328556 87169189 411109701 879330062 512821809 180410691 921088052 10966854 442415630 17388500 20831176 195134172 337912400 730611503 220941896 663285619 433061914 404041309 61930831 578971678 77523745 555689757 669032526 593690087 817998894 942509155 623447815 713942090 541912992 176213717 581232659 144858039 866926055 151758669 235745118 444768275 870042634 138787162 599595686 579814711 110827554 317107134 368990719 271808880 566682077 895392497 907842641 999005693 946264316 557760413 342963672 460194709 335386581 536895264 455933092 278153950 604540881 135686669 178169623 861137655 312101359 216884395 43175018 703205871 538970944 188047732 617526055 880223563 813351785 680257431 292561328 355866244 196099876 874996599 923297975 349230471 125439679 609476394 342925252 820854067 125311131 768068859 766260659 134917598 723372974 880822761 919194419 11069393 105239041 991270438 292900168 542319047 121474355 57344408 213220809 557667186 884070133 948239963 249562082 497236982 220738956 482844988 971244180 828194924 553818195 208459328 848950576 72556129 16504886 861642523 939674592 297568852 5024823 492838330 851103774 602158651 652361708 388961466 685580603 537509374 743180287 221686766 634976473 277024251 515422893 156666076 977058161 633295233 339472456 345128769 927069391 850514773 22630837 301464969 508432529 258192944 712805615 198608727 988843179 634863934 701954946 244255235 346500581 222839968 211072784 85736215 647058523 348087787 657104848 651035858 604099580 570888871 431313674 271486117 205889293 106928338 575527836 870843320 730415779 973688154 844383352 946677094 727997740 929494694 63420195 494345148 298852071 309412622 402378808 544245758 676104295 459304798 453614051 8815395 224219924 783529304 629502055 68893780 203408809 837832238 195513497 178683761 267748535 670325004 690394210 301755276 597777185 871695756 214569280 829670763 982834846 741045823 244524229 855055370 717933627 979629867 491439383 932667159 926001366 907604040 674676591 27547509 567721380 456744962 135702682 707546553 888238763 593619386 233280379 256450224 186828617 588798021 538053511 246560727 972438187 726007403 908250951 841904609 666011223 494489449 656811225 604690229 320292003 673606512 555986544 15326830 84650811 742775844 260132048 293778649 348393887 512324381 391245778 43358970 476659618 61631081 539763942 994649351 905546220 152403208 976001932 76041579 784983161 146968943 441389018 969665861 638259481 487364102 412541689 391128294 540429806 661863338 653176744 186104919 635057136 218877483 209503928 15538641 158450028 930167503 583416718 733725762 791451777 805525197 261904036 205038031 100933026 884635091 917534727 317595724 896296983 367445121 899219930 933972422 756860539 445538540 39284434 64612090 43793215 833298716 365144761 628493787 317505318 550969230 595769068 622106127 227515335 199560626 418860253 380344179 531646479 726141038 482047633 815589011 307662012 33070745 974599970 222054195 955758306 288745857 160103742 603904201 346825322 289043302 185552294 85969151 643390606 816473084 655446960 808841270 621734495 969237741 28958662 404885502 146006847 772784213 783642085 554533279 145097575 201080132 606537247 749527188 823725154 972168768 558046489 148877067 925779856 669224384 860361870 977657446 797114532 126267058 451905994 446852540 695650855 241819893 161460271 556135000 784637939 338599392 564267443 254136377 584129464 968234170 988893536 403829905 690476922 695277375 282137043 582815303 285608977 909402145 26419646 959503477 56012711 100228485 871294567 500744426 248642622 427935618 598029350 216063656 889534504 366742182 764430059 982666343 421877901 475717744 250319029 735330577 139937256 249576407 369496604 717025348 492941450 8684993 327673544 721867475 466672406 987115917 28365815 595660613 345676035 971892618 68319483 609315924 106802462 741966717 485274554 667087728 497819141 1754399 693307693 789448506 863830700 311801501 59476961 261238793 265881308 992079126 930007161 418239592 409640367 359373089 463993385 618379158 888743958 879283524 916737341 496239108 888950611 24297598 436250512 739996123 54236031 636129470 736963349 562745716 626252805 681650025 697375826 497285085 607967269 493727704 514618080 270704987 516075378 899499991 378827244 617737698 157418580 573075496 525690041 711779743 6500999 280864510 688305436 61800303 708531098 411669122 897551871 808845157 351413106 734849362 491462622 742113096 199931076 420347133 672093517 670075666 190519710 296003208 4358511 10551666 39780830 735704300 286771328 240220235 219109817 153260437 887212621 874000179 802079286 20245220 943238327 82712565 620625841 59330223 411984436 670208271 848133209 375862972 402160206 854158389 370807985 875298633 521268770 601220812 115262994 357246343 330981601 734493808 278413608 787064858 318483026 272442222 824639089 205611931 56909134 909177162 942063810 666699542 682078787 430235451 918540225 467459212 6756786 220865194 47141483 938758002 600725682 962651575 109090704 149139249 344525674 819082164 836998738 475850660 560336282 61841831 500017322 799118749 433658131 884662476 424025571 535547231 883266106 138798865 268480797 261409061 352540297 490684313 312670667 802792858 971237134 80454970 451100725 994260064 570435819 572120831 586339319 169705097 142942676 961316006 658641024 154081057 416465044 729669922 550868884 336511906 704488328 451083546 459201483 932523133 446418722 424517481 963806992 701580696 73519719 928283548 575844130 822140619 123381106 452794999 75471894 788217442 572597231 609756784 336001235 500142494 528861600 451418674 604994964 166085428 786745564 843722012 629791850 323481548 718705419 917018048 669723064 646111363 12217131 387254884 666625205 602991977 306957902 942502276 414254061 440380932 406623258 467318350 543196608 22499276 368646471 485596964 318938338 127649965 752549413 466037790 983937753 162124168 247048467 155134853 382729859 139186865 507185929 479823961 861212301 338948722 601049103 657889996 105992700 510056327 613179844 936206021 772233896 554322337 51593176 680505439 494372796 248696291 268134545 795756647 338743352 583850856 109635402 508972257 345246575 893041595 509676784 284356483 82531721 8033629 205872772 499210808 777884674 903138882 428172187 218887582 267728937 945444436 914997473 171797897 16938914 639262703 440386705 779718526 592802533 199055459 956489471 427961656 52627901 32238198 66779918 452563751 970698697 958695135 856734906 983474924 186342142 853492940 948845456 520987615 172235299 820297821 917485873 783297417 383911251 194380582 593754579 56306730 245466751 754835633 522797247 576175924 168094186 996908794 482414804 488449485 582533803 916513521 175427331 862169426 69825838 314435835 571707089 777447887 766989235 92174706 555779288 860232327 749101262 23344928 115068230 932595826 919737829 305189832 400535644 926349498 880696757 462065310 451355376 790763325 22763214 529688265 415384299 27179790 693831698 782951912 701490636 693334260 478119226 119752842 909647140 380633578 956346193 360218804 340735256 490001821 212920631 495739488 427461858 5414641 381102111 793560056 236546384 119293053 888803345 353961183 970824516 256925962 364799593 903105512 566701618 470948375 33676886 103422941 416362149 752300632 949819228 835622905 60645562 889719347 946193874 892869742 555717794 661922369 599326565 815306465 968736037 372779475 222391699 968872681 142384154 959722859 910345265 243591827 214745328 159580478 648870886 449198305 376374569 394487225 557055661 426421318 842833113 643719161 569893975 38022955 365335851 874489937 374510855 131449454 816599772 98664648 457974708 402629086 911532222 363329944 260372650 878811328 151007287 644342193 693531657 418458189 604115391 19070259 752138821 158286897 416700774 993118712 830315172 414967054 542896459 858319880 571499459 48342775 305831462 979183138 604972562 444154869 286182847 659906618 446154835 346150534 501728628 510789109 840311839 871407641 493501111 11964718 112642657 508362131 860857742 712244341 656397272 4747725 676518674 923274123 348340121 214999571 295255536 865256424 128492940 423647910 228880107 134728501 764738282 63841083 621807960 234431954 145256645 684065659 730674080 732525393 383998080 135007617 902397377 657673465 891510867 468797023 367747022 671666756 323564488 232349849 48104554 582230881 138640449 361136807 891495249 682440115 348668783 19188600 781844432 335886415 578655708 56110826 272126280 945803906 38455651 458500179 559045551 589683273 154155442 816901883 192004110 551461080 966095055 149013663 971018500 610376468 797704080 778965488 316936001 374322712 701880353 719927058 502108684 310230452 196600962 699461662 269701566 289754857 710679303 438262176 690710597 8397422 754928342 148263193 98106786 806514478 758694508 571772798 665273963 170317000 392956953 906604471 203152970 900962318 369711231 539415329 878814331 771517318 887871767 642552845 976095826 877780460 815627948 308830782 380947379 717064366 623699421 305160559 999673752 198676079 245950367 896878027 657323151 972696452 311569337 985904755 7166265 838219898 914642759 549622268 163977932 389042318 941067064 221968622 140899730 437644851 209671376 834662982 827839336 203953040 655211046 44641780 180823104 540368127 548187815 924576094 582424735 975119760 578996113 264137691 393224736 645241732 474798201 959679289 753207791 325671634 184961990 127174712 573809486 306180517 831821107 335884557 881450515 367898843 636414545 204382176 203061032 670384776 423064834 84595534 229384970 486125681 432323072 930426599 717136971 589796498 393121108 259084721 624563729 978383256 130777823 644881571 694729876 439809384 742818516 501839659 683180451 672960406 290643004 386792361 802854688 593358319 925941105 480748530 183771519 55365360 244370595 3523021 803945547 761848908 873427542 102266745 795906210 267923305 743700450 93803558 474753972 763581923 948458482 119526007 207030087 783270920 287650565 751998726 765657654 375843675 624864240 673244896 176006893 980530962 261001307 318347781 638681071 172092568 226566975 23045097 324470353 403101707 634818926 664749558 515441212 834987711 165538315 883515400 888751470 329997241 309020430 324158191 361747898 875928628 76857793 511429361 871084931 560177696 699401029 524352581 45104709 900532382 167229710 857536408 320835341 680560773 46790499 319665804 691734779 152772320 970686431 292702261 794582471 383022446 641044979 569281946 767981114 178605857 98351457 73849914 440764080 539144351 461022402 918028932 878434205 669653188 761137666 228265565 235296261 62927134 318694111 466516382 928815105 98445424 597139821 126192276 48853313 717950256 24222868 738169983 962909573 667083784 341505680 842742291 142136099 229428824 350397809 922585081 776567685 513184946 865757593 992128847 878883751 438813021 210559552 741541412 901868701 127882452 317774835 689299965 486166539 510411844 308029713 428357715 788461227 227470865 63871565 348820243 79236811 662226513 667278127 242594076 205176524 265433423 436821651 22159556 101669284 95725066 84302632 153879636 376418653 147633331 225093105 53143687 626138516 113488179 927811272 842994447 394412027 145489826 78593750 624689936 704841431 77750481 760186141 240905123 213589378 7985345 388026094 781918805 980197610 748031786 49799795 643922853 77612048 764487669 137978150 803363721 27752075 97099202 534041688 974877674 720301314 579859043 726520747 32039715 295112629 644517215 366664600 4306566 617875701 940828272 898612203 382149335 271259048 765258757 666048065 945780943 753390022 643283393 99123857 997794714 821471454 622150906 887199136 970629977 876422802 201391931 733562763 370120609 795813654 581274818 49909825 243586043 351906229 698708739 11700231 305523298 530094924 924786979 693614578 43571656 403401421 972425853 608153712 2529425 705478078 86663969 454561728 441612053 963711159 338325072 414453877 94891042 58508776 384618753 174118903 9714553 870349200 85350496 227048193 203811405 835255943 732506697 787539492 439132615 870042805 827744721 44675139 786051460 694077848 279355838 784518421 61881365 684675267 421515018 295634855 972700029 688875097 222499172 475182295 203362231 675498390 35742126 740073946 616160558 956272966 265838720 86050998 528669507 910566988 251810468 907149513 332104395 259857949 776055192 157343552 809992846 526557506 184493583 849228705 770162121 302346714 39390320 229395010 71593133 697010709 671549269 609315535 364395230 489382074 937894926 804176584 328264180 660362658 414560028 126002688 568980477 868433466 910824118 846577439 819530745 301798405 68852551 580150305 385707101 171755800 162459629 994941141 248337297 375022749 204127484 429740384 376119922 58672976 69406329 780428471 681837776 7993861 427981472 285345576 767582705 656084000 476270175 371231954 650154253 29181467 26612696 803371048 965092815 475269636 158477027 169214577 191711962 282052604 37077897 958884427 846419010 16018105 212823178 606560292 34217999 199773701 301211608 519085760 676669630 909583164 135110426 364299190 361911231 168808402 581619754 519423987 25269240 317307851 967023511 374388277 706457664 48916033 788795684 176828304 997793765 903463906 730757191 280422381 121051431 592744304 985454763 581400198 943596474 994586175 32219822 244087916 28984136 932451001 215980004 519075073 193034221 160386269 274872722 121628286 597718713 506265788 693282100 600286830 490457138 18938108 945309943 929685041 521404623 949771605 5889087 328554874 104024958 413853974 10454563 214718162 282873375 430258080 536525292 679916563 813333510 601337578 900682138 529792749 775306877 718730236 140959327 228771172 996923199 753613684 984686369 510305872 239519487 810281476 858658556 90953179 356909535 571770097 637721534 18788359 963499001 611853462 877873770 201081638 861658586 831256287 86196662 99514464 950812929 125139919 996740748 943718960 928509029 666631162 620774540 552942311 590559980 658451723 545093769 474897704 595014133 11132480 768003336 83106922 378466767 168081641 705459908 711991162 986015807 665654508 993051949 563766518 528115454 373833540 491121891 659604946 965110329 717598845 755279424 914525143 558940944 527827770 127179724 489037855 938899479 335574704 214092486 52898203 721071575 951296808 332001186 334575501 250613070 17139328 600598149 636208654 174326891 768283819 720178635 157887625 816947347 816885804 794133122 111382078 695587103 188417695 732765932 385863872 768911324 466107185 373742337 885676151 156941193 73807651 313787627 551148319 346485340 583506507 599067016 81566791 885353086 989124498 434520811 716022739 247456394 499472759 627134170 778317435 512367122 31577226 115076434 105956426 204510746 527092210 21224703 885272863 424860571 871822824 75793861 955518255 552263169 459374138 288846650 456013185 722457006 535107785 767742249 439185521 809856117 466016779 816527376 966842413 49917983 610720649 847327138 266742075 33008361 534687842 714011975 77679857 850656772 511825863 653882519 961911804 493222420 980845949 340777443 872777946 793881522 703335518 153261740 246645343 18308074 639888600 734339625 279203892 59472574 938724204 116302790 824204115 574257569 735970608 88951200 413743245 475966972 593655886 750541065 623989508 36046252 667096195 836792586 851749041 976990082 208124320 80095964 299311327 105827266 929167885 13568110 85607598 395339940 894441281 963998435 332110737 4013271 556019787 358448913 719508944 902170617 648346188 883079682 568351495 396676384 700652282 924903798 409108645 291236692 839125791 713794144 252165230 265212434 90183448 668309861 529328890 431058891 471926103 576920416 59496499 572184162 367555810 212012513 67278811 636899250 970856401 646269353 653968900 443733510 73870291 848280367 675959190 38371999 374666410 842662174 592317644 311524914 184350890 898384085 897606583 316145511 959324990 279613157 694788794 371858779 45553508 985675671 19630860 716630047 462817324 835209060 116677945 568076598 554169148 95231866 783502753 670523931 228987727 863969342 384645368 564476089 263860401 327651268 323067076 496859121 520441285 702464601 756341731 148673047 343947135 143747322 980226 754640245 2513899 46361050 820449062 302825671 378260132 743772896 960826407 259425726 155680093 74714150 733060400 203801469 292854876 185111675 508940609 539952927 63737594 839989730 586274221 218858543 260817956 217709585 993749660 287863598 30513885 387444979 560730506 411218448 407327930 9408807 123702726 747969215 979521636 548095102 440542964 484409751 997509658 821529728 207214476 942887912 401463852 665815272 762683224 547473016 901624193 716753444 710059514 313110014 105895442 842446294 18096996 531109288 61690732 14087509 485873758 259271062 922768690 840061997 536965379 232203612 273840025 413567643 323473220 93261444 543623659 561678865 60807011 464598794 545584389 606400440 229023354 631892446 530308568 315575017 518117106 184478054 245900267 289918899 408850188 304892409 728305623 873370969 879709532 655153765 170503114 632014033 169349960 566242409 58320389 566822213 500497805 382547260 177389406 107426966 645561531 282680324 633649087 441894868 801554868 526686816 428897957 849712583 434772017 813067487 76678561 690973546 182793533 965838215 846193882 833517162 162086327 916120143 329989514 649358251 534107861 269365668 675972733 369362883 68506780 289690856 756821653 197496701 719191657 964426478 412537160 395794008 388750187 82803840 182478112 658133766 722574118 606894297 677332026 231565805 779560945 129051691 141745352 829135273 63666041 492349979 631446927 317920136 25520956 683987008 96610410 895254540 950829839 75837095 551791813 536188269 424439193 959242834 671205922 721637909 406858965 131772340 722213528 265620258 180863124 328518967 775212366 429612263 301666041 393363894 310041861 812138859 729201403 64001795 354742924 554468072 834214630 771949666 22607177 654059597 842288858 417483532 458439607 90708413 328078666 240902830 113564130 632905998 390530943 961100775 399982573 173438539 453017107 174135501 573965452 451276851 512561526 166764393 483314570 3246263 783643245 172984374 424370245 44311423 742864014 886409894 254932525 330587750 440306372 85299101 705553736 240936442 397516241 672976372 557360305 232671229 157431495 261680375 384476436 265139687 357075342 873603303 514735412 187316577 684722018 563781497 527201382 513386699 489285458 655492694 542360851 232516535 215665346 385640857 97360698 161706347 291434986 301472340 422282987 572015971 434197076 658213643 558903501 554687438 346365794 58956343 275186329 293005324 690194629 928745156 417555356 631044918 555800327 767521427 293541177 517968022 392355331 178755321 259660645 329228330 529855847 578652990 696280873 339835174 790211385 631325983 728968484 971659375 106068559 977816397 860941831 995042080 95525077 26185196 992770326 450835209 429517515 841778965 113744046 150309675 551376517 847995220 40659129 177339453 339300137 402419754 648432955 161785642 910525748 198727308 150678729 601215377 727932662 504039266 924818189 642141764 745735441 209327113 454561604 656339401 981410046 104352978 217900223 371118812 55142279 566723968 626793317 673520875 134866254 795157966 669407792 617880728 391937349 826329575 329096620 401176635 475530036 882791148 408083067 781395550 440329783 739629426 540865491 247265343 641614141 732953089 973664766 247879761 284510602 110274454 862045913 792901819 859342133 998962721 343320661 546605527 516143019 285378312 37455098 707905716 98896938 666706851 113660511 5255573 453054023 419739070 955616691 470024304 62361705 208131098 216646711 346214256 858943051 474115819 761587138 9314164 828738942 164007003 391064380 536446093 492866532 310068998 940073763 688191108 181472310 698487420 533302793 100647761 596903552 837088707 988387091 359312805 423706784 667075027 866193020 110908769 712788170 209911831 323758096 790329373 438238726 785354482 990288817 853458850 916682417 465650232 199712214 3972208 61613816 47855025 172426247 780739641 640479072 712222617 879522146 143709796 313035585 957899555 194765081 71459467 738892614 41341169 330443506 120248061 662289902 271239582 436709317 464727357 225292814 560813108 5823490 851567745 929800525 682396342 416506408 962678836 978813607 114678936 826030927 461199988 683952875 524396353 883406751 607028884 658910013 341750928 262441687 1822619 986379156 30707028 89716935 98695876 398017853 520569299 413382102 765492220 316934998 902573636 672897405 869972072 757379924 935073621 958188745 664747740 827927934 671817381 190116061 56922724 499505007 337393483 120802158 414163135 303454360 434745421 883913541 192371935 546337979 982001962 288663233 939345258 753484913 127896145 618694738 713444156 842919845 3806119 470431487 737816547 497910295 454233862 91246817 66361889 993047003 947043000 334078374 796873326 546938839 564238848 583372559 83365236 675650632 381742481 222852466 478578321 424125245 6672405 615993400 4388440 612002075 634896551 933114464 784171280 960642839 943151961 570615546 417331507 767371711 719826863 139932077 274263537 17821042 513455394 106324787 595622315 380658915 498689951 667242455 619034232 164342170 621343237 81477629 237547171 905760883 691645099 803289755 52668714 105719324 497248215 342455736 402719809 20131739 66759751 259792116 234432973 140102343 746924972 571019264 192167914 916235466 582690091 615807265 641500518 325679781 893483482 555638705 316333123 426346412 26700617 501850270 206189113 529438214 574759926 937635562 365317425 407634222 601879511 775917097 5512651 633719413 854184149 505556742 470685657 374546813 52540747 402222014 108850914 460201151 366905995 172078755 587473056 720456198 232673625 647053466 516397442 300271346 1586286 913849245 523773739 495998839 764020982 639431995 309870321 189924443 999282962 409040659 72201311 418431931 169157719 236336476 442832819 449641862 250910286 10368352 925887072 72174080 744168690 88045565 281915277 606916161 681614133 810942499 546793621 36610228 78097787 680679768 692317062 784701849 561399836 914036279 339128738 225267075 938134503 475311340 973543904 119050202 961474202 446612922 679125867 947029849 155956075 912245 341117986 382333585 60958082 243305992 155833111 778574437 677663868 840019185 214139664 663639692 286322410 474616256 590746377 326644755 890931920 825046684 659143856 245083608 751363622 845377725 715741416 80815888 94981978 649587443 80185927 857355713 562206157 625474078 808130967 143418185 655494737 782096307 936485464 880775381 186056113 20747326 279793469 360849899 677201193 639799770 256637611 203344609 66479850 643242683 361305917 198862179 298465944 372126116 415015490 374993137 827030475 829740145 61528125 63787870 584674961 488121487 76715364 780053330 591290346 725610367 997938211 172176585 122882635 951562583 245211030 242366354 336024092 276441408 729170450 283336657 442499130 144007161 332625820 13479550 933546102 885074002 485779568 120354788 359334931 457454002 585691004 402836514 864499788 669509266 541705442 383141293 234609868 164506368 967787130 639175116 200181300 942252829 878090317 985914139 588525208 231038879 377276187 984926217 542763010 562404432 469638870 919832410 492666094 408880781 305265445 647020197 797934796 784688583 117195234 180653782 840057474 321448966 747270044 988262062 162188007 484537953 340847126 588761406 768904009 390831495 675348678 755638896 255612392 400262713 256343895 948966270 289748089 995667917 46353959 619725177 267811491 619724461 720717002 920669635 293815941 15344854 220480133 298613909 726345006 722970714 396629715 162396026 960385316 338760158 9853412 868794834 64095966 690137884 595328793 533740368 63912778 119879010 790805385 76015229 792647752 606139410 72269440 31444275 168628012 249262368 9885690 89763618 579192128 428721559 752778028 484272718 296305215 838854164 419612924 884694414 523333852 880642377 503697028 320036111 615614777 75615868 414690195 285312720 183216496 107357701 230256427 958224164 485706254 880050131 85826564 910226227 283965075 361927144 709702408 12322680 919707123 207570137 341958101 806136900 762424088 691767887 723225406 518135866 285013341 385073544 931368394 659923153 433393428 777502678 940513844 391767253 187326466 104038175 699213801 565416167 483617758 463125595 377291661 432110584 791873237 252503066 519695222 977768402 411975689 881585403 24771119 218234255 742120973 279554614 669410039 412027424 341601131 522203155 532250176 257180871 710040862 878791793 115658288 333455261 109375256 341349696 230868259 381245965 509274301 308969735 688163879 727267159 972662118 264306015 191998334 342936334 907683040 122613621 54738208 740483994 383296490 600341644 703536950 442134199 766633146 529536633 460659872 544571380 387905401 827119653 703308144 889027381 641987266 45817871 360167789 902907698 103065639 897955527 274094225 36817910 29444780 47163764 359614859 743890784 775557962 838068815 829969982 768666021 688690541 975737638 123449408 404481996 206451575 126255578 530762588 17732656 824951611 18832097 725217297 968246018 813058178 711854533 70439440 341675717 757973898 575808930 313516737 492846288 707967873 118864812 794462143 631736272 824766734 224733607 759755095 721885763 121039561 926041709 671229198 376707325 177759678 458701932 228786712 277010343 611341807 979662885 916877281 116591931 124416207 787919534 987961480 992061066 273793479 262296113 878397791 559582902 56181428 953874539 412500845 863041464 596608103 141530926 970438636 693165787 214793508 796199135 964361419 395303231 366210852 299550968 55614764 60478551 720494355 271526535 1848807 393575531 730986642 328719022 801868806 542654743 553022646 3145505 529766727 247107530 26623623 584499883 19234461 221436488 313696642 775167913 300260015 911317801 208063000 493013645 44364376 938169431 649883181 271683676 849860389 304976276 912316313 188967729 616253914 174061298 104151210 217927864 762389230 945611097 651598496 849966259 781840138 206198020 740074544 474599801 154797965 515320836 690101250 92576370 912775435 120784572 89104691 130273436 168512457 217961059 858595796 234216201 215048771 898158469 810261352 170771295 758329255 632555138 154269546 948656726 51100759 28681742 692652485 877388862 420724843 136287151 715004250 953777014 903828525 147051074 860144766 631370486 397997723 800490615 545801593 397057734 813114344 393910096 875711752 798674564 135052795 277701286 536236763 603678691 248954094 523760548 205259288 600500006 728330640 618451786 467220438 316997545 1154020 96618219 114763171 820468313 253383072 234264751 572175871 929344054 692327087 882907154 938986718 779715800 201384367 397764195 695586858 103773415 349820532 340033350 515708991 856806050 151819907 934159667 714945646 727648857 387853208 204272116 240744314 933390067 71041568 836685611 560123933 750214761 71773632 99123402 294549892 191999049 435615180 564185496 606775247 300284980 682275280 793786291 377591443 264213600 696410635 9845513 937460055 772125718 318925295 500062173 441379866 409623093 837649571 302688585 155217355 967401901 394179969 353831862 153995472 695467525 411562136 794203493 557823360 488354263 376148266 964185321 645139625 724820814 546177071 370012587 559037450 39541422 753217233 809615973 568129242 591253197 411450606 805954472 822794304 703421330 692941210 261661270 459546584 118819453 649677210 728475688 297634868 635336479 849170409 744535081 352000345 100574621 122832951 828798776 139486014 818317105 485815653 399830155 303148624 863205033 340582922 850709543 388000753 496223462 725556977 950462312 223074548 738421599 647105433 253602688 931707939 559877787 998770355 402294768 14484666 500230330 162307240 155600656 347898089 647805933 807729681 838310029 280053333 941405946 278071869 68788709 716202647 145861049 830412206 456880877 858148795 307776409 570435228 444190796 576321731 518624284 654933872 38211581 160472610 138796374 415836490 286625745 51417154 782672498 427758717 549690346 505951742 66085933 769804557 74595138 252779816 469904217 662406968 19997218 125816068 719778652 1225706 81155243 743267019 13375150 962742599 467136336 747383850 78066526 587353381 997680474 452278720 31870350 249227663 71995235 814439843 641137650 631376707 912787931 625455068 525498454 106037813 895094151 131492582 748056597 887823370 850829308 882177075 138579618 492751006 123270696 557754535 594020867 426938494 102088906 168641819 430697296 247471471 766417141 543537883 452437817 891437285 485829265 774491177 916564094 991483533 570476250 249120440 578534004 952847555 922041055 792825393 942452103 752337180 133709316 521142449 764121010 896739038 323764865 895994185 678357256 504156547 614896608 618725501 21735983 762061114 269038978 20623558 159236320 537764710 97037083 636887312 840223849 489936669 156972338 889116988 160418347 959451050 436286370 684249759 128115739 659621131 898169372 941775489 348772677 117651059 52308643 959052448 22029380 164814025 919321102 248274858 238931916 982217512 216170633 120625606 8183585 811453277 161287700 149769484 212114589 973054060 37388035 556208136 48252974 937739532 296435324 804471355 567573973 925914662 599304956 395519130 770184232 330631001 262685906 204204557 320710352 346577273 770665635 452359153 266075916 119565580 38513636 826014359 435575341 827089612 825347939 801312707 630045720 417926183 657199039 548708653 593544647 585769410 197428715 306252547 886641096 588474866 217023919 3548773 204582588 663613249 670481959 58763752 423754201 239259887 646834754 618953236 502552425 678812527 143272772 898583014 645368137 271550693 380434756 609503567 296315755 407808431 969755567 280569778 137964628 204064985 20425667 361922666 159329182 929778343 714546965 754933570 689612407 671152399 707780620 217649403 400791585 832562748 90698339 370423241 284116080 187531532 733910955 986569174 267806287 244657555 746475462 609752510 734957115 326403990 46468973 837810962 468552390 915276561 853864620 56739029 994928406 441818802 96426849 326680066 970273123 355999835 433985472 464332803 98148732 517164452 189280465 604664635 808362307 908048982 184110320 172077438 849305388 720510193 303156813 38621844 299041986 841827623 594739562 609963706 340328227 147751519 828009376 856083744 466340223 358793267 746012570 252071531 779357596 859713266 563481559 708389173 303933013 126224415 248935724 7976072 360270870 455550191 732740416 143383143 447844194 52887247 805947151 665979462 892345166 90653661 591220072 210508685 754656771 770740586 82596207 893156888 388370239 353741950 739433243 782979769 320208596 307399764 241608633 935073717 8357672 301826265 200002663 974741315 271364020 104818481 466858138 482773009 202559877 495252019 465093273 170008510 803456958 426860776 798389247 914392929 732974612 943149327 446010429 636925953 914995024 776133532 266743061 21668634 46415313 981980469 252478752 868069150 35947527 121743028 79503433 500980722 55868665 220451240 850239568 667798893 270567104 545944787 779293513 520781276 811370250 820858541 817674266 34293889 978624920 733267935 636859648 35543055 845015232 984680906 608323594 589037360 167737323 662698750 127057309 894108927 47374360 439773123 968419566 628077454 754526808 156081811 890574987 727755362 486018128 174785693 690973395 402612978 857533114 415871556 122601593 145821483 684769252 459797918 582100741 779777519 186261551 17372918 875358034 957250961 677363857 743192395 885279761 655839322 44503828 721193679 674852933 838331656 480671061 868068200 221836742 30443338 59632901 659031858 823685054 798329413 990852716 103942394 672675118 718842130 958949601 451059397 918638954 145598781 82561363 887153735 708223129 489887047 158600899 654650733 213361718 688199974 237257927 811526356 177650578 521486016 721750025 414873167 572125775 765276275 966127814 583725412 810032870 913984912 798318928 147022288 454552354 261086427 324169868 455355391 117319331 384881421 889975413 709160340 395271005 858408786 529033367 429523431 140352534 704840140 378666132 173338754 276797163 551544334 815752355 224235940 988047819 640185761 875994636 200601790 556485370 550880386 80023469 562455288 574209424 927198114 269543544 493328813 806711288 200339813 903611891 208013034 312298097 628801572 650413238 852163059 901477776 25233579 928228593 188902335 825825980 770761403 774524131 642202999 494527665 496845705 491150692 169147131 417505278 288911421 570679900 64036700 669916551 525558900 214430025 100740451 724840707 779598015 253309885 887564809 10606975 35022114 815293918 725478653 634904537 503349141 722832101 373804833 973568837 955767943 700928415 525488909 935073228 117384022 940209903 238792587 318010056 947717335 348900426 444004889 645047658 158831061 6845497 637213546 917807412 930544522 962600155 869127653 373143167 724762663 474589792 520674341 493879031 546951506 631031183 644443511 755763225 426916003 583873089 991789663 819614140 172026406 769765347 43327251 350156421 767453916 981230584 472399870 270120049 448510777 21175445 934826559 148443471 666834343 314472676 877447207 818904387 417911042 754132897 849534399 166479685 156349723 207334304 141889343 441005472 848846133 296362565 857908632 603026547 97803915 718392330 374137580 921366579 308021960 172547325 732955920 476277799 803957389 874688831 472410641 658340075 313396206 920947078 86723756 88257774 981129461 642427291 336167124 524113652 287261726 644401373 733216303 454952596 481623770 629324989 855808154 263490746 79965708 949284160 68100257 422087207 525093518 398620544 53553672 268914668 213146541 241415723 690702917 79513587 989485481 189144578 209757954 707937654 382122039 626685532 146034336 269789062 184532735 135698336 421727407 56425861 479283741 925617614 667660407 945502636 232092324 760934647 698934643 844376454 842937110 558494656 840447953 747306099 413845485 784784356 742205683 490781222 352912406 330648751 37163504 847656231 209360753 121151363 786778643 417364818 918873426 181821015 987870043 901036119 849329923 40404019 759239418 193496120 434003520 85585333 925418967 374970829 667054009 327953807 725698828 103945539 593884563 235660038 881114728 48646809 605415911 339389557 966188781 260913698 282615106 527008200 522016083 478613765 905107236 679410433 793347204 749295040 883538561 358321847 697517598 295818913 105049667 490616978 477482740 149266508 188895173 429308880 265038221 34036280 769755481 688300995 141791907 62857521 239542468 354520657 310627238 649176535 237599165 772074099 466781495 542374686 986316401 862036150 86661549 751352525 276836866 150954429 611795347 847267327 165317379 427979452 823114792 475977124 638453246 248494079 23992285 530973953 966269422 847332705 575791323 549350956 220334789 803922134 243456379 909802641 353541607 313891553 806725835 444003184 725169837 879019806 813203216 924423260 236915428 282105018 334359102 748976573 123772235 526041845 52950146 361403215 343887384 594424231 921787577 193559201 112627572 291650489 163027190 480546199 157790202 957375911 407932160 708469993 972256060 200639493 292005073 358098082 216726078 145781751 953309976 49478817 329471993 138611127 103975352 892431643 35166682 516038930 342643783 530149143 40607808 719081451 980121744 919347952 753687297 754753719 112431377 350139095 260365797 731652352 178128766 612027727 20936490 758192611 272752956 756605871 149937663 522454161 2375655 893830308 813787401 657714897 453197260 682423980 135061216 405003645 910797423 412619419 58623123 915002624 144006407 786338330 132390432 423174111 116591869 43428387 824473341 582354221 517294193 457690503 548519570 107929876 888165045 946880360 533357756 825433427 397896399 481262015 720703052 40659387 543291899 942925271 300835206 532873393 906716199 183688912 443324579 958150064 474326646 314055709 302230607 185442756 822734270 374039558 926457387 901389839 79047946 210022439 579769164 397601863 194078232 367933935 982437562 696753462 588060123 907761442 184851954 10694969 652611834 429152856 767210341 432314050 370493520 523330939 403946231 240716503 898823018 997412941 174251136 484804496 538093836 682980064 85573198 778241180 450845612 601738780 627543457 800639421 315232757 2938428 529699118 505868615 873109318 713629009 209002909 608089253 904551473 828695997 347227659 698252500 802004732 86353594 968989833 275180262 891259939 533210833 302825627 587860097 399261396 244293731 735507385 936009822 333668721 474381860 119483345 247742154 315091474 167062426 79427011 269551144 916839168 222492578 57352676 73361260 238632763 187185900 446713980 415768737 742944501 857857658 769808456 118144869 557935125 949377061 30641912 776488808 299146422 461872408 970610098 668477681 184429477 642100819 358817677 124262744 835185382 241071401 774228503 685207437 777574959 693518786 560263632 475868816 927442283 28344218 142292653 805283831 372521784 432693248 924359317 30173291 802713449 448158872 715198951 472746026 214712710 881292762 712638963 166954375 271646535 148897168 415761276 785462630 446028573 937176924 984102717 40774593 690280617 935672624 333522016 567743013 202647875 878262227 288977672 624293429 340401268 439056739 167529161 486926374 333553276 809910222 599596842 506766658 224150733 240449879 645202474 635814501 62746253 467226903 270067384 714851459 476822296 750253434 817898810 535509280 774244989 946074814 251184647 647568598 828332540 535140215 59626989 117326291 468335758 553379086 415528108 85523032 661975901 524640829 966614904 676003131 427272263 450213268 343331707 389716070 708078175 829494264 261070928 38324565 269497964 749801759 943202954 660256156 854876009 986438677 819401771 129796447 870952707 347415993 262802221 140513753 936144414 656857920 397659133 873460181 2307409 818588850 247395834 71812664 449454949 181500776 777349627 818612853 530970585 395389588 839670982 450515735 984133473 5399993 29135258 202709563 999671907 760604975 795774118 294512147 734296952 414103713 175861135 950892388 168018929 77240718 753172462 265079304 477754960 688737227 534221776 519505262 518358218 313144319 160015412 182104853 658252236 865204261 482920336 448045844 951979635 95281678 242744397 25582741 379091730 571428316 880898886 904078421 725815728 886233736 326660685 213540646 234556551 424416862 408925863 371488366 456153735 126891900 814854538 684809894 784157648 105210454 732757158 408019419 668540476 697727029 338769049 463554095 985990098 689015731 645439865 444462169 518552916 445658432 322805583 166452257 730481330 639651745 889917590 878302949 941456277 253033579 217159872 62556184 892355541 469499020 245253809 126296509 741830659 483110595 466832706 268460272 292763104 552140323 111833535 567578205 432846052 821793428 243201642 15403207 729695928 128046418 647052022 153864579 962703292 524474732 239657228 411539706 375515010 878410310 791404745 774745387 729011025 628850199 187944254 525154342 892868771 520561260 134677743 742425234 557068199 60599971 482302549 661553191 558171584 377946225 640340060 930134581 302525443 689963613 564147941 5318684 598696893 688140354 493892933 983414226 431695083 626729937 926480069 630824544 259637953 634125581 677805856 538633317 227664420 199139021 51839239 241871505 461896239 979790653 755433632 405695531 181226674 802408029 436728323 973922700 340385966 383763584 611149756 30202530 535090394 220808399 639126860 134068078 577841697 673289156 672773032 774700678 645823010 510827951 323031480 428217236 949559727 617442101 404811993 28149717 314871118 731164619 150171484 280134298 252876219 483163199 25857797 269893066 295465060 332587312 670309260 292526174 706581484 49058705 701704479 707672292 66766504 981535530 514022622 846787582 805785381 25968407 749043038 179405536 349033120 466574407 192134439 496343508 807192460 770744318 332123446 483286201 195355664 31929427 505581436 827761024 947525254 702369459 64869724 353829550 245208062 41514588 715357233 927289822 874059449 761762531 741138886 38696508 457465518 747325615 322327772 282152714 971793416 63807355 263058856 432093727 617951141 563043032 535757905 593782882 752904601 204076200 107896182 616263252 717739433 567627684 158336679 452296836 408755153 958101464 804147943 105779224 884128958 578263330 315115313 250520394 626566229 879966646 37212912 487115753 963525162 571655836 853293189 704185300 105154570 120474160 984259524 376682883 921132658 445706402 451288695 240009342 334905109 338043508 326039770 146660835 892744025 944787711 739754013 924676324 916436698 20472046 753680614 691023687 36067814 716271296 605876172 346790884 658309632 960550730 483592157 20351787 458580574 129615411 710631704 735847323 316660331 827091063 207153396 583909964 559139909 709944549 349048024 472090470 566925120 889441441 385091744 376331944 695198817 805998498 648225567 684654050 14805219 244452661 633523351 700006267 345039542 505556600 685065026 991551211 463608059 962202848 995853261 796540738 834410121 564058291 520310744 86434208 898048107 127921039 550141559 132541371 823827040 973561057 208084660 914429532 461894490 413678191 720387082 589853153 417438207 81474767 937190123 198049469 28128555 103945197 39314748 711262196 277378668 828354953 517972692 148258208 977380485 332722615 13766656 659746670 303252460 993724765 35028994 844801825 218361675 336724664 741403533 647005454 747559938 398528471 522825035 472199839 871129763 851717406 913598039 63604433 421601141 618436037 621320387 402595509 63880947 607124055 438910484 860374002 4886090 186459444 357601729 860507969 564830686 628132111 187967415 897003760 843841477 958985584 746049240 947056480 83097674 453439282 188143479 653474183 18129516 790617862 389541341 519197551 747144284 955897327 503406792 242048693 612026371 434177988 924851687 955223307 782708089 426467762 583601759 832549046 373835151 946827447 974986569 268304144 990043206 520144936 212469297 334008583 31899478 625339436 268466585 608980892 76782760 244636734 992053108 842553958 533039324 794544559 878130091 696717325 492936644 487679009 566869147 406655183 957974759 638912525 727855509 138571518 446790143 277949758 224845149 600899967 952924539 964114260 764490412 787626060 368009982 303191619 175698094 542897907 363542494 329192145 667730821 944973590 415651238 144111899 614074052 751079657 59234452 884524816 168288244 427117495 599602204 894130932 144122642 366798430 351989091 139574751 448804623 152572878 520481732 531931708 374231631 664281485 855553871 440315466 894291243 279452726 892485957 245057694 277288559 876182517 528977565 471323807 599655388 599926029 710831747 850972425 319508135 113677394 51611347 689582699 162032120 732277679 766044322 589142953 189145452 524571298 260652214 773277306 321521556 390358715 307103241 961749482 555924084 791596065 784763978 228232410 855770117 705673740 16705627 917052539 820885683 40288588 716326100 932506839 792708063 447108800 896340095 848781640 562875486 199883232 279608026 952474367 63077624 386806581 26485400 126454654 646157546 384308443 194588704 245213470 852615268 116697349 965671436 540500874 996717324 878185081 985673644 667013698 225639034 457513232 358095233 183402778 240084666 190362680 331537858 281522360 472443085 922068850 981721818 552912665 597830951 176250068 789431783 797136396 986346546 656665479 154601277 219927989 9008842 178714186 669253345 917436172 738072256 896654317 388431119 298704476 268959064 746486743 63236277 393595844 623888330 6302849 638248949 84585401 535323588 827400185 385680039 281775490 303565286 254098016 190659284 391006139 547472965 612791404 639722300 736430803 231835368 343303143 847384529 631265165 177928270 47267374 729159738 471375747 591559655 61022898 605943889 986407326 29874326 95818106 841285797 538602143 731098934 322902944 781686009 179547034 266684689 668879311 880101059 854052470 289817706 245459660 917584302 709583982 298683125 820987370 476308504 689815186 367451738 525291924 692987285 371656775 888750773 878369735 393162090 147354563 909837081 423926421 580266771 420743314 423746056 684478627 930515133 834256916 277134845 906908587 472874956 298875900 898902498 551027451 434459991 452974802 676262810 552565237 17534631 509831794 172913784 213497997 830692796 891052684 345608646 714548174 659208648 648245538 105374016 62622293 509802417 802107148 342173590 947699924 60776595 183304823 48423149 974020753 676394044 719287138 932813151 862282724 813292975 478461983 890568566 413934268 485995938 253927384 813018805 800838427 427129087 139079432 775338511 669282709 850576230 240632318 114237038 92386773 298446250 541229918 588184365 118953241 918169168 467362975 174897823 837419185 991384083 192759437 860957318 775645827 18215010 516745672 78944412 146214282 73382368 676517700 468786957 39011923 283321060 5855432 584210683 200641918 768973303 96492399 865090809 707419203 253667416 169177129 513727889 159272682 204551291 175386171 856866238 78499154 310775941 92817339 730976114 238921067 141299922 246453269 214020114 741718972 81172592 259008649 798037749 839683549 166728097 42875562 382741480 429110526 890757725 88031456 655545772 592232543 863561934 440129255 321018999 761225686 257658833 359259726 398045295 442699340 736918396 766567161 244208690 381599296 651729810 705192864 485167441 313750594 988591633 94090317 802210000 729248121 161051557 381105378 747895208 196869150 614134834 860179857 803993414 561041407 616297806 446317922 88271881 315985149 143271107 271439536 685325255 618427278 399355666 179163052 431633481 311746363 119995883 824856793 972506570 670235939 354159287 405507470 948094844 943206519 648929550 388782199 312504835 707489532 630855489 884984853 83407863 829235084 584525521 148821817 569948263 45596821 441068277 711692685 482198865 708083352 884356377 23323147 469476907 355121835 829528410 899114371 516041309 28745976 135743242 794016026 144102340 575955772 397390130 124095686 561748273 682165065 200841483 650767315 832467688 712867716 756169860 607717217 870376738 431350631 809310400 323708131 218833547 630295040 928152213 531514017 609238724 660713072 610401037 955172407 998837986 300490862 916908520 301015316 190939629 664763074 657307673 315508476 577046882 232405962 775239749 466627207 462432690 92843000 949208903 563135903 974029505 19915857 565639343 452037638 102825063 830297327 411783998 583175630 768873202 109178241 16930667 686539742 412709283 807722950 364984289 243873908 57849644 335641622 643076095 688580510 51088952 251296729 488212054 263836095 875475427 586912781 927742255 154578961 137655870 825150916 724295427 61191453 361529037 376100003 476804864 588270404 500658440 159211877 592804235 970687290 627623133 400429142 80140472 458343557 468536620 459619289 544776916 975394306 404430410 864343267 952158428 947803233 802681471 800314237 330197763 799063204 420149384 794906949 755276592 232498340 529232917 589211629 236240253 758336908 256558156 939550651 778222777 875286108 32558660 454451208 69705959 89459303 95760267 321488833 330745277 260953557 126770337 538561001 387342630 806134818 540798843 290231829 515112897 592358045 930086913 381524718 162639199 642892522 364404367 85285555 44266376 156268417 868536952 511098804 174635511 948957740 675719294 751614680 477347610 862974605 249351516 677885976 567047827 623930517 132700221 946577666 402650553 318298894 591340353 900206391 879548952 423328275 822946303 633833197 18554348 353129875 716930558 101742957 789777066 976308177 904596282 789961110 316501880 151620582 490661542 710352984 976985008 350982718 40458916 500742970 159577953 271948055 490226062 778357973 800271310 689513221 524748849 546619223 367091181 336518513 862121037 617015041 644889832 596877077 265485590 499667625 280357536 204034689 473266614 162581049 846218789 345369242 530346440 599706926 175893055 753135381 115000799 935624474 822840297 813180672 258673661 100483618 705978064 266880314 977487388 279807360 302085080 363719414 440105641 42277378 609820055 440223804 410647811 900573321 691609304 95004776 566770689 717373579 318832410 906359465 111326825 325192850 863310095 99079299 511008122 813358267 356355357 426090062 363825507 717060920 724340192 251766196 506830281 937862862 761840294 886501943 772997701 998054744 285000689 145871785 722657508 262948418 635994105 55421617 569904293 694926606 75853096 161222477 449453055 625486803 436694172 805892939 793303384 671492025 669637800 229789902 79634318 113683326 994134867 551676111 647860850 652755956 228392151 235066778 59668297 325736064 669539875 401292621 721679690 153472925 259227994 58582620 252049954 140982103 718672978 541152784 621610610 544677841 689575190 278731011 599123024 665249727 381235813 610474405 996109762 155374828 972908080 611619002 476240198 361329846 70696479 628237274 950322765 124845197 372531725 667337712 877387707 22035064 127510664 403319740 128053353 602388367 69054802 32149585 582156196 344587906 402712547 1618839 16685483 247065616 303009764 763991754 425475636 366410641 277936053 642379001 644544231 554351469 450418920 595595144 225161698 526464419 845336259 356522158 121942067 26765379 983063746 45323256 77119585 757434356 287906068 135311044 996212964 895525999 525805337 196447943 691631784 777567489 168326634 783140488 935864719 555256589 68154577 730579938 271818475 755138696 636988876 352531590 856982536 728814204 995300878 827466359 363325088 442048901 608099967 881592460 354970469 669763671 560125495 161653489 797892730 248129590 54330119 793501094 670212602 213824380 830184432 135165182 641965680 77540886 500814249 442052642 195614045 511355400 446763805 232019852 725501878 534755301 94372843 250811276 466899555 284726615 377342181 164037830 488915650 870159773 716505745 312241842 599328033 538776584 180825515 470478363 693811527 139594365 676929441 862729121 563942636 462144502 118757653 17406007 612458044 254877953 218483807 94932389 814772824 759213631 127796745 201537287 621331412 59482854 595237201 576033612 794788154 283627328 444927658 635585976 389168518 56700714 774478395 913196130 770261673 725609110 724463198 177716407 972866567 124800009 608426530 450030581 866905336 254792989 412965322 836863921 4488010 901982464 62405964 793546833 654119357 161862900 350413011 614476691 959121030 423291597 695398718 87056133 449585101 398850422 274876062 441142922 373460527 146028908 38467260 964688603 734845244 713433409 725959568 784164355 525236218 197115418 759055307 153317346 319280480 985130034 489189710 994161836 546400476 420651861 654055345 463509351 514203342 829900646 352609981 848663152 701010186 991331545 172249842 871959543 184942938 311867193 329189890 442099326 425645562 741692835 136607060 349662558 235214874 790385993 410663554 638531905 723482208 967977969 158549467 400994473 792058723 954810484 483093730 410381416 341421617 758031167 121214669 469640742 978881226 719341269 128384263 311111903 528729762 316441674 314205102 978866018 386106659 352999882 911291413 237322963 643825705 810958096 784866115 578152745 719300740 694867439 97934451 333820849 349274745 211748045 840795538 514685321 452590657 924253475 240549828 34088486 943925897 393232382 84236256 880337870 433314545 213785217 370787567 757720095 621337229 581709921 29659313 265790598 355832935 776640103 751532568 871894729 806651898 879781618 406172106 64457598 394223545 762792050 976244899 134717585 348398982 186392558 850496561 410092994 505007419 986699135 505888054 461331236 956615973 238094547 787527722 681615264 533591171 498099115 580407735 181804912 312447499 891783773 472071483 871172260 11881062 429076050 563466057 676005792 537709744 968969865 766726184 726392220 683112185 578912787 945448530 541791011 728860358 974369429 963018999 508476053 939679120 378381513 483439224 295935141 852492611 659067133 456095980 602788571 808633025 385844114 917427358 482989586 198199389 845591422 14242956 458727675 727602785 397625035 115623146 975199897 487980936 412226325 944322973 598098115 216741764 753788432 103828161 50622630 395725177 323336704 381026084 708376384 659600000 298358336 515682504 10241510 681107493 782897596 471334757 170228927 344950506 7505270 700588260 494940486 613998274 932206340 132217317 998012619 799856022 322622224 221063738 3698419 884068292 703437783 820946794 499205172 476245658 574489515 719637295 397823578 423140063 801142641 354289656 576999173 689620299 717177636 514627432 610913832 935722251 28615248 353654485 527021196 203543102 972670103 684378570 860348491 17867898 738692144 936354437 204207957 437831495 133031523 754927225 109061102 66495650 774495246 830552269 821485358 910395772 102758947 597024988 420199808 904235577 137597479 561774259 756107043 493244722 783629493 445029271 83585708 610880819 988090361 407081084 82678146 729852413 339049526 792093326 143019105 426522821 966646849 408943532 384071128 583173299 937824771 514708712 111727819 792673637 332479738 985242888 644231409 837130601 964916920 113854728 524940118 49301702 519549795 315358358 154906331 200558964 187195956 655735957 444631729 607669727 708239864 617532827 612702946 571141480 708379026 684088946 273206472 329908964 433952375 154929306 865178004 233555739 776655664 431854790 848948424 239491914 53130203 550749019 360623293 931117986 234888363 952505588 94414110 380366790 981479012 947943648 239336811 761109329 725090016 608162722 975201144 702418510 235948940 902416752 598273003 10548670 136693739 135005365 434645185 951306774 392311314 935998608 806610377 180844478 795662122 391369555 468934439 627478419 237097458 956002052 218235347 745962853 614591291 922557919 586077720 643478650 151307370 702627026 760665621 122121225 504418297 372445183 663472191 971541952 81652213 763646270 520734685 114628159 220572801 638171800 299270027 112163739 278330963 740374733 834293176 771852252 418749746 385551823 690365735 158001534 168218238 48002885 375050098 366576116 447125416 766022409 242782594 159051808 771153589 713757098 315643416 345227485 814731455 255878891 248272456 540588406 997464180 192562242 976228857 43302955 150245013 271841114 625305702 707330739 696309880 6873745 661268639 580222645 828905607 37127547 46834185 366562894 300957887 558191965 164580058 254969486 216228658 875471794 631366814 163795962 52661381 777995434 578554549 150450444 464866931 928789926 741167314 163963054 101491272 82210237 609828221 46155971 477652326 652789819 36732050 714499743 598969283 414794524 106872768 92757897 663138921 707797909 580516620 150996800 48331766 355811468 127780683 749868659 95173401 224912155 914279083 286705480 703334683 734894353 892118314 543030742 640436307 943901552 411334429 938712234 447473329 663450352 975865771 582857030 855006260 354829435 585222480 965026461 921045364 502977455 713996891 951655321 679689241 441981279 866966383 580017558 468285281 929338386 622847494 876356836 21094558 51763331 993167081 210056008 71251894 47544863 314532025 376991355 396436386 771207562 45823594 869183658 276244207 346881818 772177346 204974836 450644544 826255194 215947231 352819183 954952905 240042377 966827950 984623140 27838678 5452313 624433269 360104078 958224450 346385712 217486410 14812959 879009536 893171498 414738073 980587836 442267542 698661141 195309217 552319036 838323613 827439411 940456440 411485676 202421314 102600572 789302019 845729038 924696264 457037849 809486207 205640149 392936708 748001258 692976891 402815082 600570848 638670593 207466331 585301355 141784 408535845 587652951 566837351 461667200 478603856 34372857 86593123 233547260 910427441 168095779 452886104 525753222 516964779 465597703 322570674 745770475 883639636 621067437 777117394 923885326 248619511 346639728 273454989 853984612 297624595 102856065 661621164 183259767 520548185 111679843 438201194 690340708 575977777 685651565 53837305 751477596 24977206 722535243 797719037 281112614 212032949 614422654 239148047 438520475 435098675 550586071 70014267 511870249 376009188 632484864 934931842 397352017 119720500 875913459 29825113 201364266 606925634 224946304 472707880 491779547 682065504 818675660 445325261 755427876 579720341 738909901 217118998 432637910 755338523 748481743 102856010 384695638 18194401 93700849 176992417 959690270 359293961 20815529 110746055 109441340 125663339 356672572 520047197 892005330 886165521 483396935 456287096 503702420 966687929 511008057 124582432 507087693 138920278 893756374 488136146 991040346 533630095 262309813 92372223 837424685 63832383 245930691 269592971 183711947 352015603 941654207 113318223 52152655 382543471 541939643 760602263 124915557 268958250 951763105 418953380 747221199 682407629 335563692 437135915 367584740 724843959 666350827 240335828 67118092 747284860 166485185 342843580 228129861 292347489 93112936 829858035 362803617 818361058 252096617 451874303 307112902 78834733 558102821 301428567 881395052 410152100 445965135 564053737 425729763 695770207 463146608 730616213 541444234 945254312 958292834 159965104 998670169 89921917 270107350 493209474 741590872 539537937 774172110 812538824 487266854 474452811 507845667 673377330 427265907 151637829 34160384 340452326 305710982 858661070 873728357 11290108 707634615 22272489 186443941 743149055 815826678 858900556 385819368 710666866 836150339 286127074 500208554 235064649 459862835 326482249 505467962 614116460 195215474 625210965 97174588 300139576 708703291 89123467 576292903 705143293 111609058 483942823 191568328 179103361 10520906 800631830 755968190 469404795 322696047 575674749 260082939 612431641 266027230 277350192 210163017 944549498 142474040 770373819 176507843 295412277 926471347 885164125 709158487 11691985 742040 677969288 321521995 57128779 997673926 359848803 579375541 10644371 887083310 13183816 919237634 566329614 61044821 639619910 204914288 230454293 102431189 452246687 925270931 516895093 646971868 920596043 456116948 171474670 640182955 318591860 447946989 382418868 45303064 840368632 868465774 230550257 342320908 360215787 414886460 506721345 219779078 805454610 983823884 148131380 545114519 158261608 693764844 521283279 478746596 696202141 311484347 530249739 39556647 894416018 49260460 788014165 154425134 957124830 183693511 181294349 134648283 240237388 403798120 980086023 559218594 136909659 993859006 666851084 90382606 700999100 289686093 725811802 420129852 400342744 953445997 3450144 431032158 589357384 282334152 129700099 104339769 568773723 366842336 283462044 319730599 554643091 353364615 42057464 310070806 444220968 575527524 670087702 611013128 367094659 780548469 299829101 321550737 142176196 216493960 619503971 477883868 655297341 827876544 64614615 954438566 298789877 193639958 569558936 158659009 636034087 238512598 666175723 706969491 847369920 775380510 297372681 395060628 576102372 968184162 510032542 639607252 224737129 398570731 716426572 419852914 735122266 541914451 206449190 385838630 663206005 47242506 827371829 391208120 211059886 260074708 708445943 367937414 320899498 655200841 320499418 393303554 917115205 80483412 743555526 56624178 935941644 985777077 797780112 989827887 316019140 283801983 886150280 587064230 904317921 332344218 241958892 192588378 343120912 474806082 957323378 859072160 8948397 57218950 151079874 706255073 949997389 470254538 341665786 596377883 847113014 591840837 48153640 837216097 609587170 108921988 766329555 927876182 302772096 501887973 93486195 269511094 291670899 36198941 718641140 707517646 186855633 889519027 147517752 682470655 401300709 671431298 536935826 142675519 566527405 267857979 83105867 239184791 818986076 73878240 565741856 685549478 903753177 963003723 63877314 23125276 518050623 643087781 265029461 247608640 655578203 139516911 257970929 336410219 24847409 916707964 991872036 947169931 80403832 854128757 613417583 828231073 156845337 709169748 628657860 745968707 843922611 115864169 836641807 363298843 740565786 433650008 511358378 211931237 63560404 39143065 926183910 593155189 293027483 729627383 673210505 563048495 902985181 953841426 338624331 798191757 836602687 48913373 403570776 756230685 725545238 147923232 776677073 246759296 245527020 592450551 182487883 281004525 521687809 199128401 884303950 748282795 659729608 167294578 342958295 76638362 599019877 722577265 178085590 367747243 562170678 458500539 278896561 771009123 925587783 828807822 917297855 393673565 146969564 587560831 876146638 63485637 14383339 142938868 785168798 751120349 465437343 574394027 961703012 941279867 139793366 106997297 882188360 888215433 588588196 623084396 821144039 441580420 315114190 662868242 633079505 476340478 541448272 412079919 225733132 294855965 839923672 105690019 468111 276946969 545097032 10449570 764005832 794104769 113398840 773111602 335643159 38164983 668828785 786533808 971400016 967509295 305113203 58623051 979891005 421089012 214474224 68550024 464938010 238984804 166942799 874150076 293864215 728792239 982584106 325752469 898598618 332887451 141942480 603019154 364655098 252678147 928677571 982802566 54841733 204568659 959811643 332227865 927329147 691927310 507225762 676619335 870466896 590628681 743143447 606084319 97389166 595060013 194384875 984631813 811684529 806562424 786963238 733903280 473519849 717438717 364519683 966666541 820203355 442353439 704631663 499439514 661719105 899943002 469530510 54086252 971952709 765352891 612099638 579512297 504512266 35154019 740863091 803144111 804164003 876889095 854683649 672257323 232048922 110120307 851958229 210088483 248191723 787514626 553346197 290253101 328259974 238223656 774577435 475265077 157824208 341619433 142024950 163224827 484374690 757820511 571653864 392219538 660912969 165623095 376965481 778319075 266931204 79362356 41036578 437954344 980901770 807665835 448487284 226823281 824378497 78766342 682530031 480908066 461046792 45603137 226289627 971801715 608329262 82728560 516013234 293740783 908845688 604145207 547124899 221028597 935779935 229575504 13664273 934760762 41668559 26594313 806142226 992132933 520844714 225119939 703581681 666288626 356585027 183298164 582366125 936668656 425393124 425972518 650588792 59209795 196961608 824860278 312847416 380307138 697224225 255331350 923789577 171931802 251726227 205464651 619689912 812528841 410627255 312997487 605856330 369263268 924855577 160523120 301209203 937366097 858823483 927679567 705521184 213557582 69179152 496802979 481735150 716250344 487496833 222268179 944610736 703189701 108977644 280819679 501667052 763406683 766631072 162632536 977266015 140966006 168718178 73446500 290564981 362704822 559735018 224679163 137710289 269399310 323669607 889064620 77258955 324548423 563094007 321943833 630045421 115736187 9462576 700640886 869729141 16751258 350915482 322326030 918676439 75483112 886206771 458851006 323404600 723830141 60905705 352764792 991217396 790023108 949589795 53758402 958541592 658118908 351042617 974586932 554977000 184388538 361694967 427906814 906912091 251350885 733497118 147803231 797587866 352098489 765693411 443180847 965581701 2531397 296407151 357882710 523718701 548304109 460393565 345416274 181422171 147377768 986621502 765690294 537667336 609374146 256043032 430620581 244849635 853289436 229134307 441075035 156963790 495217639 643520011 634774949 723626849 704062957 875838961 316354915 774714726 714173768 47631466 995753485 640897883 35215657 120123454 347707435 182861811 806740242 125999274 522817500 105593749 255921500 907149791 609583952 182095580 351496626 849606528 698224974 415911701 52554132 866203944 630906799 749518532 839706325 32405218 823713249 571809311 645104670 241351087 918706532 981543313 38959977 598953476 465014864 672330297 705539718 876289609 899011534 208493672 454440857 385519451 659138202 583551527 187075994 387975946 137800584 406777774 85171924 560537244 934758396 106202606 156155750 126646600 188435056 870935305 179341253 821447356 118086898 943775444 354216760 533152152 628276131 415764828 383391323 649007601 269264185 392270174 26370461 338473935 207900542 597770957 751041 635401647 998184910 845680463 694992993 310348033 440905117 909813953 75738726 752378539 20038383 742509999 791299729 897857412 555588318 920837596 997158390 381086426 175991832 30853824 907343483 807022829 779504991 613775877 746563934 280483185 335744519 28001802 679685036 296051216 796491387 977867360 932817611 21907174 300164280 759629391 86758129 62365955 347156687 269652306 695472554 229103341 79445352 585862039 949750870 30722331 426824250 691595392 476662440 930748539 72320148 635219236 241550120 342673644 618908119 910408910 225508786 502732229 832144890 261396349 360840693 145633356 341914117 664194659 726823925 851643456 175856278 505789031 762898058 971698256 715601503 459250851 772650463 885566626 195976869 811112678 977636851 839298381 783473603 935893554 279099675 180327647 423691173 145610047 538389630 653592791 300321358 375962871 371653784 848129068 809230418 787718392 789332408 232721860 730103644 543892501 969803905 476045566 12228266 623052501 198079085 511734313 176269708 295468018 81321029 39777034 9948136 444315356 889457834 680947034 513499833 843921972 866095248 377213766 481131147 664294993 645545917 984399853 205860865 139198398 485795663 20263398 802183248 621022650 973228595 543173559 323486657 349182646 752322479 898966111 82437170 567688923 732279768 260970957 507621270 647712898 767809565 812482918 180380784 175960761 950837178 422875779 421742172 690778053 299520582 509089520 945861255 648040346 469857318 420728687 119533106 5300325 301161751 535489075 882679091 257958147 260598952 615205733 530280051 266360711 823428285 305318307 400647281 4363192 156487182 287527548 138127805 316983184 643430565 220828917 975046526 89861566 109135460 400704519 693906925 968981541 502372221 653457182 850475736 844663387 932542200 115714715 425564704 878907947 532678960 347016275 115622971 232943123 478307926 549929999 547633330 214288327 514522861 833472010 847095460 255936684 133587020 538179958 727688514 386727006 535677727 416617719 246475345 411000106 441521126 695481126 802256555 175075988 967641973 882455311 205404862 469707219 43154291 940104371 369997067 756878928 434393307 5598599 356928680 297032235 378444925 459065076 544962495 362387638 764152190 438646997 358546445 699041015 713263571 454578172 98859363 784319018 428180683 695613612 412482601 193742909 473499010 931960608 664089558 717972563 781468015 37514243 959927161 231866178 720128215 484571382 329812531 656901141 499988311 508683534 94093755 487710858 377596510 965370196 857828056 5093268 236808112 31072579 422753258 678171098 935152612 10960716 24364386 522849334 499739367 280549717 507492422 460171832 34033783 731589942 972557998 625717409 901470377 116540731 303957065 750401000 999414884 528450725 755460825 309264056 539342820 450555433 834532530 413203568 992732472 134851183 245696831 474849186 537245891 179093652 164358526 52508308 576950206 870598824 567771263 563592130 735217333 295167537 242011624 408324186 418310150 74495655 215948404 222132926 3932773 416462326 939087471 966528774 660094811 13435135 942554172 336136059 868948930 103188502 260700367 797723933 265928779 132962181 11392052 455245854 545306104 52398088 653460486 748768869 886839458 254185808 645944312 731194892 64611188 419188352 64497232 915400163 82569070 292695219 587889767 975796715 892299235 315414388 929641770 188430299 842459899 151951683 237109660 98216861 249270834 5074967 569605970 234594258 104737495 411996119 504114421 6102602 509108878 504443104 27665604 558692494 543988174 270125186 350138127 467074134 233647204 88917379 855954109 906290195 322374638 483917978 970483143 435498854 205156961 522232053 279227834 504146343 704371844 219482804 920836153 778498655 239081587 536496491 201919865 802291662 387841564 826172580 562479300 820252518 555461 111198811 969979639 902505037 999604868 348753792 37513987 849158623 367979206 699973240 211454575 111079466 592648905 607245213 46973396 654092401 489095457 106909113 202399584 802484138 674467639 364962959 456159572 709780224 503991749 145601362 970872454 792579665 624492891 654222124 693950688 728599216 908487389 609413049 45993439 214835428 541990403 292725641 563361556 830665704 118283224 237539489 405602471 764693865 915072316 317540602 992924111 424943179 802135394 358719233 840409947 299505445 632175186 427200534 361852972 558463168 90064744 816109325 408410552 146066075 869753811 110363824 62623881 856866666 738863383 499063354 491804348 9170835 888259468 225854429 806781571 60393391 116269788 367008574 583055523 503603471 948340361 852601332 619634423 289689653 541328484 551214604 437356267 613659990 897583895 879954568 963643393 25980127 812179613 149670875 802210896 515972077 970857156 876990062 787657472 401522387 668789682 282170655 156199631 539158936 609749597 603714493 653129359 4892278 331899154 107028877 448604069 614732893 521206255 221301704 945077900 289312109 90488168 856699418 377126736 319387007 875752645 658900773 114073620 138032285 453218467 844116220 432763788 188183430 545712495 438787496 367347587 801590315 29578734 289422247 563963223 857037877 157908920 681621608 525722744 184848252 901801400 598955216 654750956 78895249 832898734 41036216 962517966 324099381 119613357 634885740 324281802 66550496 415975581 625846573 283265443 887271739 931889850 620046256 894809774 10339494 409754387 822404510 471978324 927652019 203504908 570678546 676683668 185996457 714833628 611712286 311046014 902252034 895938064 773870662 585181113 99606765 279625734 740926210 311481854 172571852 445626995 923125825 660521882 453108919 902306782 197133281 519521776 935617016 507941410 808154424 80126197 771657869 189572336 625060750 233215922 400390058 105356874 125636256 722852038 2704948 374924041 850053407 247183586 756686150 344586073 323613487 881540427 743986864 691143480 13298408 601046619 92188531 683119354 439757529 990445055 100248646 636926920 621956736 543102522 592572948 358542364 892865747 748742049 1862268 59789382 158254778 996288990 675035216 569092842 929015186 328065070 244869142 579331456 93434283 944540130 2211978 292435155 857698507 539060961 609265434 632715651 98850986 261301285 878940265 799575171 969782644 969385530 530191564 60829083 980164682 879164354 898991824 183904743 533824961 685568499 706845618 841185366 772847201 654571799 417768421 124979243 176284455 813934347 549529488 123770240 252310019 687352256 169097997 153677758 313029211 172398526 418493804 25521703 822041478 740990620 355971310 550983757 422439250 862510985 431741834 117603479 437363839 205833670 933499243 369700547 958286146 58605866 666535279 953595998 616803779 941991069 92117930 205757774 429972639 359921821 14398433 762289737 932339046 525204924 965452304 456076123 86718238 10335519 900059876 574258276 195321022 809712897 360869954 282325400 902330804 417850158 161166782 378607101 445800032 776088456 141514533 471559664 64560279 369478790 330843380 93426592 470379040 478667184 205200094 524262802 863887674 226933796 886895177 469383451 542006549 225348884 743182545 722722025 430736468 692807238 910068932 42872187 306285457 779664530 822718373 497861540 682645465 841480808 644992682 326914316 710523180 951725640 652220734 598026415 758052606 91547463 438725503 940404572 74212025 511043984 212297409 879179831 304873017 798033121 455644169 665327927 708771918 823990538 71522450 630069160 480179518 670532210 442019916 886131883 851113280 189283474 419151960 548029361 694769409 395171959 820014477 972386052 704816675 985600324 498512118 379550783 35128249 690351790 862297682 982710992 899119821 548970878 30334099 757721213 893118171 983408659 169157215 292397532 362591315 987168477 146639506 53611737 637372698 811625187 213478586 95713076 546261257 288328766 59574682 352487680 327662189 801219228 730136487 590874918 236841093 729437118 902331790 97147872 264922632 67677690 941471916 396689726 544102300 906381497 606816660 681611172 237506656 135445242 807236237 615074890 632039523 418325453 879780882 782712763 559467306 875655385 400368464 328313942 347353134 826965208 776314539 178008784 97958236 209482261 728654393 139843248 620388243 747187957 189107781 111162578 331952937 220756587 9005006 476976613 807128167 786098817 987092741 939922669 761377288 53284566 464975315 751520193 157409726 815144731 898322000 710887822 873664173 921695637 729225549 554683218 76008430 712293278 988186827 521811554 282410766 848366628 907720834 111160036 949570188 92752425 715745883 99001942 607898206 316936513 424141558 432742917 107240557 283299863 919442981 459606935 113056532 998817512 743745391 129106306 266739621 139429382 42471566 154743698 325097188 331645014 842094065 317896551 338625930 860698579 696273723 194964724 824214723 206994441 476596674 52160258 207195824 862020762 988148497 600504235 950492902 888589245 847884646 541551839 364929774 468814522 312823349 253019874 581528771 100766319 975936675 395208396 863782743 686024142 522088459 990035207 840363789 737416284 677723261 28671445 43252288 839318708 497709370 934853576 301088187 419838722 146814777 329569864 332477248 327319945 638915494 724482577 434566658 611307805 846991453 500272562 200067882 612242346 720833651 64280590 461779541 535483051 730492590 677806815 989999124 457248691 163608584 969984814 622068842 136143080 786755120 602963932 778138962 719899010 967353864 307207709 580929847 450400337 29569576 824409080 305305466 128212021 811210586 444315848 950529264 424385699 8956700 669934014 617349217 301402663 814522913 451921500 161322762 61192924 31626960 322432763 706501404 756364022 760906691 97560902 876717627 460641592 48558666 972416701 638641151 859458430 934913254 7031091 729029238 29625653 155560910 856204625 584239264 121517022 280180077 74915089 481043186 779950991 270622945 552281155 108708820 869421425 141743230 633810699 584238627 409407043 451279945 331134049 616262575 273063637 423145598 992618127 753491390 145353358 510074891 151603127 471094664 448633831 992255762 598217291 699875512 149613806 178338667 272895379 154629617 202716100 313162015 878344747 979412807 702574367 714095854 662220929 699120322 874538697 545728202 306467163 163272927 382874143 877099610 404932176 772288270 405186194 435738488 408780874 129379893 412383786 578993843 503216138 64591147 512885246 921781198 794010276 134407486 968895677 198770751 390107646 22960814 124342056 985149873 479917910 950881071 852508821 684740226 676272569 538913899 913160046 13318726 919630477 994096766 893280176 598872642 764233736 977159800 910927725 161981426 502673846 55044831 540971338 847536515 546496247 444562986 760945409 792165465 758821758 546240839 933733344 928161163 506189267 828683285 848571209 533420130 359338450 201744875 317443888 396681950 994983210 973675024 932732576 347838513 378971615 52412992 133627958 108138305 639010505 653548845 159757988 299905322 383944211 302224636 454518576 284125626 121498044 789173188 845728306 926956532 36485145 689270803 659298201 323191950 566099537 869743464 855513447 524759154 747657952 349855418 114430513 551866688 540058645 858783471 131274656 389727691 172425875 82956646 910285042 298210968 830394836 308566638 949438841 109620834 929237665 508605388 445315867 288870040 832641947 249570105 458037968 605316573 408868790 768000226 436934952 58184328 802085560 643620327 480741058 323682594 446523839 528544476 530899670 680101610 518355384 791992906 79838636 197393492 168419816 456244015 691846435 4978053 36053607 283155322 62452011 348089561 654301344 9648784 391289931 409780062 373267923 480312778 986998300 886900054 882875796 596653300 293702603 200710841 306574921 802946256 328132763 864659888 601619375 963402129 888415841 772289819 422981461 634065249 406907398 248261901 480375583 113925339 264769545 315995466 546463684 606920593 7702266 58671056 120907089 240772743 979664896 507324747 483806629 983282870 654432084 836253087 208900851 419020170 915729092 579302498 553854018 527218533 92783153 826872670 397156848 405336602 232889873 916945684 777706539 986609522 721405934 270434100 754837367 868737962 818388196 271572775 260255531 317875699 242194983 845163141 579377139 51547377 775474043 852092831 351648335 289803069 15003578 102432246 369779987 916321251 347394898 97816257 967822821 357296868 774395588 964741484 993236419 777260981 797339942 22301203 563191162 686490047 945778338 87899659 83290160 680977629 939816693 774347354 169874394 221757921 312260593 395001402 176943558 643583247 404550651 608418202 908583187 489556127 375020685 589620637 276722996 908941119 95175861 349288728 672363122 393270928 263970197 117878040 680112743 92533669 483615457 488085338 805628547 745564039 175734628 757704402 908840586 348935091 518475643 959250981 604107539 867097241 21005208 750286894 98323979 476168223 971233984 656655485 292428592 347313181 3635470 701109203 619507863 328141535 295638062 824862375 141052711 153058726 417997794 22473636 996929308 355942183 264286849 968300585 453709444 733004298 536984947 463984327 111879621 788380012 827474358 959366087 430828565 610044253 918729308 529993122 549910017 912201059 482100491 813470598 737416679 526341366 426004091 614910424 423214203 937377282 150399228 991931564 211755846 605468008 830154989 455931471 110156066 342944636 54852934 67103166 687359679 481827976 765969423 567148844 408788258 719984968 977401062 175857280 775867425 207993197 890987902 836117460 171209448 919858202 248606746 737582071 62047862 805167210 469681174 367452396 866785313 600482792 454480991 419603049 930382350 184562965 609911797 712617561 567447482 131258341 840245360 821675355 604291700 255198786 230511224 381310272 491827168 113615496 51932236 717227920 872041589 235729415 18404412 101086726 842178048 413903237 56523567 724923152 999050783 517004729 872328990 874895440 820179655 667350481 478993303 760438557 156918975 701602285 685415483 84130563 186180643 497768353 91781440 608719934 458833121 767505015 521090543 729048643 447424319 19471979 122937639 855146040 225749075 728760429 680237528 753168247 160939145 741333219 7264137 381174287 17986082 135914020 863819476 121380163 878953391 625956605 112015844 951230473 583032473 14730544 780662013 610438027 566572957 67164145 784595701 416718250 422906184 792359527 392550835 499189110 841837695 402863153 610260663 550179255 677501178 443695070 219262866 394994023 141155268 263428467 787353193 834522166 66778045 586068202 943268470 50182917 860741656 69555373 25705607 871157355 988906717 861969439 294138749 818962227 831983464 18878483 393983183 173034204 446423272 622362963 3165956 874967064 308767969 126597402 111816252 940759373 467593131 507599770 214664872 513273623 949450992 220719224 576032526 490151620 761588274 873101131 881747270 207218390 504203586 163697696 686129855 955637637 631128266 644500985 311259899 101802299 674725573 499059017 422931470 90600214 277082369 191723130 477913379 29498217 355116964 554053735 828761335 33723451 927241636 253249250 942948444 147217862 557595469 410551599 239414968 767549177 210306751 172834951 629478019 287519735 626234478 611918998 276001740 229286550 728213408 834530302 622208181 529247969 158126835 888821970 452690931 250205591 160475348 712874779 538024783 686568617 929018376 772313431 530272807 574724031 669897767 947429621 735183853 608795828 729703452 32472282 711420071 53558806 772778151 383680991 787356525 388257703 61651163 469558608 64870639 227406558 414327456 610332014 100133869 276709735 836769586 936319470 257228732 427156895 340745120 127204985 332113096 616653593 685369678 466097450 344481548 463384859 695462515 312527123 546991259 550679841 180886684 420021432 594980891 26607449 357623079 55080082 724761925 164737318 83739081 348062605 666607975 511312286 274519817 522929034 383358946 444257804 198193346 749607902 676942507 393662062 600406693 807062993 307350734 969017847 393575604 733845280 802197223 92522383 383035848 769450620 692712359 402079310 182121997 281119753 562561621 104179205 568428929 903752160 267099978 874928053 829318264 29352077 703945844 920939541 94473243 920524689 229475284 263012880 314324196 623203809 828630528 560483653 980656419 632571493 366309025 261265542 298596220 993284730 347938038 289971289 40461671 38167153 234906704 430660474 661044143 260536333 691016852 136436055 160858356 103381257 957330620 119369874 805768745 381183888 682123606 604789635 274615574 851402947 961327363 29164212 256063702 921879351 490193145 989493603 276891226 97676660 480826754 346564099 348202213 162387063 129358459 951267003 365888143 917219376 181928406 514017765 325952194 939535365 63685656 13979280 33071808 426063694 403354843 905285375 84394010 859433431 87592781 252956456 629577018 37624929 237201072 666198838 686859739 306739488 48774360 410127880 868090763 961830974 470416560 294121391 914380336 29229143 463089845 17622516 777660544 553142523 88924025 147366607 380637831 263663920 484571170 867051761 693380133 590738925 981240040 97543739 193410958 139032224 896787354 467227205 43042248 708020137 900846618 353408216 911531824 339113181 321754844 520883316 158109685 661554692 506173291 75617995 116104860 888203098 938717413 468968260 821654650 195880978 385570426 508475769 905701437 347466446 180469744 967647673 710440548 710149161 925297186 647579015 300769218 728336173 475377532 432794649 772789247 42819549 787818625 462918874 493942807 136277933 760077894 228436968 925085401 502345220 298626804 175705238 373811560 825525441 190132297 369712619 200177086 82240691 381112855 356287266 665883940 947461664 384989380 523787304 836233916 435300159 883069385 678590497 742264823 757337790 491080243 520060388 404408607 364878908 504702757 99327098 192232398 985895120 553665620 756604323 807032181 94339456 551942282 753892945 78969815 589542859 928712227 3993386 630034315 586308128 77483411 46140682 763136637 666378340 871353821 857012095 330618477 956204144 845121821 229967691 4908398 598059665 618867968 390513382 606190697 735561223 614776135 505540858 125753240 982152582 904653896 241297125 316498699 84449720 221682028 129405242 308843814 561692088 75918258 260707392 185982241 809441688 384953387 12302449 783222151 141709020 855489148 135788285 394337463 406043901 134196575 908324421 984172390 68857320 823174434 763339360 234094363 100770940 674543654 882318745 545498290 933660943 477483873 700282606 126711002 482953194 814124765 654126227 499077271 876583880 785931319 848596077 228704192 939179611 519161120 3729560 728688514 13724359 509245920 54064610 200111835 918267941 610387918 540039245 123127584 502535682 458105817 386619281 730795639 346609885 661645058 355426711 135716958 155364524 793260255 806504191 661101602 415209816 278263834 221556635 565507433 292927804 101906160 986786546 968799913 58883498 292079539 597343934 881046958 345729382 429319496 54575470 588982808 135308585 585869226 768949925 73730522 362223647 740059749 968744889 300565436 981119081 598313244 969020980 299849178 382462876 549681667 564379735 993487908 381974337 896567397 864374162 485752540 284996435 1202463 553599757 939509019 803119812 600041251 457896995 493005643 586052600 918769655 791378145 5888430 234932039 774883891 288284300 987209430 55193472 747901447 65264152 759053867 658745953 443573682 782965937 831536745 85978912 749051404 187676214 203505183 192489701 316175613 499611577 530098736 511016269 349618691 364013568 775833174 37142249 383587504 666236935 661191578 743043005 662036266 569176444 837774045 64155073 707409578 102717250 229578579 602074979 790141437 179621871 997110019 992247299 441317382 406443597 591040840 841934966 369527354 830034908 681712467 354960260 104023330 695542095 95878310 581044842 811943133 86768395 956000666 395668825 750616987 539600811 353134554 758630901 316489251 615444606 544101094 351489494 390207054 321616391 711807121 705859338 40235401 469516924 726012292 343504017 333693783 665624136 631507897 277525728 722709965 998553738 700158720 178970207 54309909 547018644 10659197 186092523 367502571 727925612 217837608 343809877 241746211 779393614 500528459 100921824 796960801 94622504 288418568 240380103 846126687 325582876 821353937 251788213 653983723 869350145 297126638 804749131 533214438 221628387 79357178 39885725 519894534 149632383 527075430 181019829 757797652 346843080 167172085 884694287 898632559 747424357 593693502 410333723 848017032 2538288 579998510 874422463 843194468 130461368 609098371 965741522 513328669 844120256 750830162 556845730 854679649 504626878 475756673 547684719 765793265 572948573 646511182 681391085 34726948 831688187 142047942 931759558 74087777 671719723 7875407 127477526 477536168 822544181 841875487 204292845 971632906 117944721 562644674 393052625 298352172 210702448 342861463 68327993 875586761 367434547 516012372 758449427 335819309 500742897 296953214 677561407 303721402 559818998 845533426 625414417 279416167 226774334 231710047 302126291 916939324 983715582 568441545 149175104 230139607 354945308 17281544 287044875 813061610 903048882 74199367 848673366 956367546 53654415 33684613 500917563 641856418 89423029 73890839 804238919 681000078 732137180 653469988 960728314 94088064 395256558 411748904 430059592 536785167 518354057 449660785 547098 655748835 235352192 908094885 267691214 552154682 429063514 102285882 754712499 132320358 206437842 449124861 69993358 996221261 772131669 696039308 597422617 485651432 69696135 154788316 526217598 346021060 770276798 867150003 763065568 550057604 679531909 497912622 239297234 622961757 696253723 261796925 43246557 915932312 917282546 567063330 860467455 382380819 688545584 382439926 715202087 331454401 993200177 102272548 316739258 549390117 207336707 895692524 565038609 226118363 580606440 232171489 445534201 294801936 143797464 886397804 569045297 120988165 352263164 987257159 586926063 653525647 566204980 246012674 917536348 700500634 97549202 198492801 844924179 885185185 515183581 977322619 415409062 414385976 523450127 226254589 297378073 414026627 231110103 315888102 746815589 245332412 275295768 524094824 686337270 611200944 911687016 538497677 24718126 73164610 700861842 913219504 837164256 859982567 625594132 828459264 310938581 910537257 603941282 549555968 219773002 747905573 380805793 341883658 348841328 665352716 246428589 199254471 149181931 176191397 894805779 924625848 970089044 205966794 524180056 401697201 970082743 709805286 396756144 426093400 605898262 609181566 642857863 235893675 24762084 583094949 640344316 427476343 15659402 451710597 99403873 489256417 434259941 643678429 414569149 466175201 995972806 24847230 989571402 156756418 115794033 519992525 917435383 115714468 414049054 68180037 717676518 442479098 630310780 882359026 435234799 374438669 247184681 984313846 754814748 878805622 999119675 878741767 81979691 174788520 792392378 214525167 603664143 94091364 554676515 978690059 541842287 772584770 164456679 920811213 854116646 349647919 586039273 504586299 28588481 729320169 221506052 677124205 489096708 363343749 596409219 719167762 185558117 564098282 439793575 166126060 863797648 679209812 795588389 30387535 535182561 130233041 383864997 716541606 238409453 190475207 869824324 909675246 755024377 329742700 253136147 800343354 407185537 466170957 178542997 513071917 937438643 220133064 478545477 184759683 729937905 102494097 913971982 410267272 602133843 6818353 649965265 341326495 642122275 234450818 393624035 315229372 894117215 902033972 859503756 636411114 549462330 656422732 61426056 741974215 58383259 256223904 26423946 812656643 562326684 129223516 594647221 305321189 374671116 962338943 991099681 197790918 215310062 329470815 782789468 561830547 938616824 274187297 943466470 378319183 48460821 33635394 98632371 822177423 195115491 372517649 724496813 112307452 681605942 483110962 254919472 466169556 488208787 932949020 940071564 318191722 358518966 224336028 52223623 316067490 447453452 342470480 857549784 988866934 613201977 936495661 797302701 657623667 287953812 868064762 231659558 420536124 452892326 972875474 395638487 433135110 442718127 551595686 293078858 645356571 921298465 826784185 645122939 582158935 807872803 96855842 929724506 872566702 839209487 506045773 435063373 7840676 791323380 324082298 656869291 509837011 313878292 926942525 845394754 604546409 485179239 208945916 102987473 205271463 902039319 497504373 90391951 469529187 577927682 915009589 393553570 498103687 590707004 85378849 11321769 944935055 423428490 640222449 556203315 297005327 965996519 816800432 339838278 205207339 384045571 50702654 467442649 23560734 226137791 18766286 393146713 315211444 487172786 426999912 763531560 228872655 809951911 756962408 972622873 870647525 788743197 521148669 806968566 673258112 815480261 161042859 143482618 168048829 217869320 382257865 244794456 140135886 499173759 977755652 872664754 361227384 178361209 236664538 147712418 786045077 340362872 767069984 793075508 717777300 25676980 90730877 537377898 387655412 758952086 927501293 732976055 278854348 458831166 778942014 300243845 36774982 604676862 890473622 732141231 826115104 532118493 793997291 290445063 99738922 495322646 847391369 869908945 717850314 221356182 268994704 985602630 864148859 279518593 536928884 420653075 403917641 351931053 561724795 278998999 383835222 813591077 891614274 721783208 412860249 117702823 976248121 831637903 216765978 662839847 697920802 150455303 962829815 929378890 574960534 651724418 679478371 877826284 782662016 64145892 531701601 776222874 963121056 505835782 141306893 538615065 37529353 150981940 868231443 520293341 964050851 607272624 79006518 553196178 40714922 574042413 213808587 814513559 76366637 504042068 186354491 545240190 356642960 872268354 997002117 571124878 648913674 940955656 604624057 945005889 148348456 16022570 579154302 431971526 709950792 562560289 32805773 999555200 733678111 340433369 816055859 601686405 339557171 268155443 111575763 670251295 734915170 29948804 717482850 723564879 992130906 94033684 352999657 724248389 200212510 675659425 496919047 326127593 94240647 463436505 304938860 400408150 926444993 154574819 798206047 380073049 801930442 42113495 444193593 985590006 689971446 394320193 849093096 963319524 261433709 383764898 165887597 762203404 830318764 334815727 321516382 537685773 682524928 425779984 950938213 165187515 799619342 686205538 836599487 797252508 384964174 658306614 110749117 820271466 717536139 335176272 752880454 714583699 534934884 16520296 172006483 542070204 138072783 677738668 652099954 41323322 264893329 825596988 62988101 376059799 204189382 563061677 946541824 533508115 580418911 730766215 551118061 108281632 155881119 284057799 144002795 539557605 262371486 811168606 784652523 980286909 28990150 903068847 205195122 313785525 139325017 240160789 953175579 104936977 130468584 783136091 783068690 301404103 270321373 897774402 150874265 985201666 212335091 544801278 689365383 500555680 916369848 665861049 653091267 822871733 174683154 628065551 308602318 346794246 249295287 860718993 96908855 757230735 825600179 202490946 769089060 249383934 42124006 288205853 919980495 351826229 982103683 831636108 301614343 705967052 789785747 545458162 855030699 242470284 53989232 739096611 478534707 151194869 80079690 183145191 854791207 950678969 270560421 508625531 253181093 81147199 587129561 501852687 404462303 419574049 455026833 390429768 288345755 939014574 911666765 704090560 109229745 525884008 70867680 660772225 262682001 139062919 719581682 488831374 203359162 433323381 633235071 385606491 422001732 269375824 763707733 858007119 570067799 325410668 741502362 195393097 687108274 18481358 136075077 656656408 195587109 471256754 556671392 75023362 599593495 895597317 476572109 918297662 837380096 136508651 867658557 624750458 975538928 519798074 891417146 15420245 177264135 768704254 805775966 592970982 698911995 395968499 969615642 704744755 723009173 854124814 768137265 595642811 584230195 513275637 101540922 648309485 752375624 16725122 972055329 824688815 5744600 693948740 30165670 834516184 100644093 143079933 576581852 228399541 417647716 871442725 135824043 474435208 876224976 332616549 375040080 920108036 991620502 757851678 622491096 178948819 505259808 598664672 102886312 722659344 739089259 918741235 624359672 80636365 491413896 902685649 215008339 236171662 964567838 986483625 128328728 373623500 974210278 555666142 12258556 446571892 812726574 829843334 463061126 960019045 588977239 381018604 196738962 95202806 592614231 947223823 963057359 67532397 256236600 436483873 733510465 237937289 745877655 791982088 372508863 133130745 727192102 661026784 260924534 688933346 410878250 88381814 484404580 305990493 411871997 689549519 837490397 663605238 341096077 423588767 830938890 189427246 767671515 658793427 167440741 111623674 856109950 351754760 474746175 317270339 534996254 341532177 339055675 775854180 894812665 709559156 980076752 190729903 416820321 764164589 116985546 538842856 985336123 713385451 762563529 54279624 946240129 929852174 826532288 858043515 716233153 200977071 540855671 751222563 105079965 898094168 348710666 81591635 495390025 738380359 147246185 304149140 79398160 385236976 92598742 974882531 695835856 496751736 165653609 807720241 767670649 357350203 237502607 196151266 922470545 376084038 437445255 881588559 33117363 91502813 23810788 395368004 165984267 340412919 716680462 24125570 92664540 701147837 799915968 962701118 924440058 998003471 913276299 727296416 939730256 783292926 666456914 997195077 610182236 698446419 251131597 668630206 918828206 10559239 177605382 210110479 884476013 369958345 692077790 658984240 801418961 129635707 945438089 914738319 284504746 873777845 690244878 945234829 258070744 728570433 687303368 251302140 520020688 375575453 17575399 782814632 367075614 181066620 310319088 980486347 183595997 849068613 398206777 926049942 817474368 774386323 194478446 937501359 847729677 625807283 342909967 807499949 52871709 352826921 628857583 436272798 72217822 619971115 833939127 934015363 699094993 161561124 7731040 219121614 533657868 303669043 497977533 448194026 471482808 224930729 157447919 607285939 908060820 872675215 939778286 637867002 965727856 172674845 651271943 340704002 493383859 955252036 578330457 858067718 621451222 314868774 404710487 647310769 993849319 238954904 592490825 79003044 909606663 751018407 101786314 651834611 543240684 967310096 710169931 376242088 615914080 62801862 771622287 767394367 510783936 762332527 529972013 719121448 132221821 628693992 922962194 302512713 57731998 338810301 377231356 986462585 674073405 277784241 500264704 294116102 187711750 491894844 321586180 818659120 579862971 863643656 798127173 994688428 145359538 874215540 307705555 648307745 29226581 891373841 523248400 266395310 484807841 621976871 879579957 978832995 478265256 386972209 324806862 678503363 388050959 578846812 928459064 458755912 738913168 858342157 407241258 799258079 304086905 272610648 361825321 297399656 1821484 207470217 117013266 852458807 126999709 38179487 413047956 780296342 190463703 510882508 287551667 277477185 268921463 984547831 9131591 103488488 590613551 219378490 614165371 246972080 118679365 58584163 9594958 91831730 726191633 146396279 730502421 718705019 220091522 878260779 249751287 655966603 739293850 641745514 352888943 334525142 292559597 829215442 441815502 149294150 486138150 11537974 499494327 426872118 97340035 319028509 796313505 787259896 516632660 118265921 852676697 442234449 811212927 709602578 771282557 13389304 437356543 80534065 50296578 426988826 406236001 742813173 286223790 478454489 863933253 442686697 360317342 548801480 210415843 952972364 538048450 934193265 160356995 435856015 707362140 129073103 685197828 88875483 730103429 485914580 547291478 551817353 169908392 892992484 85393664 615082407 810496773 372237656 95969947 77403514 140341551 976832509 733174612 296158198 121362319 996203154 794713198 969644872 439505886 58897229 985714622 209879629 380996527 804144727 321298989 917332248 553254115 618046027 238515258 483230064 429570098 258091195 322234997 121037647 599308201 281276075 9083397 449127780 299546406 933491988 300092707 442625938 981318878 73256803 387528605 511684975 769136600 31368183 254010708 818775238 507761264 881504422 241032894 630331413 957529813 263223608 136598884 199055632 500513162 332154859 339142757 606396700 620052969 257381357 922807026 261316052 445963419 442124773 915491024 313217928 171428897 714440299 614930649 588551097 143763279 222149772 778671483 712054687 617438155 840456263 317699383 580198563 836778130 833598226 129910051 568581861 174881396 362982997 110691177 52286903 729862803 964955629 579926470 783925791 609785576 165046443 163017740 260663129 30048958 409929939 221906080 31812947 81014069 539069598 124810492 246606128 650307520 556136632 499741230 451527110 436645543 461935810 930422103 732855328 916457350 45330897 836647470 832791548 539667404 283340525 458557307 515167821 942153021 496408467 644584348 881365946 559536241 962003508 206223619 963398429 177216339 484977844 87526069 782709766 912479650 889065707 405146316 579609398 655045491 827381031 83176183 491058980 580109229 980381864 726106869 584548987 548033163 732360739 250571038 258897050 218352670 415414848 799160026 151012371 803761353 417515548 842836775 190624556 534102979 739975112 571671831 294856289 113291160 260209864 746809423 278168800 170142377 453201556 605604234 738794763 970139559 953550618 633621268 311235322 383200284 880111930 348307280 962830070 234561250 778655049 151281459 270304767 546945705 730910607 954319046 481948231 20205174 656979145 635612071 729138101 148880926 650331815 356177800 886126691 854627023 15871567 417081007 761033505 339163016 193470168 591393909 101767663 820498844 355293648 633171911 691478151 587966260 867633079 265580456 725392080 901638089 157499522 441218989 932622188 12517550 20723224 776825471 17630763 360933252 619945176 134913117 166015638 574042819 25272338 780896151 66685029 116978744 457330825 698162452 594416137 939233665 434699512 870664909 818985251 769907859 832435849 423030864 323900171 18452533 975499615 16512318 654925642 439138434 66578190 37452749 873709088 171455851 745185565 968899398 618975487 162585395 261391755 203894408 936201997 276622577 30192455 842645635 785606566 161998097 795177655 858410686 823651032 98290643 830650418 117243858 801934310 105422283 391356550 579104749 637772742 319020127 91299187 5513552 496184227 842544204 462574637 238925521 406192475 431532578 646586846 185689690 76136449 804519619 118847521 991992680 156077148 970468840 145222536 315934605 98614631 754927772 912689688 420242670 930786511 150947263 323470280 772318405 519389560 924672132 101603590 519303136 411873273 969823475 144976177 613164832 999075099 987890792 66090783 672470011 559603293 891211282 554230169 124598011 192334451 457331061 845553627 329352253 303453123 168802536 473808405 393741811 569269478 397061656 910224364 285886690 607152429 944352899 244471033 166765797 256458010 269592062 643365193 864072040 455235298 35672368 118679515 46239725 786399986 284083732 82142501 781176971 157702247 534792827 538065296 221725802 337734548 847321224 78375927 138438728 908115072 486996274 513190956 785058039 6681957 98431685 98840435 307844060 596724019 969320801 189229829 39371122 444419594 53437306 897737359 678816709 499400131 277025878 993345712 688790264 622004328 504197266 574473598 549872063 234455736 782780574 267529474 477863397 817697444 490397500 246352311 442499784 645783509 846824965 268054799 721430488 90873379 398766564 573309934 720151836 39042079 526988184 527813421 991780780 625423242 859763767 610800152 358092344 43973084 222441382 498843377 505953151 463525054 805060897 906147179 992864985 172232848 107635641 601471791 370070190 356748004 812380881 338569818 66120957 555325185 104957601 586841597 287713238 215043169 17548979 437442204 813398496 813639475 490548841 525138096 943455956 408413401 54451061 682892581 724308991 383555179 845402206 871030236 166345412 801336115 525419266 163567658 50876696 457937711 142444303 950893912 1250821 925712787 701973640 496691489 495449639 36311876 184286278 453761590 879347250 762621789 608626804 696164029 710661994 206548398 511696146 241677518 536918057 266894648 950446196 728134901 217433692 583460530 617184704 151162035 515779591 859533063 750264179 983036669 367730621 190601686 508174813 294002875 783045416 317573105 795873184 844591946 778201991 796252126 130559029 771323643 98944555 613900889 523862119 654687634 18424569 530112208 46577877 682442439 570994923 195991014 888154228 934056136 962062991 371967984 477146892 38465717 48853638 260590971 718511030 703908643 566600198 587737540 962127716 714921114 484483417 224380734 127255897 964279831 128702556 494436880 357300653 303152523 23154945 861771412 26009546 213124697 446742477 420097498 72339698 254484444 757385818 675016738 636403382 849806303 732954070 250718566 507162496 264863523 803275651 357397454 367748874 885116380 958916405 653218873 574386917 772452404 690702807 226188987 596785396 51245767 463014886 32959257 16994798 374559526 483089396 614827343 550415327 84278868 445097766 939999242 54334119 684173132 579036087 250107695 437571705 752252793 827165043 842221650 351757918 531011899 645559357 827114304 171564208 943707241 83950217 378122869 181781407 374429386 691316706 309666214 589463983 25508507 438147429 895936057 747067448 351067404 383020100 732685768 446959077 997262531 8462405 333407394 341470518 385827927 135574081 345542730 743302398 393522390 304971429 429899766 896446181 647816767 491948532 582600977 280250854 741277705 582526274 829219257 514628306 737033115 373298875 21833026 165736652 856287953 428881946 125978289 305291212 789716606 749101362 668873537 204095260 181636836 187507817 182538978 83716062 864375869 147529016 497180853 5333379 796745014 621266092 930793361 188926549 251933039 998152680 376820353 36052974 237572604 512434337 484493124 815500735 232914407 260599712 268580044 419526538 469081259 235860804 451911103 530901993 317111482 789253629 636681977 129036485 136862201 489741522 366700040 197798367 826673727 881602012 63747503 25248074 569429465 376576201 276205667 482294766 300993033 94820698 280095953 106343431 41655682 997084645 80893526 660459429 740996846 656809939 983024517 919117098 974819688 81997347 502353061 630809039 945532674 947022310 231514161 822460446 449063233 534321857 565493078 684227705 71671708 50329966 889919096 75536274 718789120 348871739 762840493 424983793 371509071 212984201 723202880 57612658 920903644 560501326 741367344 618490820 585595376 739003540 413927598 234512619 271433289 61747191 307350179 999387326 111270550 525170219 701293607 928602217 471607292 518584692 766543371 232642285 946410900 226368813 168858704 910075803 804830442 993916994 255084206 155807389 912474240 14463413 955043086 447976813 696852041 641297692 317026320 62194524 834385966 945660705 390010758 68290061 988584588 211946497 210962679 535432695 624974004 450594318 810439197 629543142 212665706 853276205 744605543 245369466 794489191 492379225 787738744 284714662 620998615 158010910 560244390 958193202 807487196 97284894 951056252 992607546 589383177 942732688 213188408 922737582 439100647 491120316 947642190 943246800 924427123 335884672 135171299 32306872 836513438 972346062 43996498 366683347 415313612 888782891 178806443 611208800 118597718 156302386 622936623 252175858 657296392 753069839 791119061 374808305 705793443 545599237 595509705 170859544 457247324 675819753 672798951 695474168 997789531 952954020 790085444 493539700 484757565 174177716 50766246 203825219 929117587 582316459 341451527 133454194 29000545 119829679 552361238 864560607 928951712 540444665 499592885 393697471 996062908 273548374 901522556 371892760 292455446 730614953 420584245 445927240 832220291 525544039 96890462 739645308 235672267 146776089 75473066 692559418 185164331 179132893 931223168 745408472 628981971 27805670 281280122 527022082 590642793 657412856 849206760 384337464 689806469 386723053 595879755 103393357 564478259 312122162 837353178 939265769 514839924 370616650 402699520 737292296 955654588 303417674 458164955 299061626 217248373 468358235 976090303 257661281 549953147 205647676 199491249 29739189 741033375 401533118 445366509 931928003 496642853 812818502 413047393 887842986 3525701 895528014 963874095 134442461 976115373 206769891 684648239 350175396 683462909 326761000 682017898 770541466 46733129 714245843 16456096 116352304 201950107 493054123 780897987 269410345 949933167 650450704 381763962 452336668 911877942 770367859 122690975 480794102 292984531 220361177 970588097 379905141 242548257 967050076 662959523 269414061 837671530 326878890 968888507 534121095 692451825 707396740 749253300 935778621 823513706 677563456 517178348 219551712 157245309 408911432 875425783 26160594 815004486 457549977 563923994 517696844 355978968 640140101 508942289 3867097 372380853 525956337 890101577 431621849 992716119 319089496 286724582 655842816 566419371 518750662 228181695 589494228 976672657 225175453 74177821 255996978 987203165 494809811 826955008 26247881 693237081 84907634 158844314 717526941 572866625 562985240 889545681 435532678 599023045 728089461 930230977 69558958 99563018 149501647 493603384 459725591 520434986 358100352 240082745 836911379 66333615 658054007 32662650 684576714 650232604 509860531 858264293 820362679 992980068 346734540 442097690 329620267 590829681 655311466 354089708 939695305 132472478 935540171 732804064 610066952 778969405 189061441 257834929 312423349 228524051 509157042 411822542 469621358 426616535 273786647 832004314 341322535 510278070 405360893 93384492 530398633 515440594 846883591 498386765 578743054 258883518 219831913 584007804 852436551 746872324 432150383 270054701 463523478 500656031 315843060 501101445 328157204 819063425 643140075 557041120 205842476 188094990 473695706 850300236 960837150 267482015 583546714 507447307 849549181 371970817 97868696 600786965 602930353 806307571 214768087 598279059 794572150 917053868 423328748 837817189 13438300 187705682 739350209 626332574 855292485 297218691 472212178 686853122 417913577 884654288 925501619 966183567 559328597 488644413 525912968 379414001 718882663 89506499 361749387 54568460 79292756 56921807 760120457 198907510 414363683 410514880 902562405 238190329 709217840 187427692 760877972 352343574 667232170 887776155 306064288 385317245 624127764 886176395 5146534 411297943 191120840 255215979 384913623 26416892 955573359 966984416 421072634 612048125 641752970 650701186 371100392 303071771 980353005 876539488 620925711 594716045 681077054 630102904 193550320 941154495 804434042 148560448 793249442 664625613 598921841 474039328 240012108 152706060 373051973 124942069 183449006 341603970 812914159 646484880 238586265 465238121 258293434 549795893 814608242 606766000 371499974 804308253 969837748 329913210 280817286 591702772 459718251 355469468 464755522 487792475 537354681 127652899 943070614 612384103 709030996 179782604 835239153 840604192 371100422 404158603 611655959 727275267 97024044 23177477 938689696 353347201 825482296 741393429 64342903 197542014 350216751 535823691 405159259 760753362 424473644 263090536 277002849 217542603 566681051 284837603 235801968 477129386 388528895 666680423 189827779 539191329 858185708 699075922 504052331 411438811 564918285 875255352 807116491 976313332 314637919 12789087 983745306 570470269 741516276 468042560 265785828 177993978 963972722 888891148 151449994 571375587 246637201 932677413 275092157 573926438 581128865 509199776 498950407 558775459 128882433 15858890 73089346 162171311 937302185 341466528 844504606 270521234 906070945 858952789 941682848 907032841 522097032 76202704 300417693 306500036 167292430 378275115 233267523 940235497 881424762 95876661 47726993 850153359 350048036 459480049 704662234 947140932 130439676 214128149 381221703 96547464 140168450 636935820 600609361 263194960 247766475 466678773 68028746 605033348 406677251 730222113 413332437 340474240 593086181 784706712 608010346 454026903 903268805 937800981 167472852 202294155 906646663 216028678 491038386 797660951 63771940 66358541 971891705 112200293 3187500 395934081 489239408 368327576 752635455 306110190 155581746 581773892 266976915 189705104 952395056 730957809 110756721 749085916 329035181 556102811 818787768 420169208 313648576 664000309 113585753 300809790 336724437 266843681 964079321 994926525 448608812 647409081 937874898 305638840 536938841 744750794 819706226 232387877 795165378 816651540 187553786 449697070 168538916 131515851 490425408 476207540 478554895 419667481 215804973 644002759 574734181 25040793 493339456 629427759 768363487 250888414 915013386 317663718 304924040 282679274 423733168 803360412 91804480 730471607 437610604 791487282 252529210 962517426 533328396 579968063 500040830 574682170 4704626 849455758 242111336 98095910 303904786 761576350 883574823 198907708 943084663 660163105 359275583 618135995 38899390 780080253 338168839 815314 905646873 274736462 403246892 70520358 782229069 136019938 169507628 961609040 263693876 843413179 241882588 337687133 46722108 949578769 635298787 987663948 725838311 793247310 683727164 786316691 140139337 634759824 192926136 236181659 790249357 759921962 263919994 299411007 760428912 770642979 389278585 723894865 920785348 523673013 357604353 395030038 57909743 839316175 477275442 467603653 686130793 196048788 551849856 688133643 578449730 483773402 599505457 247969417 121876121 824664492 410719714 678366805 395293990 424184265 779887875 52810613 339876017 93210658 900751446 643274855 635120280 59741791 719541108 735768220 219345485 535777883 321653064 285036280 432097750 899012260 476861073 125216340 50386508 939125500 610230372 169634812 743597148 606759642 236215465 286836274 402202313 374551018 91656345 164860585 972456680 645362313 635120454 7798026 338244898 549289034 343634451 564123506 244035957 687771763 883813176 160159474 100541428 50413184 378615359 115138062 483919682 519808671 963936394 59360575 980166939 827732531 299518411 277711729 596745420 541849682 390295177 329579653 535004598 200601159 267466402 524149712 166515151 152646672 868210115 582242459 583706144 362724576 485630450 37521569 961057608 820707743 319882757 651153556 771230199 729865573 298903080 42530967 922561396 637588482 138348635 59935941 659415576 331366010 980054258 664460713 420645329 757495169 760719635 216976580 143105184 328909315 763636539 228234507 602641691 951714719 526506938 292848998 49761516 384353062 434690866 190160178 737794895 470771489 419545884 424885440 256052632 463512649 287197251 407681492 965810091 667884045 547228486 210163238 409896578 924605711 566783258 335324644 514891947 833931687 386986886 211143727 74079431 337801311 933968294 1022361 42223117 435675253 346447465 101984429 314544836 207283292 16916755 31582823 649260236 696454203 904307644 172231352 240677910 541828204 80228302 759580932 112979751 84399614 944632458 869251747 952722330 626063668 844361604 800675171 281072795 484085252 76786467 745681924 205089644 429545113 694340386 305614523 220423139 442812370 497964818 474906544 467883242 127827392 341576918 867730303 188878078 542835756 590947621 425248187 617068209 159999758 199437323 769532775 688259369 597125399 424177000 170573179 236602014 688582184 652988271 373506405 839104735 400634841 227163945 558153605 125089230 164917747 417272048 456791471 787679711 32918774 265015028 90811821 781517982 251923604 234458553 824177595 47368486 226544180 838017175 430081801 106183850 118603632 786927673 469414461 533804271 480194711 280187167 438495214 423983824 114081580 697929244 840155434 348603577 680959077 207887576 644197361 947188013 549979052 413408334 998339511 67433281 765579042 971362639 765384678 25612062 206288407 368719102 189769817 674991234 860941715 685318995 988861923 438371648 941257937 800267672 560467142 748016571 735822270 524169966 812197692 789212527 209078142 676603593 888157170 756269417 705831144 607741296 520166536 552171210 554618117 297907326 741108242 371538247 880543125 399278436 680983450 59136940 763977609 187249124 57969819 434343508 270801802 742102167 416963464 546422707 709977713 867136873 922423875 953508045 376972237 666128920 642924198 895084988 577380960 842848440 817635070 149507629 148274850 401870897 806961290 556633059 124899133 136287935 164438016 303623987 615792527 216387698 239280649 11700103 635372587 933489068 17294784 681742299 198356824 884843941 194488120 551028547 102993808 85126378 655951859 280639843 251140099 626039770 321768299 35753205 347503890 97853736 787780492 381184583 102037716 277911132 153398072 269060026 126736276 680655954 519607490 15760452 223994960 174715833 241740915 303579119 115448636 879303572 381979401 981780568 577748541 335858109 194392115 123163953 365675375 357246813 413417750 275127999 432980896 770349430 212632779 873053276 850813138 115742041 564394718 472956662 831631037 594842928 510011345 385591694 458274634 966287477 421674391 634448827 15185177 941576825 312613913 838093348 148021244 485959390 182517684 473132809 815503738 597298205 559026105 599704251 268514637 446025730 965874412 96716320 493420516 183809067 580050950 184919856 621755618 514337420 456337972 733557114 869170589 288510957 281112981 174793888 487983519 511703658 562439615 878531798 413002537 834326514 838671930 310580071 363497899 61647050 561132291 751992624 789599309 528259591 937919755 566347555 486608490 259307543 548001974 582550214 861538831 665302841 901466205 691241137 897643649 764724736 52527308 408271636 95535284 64576980 690478532 103510574 642492884 776055152 927486586 515929303 372173248 171276645 632943126 971118839 768322954 762171542 392921142 453898764 157051384 323971770 38609256 718047657 38504966 578638558 385311667 949305841 184678242 669449696 855924495 907714592 369105135 663011061 58350568 537521923 377434435 360389667 901774239 861349754 245095208 699353288 968918793 925196541 90072606 350236177 163391214 464696340 183138008 968569732 755754635 57338590 210768827 978865015 605605904 461518219 346616674 546643350 574794531 472724706 354689308 803494753 130772316 781288636 793460076 519789227 828694215 981142663 522924168 501786652 800333925 637341123 147883739 678992816 602747051 562803848 434751364 46669623 522160129 357709311 596589269 618919635 865971524 925347557 462527700 289863548 716039236 471041547 704687037 539127679 861903431 944483544 713158269 493525755 475739268 349086149 571326777 91672675 853037737 386037984 18509765 35246847 773429590 809671754 765186606 936139114 306311840 4669113 155435313 685115413 390918799 433383927 592943809 374456259 549782431 13596512 206363781 889804811 372661059 971017320 173397591 31775194 280461405 781376275 82790598 210498030 858830280 659156603 144865173 460728667 503614671 11007310 34370106 300783114 166335922 724912718 571024992 316281653 280476712 484233935 200591461 813313517 77002200 227935548 592305116 256892308 472426719 562796946 689975309 906057315 425574477 551474658 613667952 784405989 905542823 633433300 907248438 852027770 936498791 584280607 798554048 510758613 257172087 860095250 757419813 732462207 453084346 140989198 933096113 545661010 108365444 642041354 439415392 178621438 805355804 491681550 417428327 590363015 290507841 356052664 517828268 112937925 709983394 580782010 601845065 621194978 133024357 615733081 293078285 534250720 459317153 497462768 683520250 27270673 331046115 901532523 141349320 997131165 382497197 419485133 959425633 657908223 655726834 360285610 524642915 446817160 671210908 645366957 518872737 251895003 781115143 371482132 674322338 916042095 632284035 941325103 456977953 599867409 27538645 943634916 809392011 668104031 831021750 250542382 577645700 124052045 555727187 951307673 918493538 340126372 449934283 803807176 727353008 398708606 440729780 343064816 13558701 869068748 703958167 615191386 82043595 970076880 547942511 545151716 250483248 400107171 493708846 406952833 7770168 123035824 91924793 4303285 844343793 489356343 240923367 85907737 625473437 862279883 556568325 172899549 321252148 93395156 165956693 532542529 145246943 884143630 669008138 624331035 725226366 529800712 821329229 424702036 887468323 710208167 561981884 118186603 7355285 632410784 100518885 38498800 613829326 746150913 369922768 101013514 235486077 152965288 51501938 673852658 417382789 756927690 435049787 333875830 938189948 797033838 880280201 465929847 452357165 499773168 143682354 518425451 507783958 314656126 519356159 180182747 847485675 77523870 297289259 594636262 818270481 450930854 298261992 981836733 802458404 188803395 870948570 890439717 415632241 51606003 141431194 9227768 119978877 436546443 996563764 867827620 565618300 551641009 834418601 235368362 629794266 668050274 200369262 698381088 905704374 903178606 235112171 742381104 231398242 311859959 176162046 158494359 256341989 493245942 652761461 618142758 295930489 29083062 273267351 466229573 258345741 853676375 778554012 834761579 1484483 410612300 501588016 945073575 104365683 359507677 881083124 949722906 544543015 338844326 931752957 467651451 541126301 411062038 351220307 291287953 507673032 692384241 950164339 591781309 127730511 148614095 987386830 141411437 56839181 644084379 453322568 12312746 229827983 484681748 631788474 587419787 689278105 891988559 408089968 524050367 935016353 983439411 81571243 729910280 592144723 981026811 738755359 381033402 851023627 218026424 730044535 763768384 614283102 936302029 690049741 611730072 378205841 943598961 534979122 664416210 56557344 663525168 97911852 21155732 412770361 18509674 240063026 76023449 748006462 355784403 942212146 52621613 145799495 542243569 709589260 854776755 984428446 447795874 913339157 342551839 804173889 991513235 533191317 237853053 499915619 37753289 652167241 94380136 257018091 792128540 755913185 896260499 835206899 625829047 940055171 585825604 163823690 678396570 629220166 288409300 751228147 197010712 751804344 704475440 192251044 363526233 209885785 161004379 842928968 794418137 195703582 757571306 54418301 582344935 938582511 179955846 340086551 663505703 548288297 4710510 378340251 997282065 979035164 327284978 354470597 407643248 885790093 269937913 943405314 704101603 85575734 973531772 933954038 348184671 116751682 155748616 40749816 465587627 686567633 489093696 291685777 372243170 38019194 523114073 224970241 694707189 412817860 984933533 418505146 755630375 657271979 287608809 700132323 576663951 345367074 887924014 498815958 788923801 449491083 679624691 496825762 693029765 62651968 368789201 429984393 728496615 412093454 520431606 652210051 254450725 146156469 347492259 229467578 426793212 750051945 172440238 618471180 416932092 346288468 913273089 632130701 1622791 118992914 266815513 310198530 843581142 388173107 468363143 917762918 371465588 485662396 416948083 219803497 571959745 195477158 707697940 938625004 800543472 333414238 137536825 546227078 511338249 210963011 705377987 709119746 462644072 862933036 744242472 401264095 553276 75761119 770350322 313791182 878776329 611840155 410250814 700637752 16840230 187278479 896463678 581334710 901740864 355516256 718145719 124458391 777879765 991298215 60810372 668563293 63797434 930315377 606538769 875323456 499147670 828561341 19538656 679043753 280200036 930994946 891074824 302905272 692081653 135652518 204861873 381401535 593114476 511965064 956142489 578888901 597954752 399871351 728286610 448481541 962245693 337572280 391981313 864670060 359876611 209643908 515283041 128101406 818322054 406677639 320245182 557321969 870094092 928810851 677961019 646967792 726539314 264936491 326431628 425636313 171904104 664452840 291680380 846033056 788126832 599399959 711491433 631193578 21612515 3249961 685790659 161730451 39154092 378145026 417319824 712615464 670959242 978165883 258928619 369137518 246669202 464163041 233889665 166709977 17444523 88141427 908599570 447652373 901514001 428147431 970833910 83982209 30220755 751516133 430765205 91292847 250492501 538499467 253071086 745213158 220283599 746234087 692615441 990994336 155805899 950285440 332213669 488611084 433796523 542097102 406070883 548709005 542471456 467353789 643262104 30861113 427252148 637311023 384759207 21140058 509074242 70795895 909008773 389165041 216487800 717841630 406360379 525111086 727888988 433697057 992240488 832237305 616969412 282395633 71039165 278443629 323312860 236309362 586218623 312592215 242127524 164959676 66533640 21724347 23971440 982186333 959826501 140981584 576961382 45786582 330921529 905075711 718692867 295104537 717351289 103765095 400875671 438763282 519114159 446042460 179461060 969789979 284946456 264934244 329453315 436462981 963726341 931579705 774525215 462194454 29515102 464046153 623486647 263987846 234760474 742219065 415369920 366218753 98367944 254357086 320280833 73803432 712924169 48220226 980981910 115523855 5013267 801006117 247742574 349345729 955307312 543804025 523720653 768244663 711669821 175902053 567089866 496951525 815108651 138972996 805121234 406708398 669264258 113909539 634004771 890226282 641276889 977654598 402052946 292001767 211440223 675137955 156070854 322439653 212738645 937894501 613731898 23459481 16750482 409386090 193183295 931879979 745128702 485672390 399116215 761577784 343195927 48174654 661211484 972467536 287551087 622596046 792440631 144364921 515455019 848864036 875945257 143857322 841261190 528798754 717007717 467507281 942332748 905850464 853956852 724944590 595506271 603906471 593427504 812321781 863981110 271927415 387384137 701697424 882125401 282341506 362668227 200467419 79306726 835410223 665887734 630041606 354374671 8886296 111001997 274647735 591557274 33838476 743310855 699488389 658953824 984251149 19636793 204688510 345412558 293501907 673508811 777745058 157646183 944558920 297055158 832222821 822121535 231034250 927426252 534378289 574939265 829130733 794256432 487907554 10067435 827782518 219006937 761533000 599861837 540852576 832268052 974996904 34665998 620727707 514694911 996420924 28575399 716152648 257559311 394205614 187911973 806734142 48600459 645809313 424122539 647110793 151407118 185308456 662567150 848029925 510698505 261082189 317049015 167288647 370640702 60677004 465576549 989696085 533518918 981222741 121865832 784775401 524445965 765740429 116698567 341569682 2928464 108613133 377864859 568877074 136866086 319245090 500875410 146221025 231717236 434323467 137666413 468595880 51302007 926228351 284778370 922180551 516451391 262104100 24915002 344269265 856156462 134621977 670713492 458407691 911715964 331930733 102682528 382096368 777521334 582662565 829919493 951430575 957961787 535427642 898644861 69873835 742736830 585943576 520589651 797207290 504985287 628805665 629443308 334647015 203821106 525321896 927138107 950972785 969240238 765731319 986597962 471065801 404397886 405636809 959694776 641001176 643084732 348956368 461881654 515378103 757799249 86680880 717724425 137158708 627639551 657628930 346450571 22843476 849408023 721186770 830084266 689170379 742520003 416490530 44496488 202717830 711335037 835879397 535702873 408397090 886826646 477950724 394906152 136270194 465517744 634659293 658005266 266792188 713519428 630487999 831218793 705382780 778127389 221795183 269751570 35655009 424804571 255139237 424686856 570343499 316619122 404025744 910078423 519225747 862195368 897753422 757603617 389596867 451004058 247297653 934390045 771059225 947148087 105476749 161334035 559810313 877296324 418560404 99896801 900393656 22241878 185966712 218010745 953444994 537887835 43902880 443522656 910924404 597145874 630411108 329959985 930681810 803620622 207193744 210572312 341879699 398536631 584970469 72050264 339113184 41643976 321222552 278081989 80886681 441216978 60773842 319048267 786470095 167443640 696192814 161125221 189052747 6661681 97493053 700143270 656660998 417834826 575221509 279206452 454819503 651168481 571512702 446265159 604240424 401841707 424482324 1899183 706540297 388655918 371696168 242609484 220516892 720213832 900402831 813366931 511466719 761727398 755507217 231828752 568760325 735665614 517774315 966418654 445625333 199452694 922417742 779416113 936155978 4509738 507461853 345944524 352006481 730974090 73853747 510997899 393285774 548349449 612807003 851244251 902594871 840590927 500334678 87836989 446406583 212278360 664998553 257215175 680974637 239349747 134114956 632178338 297103850 514198341 231868172 951277965 680779767 578027843 335166441 540843096 352822156 810207291 464809577 611799146 736477082 817172556 988721603 107565116 21370435 797715432 38137765 129021404 497329500 103733849 349941935 62758763 900827378 718455866 961530614 201881503 502934978 611755514 569862786 900172866 851073983 971511389 560277968 181086897 841296015 226169594 425276496 541704797 769168399 59219133 289501416 340814670 322348235 556398183 626009199 277613211 313430662 561630985 373333043 774334195 941363896 228097165 96879220 363191063 515944203 200971309 298318054 763560541 629310942 169942266 290849587 851792687 685348034 801461846 933264759 317396362 896496383 129721466 977977026 276360064 681219088 295714545 33940377 276627382 568419362 48649499 961940598 383034342 270442650 195323051 213979203 978209118 515129996 829161002 425174755 591375232 822220612 128476530 175046570 942987328 871618241 62452275 611699679 892130473 401041461 757672561 151363905 666168152 612252295 417608963 222961279 944175359 920076496 890079766 654831039 140005604 951183585 938634153 611194136 553388383 913882556 132171791 706315543 6915168 300070423 76856432 137469246 191416294 573912797 709263687 128357504 588641929 919399852 721601765 296303559 634397681 996467543 168842221 799549039 944608092 327384677 706795478 455123144 124950556 833457552 917665132 557571735 178223127 127878728 927723344 331101589 63415877 361889070 314801779 633426415 716759350 891020953 455858847 832238788 449667977 79596308 395345134 225778859 797132918 529637342 622954065 827167786 68195397 798828904 545939978 253724224 524341973 217570267 524678706 33107676 776425494 582328719 945028660 173785443 587284111 634626965 269336912 983227182 559920601 1829423 125729561 7014921 712156449 690996050 474666999 907617462 314010538 817115947 689651110 557530984 686875977 592026263 705523637 863671880 847402215 654106025 958316552 686328820 913825539 911454760 468152151 275432955 300189229 323949070 479035821 371031906 85397388 649964554 295960809 621476130 929182041 982552575 402364224 244592295 64394594 959208835 530450361 718594642 386704264 334465121 737475248 694306296 313096769 517838615 812181075 458078562 520203543 654778713 731896104 271393483 665882918 734977164 230999173 158048101 229156258 550681675 196307223 36363732 755810895 793016550 275776860 604923057 363550727 892536798 7297576 51080968 705926456 26022507 958284580 607951066 621656675 285345270 581395274 668974492 46507166 589621407 885686123 421906103 815473171 58848184 554420905 825268742 204791935 282293831 153437949 426475610 373309876 449893256 979240370 14214649 71021591 786991465 99080168 111048987 434956066 675145997 860493074 75978348 463684067 510295370 581449592 502141325 457362300 734085418 809070774 380135315 199366049 475701358 616694331 697706886 823094557 767780358 338449355 13187300 119787085 654964890 863550974 482895387 811802531 863445252 660076734 276877586 114042916 216685780 744425421 67194273 425723883 883774155 22070077 719644692 318689956 130292064 719994870 350789036 335806993 261997886 362834483 708503838 637364361 419596228 701548549 805273874 286367604 191300996 491406799 518168741 571535312 478207684 88658632 578121191 289364655 10344448 380510588 40755806 814116279 52779622 40359499 545684866 912184736 211137112 905868265 695838014 663542970 205451758 111320028 185355382 658551140 646211953 351408898 995778427 181514902 799708641 210381320 838617752 431010392 189631344 424870387 27929737 71019592 159665157 444985499 524840703 193341977 122646970 358350635 327324445 832341006 604273503 351219875 908293118 520619907 524764916 402014806 402948397 112181093 422110259 163999340 642100010 461402292 382120195 916737121 645519340 490903816 713739782 774110084 927236442 578759434 513154828 844201849 80201681 754966262 980974494 114353848 272543905 289373471 293751156 779823883 375855248 522000491 856889599 865537044 227590229 410834643 26011104 845229509 475988766 668495333 640779631 423107814 220200715 240337218 116952885 634127762 681850800 168106784 113254770 27854778 137576087 184860360 844687768 466321312 987882428 26416921 836509901 460005982 157358095 393804548 57949293 136589917 942549493 559895054 251664518 824453086 621820360 661821649 305127003 62964085 139134546 760263546 716097250 138594952 951444822 901559885 11937094 38929364 120762375 237900317 997612901 607519721 764975503 897884884 694400594 660659625 524953994 323686897 634981588 181146829 512240264 905394949 273984486 154196064 672592526 981095989 252927797 460929857 264681365 420584123 792225701 362401958 396469770 966953829 950392269 591411860 891557709 12551956 190934134 512055912 749350450 57745727 754628383 334395217 344200067 72676973 927469180 882509011 797407355 591612094 938143475 301174085 394661196 736547939 185464093 233645652 237493146 295659042 346546763 169421694 161896703 387834323 884658943 820225176 339337605 755678437 347800942 796565065 236110895 631007450 642825221 47401612 606192496 415054790 289110497 90616114 712696241 368271060 848522069 107880030 862882768 10724545 351848040 85999367 74168220 719375967 183293268 549178233 109053018 653539604 733547272 598726612 534910275 622141272 684529575 523911307 403363843 672402234 382382343 814180583 571110204 236815068 984698163 11724162 860623617 579885299 357499114 333994700 984974171 792026952 308682269 746826634 227680456 777642297 370849397 577023825 834497207 628814392 252052938 619998991 427964941 980888139 827295917 531829635 57231778 25010315 496350943 846437312 695389381 452698021 262777816 57555374 229644212 606181980 164781889 936160393 248808997 925863940 752757114 933696352 331439040 833255689 185904149 563683735 815595171 50265446 183823449 374779238 844974557 867704110 166599616 973892695 673228275 104295175 478309497 464134604 389380957 334556842 593179110 2125686 889249034 774269797 945585951 289672159 236960984 702945945 775784814 657555170 177191453 772267579 13807313 964976685 972355617 535974231 232311932 980875718 380573857 457299593 403691860 332190851 433565774 984323714 684146292 38021264 854334284 29298313 311149996 233529325 669530035 872414455 360559101 416864494 874784786 181813690 710052382 810127545 306759143 387892947 511682810 9941963 134463016 791938264 639044656 879607412 787354557 83266930 138445970 318222166 610230275 254066144 212798630 262903274 443658058 13684083 285607720 867927802 121935704 952541712 144166278 387115816 397642213 155963057 962622051 944684390 96828701 470146020 870452244 722513276 612420641 975319114 747405094 669398150 439174022 441792793 812961494 286437747 769170388 145425563 631266711 667099015 148019208 556640429 112816016 449536217 501083666 389175617 652104475 288999638 454450520 555346140 405335880 983613116 717625137 515075864 595104343 106930208 364503403 423169827 502029378 657052009 866767558 277098559 229718321 521938514 422127479 151085632 272859139 430963308 776865702 287454225 958123212 665451929 147486704 193037871 430278481 742493842 791512037 13883692 557557646 678812003 654696075 397314094 618284080 548515818 735635673 380760429 46890780 863508571 537005629 652257464 177479654 990664126 779632919 644625905 461980251 558078576 809111868 526860172 781176055 55721630 921785459 459420948 205296495 550320333 979895035 947008935 5617449 62195285 47568899 83363957 519036863 584933857 419444785 349098820 473450368 716209648 112263708 230011631 523386351 648089431 405209298 601564642 792925250 202333629 472367699 121957024 255824868 495025182 332942867 672372798 467654899 441175881 379527036 633539813 246260419 604744802 17162858 838872659 490206297 443657056 315684269 745386074 310034672 82143120 278199690 475908960 898016888 186636304 545643067 255898334 17646098 124290645 934244970 654266850 45581973 826827430 809769402 608874892 255115020 562166942 801646910 762826644 535766838 939510702 120569856 343343299 565806597 564004248 299707260 25523573 504206367 614038773 393947170 438215710 285102176 169693104 541626839 19541953 57165910 660870025 459151476 447096442 328679108 424849556 540105286 204150774 813516831 278872503 154745484 978766326 502690580 522786095 439636477 763316944 995362048 56186123 17831743 181565422 932919926 162558384 290764145 335562316 473838525 386419795 143699106 815818494 163989840 969127810 395211863 43273640 14561884 359097244 794551817 487552772 233127237 818935636 425615269 976983904 947864609 999413810 205823498 991022365 825122107 589710098 192115086 104599857 913839506 519441058 62679162 269405094 419835735 246823912 332728713 98506265 944997491 887263419 361555053 341326395 396066046 311074373 948614730 143912532 108410313 540102535 248956473 166249403 703020245 180899285 23969223 861365599 213900250 78214998 506555251 564683329 367826625 787179909 450091827 121133559 74369578 416074163 676453615 533869867 435272679 184424322 626534149 631099418 744110463 556078443 656830660 56473366 943838892 243088697 28333809 290734341 861717981 264507532 223736901 762248159 677933237 937488728 803512300 765804339 888323210 120212067 92613639 714940067 421519079 945448394 565400619 387577955 271365642 335375228 141615072 512676798 758552935 414144957 214661924 761011601 942557219 767885733 244616421 570064078 857989017 366669727 352702858 86800635 399022041 839828970 965971819 324293808 1950244 871349019 897171796 208828445 349010289 818406041 221736199 157897601 421620459 94280992 30969270 885082036 74147953 126473023 59998861 906981534 362220821 755147738 258500390 558407613 468264350 911826600 150423570 603238564 750861062 855205558 899426647 400291702 875788540 393304290 292298477 399646575 66547810 139035233 311278912 6738267 943166416 805153593 95249841 731569693 434552847 191206599 835551509 989476650 782258848 921143355 641747508 354646795 626651187 420331288 621833803 169676767 803777840 793977269 60497803 616696278 11139121 250761150 100159896 264580535 320269958 301886643 356446730 965378395 372757167 833771111 95226607 113495087 382145254 714959234 478941511 725257142 52593555 50725888 518353799 362176517 319287765 785715632 353980951 314090054 908370944 686790326 794487764 953042229 18466841 401408010 131462798 832303526 817564764 937278967 743750539 858759933 283443127 135352988 482163202 701950900 727831116 778403950 31153057 533531609 633700851 311151284 123590408 111016333 724401845 822784010 534311500 136936838 502735698 985508575 771043189 377778573 942068156 514173431 389339904 113726721 596757402 730126057 308557917 550287187 158680262 601729185 489886834 353489544 895999951 425568224 399556630 798869434 459099256 239412663 767448215 500909975 348440631 918069264 366256693 763077344 215706807 851182629 544937124 73471212 358449750 485487367 972507022 295276066 802409640 699635736 631799055 178830978 635142386 863683985 923161143 763789341 811282608 867597565 633141644 201553304 367035919 880459708 890621317 803132590 433778291 783127425 634079504 638278827 45538035 477830869 480904716 179212017 929289944 522335121 706155984 507099511 410069538 314734440 547063715 472632133 898997251 541385819 965888833 32020729 920193377 610709314 193908572 468529477 716005208 501738570 976976921 284698990 662607798 263241586 644136847 490276303 359305598 785767693 120773708 321038420 339734374 813194307 349600719 249416447 436469336 108615567 635567375 107363431 768403444 222874946 482552562 954758708 12613389 713734143 24588503 369710500 431082024 59855677 299672845 976366602 514074112 742351816 571561817 767016777 558205444 535593025 445937012 523297373 618142423 159500697 933083019 574469074 252693712 643655066 268390589 798916171 700678776 968433502 680698273 128666877 111731982 68648405 424147645 85106737 232318726 65320004 886722320 934314437 437173893 920858817 771609737 539510700 689680871 170197688 178330765 217677929 742437946 268071273 569517173 432770456 501830080 437351015 494667789 234813542 533395569 483431962 52663831 155272212 495360118 487492670 235458758 123702391 418458287 456752226 388418115 472979579 699743022 500185194 234701100 391039643 130710970 320228110 889723664 494759787 66068557 547561561 673051380 175371279 691142551 171648042 50656209 961222337 726724984 399223990 548108051 556576078 81575306 642500868 669187356 376837017 91834772 814573423 518496191 683991063 94141976 547022888 188446405 642665554 166862534 594625458 783749227 72124775 299277063 332715876 755846114 347484807 266972787 909121515 350095310 769979257 398663003 4666309 433862344 823596823 367949632 72462278 688818652 941832140 911391065 365321111 370089227 320923165 926974226 778690610 54456778 257862941 283540103 455058024 625737602 481613047 580890893 963644763 629172238 22071143 878646186 920726788 231488 720934465 29825944 155653294 95928924 912212969 963016390 384280953 925871770 715991514 940074071 416615128 489517992 343557408 530562336 1194259 946459431 790299869 626709038 913818054 193523753 875933895 837353790 682077280 946970042 869981096 686358340 853705893 734329684 966939613 205525733 322069293 373673832 194960856 444533500 745376738 547540956 815253151 967977240 166745734 443086984 616349258 701349373 334539051 378818488 270322824 678978591 757025977 166957741 782737179 8449578 711683947 526401564 860013143 404617084 595378514 700267181 477121447 99902121 503159505 894950781 66120712 764449783 239143199 750576284 825676941 608959967 742027976 587126672 494415577 157116306 815649836 194722769 18253224 608746866 293902335 472234315 914238278 193218452 99387335 979581151 557668374 479396421 336464993 628912353 978227468 883936898 428551293 356754331 522177587 452572286 570188573 725157321 700256041 266678304 220665882 104907036 704277918 921932162 351324831 559261367 93859801 471209331 357076396 830279605 891461939 542357494 974915732 944303009 735038105 589390017 227372415 92483324 909835022 169122239 511818217 687594426 258482727 701776271 126809377 737183173 785699981 34974722 128361163 627804537 298323582 481443488 802039135 822411814 436028493 467858724 580680871 861100690 136476382 2180092 566463557 217621876 71472683 186003146 708955179 819810298 299082689 877941989 802765600 395394116 16297283 102823897 366623554 584455142 43552998 582762466 21491839 63135850 474799092 959158901 480539418 526206924 306047305 829468344 516792877 579547388 9114585 686660101 142940705 755513951 809925416 630987883 250362679 284939855 949190096 236572973 312186882 432390038 293091327 102202177 919442923 214726647 300632566 443864529 136121260 926609574 489992843 153682622 671495637 244450506 780393384 83665176 422286155 397300226 776761034 220238247 291249092 518001373 10295682 91012965 117600332 289390432 142095863 821283330 867465666 919951237 114786659 688674911 321726299 363985846 797310098 347233555 58597663 625036630 928626278 347957481 368011879 141577528 518672469 388079456 947223142 629432870 166603497 40732458 972308124 740032347 991511103 665101485 437270884 693978377 206320777 642819205 594839144 163124949 942468748 12036608 504851751 866090070 779517474 84642208 155862902 473803673 830433466 883370397 846640124 74411936 853845971 588660321 809488052 487340254 247412612 186146058 297143151 563148220 478151927 816670187 551509583 173915416 183713002 548707083 655555662 929132737 260643373 420742308 15546805 288566780 561485862 656452517 620138149 982065666 977882960 159542321 894964625 587995263 557382071 920777246 627471298 500999701 88273789 2999671 941440466 137093335 687222617 923875578 615717937 341603022 180049171 722713755 371153828 820938360 414438409 328583679 919311296 468343620 116273582 205165314 402277235 903764503 727358981 454311474 477500284 892792266 474824234 30312273 341667566 919094185 609166025 853020118 659067825 973458933 926243493 307378541 717252865 559585891 100507411 792215667 836563949 895679132 5219964 771426427 138586585 384980667 242844895 160290507 172037884 956290002 394931276 262331615 611909859 5272677 806501226 841620197 204371692 123305708 28756978 402082368 786717388 295925846 344889649 975474182 875281674 562228353 801994890 62339458 260926849 652694211 865743346 22631090 195381218 810705508 718733938 273640649 425815600 863956257 189891241 277928111 256393026 451064235 751278407 188118908 333394756 208599590 258890643 832469248 2405942 831652523 186681318 75492415 993843820 240761798 437962286 560457197 939594508 904663800 737781868 768376054 776089235 1131318 782345526 400102137 916504912 799778152 215280182 717428935 583722984 803071211 770011817 53455593 887358928 643880976 757452768 62462488 69547478 990100634 763821506 463494595 719683225 10590276 14520648 719736460 806202124 11829049 418007296 214392523 919551735 552648858 871195532 760787209 864796534 188383484 9771552 169619079 241738616 998717159 653680391 401196469 911193665 598408536 925324829 238002363 950502888 963687999 45798742 464579571 969988058 387138818 946134327 475447916 431067477 896889593 971178328 48760425 350899694 934761455 290211560 638393312 316416012 245777575 404334888 776425212 690839402 13749589 721583087 458183324 717384601 23296033 124716068 318677201 720577147 739641768 740632136 715673956 405235401 367227770 285285610 964536397 203419279 455998621 615558960 828454461 725989803 307714568 393617236 574724885 35920977 59144489 304418085 885390445 515430281 850405984 544208002 202263054 703474607 536423810 15929827 981850744 622598387 231060055 714845392 90006365 954538967 577912091 353970279 644828708 828329908 903421697 73572826 460553319 849311541 636409003 969287407 303749237 628962009 809184435 116619390 914363857 108367221 55800358 923669751 135779761 813964976 878094084 843273433 947654015 835993478 880963265 973651260 773244252 11159750 922273479 249345608 108545176 513351060 479670002 10879420 452623931 892052455 868307986 681725800 505765760 857103116 788847725 265483187 218386004 256755233 989489210 592101909 856996827 212696219 558783526 107921310 229935340 843161281 987478483 840974190 573900944 94773806 116564565 203884347 357408391 185016403 176609459 626896334 726250434 921451250 503555180 545307014 124529386 512679076 599003119 298488019 169186520 256065876 124898081 86725308 725980955 203205826 255043547 369677658 416590453 343964418 561603178 173510234 108219230 854894330 995626510 951418239 149327488 402009831 782627195 117298462 130127673 176865496 235472730 376827553 44660764 408587058 770258633 774033157 106369904 543758634 839253975 634910555 993071535 104848718 409359369 957165386 233441801 308479485 510655192 890258827 388782815 844751850 679384625 955745388 653525064 214212765 467893491 251642958 935643279 831050993 893672308 221924903 993554610 167345047 602024445 752962561 41520357 702904722 153578313 411740537 382337293 739623098 993172746 257496129 984043334 492854329 871021668 586389662 250975838 217721104 799910512 32007658 473741399 800102035 110925499 883511059 796537576 641112809 184531396 959849243 22475773 742592909 489006977 236104598 5394483 422869968 519021019 852180783 266249053 486007124 990437677 77081635 841325314 82886802 830945481 212410564 960940252 197827925 394232179 308213239 752466778 994550589 150149092 743652790 787998239 883197502 425401672 913165711 513157249 982882078 291860928 201958692 503634954 385779706 502962913 19441321 637606651 914399937 699443764 543454569 211825348 131815863 637261236 335784514 651415181 719336948 307513427 850651684 19270065 253067747 924088437 507423893 517507645 535994819 898300018 776334384 447081334 765362729 303884056 332279585 90047056 945773180 327182376 226512811 237287415 740046712 854787285 610434210 631684682 28091820 84241992 55223281 444422747 805790716 759383582 502749974 726245616 434556959 707854056 365782433 730822405 90394402 393782442 69120441 780719688 30215139 295116124 460638358 502478236 523054486 336588652 37321480 82274198 902611524 115650618 185405935 615168259 235220807 753047707 992624832 618602336 595639248 977002839 149689351 421509473 624401249 43193259 665575391 162763115 863315027 706402760 783905915 712676377 476756562 820650834 571360417 768717498 826693851 216974817 828924970 209718225 755910085 479970179 129794692 187486100 289718709 595734840 548235568 165480558 313458856 697538421 938184772 621886846 479282797 102686882 306152169 200875286 294572840 965516188 805720030 234261820 292787153 586761779 147685363 325750316 112454835 171760557 263561871 709785299 759281645 644470082 107939883 724595542 260085236 32335006 47193301 239703433 528112143 99932769 509121198 546278265 774546650 256128162 37397612 713716195 6189764 22202216 179727321 363285178 297259153 885079856 832573010 223136165 785467352 671404394 799780168 625255038 852170629 760951548 979246786 155708884 90811993 974692029 630528474 321543530 306589541 617604603 139556156 948816054 532513939 241101558 650832810 976915299 823217949 692752226 52347002 533055439 840900116 330339049 748529174 467209101 357563098 531992487 104139899 507311589 487972264 940905132 73334715 428638799 274570249 279228542 294931067 211103996 206431069 134055316 693123189 694855501 523113303 300127452 485873911 443640409 426455167 613781558 751130979 322425708 19451057 220603126 413703597 460892290 717686173 521079398 274340064 401123024 88082757 609307713 321911705 474956604 948883585 439543098 94552714 115678432 667112318 556680051 967412473 366236043 333153851 965893894 3165502 487089215 378458378 323183232 494743880 911380404 95586581 748310880 461958425 765713108 665056983 982948509 171879237 909683517 733608095 140342557 84029303 233241026 29384977 438272063 626423021 164696810 232620452 243726418 987805431 321622896 986135332 783283483 483144060 180715713 48186929 464412756 770689396 625551745 164400063 934852647 51895663 240719878 793709973 894108599 271548428 681316571 98651342 611833239 704428163 47854911 390903898 281899600 169864988 309519268 547648382 139280096 345390518 230034992 282470992 932985654 924352577 303118143 856728124 850214583 515104068 500157919 508585090 575360700 366357592 140533330 479498933 90370322 904825514 522084496 181469501 728530040 917268861 382027970 964131798 800338212 913347750 74184648 434790415 703967551 70968078 837040564 616320972 476573028 287215924 576552525 848570309 753330469 436523432 245386125 971502597 136486278 721947537 132345891 764641899 615876480 163266856 695837170 801516332 113188479 735894075 829933200 891712847 979862757 583952043 67973064 294148399 974874245 720978158 367431704 286336765 310060840 458561165 778048308 272065340 395032331 516856999 123865729 592116035 632988511 121762413 57797019 82932671 959331016 660130724 412197071 104025390 725967327 809019686 963809186 161639524 88186800 321902433 917952328 937577738 570348093 921736406 634100013 533321754 177471225 982879899 960170352 255066724 177600845 523891418 743361379 137600269 264399638 459804496 919170061 622862859 766371621 472316879 32367784 190625450 961318334 328765628 697439011 985848330 52133657 798788497 94996640 160101278 532392933 951865180 126989303 669223854 475398592 242890046 678006322 918186966 598873024 289244910 774896911 661801861 686560493 181146420 795410817 122905215 551637700 534235246 944385583 87831388 568943542 658229518 753813492 678265350 990384550 421013529 570824285 169670719 444106863 866385321 877157422 902233625 996681308 887578989 124548573 991506043 386645166 66322212 873261078 169293219 305058330 867229990 506423349 685500319 588744008 226687195 282908879 531971282 224550229 757558081 393620009 924823158 996963922 222346090 687249599 676854548 492975554 248259835 663912383 608899853 414303008 217169583 791840651 298510613 318896727 424669906 358358075 254428850 680227400 543984071 521977369 215823041 186426184 957239427 783556131 137793010 557041054 847475471 78051980 64998215 588949001 435806473 581236539 530076313 847031353 229071395 328983626 635823379 62957906 227729059 139188872 260724661 473315948 70367202 646726136 135282130 159275797 449565389 640096848 742573458 290454989 814966887 652749179 273656433 717455496 20769861 331394071 453540286 424031536 833646352 836318200 359311645 613326881 729514247 469095075 877544198 561207979 264001146 109653972 312356675 59819924 671979600 604844536 63868790 425008531 356270722 428234931 150645649 778115030 275483294 839701852 639980123 232768637 531937861 284281724 409702898 992368924 781055405 467757395 450305092 391083325 328563231 719050835 822235028 550004444 692302458 854524323 555946235 985448681 931872174 58753693 596801253 333552074 424755522 381761360 844041104 152741334 187762127 389123326 448968080 623025627 48154499 894224031 214063694 98081176 405651615 697172317 699799684 824948804 911774201 806599446 409906882 862916869 740397947 723164894 746878445 420090234 927752354 237719418 158912955 800811570 306929920 923789797 906032440 931719987 771604666 702714830 400761667 967803508 478566154 49330201 207362321 558843490 823439550 970946394 791040170 14423647 456000695 942799965 713209703 398236478 41542251 132868769 896640634 531060681 963122276 718279895 14849382 705423675 463186111 639431528 406389891 151726023 971105198 764898029 595783548 424823567 120919542 189974197 69024208 787012269 219840882 985591106 890757972 397025453 902254990 742587596 844326063 613110289 421846988 975907260 280036316 219743052 183803971 821497650 994599084 312969928 556829211 231680896 526590785 1973088 59739154 73363117 869532820 62140134 863902970 857981684 848430833 319021726 869366328 138857794 435839606 80735169 2914887 1610683 602539415 15599100 303192371 424777781 915738013 429069806 376948511 72492731 956139298 885627821 730781887 983130635 366632086 651502402 209464798 440262169 110187198 932317992 727908826 959817354 137300783 673305297 246151203 120001338 839176407 799975713 957283520 795882166 515933813 900127473 426038985 291590851 985067292 476987277 472245998 301040341 988315316 616344886 599564270 472493208 950836857 737929121 282888481 351924331 229840250 943049335 722217199 816289248 565738267 91001811 642624343 861428286 992086931 15762119 658962537 822587647 659984495 411921367 184846540 512156242 628578573 710675324 311611961 821904794 965318946 474557602 115789310 920554989 927545141 465915178 673761659 64023701 611403553 16213609 3920552 261950867 540176535 992779687 141017230 728859159 794704282 728943265 767868361 347545865 90930945 271225864 577452813 506343300 830439672 756323328 747884446 220981589 249702271 323916962 413924822 744403328 974478057 299197562 485174179 783426747 709579871 948859145 103836934 564161010 975970907 260510020 503810709 819420865 999572269 642222099 952541689 673571837 853936506 530351315 697319025 820963372 310474935 704859605 281718094 674873864 441335218 784982748 492286069 792823039 177662730 621912995 625842400 887161782 245852082 296408149 994574109 523385986 946815346 884982803 820550093 118830573 817214822 759432050 375197222 885112119 213425277 200408314 949366386 776080594 275436027 802718120 913207950 586272485 178397687 258278252 718154860 399946699 346463198 769557932 721570449 956113041 969267438 93077952 556386455 943615355 486703804 628908916 416711596 172447871 161297327 591422857 15197458 489615304 956641154 186320947 535948957 240567348 823368134 154920860 167153464 820187095 875124829 662293088 103305056 811270774 869176320 389937168 621102503 73380365 570425018 579609007 935786290 402444106 837692523 846479928 568092220 243210255 882707783 361323797 388615825 703969779 46077524 95577257 31811092 617491138 182630895 88038600 575321913 175520505 299880008 114024250 674489227 176520267 621869025 409970235 3685927 70772254 950069779 114352894 404908608 829321743 245237128 812405797 213953945 739005546 52351682 733706827 298239246 14966962 340134547 215254650 203309835 287653919 412907683 713799349 905645075 919596059 439083502 566299248 996449082 155157188 285669187 318261522 179840172 951754606 3045830 846923386 930849828 588806430 956270958 657484663 335279477 375969551 793970568 654881871 267514117 352148273 151364402 716879161 568172109 528413861 749123041 62526179 876883034 761808450 113439195 769909996 410255951 798738708 9809598 511278187 367564769 316543703 737479159 901653606 66650073 325848192 597093196 80140892 990250646 601053365 27817299 774972092 475572360 715831376 416621048 544631147 98155190 849721055 757515515 731700291 967796025 743115047 1693808 289776014 58289087 539155869 852237117 373342863 491435017 10076395 650822047 772843001 724781677 736366193 814216613 683200118 655620692 472571074 484265907 417451297 157679293 102624291 379301633 798887436 624049849 439345935 108942362 350930107 877417965 366333109 630436190 800284839 955310867 298354552 184225152 249523133 811995257 894087022 597879304 2976476 813226112 144397538 185413073 999159899 208695838 1787603 139880844 703464064 63839581 860591986 949346364 999214089 292862425 400909992 166359992 65046183 865169734 550581390 368855853 456343935 642180584 939412978 216215961 718239656 912643354 62629081 186907217 611201199 128259016 237864695 21169020 769772821 363308276 51151929 156470933 198408399 956175924 338987835 570568429 26616774 972642354 4681683 838173734 272735829 860487467 2560388 106631865 89920462 90748785 878968331 374683761 922685685 496344041 903343063 166888686 438358659 329534094 359553672 514772515 199078820 580135148 630935927 186138329 516116089 933623461 102081070 611970346 126652055 372091888 973406443 758395142 945904007 877223957 406442274 24133297 109341508 210148850 907516920 574937923 188362944 262310521 705546953 806037799 622330463 765203248 633407394 233832604 677869689 968042671 810815431 873049143 348430813 629782309 648689199 658029407 913645129 574509780 702233091 985979088 599774963 231718545 763864355 622027033 886613251 383564357 516124832 74715934 472835606 556189038 579457859 264910486 284756669 502601630 826393093 583367309 209242364 571933947 678097557 846002148 391001291 462725310 333389269 87264204 122778776 19122612 503283293 734524495 676184004 46709440 405356279 419856071 887377697 472489815 996972833 727720549 96033146 673172994 462744462 509518507 192785420 422450912 280500901 238982130 46245637 61466145 446719233 323084261 675417100 698502796 612133359 290763780 347609784 81099770 466984947 399654947 535382295 236435416 574654275 738734312 565070889 290565033 539393098 419086928 847857251 546180482 326766631 823118378 826325037 951263884 115932971 85357722 857153124 623625094 637608287 934691480 494433497 268162881 600139003 827333231 182709967 575232290 636073712 961009214 890169217 301228451 160648543 883690618 511295130 58266321 717351456 950322794 429750971 577034960 147142461 433298090 68005880 439350355 549530995 758516137 95278683 794895652 206537400 624623146 600642144 153206434 325596335 775986631 282332023 503264830 413050677 29015913 977510534 818123773 13246681 283601 766695524 454072569 336430939 990261779 389647967 424580064 251317812 703563286 158878391 607494515 726232846 258795285 964952353 258115848 7727176 581973024 802906436 696662793 472825715 960234652 918382399 965390195 109883351 412739775 641697313 448956504 73166063 850956309 728152176 12327005 333722856 850891262 218855075 726203709 110155559 638615085 819427240 991213636 544111296 863208746 676607327 174851796 894399231 872874705 527745820 627027171 315111395 493717201 413252137 188664699 581634206 279502127 477490242 929305914 874174486 812912320 310784023 32313552 655208807 712240050 530584013 340460419 961789535 178928131 949568893 766006701 844986369 129812488 537143220 840223037 995660035 668250856 737925618 697515058 886322255 667036447 275579179 2973476 780242310 472445180 21277257 350045627 589122424 288735011 732189863 139089717 976871597 772935947 514820247 545438948 83418079 971288960 90899422 910826158 190851198 906880802 460899379 176290700 433066795 20139237 268634051 902175243 977209405 936923792 699887536 27239118 611782207 331003710 265720461 626337033 467237488 689500639 267878628 766157576 987562817 277197752 724829104 464077990 331478747 538053855 185716451 723422678 686380438 62805184 344156129 914793758 689397379 983777947 516072963 907484183 932997092 314467331 680577814 391109615 305089454 300946784 952071129 311198694 243495438 660807790 199972994 978616276 394222561 120110780 708654394 961672354 719878970 767099950 390970524 694073548 390604256 153301884 641547834 764442854 421362125 835404464 497705752 716400148 751419312 923370924 123653679 78352016 601695084 582797474 857168107 87630887 318860951 716039322 548612014 455159484 845620988 273482223 152702539 522965700 199085337 532436690 448130187 429653449 403291810 776115654 375470252 113640168 111887100 810589730 385653724 917825874 743690178 323683986 896160450 33834190 197632324 268773783 754306550 269155381 418281731 769783298 453202564 212555765 566584375 729302397 892957806 307632271 575632457 699570946 982808871 457405210 216801625 228970849 263265816 819408829 342351545 529131967 612954398 362945592 598210927 57470482 932850442 694560860 409783 981301670 193996320 894356622 200764031 770286490 23978649 99234889 583865834 907233124 969181985 466871961 402104270 481758537 543745881 955225248 83247413 642567910 127142998 116090900 261793760 345617834 243706656 100242879 592296639 5191513 18255668 257315326 767156858 954695818 576898307 264946499 334929387 202378538 779709553 830847635 82222754 56130296 921206614 557828105 701641568 661805574 919461888 644443473 685381276 25441086 566932911 207790638 492647169 291964635 417406232 182297844 724838382 167963372 499199715 874951438 969073140 903538132 646280237 812881785 557051228 816174285 667450119 983654727 490124447 70084704 334384372 86504990 481173740 279082222 175748463 207738550 521932453 23410475 728031331 840407391 535544802 764619421 430544561 75152504 111436524 131954209 72131246 817937145 54432451 410773095 639557794 153090282 705640857 346327665 900076362 85720042 850715477 894702616 862898774 263720361 645198865 277563015 35309804 711356526 217484957 502787262 394893859 756893585 710717177 128289808 826755465 197052930 700106462 744268453 965434270 160368833 487291446 900765689 220120150 293516643 269791648 528236379 448936859 349920916 878083309 859736687 878101961 357784207 392571814 153556397 866211889 5201320 640904579 327250655 985273750 337310915 860324597 94095783 693924530 520829401 361464733 121262582 980801714 210127994 502944979 850553494 722818998 651966022 16883744 158627746 562194259 657884531 51732932 264331529 164223760 369709386 606659377 771161870 597356268 601241770 386680717 826579146 453608406 394740356 292745780 530749609 280612404 169228893 20754228 162715369 920409181 924339919 187901392 980312094 46725919 224052744 65282814 759143345 737980473 77558345 538236393 561652316 54032098 131081320 86347887 743417519 484063809 833361998 121555875 60167567 8022514 449276794 423503436 589294257 405325447 579484541 297130341 129201443 635436549 485475964 525323931 49951684 685072483 759991729 735740626 932614087 638054926 265783274 636623008 141720372 743195752 336752649 288842449 115248999 493491268 900612994 149860065 544256399 88876140 73739488 764488069 171775792 814065692 269940800 883894562 714953890 984143236 811322324 547586644 872548239 54678601 143613025 799662697 137755513 877157380 243556289 735737316 964574770 313020097 597883746 736779002 373553249 596688258 192939206 738760728 137978372 633093818 759562241 612585563 792111337 703220947 92426302 599197718 596547379 203452072 48084026 795068240 89882587 125855243 600777415 452486723 944975149 523708992 150858059 651590110 762592071 809773184 933255742 769784900 582534301 890945656 862420400 261753163 844561016 625719495 687642048 503545598 585762674 72859523 832065318 243886108 376486907 916807349 339024298 108429462 528103639 965220568 303437994 425004053 644911518 683696990 791336856 15041649 999425851 726572331 570185338 58746939 219420270 874456856 328297 134957364 298703946 129881713 251081746 300054228 822654135 745509752 912214072 556662980 778630385 451738080 731448880 692028772 49252359 766886226 734199395 228670022 730643293 192588779 381993167 303219377 950112554 527818940 23375239 827437599 337342203 174288969 425537326 697409727 480629806 567523083 881926528 614160371 941133944 327415790 886800330 30086867 749735520 91271891 185965933 558510761 77133761 641434895 710835295 22791539 516739660 547826666 989201833 272182885 529089028 811596066 875144170 765467236 502514624 95226725 258331090 730221707 594872748 364788954 208402600 706020522 685401032 549553049 108478661 949689794 308975719 98340910 269258263 359612554 859782322 463731738 644979359 113136621 483451171 722710098 472085235 739549578 492677642 810486718 917854909 523062323 562125323 218819515 720654137 549380206 84616350 264195738 378198459 950156023 865372814 109777439 436227111 177850172 612495483 75784706 830944631 774170080 624661336 580464753 837884473 919542584 984947437 920491660 427767566 621802961 806816854 218987240 195279661 947966696 531474050 131119629 656040157 157761776 603907253 478898424 966475262 628110352 382333702 868947354 343939713 606847650 181642978 55913302 466628843 889264054 445888391 732014471 372792023 555049356 606762634 927854584 736428401 777826846 368573521 920558442 115851771 541211028 595741850 447453713 392851531 339930317 404736755 219817495 30038347 531117533 704569151 894466584 287803768 717988489 674631223 604808613 105007460 439030989 799603686 475966913 229653045 408546134 582309420 743864167 447221795 354087433 637747517 946293762 535357181 743277178 195909151 383011826 259578021 25564278 648119087 702961422 34583951 343179897 145170077 725568797 244825927 829023288 679308523 741778012 749394152 156465945 519253362 336793083 443208101 881550518 118331612 979524767 510798147 963363678 976265643 872969954 869431453 542273684 718728369 801659855 101870623 64393102 728316310 394353510 312224844 370686903 718386006 329222942 241454649 586103597 468285120 483901022 887539727 251406147 902094072 116024578 38190988 947875073 904254453 865561564 72637059 62509471 84857604 490041649 240066903 655032590 437481795 146858808 459291524 740690543 699595815 915084447 178580503 13089433 393176054 17397509 456812593 120379543 162309710 772551041 340725127 117275688 241424540 887771930 121354981 306669118 35489958 437384524 231668390 538942335 128662274 305911945 212675902 883265223 279896476 820865206 179032497 635125156 741827124 569243050 217901081 278121689 330170589 775885234 747056675 504575195 322136192 725359120 739662226 276441687 270235479 492767607 109049531 809382058 899447666 684476561 353312520 154954343 830389045 786239609 733988213 508710357 837403608 782830913 877453590 747724143 196115430 385940590 400302991 351367778 893491646 190053239 505649562 103295762 355657238 38302281 720985477 734420885 933041779 364388294 988201905 194413110 205332913 467678785 59266324 524530676 919780481 126886403 388413880 661845248 273434086 124800458 759916346 893315394 834184119 773832517 250279756 486568661 265117985 281416601 489206835 932737671 830985506 676533727 208228169 47562330 296042255 13236643 66581884 954205702 672152847 662086502 228948941 372986740 132874397 802991390 682000851 212665668 223037705 955363505 928123445 731085640 233995256 340369021 106174772 997032711 329421792 361805779 782692638 230270011 130574477 477212023 448385756 390171475 927930271 752670754 925235813 821488626 663558409 869540608 374624584 919058798 765399956 165939251 629417255 251840338 758959962 242813262 667066934 587865564 231982155 663478746 838055360 559858303 110528683 314208212 685065890 890898019 288834450 76290605 473376206 180559584 528475499 782017353 150145738 378588679 815662709 114963329 561318959 693626137 996379973 951912353 885351978 703089421 576762690 822629226 362316029 398445326 672803624 649408529 727472511 310223099 709325702 391054014 362052504 975404006 547462976 108522254 985794247 904684694 212561933 365977490 362210460 477416453 688029945 236437582 964777277 905575393 274509541 262334778 94168037 275605775 325865218 736926917 852008289 876061732 33812826 820065357 322398865 272759786 282585927 597163688 263138029 783266786 89061370 38631070 96412413 994924220 792615669 195613548 173924576 619943648 872111761 736457026 379541190 879541480 805752953 397062086 548543862 919563812 829207597 576709776 261173449 301826836 704670081 25288620 209901101 654462450 816767771 836464667 660431139 928656678 896798968 794484305 251179456 970964431 166027495 1113784 421493040 603897921 622568716 325794860 696421423 397244545 159390303 71470206 705550222 307757771 269507371 659698417 102607028 713004557 726656911 163470016 962545690 599559273 465501696 818027926 18894286 169172919 183555013 528668180 164401649 427297280 204844410 932058190 425133369 453960708 147335566 582342222 827258224 118926773 645857988 93690000 656492530 769624250 530187446 525398661 173308467 630038765 25644109 18897680 765125175 410511069 136338506 746136844 236913432 358532173 363267521 164965827 454546308 654194355 447807641 976155000 214099517 210453434 829315085 593764319 38710423 333059008 785138477 743797920 739885821 462595673 653477214 490090455 454779756 634190538 462724310 115381399 954745845 579710095 221527841 415289186 650526528 202706901 997906335 962081458 310730500 380940288 793158659 124376436 99353744 121372711 91364565 547791240 177388870 533462931 75334129 561077826 816330522 669298244 425045766 568885996 842175255 815260012 407448088 560759618 282313178 715479537 164472831 154031604 517487637 310900463 527488230 236289831 701381389 678601780 475902156 2910452 478357789 190745283 844814342 366192104 593733169 829028177 860820411 637798787 969783372 687302347 218614375 28603065 856075266 367852750 658030169 150839412 350003966 600964142 925046836 482833935 177792638 192113008 467882354 455588828 996275154 366451535 54730972 357927328 788546272 809660730 108339987 134347026 876084899 589193684 343548683 419101791 472897447 549627252 664005258 706348201 75919503 962731171 800430254 3994755 701346448 798597280 739125348 579151991 937732595 48231391 718109938 331193728 121020566 216508037 266332782 718927760 310089324 517791982 666744900 819393547 886623225 677182504 686549427 496903754 43143894 304344693 34676305 926068250 738003507 586170317 18741379 299950650 347746128 691876441 294110214 677134048 742755843 799004921 753951849 151069749 55331637 421241791 527996304 397110996 494223717 189327474 369190963 924123727 702896419 559003404 458527836 502116778 65031062 766399037 367608813 555854814 689705719 605333989 246306072 402414168 836746516 923259293 173493989 644327799 992859086 802930479 345781679 735696657 889375131 420354330 907253671 911807214 612158980 996712719 973452112 281219916 600614440 845910646 969396225 555174234 400998200 756210922 271963750 602738621 763499769 819496121 954597119 466855181 623657541 743412581 862165152 847177817 795822474 673132581 59584240 82400671 37053257 800864357 661402858 115774549 921804952 436209217 140159838 328824803 416097185 888023822 1149809 201620518 170901537 639796690 56818969 861884399 314064873 746203079 724312994 262478210 657499489 273430748 599580715 110709528 712644096 850633780 329068074 136541 841165013 22762660 608897508 853053938 661851393 37702457 792253174 445479916 588553275 297114544 228307663 535571539 231245130 728636669 949643571 691846820 977367695 279003589 336581817 191661392 967870584 471203043 950773070 790330939 610147854 563687398 658736817 229414205 812351336 469763985 11186420 202940580 339994677 904949339 610580225 739739056 933403703 758626029 195809043 800704790 597859778 764718246 153845049 199807358 876898881 396184602 622981590 854743557 774546610 706398607 887677475 702135484 173693989 587588990 551009452 986921255 45614144 397289240 390202319 185540798 372709310 645508287 837160512 747133807 71861483 934873224 933232008 933591578 433477674 721441984 927843457 505450772 199454831 542880356 474420188 334066853 210815430 594970023 948379 58928010 958489546 963196016 985773719 468783475 757970990 676050649 47293179 48633222 842280760 785687985 788728007 998243034 330024513 51887355 173507406 695504637 324337206 980266605 121899192 666971247 404448282 557235698 642430593 185568549 477376386 539386920 984125944 273054471 662359831 91042019 357866177 699135601 423089432 166314920 297538899 635347638 306123221 474340403 216996219 945690264 691084341 694701810 623683800 428352722 115716657 974390151 127057244 613058702 595830614 660169033 585002961 296231407 95864647 476318148 743818834 690210953 305643065 613663540 947809485 814339556 187149174 318794510 646237576 676661244 303700443 11519608 847164825 908310980 480639065 242310860 993933165 41862558 333352567 179833881 224892226 133384676 555982542 793189282 143863212 765296483 895249804 848820829 727040532 556826075 467742450 23881076 262918452 831023232 276194774 563103944 883139996 741384316 384109090 796532073 527562289 435090282 497824595 534756895 537291944 841996253 197562106 355910628 986750991 406269399 159885631 652371048 804169541 143116114 502099801 349132940 26327421 634052795 169432087 868907239 689296575 828961137 838123098 178821188 402051687 636221003 455114648 560753186 242641316 492414991 109961307 688766259 160019962 921601532 850429120 126284253 49254849 437595201 242552057 247093436 915978403 789812355 32702411 610662174 581315618 259850843 830125841 377252229 462201872 400197590 698322487 801407017 484050708 854600179 601429183 191354740 237596460 663145768 915567296 861731972 342490150 64895454 551978338 305247148 68999717 625710832 548990819 177528051 584546850 593073712 542889365 196377747 942002281 486242019 599698781 700121467 436773656 558099520 744601910 938143182 766328995 974094836 122882348 128684898 19712083 532179104 160446818 636652610 95411394 490070617 342771340 410244908 990321760 640096552 57604213 964252180 509654513 627052424 832470651 329307807 385745165 857969387 704589326 403804329 75890847 267920949 986232628 744612032 296436071 226541631 24398600 555887782 769999992 664197717 714625591 803599826 588740026 332619449 885421441 781518320 167001193 928720670 533798974 107319645 226008468 985619757 936342742 391582636 373581983 679311619 183275336 112669219 985950657 838107569 842708900 111727166 563722375 493036987 944976017 741059115 879820367 775751066 122449864 890176333 902851790 487411770 538207382 548809402 679770763 21740412 210846302 729020349 95555937 487458997 506004757 561533012 26905857 380959022 449665477 98471858 65998189 957013666 939828490 714740414 756826495 154368962 739140504 135544467 397443424 905798836 412820147 896858878 574774545 181150608 939774645 713941251 67162341 122113250 397373323 940053849 839452165 883733547 644266296 449532649 957880043 753132128 87822417 447747411 29049319 30568553 298350720 791125864 471164317 855033251 704552706 832572849 287311749 109234271 983836456 865366247 403611242 973226593 359735002 284335225 756005612 41029473 590460687 664426249 743848446 643640717 440752214 50135791 359815528 504445957 672653136 150425268 933897286 403520350 161873715 342189977 710249351 833656352 657580617 33054734 360749167 165030728 766027375 98841147 371232533 874241735 6073238 468639354 119128294 546148352 91377222 936894426 439245600 888822862 557131798 637798046 808015192 192890236 588666933 423131324 559832564 215394379 302397924 137779807 439829170 334886128 279866106 446065254 672602911 226899347 743226975 109867746 369799969 850860752 971263121 192993692 926242158 826300474 371444258 766172812 680533522 296025811 668302391 769829475 124324589 251094422 424299275 68391682 979629107 996230126 379667562 87764993 548102378 691153980 80165430 34830633 402697583 915164756 163011302 906014970 255236081 695420928 892137474 851892006 438243573 283754364 704655528 369381140 931724240 791500280 558827018 23191134 634346800 844762138 612613102 366444371 416198036 760364665 664433965 379674486 893364687 164257315 656158260 837132285 664695689 668757783 796805510 499962450 797543358 699941068 389225527 928214166 497747261 869803177 570119282 983460889 548242218 848402570 442697717 958890467 243178876 735138114 960902288 817828143 511810944 292524819 752299690 42576362 691163220 928670263 501478844 232746296 700526957 316709723 46054099 821465072 437886737 995821087 274998546 994415899 77697246 16758679 95124526 323001977 486602305 462192845 839696112 730399483 980687616 983206204 670556599 953425738 793460657 135689046 582174451 505580607 478948928 832934144 109263787 989445993 903780973 33208849 937661432 786890122 582102091 366159574 479082888 107758362 716854467 348434577 567585308 580119235 371842063 610300405 533062666 203774435 218542655 413021612 779663547 175338253 187236791 716450513 80059694 331572872 588540335 175895414 608956019 48019150 815789746 389958944 827124785 391518991 97323807 91474758 504920866 654611371 22573995 268568021 918220177 718752444 668197341 550155183 58874339 303554698 438828177 527690023 117803275 262874132 733972598 897021062 763320083 679304078 266458256 960852106 496815514 892858589 8777910 615675106 622894673 213019677 952390165 803457715 694367101 310540316 921755563 783055126 32904312 160682204 227458765 950696343 780474928 306151444 658856353 890377912 985052583 171953072 365798309 108348012 48947825 468976717 573314598 651318428 495689529 516938174 291122378 735184293 88744508 123641738 123752455 583689432 75441612 872285547 382226857 515782393 338494158 998328272 129116496 87002817 927063869 602692188 250390767 801844572 88934053 614733925 16408399 407175404 154047144 308470133 957169290 243207428 886669693 324285901 250552976 574398765 754538092 928691933 560176549 824587620 441436243 482107853 524723937 639777434 421544484 267856376 148953775 113157939 102001508 829629291 564833102 900246408 838124206 965347179 783064915 885685861 293069358 486690028 583883301 66470795 6162471 562617626 187497600 925884463 610434925 545969620 65427699 875837817 456216556 35949100 124599393 495726342 644050719 878195944 963050116 906680167 754402969 208707844 599507045 331354272 388667520 971637806 595319526 605054122 308068365 370545993 626998072 241591793 196611085 725253354 118812517 385033686 160098147 970951134 241266887 561602350 869023619 543894434 472424079 404397761 620848377 232490729 930303039 902801868 743108576 323469338 448995888 843532927 398935148 7029200 715094029 167418496 848669536 905279320 307776342 147217255 344089240 161961782 636227038 158225216 826675585 503078304 428323918 239370508 391626652 977017601 310428832 327948607 464379135 2026616 156301476 667598916 204963027 460862039 363569278 783127284 133903831 267324580 204699430 675569443 826437339 290983835 340640999 41115156 13816646 151082537 918210016 738194175 67587985 660630131 676575878 302527890 172112842 821831757 543132192 432368237 561056786 137302468 209062218 349118885 671538463 250725269 407108210 101069633 30532795 632457139 664818270 207816128 33876035 895542725 722311333 314344594 168216361 144956837 30401585 759927962 539905394 699465186 357196227 298170035 805757496 268225087 97417327 964693543 848664105 965759538 807444507 134914873 316526086 501464422 386046981 542054813 97282853 658617401 95675194 446350075 363309040 964757054 617762592 501527919 559473764 796729533 868210157 302057996 244728467 783116590 716089645 356912980 400254754 46636482 476322880 74735042 124420043 88854490 350783705 117246528 690578909 450290317 153873280 75616433 186270391 457481511 444207121 869634664 355906640 109445028 148665915 312196783 981057970 446603577 353659394 699695938 804524410 331663052 969761342 640779473 905367642 503767927 763989274 955665281 527583128 10847497 259152021 533667180 249842060 516829316 33480964 884185884 76503590 216786080 417512846 702513172 557301605 233009223 43911855 752644935 246936033 369839383 923591350 725343135 146899266 349281251 406228038 522499703 461843142 994222386 455240409 148344354 986808255 848294335 3445048 337305698 559820307 87361783 649229828 888738545 125672634 253461374 530300465 16154620 697067588 195181482 745532293 754242210 137072465 94239750 637351710 77711737 181119766 885236177 459688937 818333450 858917342 858722685 299881772 231614032 617179527 735546160 981262076 906133309 737146369 796251462 312148168 870837558 720599507 804932301 464574924 798453138 580461206 4792839 877770143 713296926 439074167 303802092 216763558 49345947 473268153 198579621 405278366 739433535 833603377 718002450 107234582 634580528 381802184 894495557 354867186 614725644 219577085 849505797 446617578 526095716 890846816 918284108 185740552 595640125 498791960 800867785 680942894 278805133 535845470 713527135 171144846 371293892 433878272 462739364 582412848 844426816 349193695 967352931 168137327 372927191 359305585 892616218 648260476 31332946 177392448 212944509 730750426 797093100 356181608 793407729 164892896 913078743 56733213 61119250 273392954 816187831 311472163 197091629 856415080 551266085 971605332 91952327 938257982 474129709 442639902 463507732 653058915 853032912 548824834 654055808 127875538 136701059 201860886 215682602 77116507 735398062 661374596 176470116 707012131 737051182 258308361 212665653 153691423 911171028 432577655 851802583 756995741 314704868 187352371 386266169 459852220 671120023 905160887 48804221 476602864 684802713 962560529 91492475 361445247 118432139 502860899 732122685 782086662 349684866 387942753 739224193 954396916 709514374 768062422 586691642 110372877 680845076 394874911 790122511 736899560 621940381 129825966 411311323 556505714 901582597 393596552 662148651 720611689 929233956 597366728 916678339 322700514 43603017 858283034 31758105 494153668 167177906 943815488 563215832 282866763 708269076 667324817 326400095 958811781 864286489 567897205 762869056 426063064 108870365 74428138 148093121 959551610 41120625 886681090 784362846 39368184 61313113 426891619 764975173 946457008 380357901 560629701 893956056 138445398 158858619 888737656 395536431 653474163 213001859 200749787 544251283 715835873 714845818 506211558 390181636 375793745 699942824 621612961 90642613 765374917 346275530 447579818 956502154 769485846 340698000 207821236 688291489 566020207 414922016 217526530 483196870 828529616 366018705 779766256 807924221 516110732 843898225 152647531 751677180 764907467 419452480 970967667 341522094 932323849 974682355 502684832 832985521 894628757 802250098 953575067 555709401 146257427 62985242 525124256 794256555 861856762 835829307 253452547 261925347 333992727 129680538 501909159 338062830 679424264 852406769 951822728 841124464 854150082 604270955 215853363 993292480 464163340 528916264 313756489 988016231 710281218 148119231 565928960 732009893 860841362 859072439 135079073 47303660 26702082 35552268 515224075 909076579 606494056 428102833 827777839 290805860 198799152 631316488 387002770 490867710 438055579 747174507 919940558 660236403 296882746 409389223 815634960 918471867 594119031 16183420 732112540 180804608 374963468 838884638 710110277 661819424 189929865 238245303 7911157 696941103 459695570 675800547 630913579 162333938 842706847 625796146 949868408 774689124 533100539 130330793 816233729 566733620 802292166 913736001 978566656 751056198 872123955 904363111 459859779 782377518 906366794 835579770 697670571 635668664 701025895 210655057 829562031 936477283 643852473 486502578 128004311 850780640 876383684 3291356 878020161 124520344 390552032 403227646 340182814 829178404 891825847 927155645 100789302 277434578 504689611 477521330 369077088 177984551 613752045 307285482 385601547 632699992 904972999 986104164 800212921 88014799 407565652 694881431 482119806 541646764 139764834 139053033 688449925 970570817 542016535 800052281 856642443 530186133 446117225 856138070 497020258 637064675 326591652 794753157 84532848 490437656 29921257 855339263 417168685 775287384 974724009 764784240 447230888 247718009 346449197 158525306 89717251 517340806 190377746 663702064 525107443 485796157 297372613 118472347 264146497 949799570 948629003 616182072 455680843 277892650 478753660 814895480 344213891 979676641 992076547 743546943 840107759 55697476 24303968 931470438 610885800 174437656 211471270 545781050 221764443 205406673 68448189 849783546 70097355 598885915 522508513 986519388 67997516 593101397 400868385 657871368 373566538 683522065 905222369 545259292 302996160 6274198 244913496 481182118 770989250 215334750 788546835 504055853 814270707 846077592 834866032 187065129 146571023 706433959 394381348 6560134 745706083 571719073 170666934 110122790 180449872 468323792 69463553 923452252 498880715 459648565 733276342 957097841 858528992 322132992 141946327 445967650 385512235 532675609 930641981 825178912 665622109 848358811 269223444 131538319 213965245 873087059 948379994 621939335 312403364 174845253 353508451 858954902 370617856 60691751 863124568 613190460 820427474 752803045 392738739 311630190 576325296 931787291 92172484 353557524 272122179 963824030 838965807 980839564 628648394 999566836 321183084 612735780 749645206 833234390 968258374 273492899 116391052 867528373 164666973 917111233 600182694 721978163 699599268 261058986 5542770 597084070 76712675 917788799 300296849 735161496 628363062 529442004 791483961 56308041 669662092 329735475 427801268 914381355 710617384 694163608 762568671 733790053 108277796 643156212 197540780 539510098 892010985 279884203 590855328 585647359 801533369 993846293 61754453 322017456 328105766 460214272 612218362 346322523 907433111 907370028 581001422 41178667 735175114 501454542 820310696 719082750 842597964 959402510 511925874 69612776 40744963 510501513 741327017 412556206 19099557 825188303 794534367 19812684 972666686 75641062 127910202 969171568 307647662 55070405 482552562 392896252 261848105 723434714 257086166 557044359 715960501 328060293 500491976 848091869 688872623 933527706 384604988 725403259 392714310 623181795 963088829 455049492 910574079 861416348 312642921 877502990 429063983 100260085 386962288 510451974 429352068 880398996 396327832 397233224 357516925 933800720 957676220 244247383 534347757 631200119 647175496 716684139 831583356 361947593 212796863 766780910 90646310 208660346 530384694 449166078 141963962 952186356 985062358 358595055 214465628 11032851 874225501 965941190 800794627 333463463 811375518 599400894 382040827 385622517 147693308 15732679 624650853 776326710 405589235 598276354 132525490 326948119 431891088 118632006 998567212 445897272 35032307 650762911 170816110 35183277 422652884 82535881 972313830 542079360 265839612 569234617 732021850 710941740 597332423 35083285 401486688 592628004 942373289 720875191 902638564 160685642 313536165 123941421 75989414 213784440 103526615 974447932 539878073 261603579 433385452 742434905 638397958 654426642 560760229 813127214 806911431 498373491 489977944 914847771 117294092 637008327 565008751 211703987 555411769 616757290 183058918 762544699 602673798 328246956 468063953 734885166 887704702 84291282 639056852 834984123 395872640 731675669 220775849 269104965 843982401 552143457 873918622 532012770 401586248 733653656 192449300 69626333 733402737 133775629 788725761 358099765 774740843 773756426 939263343 697763099 365447226 758014538 786445563 706723704 651818677 411810687 778498646 266047077 906454537 334461133 320484808 417252528 484438324 740519757 496295080 125091934 640916875 172342923 591167461 829643043 430529844 444388617 500092032 922472172 698980781 364780730 47604751 130338901 694818883 695253895 558466364 37207859 293074588 443739086 642606148 121478412 742502702 128331997 470265721 337361818 742362565 342105979 464960961 773512013 502271489 105660000 890105108 752114117 371455445 185697977 476199681 254655579 444900362 525286565 957635882 302434457 456636090 493988282 812245955 166674621 743056341 725988224 95966743 585173563 97541023 323785204 340029699 861182008 391014192 952850951 454576505 526144527 460816626 364924957 971029759 173686224 888827687 288711823 750807085 491293372 325524065 190468649 77141299 263059403 561301512 367057580 952406096 71705126 661234904 702099789 273727580 41279917 486861152 269424948 580814655 920486769 86632067 908441087 947770999 671742523 736115195 92224572 172917655 165143300 932026577 529847794 600163522 803872635 802084838 366381337 527845684 39567490 79317102 109397533 803054521 725245105 897794160 229916255 711950132 412283602 978596679 434283188 829245722 405074531 939931172 823060452 417795572 240142871 789256329 994643244 423432673 734413397 360959183 733455549 344779537 790423479 242466465 428641338 911481419 43872653 421389695 601560894 723893608 905173080 103864124 847760852 303434197 231314511 157333121 373046525 482785557 994090973 369034568 688008494 545762621 97695777 847778145 712064207 323998583 47244652 606941936 931284669 375479423 412067783 312953581 959396040 847671081 97227114 378070434 650251318 318210777 570877766 107205425 263583806 297084425 317495676 157844492 579630734 255995079 72823268 634826107 816796614 351803188 767395463 856276506 726011899 415165958 943413797 737649239 983208245 448885510 364104368 10965752 355459568 135582611 278389711 885894547 152844703 555806 616547164 381377813 225159460 327917484 351689191 230627900 538589018 427502679 800663344 560516637 874737548 226142669 434518704 94031518 636950010 230970063 760644113 895358717 477723227 926990004 834482610 295048263 114408534 21917155 772389156 413501922 386975240 416380508 934057391 599159300 111701633 113635376 783072462 113675833 868783174 267848708 628293294 290337761 343750609 866077075 115029172 124759215 285724684 295360553 480636404 89166635 258109146 223478056 264259002 117445937 527615375 205464199 186898949 446795888 518170994 86657870 444847623 704907500 734879298 479339035 725904038 49749885 382269102 991437728 184508158 192492622 440895708 821636898 153215197 789431134 914942691 44858620 401117510 800282882 839887184 665496858 985323247 227769953 396646821 183318399 857158850 952022007 262334677 430984895 658877024 897838098 205943754 483152005 760326809 285158232 837744608 526164494 237388789 107505984 820623207 898691245 651227950 994480276 742809124 988738629 245003188 231248373 238635984 885687250 303988264 236388951 685172376 892149216 450566369 626989440 9414555 511077650 887028842 796838542 143473519 432418461 591544322 335429742 597074589 713076938 671136282 196206693 408881697 193263991 803787483 346539147 526393323 677448343 905115805 617008715 97917792 476533421 994962545 340880101 790812121 506429781 609207961 645720556 403555618 833626556 990913290 661825481 922144765 253738787 675205105 825999926 924609693 939247967 576166955 245847235 493193515 556355932 357848011 827705684 467550789 22104981 987600536 195256480 662949754 847639710 58664588 776494772 784005071 744115611 77380694 557539695 424114749 719616198 647118297 860552452 121333296 544177644 316720811 820940410 302703625 526563057 947236503 743821359 448623517 22626887 332024347 817579601 996243125 31827323 266429163 354877796 364148620 263706025 117844588 643180223 675606356 700097026 619656249 929395982 983182001 695385677 689913506 694754513 840416316 582909284 466908456 672884956 662211329 484781490 488713987 709198549 914691841 436034492 744308124 372374458 395925937 948004501 677674771 948454488 193919097 573046888 153525434 249306580 925899575 799731953 216195991 740165670 998216377 826754564 979716326 566429337 669448518 536947717 44742293 772894797 414704406 212290159 27875783 461086389 928464597 48486990 715340626 935108122 785629732 768089284 622100544 317360661 656647192 596597639 587192914 313635353 832441273 169445217 668339320 667098087 278072453 201281711 50901850 714792471 661858538 963893731 844122578 203403926 138022607 746586115 434602352 74367266 140978700 34548007 777538293 88289232 787677933 443097342 728897240 427910535 146008755 115030346 837598660 964215939 77358611 183336031 559450392 104006354 961323957 992865704 747107685 903319770 547973814 109756962 363916020 852015569 889347366 626898656 800193598 14708804 983898763 126095237 637461618 806818961 757129820 299473101 853439474 115954540 720253063 936605444 717563606 968296542 681385964 799978125 203275623 193692225 99608800 522565724 737618085 187560389 612172203 717084796 836747970 76635631 17283338 421292171 428266405 62292117 235108013 413274169 517520232 164302051 856235450 720048077 363994843 177912792 196417865 70517920 266258430 375668426 20698853 503656863 520153226 122543582 772428049 288208333 759282281 314697361 256867265 770095295 437846586 743230002 352454877 260954398 788273102 538556005 361754818 908363561 750646446 804421537 660548288 198716208 891225746 299999667 960570781 63558170 391395819 112758329 515293712 19907040 715650138 223376680 139626823 127337487 179714871 228486471 851559778 580414026 912054283 487921841 67357685 800984774 245554966 483146583 285494410 247121101 599576010 226954108 391979805 57418555 959901005 913488439 646819998 109011204 291905275 459336180 84076402 915153836 880690402 90072307 161995763 122824653 68941893 531790792 750361323 64190869 952388634 242289113 803295261 436642629 360798604 729475044 585228476 971173811 512478841 169866870 723237874 734624457 160607732 436560500 4146523 820645892 63401156 750886294 241571207 60781813 663696868 377959143 813350011 330696131 631672065 178677575 803448880 142494120 512611071 413433833 776385811 622348656 196644980 816299733 485692548 627346429 712443436 989836647 900509015 648026309 988666787 805493454 256155734 4215890 495099278 747351182 765035196 90854081 51106898 249787134 567597243 34378820 285208715 735646155 203830775 660475296 279091591 98721908 773111305 694647983 290684873 653856971 357917950 616073952 751536006 981016442 555813334 933148594 627776811 472042108 668572933 959908156 804909013 537259423 846622452 404548776 720872919 318699273 18545281 375801012 611715384 211895728 537587067 684535856 586798642 846144992 622790439 209163394 237562292 848730553 830089918 772390437 165361121 579290543 433139180 458440997 166090895 280801032 210829651 205480356 45913033 280986721 970451718 175482457 589227086 642678826 828906254 562625804 11659791 114236709 485753833 428840731 576436405 307730155 673691909 782586361 871718424 201170535 733297994 992170409 493709513 966276185 224654221 296047943 400667273 585376724 856019230 391707519 728372944 568817344 973700667 637213460 640461639 256230489 703099034 2551643 709005902 210073006 222201827 236014269 452857207 356293155 190067252 753927993 175367177 226645487 922306715 167274719 417816446 786330783 668329375 159375446 395307525 905253265 33110456 657613655 204386560 784281210 667515346 394100015 348074375 555823073 939860943 962496321 139509988 846360481 323099906 623564674 713195797 537686379 600458932 812235515 437512526 783896385 383879330 610179147 487293044 729835004 573673853 397587490 404777378 835738056 764066665 93764551 983655592 71489699 989219454 630955411 645439623 968479457 497819978 95636852 817275894 939858347 116680526 627351403 91822560 922213755 349020540 188504078 478928356 785592993 685319360 171524359 2054868 133437377 873244276 207733651 344742710 588852307 117334761 608048387 685593542 621265186 433902565 739645758 563062770 540177614 813045536 115711294 670682204 147908170 472683718 435135374 942819676 341889374 476108280 440246995 176279420 285476133 698064715 301128768 959229946 889431696 401839943 880707104 763392841 942303458 374182121 47065168 563249552 282774067 104494113 445972673 797270313 853443565 971648597 734425595 467390244 111066962 267432668 288237973 323279297 934361075 650926980 296130750 221034234 148061242 893723405 372412087 427848951 497855458 44705708 587176279 994000023 531380857 430759305 216248198 68751854 438102501 292606273 574616514 403202753 198550748 971220068 158464669 609667852 25389930 260733432 929362748 515057020 271155567 257276148 720307673 43926006 573058846 190466246 537797187 265693710 317305728 421918158 112891993 373182353 514435311 437246944 54076051 927563515 359404955 398900934 188803193 297648129 993101832 625374396 391949609 293527049 697564558 659180786 883385301 894508717 143935704 88398862 469511235 640572 375524966 785963687 839199563 993775673 21533451 701472715 141854557 518894042 253101167 73181050 708575992 515402378 276626830 205718312 905298228 891472999 339674935 357012031 445142073 27676356 88767629 605535899 6896582 693055145 964660618 13716236 840903595 989282638 772561271 502691287 850181711 344814756 224065910 339070262 117193002 246587852 662129912 996307923 518874956 451828637 95573575 78216529 146366421 100302626 146958589 349746883 295069307 659788826 188822667 420014899 303246343 175309175 293861044 28511261 412992216 653920223 486276623 206010865 951063902 923050030 598606472 683453588 977302688 975990258 261896159 111665631 127618743 986014190 430598695 368254495 823627088 921951383 693291593 380286099 855513646 21745818 392068223 684180978 802564518 352490836 941494489 940221666 604524322 172228952 525451195 916921474 884926879 398505197 849765981 444827361 959060014 493424782 186375498 379150724 547468918 324927848 207919329 231721956 762084656 532940255 43216855 226972654 92945066 683782665 881191859 322975361 816454981 411006513 641593169 364653555 151359479 801746261 414238048 521499789 833261258 536661929 896850148 92026634 607687003 663183122 139568052 63929116 657800028 476730796 342770941 446743015 75163922 452081733 784306109 631582852 2991063 523189471 751466313 461584000 435430553 910878514 436423623 758570586 492797018 248708391 826416821 796984840 603788462 154399070 951418720 873418610 448809024 658339241 827376494 448071926 777519437 614535567 853135701 188624867 199074855 452813002 687516897 969443582 6460851 941290441 458644914 212625152 620730859 108708911 533003707 501256469 63880286 366480210 201393092 950958942 169731755 294323389 92813801 386916720 985907465 693492398 214818842 315314387 340673730 311085208 451605145 529751429 796905652 203637155 871977087 354379892 800616399 488524071 82057782 692037639 312078745 192369973 220737536 676057750 700945581 696588046 570953327 782842093 406041399 265639849 126086379 711118542 916764026 251892273 370413616 190699371 785378890 75881605 449579724 320406512 761184146 577864631 43680165 765883895 164024528 606818446 106716786 882293265 137100180 576570884 885232189 132614724 330216965 876119495 473873895 92510856 706601819 439186620 181542052 112454473 746555494 986096504 253421179 517545448 275321862 940264133 912431815 744659770 88449968 933217316 998415545 889701383 248503280 707159109 676342739 771491212 328457441 290121104 409391726 917431290 142719670 225610399 588267061 477661428 604870709 579740353 185541800 63066133 525272887 274145913 662787482 707978088 386534698 804759550 758557108 802105838 672219535 619104185 456580848 400351772 466335868 265326793 893267742 760471130 536083226 603848066 660307042 36728709 825910312 295179753 311903156 840456045 135841398 568864826 458809694 780271960 654237547 918053731 719955842 303908989 626731392 899009926 430621842 854106762 637712579 469385851 769441238 427188767 121443669 508327499 411588073 704276305 332807660 680839606 73932604 256500264 280744530 435806894 658542738 940021537 537958884 403712218 699697538 129989548 883407891 883421204 297045241 144182959 848815846 304561899 769115061 707323649 219303799 515650338 569600203 91583472 390579314 14009903 54798881 889598908 948533913 764912573 498968309 188285977 790792514 270543402 579307092 780987569 200820951 674052362 75942820 550586784 157889365 202861986 35599130 779380214 779819726 299325293 744091205 116916281 144547303 590842011 294404737 620834016 63674970 746141837 483643781 122016985 943726453 311926363 205036502 828454403 566796954 286758222 647587153 348896693 743815101 42941798 541845413 96440117 905161193 594786773 342931158 506889794 439899579 940545409 220891580 54513035 571182053 64584070 258654338 709007670 210693549 749622706 71689511 999195994 122773867 310909704 505494016 606638213 386974990 230389309 181033524 419492918 156498072 734686270 936426047 658231652 483781789 637322920 98900591 913091317 131308745 799517775 174969194 415126088 385035351 545605048 827301030 960284076 228675226 602566558 940044528 177632998 783658360 482545520 590738662 882989487 851920873 900303313 848448381 60572724 435858045 698214168 929211515 462359956 37034963 256464334 704278781 298073702 557162787 910566706 756576243 958180656 414216373 677319608 981805727 431204081 445202536 301781381 201211674 948702616 918947884 403092213 79703247 655353482 854497416 879140630 868173054 459613472 218108693 683418666 135980346 37561638 855419136 611586089 381061612 640234846 990290828 28834108 832672974 740274683 8101006 793931331 85934960 629761830 489232111 324474192 257144758 225060733 314101038 335171114 860454999 559209615 652429275 945151691 285209952 393515361 707303965 514487779 426724528 973650668 74502701 853072210 698150521 834708124 357959641 185197745 652123077 151864530 677110018 90607050 760050415 321407844 833022494 864797468 622557734 256395800 791488694 251991640 597411821 957646636 141780969 731402982 500615582 208739281 106991848 572932193 735336930 276516011 672552312 217264919 454983482 282281043 851615859 465741962 1191546 615439829 848474183 419372529 397349192 131476786 692797301 266138296 364279970 278431711 695569171 239606011 992399701 625316677 203564875 324833295 486424198 175332671 609999834 819126010 494249005 215876767 8409746 677354230 344725909 474650024 570410968 309620722 405212638 880125589 49919782 826254097 513384571 790668305 572176266 1354024 640690613 560718270 341825574 787808068 778274085 157649070 41052846 959707938 651062334 637127149 779045869 770424758 598580417 36673269 276939840 221795237 508829510 259801143 978122265 52958666 229557178 79498649 718383229 677722036 727966171 659867891 241049991 462404134 705884094 341202577 828744931 390096279 723408458 118215092 318533715 328568496 386093499 430648593 254592046 459173584 640253983 669158224 901756380 137460875 910130140 16399758 607375963 925139495 650129448 891949019 608180925 174959645 221420432 220180925 999818920 657913246 680517746 107310252 852371668 660892940 877924226 919004308 830908304 590404732 330715209 67410006 402887486 591286331 764205985 293747270 802679507 991312710 136648762 685419182 978575960 383365584 966212377 647690314 273091435 976121280 125356052 118474443 315038143 435008304 317920855 124758868 387061655 212705007 871953633 606740736 756613199 34895104 262197511 299762522 958916819 116603161 819408113 605060323 664834598 400035621 898130457 393004943 650135005 636710338 633475535 384824136 207301281 869248196 682095031 171936362 287599793 633870256 237406792 896849477 78856797 864462402 27224911 896332191 699930252 935044327 625384042 556155183 280602935 441440580 886212494 438959651 233162220 166195885 763648386 549623963 55511628 834185903 27292257 519112747 262473869 288049030 919024156 25831517 556897272 347328167 386042102 869440813 385507180 344028472 726812678 788233099 231908825 774190227 983472568 674478556 92714694 126393543 28617804 188130938 706918092 589653271 530942038 119378479 689774105 329237625 138876732 789792446 882465518 180495895 867692476 163082586 426900001 984744401 3937379 239920429 914679708 171024570 469303830 839345619 364217052 824293783 71505037 789709276 464232307 172328803 460648147 491182413 319126406 620512206 957104584 648897568 831885903 230505401 148976799 167455423 291924124 46418875 327365984 82837133 214966094 757171359 391373159 354853469 624956892 848059364 384140259 550718713 89779917 985907260 934565464 327317404 307524161 219253261 603700509 821849720 985944169 726168563 903639519 502184242 438946315 975127868 618140700 124722017 341590271 902748778 667405225 905855250 841130164 413951925 296111405 837892423 588804779 5157766 584794276 819459699 764648699 923714814 183265244 488471807 607501516 31670893 966990587 397908425 691097820 881302491 4600055 435309728 27315709 623115650 697293340 558486217 282426260 147481169 874803850 866752381 495515164 261868139 370703029 68831848 78973857 251172774 283315171 989617196 942795846 857830925 337371825 936760540 556103871 314061406 375798671 389075073 1727192 792415885 40972095 793430937 773007340 979846207 701178202 467715987 818203502 628092752 921645259 116507988 901752676 970419790 724768849 666597301 487488230 969730299 379138818 205982210 438117540 356162766 841596611 291578492 872839518 802782579 919950544 750877912 455197801 450337607 149157947 592008383 418862129 82601949 321850468 757567564 642853041 626892923 341300102 836740753 976039420 519372957 771780907 861425682 311720632 557077105 949954738 430434119 328775326 940071770 590853072 227324703 278701820 972871790 993287947 359238008 548841266 340382968 239105601 790727080 844284216 23265014 252480288 626220279 937354263 84180891 698236843 201263394 772578923 646542798 85956795 921604314 871226088 486137002 602895484 260601923 50270418 718220284 944534764 946542966 714605699 122706632 576354399 822116095 658944489 890971589 249543677 943753823 907903749 351077852 359917122 944774283 854694509 76943533 592796030 897074795 179169226 986333449 787841619 518804828 126474843 51901817 612558394 265151918 210059121 805047478 244713470 352618279 258430705 181921839 469137470 983072127 242904021 89170566 889993712 763189474 957502635 769261075 900316377 430221425 837593620 504243039 625591829 711214785 677630278 894257579 619081365 917424730 49920139 917160807 780271516 593424441 215445440 767255227 413194562 482026062 239835351 206173697 57092337 220871167 657833045 654181960 215521771 400247459 219057108 836510675 749327297 391161352 834484866 575676056 18403037 126538478 122986913 794806466 819880185 617475978 58556677 255577392 694260646 829752324 916176281 740077043 577538247 761616633 178392538 191460052 714461971 339176441 277548122 650488267 298669206 297223690 944316990 745139081 294430512 839578659 975568321 917674991 1915668 429757362 117148335 733837973 230282571 836073751 624797931 928001860 972148783 225136167 710523625 933681788 917944304 802048681 920464436 769480175 962567954 401145564 680715753 490471172 838102253 799599600 683292987 731055957 238816812 795818632 700054509 395455793 600814415 4506430 442728155 811136027 999618857 993676575 211646577 204831561 538786658 371590187 868192562 354928165 919318773 811256278 44780594 492686032 589428403 90181002 297776541 936539802 739090879 893854499 715790638 894386315 862013457 433080177 416076472 795205598 25227507 787153082 908278433 240327296 355912583 35946805 347145314 511053717 520206142 534078351 519915272 628615668 189453410 603369322 488770998 978496678 416449677 491409369 649487905 763382635 485687088 308129766 701115154 755533620 970059790 784026381 693882600 265357482 576847806 889577918 821327379 360781990 225516588 571020254 969960858 312139959 443856664 227104582 391933846 146677151 921555605 177565251 414241205 44556246 773989771 378061845 32882616 833152006 828838966 685879152 434296821 956718477 357510822 236058877 943129557 580632318 687892285 580905946 23085655 990595744 709844276 200896022 885713036 603194093 341093142 850619190 448118809 504514837 682884930 148352179 101531064 587570552 723994733 80228986 335967159 153960496 560030238 51305322 922746999 75242373 416449841 769359321 610123502 589871222 729649749 310204944 901051686 835570999 857503886 513020106 243425467 919677869 143254963 367659961 765834593 116342260 142668017 897007617 145363804 349394138 856435014 154441403 667134471 227821153 659058694 597308276 929460814 795350592 151395162 122151595 536673075 479858787 591844540 60809302 972928076 268607847 271309693 471617630 349329475 580464415 767482176 734740254 618342229 751969554 8016508 996623336 908363220 930855162 424865021 990592 842182309 137296710 845159011 367170719 259443651 396332953 980964513 528161905 869953210 337158985 316786815 260102935 800266028 759311328 150385177 993179174 924158800 888746399 445046111 504799527 662986350 208783350 641800339 275534869 937675108 394541581 191118541 658069474 542584100 299117887 216086650 544182514 889991988 397930905 848429529 167533981 85598764 481191007 611772797 583906481 384359483 877616776 604858574 555700207 200369059 600194877 441688711 74645642 568636729 779759198 759149369 482406315 617115878 230809341 416955847 187785967 735231016 120015840 730267625 906956519 431137425 147675139 658767529 880543126 895195207 970742036 745044712 325118199 827564675 875662838 462518746 163578229 367172114 32451390 649253766 376108657 707388887 287376825 319923527 146321600 40511303 404284644 410513485 648632106 164669163 698238322 458237981 58862828 901355746 188703690 725295885 17245751 17887068 568798343 653406409 196825263 840411424 107092214 175535313 894292460 992530439 686472091 812470008 392123388 882587006 34739884 546566118 91161567 368627976 20967060 286644631 114802186 581563066 217307250 376734171 113687781 624307646 336829592 531798740 801593677 774860496 226104076 443882874 561348882 57538244 372923914 39812122 309757818 565447934 518213247 618446547 543056829 737257976 404414608 870998040 475950470 790497215 498505745 847716657 264583544 864846455 820209935 845130425 960096167 361577683 726914119 325325089 397917211 275308701 199699372 791786796 959356753 56585524 991772389 692737649 159519417 914755593 933933516 935624157 246589241 292572449 179406576 240942638 69910952 563156886 733755412 757314681 376044372 221505558 102481582 736463012 779555453 199997794 705774185 18019308 196418263 476814544 552038819 328889185 619806732 795196618 52760559 455944805 541741112 330974029 349765781 737426225 950227051 183236715 867234573 86883664 536688939 331654857 427704200 352015394 137630447 275313186 423132007 646252891 968586405 430989250 188899777 834881921 634935340 798017291 888068066 882134641 557420763 930668020 378663878 775841242 657149433 208361348 390767266 414310336 151274818 255021148 303859548 299639547 294359913 854669099 829851406 468382645 482060432 107389751 584693127 251582448 860044497 33402587 88926153 663650302 82944697 327452163 192958092 461712647 205503431 900603057 494274746 396151686 600703730 805980028 882884593 450455500 188324128 979014156 102658820 513442428 86939568 868346271 807705210 136864525 794863345 768478599 119558926 492023372 950005416 858412970 576327213 989207255 225781902 985006849 326071419 142090146 182319824 81330201 910491726 947939958 688988814 900225941 968169009 904677485 612698716 657273001 676567395 912399480 68592835 846214561 834404950 385661913 131629761 53895768 409563440 213495977 106383429 544564929 263472205 18739283 142574260 769078114 239077050 484063767 320172391 822108628 541969084 146002312 826863658 108598085 403781704 555868431 335569343 398641397 730875272 406728293 279456345 142835900 356055900 873255197 348166178 210286979 452773334 509106968 861762485 507858886 68487357 282013966 135393956 239145497 132686859 911529740 434419187 679117216 744809583 427374320 998770843 583732885 492424140 358009071 14168584 510249669 562687928 659138064 695447196 948458515 715364350 339713711 965444138 470296820 207088924 275060475 851583611 213106930 388592838 585350519 843295692 433579306 62390369 13425533 724197710 502549197 736963977 887093686 997639589 525447586 993416331 152596131 444896106 457700994 245722347 862842136 687575465 10715611 917066720 181824187 362968164 472009262 978390739 372458633 724490509 530658962 199279588 822598482 360584976 310412078 636228709 725985336 897036359 273743298 625866589 363308852 76111748 198908959 936836614 138773393 49081611 41288362 836116559 73566831 302041364 513363166 592923994 300035905 471665229 46024135 171677695 793516111 304031319 69194887 834580808 724895029 674098757 367974100 715134195 465979234 455319328 51095928 125465587 234281626 69600357 432911056 467775215 797771125 884798084 980046158 551337666 118279134 750568803 464314871 858568953 954212244 191630042 598868710 441588312 962393772 345372981 964047303 823669077 568069133 640878517 549946973 223110811 775189490 286295311 673735932 25393033 88697452 311251947 70128399 727007921 921933278 918302566 254964115 608512089 623341439 694058897 69969306 8347901 169177051 641208815 824203466 614718923 131558739 842413563 623162844 496933669 378328728 247318432 371477789 963832099 219353396 959034815 142038767 481437710 420105217 701072556 130911305 732738790 150501295 269506737 302015795 639426014 135974723 783109258 871278924 633371866 189715090 191973352 828214340 681901048 237817546 237518830 221138530 818469380 880957162 115315127 507483902 256040706 980682309 729338062 49651976 782000808 599718660 497025460 824095104 477881057 111776928 783140957 248489979 981677131 753883244 245415091 830003493 319341242 890520073 475568402 87177017 618691507 678532591 67236554 130303115 184299762 427876331 385898145 414349823 44832996 68742555 609170254 134735246 622735149 678521076 247266303 201491656 70326564 690483901 643729620 748980557 699903058 608556305 600178017 171933523 993242359 643674593 537473328 123636772 952725125 818364784 305502781 735680156 91751459 150355669 371080056 864806319 561209131 974617724 327045959 504659681 304554924 421941925 516245505 219023052 977106152 61663204 732508276 476400030 167363031 20567967 842786911 225489816 106786211 771046547 964961017 55826320 468922922 83123024 391659880 577933167 621305983 727853240 596096331 938761908 326314346 195134596 460089137 234855152 820881379 505974719 609748768 63246920 165874586 976963913 696790287 735002614 210998642 462374485 435097963 953868488 591501826 467453163 315009430 27256736 942528019 883300455 372502115 674873330 376032549 847461880 555208348 551492169 533127657 890117922 550300028 676235970 96430792 403425340 967639861 274786191 558009435 626328819 678955372 483962741 284846576 633729733 480328632 584333390 282024972 179476871 864666150 427188616 700634340 899986912 722047928 770334373 273969378 984562635 382781153 811614137 755675942 871297817 981010955 610081263 434215426 379926509 644794897 617360388 208199549 626373438 766298309 37173962 853234129 512340312 335197035 27741607 135731694 534453851 499470652 412496147 504241653 575308475 431922149 371995934 904977853 664796094 55735301 450793959 408686929 479409665 503653810 873445926 479500143 991514612 686015733 630135715 793945611 587979353 237581897 448985532 943542986 747923657 286058272 818408419 497476488 46879791 62959198 459340318 282501842 273099594 347486428 161656198 911747693 555016496 796674534 125427912 42314189 898857414 835335101 358012583 272834206 659905608 207820822 64317048 81761087 294555591 530945178 817286308 656283970 537655718 502171492 692095273 701927406 819161629 989234566 851309082 389494973 784253622 954393988 867577883 124294110 122910419 790550487 277964005 525260468 32912422 613866859 309922248 840594005 521493302 221056033 106690596 254162443 535394273 259827534 680556527 531138007 510133204 944013370 570006066 666993385 57154837 588956834 120952204 313090089 555138170 809824055 741316781 808419506 456543279 783394845 270442204 11147345 277497908 906177389 408136306 919684106 537407197 170540467 232026973 377528467 686141264 973572720 966229918 449700568 985259530 489899161 565484491 867867765 292234075 484624150 772636046 552464447 565053413 899559748 249407523 155102396 204988705 14363508 932811486 49036453 340745690 333349225 851420579 39164267 657763503 685949662 237361516 991748016 581850261 57442302 35332295 458840522 487926612 95716330 476660821 749516355 308813317 230013239 843039565 135846491 188587418 928332909 554478070 773009028 688663382 189458057 948610096 521323749 338586961 114620795 666567660 624413657 710885621 772205737 835472815 632665709 257540484 382442347 255789844 846643429 130265743 747241869 866071879 528592183 870686336 212604880 548443018 873782158 127390481 612279400 512475571 514182344 542349779 494907263 932014764 622370553 184269481 746815409 964948722 949079014 816699466 144543374 350555927 107280779 141891266 635551516 348435009 18159254 666092529 463270482 786852008 845566185 932040202 653609886 925132315 195672603 213418518 173550944 483319932 860576248 484388463 536200557 448336448 605135613 720389445 837772685 474611440 790020317 980615452 604181500 702567338 786063614 532450124 882979821 862073760 981334781 55097472 102914 259853976 906528550 613206840 827852502 298494826 823471868 553492551 421380467 897876614 295374775 708242773 672045020 844542571 479875265 287588701 375611781 894230577 260160056 94805296 217846229 963072 740572016 613761009 432898731 260445590 738673006 140734360 98995926 753740998 569098605 742217071 857266332 750436339 203223389 587208855 401100340 895792281 800981087 492909700 550576204 767538629 610815818 766361469 612329091 642529944 480615210 804198685 541901296 872252103 101939131 802399957 503526297 653355294 282103282 500145255 535150333 405327352 914750581 651446892 147004043 65731017 172168734 646621904 142911016 186515349 924545147 70025041 975381422 308594038 306688593 970488835 745316199 859082009 653722133 636760526 499802774 673904193 293625969 823269102 321110510 177817923 137419461 711135603 142949913 621224841 379736484 783015359 893248050 179153936 400536915 152870667 506427467 457338345 604071501 91727841 369745896 82502331 431494081 794840227 563468418 497728319 309607954 959907331 719216646 958106051 306902870 361435017 766926675 968979624 835488216 55219729 131643584 99119332 718532247 58483786 604792979 764684929 529028036 539212600 566607754 117251868 954223432 219010226 254819158 898086503 870737211 931671012 992729884 828623015 893812846 521386959 831942130 893315894 526417635 878229956 623245672 864805122 309448783 324180973 819840508 795160332 90344607 389772740 970884004 965742315 320032879 137976986 835908169 887350086 349897108 995883537 580749894 149227102 12549012 724865186 40186093 94881921 449059369 131456025 595232002 565384344 997163970 248413716 678312254 326685338 78520322 661780615 41537229 272134166 549124159 121467962 588437456 8913070 18310660 725125961 854279644 874144406 476121487 498873252 341767802 981428505 355017300 542333837 689151397 618588948 314444664 42262044 352531535 618175353 491026006 181410750 666013404 584711118 836820734 64289458 13614500 891760300 415449777 950467979 369537910 885601856 67591271 169976753 737788432 809386700 438278473 121332191 421359272 691529511 18055990 331715238 243693158 763881785 93009730 526129897 597883623 43558017 122763315 566185567 381700284 134183567 728364803 161827861 659745257 26049929 446481761 49441513 456135782 433770666 915577903 160644624 184622241 735602367 243729413 818212240 668952058 305518248 241839021 584283335 23498054 335108061 679654053 418216674 989902157 342126822 17757088 296585063 267690828 520529378 717763333 405029036 134039924 190894337 636004206 484019293 618222441 336251658 430133291 81771002 103467203 955385302 739612605 47865686 633896336 683173075 442133595 285159705 694247632 605289858 543939696 683382079 946982136 456903672 811248923 61566872 542899824 465772385 491510445 379294278 197373973 186900601 668546351 391418945 744613304 684384273 937197273 608157142 412256924 980738448 22052508 934022948 70460924 749584751 841989273 560095902 205221763 226744764 297355944 479943052 744604114 21590168 188761298 452130441 429977853 473235129 940002263 871511046 144752910 186295785 302883753 269842118 261576833 712519556 942701551 253326944 335043782 722264318 311728259 810554305 851903683 524065883 63345141 508849063 746663759 725959861 309749253 85919014 219573176 817486010 508247596 741029927 453835838 561879852 770214420 4295140 464986773 393240927 943633436 325259630 689487463 700220350 402106837 323914279 350008272 952925766 420877447 789700680 974408160 392496392 885973421 916568412 589084957 870153388 786563444 22656195 160430078 24446185 167835969 716303921 577961329 372592398 506039336 576943148 970545494 934601853 76057973 629428369 967064321 700124458 335346983 666160399 524514748 597220384 797452912 356073386 68422978 322687484 533095990 252190010 452728902 222798704 161646997 297459689 922304746 724292033 707890779 889349561 204723016 595919690 902980491 224960252 602984941 98606071 263746523 519057626 43906137 843914699 610345525 760352718 314446208 768106842 242629690 730955305 762157644 649071695 745746106 28807822 989485592 840632808 318069821 438818420 816738614 459562869 439584637 942564008 218411371 211807964 461467626 8735176 491126894 125961496 895083557 358724296 120503916 620865717 179382917 748719985 269730439 80455766 202349973 678198493 628852562 689445168 468007059 17777661 415826774 923076492 659333107 722173971 638174609 25337673 712715739 72696632 778495986 902060631 600252580 52110551 9266654 505763645 1606495 586998320 67673262 155680147 199917134 768206550 252370479 112337545 485844326 918413105 465194784 630180191 397961428 89405181 639701431 146639851 277427061 788794314 986932253 924727062 401144668 458552698 356681965 315158367 654267472 265089221 466283449 537199446 881244235 560130488 348118405 416114210 686896124 138557489 216501066 200408572 131755846 903175269 136857716 631554226 708993983 750255963 621447525 642494501 319277362 460476271 474513392 148455627 630341661 422626000 561276894 57931309 916281908 70271489 291323244 957694314 578278108 128224347 28155339 962157491 107637680 285576842 733931935 11383501 347736320 922703628 690820993 385145746 365146701 637692598 911804029 192700016 97128143 377193774 28554901 62752744 930358255 665777009 264309052 138350352 828891597 382309455 845816283 941520402 593355195 416315626 357472335 905276075 805156031 324838715 47198057 615099052 155830293 140683917 835651437 668481149 650346411 909302784 514081939 868765077 886935716 21780231 736034186 93005571 478582742 294323690 461318128 385256936 363235403 302707269 287726811 839568891 292733380 693360007 904694611 624215043 385082673 168504692 519932629 250060897 274388794 260377764 775683026 887779203 618062521 207659266 30566957 439194226 624073534 910811213 266643393 669869381 274894218 375366810 266034905 468213675 573088276 978482896 570566838 680755558 862473095 863156522 316717069 848952522 78062914 795129273 651259270 807742274 43986902 204173024 653317694 339172812 130530188 882318806 795586118 781387640 15587037 897335079 417517857 165394412 125436152 18914611 224211018 144338915 938687551 985726638 752691116 729046953 642393802 647035679 469384744 594703265 916244194 713926497 250559507 206647488 812729735 425920548 504262581 719520015 975139563 57596012 264120267 904286764 2169589 952205329 96972293 483445705 679212991 399774270 916574601 554462252 670943769 350578675 719824238 727720622 357831171 780817539 643603778 797605436 757319990 502660118 292840837 185233369 176791452 354664488 502227499 935687450 345421780 32648712 809967390 751864488 69324207 311164250 964241082 136985794 153752758 795262102 514344016 409614776 387603617 683521927 742015651 265874545 916203489 29433804 963223661 837904614 983390231 371394906 784380123 909597861 689123482 604220664 824885261 380303694 804510966 71686337 116898711 216699673 230044008 581527718 427552515 126185807 47805795 693096682 118629965 558641869 83619341 732716708 584486501 505207940 96571074 46246464 311595953 766089211 602331536 677528574 841523848 910974411 92096442 511341682 66140600 58340898 700207158 654174978 944488704 31689537 906045487 10902635 908541335 631013886 125124995 33120573 927047332 44689475 789911877 78131290 958457283 845994893 476372540 376160123 767682950 456323437 728623459 453260203 469745650 768845835 776243815 377132490 48611070 390361758 580481068 442281227 906713367 533655541 211313480 554897270 785233311 801776881 26604679 328185447 487427433 781585160 844029285 582674189 604384575 595312324 236104343 185716972 109757021 900484674 410433154 190029403 815660275 676807092 182163906 919722759 941584038 82519007 127550885 425824366 972294415 667180702 436039854 834768997 852952122 146214237 867620114 812245907 37734185 766819742 893569854 525629427 888744015 661745016 568469583 69779286 39692310 759706131 143701656 420416991 21147481 448771629 56112160 460255877 883731434 230443672 529596705 633141140 831503629 343879865 707785866 539922732 852323323 793997067 456050814 599323073 727180385 524809626 939585747 475725977 414741726 14791305 38975380 557616721 43310472 684683404 384099712 869511001 46956648 197050222 697995912 234463347 666318329 892416653 363139157 7109944 222328237 141506393 613448383 64706707 302242408 234844632 337208407 328782659 237891331 990996261 341812446 630558301 119549130 812525549 300173772 522474953 986701823 524026608 832055498 557561536 336280661 802421638 333739576 287025748 332348789 211364887 672015272 4311528 118481788 153661090 262191201 74902452 760080251 711950647 418317789 298777922 262993910 132770429 735604299 838382580 195361638 909017133 400892173 214176635 584189111 547915156 195980603 187908705 843915722 208796693 953488927 847571585 274917876 536800677 83129271 507447689 578567805 451858254 389847863 597164927 687025955 668824492 229791620 808608057 729957524 948567923 762513337 312655075 353990903 51818471 206868390 511001725 386450532 235754850 469026892 511397979 176757607 196365777 812887650 989349795 50654593 230611255 716887763 641979090 504057767 806499369 544506686 812102712 173963969 984793681 811089013 722985079 2066476 115973868 953243902 918508296 122188345 687640907 539841941 381378230 539099308 667163990 206095784 688136736 26174781 794875908 252014041 169920571 980822042 46340068 248766080 430587598 198246499 807571351 412880935 615304437 351253677 493730387 972008972 962571167 37178240 428002914 407686818 541686288 170681817 402296225 706004496 282457184 226048937 954313730 285604016 983587833 335661139 147286538 769867665 520471068 434365234 205560659 924025078 24372317 464918545 170388235 428323029 586821411 728586161 949913204 316053849 106849833 827176518 311928674 194766689 696826112 589399546 28778688 493648639 9120651 517676905 791289099 442264057 310419073 312358436 747090645 979697227 314508270 571894574 158597955 116481186 110434226 815251330 992162448 163985123 157119488 219549834 887222920 761257122 999633889 677635241 395890445 928996779 319267759 609445299 361903254 922919549 978605978 845351792 462750379 428486346 354111526 795158045 340868714 498032633 586517163 865238250 230274821 196520868 938398676 32827516 756478530 192839706 278453280 388365165 245256442 63916766 798169189 43377351 827285402 46560550 965460552 573803661 631741093 798831197 645784261 873701939 134205743 201249953 653840045 40875808 316704099 940897605 875174179 784097587 345109759 535358801 73284127 484259131 635071443 298563069 260866283 301163390 565874246 444007738 639234728 113899059 764437457 5032489 101554890 545539080 769621889 915541409 406462360 520719004 461806201 917026477 865754797 27663622 785377902 824271628 778967930 773624396 63427625 111671728 333196225 390317037 713607689 912296255 384315419 362347096 337547390 751111317 375362164 393557875 487325839 579753280 562948234 181841685 704305749 611267587 919596657 823282571 42199934 672861011 733866769 192011287 509358539 590153181 927142054 377391468 586536850 744674046 493385536 99455540 833472572 653069129 811423041 108359050 745843400 964885765 558872545 301522304 768153158 740968109 362537901 252290458 456956510 304319854 287659780 888585042 213808583 139991980 264737433 926590098 869772495 417475453 443454964 467865660 92232666 24706860 515985905 115639974 727798747 34043831 187477311 874703894 469833436 141505362 263906529 678785355 212565628 774517730 183286961 661741556 555072620 421252483 215688152 310744886 302863089 844353795 224303448 71833642 496191333 881759844 769254018 27836508 998365366 813763934 984928128 140865101 692021222 708849114 68458444 627768306 807534217 441671288 624840375 722412852 945996618 457217802 650875875 677690990 935223398 985621783 115855305 401625330 995059759 249324121 604399669 205620100 354741642 716333887 374625988 550032605 663472242 284673900 646030701 936122409 468269683 834037302 796079861 516391818 805604143 696238888 101718905 331852947 642817245 294400640 595697384 583094989 325103301 676793265 27412871 898616885 965258181 848414691 234329195 362050492 960566991 883277934 331182594 67025350 126434664 581098339 711473803 469292204 76297771 774744579 829202073 56317754 869134148 69005637 562645908 274238257 459534070 528000084 980709431 473611206 696922133 480565007 673357075 617699361 111721101 562542728 87381771 525973471 685687257 346620294 300009430 826015633 180168588 548487938 999603329 35758907 39148492 376150701 226455018 176982229 768770002 160158569 924382534 793434830 896937067 584765900 108758683 263940740 367076986 271293600 422853959 175002828 951530868 180511590 83647607 808079985 537606626 25381582 643475377 963169965 509534178 930187072 690172747 43861425 886872999 568338262 870437105 893559587 554736117 168680543 479551523 612958363 688266917 586318046 629213364 817183269 304454439 432720650 434132300 881009858 936128763 382539084 355851239 546715366 298078775 169604803 301089876 379101435 963185156 718758339 946086584 370914269 646661921 931950161 396846088 747946845 673417823 518646441 915765394 940742846 33594658 345108921 238221941 864975675 199216615 796391331 314197028 806499455 129238712 233305663 271892199 167775531 176477625 954475926 612787033 785586515 169221535 169431144 617338347 119203073 912647732 837172391 422170464 369700017 761533141 6887930 500417359 860751316 254173940 265482299 375023269 834941261 438300822 868149241 550670880 823249910 974610645 974266615 927737556 968398620 207795295 330070187 230314154 474040575 179544565 709546176 458808540 366923604 182971629 735598996 474019451 283366338 255778737 400072379 650327785 679028840 275750974 568365946 307608671 792024150 647040166 480835916 267982952 585345039 766379918 720649825 460267108 801261069 164140720 271450138 917131270 177506621 273400155 358341519 33979351 828792191 109111534 773625353 596266929 241960999 751570784 54272904 259862340 308681343 698307515 454414141 199702164 393881667 656424092 956527121 339706489 170987555 740415157 40793885 516634909 786444868 183588684 203324976 135165058 291237055 509883065 185727565 703959802 950166561 641726700 828952617 977669037 364634090 440321508 2030257 282832662 750275342 35656761 704331138 718852486 976130167 883901843 134388080 453814176 399769984 691594032 555467520 691074267 958478971 93646434 565308141 88776196 996111661 467228431 478632614 210315193 668422989 385161263 446294222 299569390 505023752 102568018 891838907 777036140 45336448 592174616 724630009 420103757 152880456 725473462 418635972 287588994 166823658 533199991 79110289 865549133 933630305 335396153 391273861 297286855 893843615 514546412 121883644 823417947 410149896 684173335 943820548 209040201 392781557 910849619 223091423 389980452 940215091 620526797 646505861 85764692 425905537 840815816 937173791 7358613 623589397 412634649 393062029 633599350 739361560 367441321 507412961 121147611 159162661 588484599 264262370 354514300 212074446 625745300 720158090 430655844 880019991 204536228 558783625 989599346 993166585 907757667 77326783 862494939 825142753 502122910 3535557 393555878 678113582 466650422 220245861 394970415 202718902 992013729 705484830 422344100 245399105 352052329 459566241 64074635 7629325 717107370 742018646 95631418 156982088 1396632 351227096 981440094 662706841 293218551 79911029 45641333 293124248 873734561 571219119 850822995 227301458 286009348 330691773 302547105 727495110 203339425 876366347 363358553 278350954 164555918 545862325 20337740 706972070 709149173 847080464 865035420 553742167 939486355 816181026 61364802 376254030 623569978 591296805 427471497 153131727 500502863 847716872 924148881 635806995 91821900 37143277 789866445 78993862 485838655 174340268 158950533 153234569 29076554 158976591 746685525 524974193 102502945 520744340 682762924 577322630 807410575 901410671 965426510 500622917 424353009 361898117 130699475 141163551 504337081 946520497 126235430 89275384 798348268 330717826 15791110 565029288 131015333 987923899 462351752 34832765 554906768 151700435 441557651 229646519 1548143 283897715 30946658 454654475 423141785 352165370 395790342 717675553 599708790 141799420 227769570 100435990 697424132 387559359 661864749 431598587 691428949 446107068 440732019 830222676 769406479 123677988 786973716 634090905 674513130 691935321 478741956 72552632 998414646 900955504 951680009 771836305 782862674 929182390 753496001 196276345 814246454 73081128 595381657 34476984 571728362 774273273 463071894 786079243 240416269 820852240 203672720 64773410 486281807 258024071 129830066 914111523 829795574 114559789 285768188 58212901 821913949 662342149 732428737 680743094 24450161 873469125 823220777 726444630 476016946 825963864 30339760 650823930 817413432 275525724 538672805 979827849 860528940 195193253 112448940 914960226 301561674 418336440 875119165 905899733 588893158 446912337 996817955 678459301 108085731 184788957 504123133 987653261 85903165 657327617 911276736 385232567 585453441 144696593 826207283 113711686 514701904 208599705 401878897 725876942 913276896 692012760 242429035 448425942 893133690 444478272 294510436 146389853 680517117 54957304 282817395 537124946 526482010 759114074 816352516 667749659 171529238 951076981 933501527 974248463 620022731 219042188 827173376 601184252 189485990 15988116 66832229 411239074 452454379 340130746 123981123 121496373 580229485 792886747 210266666 479575775 524674070 864923915 835289852 80804667 493690725 860803599 5153138 932495579 353015531 740944866 57437847 666836932 572421325 639530036 441711435 686226925 46032453 85403622 327094465 59444676 516567585 15913359 762810113 322209960 690669378 357427194 378599783 788891504 594770719 233044134 506675490 2881250 537779264 749470789 867907510 861331517 93830851 64404285 500061562 692729264 857329881 154326570 129442331 556874976 282375498 157702746 14437655 839042918 274627053 402445903 718170179 519440719 484242481 25721921 796687942 234466202 876381080 913251993 741702427 427363517 525281334 929259127 12416659 21117217 514373430 396412974 686530769 233619361 175509333 734483907 193292492 594535951 823971685 349356401 661873360 785281455 394452684 924405287 322042109 869519802 320747010 741116936 348519367 419699165 485483286 17332970 736460916 512385719 219590698 798742232 132061089 381657694 196290547 296290448 914635709 649383131 310964282 856701446 99890573 752401577 794745437 963415775 277114535 745555770 445288910 374428407 453920758 713691506 567980691 191535324 164621884 753092138 392149445 170428496 273055883 80643246 973395473 233022666 434072267 217788224 956437562 787048950 609412152 64479123 748084116 620680753 617585121 204583760 615891083 658033934 316874026 45297812 194584858 789465555 633774155 208995440 647662421 705528316 654196430 513050472 994018271 893467063 660376597 351349237 899651188 408933991 208237009 480754435 903091297 283771170 731479692 490684531 432430855 886423347 163846689 329300378 52150876 820520600 466833470 584739265 773807465 327987332 759814377 596373155 959403725 994279902 957786872 473115377 553304888 884531137 356564631 984897745 722063857 359366650 55542726 795111003 42243409 498357133 158086873 884497435 573704006 438022961 493321462 609451410 9712081 336612303 878846618 352650677 273359752 834310919 221302805 866441068 442964500 688460202 874768393 663139348 176125108 65800257 121094127 111130110 1424569 224395141 723529361 833386222 29559816 767578853 526796433 817795740 171047835 298857731 754909409 872779062 453213696 115923511 618494281 843404764 400064984 529319690 825229029 441089827 141688409 826943676 570495140 146060691 434756557 453233088 473869770 780209705 107661329 61141563 378820206 775239894 596058903 748451976 642935805 105120509 618440036 257463734 856507829 396424697 205106323 113839624 524067115 490898837 800809424 833404276 903494342 801916562 38595677 588511269 179880513 64746788 700294672 841899258 108479789 596979061 86581203 307277828 482341740 497937441 629515811 808121100 180645816 652561081 696049554 527711754 456355354 142108224 845435206 663687599 616589427 881907121 689825655 144546268 620583670 309752951 753543668 104978473 351975084 391542003 954843807 600906335 458970607 243684089 400388588 748411134 485356271 9802835 941097830 809829304 539666480 244302653 123764779 944106484 981562634 73193191 423093099 222757196 789631016 596469751 617627884 169173519 436697609 779243780 962988937 539997120 788411266 628011804 221067182 129010069 770234426 496255038 822875614 651537144 677356333 391023073 265394478 583632906 175146282 35488108 143188423 778318875 116880213 649585339 664993639 338083891 166838693 126436513 862330337 90817421 367740775 552714592 372979608 438026262 493592505 713005874 48394248 567160050 871974928 279026884 563724350 235255032 450686643 39129526 381659482 363383601 720994621 620361500 325979412 49067357 764949279 595395584 385563701 891340909 323837979 642348509 729271577 713415434 159246538 9155877 999600692 641253901 454859543 227901885 507074697 219662085 635621570 522087804 401256500 95054004 26105311 501889711 207383778 645445522 817057620 11768984 820796500 914238025 811858270 522621418 713418976 73272887 639987724 164197199 885114352 898742255 363652547 665038306 744964224 135297464 43036088 496155061 882248612 878855692 778295417 519045197 907430656 766156826 280638565 240249121 777745230 365400133 156786735 899588126 280863452 260100260 549554527 32531494 309968907 830636928 531154129 535225228 870454737 382720472 189296948 584858777 53131832 757283808 622876043 254460427 512766173 268641661 562089904 379537809 532277105 898454219 30310092 13303376 19884604 135383192 375680992 132121441 30094485 991343846 141634112 854810704 126207339 729139052 322564627 814644639 950504383 660050454 172153556 691830081 898957095 625814913 245511124 6871327 297815629 128165760 345590965 157345174 545899374 265054618 138898416 893893111 396096220 774505353 430810448 700191494 649251197 810822588 365685365 381795708 525405001 183360470 25381715 576974981 216014799 834652972 931331248 914843715 614854833 703942987 115617449 377468489 896424995 332109937 655429421 391203360 727632752 426210831 531053184 591755717 688709493 171968333 725984698 209883177 212487460 184323974 133652806 346647984 544847363 557598407 372816740 665424051 621685930 463554132 750460583 389996030 353686857 410269476 805481591 591970130 597168159 635735648 411316623 474172388 238258692 327396840 554995840 233399004 690490080 267681486 710830637 130950615 334234673 258304984 886638157 160421222 938695050 312729090 525999597 484630925 955890958 947659002 4896747 294174277 110757881 620696995 692643708 57093626 76136215 434980498 813621926 874677773 749240651 984088724 813300423 134808403 954042378 328043302 319185676 583149716 807325149 230521083 220360443 265784589 101547747 848735866 681603306 958430446 176692556 327041598 828668549 755440093 518018015 981714836 384371020 281250162 140511349 674306304 350953234 825426873 633494139 527379128 867862655 100963251 249199476 642343 277951375 999498196 935389045 709795180 183786001 923160710 19253672 79506392 949861418 438933157 413682377 334796916 433138895 523500546 395747756 74746745 625066574 808441313 768011189 843111381 102580422 50679674 356817246 865834925 629008553 215193723 151080117 268177621 944433985 535136644 764568539 722689370 32392489 553363113 856968582 423308793 87715536 353528820 357825407 449667237 667724538 16739809 194557221 199560965 963026238 800125409 23051753 928774387 997246600 780068567 900155856 945782014 114048409 274758046 836329460 26788585 950061954 88366464 341254915 376263210 396256301 277634240 69701566 445913708 198184148 839488274 108967292 337824269 1344136 460064798 357047972 395026080 910624427 368629760 21773622 693115757 376210294 462792651 715991875 46476268 215128692 960845825 206540657 578160718 638918917 736479004 72627064 170395124 202709212 934334985 894080167 700097525 949454978 797636264 198303839 753924509 211050961 755796045 724141207 236531944 74324089 889154626 257808983 35866379 531968126 113455171 944663101 466752748 643483319 415596800 933642491 738563493 451947345 86988446 697846230 120460037 989460043 347466039 444724521 254724110 345824760 463186773 568491744 574260600 137054080 16723579 972880638 703558701 362619230 868045212 714315799 145182667 637309923 560757154 751018454 169230629 516691378 714415592 580732792 258989250 860581442 887812289 462447696 328562525 257452127 736558575 768704065 703646819 881061034 426494252 13687879 28653176 360297492 965778084 168994030 280548850 213531751 326876025 740281049 155407708 115589821 136351806 752180029 807428597 86454791 73940349 586071139 460934190 395027335 291236913 844841001 770497584 696188246 116388428 169974914 506689620 655687903 649686323 444571121 847329704 483794274 810812477 899260434 780811889 928393842 806978871 861891602 854367395 234800759 529523938 891489586 409855595 291762477 178923892 154072903 832945318 178591267 469143315 34084669 900295015 367333181 363328605 859748239 44615797 60477747 2837219 733680337 939528650 842366480 916236201 955204135 988573717 824409523 460377512 99073483 780620601 174879313 141582413 316789643 851339468 467182321 433824247 13260616 321585305 120861167 979000444 505425272 144152862 481561465 678901669 442134948 857467407 288211477 112698285 705762027 726116049 302452505 506786246 695655037 459099392 465528626 935670932 542849058 818795241 801744606 644491439 197896881 311657488 1706225 812477734 392220825 23537580 7613204 729434615 452211803 310418214 883812929 711407256 584800525 58060446 944783177 390144625 221038809 638206822 785311566 897531743 76103548 118128261 815221833 420977203 590911687 230837557 866154885 854496049 111030561 343765349 99707426 910912146 863262724 752340023 125608851 115379970 997241468 71029891 732846112 560688674 136227243 972364115 911865189 177123079 128535367 543461477 223937745 685333689 354400282 501420716 514317352 154750133 241685633 630434511 532207106 335171436 47319790 375323049 62353993 506541762 31235175 180721863 836923071 912133263 954237188 25382637 745416054 412579617 548368500 808010897 119107926 589783481 93361785 268823646 715245210 957941513 509521255 402813363 91248979 979187644 46236841 138618146 852620260 514068718 316883261 976478961 491749764 657295024 599343155 839786396 163817663 79984774 672702769 962160721 264582645 479048680 917009138 218704754 405802458 109174468 205089730 659163415 727007732 274481146 279269380 887860105 386317601 467197919 622968492 514369480 766196238 444688059 190242758 261813255 58790848 484533579 978164973 687052330 940439567 296552767 636725716 514255439 203253286 657221565 494420161 498267970 97022213 273388508 904206093 302742279 345532927 619644714 316256677 636263252 340263228 342868007 705623948 45043732 418213432 893817032 413938263 764280805 644861506 220670709 783319215 512622235 877379838 19315978 560538323 6309307 850408164 849379418 874440979 484507392 579458494 388359079 974433878 926414042 194508590 381409196 984588437 813114090 544095526 384755091 426904925 524510856 101414510 500703615 461592657 387343677 994395937 383201028 218361254 662641993 255841072 62002090 748550822 804907550 351589085 662022509 816851501 480768227 614098242 832705344 571356975 81938162 488345288 554745221 331561264 713298522 187279280 164893334 598002890 103641181 541769869 403963712 243785259 523498483 290193096 75504963 793436052 25674822 801264411 256662483 526791131 482575668 240258071 767710234 893481194 209774032 130092702 352229811 153437758 506134242 626947177 875045681 709118312 122338658 672413315 642424470 794859663 118993664 894993355 6089180 834985709 737058463 55725431 396042096 392405838 944529622 409527692 383739057 106399380 693086830 187558759 75708022 798753333 699421927 826812471 790491013 845174971 142444786 358654848 780283677 554223171 495689464 434398105 994955117 41486079 875930002 891556911 851885082 660975028 704670734 380418752 623002813 531358781 744059121 504503585 38023011 362981382 105883248 163364345 176343307 242876561 827018997 636806979 494201388 377747956 695656352 202277072 820607276 926533977 697992899 41177794 249186025 501821822 296954981 948200979 661955892 184347955 154890432 525807884 70592338 783263198 406160068 742797262 265073274 378507770 328555666 79370444 9216089 996608915 540233729 638188367 614547344 359546571 23962908 582941681 305458741 115185241 360366753 626190114 675299406 311011333 917164164 78050215 523812441 151421741 639985258 86954773 389541831 942837060 614509103 697835610 317345660 323627085 646675040 228771381 688308305 747111780 812175041 824707513 880961427 116667701 529557705 116038350 85675905 231763587 59958817 666727088 64834513 164265123 642921769 926993518 731435051 806424062 552643443 916137324 387287724 622162579 739924550 730579938 271561829 167245938 265841436 470762330 165547482 52111938 796336676 888056630 49966980 363255228 20451521 828362535 940993103 170763309 763289609 904708535 744804381 359383288 975863110 596564672 112715840 485802002 444402297 465476083 842033156 867455620 305370322 832388435 192223523 711248109 789603129 378936247 680665167 940946429 740711625 239404363 988109227 138525435 988424015 211038223 539907410 646776896 295105487 577425495 927424463 455074746 493908223 87498057 524606627 436846442 78262731 94889826 140756163 896401382 284861903 597773041 472440087 329760472 119868896 458184859 14559996 674336125 86638212 369630165 618790595 225689382 250584692 99537773 259596848 382123962 764793121 354796034 759762683 766702131 736518445 253133447 803403603 43734300 852810477 227771076 932194902 413816090 569488110 38881749 186249881 888833888 689176685 667429033 452047526 903328313 311490525 949355652 885735289 75218306 352186213 851181949 220679427 529498924 281216352 182787329 230784168 833907647 167512795 843966030 814062016 501742802 695986202 131835641 980998169 536831892 127021331 997582697 304226931 560333638 863076849 742497625 422536963 485279679 465947538 958297178 680821233 460371943 576433162 474374222 102295513 776824380 522406174 527502830 355030094 276586832 835948234 36436294 792113235 840412232 612973500 323435060 320011488 158036831 93509078 556311276 691810659 744535649 751480495 588778102 148491324 312322864 369554963 876643118 382954815 953148483 502796415 12314436 930726966 230711586 268108198 254212922 362548061 489909483 292270318 664200809 757728740 101332688 730836468 954415484 313053809 45324439 54319364 73307890 538398107 136187160 669304737 904074656 229557872 851186883 913858307 706494765 4012272 416580119 911935636 91362965 17590415 558288940 969953394 597463719 682420407 387642666 613255153 906821767 705889092 954471632 721133078 984307244 648066822 951850734 348047388 105209571 789986882 630331371 276166643 867043274 582821681 723359039 46414012 325484118 105553024 243138554 87069006 329455822 203244495 132116796 425022133 665145037 671085618 175367355 365331117 550093764 261423283 258383168 3371563 925668213 549421773 588474154 628304853 69585017 326264051 974523625 830951044 223203515 495150855 225738628 311332809 855816187 266175715 371376916 898748006 72404557 387688660 383908167 260172497 338595991 691507737 48549854 452865972 623654678 719667048 556583726 678328943 492215769 955604842 701452451 939961237 30241093 817697083 278779705 513170283 575323279 620360939 303907329 972196972 963772485 895835135 590004898 169721287 782492358 850105840 743118805 12187615 444805317 130416810 247013864 254867146 577460170 163983119 199459644 436498131 178424496 759565682 196347592 51068153 145647144 644889116 846182035 11414893 903406389 574404555 736411709 478938136 317096367 754608174 774927223 979160338 846800064 852590698 862641798 551524140 860852585 390428056 899615940 22983271 95321854 327767364 860008735 261902971 196406182 535953392 289339545 127921489 835044572 92797327 460795078 599914377 633217521 180565002 834970705 178414837 372586119 706783679 520697207 30129948 201135383 979240956 799261322 266501560 967606636 972589960 777330799 35880248 368000294 692682523 313308448 643660607 45762617 563867618 452893740 822824227 148056939 624544764 591820594 926662767 46985433 947214591 732369001 163191137 897466482 548575859 397989147 85565805 512877690 776966741 619586598 170173880 360795145 525346710 897048186 367455645 232422282 509857434 14858141 988122924 156315964 677133754 784278570 47707046 396598196 731864514 298625613 914759682 110006361 968161395 788262985 523342188 129743335 370846466 418212594 98601408 632454381 403710615 260684851 866825235 382016079 682289360 290914698 444152619 870905284 869763131 198468743 16221186 641174105 866866399 246906705 669491271 668867820 789578932 412836128 568807644 998792881 298479654 164028612 344624217 281264049 219285142 309184797 877993352 433801542 846952665 616900512 983626727 922112161 474521015 172853977 732519465 188883268 736210541 30191331 496170677 505804168 538696492 725676018 172841509 144526105 90729367 538698953 493572041 931340661 505547081 291580740 421169186 592941168 307354701 41229520 97244007 490855602 38337956 538617070 742509571 278357559 985280451 309714356 174333716 473044686 946263314 536685643 404491502 693720219 663373422 217817458 186530199 447664790 984261543 478286329 597618504 312631050 154255363 202375495 581340402 538826774 422039225 603629525 314402998 466036271 755691895 329828273 799467116 137985180 707021021 635506940 983639069 420758009 669814016 187660908 670579337 897042101 320182760 711219147 672372130 305840020 755840529 2522742 121365775 174689837 686967022 92235742 405057194 420860268 6810977 539794442 797949699 471785490 516468293 432790036 902982618 640314672 515640037 542106792 45075112 990605488 131250049 227972232 875854103 923948492 845547472 249800458 750132614 693217685 543045497 604236952 475014534 400374125 972708505 2808623 537230431 850369421 367005760 988536033 712707468 938067328 321795315 51748435 857036602 152743078 932887852 158261567 596058829 356180658 926068181 884720883 771528028 806512173 20328145 69898449 319792176 291158256 463151476 167478989 873662793 451572398 910724869 607326706 181380057 789899624 72242499 760738525 956372678 719651318 502830813 427133504 350876972 728922245 840962041 829444449 98694873 12474132 71606958 100001944 512498896 780189174 335518601 525223892 150709703 626332242 319528460 160321815 749160616 433385126 887932202 614802677 518312212 700452672 7320013 843098906 516204507 95412420 60685137 337939649 607917445 315316905 507181574 357685053 671760076 800991163 483138993 149685364 331951904 317124251 459771915 711852382 71049506 307482170 692474177 723022987 322398505 644396642 109362802 799547546 115081664 454885933 940901428 841359043 622911013 43837579 184501008 265055054 911680204 889848513 984234497 939605530 141001691 553158885 789518073 365850391 573700011 602586723 767497053 556319436 489225549 968487547 606884996 103387346 733874435 916058304 598411835 436059222 642357442 692141978 788386116 788367003 692961975 479337157 398732754 358529910 462220223 79592912 959513614 369097680 357807085 357999263 678845590 16079400 342428936 662971882 353543929 230607118 504362762 879807932 757463612 99583401 49078434 927089140 159809368 757583922 368027571 933501639 148735417 291476599 896666579 144247100 166510016 284724825 975840461 910780846 452428610 82565198 782116127 517176398 611128840 794461151 435006588 344516511 876757581 486448171 548812364 845044984 849096515 270064227 546757671 638753030 994979214 68357708 628916318 616572999 133089223 747160256 709086322 465679247 875868922 522533421 546800539 221546631 188921128 543162644 542128962 611104809 89165766 49515659 932649351 389352774 816262716 379897020 177410492 920436992 210592360 574665572 879736039 969449808 658682136 174162517 476638276 973939585 113292435 693801972 494220737 712548019 458957073 718592443 476478081 524714585 494673214 840123576 125955418 31847611 69177531 1063437 998668118 58828149 655516317 709556078 779058230 371475446 81119724 754060710 537247466 674321410 35458597 103055122 535418906 143661105 891507641 875032612 563212448 59137133 311443084 263055841 380824588 941978232 983557751 961722468 382746399 742108260 890728390 247677273 350333520 53331225 947737018 237747330 418820682 587452626 759318792 336406582 80087148 547872160 763777112 487213021 382811975 254677990 298370247 629425781 793654564 337416923 412776037 714445584 471662204 956205323 302694584 31363412 284049021 750905558 140472631 104833017 814711180 690756336 940178384 734319438 46659006 15969503 270312803 661194677 240338269 310152064 172168261 742265379 273357673 840199555 789751486 316730529 77329940 871715818 495030667 280801485 638593861 243800206 578902108 875485786 604080406 826465946 193057367 876000651 461467222 519930638 478132372 229444540 306139912 574857533 358814366 904763353 581643490 498518863 21273336 452078821 607938511 626864832 446864278 830947957 949203054 830181087 288618592 553104178 807158928 633673040 263865779 188516699 391921086 119232139 162254047 203200832 622670256 18558042 295041194 893850568 486263511 541965919 543955403 84528364 465054420 366037132 707813744 781541946 775325950 755709864 856738744 230907219 546557153 274625489 890697274 643938413 566130362 426576629 606053501 21026513 910875644 469179735 938767997 938994014 241601485 120896529 430157101 872495876 358909321 970666892 272526063 395487050 230415166 312144393 104123933 682165449 171016751 422457883 660420484 975127983 15989074 206167851 808917220 911056957 724534738 609598963 821651825 308531017 883984781 659300611 14878293 211093181 517506454 863107392 486917420 382753814 24306868 166315104 819857030 193720550 837811682 608409455 141915240 752528210 137703629 875855180 519747275 771732 102027353 276636972 243905564 936900986 697156380 967648023 833166779 641301221 501226466 292535910 586882172 897987148 514605607 750431819 742165288 718940214 804818592 379410505 867480829 540446403 607432626 674812088 758707754 5177892 312734201 111496003 119026260 680662303 982725315 808621929 712340756 826903436 913116307 278657791 766978167 558914778 804332446 381107372 133011324 309650570 239453265 184842347 359142042 305248947 430305737 693198349 469670455 313479805 849052249 787459508 219211058 392279718 317810184 667829850 892918106 528419328 463482640 716543048 985120244 524179952 98713696 929014687 983193145 532910321 401996827 432807634 550758357 861030671 25400343 201264426 466462058 14942829 319972959 765293889 785864971 643322815 289469362 84372359 451933889 391100625 706355201 318534849 503569161 953376510 998011637 292996 627835220 851750841 586886246 284283838 847314566 542012680 755104485 798553902 454301048 613229571 702719539 687963623 11956599 562065242 852868552 439739345 446932674 345626061 547322189 281289768 565054735 988831921 545510178 736393723 826299910 532915826 558988505 687605934 433507781 603428619 975288761 920697464 37623130 629759631 609009468 117444326 651342668 313388452 647186321 85428054 288144915 562961411 376898074 583817085 307368091 530702074 169723887 301316578 604301510 562406377 699995226 698262112 118466535 912560840 536247641 135850664 110337863 919180448 961567264 996112061 870446755 322341389 363136916 628186998 139198636 612009411 867167440 552054527 820843398 73578246 998280612 238241624 993943369 158978608 27085585 134206677 499011715 742604079 76293070 216610972 495413429 820678660 711227590 279071018 528742097 661693253 478386072 715446990 448597443 532826267 771245846 496431661 188110053 475142469 904591814 767252156 722963080 592345236 710565988 16064841 390800498 48755309 423306334 574347379 516380763 832920522 408469590 350713133 372468335 15748409 436312740 588804415 160144335 563788635 448752082 686169541 213209871 101928294 397490974 323026862 527626426 867340196 904946427 402159678 730372554 426059250 724529040 538590092 666521136 837553730 997893943 811070725 871890258 263565593 691690751 330521063 497559687 492529169 386036523 235065287 181410205 17246808 687840689 486155532 367470420 196199216 346318012 66580337 288542177 910262381 641606443 637259911 174932844 175488250 224355088 295851056 455001234 350541140 752351281 160664869 520153315 123146253 489474186 954908530 972349285 904606794 417090248 365329141 671239951 495121990 22165712 762508258 283057487 200256973 665598518 588187457 816348293 175760066 257875142 549950318 706454149 964828569 457518335 57275545 383075609 233546205 43372179 219202372 125154429 702606507 715028201 470466760 245663201 49933622 712125851 333662672 624734699 612492097 173126904 498745563 648448306 453864872 344267907 819982526 620879044 203679959 511917938 379260192 256141985 146647377 954412848 6927613 693676093 513577514 222342107 569083684 427764994 657807246 241798342 847586489 99853516 883147064 438660345 473057203 851557995 975255291 57854380 520160607 306145316 497022269 578998992 775834331 552457777 55476599 626424198 953270684 225368892 260008118 578030245 973635049 543785192 7532573 997726008 488470365 441435720 415880033 41493246 188992361 278805094 695926091 949641449 728470991 109391550 136922170 702320031 674474280 372636096 505523358 273912316 864221535 100245841 128256894 356471694 641560116 204805962 881564915 317311768 606169019 826908152 225627307 739940111 349717210 797346970 619393639 547284512 769090510 610820583 758931069 260179368 280764070 61982341 32438870 565286458 846436294 555905427 924389617 699902493 390537318 169530144 982122335 706094539 108068625 403452593 246175045 303402100 792899111 424636863 227837277 516775033 937543259 662052918 978120693 766132721 125412149 595405560 897784686 470220583 185683856 752281176 519961790 744696089 539259933 929781408 744913391 873081339 401820639 479197835 281485982 293488050 269278382 873030603 488572540 238647386 440426420 700409220 278416336 881918657 945090546 839917775 69154804 999267561 140334268 490436408 286283732 687674506 966212153 888986433 871966834 31593869 315453924 371420893 898220388 911551122 856860430 264457717 885298004 948802411 460091225 757274343 869376639 169681823 670543166 30429442 291240759 257659624 126996104 595884811 32753249 467331509 933525719 36419002 428007416 94463401 68200479 261857854 77266824 595567642 41484582 520891573 750951603 14922899 850893321 137884853 257088432 921394514 681910967 632219078 515018695 766252490 111934836 142074342 909107670 18548003 357747544 681954819 362010319 546669749 215358670 600793732 266665528 324670097 679450645 344829889 666167465 956845560 829908930 853280390 17648209 110885857 622971708 569410196 188727154 512485239 942070079 671245600 480162529 809065113 676653658 462640979 296872071 22892121 706538353 9272520 228343266 665848702 57966651 353915408 183868036 743588097 993999813 213801777 339142291 759683731 207502061 914423331 218041160 900684566 486773991 734413650 535317360 812733728 359703484 575693343 784467950 416131451 561508550 255473503 4367927 683546023 659582262 402369498 840152788 36267095 706167950 640156365 118577124 895252464 113908519 261220969 23796119 802137869 308854957 46615121 489189044 768779517 105828509 934338080 266161428 864559171 700388046 731825121 859434020 548095254 622200293 582840469 102501735 362466271 771160543 294591153 661420786 655547325 402572939 899020445 272964591 904389892 335540237 191079734 583446298 241303993 567660381 932637772 168006471 630152728 50953926 11027749 940490714 60749071 233596007 547843320 364579149 761397952 56146101 923212659 173360045 344286467 163350263 539243318 523838750 338141665 153563593 811123286 128538707 60056090 980291994 201169115 876289814 857421728 371011374 994922306 766295238 232242202 224234012 990306043 269260500 268100962 838729552 95016172 191969093 186680839 892167050 339081196 881147187 192778188 546170334 856770377 24013644 290043943 320400435 212030275 530360913 895904451 192403908 463065998 137791896 967828478 190399906 415579604 777423755 163756908 974955311 775802417 971306023 966949458 669921956 709605301 528763774 314375211 66089868 103570149 783176757 345666343 710969159 66843195 829400583 689894567 331519880 345426081 10508864 971634627 763199703 199926778 6199362 984060356 389125392 152296858 865942532 256690346 614016995 513219784 82981517 675749798 564787026 256047939 498115198 428565921 939953205 253926330 747012230 738940340 263533241 65392211 906047979 927171502 54895325 580960037 880305928 716800146 107004659 346050749 418568137 239465237 599786533 672855709 721374768 207710756 449447662 205462969 112163540 705432412 546027933 631749880 782946653 990983568 627758806 724622265 682525961 755927368 197580304 44123211 425852714 187499836 456250903 513954931 639103910 999181020 70459787 732047338 435769206 267213515 387052384 20043485 847403303 814404447 994470749 818964075 220096860 929083172 867899037 667841835 535122249 588768086 519839760 400605603 894222138 623195754 109121787 850190546 510585610 123013253 236928884 572675751 915732652 886140931 577075431 478109831 599873702 796342770 96211092 851603915 629841041 247080084 740361230 560707647 576274331 684109793 44731325 454062245 392389380 993060354 291191133 235338544 384482468 410871255 692940925 514353161 722911076 653446514 968106241 379706830 289902528 158621338 967152545 189232142 610264140 89218889 562754664 849622990 543975980 658847791 26449717 748235783 131358106 175933228 932048957 883553317 326050403 839511001 333020807 889260169 138218602 351168000 297684078 716784392 668079140 625976352 766661667 637162859 170280219 736238058 949922345 860483053 168207468 972546246 709187031 400152000 795493704 310601807 991958489 312912776 191383926 574801619 510139568 446570462 795954127 801158100 917565229 326524878 923748545 421358729 848852218 380119385 329601742 775053406 694483729 766482932 239258890 732273519 117435970 581161736 383398815 705493777 137840562 934735984 579612236 560191050 770902359 622416637 154496738 140950100 647970429 252812021 967718342 214620446 364333636 78926992 928474739 508285386 948689439 677447290 641978869 5972272 666245718 714384980 208387950 428639834 897385605 451949875 817324180 226604806 355317275 976811040 905333809 805735976 629676252 550668438 298878626 532272229 199111520 988753670 940234329 383445144 745122705 818985814 978749531 872923728 338919217 49358686 570112195 90136144 384561234 525059434 126818109 467365135 111074779 446004411 315228044 920874294 349095434 236237318 726566916 533553188 261195501 390387699 108261904 107651693 144096999 592653727 32282285 995774039 463795506 197950746 690761965 326323291 182344791 254303210 441660022 992829866 514980535 29877127 796084225 616888998 292096774 732677085 761355739 573023076 126357194 77931981 215461479 319579697 782568672 535129515 106238617 346103306 890058232 389364161 437055612 454847266 488618260 217959115 836757934 273109344 520142349 292866682 557854687 618901214 449643022 98454001 981627222 639037547 824284695 45548107 911771499 100670986 520354171 677140755 991582478 245550961 632139874 636304073 579335487 108686475 940223560 859754340 584193939 702967286 172570236 234761419 502238902 449766790 374399650 511031131 605321955 728847040 353573170 922316900 666377326 833939296 671034870 997182124 455075899 495451603 513034384 998891754 346356292 191780798 2969841 394372684 847211030 164476021 114960867 612503282 97418068 276512644 642348417 349678192 27087411 831195434 379579322 542488656 769789949 424547545 85817041 519226510 57457550 662716856 206587359 113059354 68108250 413575969 321502544 420521817 123631205 134294307 715580770 311774373 538929609 291002625 856624809 436879048 607721012 761547184 431825550 478587781 816001511 348310621 235448267 354202639 873860536 567290085 357932272 935026064 802333585 266651228 614327010 604598692 333610222 596110215 488664919 982415579 1074531 297081185 214813018 51421498 321602836 323761562 373430733 93970106 526618427 76504339 518674914 965080008 635335334 798437475 900731298 503713220 447517751 129871957 261130854 416194946 286347106 104300136 369782112 722346444 625356978 656066894 677233171 803215837 495673412 422394733 172436695 790160871 123279946 15914849 835394390 540131214 359071625 56393848 19574034 529868396 995498971 912624948 125521373 765099147 553559214 351499213 319776862 113793774 370304388 614431916 64740499 107681800 257702001 700370673 428439114 4333634 723142816 205491439 83253158 991052922 311897294 405979307 449289632 790344319 222775757 147636320 391545988 142604694 225524995 622636285 751717488 558023416 169716456 110425253 520079832 99353169 406756236 165295406 326428165 39042627 185166606 31785635 939699601 314672353 47429670 637958082 638740716 11547700 569791132 281441919 710614746 125199034 191540686 492915839 665763571 549526498 120270126 425138590 807158306 883445905 88016066 873305706 582445863 731191712 671985059 316893349 790438165 234441819 262928510 156493254 887564244 38509315 759445014 735610745 129019552 87814989 40034752 623236635 801643656 107608290 840285669 790722878 336915184 438369245 680837763 832115243 703771151 976962384 124901805 450261083 744178034 730906047 259021319 529372157 961720439 37205922 612158794 474502772 847678163 332407784 68668614 897556694 113997581 212426351 768514523 656623726 47082752 40812173 596141183 207212346 559661661 149541770 820392379 81372781 247822119 476141859 801690158 863284462 932057653 84536841 216753800 244721624 215007667 764968032 89602064 883111160 732037537 714710592 723116831 567143762 338447442 378147896 87133603 161310109 69588207 516132294 439746973 684320962 980161010 176976352 209122723 257432161 942711723 410330478 969932639 868330315 572514495 20603853 703401997 109008905 690974883 505959757 602662145 611522388 940608037 265865140 178002463 88303259 186634724 786600122 924789857 478759040 113708243 945030795 11812949 513703771 292303034 957939272 714689692 637767093 867387061 803151494 472826477 675571406 461718451 305023437 531245583 310350105 441647864 472263450 166178146 503429819 809774747 191311453 748367447 722033167 256358921 478125308 492388211 491991076 309072512 992358990 874010705 643758909 780951957 128333345 141167645 194015056 546090415 153726261 982483993 949834888 548143753 730183103 928173083 54150084 621321652 127391207 996945165 644601621 522246418 535080522 917221740 819450436 470703452 42842232 759592394 603039561 856126109 684026743 324260173 734265557 176115893 67202622 684309037 87032521 618277336 146052155 341148730 517200573 113249548 698650574 992265555 908860026 51010734 162738892 979046896 628216448 127072494 231291132 125435289 354582145 886726222 827956381 55285612 820556772 201750567 347689183 634732699 277609539 123250467 978186341 636251372 889609709 993345988 762402249 890965303 862861413 326056156 296440856 905287148 884258529 992521747 257448786 571519882 652911307 547692645 799743723 811817769 903443524 3138721 897483341 711165681 904750748 532724203 683355988 35651233 659403995 20647482 799640272 149390857 327456828 804706011 569705222 286407055 262060716 197049068 40960048 140060334 866240847 576135138 253310200 562401395 815185660 253837315 246178561 442966527 576251580 781164781 718175070 169019655 196240975 206553613 794900249 336812119 672219814 181325097 580434862 365546570 245657706 357707479 651946893 660456788 838875252 10970371 37618843 374475385 2009171 710367597 48225969 754008019 380866249 529405481 20552732 351750415 478477902 742875677 911975451 413851120 234736012 359757702 599140197 138711243 823166433 641873523 687175328 773249802 832638432 73163080 578785003 668959146 292373456 13929789 498347605 566400444 505328683 835955933 502881379 32021223 925462048 290448520 45744270 195546596 20615698 708591857 991221443 529818881 478828056 526809504 439923169 422406815 119542907 515534192 732794942 365333428 895334458 302096658 54199843 375895114 836629385 999857545 809420363 306738686 719989325 530056364 371653736 763664514 913541794 577419688 424042398 304424475 586096469 188634491 268278534 798077475 912660075 496239994 976482349 576518536 657492888 641041356 603163026 976924491 695745737 302857708 192587563 282274051 847984283 404443947 19191009 71600984 549969633 41368875 141112591 276604040 422801186 249229925 719705351 663752932 750643992 86027940 318495629 739417428 890552626 653380488 812469082 684911055 849559826 748689668 5877146 31177188 975506960 787738593 884827246 657468725 704220086 657761849 315633003 837344758 595246147 783449596 984424473 257567602 390758184 232557934 520127094 238173318 747383181 410665383 18576240 985261092 990225101 315997458 624433006 329954258 524200693 50218478 918986440 249827369 646219081 583004368 235152458 29928790 527057600 106670879 377926582 804726171 100180611 710110615 618140735 787104207 293805170 633864903 868332814 414323674 244538271 995030419 236150208 743202107 654952656 432847282 648494822 119271298 199514369 599732272 680909443 852970197 111179232 345092078 910896786 800049263 477876816 544727581 277711230 935607069 834270438 842112711 102215848 592074175 66145903 319310662 454151909 386183629 588664936 918811851 821072125 125760463 61238660 83600600 247849517 805359076 98868266 897241030 227144870 877081148 915849461 77341504 99897356 977057182 166831922 333394118 140177911 308556771 717035365 938051628 162150005 304782969 400810948 721691160 303602822 939487457 204772538 465418375 312412831 671065904 891430758 30727496 548098856 280541330 84845081 618614399 288513790 385648579 962823900 735974180 286135281 246082452 874021352 181890434 962371911 996225388 51650603 198616504 222558263 166133188 625164746 330717755 332591727 14202026 449874073 40885330 37361295 304815167 421658789 235587737 764054188 766459193 445585067 836766591 173973198 307268962 801661086 872125895 992162162 151712279 577545765 525577995 803751944 472239817 326391066 24616500 218985334 636586367 613681676 242450435 452844179 153331539 896170174 454537612 462505133 406184688 359675046 427838646 376542724 113194267 577952110 410109628 99620940 586672935 550543735 424098990 281512751 626560383 814141009 960063985 32322761 444113440 613797189 800310971 280948778 990700827 391357899 223968408 762635224 966971160 952055828 732378344 545340490 468793294 922967937 792252766 99199086 886887564 245670697 7692418 214841379 734220980 194789975 347937328 662716096 228469818 526896394 198651927 46462348 576183849 633382516 28817468 65260099 174837534 365866876 570071412 15283607 958122955 848931644 976272877 217497005 229714293 95545731 416640933 244109980 309844087 150539603 426222833 538513138 599879869 86019940 532274424 806124590 819479626 549111456 404288054 895589703 307565490 544573093 653001978 895202083 197884064 229372486 136927719 833489697 4190802 27525642 879867511 431206288 898860568 672969900 725373811 577425973 680475608 781158809 437219196 202592969 441038989 106286453 549969798 458767737 299790019 728933526 849943896 886366052 281220381 803226503 159956493 268742433 349974224 983974279 438891157 589709110 97128997 287771911 892409397 307569314 943714555 456376368 1130243 664024916 171901762 562528091 342371947 231211185 455175553 255324566 300055980 825569298 170647888 40519462 168629340 289873219 177131487 508034047 54862048 718757638 709722222 221750862 969077493 636544910 920019667 253593328 644332074 886771973 120862199 480257528 803254371 440419334 718090841 840294189 77661784 580163619 97029769 133940361 535560723 198443616 284174766 595726523 812138870 212042678 758913537 185503654 404399795 994010513 495727952 204516576 61391058 875486291 20852092 205659188 703946286 306040271 946290427 96919584 997172472 536474062 886131030 411276376 561039283 329583245 493698988 165302849 136460214 966126397 497074990 566648695 840639917 596467842 335108513 870721607 318069273 268069109 293614559 445656117 151804363 377500578 487448150 347959416 204100205 457577098 254873479 643900025 962624761 713756962 244653192 169320536 482356799 866092755 548836227 873324391 31072100 186681208 495705653 618679981 632745566 939238371 188952687 506341732 494943865 711444056 246134425 420501882 596475092 44643599 464087082 436938260 38464741 313182902 320749617 108575751 942326001 352125678 753069007 162582110 952960661 92864713 538696891 594723031 670245696 844860243 266970045 543922789 794815670 403267078 520600883 80934319 377318798 10967379 310781839 639987600 48334773 318569248 897970646 128599445 450292970 195203909 451850786 2322562 335547711 512058382 399453730 822195405 928989598 941153468 611873685 556423457 411251778 56596484 468126418 168581341 572492602 182482062 368887108 106216595 551605993 946297719 542744038 774170249 810721417 657952463 32574923 58746171 436882083 220444188 944574616 881411031 5714840 964323030 954408712 506369215 283415068 4483817 786543975 72929803 536794037 665238838 104756760 193705988 646552384 515182609 414274576 138729386 552766317 563222980 147661144 764575536 940980030 784347403 629433742 478679674 705536140 784846743 479316580 689284006 869141122 680886411 288707616 824639872 300963872 238160130 206034459 413957644 956881081 913321095 338134850 868959488 745666165 447061915 665418392 51834951 902541520 348144690 488913842 132963455 591186713 639871542 253526841 811409276 417724148 866986499 940330860 341593795 251020504 181754089 756202651 95371791 594321042 952753070 836784557 739354576 574696897 585873673 316121243 157341095 991270999 959232552 706660595 634201836 624652062 53459243 366023766 932767528 638050865 416745894 149154041 711204507 889535870 183472931 588271656 862864055 776222027 821862302 148110015 744280739 680092334 100663815 800922543 479551929 714135572 303194820 806000767 496994824 125646779 213668908 445737416 773624018 231658039 359472396 40677816 694128911 998819569 511437094 219467920 218668009 74827427 357408174 325453094 402153790 427648477 431006667 987507044 265350689 544641412 979266844 683141831 798841689 108704077 437502000 800269024 614897121 990753862 231448332 818450903 895203686 671821134 945339818 515370723 786879692 580045208 737222260 977510099 37857962 232146220 703434957 382224520 896923081 776041318 507684232 498413432 325364136 601761653 655729007 735739949 645790459 708733149 148164541 798305988 408047144 468339702 890969252 616404847 126582217 968681578 407611849 308290803 994722604 853418939 433626307 16607531 750111446 835015611 356020127 858557315 998901500 623555345 568205663 423471997 886149640 690592187 239901302 911145776 68495642 21645703 170175309 648165316 157855876 526627480 96014530 490086391 610583629 270073831 121997476 193815707 579411119 922798016 396019256 751423765 483399834 42764865 263385783 264622560 453082671 541926878 714546637 705989896 36839749 474227168 778038300 600244912 495376359 965713121 8256439 119395724 708908243 933820753 121560743 481183591 144302077 673242612 506173802 266910623 580118794 202318434 953257839 965994916 377942998 344226182 185456539 711417725 58274542 562802720 49358535 40533058 769789462 94390083 744902719 393756323 688937157 625846487 267744324 24131423 516842660 201891352 741206155 546189262 696055315 348918805 454112445 623709784 305767076 49055794 836152565 846074108 57026462 520080550 615095877 721282506 184250491 420445950 830576433 600380265 500643178 230682264 379052082 773979538 220003790 428695849 803285556 814690706 751336125 646024504 302363928 700203212 63613313 20212896 513760307 906317109 43288603 779449618 839150285 202179543 484226491 909448849 140337315 842245454 627355977 551711732 713336934 960729166 999421408 994494311 717892666 809228827 987347277 248146666 220536888 414169871 762519188 144875216 53273324 95822103 254774379 121287234 51341271 162524214 502090174 627313594 895569902 934824193 199707689 322860936 669051417 678467362 46926977 269439056 938790325 928682966 883690827 393677194 310415123 193582703 485800771 789894145 312635894 683698898 835608535 628514901 234725913 998424569 966210474 228239225 710798247 785064050 647285009 78718773 346200513 26193630 906674841 302889637 582550780 73322611 802392447 853671608 506469344 638218107 339609654 911901362 914330474 831251411 864405221 363078314 984176010 904668525 16860134 21547533 794143142 845027534 200281161 657421849 548933910 188470672 189243983 417205347 152933285 282544353 173954031 914073425 944690710 634905091 550582612 198744737 430422173 491942090 423497564 271337952 842077026 245047329 469964827 908903668 757231874 179608197 754749270 6971027 173227789 410303624 551716617 59349705 257968265 860450127 632792546 480087926 169192045 828442901 4434371 626857166 198129191 917334438 835449411 42108887 483394071 469271780 790152494 763035886 546103826 640962886 691880193 283827779 100581856 107819604 296563055 863137880 711055293 371058988 486392798 399120005 420751068 935637248 978463210 814024055 106012127 134236566 708486626 692220333 598038881 691791815 937644358 947375610 439172204 27459584 551758159 420658182 132354307 574733508 496915303 537814221 15743130 398408487 280934828 393658142 272826520 890617172 667564402 534696477 278147804 521778953 282742206 309604289 439945781 990590486 999231947 740892503 724088553 602288866 976048009 146934781 842794799 392998118 504783385 270681384 244404149 628069167 16161362 925577502 571785754 433286880 51863871 218394493 327230837 786484654 418579103 512144306 286680268 785015906 408143204 288598915 810663326 265278299 418771509 357853574 108062810 947372297 484068331 1539495 66986725 269464179 599908375 215425446 326813976 110379954 499471739 389788566 314851136 386005620 724291213 679885920 596993693 568248954 856467959 101701694 27431907 779015706 67627289 71079744 979296187 968804541 855670918 190379466 290490179 499653474 627140226 150621460 251946634 270575898 909777803 626982313 624979221 133749642 978552013 14496232 124942429 323963244 699807916 981285510 455866447 257229581 347244350 384411403 725688266 350597329 862652110 15479376 664726820 102236587 909106267 921408263 222743206 630537637 127045142 19447347 110684939 915186270 531424744 770659243 191331333 250463111 834923497 178272412 335484088 383428965 188358378 737139716 818417725 196007251 636007148 258471736 124602401 966970428 707299239 695751262 377776355 912876837 308868868 640994036 921697913 723160993 102019491 789579335 491335884 136300123 203136854 293878269 139823159 901882256 118513572 159948428 944992780 853740434 132577351 56396224 444131599 45871942 86400942 374486841 685137913 220002983 192614780 33672938 135375862 507952449 204369159 717205404 1813799 180597942 614952922 162339177 577252641 865506621 53655091 831544897 652516205 99449374 476023686 13795432 184365062 912263735 536715000 183246070 199173086 259785850 666894308 852846166 475172185 934922860 928133722 996677831 945044687 791612072 126366619 457856222 503613711 794389338 541941406 297789954 410565591 497201349 22678159 270071535 309078621 176869821 272740682 834817588 664344521 933344302 44938724 532518069 782139832 657850259 587734307 210768425 862927035 793384319 84165633 957501340 154301654 510304280 87238189 485356015 325193729 406929559 161933449 666854483 550739626 30049225 48976301 606636242 516974641 764529297 321286755 834616006 827217259 831129188 820683305 26764640 620678432 936150475 791679922 38113826 119965837 208616676 685068645 657191781 502964195 70471138 180250076 350896340 248020678 464648073 166840935 634050543 71041742 103261618 836381063 655661706 362155017 568344525 321493363 403384651 910462327 638142810 438338198 894838831 979017613 279529583 713988622 120897797 788820147 577221685 36916271 260628465 657809862 298546539 220342014 635132395 697418903 929361122 726891191 487487294 36611689 682934271 760030792 714976777 574781559 398572348 199912403 520617153 38856300 920039590 193150768 521586349 497381096 387888736 989269096 782188137 204790786 487765791 240820795 546664036 420599233 497552045 447159451 958776161 895157922 34606695 877538607 612258042 481236501 799156671 273314769 611577880 103790336 588781754 725882641 85887868 93168186 71530610 743793327 587997754 974040337 192731029 212025380 479253561 32125893 147443940 228599578 693176500 952794122 829278133 788550127 594883259 874373002 46823026 509694519 506045875 296167009 438522136 339494199 476339666 730688415 23854009 338309739 451059364 29334474 374753530 319369728 366391689 44735321 924987542 137246042 547129396 410233146 604136921 137862032 698039085 768130893 831234597 579911147 15097936 632935654 624834928 795436651 837952332 125116751 273311428 253657154 33603621 75617859 179851454 921197654 276715955 988078709 441365520 546575811 748469793 169078791 273332224 243216471 948398958 63258899 793207014 840825621 957412335 401346086 710962866 781604531 727822027 453273279 28141923 666887195 137125502 618680277 721278865 28026094 979696471 558318158 385621220 457110524 205924857 224101769 47852698 311546317 29641694 746224085 423202821 280577819 375343567 832037111 452475147 318037334 114581613 420615849 573196964 576965919 447709868 463195413 718221152 303193805 391459410 481932638 433040863 332303083 756446333 549948439 92867926 61896887 720902682 389070281 48102929 392223397 558628975 604003698 99762155 312088795 799908753 577784577 212758743 716858290 97366767 626230747 301652827 643262523 137249221 638549849 563058448 684540087 883217322 702489928 317613347 347572510 608963331 539075175 336465623 550955930 494427021 845122796 182913025 970627849 999654615 560519936 772676490 466513278 699240133 429943614 537587697 533591231 239846927 336277816 770058183 13599433 407935167 279972338 221962800 77750856 307935415 797938277 918445416 403512096 734175785 812025853 285791548 76135655 647693853 578469148 785281933 182307176 252456686 719523733 276429009 321164577 5990093 904144689 998230162 384115141 894799933 994477101 982029804 559908540 77997717 168805306 595420691 161041310 115833985 877734012 846778059 730946748 615664769 845046540 69860590 240041367 103542121 493135478 434826474 402770279 311412448 575841980 757803328 872868245 979361761 315970385 451288838 101402177 422854972 151793054 778916966 746354365 612784662 228370816 347768605 223941135 357122661 257293256 644120317 974998899 737098101 782353594 837886059 57528535 570443877 180699278 860934369 676262750 200256683 866972659 503929709 805653982 210056844 547765895 514876721 540989281 375556005 399669088 550466017 737258920 520594789 982369670 592687176 249166755 208753040 291623030 58639043 632307194 506786493 17113249 349499332 616161671 712409305 979975658 206172240 645039066 839351715 686630444 728611970 849940404 117135149 612538290 830017542 663329676 814114401 465102269 704202398 217486349 470929274 38038786 119013025 720153750 267747463 613265961 899423607 316810168 477807595 58423887 117850142 730241468 643123935 587657605 393910184 828869915 494332399 807325518 396701115 7541507 782594937 474941733 697714447 509507033 473461297 72454389 575070708 201184178 555071904 765418399 761127625 610264280 309415584 631236984 155764358 87485003 200476642 71216328 515307827 945571389 370862184 894070347 527130223 147904661 941528075 841434036 435355626 86500205 975326710 107124262 650069994 63219604 364983593 459198137 521342922 418332429 279357175 410571515 735967351 987810190 53632904 328190316 14472946 31422210 622398040 726665216 206083280 966642184 313712310 700263073 399645373 122344561 346652230 313770411 908335860 678803909 34326911 313326190 563881417 674473407 705143342 175014832 777459743 3348685 698011633 678757928 544391154 645400209 281902269 147390212 527611087 11646050 615169881 460549732 901431383 990496204 541896673 603278300 142184640 370033932 470810691 161746166 240733523 298055573 414601925 564625838 67202287 696454797 795043453 326292724 34241669 150189392 351975384 220488494 62215066 395094508 240274708 179898547 359456456 184709540 54561989 54333521 912789564 786854254 374475860 484128711 422588986 832622709 844326011 228301388 21785493 778882711 348921802 426761478 531628599 26779879 229524773 735171988 728544159 398705708 126555716 550345349 80523614 51233633 806263346 568107999 533832601 625355827 350094799 910499225 650770314 274571654 399659086 772634144 329090559 675220464 844556215 150453974 888012762 662588 105380710 245579406 743672975 308535273 503974026 137395218 106305705 433141673 310460071 467521693 476932677 287664610 248813077 396989026 132500 311010096 292651134 168142083 396211038 712495841 470874980 996169242 984789370 463228279 376930968 188468659 75042647 271936298 431662788 620668624 767273591 73773156 70941667 580974564 65754862 687259715 6011331 588638041 520937447 62045978 125716618 531197450 511478303 360683760 957932846 134995913 393544808 481567231 622028284 64136154 5165608 446798646 108852498 188713846 643581911 878440120 605078756 861431370 526930821 37528667 250433211 129198325 550013265 316080682 219014449 98090893 685755891 26553572 609619126 519266843 878995763 271649914 240912910 639829274 910094959 424593045 698783441 603026428 896973593 433654029 374282218 337713061 862511927 956941427 632488985 824081646 541061090 236753032 236984945 334278435 313435591 698705604 547040474 136429701 310656937 377489616 470791824 872553162 184840412 54237964 578787490 633985432 368298956 927326474 820111476 441077517 231527028 661486096 719526973 746900026 923184360 500599195 920763274 415856547 673414603 759453655 746767289 725197761 866845401 874471463 400461439 912721280 4272479 270769059 380539491 722397377 789519550 663992213 605861696 646154969 367124716 890790907 462334663 84275984 806209266 664474633 832604922 413164835 722373999 103240868 13153971 816709571 229354259 222669031 665782811 846386964 89805605 390579362 641775923 773946671 936214526 75992790 63507022 418374816 419511180 482561594 675734165 650590440 707740112 53540793 589430402 349409532 209324896 562345714 814216293 275850180 841042405 267933879 614921442 189549213 690427550 967728526 132756849 363865560 746759900 160715315 181163741 984565049 979234436 856144916 161494470 409965176 604392592 739904467 760365855 590117827 862960526 339105736 304045232 165679674 918297119 871355005 242715029 383360114 595271545 916223280 162993853 474255603 802776550 214698580 272543084 654907066 722240323 547299344 297870777 8563128 94409602 996371646 305527057 829438800 606971688 153461101 928277170 272534237 392776656 443096160 945797169 616501802 605331622 741482893 207173620 312508408 9884908 945063199 260136377 191838843 844948088 879633397 798421261 367067613 689328692 504068128 586586582 690415802 699737245 580255593 865071818 836347555 419275333 634643401 614479861 699903131 239609426 595548654 121154871 809332125 906232572 80630716 612060868 621464339 298998290 435437258 283036066 623859552 494080374 364876513 253625390 95554136 494194588 514406017 175079575 330226627 497238031 934013788 570402658 70285789 793613293 30264537 894091236 390639577 463708262 780446866 721478347 600110169 158726976 403836630 875703958 808366072 985549654 871110440 183413784 693281728 51713812 770453694 273207033 775083956 864473853 685460739 836093493 986979144 99131430 216946709 538676379 4405731 218486456 181107015 156604751 590882148 780937329 887478688 22453832 544756378 565957924 475365467 225864915 797619147 313312052 931465573 166902286 86559534 644762141 545812451 7453038 698388337 374953708 732714665 564501305 530683443 567815361 329384643 360227597 905623179 530482516 122162160 185962583 226597759 234446702 924130594 794338525 62772878 532081003 826825471 648640309 654724135 288902591 458168419 609690955 37557295 708227950 916716764 434056415 570948224 477900945 143440685 414418436 320873316 272695512 730404299 912497059 149160990 958591491 599465827 401481718 453015905 237772392 433576786 54880525 437157847 659503473 282239019 489136460 975558299 258413594 130250805 740448235 370427839 598931319 314096106 255662965 675440327 852664620 101317754 234080329 778778412 461635059 546061894 4565788 253226715 925539354 906569573 851747701 741175475 259627522 887286818 88312880 622275851 139609249 517227899 769347580 870206505 255027201 683385252 867492317 523057868 970611135 885235330 957283242 973430946 449485196 573550129 423799440 596985043 402902960 592944511 890523533 453373557 667534722 337122414 796341238 128269589 769830897 373034678 289143793 232694068 958362110 635832896 468568316 223638727 31599935 255883180 790719076 411407799 706717790 108436172 386040783 295253087 134910360 700942631 805320627 83571217 512216383 965932663 505598428 990572433 575501881 545285419 803061738 357894552 844173438 283157222 169079248 715925330 855182237 104777982 715561047 887953121 620718904 957454590 935237529 729088984 7821699 990180132 925976966 653692352 219510217 389246691 325335650 267323030 462536423 972125539 519056197 302291787 563471823 695193084 298674329 867539011 406223367 313560767 926312608 677997527 538837543 121897709 102174188 135054035 684979807 278400381 963141093 243990776 567285486 926736794 603383623 837087099 7936172 875856163 785591457 599267204 618948993 792044330 479891158 66458800 829291755 486201461 526498208 32828816 575809661 217324544 826759176 199516200 632030810 760672633 87745263 549246576 436494270 113889731 241295241 325609174 273800053 571429748 676642781 93381307 569074274 354229590 80570694 28259057 168752122 245497577 630978805 435434563 32572102 557130976 171542124 671956974 31845093 416292256 964954628 304918048 119545991 446001604 620364648 377850496 379661427 128301211 993165848 559806629 629738114 260248744 528041447 540376221 12018209 715922466 246692222 122294120 197101779 847614834 473512663 969836411 876921005 275799991 791692738 507468094 215456473 561214277 564683875 270462350 346962963 327820833 507469746 819153468 729656623 295980679 834763257 821879435 749644689 691361637 939629402 574329782 477784499 374303453 296901703 691487080 954039203 121354951 655935496 189701698 652829570 936756524 353432889 950222424 374796806 304128204 314318408 413499828 756146424 176177561 934816763 957567698 815974839 322800442 573100009 671658786 172643764 387675017 347768572 483540874 238527220 140088085 580185077 940174561 462450833 475320225 54033896 147670133 152604985 91081379 811809979 65473670 478988205 329799622 593387948 575386825 538633540 386703720 189250504 522141925 933387877 928398621 58214005 851872505 646730000 480597546 257904617 259247124 842057558 870459402 521877936 364651708 282221021 800324333 736823082 91640168 721437789 773668404 379292682 885832454 487252005 743205111 462606040 3045750 314702998 617610879 498433392 167280652 433849767 643784396 758846849 773912594 655709280 911302927 315660047 392542532 826168671 427349553 26083058 138772562 406808406 218242379 645840725 82388321 749024650 569391148 65184823 821575818 734985302 775602647 650781677 863181402 73046438 11903233 105997214 864365649 215834493 770618007 341955014 774780259 753956975 588274742 159339700 227477626 413671975 194904241 567499019 883015921 912762338 496823439 194748997 776521498 495630579 102478987 318368043 731240634 543842621 800739346 548441694 905196936 788357564 253365192 591042770 398384049 10094844 69360643 654436429 1705047 245298080 867351375 57149421 463029261 720499421 836669160 880238751 110854493 370700540 303747907 832244648 337827138 954596315 724961925 741672224 537725358 975999341 472166154 169605234 553046533 570017845 181958624 626297566 96309152 618716111 784134473 681577976 719658060 901352296 321069373 29136934 662509768 398402113 892275685 293380901 218941258 711508527 281893921 854922884 843996667 263499806 860547587 266182695 617753974 600878218 197970 848798405 352486221 708503556 992689160 674488939 99938436 797843379 583279317 208005880 752630804 122864080 726152601 424615583 810223465 621714985 419203565 115297896 981171941 878618271 603530651 510814894 495726171 637785512 164607778 415045538 489518996 677892301 899322419 262590407 975648974 226115885 358993462 775381108 523914039 315662328 644955334 718451285 188800886 158611190 630069809 243069930 155604003 399121662 337064441 152634375 886484554 802689663 696603989 370261074 154302957 131992570 545895856 978916297 363652223 654821509 505747241 292254521 29579113 681381450 150801682 40855496 61425288 365212934 980385394 331592555 383508141 151430794 949107331 976610672 934055964 791486782 596527412 263323382 730789646 949488793 850080167 485062000 838554159 254685610 494702260 485275431 742535968 783646610 169196901 545370549 868677878 939488775 657801592 136305802 451726521 516585939 868056032 726113642 918623718 459213651 796073797 266275052 660609262 709659385 710387327 225178877 682538933 917976011 69173022 368833883 353502739 372326369 782727653 396615195 758143574 72363754 239273291 663422500 690030526 177770152 950343161 499014578 963561728 317607791 568033102 577654483 856458948 300080298 677735902 107692525 918602279 924634967 16156654 336511542 187489082 574017670 1222650 129210939 745291137 283731933 9867056 704593498 118471796 434357783 177821171 965952839 714724353 777024384 497493080 219622539 371977992 612102267 457506988 909110528 252458974 30094332 478876140 25472854 378265291 140957711 227339851 514779282 678156428 923312207 878416816 459155594 963290833 76231791 901952053 829397610 394194112 543122101 733853353 751933745 86284656 672352890 251482895 997799477 357846127 801276587 402885405 565098907 863884349 614589003 966579902 383722720 946132175 991131375 341519504 964337491 321801740 8108352 868634215 188899992 278131795 488970621 654918600 255857446 689793780 436421622 103591023 30807754 407868082 716098450 623580873 760026914 681527367 991799370 375295611 381114915 588744416 687778219 239049433 262638740 854395549 568347992 475643759 193858193 450779411 488038790 941433980 483506184 499025353 350732159 247062898 465098559 290117310 795121183 809853816 800553804 419263201 530411098 509359080 588174491 476865176 327505332 866007249 497074541 901128762 267080391 398611830 118270547 147595413 713104321 8324300 445223607 524096872 141081827 631457280 80664403 615199722 95657219 567139055 68023479 495531330 49970187 209338029 834385863 436755724 736886648 832294399 82534459 245983194 805894363 310775264 745887006 362097073 959465563 881997312 397385552 531123848 65788210 665970496 361138180 838907085 440200236 530136119 941199170 972957663 822058027 498667952 381076070 578437268 151159461 30289194 583252127 766946229 493784612 523010903 819407217 467187326 59698373 118653085 315246900 960131871 614692538 829925784 712732562 704068413 234920136 573727126 712086029 870505073 174473930 174599961 806029942 586078920 564914732 131673177 88795511 720697665 985758832 812010943 145043211 216397906 692535212 89181291 290149632 445491812 979325706 714153648 893173628 563063378 930578248 560176786 460234101 597102574 748361526 375907407 856699191 30055036 705651770 458496211 376293090 753053493 842099407 125417026 795177194 625160646 792040193 983960690 820626581 67954382 179082995 279103342 554638977 520682083 828848473 184417780 575502619 386670222 662169598 11101176 7928616 493894090 372346944 366661407 864045120 592441737 421254543 691205445 90191694 69806255 630769 921269495 619598098 141028885 275585 12746234 325705887 463895815 940661739 289079746 107928029 531259335 905091314 769378300 222663176 739689992 479271147 847351044 862649391 85788019 674262079 443961455 835072950 687424549 974104813 687083907 7231188 137125167 675081477 84409786 874421014 357795605 44269870 803744067 663915482 632381520 303631649 609485185 571725013 302664140 817184811 405627786 325848206 470552938 758959023 790723241 506308832 102129791 793048482 741257948 390535036 504101971 968602381 586781014 899029092 280428708 570699407 179020030 573028977 476213792 377921753 925413615 700136399 167477486 408740143 586982134 208323708 927912742 253649901 940219415 899327180 406603092 960326912 495710985 917338088 603107577 238834793 813094069 445408330 49120010 437797054 68277947 190711362 551176815 345302441 906833388 747256948 494596741 438586983 540404433 575677016 449137053 23786057 903771683 736176313 175296379 123666742 790064465 667140663 571076567 848551464 788538621 656530885 777215711 118255530 416308607 823832363 847062963 550674529 712014688 672059781 131541736 110467456 851327968 10109890 670290694 503253330 153071474 692747557 941626122 520045492 727628859 722559944 158631141 695477911 633859222 876034324 33698810 547583107 723075986 554729547 858344356 178955023 309794162 604371710 559756206 218638186 544628268 157558167 274034393 267850965 159974891 568525265 667269465 794897191 997252494 708651322 891145560 500350792 555053862 720703928 868947826 599454134 767206523 294872065 812014904 600820483 222373256 16127521 900462509 927848532 690827003 233674744 794139596 460714468 617362102 72608186 328873216 86520703 696583761 568951405 688425897 628899591 981057941 205476974 759646622 188420339 516979970 717726188 780148902 200164043 516021322 315387756 880908030 881219501 765381332 492573251 618818006 3885771 969894970 776650015 197602772 697230827 599995595 819613311 226260879 452214757 110977546 559250742 532146709 194725161 210966317 424547052 160316261 319757878 237714334 561653917 243658486 564418084 274123646 81965848 8630831 747224347 831405085 846774656 473436396 217888474 522734723 546755023 471769600 537050417 8300011 746702670 523653549 318247047 894107714 854095647 156655149 276595285 728247468 127895219 525065773 285324712 922149376 396441172 273653581 572060067 39756615 616989085 424503457 902454779 160836160 137375228 87105331 143854969 632568799 557688119 770290814 601596028 220207818 169150436 381021428 223222132 39978459 438355439 294463098 410421096 449621665 779769624 605974247 418436209 312767966 530909042 825039496 45613629 710677514 337682406 565750431 725724301 655233999 810881198 658889695 713170870 35936395 118937562 384222962 890265892 605935825 974555598 187886835 227371987 278967528 48339394 908989940 500459732 698353482 906578497 790155130 934780878 56540966 103140778 533864700 281759610 440508639 1767090 725765223 889869350 965870732 561703648 484411037 166960179 376666742 431795472 419318769 261809816 830855068 628132849 346412716 170900316 320570418 725217415 177567628 606155807 669501981 466189993 64352832 156214930 370567033 80231300 520539117 664903930 879445267 499473942 255801260 31834801 158212336 209800116 471405321 225876133 750448836 896076420 721985157 836628952 10353788 739897860 49226262 18309598 297348277 186315649 270688162 106171234 517214018 725511841 888927111 985448097 58922409 297520090 623299350 131412973 787575719 85520120 556494611 617561131 607871912 226218907 490525239 112509269 999305551 71225270 792008622 830521594 623493108 668481554 388515738 552090297 907413281 786303176 577487246 776275657 683795733 691689419 330244371 531755124 651886913 340872028 627656742 44728472 233650381 77274260 371833784 389304357 488604436 147339741 691411501 474054305 752540707 862148473 923608542 478497447 498127166 463154170 345541015 305846371 815614812 984634568 5636377 875919896 129503142 541734559 4745625 118135450 378360316 142009358 716659263 941185492 139735408 562366968 358581416 520077124 821591240 334935575 263106917 255253114 158451456 992565108 882534522 949101469 344999878 261010672 129249760 717709285 345037821 501928383 515135491 477235234 71498810 229763048 699300932 893010740 953191754 184582854 736473976 198473872 134550698 88544138 415712359 586340034 452416781 910369718 169531470 418730981 20332762 621919651 704021341 804726829 114536620 936400124 931541818 483928157 970515920 836299585 999158141 717705297 555973322 195369029 605863474 527385974 104976336 891277489 384094298 59708749 41703757 470306431 229660265 549344236 844542048 71342975 180261065 538144892 868415322 128849365 828605526 640692668 189157444 770671225 423620833 163302012 863858519 445956533 196755885 359968291 320989057 854176683 319674357 84498730 2355431 885918413 195768164 743694751 896823133 754737251 410329243 829664675 754358512 64679688 941374382 694278636 484834397 484769069 39711911 422185540 610210199 129709461 32022018 76682248 78303813 232088535 733469488 395716777 772924481 6950624 528019220 10509871 943419930 848402798 554367625 592990129 235969939 489811606 329623257 349726174 659932706 732546622 593476167 688864119 517767025 107237796 605172359 797830610 195084769 27829717 983954753 771365721 123654914 57362487 103593617 205645321 903346716 670257408 101692810 684752884 797045418 915972028 199444654 610738623 33565402 142836683 682985079 271019300 3814414 92973792 723235794 331545457 161215325 49376643 947738271 171962888 790595090 205256080 489693234 320255709 922773036 888777910 312546773 469563643 985567965 606982393 446548804 917319423 186987788 784368945 78606639 649935771 254819795 148686729 414643643 984456213 863211777 207621120 661968130 249321157 272427416 576156395 967749006 212836250 163114064 821082993 508498658 661095574 44276755 567547406 729290225 335935565 67867775 965865232 368354725 314905195 223782503 949880093 647046489 18744875 467672146 192395691 719508831 497796832 260954875 586272135 292816252 278476912 159865295 25913167 355286375 786831827 304051058 76154360 454040909 403383705 709352506 79840584 321079888 877666401 323737266 927645276 929428227 629756259 591784473 982034468 362194416 243768039 834253536 32174050 606929426 809178316 430320944 225276847 882715995 104352002 382639970 198169334 875929391 179376144 208312964 29460727 39255783 29647247 909650139 660650309 822286416 857587884 807191131 932451913 375276585 491631786 597501745 757435325 150514345 603960670 317376058 126282033 75727862 93505969 585600905 224780425 833133230 59933730 116898021 154382460 729176674 286487361 771375176 94674199 399229974 208566837 330348129 651227193 207730371 795588919 574782739 709597717 936063958 253621781 198555636 936801202 96683950 158036656 927934671 426559854 428942369 239846782 338883618 722133879 622838007 126558217 166821281 676310609 538807406 489260909 435575473 214388563 538140085 878412510 984150766 994112809 971823473 878176800 932104357 660489299 147716666 675444237 859349850 678936997 761564959 252423443 340273220 255024837 202283550 85626803 827373772 115056817 387009197 830776067 680158994 738846774 685220916 13713197 711926888 468642937 947787408 572861422 496942548 238681458 935902866 957857048 121301138 995528300 604940414 381127440 397746320 691360903 964217485 700927824 77249265 563938102 282954603 640702694 137543307 224010434 356577977 554246900 387699305 197822660 466523532 382556974 30327881 127259311 139967724 497416799 637627166 390429764 546965078 862998756 27655055 184801819 590354491 903829295 166822519 360405537 155849855 488195141 167548771 756253716 16647418 205181505 681062167 246825993 709687290 10542799 63372809 933695719 92566720 23679409 236946660 342258410 800550910 181647166 887393031 548519968 675715167 55967966 862456068 142377199 80730367 625170319 532800289 305556621 547290607 931955811 880967642 526098311 50614451 167293696 681295453 335715899 976815299 837536286 832634124 954098013 133051405 7848461 211115007 278429302 632686961 529919276 248266111 113271904 47501124 971366003 573801612 399907787 513618382 210988522 544418648 664535484 831961548 536537903 968362442 369839113 522424558 902461941 561172989 761911774 144538202 974954111 445813950 581862458 967359783 358622249 51096593 481519731 123968227 321090528 90317740 609697454 894142478 919655076 186505082 25734760 526208157 774393869 659952665 915968240 525451384 821336259 601110877 82762730 596884987 661868805 128645835 138364877 68375673 905219363 240164894 488041062 669092532 981118468 535170502 877025107 728804711 354138017 960304484 944903305 353385404 795073928 733489232 602477775 75748310 81737562 603062291 579131968 175659849 173538637 114444525 557084877 652700061 97113770 786635344 801919161 121833678 188117584 114770275 69872411 607864783 252733743 970544000 36207711 111945986 631556302 136053942 183913157 927319745 125476807 161028679 519722721 265391065 80413253 856822571 943229977 797939722 821303436 556897932 209983787 615649928 465353585 892388424 650841764 416033405 867355358 736265586 374890345 768076676 975238736 421101777 81282354 744420400 170633561 208785760 423852810 499527811 796175390 553552076 392761809 203665015 858750425 412559865 553136826 558408313 796121432 272472958 250476493 474483688 631470460 264128548 426530406 595519899 370551228 941938026 46942644 469076568 514201759 574550532 512315707 972678494 135000133 774030424 499157330 391090396 565599455 674696448 834869158 457545847 106893619 642943818 152354741 889510856 120412953 481687483 382551380 462419676 399624704 539181703 764299562 697747122 932337513 9450523 771697971 385929664 591661419 431358356 667576125 481796207 635589422 919308613 572291438 188713882 887307120 518506293 309760700 720790803 915304195 660098462 938539891 27132447 46619981 993838448 971913139 605646837 130838726 458096331 338569200 625089090 124292989 828920713 85546352 185279911 777289620 395326386 382911696 952214074 229984191 596155397 796571264 786158081 584422858 719309430 688209730 501895546 384275216 271810218 496480943 570402838 461470468 728886397 825525170 256551097 426325420 717806204 386868491 710447676 535331360 388212331 142942669 924693995 334835472 973406145 355225568 714347528 948280124 209106471 278648960 275357254 247731705 480764413 841264316 308333134 731742643 58816725 649832440 979348029 911229541 735218166 28061803 606254884 190808098 360462554 166513570 531961735 779535248 836487600 251164923 451865567 607792744 11208667 751236651 430675224 339188728 990586480 260060089 985048339 185792929 71736508 274090880 810659621 148315992 885714621 491493169 264063127 875736617 450524580 135684302 732452132 815331503 307101785 902565680 187992958 906948510 643767798 868304515 693671880 63571002 775763019 213062341 55538717 211258077 787853913 21647434 352136456 364591989 420098263 290830394 783536138 34346499 849624753 744018194 99779608 251090205 269604739 235317535 246635034 403985516 9495586 989128966 250555757 272411951 50361107 125059647 503317602 406314167 132218642 247522709 752866493 265544425 713191821 996894632 232622134 721660607 161062695 427504491 747728635 73888967 706036277 263433894 705938477 493065634 344019780 281153140 513823838 165540998 921325969 59127238 137379865 63718845 116379535 166339039 47727706 85436708 140718949 296324311 543052562 346082989 47838573 196801048 151576997 952349917 241506999 944262884 257352043 533999438 765232004 194900684 194245170 286418734 551991243 241590842 371287226 410449855 516983223 960117993 394452280 995233493 196787750 922692199 722710484 738095963 691386668 921374874 447204138 175954382 897418382 106046520 610683085 298934464 464301128 468455245 301048255 506376022 136663816 696202169 110000379 885181899 890761904 806705071 827624940 385244651 583724247 658382392 104766707 876129177 691755337 481157550 772867556 702930761 415755395 149240385 815234697 687398534 812317240 554703477 553854750 632340078 13990350 876339106 171782355 71749681 213081313 585482355 490388046 947251605 801682368 398737256 684600358 631057781 515028971 894933844 869335913 497818685 834365595 928926175 447117847 499028080 938127674 248203269 431085988 474826018 869885926 376850581 441145722 229795455 978877939 353018034 747561844 682104898 647696998 124842582 313841765 270457918 590155898 55326410 785291407 485738201 224222239 489603376 882192940 708904332 906105974 448289529 484496361 12283236 396545110 997042799 656510822 300183940 938058442 813588268 115345335 459576225 803031441 596323489 610015718 707149956 445400989 318174865 460754286 579852428 909115285 778013587 350438081 83029033 627918418 265813907 391944644 856463970 995296613 265046609 847172174 313981776 152672656 261327840 737905836 358614177 358326601 412223785 288745504 450684438 210757946 300786790 462695773 763139077 19753667 314076071 113828109 146202583 649966711 532141392 472335435 538918027 384240282 304579225 547411242 329700658 47138730 59276813 725074732 241211249 342162131 446005259 651972555 47469058 259760249 631896392 365688051 910887219 355303090 112519499 953421190 64450917 108465097 893431024 164699607 873257358 286236861 425206502 381124143 124343224 92755391 764809777 474602828 805219712 627081400 143958696 135590621 725944983 202278336 627869048 123172871 642320708 247068072 124230559 73640931 988465377 677155953 859122290 82641405 502073434 670450131 850701335 575068887 411631281 906852791 593688076 213090404 203560316 73482429 344756126 90140813 376567141 804952759 70647411 753140655 138161833 221992236 594458369 646489371 387950490 565525974 88308500 860191637 500467485 204760868 645142604 487012822 421316397 205621433 135783068 288491786 811686230 27848683 756610252 934187859 834900282 790260293 286148344 219241028 7947536 712962565 53112080 994337638 364773408 891464351 194934102 218031798 779931976 201838904 671340770 806919973 410137978 165644075 16836129 956284695 313324604 586492552 356893522 672029413 862426662 120369808 633216264 466240347 30938983 836256314 389404843 862100538 429270081 662194354 481139447 759857847 575496073 649915348 525249146 619887610 515325736 165514421 825737242 487790496 591729308 325463067 881427854 333574714 906349943 312744704 628955616 764375500 218075103 173354259 319379441 602359887 798129933 7375158 392184053 891428911 240735182 78346241 729557235 638271181 443771141 995881534 269541702 305965310 164426279 203996011 51517726 751047562 503927741 136689723 151398400 323108270 782321126 550077205 433995842 57218458 496369362 442063507 349656464 86408436 790563656 907755525 443787114 777262932 56176929 21529580 187243427 181737158 780352458 449724543 361262308 675060299 519564998 774930473 449053991 284176984 686908458 282345480 193555516 552777557 862578976 344545904 816034887 43411486 324175460 818828134 636945472 458453126 297401034 392518950 662922353 454406096 382549430 444833438 735188220 930374964 194411426 528020464 368790099 311759456 61724316 476859124 133315006 609531892 473070789 632826291 181029336 405201413 387844307 641304301 997508882 476720795 544354447 866676884 662920751 821408306 922757976 894436943 712694470 311048765 976424095 117931512 76956612 671848862 389668969 607458334 757798375 21415216 285336016 875994244 297781316 425936958 553046914 167084704 847988417 498308360 503332928 239809565 205612700 5017413 869829984 918549337 306670306 438049948 310708556 623701480 94028536 895676201 247657473 939779855 388392726 907677695 470806929 978520650 698305224 699729824 926451873 371809222 588629355 464999559 541896940 823913191 501441718 705097630 457493438 636632260 761623854 715332808 570220153 696667814 123775152 268825944 398023444 474198157 569772267 90842264 46476439 556214187 644085219 932992580 911539616 237936358 782611056 628817676 671264481 517514074 23238333 742679829 426908575 319366869 230914761 547474041 31253557 909178970 983231209 348713410 6851215 480729759 202712644 789998195 377622191 372350094 212930390 142578047 423157548 754064327 182244461 737072080 421675950 654386461 231041071 647975105 375560051 817959189 275460626 683105445 781228493 318478442 386231011 965697342 659702434 620982924 808502592 170348102 379509995 743328284 144454686 110321642 215551285 310634353 882960195 15967561 750142499 851541782 323004364 935359737 892432617 166025801 800976553 485381507 286343123 205713790 438170908 979517922 194665660 898649819 354611518 576204808 971185047 541188281 510604410 894822746 970505450 944127529 925053968 717863727 487878222 930920812 318400915 931475284 675368177 189123194 320435564 804809867 472577043 548108157 13245269 587645703 373008268 207058771 879620318 709337329 142808133 154848271 475600875 935490279 737113274 59961207 406465331 246162551 993229183 24215944 132975811 478543529 5215672 947058926 361891962 674786418 329913247 400886157 677776522 76755778 141630721 793611515 15955453 638608247 920904129 803031299 562772270 758177511 211646548 970210851 878798412 758478683 810509892 845764110 737795034 249147150 325216942 257125932 781825842 987531058 213835459 729803285 403537661 963924075 582917706 406610458 553804732 654261586 724028445 289260476 617595459 442010867 970577063 704912946 575241272 874331471 647466093 916337896 506906776 181089243 924551298 601866235 816469555 889904127 828363024 960980669 643958827 858951577 85027798 942350903 760915577 866628471 989797541 598798754 545771624 823330784 805064674 667171053 131126040 675449100 95466760 391656763 958199292 815009703 994507555 246770530 36552541 536154962 561223509 682215020 127695572 279455522 671560532 303137305 22882772 929611295 434121706 465304412 611616286 20239814 670990708 222663386 205968458 305504904 999865956 123564910 866244165 864657993 512348096 292129448 269896141 356185826 53883808 690163017 749643511 813398175 33567667 384133576 931972778 344890561 558126011 119058128 556963105 921938428 789703692 647930816 265814125 954305787 917038609 74115369 471885041 944443608 676938951 582084436 490095076 607162788 972007232 127600314 459509715 39055077 383335714 634865289 945000220 756453906 170382118 910366502 981805683 815122713 917631385 992336037 34765153 130987226 91849950 135635283 914627776 680497066 234255337 953734701 811032384 822579665 206745285 271536998 291804134 491033100 499949840 900275941 344807560 869754379 4497530 40467140 688842834 80215796 273230666 983724498 855200835 625270238 544550104 15113234 530983344 167252055 501540372 145856826 781903041 7678687 62985214 165618997 802237679 122742123 101748267 794616482 502346637 512045027 167165255 515387730 201180732 401811620 586533261 279268045 824148852 411767038 172058449 326093518 989051138 822205878 11516791 518974915 635606148 459287942 592040441 529829710 774485999 485796249 932246628 702047430 520363018 4623 306307163 398696887 943236848 319423615 565445651 617269342 761200786 405253232 803948758 19129389 269144883 482758110 222059392 791239757 882238442 111349180 548970757 947227159 459292963 990001772 999533801 837101978 853498654 769267784 626672070 161924633 201595503 474044957 204278218 745660554 225241724 732577707 324195126 631123991 623780354 32231462 968706784 479068833 868297617 791634616 744280242 855896376 166190091 293576445 445828648 781589156 517889833 675727237 694086870 159501280 744837110 840905301 950264032 302766745 30390098 25087846 572693377 670856115 478893680 848472357 207229828 281650628 535434584 227929841 318649806 235004823 223927654 535832481 795723218 729509035 837551049 253452795 779063323 237875122 435730437 399446846 816398534 131333394 901420657 871458713 633274373 516114791 149906106 610407089 354859165 544481791 72016478 181030943 511620200 682465628 311000882 611442672 325530324 870115766 627520989 296299299 50354019 125450103 70029402 25323055 704013353 566883773 606712954 28545402 97469009 323859675 880755808 524867555 346235544 259186392 43814659 748660025 970514384 766452206 499853999 933949121 306779999 258811148 467249540 165539764 335753149 500299349 466120694 911724990 886341882 534231455 800707403 486732673 369627445 894664949 823709216 324674320 971501350 555803926 887224549 719865460 544697493 928278515 21283420 486338090 756941536 745203508 274851358 595874211 260828538 645630644 768629014 922505667 184343654 993481985 61879811 327557475 413126336 953080797 945921531 472967120 824717620 145414336 745714915 717612361 606676101 148500819 900084215 592164740 428089352 249268726 5648969 39667753 585659942 890064955 154413369 11450710 620000989 847478632 487139586 474329113 269614144 283220218 721299245 954628345 859940595 941040413 512712476 770514542 482652335 71352116 607041153 669343588 600312004 535225943 901032419 409134013 87484050 839994832 307482400 175555788 657477135 435316637 962011622 983342554 419022404 485210354 838893624 460072100 289926608 965501620 822736111 183349211 201853283 473652734 500845110 591739811 236738628 741545120 101133326 714316308 478470860 491742619 820867784 743415228 543470313 466571174 425330573 36393500 962748060 47619500 324479193 161756198 639792251 39000908 427001084 532931782 464544816 126753112 773800088 734432086 346886391 822105174 858433318 454457383 391095332 788468482 866644849 730536191 583542171 671225546 557487128 388519318 184353366 841655376 759407120 431041560 637258979 855562220 63815457 993123238 50368995 92801576 55191652 746617044 417702029 84617282 345054923 632398892 957986600 736661677 298164633 396194986 834473364 701763984 572282086 90630719 133663682 207082309 475755548 897601103 440891447 345140443 560094333 169260594 119810190 713888405 805285274 851134390 887655923 291981417 926597597 61313435 448365992 808071298 591695616 175966742 283789187 317775295 651656340 200288079 427901550 281017393 314844284 664532963 811405543 292385185 279101295 157389666 182706045 325433863 991237497 352100050 441302361 856128020 198384762 593557290 162862770 87472553 488421541 594862552 355359064 916469854 433992451 26676540 977846570 669644284 28206062 378741034 542180000 482175235 941810070 445150572 565928770 362436901 860058239 654320702 15311406 794333641 996521985 855706320 447721110 625509001 83530951 65845192 486232128 372910516 38635345 281102781 206573572 680725709 394968690 908866493 32445522 866562314 246138834 50358728 140596137 690769366 604799596 669402962 626010913 156812623 891752721 368103365 568907490 419617480 803086052 265135869 18540203 841169224 289499613 992997834 542835788 618599946 933782854 461113457 419588652 422762235 200251969 92284203 622418371 968050496 54277695 926674597 738612769 818238381 976596874 830037119 482213990 479882574 800541628 649813965 703288391 197561314 617398342 118038425 383082128 864504923 524877546 422466398 342683036 348968799 123864130 652064655 966306271 765632458 425636919 89718798 325819485 170545962 312434314 234985653 431435568 693275713 563414862 251439057 976130565 921856903 178318699 879746721 4957343 752509350 863173405 532333532 175801171 679819260 276536948 419753512 587330955 912443676 457463762 532544676 34992708 42948429 479129712 896180063 595455631 900330249 783240408 206024158 398353427 596827008 301515628 659714458 872152457 410111251 118288094 630556287 638681407 144255961 397402806 436680559 965043606 120677405 581045712 932617405 758310276 729687773 357371099 883972275 301733651 964603981 542914779 254743564 551202272 355606098 76402599 243096186 398869917 489698568 127910507 862104353 47276175 189987645 914967592 459865370 792273936 211510003 113619503 10226673 834680078 489110498 597749930 516845608 701585034 94718451 578709779 80631730 693038107 307217350 745006779 480664184 845741673 167265581 564261701 169418456 607330226 933761967 218374440 820869152 193164359 16518406 460816432 650083096 77802256 116809633 351465469 751340149 731228164 745578275 864484994 390563175 111620786 524926690 865623175 836038668 188631740 816328809 689329704 20504058 629407318 766720502 225123157 398329017 747668171 659564796 351663696 51365958 938982136 201950882 845336113 655970706 823990736 250374211 405540197 411331329 658751702 177923565 843638827 438575340 792716966 298650850 999747862 273028127 759371116 864215577 649296782 650369115 383244651 611760829 578379342 759779029 68107127 670762669 886100967 647477941 961160571 818228987 110317372 873303449 306798837 759502445 120873988 874302479 463030133 205019647 785831244 440703006 725192993 173323615 662050802 924836798 216273716 116712816 410781995 222080859 789259899 552288456 84295934 598287958 228274134 535357489 317631174 125481348 306222269 729795371 577503155 925943213 841551800 409807465 316593482 812980238 385919206 438351952 377923553 585267416 415086199 839052667 51492644 994156974 616688434 4547385 685898387 171708459 30161648 959411213 588553217 766981722 803204895 271045165 676249622 299482940 575304512 541298181 938944206 223401798 380236648 297078961 776495609 246460128 651274947 350025350 929341881 172304103 361981965 825762697 669201670 986380587 353319447 134404598 87838253 768378098 865901640 978432187 598911309 500384115 343027481 395250682 416574169 953782876 416004760 973028747 542664729 758222413 757785318 32271223 967582632 577696091 247383737 37449342 642287607 641689486 141212123 447455378 428239817 284417379 84810665 491461978 248967861 617623114 687655316 265826480 746132904 824489768 236364195 74101027 426913632 316405975 656643312 720481398 965365490 77807266 116935206 420851231 905365572 221953738 63240202 427109321 290552979 7148803 687980015 261953490 516788975 62665975 886784064 512065998 468300986 777498818 464964346 46071042 792337965 877624692 144693806 224123625 322818259 771201426 825632388 13510067 198014988 139646358 942427059 815609537 413446540 173880938 664927498 119228202 347331033 333981681 791778795 254207546 956270288 314036607 36927050 593603566 879015456 543594075 572825394 412555128 863996877 687935044 907326784 763243457 717645487 545871337 710989094 542437858 40244976 963906416 258822185 872222634 695305362 710491888 459765924 268255260 971957735 344771830 691348611 906237933 995103767 583507716 233887177 118680074 711776669 829273613 271052042 634637328 27121354 794785019 61820401 977296594 848763457 867840298 522650044 21934295 820958585 864721642 137643963 952620762 630452543 763144704 451609556 229790792 42618417 724238885 407408386 414670277 716779331 292092294 819794385 965190055 359536702 517054274 317368036 686705273 788231740 282650096 50640240 988110714 411237934 497613846 827015102 195391772 74185558 438384307 976347053 720049541 233565133 512350134 514194221 91933969 10833662 504123524 7735493 581078222 310495785 797191286 95500813 8228606 602025697 228647256 108582453 140499353 545315727 262931948 501665405 210984648 337208812 627882085 706740411 670861163 35601803 643159276 881454040 371913108 858959437 168692255 639163987 855914250 850394346 268672909 643041980 896087495 873939311 929024059 538802234 946415226 329134010 285409058 119130374 920787718 567549440 294857646 441411822 23982337 645489480 474809920 464587731 691944502 196603374 726955693 907895851 39584036 502451233 966359742 46286207 180718972 578560612 372376750 882189550 841886886 578569233 673741743 687767977 283345469 582795217 462033509 175370101 708050063 648061989 657858921 793696556 185093406 912793057 136358343 588410172 901335841 205289131 854676864 80985638 302272515 837917056 276099081 171994368 128480739 733222704 944496842 878295540 553349651 134745821 86986657 41632959 626054042 431078016 88672092 169131827 668687794 114420068 177359426 77167029 470082122 154155689 288049291 514348479 942287492 338902978 784713955 973720159 79173944 118608119 586310891 239636150 512855408 480473060 829395896 73225851 180332778 22991352 887563346 520609910 477545113 428686583 41335351 759022341 396328228 183885689 459478485 651041946 124258662 520975721 93843731 449766970 530036972 217209990 902496201 475779583 254735482 717583589 680346179 585297304 745028231 999937389 478920130 772212420 638438844 404463705 410207995 114289626 139918200 511002042 310660758 73435717 400760399 537010163 238989744 481690368 500566150 445504571 982112857 53230366 721190553 259249950 731405335 233162308 398643126 421545213 278967394 546284333 552471615 562858633 808433957 826849317 680349260 121515340 864905027 729941391 632446503 720490528 110547728 607639648 24798414 746097589 39430356 869895329 638199924 948711696 906016588 796947440 972303616 760322566 941615145 442663935 726204044 940748741 367996558 735490324 281951207 572379980 318021526 784470152 695804692 955693550 266586315 954303816 515509193 710835156 44491440 208019543 528086001 407226487 255396665 198497610 147868202 386827049 298027598 377950410 572362824 981935501 529726028 652663062 995619280 685705243 767635075 323624574 479139454 741013150 760851897 840743913 65403071 177659573 307085989 546522960 957470776 966048853 466132597 856951361 117090877 491905093 613140297 401731165 367848026 275888288 803514037 60647385 23850190 15764823 628658755 945050625 581102859 621365933 60714991 757716401 865035832 461157817 713295529 352298970 408181167 620648167 705943254 901314051 891467135 379113591 712091856 167725253 301259499 965860605 399690081 873233486 758537448 583234527 459963980 655922399 475287203 303484890 107715268 818969422 747613177 931503486 75958771 5568389 491470846 928983469 577696629 560950017 640797047 492480032 995067354 605151572 863087455 53707746 862276391 2940067 48191334 39081939 131521365 895877672 601894509 517511462 626433745 688490161 817471755 379250659 801675003 31219999 878939659 896157030 493156007 931129576 109155564 726751454 895026335 899875478 26912864 716649423 457911326 957131846 798738637 208328848 647602006 188073002 345547983 3464398 604807147 265811207 492611508 341341191 398073207 28071608 79428094 1360400 361300996 4017321 525736421 437740432 380453525 338442332 649493970 458647170 669303709 300083176 622729445 935720631 976542085 562639477 583193457 266892370 983210283 481929409 826819450 344922186 448473182 126320030 802187070 732753643 898445923 829612657 613662121 728806485 116619379 287314869 665852127 699145980 399390266 406194550 57196726 131690022 387935834 660516311 228192569 287356528 463989990 734710668 36826406 342244938 100436455 736902752 990143089 866293878 585781723 366178737 242262207 578430605 322273840 887185647 694633964 552559994 947003854 844596769 100259973 238010364 257895306 310623839 297281103 367289128 454943924 504353881 58128574 26626278 508200842 875900622 189131135 523654255 63044546 988337430 413009646 701595861 598735620 131190169 286075040 524768635 777821550 207201366 590618587 59459225 271383055 415782237 418168345 578134457 91298156 206850901 170632585 572372029 375263229 456183799 966013838 763500503 771197617 395867280 844094270 22355726 35803494 455888003 278717924 308763072 715727730 549600709 826313086 729532826 831894045 79804768 505759039 445685410 13420324 862786032 602108942 295217582 808682808 322961449 571241734 513731818 464123517 225781583 123727348 723224662 717540619 464397756 784026588 926622278 68879729 283989853 761005429 915313120 800650541 37736501 441308072 735562145 310001973 679463130 778823700 433635289 51091569 444751091 189377933 274210602 78007358 641643968 599246489 918097677 239644396 359782546 734480370 91166285 1949249 521175886 184700679 935518089 707592181 197263086 558691962 568555446 307310132 1693184 692029091 290522267 464396831 792324389 574239755 834147668 931233867 678422419 915143666 117416144 317770048 659870100 530858699 231791699 820076539 37990661 261187258 649803253 700042860 846172632 965264925 471596832 461135353 157990546 106035200 514740501 959642105 923380941 431143591 647562600 451524154 511397815 442751496 949264512 70519676 387764882 769488974 679404056 664649204 23559986 665549912 961432001 777502154 484525698 277312567 220782942 530086299 538161919 568568243 768935334 526915319 31803195 475811015 224309413 354314468 608803419 327578145 174066747 751840857 396602010 338403235 356155035 103210180 662015428 924497125 359341774 586861701 346516923 967783344 999637806 516786032 805075702 137425540 747492331 709689167 41714429 380822291 688062345 153047134 473306350 14074052 984124256 591861709 797123067 638736689 436547611 515872322 776517098 348081321 19642938 993869396 453191572 25659567 584435344 714050321 425346406 268626040 550049989 569297017 388320227 664549233 900309460 753657344 993497631 962389432 600056974 530563344 231595590 103977630 380463126 732811653 226410003 152272683 18219620 717192239 15741273 495817882 574184130 139252051 988442750 815330520 147512913 880881451 843090683 618355465 317430917 466436193 681741789 734467588 86099365 209855640 407985735 890625234 842949964 379000035 600831470 198271794 140092651 942920780 100719515 716851736 887197252 358314575 996116909 439899690 325654000 349384540 940910740 441475138 991072731 972152152 153683799 472557039 925376451 329919004 887952399 639604723 664270268 571162613 816858218 914614982 947524782 780737570 533907497 27282194 763894997 510095194 359341986 836087349 942047297 450111555 138953278 331670210 636027220 503308796 847985404 856490240 396728647 899915924 802007277 237997929 113306788 813604240 267320246 468219180 643742669 673637481 723974673 948042924 564659572 42702092 693214284 607595007 719626529 522149976 305304264 596523376 192400304 96757411 471130747 157265406 647036368 614845494 184416622 575686619 236238469 803280332 712404800 892900077 520166310 468428567 965954978 918683472 470722143 459392827 797369561 933018577 132438449 347386705 412178496 749218933 363691757 293372134 130341059 182562544 736215613 956160121 130252644 612699439 384439067 47376896 857270201 550653391 614749400 788315491 136498284 710274723 529038102 829350656 927876538 228289841 571890254 753914406 778964469 523156790 230349900 529364378 703590402 689202974 46885550 802588181 887779804 668125836 802746216 23088835 962816783 382061272 766098242 349404101 918183229 721115532 416716376 637878448 37542557 128562919 132152473 739285772 303996023 583708250 830492234 810964695 87681449 824087309 147859584 287980799 863525669 895955547 896800681 501719019 535501424 723028561 319802884 913911795 406105125 48028211 625042980 682485731 570125424 427902200 500996465 827488637 449041812 709933513 639534758 537728499 104188518 425662598 405551188 253054065 304027343 316086849 876483422 79561873 817257037 710044608 598107515 690710756 594382450 834928127 812578744 802148208 86308708 998616748 163060467 933323309 510658140 679824042 236311137 279201671 163381287 22488206 881675272 327599327 543886760 919645477 742188870 728994570 162960980 978872812 878366024 535481552 475559604 340987798 422373780 785238894 668179174 148109450 994770560 944598805 80976157 557193571 242305464 537133929 129679901 180194670 402777276 540535298 768864703 522368815 74121567 685231342 966880627 89816284 300552777 967199533 815495865 800165088 208843638 137349940 600334759 865971290 199094454 6887275 687323494 385978267 626647595 776712367 778934965 673666732 519839949 514843856 842871397 372084166 207783657 461963028 674150363 132290007 12363934 448747698 796491665 607806724 815426143 762281304 989319572 43149601 298109812 892084646 383709191 28346427 424599160 130523569 684847519 676858639 473696220 831720321 287050790 999647632 870226531 13357459 668869369 354925924 79477668 887507287 777136522 905477736 53082764 270822323 155151838 695311144 312940505 264685438 683361551 914650472 159855775 191271430 814862283 259672222 801651399 736078219 684781779 121427572 773136779 569914305 515241341 365825867 298945532 471713874 809352755 141636275 356132732 743150426 144217330 673875444 441989700 246601705 65471948 364181129 294666207 404525701 789453670 311384224 120414637 383281061 996064123 155001755 607612257 886633015 564772183 153228945 139897220 502224922 708877404 945920205 515600368 999010469 615778432 122784846 889174101 20625183 89764045 929320006 3231927 411251012 67949536 625382812 970252782 61069766 679691883 720479594 380521508 655158474 187801012 15953791 41415515 289410151 529383443 487343837 22226917 294621483 878006136 980098620 942473962 173736085 98363362 312977542 313370853 445225884 250146281 701878617 424172583 447359270 422469429 563476360 971468627 147975314 469774596 378496922 521959904 901959215 798953128 700247625 795472027 288353730 657522695 476697861 314860578 861133060 130646554 512250991 889314153 484027426 973768046 940353758 835437625 404769339 854115494 569243357 193425836 187709926 475659510 191789483 318145203 591439785 189854378 59905977 814425232 961801347 420538781 775069488 675578204 504857187 671075266 858425449 906785410 713326766 136362911 631415410 618877250 707581629 694284493 6888336 753687855 929869916 971372153 44505015 48811185 586628685 140351974 232890132 860499844 774316739 523442409 278959236 95787319 920752103 514650220 459522074 685489071 977563735 28636395 531283869 146101153 871488418 434696954 351996679 632306459 496078541 95567804 366584071 281764859 136563409 296211309 145779584 22860406 212736794 117602778 559536136 28641171 878700553 351295716 912574058 891133870 274795892 17436929 848572196 535597814 961180449 39846843 796193258 240633326 174204750 128515119 657329697 846200303 227595564 820308878 200471909 877506469 203274079 527944095 460759043 783404942 811516544 154359099 558893951 85090943 198367643 172854992 450419984 934575134 473217713 709912799 154087455 372435304 907278135 108438655 972390092 17780525 885025942 215961559 990158441 684296847 43578537 702214823 862014460 346279303 404441666 452384448 138700481 43328864 395863972 506270343 867241126 182243642 186418954 377979766 437934798 197237384 101870367 461637787 887024655 340790162 918150021 734096152 925147508 521255924 762402638 234218657 370536123 772110621 306407302 365374977 876740823 140976337 167914919 233122709 303556719 771706792 816272418 220181455 417580638 807913869 727259869 310554548 912660017 426288703 626148272 562416479 105414316 817937875 391918823 759777404 514179141 444628272 351223235 101751501 281560487 996352145 78483193 383720617 508402737 334908935 213466929 980143992 220886133 932808693 928331656 171813944 299709113 961877906 642367502 710033915 646327161 114418538 558522953 608012391 995732963 739421661 70968241 933407796 935047769 70334367 459967026 825782194 75183859 282144310 977690797 311913280 481727994 814036608 681212278 200970710 813176430 17447722 69283031 391335292 698562177 816483129 216978316 410930129 226788378 172514949 84407110 457155717 484108628 728570425 20388136 544173534 99510012 883574101 863427661 598071095 820793110 410891564 615444032 620670845 735215960 696000998 28967298 778520497 752846253 979406591 319698439 315552104 447158451 52894662 498816441 76495182 702808126 448224223 967185652 164985246 162014675 390497218 658483464 151636140 971327277 920976186 502810299 647474523 660345020 209402342 641536708 327962023 407275553 470553531 514227793 356969245 510794932 667621248 640808834 82973534 100788222 557763920 169435115 585713824 583035455 420557084 515464982 289200172 130201833 437822247 423911679 770956513 225745698 205486728 637474454 750157232 326697543 573939627 414489664 626904094 230503012 873274576 121364055 590405829 854413500 900419211 523235237 426584019 718830151 194085954 437145069 532202377 586403375 525495474 644680803 294165181 682781778 791249515 757274670 121267544 305907139 383968847 894430445 442448089 474481481 400143383 777221423 393047249 404168159 819468494 274403065 565538149 272703282 143129940 29996101 661788111 772256806 467196124 659883901 345245405 109612882 839938414 358551556 630875505 509313919 451009638 971336877 901285119 87479340 212338931 548687938 492663314 596297229 811682969 973588990 115471047 388941704 661463471 200600595 10416463 568947510 441678818 28125222 737767026 551860328 795953840 818225102 358780935 235390880 653616622 621044504 617116029 586730259 214560835 924888326 385171030 340426542 761707434 253624843 440367782 456507150 413469684 652261520 198649752 83336454 888578372 680460659 523800553 949952285 895609489 887479427 753829995 874521485 128837159 94170885 188795012 119152966 33153574 693543474 516509868 398706792 558959362 433560502 756055283 504863437 829490177 629605939 674950520 300731005 743987136 451891644 751693555 893068855 246349487 554585690 914756396 731874287 262254480 212665483 467758977 513374538 825656828 248757694 408398692 154699299 805855966 204860632 451832539 949911818 192582901 326806706 344978687 121321920 369304406 776661656 697986173 370119613 949708777 532615371 627439128 992819370 380568039 475513088 302015781 856712423 450247778 48677088 558476813 890183174 26342077 272549510 540378830 596162382 270272304 647068932 133595003 869512761 96950085 372828894 381892791 732756214 314723422 387177612 231710782 276838632 478594092 788251901 491041117 42314020 931821881 858564111 308467573 725387511 830469472 505374488 524073084 199985758 166209615 569605984 749494139 11035789 542831116 263202980 487183121 669332073 140982125 855104405 65757166 882712845 382746782 742433879 627724633 976292937 789319071 592577283 274143147 387809054 438862532 517484069 907379922 394631747 945187123 506240318 687593167 689499811 231070569 89786691 625531960 66780637 324121014 527110940 236767927 687950531 483431612 118095910 875996040 266100187 672029684 786928818 663902719 88016865 132781097 580366467 547568640 154091587 982428666 439561556 896373381 916411812 805911132 711465808 959491612 42579545 239295766 225352088 878606182 708219119 158507332 869500609 49622425 136589987 1154517 390560595 53248255 306359784 867034637 447388235 407015285 144248549 342328323 770409881 562010861 705743348 242510116 142123171 9196012 451025957 241292462 909096640 341770765 782312377 844278838 181355966 501468284 528192167 486469155 376597085 234812027 43476250 234800176 958046418 752891872 780161520 358098926 647654213 378016149 338671421 650337599 168114259 593166871 162559686 530447581 84489100 224866296 919603335 226609361 339027958 325246558 478602029 612381948 426012808 415365505 650327197 468433809 270002352 345785648 457543275 197476761 943635662 869441869 639231076 637959022 285302455 731230796 97659653 628409664 238577714 991102904 227139585 900872595 760452990 265109679 960813758 640535999 596487627 900376673 773813976 425825903 17783228 985483924 381656733 886936610 920618475 320247843 437739920 548222381 753745765 42939770 301112551 595421368 423321642 245353244 84110349 403599420 769345454 227717662 734162720 970185483 524361051 411015849 238115700 657610824 117564685 855700603 745226766 258370027 288832916 200988519 623995433 873675070 548544822 240814032 497333685 723053922 367544362 761201970 10524627 763582411 43710237 314902170 812088154 636354752 96491441 222110504 920846165 910946780 854951674 93838484 513784707 654669968 407372287 728877991 354576086 739114654 526475839 121019581 487585780 326984863 646586409 955082314 49347513 120341631 59283874 350159698 962844595 381195772 367383171 655462894 872037541 641251114 43305241 794973646 880073477 762039537 548799652 464309938 226580861 554734989 944263128 806918384 219021165 241815310 113780574 256054258 581108583 923210198 83749460 264547508 866455474 22819101 348976329 43572810 309571785 383799664 448990274 179542104 714601433 622107438 955512888 425876376 134625606 899377930 354653848 425088088 254901030 566851724 58112577 952952569 18708932 280031376 56412041 941301361 560508447 811579333 303506105 368835274 450475624 136585006 960793228 827516321 541628552 706287269 747922612 197077160 580635287 12469075 372256341 160013348 794985318 666495034 438920840 103026543 612358390 978650795 305419994 855509879 701331711 450507472 207847370 566106941 80441194 564165667 43053902 801942616 86530775 168109045 444123983 286224751 514495256 543463400 420008488 964336322 989890996 617436277 263096107 791845026 57979493 903570280 921361692 791221749 142989722 23035486 779898548 142053043 252410102 567397198 670743327 413377643 836460495 753776893 935096446 738518719 9920944 722865032 762611302 894082019 667398871 429269726 324854368 503051554 740644024 65435460 624843879 86799705 538732152 802417103 631753581 461919610 336001906 578928877 941975510 528548107 439090614 68733661 938447354 654939812 203690629 746745906 880554663 776899701 205468886 561572948 525412254 782570173 428121045 231452158 751061522 226605140 779758430 34389953 39982892 308941090 616973446 990157952 235334793 800238757 348840467 558475762 297771706 639883376 22252799 203809060 995145666 173079206 691919609 961285364 874527644 523805827 857744099 662458519 680639667 883026643 453780821 440031251 514201192 538232953 611869465 935464134 765575568 798905066 526676397 161453021 769198323 607391919 174798788 510765278 69920206 597437415 146821061 235670047 611774034 124717250 592372298 823005516 452461603 347172359 648967843 314950629 451779289 516589455 717928785 989159357 439989378 162961607 752009355 993452412 397085214 388516146 750567100 677361950 111517730 707185893 141601538 819194994 720342774 847825162 137917361 65829277 118579063 834572381 526759630 461321108 696507765 987422642 362519189 659581093 533358646 415617645 411878900 106891503 159866610 235533064 759383821 531370725 647057748 849354129 679170488 445613518 836807167 380355625 636452862 932277832 295157511 346901382 118410911 426708673 254424692 295396722 760290189 292735485 116662467 405542729 649801327 618143123 889217380 13238399 285562143 71054448 595213117 451101976 382860332 979131218 836823333 332902446 458496345 693768013 257782378 706228847 47151132 143370826 777632588 918868637 919815200 354890627 335606143 699546636 939541443 584348169 843432109 3716902 185874585 172710718 77168370 268062698 274848231 127440731 779359070 327358569 118440745 507981291 910943351 529285449 53820556 214800974 162707636 705617986 833800052 897207863 331041027 811634851 683887864 887305775 662799172 749044173 369609825 384428048 282848459 239510455 57799599 946793866 401440994 223861609 41046548 353594529 528936260 786872705 7402614 797077549 260490916 108015793 58069489 404751960 568621348 281187390 94991955 389293348 516627166 905019011 178968735 528957667 686702687 653337964 88509835 519680701 559462694 249588988 993991169 861451053 950288938 25934791 238528417 596561028 715758673 976683384 228599614 891713893 615642874 756375885 921705309 460512071 612289140 266426006 564023481 788978423 849552516 896308025 437528770 31959827 540303075 650563121 729800728 758245007 166282686 320029194 178366229 905890612 370121269 520059239 820068417 634362396 751851740 559859069 205779675 151160888 373991996 143641749 871486807 828064458 827528019 388010637 538712538 79506923 482529296 80037720 108921536 811934470 972119000 270974329 436558103 697873755 519639556 681288332 646990625 570840189 926117473 282467774 724517078 597734100 232946606 544545360 935490144 384679964 979272225 101137944 721146013 130584036 145482723 922509823 776588192 120598544 900939151 617310340 698012463 428353880 975127735 887539767 66501959 312753607 475884639 581814335 865793172 764207932 334252416 664514773 672569594 282106860 187919238 471097799 514851343 453620446 718145235 468329718 107913118 593902702 645222202 894980824 527912997 600169162 372668036 252954870 936755031 295721592 514793198 357623407 726215324 980562638 301004201 242136180 32358284 893614713 69992281 102984394 438816376 975327735 683270295 490510923 153347297 664088092 951672943 650138469 168010750 902319249 268959971 947465881 521075515 819519568 14898534 529539837 696238773 433532458 927387489 8910011 926793662 160040769 550478513 946371984 964194655 39302542 321377831 911178061 705989841 815058524 71495687 405729370 509344259 81894091 904702089 217346606 207452696 204259918 261697628 265623512 187434982 308870445 127164702 629406329 849520247 660369156 635042789 121779143 287401867 320312642 958081977 12583052 309993493 197564331 803379735 823900453 250026682 83864791 614720368 514819076 432076885 65148080 225137063 134939695 262279286 54838008 502230679 166108094 947227102 273287617 708929163 881249888 230540036 457986035 104297156 127780311 385151635 34154953 748925431 976055415 723081706 408420692 691219660 562465707 472796058 950331639 2039392 294283377 875878892 453887465 762742468 271350233 28304217 679913654 131134843 368998793 949682447 343017918 99260416 740108860 900062067 13496757 402633278 239425086 426098329 824443937 612594966 124588530 281283790 12643808 526941916 973957196 985314063 821885343 86610394 247891288 297670543 627114083 995138252 210199217 256843829 543062020 969623907 838938122 115134747 938155437 794094786 706370473 810958608 494247006 79302660 834653927 557892119 265889130 287681204 257543345 195694054 772066553 250334035 937928202 724386408 212772999 800665045 678214791 680260156 719193443 455949860 150444241 837495603 37828401 401261724 218231591 667288277 486370921 16881293 302587353 775195357 295923925 202047165 430514126 794209721 577756695 161590243 187439359 13165835 649027105 815270189 484922617 270110762 108537787 958406843 359965535 508364450 778579200 368756257 417915494 868766896 15105505 527580393 720276312 38142918 742464160 700364047 122549522 339334413 219114071 957913475 820946565 261483486 822062959 864813739 56245560 336333896 803717673 692268766 701838276 131411854 662018841 321070314 798088279 304691366 674865061 501106830 104424754 845946554 271242890 586412801 727163691 709526443 218456664 139463017 1616940 248052873 846298097 778093413 682485682 859939868 900811534 352773508 726862670 662778207 532211386 818173388 369009959 339563007 741733332 147089460 413461111 488202464 296984978 571190057 482908682 272652440 90609657 582036493 560207554 623896562 395832934 794795955 65419797 350507629 360954888 993907941 463900301 745885883 732730979 947347166 435102791 484512066 66733518 627076560 470660469 297297566 75011574 327035232 352688348 791274525 455867481 534685989 773658711 192525377 207433932 449466156 240796498 604101442 157454326 674086007 484141391 97797514 543044050 462755193 690326629 630861367 393284145 391216796 498142139 889740700 343882550 498622139 641895954 677706176 788468184 453502376 364858425 266024157 580730467 549447847 133354390 985788386 97051895 584718065 294001828 142815474 246300679 778814515 849347439 539568099 209431260 332398860 112831002 743222976 339084816 814820242 699241817 423087688 799353363 229672398 977200375 210639468 503981994 505549371 642547794 723513044 105355883 729257547 777226458 424246619 571639105 15601378 161377941 334592143 638592750 64669913 637864606 900034610 884100228 374283644 619277217 770084284 822001131 83096332 856912993 11392214 612543583 232628542 751702067 105363936 302429935 533085627 57663360 820562028 694381311 600302750 606698567 25316800 354382023 947033849 81597080 467580248 167359441 405428560 725534490 706248547 13323647 213253148 922622342 55617 116361602 652904009 681146153 938952203 227671140 760343992 72750950 658190603 715586560 508115902 925061170 842840639 54260228 960885667 204402838 76283611 307036790 460065572 471610673 905508804 471450156 814238450 225724596 534113301 878639442 29113137 325522019 229089182 150104552 477814778 466559643 735744864 457540162 722892761 649897798 463199762 814459782 2199119 631047784 86746783 535125553 866510929 403815574 749939366 581943443 866855623 18688378 728593145 574403406 841255182 289898577 266789918 87178715 443464055 95174252 236200657 168538372 774015941 666044850 804966016 135075691 138153395 97093405 608545229 7851522 718117740 413533497 554487056 385746577 446352913 169402536 110619347 163210292 927570999 338255008 437996116 65924058 748351590 347093355 404755462 47974599 406145947 921934054 676207632 488904978 350152134 73649922 842000588 406489128 950059597 848842311 11980105 882392903 417841288 921781836 77419978 457728004 696888899 342396480 226456133 860313286 705952319 705224548 661250277 384538952 298929328 834780559 236305033 202512667 854302656 573901737 948142914 213627425 702866955 568583216 395853529 958728467 755148577 251114934 912266054 898294781 756680200 321583456 227749690 682333373 862781368 61675881 64662678 499327879 452765084 191438237 715158770 386350435 960344599 108829662 151630359 510769326 623809277 4968611 634320517 937132949 336450070 465791860 295699950 809875101 37214110 393702767 127631289 357081886 376271560 273061830 26626944 516603843 868508726 570958399 392939922 391169291 599259779 932428722 74236274 815928779 236488889 631583375 775348310 961664426 31821531 590712149 263586729 793601444 246674013 859485468 594585481 86102152 710616742 719427596 212577097 377822074 715982741 196076004 228961264 692477041 770650105 875232884 990734009 614302394 576610328 40827939 794374545 823505267 531127337 937864298 178444701 324111889 273332442 150489686 713436593 387396827 935693770 799839498 880913625 709824364 283535376 713877051 408011476 105142069 693397170 906177202 864971412 495063544 70029103 973163214 806742719 541775950 932247030 226420991 987669553 886691874 85223660 814770764 288339064 538111796 27499499 410930382 125727830 866681752 569385277 269363763 626546243 933420596 771140645 236496444 272549609 347285317 477129558 931234111 243028390 961824986 178933626 128777381 423712013 349741400 972988332 827133805 819466597 592204276 888494590 89276071 830280488 369234236 397815796 850907642 128881542 655391119 886728967 971629600 286662880 221641632 763650340 894456676 330913613 532799735 187818794 485259818 455355672 691442800 595331952 428017000 935474495 603092153 154552892 336334629 818476022 715627736 418119244 619613953 779807010 776311972 282754385 768103597 781470431 523900743 472497264 202549870 145926651 927633858 257314495 124184478 229064312 318770537 649908686 536892203 876326414 510450275 676233243 877620759 976883878 397300267 168222108 192549878 612174048 188057106 384081466 477533043 655923342 895575994 517883984 401375947 962175287 902858652 541305648 463715920 42754197 653007747 869461918 814338279 528387351 836389135 757641811 754167434 77063264 849077300 518715003 810893000 570042822 569110968 433867319 219377984 563465940 883420600 901561628 595913257 781819848 596194339 206877875 968391373 382471701 930700605 770762487 467494410 376177890 498313246 470868186 556868304 719155082 920175409 216432320 842926757 812752923 382816950 737048833 380990500 105789399 166828352 228526700 339059577 15773621 302871095 25836223 389995239 558306528 895370838 347581744 943576898 158001975 128953902 641757415 886141045 639610316 916235938 460353409 552939518 997384037 251844969 885364111 418364781 172191998 834072464 765102357 161166569 616492613 191083509 995158027 789715370 657246237 367813069 788439775 693800576 221067036 77699870 461631218 363455563 229415436 170089286 179262230 193345152 935097453 373788530 76951574 848554923 680972018 8252200 227700014 321899495 307504640 491946686 982901391 211632488 55573042 579405280 742103517 731510513 180426967 997721102 298126000 543246430 288776306 718041371 649857302 48314652 188567865 364486063 739168783 438223532 587021208 903814086 676111888 671796004 686614187 540891951 572596609 180711853 371808455 285147150 639716159 933656326 844228081 291269467 303654171 444011519 63184997 780566881 305856088 104172031 138282769 599255103 22660657 50432383 144190999 910371946 77723729 63793805 73110351 445723433 333106521 738073930 197084866 195910936 598038877 910337132 365695280 996107430 356648039 915448765 231260811 990583447 297219827 691308186 831509114 513598594 566619761 353238644 544177367 138137427 412154823 873995091 48520241 698289611 712941004 282229326 527364171 648978171 743185870 265019924 181536411 677754061 198665741 81696614 43902668 32308347 121866814 649080730 978404668 308723990 646507528 70085402 583084415 803539456 448548234 268376035 745354970 553811826 856188883 554253319 146397896 882502903 755957097 86109739 294049145 45179375 889440451 4608521 143200846 676399117 439502543 871215855 105687646 337540058 104179053 494069311 33589493 230388016 944782321 436678125 394705423 419508671 150962597 281112836 421950177 237014923 441379396 487687201 506935377 429157227 340791937 60805110 505904505 703816588 131387006 806393801 43703336 329304557 500405333 145525234 921008992 151910113 4936851 188830304 622188505 30750096 760555192 996228373 521044093 755044981 709863352 704103590 386621674 467963361 946040445 907074236 313503731 487472247 552367714 97246357 390650399 479428526 898154425 477005187 785846825 232731218 310258759 166771052 307725182 75483396 870764483 372501832 86143170 834342069 673789530 761457063 361145931 336954671 318632750 620097832 654032548 660565388 71869138 114710787 309055756 715097789 452403152 572256128 702364661 544600068 13837091 559663230 596560773 694464378 224426685 824001517 961937944 929690250 730186754 551833684 773597884 685609076 218997835 303828300 93336499 850935499 18873189 706267650 999393525 924251639 43390479 310345657 935417515 921306036 925710975 802822726 717340597 941038993 801101022 165015186 135772709 329696626 503260103 817479452 92178370 942499855 804114636 225948788 34736262 414410611 314363121 988815809 516854560 505274749 5567279 207268668 367225715 993751650 402580722 316791475 119604501 273408297 1714332 228154887 595861457 872509485 632529408 814785454 199306278 83381151 390358247 151892274 257037765 495403010 215140239 978042287 511496214 663429293 259949862 473348697 300054196 121965133 949053523 213092596 146940908 649389920 75871150 196198490 971460931 999514298 309843011 911842553 160401901 307993604 691418644 822404946 42464086 157588024 979423892 820888187 717447069 333802535 927739180 14624414 454314516 450494707 899755449 293964664 541524418 487641237 607243532 762359515 67708897 36305496 523026793 84379948 461672032 129676636 566977289 717696997 955115617 590836500 883550360 418717716 82932924 483396552 479234999 775210715 446598779 872465172 88855419 677540334 224967516 342249063 460264172 510919192 164082770 457594757 240551815 342417334 840902148 803639046 653464509 303325498 271200077 476505812 171841906 232511401 165573050 670629041 351570046 818593566 960037903 160989871 532895535 603568965 706943683 611890614 34901189 16751584 841230463 664109057 349756405 859287366 959128738 782362529 362348903 420609759 654602176 34892025 159234616 866389929 415889438 592009024 18497145 686172342 381392952 110189826 175066029 852070828 173016380 915956383 925101391 789328195 773355916 765423307 833671498 713347531 268280640 637102860 912867967 330654115 834394274 14072895 286263107 305411011 127203504 527044372 556333534 335492659 49488285 672408717 55469325 438476433 660102480 252744323 358250112 798079632 740810723 780444705 261432669 694969971 465761317 404829799 963329723 454098838 339756569 616118952 327027752 806211302 988174197 832992524 407884836 404972387 656805412 61643023 978725027 836882085 399273668 313918976 45167503 77376852 646874921 773945219 553670468 416615343 250531032 495565328 745271571 863163910 572833677 222774641 171309503 808728896 692564917 19065672 826519042 530298710 383899893 152945031 413742857 878849494 777470625 409882357 402167028 101933153 655685701 333596080 472663896 43630893 609248288 164031398 562586044 712092547 676642724 964788506 428153375 933587522 650678776 755671846 163224432 502362714 886344310 948366899 356858901 954181970 430761773 573407874 825023077 634240452 587503967 633527974 9262894 591892443 40011780 57225224 373737007 823465435 160997958 932223330 34976927 686437018 398023171 129270085 565568421 821697023 655732815 186412691 88094429 368263050 563376623 274476805 536181977 241041612 868765662 101131686 529442718 729722858 881391052 708927829 849126691 544189982 346439322 625214792 132462549 911855670 241299679 859665796 370120982 821615891 835554662 883642213 912090041 107856940 204328366 965361693 830287496 425092616 399672424 381114157 354446015 739139271 548402173 695846637 553334414 84384922 81773830 834499338 529107866 158335559 125638354 861739778 85365628 371784102 68937187 777826986 764653632 356575270 98728049 995575465 752468200 633987401 975418597 481588986 82704871 960713507 153146975 668679534 489757095 628665567 503530802 350490663 524287235 655562042 24557410 411057183 769080781 31027974 934170413 580031903 702666057 826902441 419554175 197071048 54927024 300519835 491873404 167386125 785146799 758275307 973390330 172252343 87288037 853927867 455971332 752334688 929473640 369245375 36018520 85973624 628275265 823176643 78059498 160172228 432162027 586508834 768290143 241512409 7125976 206750031 46920083 183479973 78690796 872756560 875624211 848843751 591797760 571277629 333927844 574449330 563912544 327627718 626144954 690219758 161435726 585550763 701195266 480915927 976683133 10422337 184394712 484317820 405549974 378701812 280356305 969680449 50137526 102877375 474961203 166652254 820930030 904776373 346702712 568396637 329506498 389337212 708667087 522626463 234878123 56891853 307244187 635296216 967939221 141434358 774229490 538269839 849748577 475752536 820155423 926716319 238342500 37367016 575585056 880935609 25943782 746006706 525461032 589915104 299364005 64309329 647949342 812626411 212354383 748091001 801233437 622416134 900996363 61422702 231066610 660788017 750875633 706560138 705199265 497191104 878578829 823734971 652393697 447217881 603361888 31540482 847147931 311596025 450285663 859677685 961297006 135298159 381737842 563059005 96853550 279874784 379266806 487564825 225308513 266680513 582010684 180474330 741504705 110645984 741382664 495470693 328246716 949933020 172705554 345472180 389074679 95212200 217486984 296824149 349861575 320583436 698790794 238972137 666680246 978677284 87140525 206048934 252598532 381378783 707827321 720251606 813304100 798561921 824365547 289254742 887356986 18071841 953488628 609233944 783000740 17200172 924565751 732221345 420765038 871132896 1191247 910730123 36557020 140138706 884578247 822716676 770985700 397417577 485505824 245359438 234924977 524635488 190391182 252282429 163964961 705785672 851071291 251781820 794252360 601224707 108851395 436513096 30135275 598611530 53865911 775118963 273581830 293785129 608481562 619214179 88024647 78087550 749046247 579083344 267608464 101819005 538706824 974703881 957146233 979457582 470208608 362047344 143455435 300766445 775830595 985519097 318337286 620686570 633033465 231549487 356234972 426969767 663623359 972646192 507161524 670310781 2228421 990566956 508159784 934885399 805171120 260126441 596201351 372484852 452604954 269196354 348221524 27732713 631138061 557695651 917244100 292961693 989535884 837615247 666855492 629630476 275658251 274391323 815853810 715715333 800263922 59538544 678229535 549231020 349817117 66882636 477247187 3066872 524860254 700031617 408284745 842954038 97510394 291773813 502373486 285245060 465582888 53806753 826390118 524852567 65105814 221544722 690784008 940478454 848118499 995335659 701256541 654426620 776607782 693028577 884541220 391837914 128223846 941624509 49401681 899090002 101927199 988189150 998015626 353820413 120106691 822783668 684987305 213628614 70010679 407876678 801003581 258862957 165739602 981061293 255446280 298302214 645374561 564270487 842730114 208898167 749038758 721952453 621534036 847591421 631369684 520413325 48637663 302644647 789164181 507074648 973134259 65966554 720403972 258068261 286795800 779878859 463090227 328301573 194778248 694382600 121064615 467623069 644672562 893014768 583832791 449016231 695351161 464336694 907121840 161473905 525082739 220229730 499229460 39305820 914333035 679684943 527393878 865379166 128478048 393727662 337939647 273292417 24290948 235044738 165581581 482162530 910100669 371343267 9258735 889102770 322142759 890864699 922366346 777807289 484536207 916286027 355540471 735018702 886767354 338778407 250951106 495717344 503810076 484911350 945512812 638299632 631224546 992422195 232992491 839810708 258025 8335663 893992997 188002422 510041348 762835084 399982968 543722451 469649337 215237571 965822517 146104061 595243461 245645983 237182752 652128473 921220500 633354944 729735410 825461602 601100489 859070490 641613015 353209380 670273212 568094067 571370225 670178497 297116407 593131240 861074643 509797744 930669497 852323432 402554374 438670201 996006003 590943287 521960583 385502650 631558221 754021229 319543623 81548581 133804706 828982389 39617194 888261440 770850175 105209230 440573193 541124771 884480552 417901901 912343344 715527038 96777620 16866585 931031264 282001424 127188204 57431982 125349710 943192881 395410448 314939803 366777250 360450761 897172497 930705348 878867833 342428758 387234744 778338272 968460132 124078954 993949182 197979900 412714855 922227755 400437394 136556022 426824570 855942098 944398422 115935746 370193420 525695788 853509602 852694825 332721787 171697436 115790336 304112325 798994332 290926871 775065134 867943431 793501242 815073702 694010143 926734449 379062671 395317480 537823034 595116636 94350796 267367181 762812698 826999668 28083863 595295964 988842508 141489462 882326408 947914798 357535892 931071865 223884971 519040624 510304488 433256674 562582273 117514021 478437235 421907822 626180350 294339682 773205332 16995564 480058636 738434385 478196956 557576576 721683463 515593902 940034580 282145826 134172096 844069197 906393396 322661661 68101498 493359762 261684013 60991632 866241136 802301687 471021601 208902896 844465229 960646282 362142181 464019844 386540466 605994348 640671366 630342376 680706739 607236179 832366273 976161163 610842970 785826568 59661449 267625009 403141155 376391402 355470212 474730609 978678911 860475242 925481359 997967671 6527825 579158157 779412790 38186820 273673587 653015917 416216125 538515881 288677938 294832824 766109210 421391440 146193870 19143983 950035575 886855795 741819900 741902377 187271605 963089699 204402788 758410253 831377764 984380354 291570466 542387931 832018124 660938889 827257161 985597604 723089768 457587459 370424667 321039373 384786278 910714000 205190098 596359377 404526632 843427043 379130267 393603644 372919493 644129924 969614998 811672496 800504456 195951439 393142295 427312420 125041008 794569460 473788776 33311136 416634031 654848885 138903621 453278658 307029292 422622634 388050782 623992380 745321473 783623616 95640792 535795283 766328061 861880246 943460556 356006498 410960674 401101279 442796999 570997333 672365352 955058530 326563657 766562862 633398777 983114941 679284294 950147204 984188211 376640574 599359912 105805567 633862569 337230473 649739978 766986973 259581922 541139733 982572542 77184880 923671704 628872878 568635145 797329566 312854843 411970548 551467426 992254816 890550380 914304987 81157110 380800067 725900930 14305834 60929319 279260650 537272328 697422844 368691656 652200329 49952317 49483841 873997411 244478316 219223442 987982398 943711731 796266350 273873968 333891081 958838890 840662403 941536880 878046478 437216556 889008686 419626336 314660493 505359762 113225483 356464965 686393881 394078569 996661063 402062867 60017178 735329136 413792290 144272375 716650060 121245149 871875444 837718990 148330046 901039321 122279462 340699051 738514388 54000895 781115060 885532501 348470726 868902369 383854002 226225350 841953823 51888259 522360388 353416365 934290622 957024734 907700900 356138221 421799384 214247263 550031519 43663644 361630324 862114149 77881368 869669125 144810733 330498502 136080772 168839974 307678580 459590218 352684141 826259251 821451404 840440623 697785840 35933329 140900748 320671652 734559038 144669916 467987233 842421326 290487326 654178913 795478473 382004677 541332330 580569764 616449624 626638104 619352973 98214620 731009655 895141445 598205196 177611378 210796832 40612546 663041274 748402566 67395876 807009783 870971265 783397226 978377125 212646849 629110368 903447332 78854300 359414001 372518760 771267568 489116500 188846539 705833726 635242940 747385069 412421256 290399901 689203115 23505626 607871444 728283473 240373907 60074851 125142864 341727804 351844735 563350052 355314193 578294036 746630701 747286668 259799327 609582243 940886416 365627487 442640887 664506182 386379855 870112309 401534730 833426799 623818565 234852344 737156668 908339748 154373631 986657130 4030821 637027709 844355393 148336285 654757075 255495465 632086913 983184505 409668550 324095210 991044458 967680313 698618611 966764820 741530715 682909934 550317314 454271250 589509862 926770170 244263184 285364193 341269841 350723479 909540654 749231251 10756632 619953742 296524512 59046606 159156329 492560000 630393246 194454859 696382630 280088289 95544662 572544599 410797799 912814839 761437928 507381333 593639285 370860447 63500969 419882041 380126544 885016969 388083937 985741326 768936106 688881591 973710413 113806194 914579818 263239170 776555165 279807509 77118379 585996181 29362935 367319102 293251642 30337904 738869362 720291141 599041307 976116966 76699804 587904026 798340612 58669087 521487349 607934397 879300320 109432471 484120178 862595012 771841101 615523741 317559290 894680792 352166430 534547669 821034732 705125175 535735771 115669687 246540952 770308404 71939388 728834317 9273793 785443251 136267954 794835833 595595554 902589102 948366814 377979373 524960229 591372210 714792984 747779376 702261805 724354146 573215977 498459488 872918926 299939059 198552209 82212971 377357711 33429679 263155842 423712916 885038639 915097202 335295458 214016244 212336733 142166832 59473421 891419639 195087487 875561581 850686738 320468955 765582060 348998851 617687089 172207924 918978674 886979168 457719907 368300907 71890641 960331141 592900818 79802170 83401021 389756680 438064988 179512625 634438880 491747027 512439572 270235189 508492117 532134498 876159681 886103548 542932783 164481353 136880478 430905746 413940336 83661228 256928920 888623062 263198994 891978438 182909267 425441789 846451586 236985698 570324518 910153231 406282015 567243365 757155290 746878309 822546624 682793794 35482606 387168049 93100331 402330756 92673302 588863222 610337183 466234440 898340280 649679116 345356363 486786752 473551981 770795806 786049748 291959985 918965382 33583787 602627283 982876149 346989189 9492872 475656789 31384571 591488159 193237596 314582617 837861954 872839489 581367586 648199509 667244769 996073864 298012587 18554290 787895042 610219463 356728345 199267915 149430114 159244293 740869989 931589874 264152787 430889084 169110491 287182060 582793915 340506652 54491033 198122863 71568787 709963525 253595411 362360363 956070760 353568529 178501010 459639742 897628252 44311623 244318640 736877118 588239142 295258985 160801245 752529332 206402958 861619303 265319646 840615067 700638450 547837162 327471176 696617061 499985093 156298442 979468041 594037238 296584970 100321432 241363936 733535783 407596765 12931093 962419168 837001284 6574314 776741561 306113777 59873935 99422196 574307373 986697807 670543547 746683728 918277841 196479753 989532785 711735655 912902199 742262915 171432398 161304632 841461158 642399988 764147683 966710227 337206936 775090665 195981108 264539871 233433404 406637248 8791098 747908372 344376565 108989230 665755105 667218370 502437080 876442554 14224906 389710921 724113970 456586815 214963722 914709151 714851072 133486702 824154922 155136973 703171190 418429002 61869861 718996082 899832697 271412394 105404076 838405950 365410084 239602106 845427685 282708344 766848327 911735162 229573864 698221433 23794403 623121981 763430977 374700335 348411567 993225516 568830321 607800987 299900310 989635777 356254573 773710931 988112695 352572236 127366429 907267585 313438308 623042930 419202014 559207650 295331235 617675944 430105089 536171079 580986288 726087612 790694730 329618967 654534137 983474509 242168177 751886155 541665057 18954830 134439588 516761713 665911165 374192775 977679363 242470443 26926490 414754580 419395619 49891757 4595893 722205412 16825740 206345025 574110017 283452219 240128315 784331462 218054501 213586992 658965793 811491373 502035323 132828464 634945185 804115963 194150035 909963641 204587798 5160907 379814126 573865632 670043211 841542345 280125059 124916492 727593729 11125303 825843581 486777464 174689133 928201708 133317306 198647413 686037430 762087119 360048718 713696997 395219579 904217441 651740158 400476801 755935564 585584177 857978310 322275669 785063212 124440677 392561235 788778303 481258774 655848503 595550090 244944499 325545077 890416502 152859903 4685817 371218858 781237761 347190399 571031085 830628489 62238288 421152903 741193023 283218652 895363051 213121226 618832305 200356575 402416 152291502 976066268 395630018 278023569 324877775 551455083 124701227 810300052 55968379 406185949 838694577 425110993 742058549 858457351 590939746 298274232 427547187 313948816 425405245 869598408 783400928 890104692 941794489 417834009 840995162 797764738 564488253 334056403 696006133 184490718 16169381 52751797 534686902 132988031 789543876 187198863 163735256 456774834 849120476 272361416 391643723 970258581 145246503 644534232 843023408 446927261 474057554 335430351 701434206 905890320 424739069 388882893 982691552 565143948 565642556 148276360 502252661 603993470 594370329 324096457 255482639 395753900 325057551 857542126 516825428 441878700 709321360 252218730 95010336 114147946 892978817 29001025 852801281 671028902 132612537 923201933 846603450 17988468 472277637 483291131 456555969 635188666 35056679 501715022 905230016 462212533 220107090 537930459 345223959 45739380 738252464 21281036 877230424 957390171 465309532 664133086 895448522 290963618 683251560 529773154 207784680 693568468 639529049 36025407 879531999 903502673 863885222 266392622 237302547 21628876 832564028 576742013 637437594 227381965 690884605 72744845 468281535 797294383 661955644 508063828 725511297 965704099 28139074 925894876 887360017 311733548 603568845 133720258 820590424 47511969 158737804 500783032 324180590 328820783 179081636 72744963 5502500 192691156 551412782 45152509 48248443 138626021 451763382 523532180 269466923 438682761 330521022 861840585 667627549 188750651 897732921 409219635 653139953 587266380 170172688 305277562 302588537 18694750 313185184 930818012 811212604 542610666 469215802 925695147 102569972 893179067 332752290 47594444 957122320 290981233 805194897 56246585 813219379 843305728 519593011 977851008 819070131 756019246 928034474 801365315 126238235 242739992 447495561 737655734 627637417 412535213 544623705 118341412 538379217 629922353 266776343 816692331 775357112 558331836 961359028 268623483 283882169 923343545 6440852 574619866 235698148 378553191 859302928 267560483 700046202 417036379 703361780 690317442 976890482 470371580 197600257 315011130 456431608 399580166 481398380 293481503 211902952 803460104 959114589 52174876 347545431 53750758 205062769 581000111 134853899 682789207 762545721 571338856 448012286 939885415 969319609 72116334 407014367 231547127 681076714 111260409 315908496 730639672 48267832 304186073 606392233 348193332 515982596 820134125 738637044 434815301 128618275 630749357 467765487 265848732 403350365 118454434 842939469 573079227 84684015 675448552 565569909 201345787 192487433 371828658 705458433 52114951 602814545 665714630 553326145 911492959 477449055 150248189 961860022 272947927 370608447 937039045 383321495 813820693 171616498 860694175 359009871 795477014 932121324 250855585 258986748 181726633 158181271 688541684 667759090 190737906 511325647 690179927 833174326 86350313 695502181 289344410 849619716 477977561 703194525 597049380 398133834 63637985 519719343 26645870 68729642 67894902 707342153 757340038 353826684 961050335 262989067 154335373 982613321 940864440 804760842 118909241 517494097 566685040 344237901 775346004 777495942 423195850 547379283 742171707 121815951 590365024 219004300 192739679 417828678 433345051 552633307 171147463 342085434 861561276 229268507 707641229 680336686 589481303 385711510 410357852 309697176 151639251 916976271 607215097 825199395 359737195 277949114 356070327 711189805 743494703 695356351 848769537 309249610 160546436 5870522 816941268 841268671 564008096 632664510 275417154 683362056 152974351 920362573 155439344 409388114 490508337 256629730 598778520 464263425 237167801 667737447 143984776 315738668 294736431 406876351 279125026 328410908 974360175 287543101 620351322 949896657 3937577 99681835 671353147 399827325 44124767 752537413 662527586 565125382 739151081 188859195 447837569 642045320 974730996 183441970 617187294 342456529 252292735 73672260 800348113 406572004 791067100 633947643 266292553 779500407 737337397 841683162 129579080 250186868 244174853 788279764 279817058 173262971 836203931 551456723 635872322 265672287 58639259 35022386 480390182 977142437 313108860 97598788 298874974 809331208 419293706 338456267 521947856 938807799 628021221 802006657 615679607 281463061 98838529 278606482 640745952 804806585 533171749 203047456 657222059 504770668 580388204 179304382 718958352 737569901 959131846 655972854 634121815 789260848 27899768 304976323 513879391 455720410 956451736 610050327 917973016 346103239 270477970 547413847 282057993 451221253 987992998 594554330 796987338 11242454 24411239 677866605 87406475 576032818 62291261 180393425 895695756 28944451 782268900 513678396 970778019 917298406 818345451 638599124 999509177 19640369 367236406 532187447 180833101 694536167 601165437 799561206 290666479 751200262 205092298 539927317 169203142 893001018 190132479 25267597 864137483 971173735 329811022 95542987 951067532 961415715 190884543 748106542 169652010 251754808 948279981 273101964 543190107 562732839 220085833 919642798 201995432 34211744 315892758 511178703 70606128 762479116 364110187 254698273 101155620 117381123 567750388 337474888 237704777 435123158 984377138 19963612 770215801 163550470 454558454 815626988 959218978 797294282 665806826 4550006 598593989 830585998 833428232 578928112 851654776 941684335 872538400 11291586 745499493 449811391 46789463 896319689 762117705 513668999 760309155 640619478 108245750 919365376 70636368 952054573 314085329 800370201 806042494 124921095 180511828 734050293 997974432 759048208 932393869 766804842 204485630 515156457 33377437 760528258 588059188 255827367 205864763 411270141 175432113 124107346 771841583 432730574 665708601 257758567 191163351 782072218 701722724 392731991 23236773 478286908 118468636 360223750 762462110 990709572 275726115 840248140 443598044 75010931 52361611 125775223 486364686 369573184 438714939 520839624 921296627 21579094 531297137 732771569 416224227 365078292 865920827 578587549 849074758 181177611 921535996 956246760 837857562 138320260 665347822 931263203 119071601 721114872 838496410 635919634 35427056 111075477 46899553 626650349 923653714 101043904 780826103 240267362 907296227 388837773 954852834 416653393 646625798 597014345 220958719 82597647 576565168 440654577 857890558 456848100 239790826 540294840 113561057 590441613 924620626 882749573 690485889 126228922 634895514 369721970 420526601 965169041 350568712 757478222 811393913 108637481 183045621 653303068 5643300 460810256 684616782 12391314 343056946 585402054 415287062 985909403 460201759 716896064 715815394 755609302 842651706 589056358 225159515 593693716 167482663 775327636 538231232 377091549 864404062 132684061 230323553 659635180 876053929 874425027 419714853 880569007 636891306 22545729 414686981 280679880 680638290 783339970 705239183 759477390 717456491 139634278 686389092 26578061 822693392 80899268 698825658 655330817 984528432 574509155 863133914 314623071 988925710 934194495 47465379 983285453 962877379 3927627 558437637 304933029 414439099 124153321 465610887 668167670 337286708 918681715 533620930 857079811 520221890 821574838 732205028 936482242 229680078 432553586 111121966 608544861 105475602 239297243 790052982 989762485 140105246 949441307 41623206 6254810 117950167 43919565 560786491 705198740 570973682 857872004 721560263 466774494 721177213 62811202 482351215 949054053 859887447 935500801 700376685 34511629 636577203 745589806 973707151 344179308 710151065 998576168 94457014 586981197 403397733 504848582 474553688 150058287 534234438 826657998 892022783 189073604 957812672 125953407 29435080 587213426 24588331 659573000 633637349 143424725 489844273 570141966 951065115 86039867 546702164 29927210 441172805 294530086 132544358 641268585 601516751 483642830 800169742 519495882 124525115 694128797 226344522 99511236 315127712 21772721 220023016 273957565 878538278 270739805 375248651 345315475 233294987 690696616 20241324 268601111 725790113 598557388 279756055 771511182 855088845 839533496 531297130 993159983 23036554 420907151 735794457 270515111 660162276 197215015 979173229 600235927 119183358 438672779 229880576 348887317 588304524 759687802 108553282 669340711 175564377 212939749 413727223 579020107 565802179 47257460 482184119 41083378 284597050 411123970 32851565 146007296 777097157 35553565 563793625 165486414 268495740 377230727 270590990 544297513 40611087 440253368 121946100 340011472 684597053 382041433 501803463 541917689 898353502 892252362 220380822 18562124 951941082 686629277 8212421 808533223 64112816 721696024 606363019 866530520 66648560 688522935 681573749 875901606 507222593 218679465 374585569 616894153 553771356 838321742 905999236 798366253 23684750 103473343 575588325 537728692 947187002 523159878 152701919 106632112 251955029 371794401 774000931 935538285 168942057 689176003 234125748 737906341 803528594 143693268 83364457 720170762 146929412 762755884 56236398 699564479 22076291 35641756 22994115 612106463 696391017 269409317 85027515 425698037 354663075 792227198 786634879 213439362 493143349 624457874 677824137 539752827 546568626 527710976 7699241 419672520 233926084 604086682 596978947 537552839 814073002 801364710 512660879 330381766 984108981 137249184 927071128 785469836 201940170 129013046 412234686 895748305 862384355 785653834 575779060 248617409 566160014 34811188 727217922 448863613 749637228 631887486 191797508 726162585 236544947 977481574 747992553 872414111 424411309 353857119 671820021 106543499 263415095 433751440 884372031 950676558 613599043 967876947 366848820 821332812 679626582 224324791 577200402 573472221 452390154 562440703 406618478 820122063 477856141 132540705 219687598 8879586 273528865 195863112 547362960 609692235 841075866 864281171 777112226 808305970 984930787 893865811 126518471 96287028 533732985 137451793 909157816 786395105 611921646 335495045 33666944 882089023 833055847 64428384 688441343 160902981 980231967 615069315 987232617 850231393 569082594 822424710 635146948 56403955 368800659 256085298 158522989 27208143 624482214 658920711 360774804 766989759 778290342 670735287 842073019 798024191 475433904 85782185 370705723 802841535 206301174 472666999 592316862 4412837 944146238 541801072 182673350 180340296 529377889 378371863 247767077 24943798 74513356 386944162 343714947 489458415 980262914 662515836 724273628 189873767 675403799 502014147 980541695 484027016 565305911 806195402 586702608 541309742 703669789 570018712 359220230 601824041 408357276 214560872 237811502 564797118 321552666 112881447 569699750 954519078 685743120 232105209 316682979 555214862 375443851 267018421 444693803 935954454 274835630 660166500 852301340 736889170 286094638 264734918 526839587 273840844 512343508 164961229 729101318 587531775 871639295 118079263 749552475 648276318 612709151 911125912 246913806 988751563 833470779 505246918 782572255 933333024 914315628 634353003 393545953 806388650 495891808 301944831 224363517 75696808 421662424 165398828 187642477 325825488 216620074 978348624 571546689 174310859 421348543 629593598 729647581 462116277 357586838 806631549 915551353 933789598 933132224 29238855 846339744 238842635 597096674 326881420 686532786 698209141 127082422 58489261 526917986 882439880 909966474 212203969 887655480 350745062 872399807 590869267 891774991 372702498 585139787 833211041 101239704 425231046 215678520 196996767 92274134 307819917 707429666 963684594 326303904 782624553 813212861 772925878 14064931 114445502 235158349 643191737 52247645 248161125 459176493 705970941 198204323 591042730 86790217 854462266 231080220 645649167 681557667 410771033 975247939 532362887 861238481 298270458 553558632 413453563 747129213 959817967 660745008 833982665 837263588 20923327 261992721 689087295 594207576 272430884 917880279 759365924 730181566 126501773 780326178 793549616 697604113 22691997 453258469 637329552 142986717 693833130 753721321 635060067 482164420 226519615 116929608 172202303 86440189 186343066 491707890 94994348 750578640 376789038 507260715 22646439 326865947 132834338 425199371 325117729 316111056 287903185 551892477 716332926 192009076 698458952 930907200 688422423 517165218 422320076 842067561 377458104 197189254 180002897 840263647 722781218 790157155 47571459 758021982 359012490 272466446 327398593 545304949 911557144 871552624 909450653 741229320 268221034 125657607 411992413 65320910 197177358 399107173 208939773 79563475 295421707 42297776 119100971 905382136 744300377 543417121 342877130 745289582 150062948 74362245 713910384 32274495 59147917 191548351 1271015 980054725 966947753 277075268 434384559 364785713 911646592 519946397 218066043 108929541 54982991 566301672 293889200 146669210 53358919 890853720 584429033 600372123 912969483 845302705 968531317 293099656 621403702 394549965 254499287 978301237 858372307 788345369 363141957 675524168 245982691 965884184 538354218 288869310 944272347 191775199 856346021 247703910 113308963 523676055 881810952 778180964 270585496 42045695 867735897 531633328 50374666 261525224 295049684 883337109 384683199 578852535 57623143 178731058 367496174 844385510 496365364 303629564 725900613 517041538 715019283 982778170 557944676 937773742 563405069 652900232 911226464 672918816 984476386 257942613 884061249 667850911 591674756 346566244 873013123 929323147 996032666 394038095 496303513 858080341 419639294 628097023 365477733 395224578 233725503 176375605 520169410 832620204 794557216 323941893 795099643 680033537 800483351 34830934 363061840 131979714 596057295 857511779 252929656 869643333 960048038 466049084 28246554 501180660 959522352 482383430 880504659 484747724 664953266 792789943 332128563 192835807 567093159 153244187 866754623 710744786 275860543 673661138 865339121 125255008 788957915 785988495 912628275 767928789 443725970 473015514 114503144 328474003 360337072 532735119 561478500 800153232 865329969 124798557 933754350 82130390 896002378 286581321 832412485 543543811 759239137 464555816 94136344 887633350 432702480 633303848 1751693 382753384 116520358 795940423 444013243 438430272 195273637 272016090 357277487 66262846 475015877 711738888 35332971 253236065 700605424 227700813 167535202 948542273 826520772 920073208 443355390 89951878 584415252 909610924 549548187 631673966 427647079 313055971 731091849 493602379 415363704 106136166 372660621 224333315 265927604 870043862 766042720 203409551 863120575 599226663 485970991 919010428 275262447 69676831 885224985 768432237 912084943 709242332 869861044 237035926 625275806 658920011 730555529 770289731 489226190 543078322 665838227 278304847 172392581 401194023 961640132 579044781 558993951 900328726 360722049 641049315 500250026 288440766 621957409 606948746 217951080 662440373 641594481 22841551 930095953 522535776 360793395 22543861 501033870 774499964 50814362 783100625 675997951 752132248 202563023 971784781 130482102 261654424 62069872 173123813 806038394 125800500 965839116 30059309 318864453 558245494 818854568 135132233 613967046 261934144 751971389 619614835 787951840 810959812 378386743 154924920 692471849 489572362 497430519 651090747 350466668 405806445 109410386 100376113 507203624 587758110 515341329 576173540 800369934 849921696 523189103 244708721 863637638 314316874 458138014 648526857 34204715 732230600 56238402 777411955 999011402 351197083 942242036 567343752 992770664 333888148 640635328 998372790 513677753 986763869 469159335 236789630 200423849 413965808 829610014 67286263 829810775 512619549 166546061 395692616 959200533 403543561 657427154 577104177 686151914 359756202 368366011 186387331 508641552 562911820 691231631 337587619 607750006 282732302 824036486 504434443 503483198 475748710 682556236 983636169 764753728 522400665 915155842 580186623 128241798 476534596 726901309 501885537 632540366 976243670 790482053 777022138 876651787 952141075 243568087 503254375 338175972 677744530 395572388 385322714 788314676 901116736 356049616 249691672 31062920 840765916 685567540 509721404 207288996 501193592 557019932 475194354 877459455 580487934 400332489 244168700 269562946 171584169 410563056 435981233 825075916 442472584 915846457 799682681 697521201 314759422 135012289 506516306 108952758 800811333 733317016 150232910 492537559 95622630 949202500 372964883 112129986 583171906 880676668 680248409 578022361 926643724 605783662 38078576 6948660 246358989 756923578 911074487 57865245 232002399 12205685 10278 309364114 932916083 967224807 429243077 148359110 977928971 451275725 294510643 747659936 496161792 228508119 248762400 150215226 20140413 380844843 497546963 83255651 43396226 155289313 511794084 345262110 64971874 937673348 857770371 875819041 575597893 593889431 690984304 481179991 102913191 897229070 211780864 227771998 773755351 470557137 251424991 772546314 285881977 108139325 305632584 103623904 558974724 771942562 770086543 458202524 136449861 929767110 419900823 441484203 511771355 66642016 317674076 549405874 11883448 519294622 388170859 268348933 234715814 144970655 553258853 636170544 581942720 638108922 201505664 673142898 795407604 761173046 670499845 347985213 949218440 258926416 627134419 360100024 255887250 347183416 244160475 450790461 840451711 563616851 279178146 224623579 911728013 235309818 734908866 286095060 620246864 757768698 791968361 4708384 78562609 767548179 841811928 824562921 875576298 745436537 570896101 37875981 812094987 998844502 236340601 235769248 189933689 378435398 41862931 77020519 843794665 731130585 846208324 823454557 436430953 221462292 361777201 735611186 52046296 522805744 807388436 472347079 351794281 896954842 872143547 377956275 432771108 160092722 260432392 232866753 95706725 608066508 132814959 969241456 768169563 70753137 210707579 898796401 239540106 616232543 277460553 457913389 62155850 267513029 14909451 377726525 187522629 588380744 713093766 255716592 381944061 349885569 426650004 919086280 231870020 884609405 138422947 595556349 545526465 636853819 902676277 783546616 980353650 817103666 730144094 792888025 792553765 736704200 217887305 135959538 294568701 814307292 196820659 78101066 486986995 872970813 897628014 834842140 364403027 863402800 807398880 652302933 463867451 824439278 685909121 743563033 990073375 9348643 53333345 316409406 594625096 659858545 368237215 94647247 559536976 116594923 191457523 727861386 834077607 701418906 774827045 629379683 319314961 910073084 732739475 192289535 529635878 949746303 803793071 684653114 942042321 609415947 29428607 37802657 939193554 712995189 980680988 311723513 315999548 177254157 23340083 305377206 594498551 443831825 366822791 721448325 317694015 258704951 873616493 811174338 786715427 551259431 144237390 804682242 362585095 515337471 798467112 721582987 729017122 333020365 413906702 820912087 793000961 949868824 153848483 867378453 730154498 475220568 292902563 375243432 689852122 708235641 270987355 496984486 793755920 273061981 315386668 289933658 827920511 427738199 837981964 277631426 994761944 419468464 128061700 452658193 213711389 432894757 506782643 532453166 240285992 702540903 909337033 414285364 138035746 660302490 21775501 412004592 990477068 425839062 370500696 24441958 397443641 789492905 820011288 784622925 276696274 946033812 141456078 594728078 660090705 956115593 843745296 157799368 178617862 10259828 725646472 749827535 374623125 421390511 936827250 632242985 354257270 70185611 316006434 417476752 630323316 918837966 846398588 677764978 642944303 357559600 932567418 584575092 161356954 450241501 642865578 843512811 260815997 803352054 920146861 986863713 35316 258497040 17671866 864814358 523875310 586757811 998007064 814710397 957489583 961692380 262182055 274291898 694124366 351877755 102995800 743751723 632222264 87677174 798503344 442642908 870261675 213094308 799220042 304527377 585593148 820242515 630771538 416450752 8351569 461316547 483446026 811873300 982790056 592947241 63452232 191873771 797516750 411178413 390360566 464168281 300065193 926238444 592129169 958507299 224777711 104927094 228252843 261073477 777345708 490703953 796585834 616629613 326019008 769845876 95270150 42491005 417337695 170805581 526110542 785451789 484144271 269493052 717070372 777974502 181612461 459350549 471672316 598050952 537035496 278401442 936547937 528934821 548783301 136919071 515820145 330394532 540521113 405457084 150274396 62511647 372965650 886460959 124009704 272488805 12408495 280293087 266491888 409912056 130807363 256784394 632770784 46952976 842054518 490505120 728051259 358011927 780943172 135518485 872882454 656522540 172659836 855229395 391153562 509921952 648902722 362531254 164076421 602237819 624611981 499267470 584872618 108171512 83208874 533186464 867800428 581624068 390264247 21998118 3386695 847653059 805177129 808315338 3724104 930256139 316922694 827513903 528445072 894306536 370934188 521821288 813401300 25834006 629551560 378765695 405307616 424939402 313566048 442494192 281733903 107454954 835985162 846192939 677144533 117169680 65113778 412013077 11257910 520369035 716553752 803312007 76076108 618689821 947042127 143679438 815735236 187210558 613073728 133073449 652766305 589025943 545538597 61134671 819442808 97578121 631405582 301184998 897420659 908204964 712953695 704913165 295468622 61934640 773347152 154804947 606988829 904051879 777468524 115147965 597365380 779628600 660886290 643543108 264091709 740556102 83921399 399212372 656973718 194635239 803809442 476837071 716055792 179386470 511144431 178543880 501026113 37569474 877520013 408720969 593862291 737995821 458405248 118914893 481657475 377207181 173915295 702155718 62067907 640163838 162056983 330900184 597231000 891778637 495386598 268118428 91232860 587556991 357142625 297934750 417229821 619386952 931414702 359994208 846306684 489338261 755460683 92217557 271427184 483230979 835408005 54864870 550945152 301922405 857407234 504222449 123075820 132839745 921229880 852973381 93102853 346724692 231957491 380541351 737859249 915248906 93536211 248525519 5134824 957893638 344923083 474978284 230851129 91578784 856941732 422619420 722507078 778167650 51153528 721923061 662590275 885760906 14271287 365831679 539835259 293017484 921815333 767843640 772274379 999123597 757998938 779814542 42090021 414126569 37655617 29045352 505272591 376415661 169755161 323629854 981965345 621649693 345224055 261279100 690545547 679234864 153677250 83237699 423156620 512721679 409155510 560771496 653208828 281947290 16428002 382761428 703216067 980965090 868101418 337816930 948503391 99952816 26056517 77775587 831762275 716574973 966400831 277133405 448625650 459766136 856746489 858684872 395962440 886853379 68670628 328072080 616473906 286123574 783082826 495951638 262732688 816045531 357687109 138403631 504162522 536299888 77133766 538051747 926023064 188093864 845671503 260700847 626147817 865158890 967635769 888685444 49573885 625806801 227457583 545927877 416535707 268859306 861612209 706875917 655763356 948012793 422468754 451002215 139891822 376190452 773128827 825130452 286493841 925057798 585535590 492326345 242366493 127927630 559213603 791533998 556610619 70706461 777269206 411148896 535761831 472779900 300521079 855973295 862360373 380027811 316268113 700699873 337539657 296394627 682840451 683393325 496058205 52656702 706781314 809943617 722020479 552766889 284718229 127221949 836079568 18508241 326517848 522025654 100318726 232383347 288912954 262574132 772348651 179425922 306945790 638219700 898650587 878251684 414767166 309732518 219321418 619781558 805214947 589236208 266011196 661071940 110209454 266689129 585299147 309643281 549894579 158038367 18036389 602071189 523229400 631466770 614666380 9403258 346547291 629628214 395838932 224118047 331321161 791377269 640945896 715980565 685652744 24659947 422393285 199437476 607694798 160717224 272262268 209128775 527879463 644977458 767615413 332400940 583986291 117739264 143953703 934647733 593606501 900976128 740173857 856396793 191791749 265871889 977182212 934278467 714061231 174049418 371137223 157846930 494660242 150479025 751506802 399505432 558924594 219108933 929983651 897068476 705738343 775375861 738863884 688050584 59774044 272629223 689840626 732437371 903319824 727073330 824586672 59977319 798675672 366068068 172520498 414469908 767704795 457063164 706520443 869141100 187496341 742259697 31882783 901608461 111733589 1052457 390333897 520863434 798244542 615547395 80854967 499929898 828504906 110588110 602828601 419340263 456383938 829733199 642969141 749978225 984960711 667689279 746204070 624220521 101589837 38182091 673762328 934285094 249174810 948213522 178112046 494711859 214405964 537155243 48031005 432235983 633086672 525008924 571505966 126508651 108239084 4570212 65410623 744631344 477039541 382603122 171638851 843948919 645914778 476570795 666055101 198580046 63679191 397851496 384879177 696681466 252709891 766170997 176916244 997180783 467885187 293384084 99988319 27430362 559675924 979942904 526614784 538769432 870354501 196297930 804121312 476847676 967116538 208089768 725570430 841019405 287340267 143030561 116859242 889705861 541248546 479814970 411421643 879574867 873988225 943652844 157360858 513759578 684539962 860496035 642367077 51924272 460931669 3558336 674340429 368606368 84989741 783461656 522088200 863629864 502943987 726669940 531435039 74334588 580662314 261797391 38686897 802361345 87878185 967360795 41995759 891026771 896983452 850932284 961888158 265146815 61175555 686749707 912178328 251107017 749392690 310199188 77625675 178308520 303418320 563134168 101360696 186674629 956434904 732930380 255334517 860328256 781154842 603767385 724258348 372497771 201997755 907655130 888897306 25306956 709464752 80220321 268500752 492052511 568120392 139734257 675111030 413111250 189182879 458495749 242383043 296229768 687694380 732908936 769826566 46300183 179400244 475922971 421733984 945222794 934068564 294976979 728563848 559254687 379662587 881119161 83874373 364462409 639358701 393405256 416359927 514630959 186489793 204179185 427733007 277415211 40503140 454225050 820322707 477653709 809356180 100493339 67650715 681375958 316385894 884654528 170805974 844442557 160252609 165037258 18972678 926500397 889554145 964219886 699061887 976122757 168423125 590589396 906303916 191942231 842201856 189233049 283024523 854565609 577332891 811092301 201773612 459356599 430688818 107422326 82516021 220068847 665382435 773860492 697245025 149154291 90618658 684299643 909947388 364645851 650414776 635050532 877998697 723739120 546462655 661682907 654444956 268242226 597344488 798719466 300284321 562311635 278822197 546535949 356618771 252167610 356014719 139344629 331476645 284323073 745521649 143673797 140437405 764758648 551425675 431797656 965902932 847250976 258573216 21336569 313495991 184887216 495990616 716560232 13050569 844052242 581818671 685487068 11467039 881134823 482254452 158375740 156089186 229561599 472751307 506541029 312056273 604166883 12069035 101404455 446156988 884890187 161907681 479009224 109900042 309422504 890977803 127348351 162118324 623625371 732741918 512466042 163107143 504222844 745041889 738891737 484637798 22392020 586053744 910701616 905380422 266121699 289537209 134416649 83602993 145024283 469246722 696801888 44556548 201064354 932093537 880459045 137031088 495944404 223123779 143033789 376074172 592113343 886949350 265426562 349921729 479599270 419478750 969235006 939775469 485775231 681760660 59084468 158566529 857587829 191665858 989814039 950057555 2838374 111627000 231753361 836395341 718676837 762173722 371448510 362050284 872927545 834815712 907876910 322612417 171927517 661212501 481038566 893082356 830117630 309009241 301948127 901274300 97642368 360261151 363105414 297960168 790752762 396349359 429084475 67569241 717744437 241661797 371205586 51452549 764475056 176703088 275243797 414601718 325704479 710786644 902172735 328390345 713070312 748159849 385415554 146182960 432665764 504419161 18079875 185614832 787490212 383972262 510477529 628321508 258310250 101910049 259953297 123619704 148620587 184069492 821204141 350818606 750194260 817294234 185959328 562725405 726840066 509634145 883012563 708649837 451199880 392182767 163153444 594512348 485677037 118600506 106915426 586447932 396704875 59873935 321820626 43527154 724478450 423738892 670815149 40401785 6785186 242779173 633888159 938428125 963422804 220562978 54130762 229592641 202986258 763229856 151856577 48882777 463691163 571834380 145866253 52876016 792686048 571866923 972333996 487348580 147905930 708395413 71504909 275173157 75819633 335578165 568629781 93808185 194190630 790110667 615991965 656788411 221950826 26258794 346941169 194031191 35202741 210679034 518351186 427650256 814158512 255513015 48613237 465115771 230156731 386500272 30704387 329024961 500331880 100950857 426639383 206308513 288258302 279810489 953974723 807734571 838580215 858280333 729123467 215273478 527727746 592639011 841022695 228434155 391562241 709489456 883050438 54695719 962355084 14087483 218251014 776613917 207655021 474970655 846934525 517400514 248550562 577987981 886090739 509322015 483445087 59055495 722573989 487064275 693870985 973214438 689363140 480921487 561143867 110525398 714542196 724568728 65018181 968877141 219225549 715075656 161738664 655803063 753321310 117581452 451474459 643299877 636738213 835796327 539907977 40495897 680295064 330735470 575702417 639261667 809512991 300199499 716077829 833948455 762305175 642262843 822024299 250119773 22277200 443198863 659048575 8374352 909092624 591412014 381133487 967236000 766743695 658227474 217574814 692005184 664177913 534659527 179480993 455116536 621573999 618706415 122319173 234729956 523257990 345449664 90792903 829059315 61956806 101459588 323867546 745308008 643142444 376560920 470482149 41700189 491886504 358082669 648689154 837390907 879145888 335655179 66387457 487079748 668895339 442709641 176421667 763018250 586985943 674238486 100456287 368299764 101759652 642523379 735217376 184554944 657673479 278900983 836014212 35300859 982923560 38358794 733874271 660068235 859580836 936410026 136914486 862043942 42115595 218764649 189655045 868053720 766380387 156047724 87331961 865995393 114604195 689223662 184074615 363591765 504088377 71432379 571103891 429822298 438159749 388255157 230757786 327516141 71093596 437875027 74313993 511966781 408017029 276609309 856937619 870480079 777717055 970280497 203856798 727094008 159393466 180812737 55652806 824438118 362743705 517267859 457783129 590311064 116654198 466172031 579364314 887434081 84932190 924880629 932970623 717991273 398704977 141723509 474471603 359105964 983841987 220509972 867164820 317377785 603543070 419339773 163086198 789290612 156361022 693509614 385498206 756913684 954669811 224040119 981911687 629789477 667514243 250066623 563665889 853745864 586860325 573161343 723553677 288499822 698451590 693502980 652970082 418797153 250199368 854131057 730638699 91175996 887071358 77375867 904237159 877229421 906761010 491865323 242327624 188161466 297864928 818434592 90116532 794521529 251456504 248540554 966337415 791739222 157195359 841825328 280256847 925646417 418151918 80927787 385024463 196025533 680635634 356997929 215634300 668166531 384328874 331353323 517358851 96722141 503999437 544588231 108282305 896201947 297113345 49706278 356400713 612943841 892821861 610167815 818045666 534826791 546720520 641041274 226877959 411213112 699302767 782846246 291003621 390568563 491340819 231001029 719923680 61197709 875087585 437726114 393798414 14275597 357635256 625694498 6987450 62715087 478772206 40081208 744709603 781795970 33464524 836758510 769988282 847155242 142275085 290060003 654271784 701766558 233605475 602640840 201684805 953611787 405280754 456501474 95694818 937123439 984388307 196169099 860820224 535523359 770431379 686337201 245406295 839193409 168330417 194434390 232526288 368608083 532632099 775597838 935472139 916299682 735431122 604370052 814963418 781621716 600910361 477439989 35795908 337528415 303508554 769388979 37667459 457170191 209539369 654848675 403707270 261921668 394236271 384182464 483385968 324037041 517213768 699613078 839449751 131225695 421912533 92133063 991515526 325575592 18101163 828348554 419449723 754912124 844651347 784574503 539164138 628176415 40449224 133304444 989933048 805843625 519094012 649097339 336357632 24233860 838975058 949641641 606468370 528188146 135016229 208763041 48251759 318412165 575411264 694079375 708028686 592008869 966212453 220175030 178066715 334411534 34479047 563989226 645725042 163100495 1701519 42820119 190361896 5322315 837586778 346732984 225261827 814862268 594219193 98201440 350509053 945265323 659861679 722565429 937494469 805413881 275457335 357156975 549063997 234147546 59438268 5737950 262259965 803856213 429417631 66212962 641565647 105185989 296575413 666722160 309795633 499660379 852040902 213031828 698104790 200751513 267032335 563001065 332266021 615378648 359416513 773634467 560636600 129249219 533779328 576917125 258515167 42590170 271775460 622902123 639861531 694857968 912323835 33003458 533279651 865915310 183224517 996507403 153829090 539758094 512036535 608350556 341408758 179131360 83659065 839796190 35056435 601683272 639669032 755959632 697427614 930315582 320252500 18248322 62029427 793532428 89633795 446787803 474696096 292727252 411620205 957360340 771490375 648921352 304946749 435443323 674630208 887226608 531668246 844121073 98482580 816752680 428440588 893512684 529645315 4635422 512037671 432491574 747659903 928763544 400662244 671211052 78669743 626279981 457933491 639287103 861385837 268143303 98723706 528768887 420798280 226315047 589140496 642641387 704945155 909023841 935854531 338542922 967484948 218840667 723983059 755929173 961774374 528370259 900593908 577557090 768064407 680584534 338337232 573306843 666670843 510634698 577649539 877365437 456184983 243525861 23886109 727530778 889024999 166493491 566271780 37420951 927206680 370904852 715792911 768263662 777944974 733613115 90342092 411322221 388425312 489496880 568560442 507553654 122875607 511066575 789389488 267404797 673762035 485675463 364520053 421149709 139841510 417799964 48174149 399700035 311404694 23348390 843819218 797013329 504010783 465082512 303549505 866113661 384896079 169315545 326082217 363407903 467982889 145904086 879399576 641453606 279027811 794676910 426227597 357905044 414603239 557234141 177340031 225459198 980752469 779572146 125894740 129695757 740947584 12578512 779385963 102534143 373273325 86727345 728465171 708720422 537995863 382244894 427967505 101754216 351686189 824212920 51634462 644887997 583586578 231796339 829979751 992268981 903984477 812117525 998049548 340903151 903176087 786108348 842308001 514186147 1752319 386958421 821815983 66873625 333147145 897075493 453707060 881190704 472089306 852204612 656518431 778675160 319483854 565421341 49679317 711853464 768013299 601575152 617420975 83127305 902683019 32864081 117920633 863328344 6210702 929992870 849796341 134194632 519734053 674517164 949381462 739666478 195405872 384124658 223170758 671599219 687010242 89223004 534688736 285111574 966711199 630618273 286299190 899580583 728217541 768329422 678280908 904373325 467669216 19947458 291730587 15893057 609118420 898500528 14494991 638354001 419192631 837882783 659518602 96576606 64265171 963494893 978971359 577621726 613006121 172990152 8005591 679286107 810225385 225047220 437422511 45456625 601411196 76118792 733764504 767016148 794312570 667952240 758165046 778641608 443280948 949937516 936620578 343990183 210927147 230671056 297695848 114166751 47223446 639892034 291279113 631132657 548182753 139767488 378904442 506422515 10465576 26949399 623823652 783647503 80248512 159837805 349137890 282128386 404905135 902026423 103753862 131241374 156685871 18051907 740470612 195299912 131991343 101450032 2634372 220310906 851209426 419966961 670166212 798841922 718491117 76223439 643207093 847855042 402222477 930794596 191528042 387341230 900034927 735247136 578022892 446116049 658362503 621150663 674998712 96761224 207049594 756975856 762418750 658516037 459106595 310389896 534083940 933687309 977412370 189459533 29988098 119442683 382168584 600902740 864973156 602474171 224060540 515173764 551904715 386554127 739185433 352088601 206865644 143333454 663780158 829756449 926279023 654049248 752487292 248662530 403446385 150028483 271524380 964874482 519273986 367910921 716739991 913177470 836404136 495510872 488122139 742438404 862940379 673448296 955893005 76982072 673054087 698154633 296603521 795386531 194284685 419637018 72822980 7324447 404714561 914162195 317865427 928361308 561477357 629226876 977012449 43203679 11769677 239568627 143648213 787011582 940297490 823746603 718223561 367419749 865135967 722002791 1194636 925847955 786102607 390154243 177340193 946721246 760048749 103662828 475536958 143420011 502964538 245439778 369078222 595432119 331972522 225078845 2956912 746601489 233284519 271507173 340221941 311096349 547024781 801977177 763035621 216243538 53638828 785412073 617269243 829990269 539931082 78452604 120017061 886274108 23231902 643811851 492035973 674558340 802818390 642478884 858569202 719526428 762149138 50265704 215706488 700605984 405536358 472178701 832858707 976762750 856662236 832060252 808096760 572960892 521060976 10758452 536470925 509969456 677782034 170226309 413686380 915607814 17123368 896562902 697471652 700560703 409249033 925461697 628000632 275178860 761532290 985248881 203059678 216151798 178793301 512261674 909668096 770333850 894626230 470402242 314120383 254332645 256053708 166610976 108857899 4597948 117082934 963768260 414413836 203968471 493017731 815342399 366621020 565039425 847269304 392634038 10418123 914877402 934220495 375327587 917170746 460183765 616665650 151023636 807726400 628773434 848766788 962977706 129317800 113895269 593079512 175112092 811720945 941574533 510048696 525276785 824945101 823643678 694192927 620878409 80477858 29214600 114421567 953103189 979035148 196220269 600880573 95814235 745888089 448663887 344580144 25649459 24761099 2903295 830612133 773782348 403391322 184631079 786903070 882170408 348397232 595967426 851383054 78844891 681240619 134653598 308718047 548500880 422618142 706351073 953282924 275842564 672097424 157416577 33165191 863872521 421490107 708024010 439929716 876828421 266564750 717607132 356879980 762724720 64591148 724777771 199160859 498230105 95559019 22567165 788610339 288052450 258446166 986442992 950987159 273044672 821023148 666862961 509780352 318718652 760026206 330013509 733531484 230625844 74560276 697223172 649711770 911818394 542852009 996258969 48206879 689890292 266746027 534572996 430462148 273267546 582744028 918917272 254363093 291510652 23459507 837334781 415618451 157668122 261741788 606721583 584060851 636325769 589214388 365527869 805966814 846190389 6848974 254038411 211434543 420026393 318087536 929218896 524270008 756933704 717078294 382566937 238976765 172671080 402700526 261203268 950464631 33563698 28731483 743535238 370306322 994772212 149871219 539855974 691896495 57883151 19352193 796132031 883130531 634377592 310735491 305897282 655102006 58909243 570850220 651896817 152556837 467450612 45710052 248346021 181299745 806910036 214280515 444968586 904917326 22448034 664207514 954106526 519631557 109099319 408921578 344515637 395558162 308280577 298596842 220597880 874266550 589861121 494227333 248193505 667626406 668514765 64160346 22858944 688652746 405038350 283866427 412736441 987045759 910013443 960056494 132552772 824258326 37787645 279213423 832726828 59942994 581010145 284817132 791840529 642381550 705030569 263285191 708620006 965035797 849453795 869858392 456117875 69374440 705504048 508909353 30821075 326790652 736382918 793686392 728679671 605657561 358325487 663110584 324066850 274390652 992485000 202357776 180731500 594473429 166812291 361013466 185764159 765042506 871537509 582201637 450680285 601414707 224628424 637891892 736346583 746485340 917435866 862710013 775895959 207386246 765964253 137817771 134088408 21034725 440352421 631719709 701577000 92263331 249230109 66415716 371936365 875340124 124093378 998686281 391397213 262675872 812354342 945541316 950145028 740454773 817743471 839795846 156799042 31820754 155385813 491303792 174971467 27736613 720456487 139697434 235227429 835815630 534497863 257428301 454282029 806475170 732577193 829470345 347691154 349891177 674821848 749568640 703965145 840902495 841796338 609312921 326267991 131146679 373304615 742943854 407453370 875416083 286779197 722019918 927356289 377076494 517945871 189222332 752278911 538054066 697200649 711099374 286095452 817835010 74689454 915963471 582404372 705242482 839035411 141295869 323309174 875574121 116899681 11009355 315486629 629452230 581633366 938795072 853235867 210630488 696968644 648032535 919922337 525786725 896804113 564478909 386457305 473698084 225539254 8791894 552806580 20328515 512465856 97496761 65640572 324666721 981920594 804624623 128384459 769145749 54296353 493468088 324464146 629765605 935799799 589321222 212031764 296722896 882737712 671228031 449146216 363222981 544497216 587688959 315650298 394080681 805593386 111266324 977621386 902684501 200287498 378062208 512820523 323294486 888632205 930688699 577063622 686030892 188203636 137383023 833168021 736903499 390175765 865060346 416761000 895623965 218091993 762741231 905057123 570702013 323494591 971330197 879503870 908931645 954156504 127530086 337700612 866875169 454843593 649395346 614935252 238532322 145718348 317914490 122272803 917369709 902312111 639848757 677102712 136390049 178587219 256891918 94504623 616946644 726341166 536104707 741510007 29224015 686034506 347128904 849814484 103382477 560747076 982445506 730829725 198210560 525383117 848377229 9735679 794805260 845667117 744596087 523113464 539878154 593160123 958415490 128265437 492454023 275593830 123237222 993601236 505109762 889380911 965013260 68493659 73782897 568927404 762383892 309844927 771083453 825174663 609582160 430978470 255828033 320181245 319139655 878865286 973261903 714270560 313278643 95660843 434971051 514600341 77766915 696732213 660271886 231052951 182320090 482267287 684383140 781764082 319878286 22057753 68144526 746197833 482442921 455074775 457016417 425312976 216127084 368700097 403427238 693768658 747267911 205583897 703637848 676272428 140074082 937463544 356661353 805468624 613303576 834653640 450584381 554800964 610419062 589040331 257957420 299650080 982025409 669663891 646501381 252128404 234985453 327617160 538303622 927055583 950687782 780062054 732457701 782387673 138650955 611019196 491361354 480029546 50816110 318300781 737518674 292448528 399861845 826828595 846896014 832868445 515940348 75095319 739784194 770419063 889939217 894780154 831260582 265004439 191058039 620823056 962009832 282726282 637280964 122482272 432443688 309421619 125343426 200216389 530725179 893787911 206183921 395001840 628565481 582413455 962540804 930266083 634653295 225580778 863195744 331479415 532048126 728358472 204935328 796592215 613646138 608922480 856802067 971144707 704268987 685493819 187828796 730614350 600616335 834098710 505030737 683038177 325069494 363918980 688545213 125436086 388385445 850667930 213695903 341164189 615645636 275940482 981018185 148978106 363312880 107401208 855641537 808575749 805428730 91260112 333174851 246919880 430065701 955110510 803032253 434704165 676255404 789403980 66692433 801107086 270456122 579771256 632366550 951364683 221551728 841668371 703630936 943995127 451879522 174002899 170299796 899892483 254647578 397478529 93221757 485748018 153676564 502776700 492899258 267145499 854646720 480801589 683577381 795163051 803400196 48376241 979965773 682398112 722934455 126320650 531228405 504293903 919487271 705472750 995486867 463348446 492659604 427253534 230090706 809539915 763852210 677758449 177126160 299823203 962463019 787893198 749896672 957931916 793884699 281539765 476785546 375277820 601413522 913180855 701949830 843601471 651429910 851591801 853185541 598422196 335855646 261317046 195461736 574566929 708091032 986751930 694616518 114114267 161300324 496859623 814380907 36096239 631440854 743631924 558875987 439870972 630733112 427179945 786707123 185137670 570253637 931573476 450137201 348937189 675992752 152533143 2111399 765202884 261282203 358854151 8262692 589839778 648788512 874068879 552458986 853844436 945520844 969641755 459406513 92162433 492376351 780895405 926511203 881166117 133144077 604831452 201468830 702041358 168458367 80584016 175439669 135618530 877878227 121055559 641544111 755186455 662516312 462290963 153934279 500959610 210750419 454269850 826301674 534208937 621347326 419903189 200233916 671447705 521388803 482442321 126601363 639662096 585036293 681321137 167941626 559289131 31856023 891683626 497701168 699740890 787917890 584982021 660727463 74243167 991521540 556288800 820731525 215993811 152380876 628297838 544305958 157225121 679477247 623741042 395706776 630187017 381396726 103271112 261079069 245066142 28009086 451508893 930305709 671152073 862497110 131328306 889545073 250197572 206419892 229961820 951242057 209587871 471964097 484457735 304270919 648158398 285733912 528882094 68935218 106014552 175458379 42793189 389340932 144164474 710430046 195195856 301319020 979394051 628328522 298056361 931058509 801818149 467269755 598041917 203822653 938761706 478400595 510133615 345277447 429052333 785201573 246267316 911677225 365051805 544365114 486008726 217965399 949238333 315773007 523802674 723739638 670363367 678620949 339167929 709822114 685725252 215572784 574918898 162268584 447561429 229764409 837722551 875238541 567644526 952366652 183966067 231235205 750946741 812660795 974482603 774432508 378054312 592706217 941299314 137834513 607846164 997900527 886633202 583577366 580165150 248337130 721368042 284133138 470224318 241374571 436166443 49951551 514883903 662469814 91891994 974894988 441327553 875498243 678755634 462631195 193880759 699098369 843400319 888373444 968385130 687407182 148385315 104576401 907163763 648028160 740425172 358984000 537779781 203902751 202880604 30033604 637044129 931941160 360038936 575885508 362930463 838807180 304506 466967579 489057964 325217070 890336648 886820950 399104006 440102633 47093338 745334329 256750914 404013064 573796255 534178874 807065927 972792268 222917401 779505413 705424465 220984042 176980764 597423094 212456558 131279882 938094867 902875554 235257860 591872073 394179579 811484238 198239305 678345656 857960167 394500726 608052170 601650650 622805370 409711432 933634789 819753002 731285104 439178022 553778766 619542675 638204437 457626664 429257614 313035254 378101964 292855448 726932863 905434280 743389577 859837812 3152081 460097265 157738071 771709679 567396489 97622413 781535444 160439536 204577917 417958447 80864944 18155409 66649561 113028602 134235186 577186721 872126876 856148998 308755635 33025827 233886492 342764001 169560864 433452493 407327870 832264715 406367868 864810378 427683135 206604920 73400412 730754296 935183534 336307986 925515113 475490795 533665903 771437621 639930849 614288360 543994105 411471665 289121815 72588459 207167513 151400652 504233199 68709537 498844525 858789309 133453411 348811630 463201002 315217714 464324096 859044457 458429783 940396363 260073833 571671323 30413007 664117148 8339667 361880004 776995139 270201263 129362824 264208854 279792374 4943744 531734116 101644920 238628095 257890303 426666075 728078596 681121738 900413330 20072177 612757385 345461655 617765008 858587840 865974089 869701882 491433415 391829494 945293628 418422105 139010806 614095572 306988172 597529970 142835540 490406960 392154903 156357074 995686919 547292148 184328689 932872030 64682158 114086300 723487199 641310670 411590616 672912572 372541916 52588077 356009867 591383928 344805784 593943387 106522558 917808907 912098292 180407947 429745886 946742337 543455623 153412037 252359757 389249020 45808924 839815269 512693470 42892722 972356658 740448154 639610203 453725165 910446458 449305832 407744767 978036938 23088477 446387878 636125181 955768955 157944948 604028033 69386231 346228165 195437582 975971319 834813575 858418306 781254829 429803741 950346169 130235937 876227721 7005658 953339535 230524449 72158731 845562090 783773052 638485657 368477267 200805339 49847530 50213555 440759731 954759379 151671220 790797613 801581618 285961416 599352236 246234839 421962763 56254982 100829718 26203927 489066539 32107181 831362091 683350120 65965750 107126577 764712856 95391958 674640770 311442136 749238012 688227971 712100506 613894207 925329517 805576230 658222268 763688918 940520436 356198791 623212508 773473375 41777164 398212612 722640799 879912307 858429479 516744464 99711969 667720701 217929513 447838382 611950895 625253565 131494379 357338618 244354894 516042438 685940153 260081056 373428658 816149504 432392917 842946147 105959431 187944359 237979890 470337944 298236076 655006410 910060985 590909864 822345523 532001997 188905287 576529042 117501667 57269735 834263725 351202406 885705526 524834213 200734831 587667915 430428763 4885349 360284934 561357946 757816757 165066972 811952478 296594880 458534490 708979344 661898584 586722560 237857172 484646495 345684041 888299567 720566116 255675383 46199161 817976918 679537402 873974107 418199206 576565268 215728958 587166564 995068542 238076441 319873355 617147454 252973352 358176172 259036910 510923751 290095292 542577958 903678251 298691763 755414470 179136629 152379577 457840586 348874183 827412890 817009281 96795561 578477492 822063915 205399586 992764061 258577525 957933778 678932592 984441163 932426599 459390412 644725233 434304299 558441179 746266986 545476959 455780104 829360277 848643475 174192168 707876737 238712909 918511936 180721393 127518092 243036209 114707199 301596175 889173742 842280801 194989938 506710540 518729411 770407538 997424589 547436584 587357692 709894636 797707866 84539093 153389020 573387468 410915576 500211258 215107195 883409155 321656216 179109554 850625347 374922740 175512767 767177034 313771382 295771386 97325064 259285574 482900133 924873696 179024031 81878428 108531514 500084071 560447942 76498807 962564336 365993411 650479956 298909365 712490325 522433822 493022256 415159146 455854159 982668308 422248667 565830491 177801876 396678198 83657188 784187524 928295984 8590983 362881649 92057491 328269059 917946882 476984508 235793002 235098432 954052113 663497876 430460577 73471472 210708759 743613912 880918529 954159469 904500456 40102144 959612682 956588007 139297612 332626324 865980270 475722722 182118528 389152434 279075476 874591926 536955828 247848844 85625878 317889294 456567693 604440040 279469635 868206954 304502437 551018654 507334813 105197725 969910278 611116574 932343388 860937295 427606451 820550375 26747626 830284156 949543712 524114449 601368677 424161010 741994420 676989380 554816033 825559511 483939150 382952895 166025507 596104738 39431357 925537746 948911271 495389 866967623 561559140 939792026 115225066 661365795 931697901 971969568 123930618 503879935 793139325 926172687 423033239 86599802 201649204 311534451 337594971 549261227 681276872 907695112 320814007 20232088 225987586 527606467 419671406 962086336 320350016 11243082 888685079 535424146 73062901 234420087 829712286 147227124 767440677 655808985 995539395 927993277 106599658 738503218 269751449 712852026 474557681 550753018 211131144 300293805 359643901 345635546 16211277 17680841 409170787 217992499 829323637 595529784 442978189 805207701 294928869 177352981 387969144 268410696 772821461 292118130 640551733 586078150 485708240 224073171 654339435 62295870 457800245 826314417 681441235 235790355 485962169 43871993 811399355 887077467 275432931 401062282 952005252 676647009 159049615 287326907 254673444 112845092 543399276 305630930 332586917 844146902 48635518 252882574 717309604 514650461 782590620 382562718 35844307 261577941 101178099 811467559 66785399 482400267 108563585 457434690 421955306 872806148 765002906 652956795 506229018 934045044 429304167 249494611 649875976 610449736 284271202 260939711 932452171 131608349 89463516 328009896 250746763 761774790 973898872 15341417 366092038 166672329 687540141 679704404 9914382 860167138 879768135 779648813 610887048 577579904 390114278 865199533 96314222 214224963 475608189 875745280 790248782 214782852 855305428 232193096 404184266 431156941 305230599 545527832 380053526 849734748 780065030 234707705 741231229 434269605 677988115 300009704 116723933 184871885 141649478 71576790 713740838 658447408 377357068 163816743 200692190 579943643 315085220 237894708 241620128 583252754 85852833 545392841 3483800 203099084 832346987 221912743 370094601 301993522 312953533 597992195 432165831 40452644 131105064 630458117 70307773 515694259 562380175 901540426 937621353 64863912 162078634 880460643 409884763 917553404 666113667 962821716 28170938 235650398 554170619 477835541 658022334 529160368 176646214 957640212 377431607 755961226 612586603 778441394 294244613 290311350 355602117 229601217 954655133 206459314 560439428 202385421 355225739 785778481 896372013 334304976 762092522 630452122 101716246 327852091 694167021 519944072 280140267 787491828 564831066 538312776 517545772 546785170 968224778 39632478 204561068 719896867 874951019 397737472 684291860 114764712 972778238 428755865 466211933 356612499 739367129 747625032 103668826 833585999 182335525 299137118 577030956 143509432 734526369 966416868 878150091 109391007 157537309 445906706 158990980 900062535 726633216 752230105 675789174 716475627 87502531 527439195 394204436 616274742 777979252 643602029 262773414 757719753 678365492 174447644 828121799 118783416 878903481 422777125 469466600 962856461 570770381 743596411 302842060 450406980 679245773 285912772 601539850 588962765 397137450 339551965 869587855 842921870 164548331 985504850 46229785 933608030 708781354 378422502 417580733 10454923 182745491 934582289 713534561 824190293 504643816 860632445 191068994 566728049 924758655 861192073 714698864 427408774 30138050 758737350 618081613 402613171 327114158 563151228 118136850 653530888 483238229 337524774 333718603 216211464 776273500 163567601 125510997 649764141 591278717 628137538 70442215 946942820 676359942 314677293 108594566 896893581 817338713 46789886 837167887 809047548 28887402 509760180 434432305 383913211 955975236 274640001 302484976 510829382 658746500 56122700 238635556 503198605 865748700 312918575 585660408 457821173 200759442 96711928 139716459 482880151 611417086 45546668 996841170 753385984 213473039 196579840 879215444 944737200 843964359 588837855 413095788 859974299 130461370 701273575 952561003 264805291 275867539 50078955 340304884 482997307 966309776 189057394 231985278 700086429 355772417 974852662 994096086 41599638 469125324 249649319 256838298 891389917 207233260 313117030 81057215 7149215 667222254 429278410 472260363 430308350 204778354 469215582 929210267 467434125 687990192 873963617 226503775 175671510 890093040 296578116 629047449 891253716 946955793 825369392 791913058 358802297 218011139 752029054 329768229 520683817 171080269 158238268 407255586 89995837 722752648 786927535 391801580 417536642 845090273 2908107 17983468 498084535 807106459 458528957 973180635 403894546 386103691 641295202 297534284 546044860 417777306 961421773 804812576 760825680 459110215 314923461 408105743 585802592 185459746 547634500 723173158 612117744 44966994 594041593 891204931 614739193 277527056 935582407 778114459 131635944 331806506 190780484 936680245 58709276 622443905 969734459 344228973 705998699 32479115 885861930 731186034 670508445 712852177 366772421 940485831 752492016 177220210 46883441 261936582 163393426 423774111 778665673 556245784 964796714 73387037 781604381 834382654 403577168 227613382 431436782 875327756 602364689 473572872 251221876 250638888 396925036 130044516 739366424 645194639 869897431 915429104 100046842 312841745 321833402 85666262 683095148 650983120 162162930 791247571 712112244 246327749 145747280 695090105 543909198 985887291 498383128 788821229 297551080 895450450 726329475 473796585 283998821 680493181 284798013 530995643 773573275 316432900 904529383 613160324 837489301 952926595 631109782 289257211 354275345 136818793 940762962 962661608 91932674 251215994 166606232 372474281 81078543 978081358 377210841 841529776 139609618 474405328 847663609 589794306 672940699 860836543 605411792 822533305 775386987 686380848 437937580 849205636 608718585 787678218 574716109 959356450 798773232 210896776 529250280 438384875 67323311 397474747 644152741 653616967 145737928 837235462 628982049 852899892 516034945 802678944 758090349 35498692 622451798 524543253 829500685 351119516 927487605 243168454 615621241 684658295 620845632 590081124 601387167 465157281 92454863 150268281 104426591 211047805 11766635 108081375 387784206 661644288 35441172 749159238 929374196 781747251 175908348 23587763 234608846 850820532 49917194 125680635 778022476 43540021 869974360 464217420 789280148 819897340 136652726 390693541 344652733 276040802 321799204 335118681 962955349 268091988 444831836 767090577 254010844 769854165 771024965 592697542 969752135 957085050 761851521 676709963 193442685 595692268 10850528 573722561 311561181 95999338 751791851 957751200 962247863 894228804 783194714 55904181 31711438 830757729 526291870 310770078 332970717 211737018 32906840 635047248 679562766 121456605 597632480 732329874 409352324 833545067 710685119 862847 52597715 876105882 17061941 59374600 392231810 714165427 30301364 874013808 426209168 143159957 371589218 76734158 664685292 403854640 297314459 133140366 982267900 622024715 824613741 109519088 590677783 401135039 759348251 555790216 494622987 383724154 130307483 50864828 486274456 619976829 956629272 209974601 827469810 142871198 76478064 618747327 728926531 38421191 193423030 297820416 43528998 524784245 831193265 511806661 733857325 705116986 154697052 473245209 303437917 950923579 756349540 485084124 805240237 216978866 418810541 904555329 10129035 285496685 82392782 468470352 357985366 908591437 110210960 392567909 514276836 14024392 817311346 605320367 143912446 811453032 527290408 334831794 163312608 133487178 8373528 241261253 201410490 374792864 520570843 483528853 575303473 364556335 59960770 536678304 929152990 401057490 155378511 177051579 797565390 559398901 532718263 820539277 64995840 249290522 675804263 834944785 43018474 477494872 646161788 761927192 732362485 121014487 861525065 25924805 905163004 724008789 333316309 596826639 722982609 95605924 129920858 36356674 888134072 685391401 157778120 528710526 218340074 72941663 459380031 26238007 940860948 57921362 508228760 432637363 616478165 865178917 203929821 86034575 156614211 473012364 974358733 211870523 60282215 183875410 469538393 321199225 599958460 536329429 552087338 375414754 526426292 307551365 409660696 833277025 662164275 497372265 581768372 185213109 514308114 470866841 352002495 484925940 812550813 723470533 893424049 9451523 275499286 944904364 273474611 555483678 533045552 789921446 62077861 190662998 221739156 313135387 765507993 965570318 23528287 513238538 578347350 488700798 798449314 69216131 999438422 495269936 79900385 650989101 664142536 417816710 152385685 40304065 420785166 663217714 105741482 165541772 983341376 824730555 6666497 380594929 166006696 507634943 758023407 63524837 64034628 504507820 823789501 558318450 449077064 312058821 95239974 387742260 92008601 545806883 446943707 424680671 709002322 547554545 771217922 209160887 343681091 340273711 523781043 979910678 113308525 883124273 30882170 346346217 258315399 389693981 649275096 711891764 397259388 165198960 667669698 452358538 957066987 327429498 305536032 701306261 421982886 136587229 140294735 825317012 345761331 382646034 712684448 215131096 549994574 644517860 375829463 572986694 975340133 562266866 254687916 844720600 398772507 784562993 128077901 643364380 857126597 934927465 665946586 361936563 996443632 803268531 510710760 820429523 631017945 329523201 686833407 43163334 365416179 522066070 78214172 167529065 394335077 398459274 142272816 50758574 332072329 625318471 568538526 682812186 697891439 513963023 972313281 197536327 760693335 620262515 748284004 768181859 141146939 282761693 701740872 476850352 317636419 796637703 50418593 412984578 967567694 18830978 872283033 389526084 263153520 367678769 6329292 837623027 14616942 620867275 809351627 261570465 119829828 266991452 136326809 257572723 177251231 523801284 869947697 752345764 168512100 192435510 50626302 975773440 143387431 262890427 955867744 582330474 154287029 95261869 753917742 309614422 770828938 695747132 375837487 861528911 975904091 373002988 921849504 615330162 526353806 323198997 33251505 730090737 899715773 196334178 693577736 782851986 49435447 983646803 731809084 249885230 575873151 586368699 294069595 408467250 527646155 171671362 267468900 527683361 710892678 111289571 541919694 106047759 959770830 387841647 943863552 416900904 449892855 767834889 691316182 497711399 81665798 813270697 93737251 716528863 581700918 508331161 988740905 843615926 459918455 496487931 243815970 81917989 527356394 373443136 824193723 188624441 395787878 536938418 806397588 102638613 411993334 393973739 309148353 225043822 710315865 361061468 815454284 966403341 994733697 375257287 467160240 267426641 860549908 531576262 571221087 342285994 450174958 257430338 146225470 772114975 415591069 696914684 323942692 921537993 795954660 544175367 50312798 618885462 619299896 202501195 964068398 726197383 919036486 761962756 279072071 454468530 457350507 364584258 544943187 213994560 977393210 373096295 821961837 385210160 160942330 889774252 81090983 764318099 997176358 770456475 206273414 92703502 168350955 923360406 661682561 686717531 350163373 965534799 571450245 520109000 230481026 262282318 704967796 373476790 629341621 103853935 273663649 118988059 616212549 555097697 622573653 958274561 785514595 475100200 726322766 7988228 733421048 528278171 987838011 79251672 862301468 293655782 322551105 857586369 93730464 988872202 700096121 911794970 656707717 985878872 185090415 315013839 333387907 595552506 656067749 49425122 493513859 269744234 874087438 356316393 445502757 888383737 756786579 63698318 762121787 848164426 6713233 744549134 757676364 990824660 320760153 862623163 91062802 726218851 692506031 712318074 679484668 193509015 523581260 795375430 12508589 519862627 451838812 102782891 616147323 516644751 49777153 930799435 753023473 126080823 684434126 84938845 603766093 763693643 240592716 810841129 262334211 624629005 248029048 870718349 855132728 936874645 447419459 897025403 855146055 855753552 283134481 502415736 882068288 174058877 440400187 136764959 717248612 509655983 603251341 997002140 726194858 842884430 743446472 145392178 434032446 64259861 878372385 880838326 186147324 964596629 317326016 728412945 948428281 428132785 718743362 809643201 686986235 365445920 355109432 58147672 80163580 67707119 74381222 812188412 47440043 917943292 51825029 639055590 14854634 690785148 664177729 775136227 882622289 597024117 625724219 168305878 334752170 698751301 42274120 268805940 731807859 472679961 878134576 878133638 677227103 410455415 636214832 696162282 947244501 167670709 698226296 186640019 501548911 185836671 382373294 872342597 667060861 667161429 922649450 10365658 348023168 611652106 888766904 376754623 176988335 778700102 821955993 266429559 723240053 826433285 356989825 985131799 210873328 260160791 658408922 606913224 200089460 744232862 96977280 747129929 343716102 561242514 149645380 874118251 507443426 576633664 938013546 519421075 267953142 592038087 801583658 972576571 747425892 359593114 692397106 392719984 670159364 696584705 141211170 379206741 116268255 319649175 215915534 689525152 845956021 917691853 228733952 851309080 205180536 948741478 848516724 601614621 913131215 427840505 19332315 605894688 403079828 124474483 946879512 32612134 939121750 740357010 311347974 661440329 131424216 311657066 559505135 539313463 742828176 276437732 830946326 688754097 595674665 339839034 272088111 696616461 525118209 676550525 646571746 785152181 71687852 81621007 218054731 736412582 616166511 442064937 415306109 241471730 365754310 526458198 986441466 442382654 356293342 661400822 69032764 21280837 67682587 34507965 418720560 240813907 907931540 216402225 93940918 46262218 37967250 761785391 546151714 527590304 667696405 691769190 828659134 339137503 97986383 61646042 710481478 709842725 21960998 918962019 86421354 586919970 262993334 107269931 905674063 398919708 699708109 259568180 116488719 834818925 115059566 820070096 231626804 279592452 731521615 305600039 803177793 415584736 55873626 996761268 578007081 318100377 617682735 454807752 201184214 193125591 180539297 914675974 841622947 502832344 759423029 779040485 918968802 920560878 392392614 509020978 378486360 145126143 257362275 138509451 265745084 967511556 381251087 962357220 207608123 569105034 194447873 375457542 264038135 635276596 162555330 586101003 250354819 159288118 294416017 891676900 32401001 870604508 52607202 880405971 990471076 328545793 366552282 8944625 644777510 775959192 241038037 111109801 317952851 639359271 982442465 75423547 848468100 607991111 790253632 125299002 322701702 118536229 342362090 407686926 623670552 607886084 693575432 970121331 489609073 575606713 695036026 123917561 933681847 531540270 902277715 989435522 938989960 637832671 175913047 487271878 887079797 551958624 198231172 555256018 273975170 444960725 388522886 629415812 382572712 352117368 334496065 211011089 779703892 440028182 789611851 889652096 88440549 730874514 700246382 96755245 425078321 65290849 807003179 478739527 250877952 266289933 941406002 740372049 722839696 713723315 328762348 951714725 143998736 506288516 962084337 620615916 738440229 441423431 660782994 830928039 961323623 462998741 592080976 58740138 41641701 49919388 68253026 308314523 493586845 541162781 962594868 654765431 35652101 259112559 464265954 350035982 71840645 988487097 474379969 350299778 207333882 896529083 267646167 882736844 584634933 684667718 216094814 332725815 682080890 339120063 865753925 360448995 679206658 405779873 464297135 405637443 367194233 924794360 925847921 431171231 300131456 826982886 201777816 623632275 196896300 150820641 325170657 617081230 820864645 624401011 380582464 203193428 927619336 804423737 178049626 396287101 171752998 814376165 20676874 745226740 425467843 452228476 422893536 877587064 902031799 417693209 202961309 407341086 723040848 757463144 255993528 618825165 94627023 31684140 394039772 570032064 654339558 489992633 188402279 875827720 378294848 435469434 560083181 790356744 773706489 103289196 541864372 483314167 993575970 135448993 350537013 322067809 280424255 841052351 944937633 384787879 777157576 506251646 497124954 999158138 520859051 564260398 595570805 556658788 596611016 910330158 558000447 993754943 255575668 338186614 135700405 363185339 583972343 422790926 124146186 413133277 263309070 986112917 700162085 106450554 247272809 366550715 249984544 480615872 175758382 521238215 314472650 486497966 659362420 251889937 31604774 55402135 989446089 755130505 165233130 522215332 937813677 503857711 301820929 669372238 986814741 806468504 114147594 49119463 710554345 169683312 872554198 604206610 149433989 744269810 504571629 270202183 783760700 97484146 726145290 143183953 489091536 676892372 538462619 438333135 405048572 394585617 122953794 700867254 230785002 521274553 606508630 717351117 894670525 925834860 368244579 7217455 817514761 767332192 342220197 739293133 565045334 350729950 478090897 674542826 322938528 996254149 931885901 572886941 562129114 770127622 944942387 34881618 827471718 467264038 669940818 985632585 278975134 390353855 212601837 20317462 982649679 860046335 132248826 850166047 677630777 536070951 35032739 294131233 755627408 641047565 82490057 267200172 679200126 964821658 209124476 794534306 177873566 308669517 909282948 95448764 974790019 700661431 417770971 26654469 994768943 351947773 22894129 432209245 537404060 815873881 298856551 840897271 689733943 392246681 684340500 11901403 473700191 527923615 230358275 604594021 251419115 358246111 613509043 483215556 212491169 359709668 39662038 51929980 371829184 760598219 54575058 659935204 991871607 285563334 147770947 470792105 978795 57853850 549209207 415639113 605699637 192837665 269756656 209918361 576286946 393044681 628899814 89545280 246293617 672261396 913659331 127949369 189452120 421654294 901588389 26118997 802355200 663611386 190557663 197341623 885766468 749598333 286296696 917762646 911496950 778575729 353096618 395730814 830166619 428067900 483204196 189019471 342406314 22293846 979234505 153169469 522310032 898214095 263178415 812055438 426014638 258483910 629718049 488095711 436123418 917499891 742895582 946381728 341518298 140881950 946105815 567494035 256186988 80617637 163545012 717266769 417699393 642544378 311309648 271208901 695917629 468655395 823128889 77190062 579599161 585782841 525742385 753181729 860806785 745598697 831951023 758924550 382402135 18972662 216114015 265641878 991933038 413326517 171011486 608738531 654398575 348234639 189224191 145280592 854616695 956997762 156798664 603539477 87567255 300159393 778024565 72908220 747522643 663938959 306815028 623811239 888024356 468693000 48510824 426676872 743879414 516542553 969031463 930060262 579002282 871547363 281987772 853306527 779763349 419248284 742745125 244678240 8083712 880895885 818525845 552922415 733810854 294446421 126957300 645752802 503386169 606917284 97649242 857196197 331453404 137781953 557538967 332008312 863152554 385496581 465948335 312862895 996331054 451713118 2602326 55342960 765210857 111770573 559655800 702688312 150860496 665084648 491323572 950531927 115333323 552926553 443789275 742628719 627333687 17552988 511807350 85232633 369300325 236098373 445173822 721213376 152802841 752845304 33445794 646643555 914420235 444289903 641294916 741295575 545026921 372949560 218368124 769503459 676090708 806209780 38698708 455050659 59078238 131967706 887732362 170054406 288830738 568505393 732234257 594753616 66629740 563286745 915021712 949774745 150124637 847104707 383127905 537902667 795576393 128153204 711244947 744668583 616673160 332386695 892331881 685564225 842849256 909116200 304083929 590562176 799085609 376112793 768311822 322771999 466824320 420474288 502837991 831711407 745177877 404270423 298924149 947725587 220316292 927734283 516796545 111164930 160892512 835313758 207923459 460842376 744933292 933282166 168189100 758136709 874209120 819473291 856042845 580347436 939826410 847598188 362930350 976596102 229606058 493238779 425559656 4997357 708830324 75694252 94370571 512192913 544013842 437363211 913842761 382098678 180579776 484146995 228684681 63413876 101114030 190386007 766515301 793955510 182863234 839649340 96444716 143945788 901938899 854330045 543069025 430423513 569324975 605414214 902787642 7704373 756811286 929881178 427756833 544544075 418123644 230747918 924370999 298314988 77016907 384566155 932523212 419807035 398427998 664802191 149421544 597325360 581502600 996340461 503876806 631022869 914911499 616137736 771035475 511848203 195384097 942344284 383745715 681953158 155914103 326415094 608870333 162870989 335355821 970205431 331397498 297780347 165182679 742328340 755176362 675147777 82338303 205732121 382001470 263026977 44514464 159608929 679088351 52061300 525059373 9957984 513756518 936893926 975442312 239784474 452127330 89709877 620910987 762257321 250925205 3383925 946746755 645857466 679801975 7955598 119338159 864382224 754122930 62397372 188976581 14706944 142766244 513559567 802485614 391672308 371863264 734615529 639322821 2896616 250323373 760132738 920983517 564897008 490637701 381044839 124716600 400852400 25309592 130910711 156151120 689520610 392421447 365221861 427983121 648403412 64542121 676082617 636067421 464983527 708260873 476935247 680281991 18671377 747297381 118632022 859557592 753994076 515835121 275788497 808993550 596051557 641936274 669247386 100114392 156122078 481627748 473016282 935017051 550253580 482826805 724278931 530386864 57204297 857873159 10461974 718000483 313625987 442622610 116946829 44183030 251468475 357987007 868650866 308752732 386397576 986807342 70473750 924115326 446641297 866488497 226715419 366244025 140218902 245827023 746630394 983260254 654049896 833279810 842188159 486289713 112666221 173376377 548292168 779077611 874285597 446251543 446375241 606889913 182054151 51628146 746527562 391774394 335974605 623730708 787723879 230851204 351440803 727069502 974655631 733247647 376411860 308211040 915194887 675711752 504058173 480635298 12443620 293375664 848307664 762106719 887836820 258224123 309787155 148660388 9117782 150592834 826854046 403589814 593301949 591434065 161922977 187458185 271265841 675049449 408856923 523245897 575220333 226434623 666751140 586102485 32157954 855845755 184715108 422001727 670901971 633952059 795644185 587722829 537053591 226006029 266876758 148646907 629262427 515864568 443357758 953409783 419942397 949680372 336556301 954400292 251894194 293924205 256089744 127323672 133808512 252222660 228972455 461467549 467651269 797683662 345213386 643607091 514420398 840829779 322451841 436744333 39705793 396026000 915673323 840852752 480475988 124251061 990717496 551182423 299493907 250510952 438512175 747765169 845551230 489388609 641635497 975303073 776453736 725827916 671282964 213918301 280833145 45901450 393250032 881612880 34775213 774499952 938907221 875636889 14221012 681430886 307157100 479967114 398395664 515785289 584618994 591950121 950444633 288408297 607592888 950096818 546735868 717466764 342823717 970771474 455501592 175275113 420322482 730413166 73363232 963915822 457033837 964309658 559084124 822294139 353644663 309778595 683678055 419459941 983173510 738392902 914700978 674475764 138036580 120557174 17749248 901150116 145716077 565134298 864999400 499687144 55313173 682646348 448683095 874989986 667189344 752588123 473256203 416658605 951709288 785709514 973431576 763123540 424511963 373762575 49031271 959430103 441004411 366399445 666928178 957897197 961325212 608919418 711039882 203736893 507920297 627051665 648638929 379522532 761441439 377934946 581865280 241424114 392677775 446133861 636526946 982912236 1480481 219751627 65064343 975049804 74777868 130386677 245388178 51302908 890010783 599501818 335263708 15309791 760901435 385717030 212742223 506886985 583907543 28742261 699132571 134924673 617820283 76185884 344359620 274631238 807939269 90508801 241014690 97154631 551722599 538191422 391229279 626386346 575966886 46584738 394536445 72460934 98608093 603717935 538580942 133524840 109289976 600172957 970309626 621767122 919518970 626689494 766349052 242577591 423177591 793245048 282201381 588493569 164713242 907658070 886447896 825214476 560513825 382180343 914072140 546699816 213215964 669540886 667493774 379895578 955914289 339849504 30663548 148395675 396530203 133011385 121085194 462215896 416063270 958804023 644995073 72201456 123452405 423649061 810125179 37220217 813044157 602360258 174979689 965239036 585745607 740722816 847750157 2605172 407566577 474572677 385561728 234077139 385061934 949979437 704659245 935555198 498454274 350443654 657716564 52511692 741461254 546437586 537978504 549506442 30254954 887142665 461850417 636049530 99641198 96219220 667160843 856077519 631784168 237930131 344560549 643788466 705859777 904855000 807627492 794733761 477343096 828173802 33570685 294775946 221443997 455880899 844575614 257021205 596446295 193247506 742969029 883570007 620153311 848643258 894195079 179065024 587858435 84769105 380854475 875650990 842344100 440128674 694422253 441767927 259222072 835964715 404993563 500616548 317636680 156308128 100474587 637748784 836807155 297170022 716438147 652287885 252034154 666029593 934008256 278144543 551438194 129172998 717532944 915750015 963532261 919987122 92191048 298864569 544265265 352949841 383768078 81843662 501438679 172836175 81179743 34761267 763486445 643393227 68233995 728659536 647546525 313332247 720894260 530694659 886685092 999856186 942360787 510188570 66456531 613918318 597768499 126788828 457170834 599559842 817925492 418016897 330784856 447478264 565534473 710865845 947257652 7533896 918371898 584803865 229431623 242968988 774316195 47178946 117005384 394876082 178382259 21693112 87040766 833533309 946574126 332452216 232233930 322219684 296308140 990949747 717340442 358846210 934578968 343510157 407288823 52970020 867383601 454794399 99470968 472762574 646731788 610070517 392614476 989350262 782895760 944382416 20937525 786935496 454230776 409375460 525474695 400674848 993307989 917491164 293926573 238476819 954519050 720648146 102386597 490370790 329723982 585225431 226421119 448247061 885720237 385279089 569258465 254969294 67722631 861100567 894869894 94371187 734984080 575197111 110765754 651905564 546155598 787614769 638636000 123814419 235976351 583007706 2085356 6930006 212864304 628490490 677312234 991152408 762995974 879078990 55713909 708806720 787990521 57011590 840862272 844041704 736851252 24648648 975987857 309853919 860485047 318605867 85604033 449873192 349464277 25774653 827769789 275821689 416919734 172900990 177365128 641171133 351702230 952805603 462395575 749808274 971569796 83957076 979843315 290859980 503091044 421356590 969922427 461975536 178936302 958322369 135316639 609137338 235990509 536801746 601251142 330789527 908325120 34295323 87342953 227710763 607103772 303815879 742007445 7782861 863496968 976780278 256426093 49650182 39192287 320503103 463364390 61039638 595956370 395774505 367645706 675288943 110876260 558306480 216627702 107794744 536008044 178511303 873246171 639734987 589754902 915837392 260381504 75573303 411412130 792425765 373046462 206147774 321058724 701263507 194745987 748887384 288170626 845032922 928351952 39214383 276141049 870593070 232833659 835142689 902762649 150388409 642279278 740089154 28613956 737190167 472489254 424474455 342617011 764458968 293989684 276513627 472268017 461339393 666113472 357956862 9868254 439143051 107787265 533402401 368536493 676343523 602531526 578975323 251784294 723172712 835060976 574407543 748525925 958606577 289563637 346463220 21671897 295204420 560258143 397162115 467276102 748232352 302542923 629164429 388701699 104130612 468501483 356005803 326023101 233277605 294011908 582486060 38413298 962171788 623286385 131915666 878133879 495046902 557400222 390683157 573304307 506556386 647814157 984759838 548732001 868378823 416362709 877270733 196961682 180754443 430968862 668659828 507270057 689555597 887870118 269452570 640847261 817560092 366766911 493675770 920943034 660283901 447971150 265784065 584570912 742223721 242261838 748906835 158978371 123895820 649310539 336985030 235337321 148760200 863011176 889768037 115304495 585265392 405765209 962903022 462004997 526041421 980936169 999502933 251884973 268639772 137106294 457145151 994294208 35923662 179514992 643270280 759797289 758331975 636631773 98060989 573988263 977362784 229306840 585700259 838358351 446296934 240642062 142547630 961541896 759412376 81860671 565573514 870202382 987574444 833710019 34925718 549992816 531501898 886351106 31797604 221478546 381292176 864845819 744702267 957163436 321143692 398571710 611599253 442329672 929426629 957947890 146835105 477322696 828972211 374498128 927671234 858648029 773861954 700199461 810087438 913657105 812604756 341883860 803665103 223940927 639364924 34795602 342689798 553372181 803680579 972086952 453061347 743144857 24748838 19754869 913688654 707976353 515315094 840592746 21926754 876630361 685865143 621447116 689752556 306689473 891308705 18702069 103804144 692378157 144720354 111433938 775957285 344229315 721068027 10620262 227849076 258034432 692936670 835288390 351231868 345556532 328993911 404958236 115315217 685057537 640423200 315218213 322145721 354751456 901049386 41078706 763361582 162401948 173541211 451795883 129366494 667223764 502275691 972820487 72336494 98420605 978557830 351566165 767753011 842905182 743590861 947806262 813682871 429146259 102238164 914342368 891521594 733894923 268243494 843028637 992382510 955210506 516906940 129346122 797596346 447778983 425702538 383549144 155824697 231978831 215274483 976893135 324006840 593241152 629068111 343645638 784357243 621482255 274893932 800426732 654388600 649002019 99421706 119176578 164774874 522398007 268046942 886201695 739737471 627085276 774611344 862078827 300487291 96562164 748879421 369717284 953671827 753336889 790922741 473975836 757671875 269300916 840139710 300830840 278388409 584736582 442280591 216884595 749868887 188002338 833954262 913997529 758957365 387700305 485204467 923448972 162379292 511287853 598177978 847314691 86582412 168561638 238908917 552018374 599270967 250068480 813952480 28710387 438955140 76495827 542198187 409155772 916625677 16182794 802251772 532144103 929735201 484215076 647768938 348334157 976257346 17218038 414277891 93539419 168580520 653480488 460246727 175520916 671343293 253690035 522946602 433548300 62332575 68713577 57864342 487211758 68159138 964960365 162184679 549309688 123446731 485570742 309654253 571753978 852783445 565201553 83868653 187960411 353007920 583099676 640148769 198224788 104706685 831097292 699292467 389294770 232275475 171443944 273485766 653993688 525339390 873924107 758903277 790305211 486057210 612631206 818500274 402724388 37025532 792381563 422643601 953182834 772536234 393741859 195581178 848968469 678360542 611739018 99627218 805131540 557572391 591953005 934692082 160496776 248633927 754860259 893606823 64103711 245605814 229500369 177960496 60268186 892656157 183369076 274588484 357365583 124319964 767266268 691619721 51056807 67626630 670537579 38109214 262838689 283176288 204115801 871513362 961155405 16405989 647278131 195050 285636946 126593348 679101528 246397983 803239530 653760992 617909371 660966301 282043616 634000335 969849892 187868486 504310553 545853788 535862831 880867181 443114504 497638278 870996299 921695324 51347383 4291198 887728763 601797326 315155909 427763245 731503001 211016309 211682787 360702124 704976334 75957365 997615190 24246985 20247580 761602023 672839288 793859209 938703828 4968535 298131255 62531488 592480544 403582023 534544277 708416507 625243002 934855082 393222950 897557047 533803059 595156585 22379157 565455399 247847149 221196514 3052575 660663633 507322401 740479076 26169878 473940849 289627034 314965940 840863071 250177782 451129080 851283338 883612661 679501696 321205807 521568021 110810980 498111080 165788677 103455347 629641038 253611832 800519831 140867386 986512362 383521326 602222036 759996658 351948416 84321982 868603393 565849497 842868206 236896269 741605427 657865757 800250662 348102007 232305880 983482597 387649965 866363145 522713135 734044745 119011870 503072263 134243531 431041301 692327077 965555560 114499604 293899018 726462853 626458197 822746821 589982557 7675794 815013038 544901487 589061943 204229304 889781124 11386101 450842163 277791858 938824608 336833294 93094626 700641875 237753339 405199047 442744138 353144449 462044228 904077566 418109795 438785076 619411805 658179304 324022681 10607164 279550430 801598091 521282893 893228409 988357265 229901637 704708948 273747296 213299956 602559043 134782582 449429629 723482554 390476555 879447024 234700011 359645002 431456755 407581171 912427742 929571903 81831079 13928994 131231001 109794278 922985127 520071192 401304952 514414275 634111430 734583264 389795688 619340044 360037036 351214203 497097834 692844844 655071573 134830686 285769876 44237890 424206224 943197681 185774863 234348191 402429314 516652049 502012570 174824524 288091168 323568782 429583877 731342209 406633912 826554542 805163191 366157103 282426985 662142376 111469353 65577336 206572197 75792682 633059689 633099825 755529654 66848724 66865048 655281511 745117751 665923003 436640364 509223383 369860759 332343015 624862127 436314484 249392538 161451477 977387710 671735780 741520087 824150517 668025610 16862980 330046266 621685293 963284635 777867104 522250116 929661268 551518856 486497467 505868486 822314680 726910336 780923533 488097002 796849305 462048836 769857664 314054442 886508203 656752170 372741363 719249047 721853080 388585884 777716599 200120979 731362428 274267799 304630612 62789463 477532007 740625197 588859397 558057070 226416094 54357507 956915639 340698424 920034907 750060755 517511631 511832936 746961352 829328619 193936225 763933063 99217928 683751853 423002041 887799151 210162799 42449677 439212246 798549200 917374020 683434006 994033130 882621358 928760646 51533669 149847004 431312096 291864100 115449260 414303173 63063699 72657156 734472241 186806134 660150470 168610813 217440588 829078513 961876940 823384476 459467501 338474988 348201677 424891747 519207187 70674002 975662660 663796805 961444438 955411137 918227074 447697196 78275166 47109132 539140138 120843124 8408681 241130682 39702195 780689773 610871753 228065157 642044649 499279580 635454052 867902941 780222829 203646842 454922546 992768099 653426992 546095476 260719299 104779118 756483580 580451817 393307574 432703881 731703531 929342832 905440579 76770803 436514542 431575183 69138354 283412253 405287239 320513093 869437666 34498864 25653263 465569921 538304707 322462340 168601777 703560360 337858524 338819626 852066925 957119507 229773766 365504612 312194774 134149262 94901678 310883623 357351508 142011099 733247703 133350048 865860771 156136237 767888662 989896620 315799890 869666221 996199252 922520158 539895365 452307193 539678224 998746237 561709620 883671712 127845850 845399043 200841002 746854311 640440793 81027487 396348678 249341191 359830086 369699124 625872381 392278060 375677679 186311768 728623382 838976375 399443893 242439894 379736237 585007293 33754894 949222188 277103344 19325383 923108996 930953486 472884837 622222544 809775411 415058913 362015842 793920778 441432143 736644416 982749076 731097369 455710620 841236347 924275833 624896918 413708788 747774995 761082853 467471245 28061637 506573376 501121409 756434687 9506192 564607339 488271431 802978145 113627243 204592052 410694408 443415068 375617664 555852397 475933414 543931147 606669196 927737500 227342810 835395327 57303393 549630845 858029359 390513214 456328292 440113406 839416837 32193792 344124943 677494338 976465871 221096945 221360496 125678111 533549781 909328562 960598953 306076063 670079155 973239896 304794734 412718723 610471640 464930283 544490122 102406075 776174856 669407977 651354714 413720047 241806811 73634752 913246800 437439481 380551483 361507415 20367729 910614377 957805802 349367430 249862616 725490944 627134202 145769113 638710065 647228725 741190739 270998481 358410558 19221683 859986736 731617507 547469398 114029785 976091042 470106231 9066465 114703417 210707980 609120170 162450653 962952473 12384165 477658252 957921884 715782645 584469241 750273187 956659204 205779963 591136872 394062695 233262221 849004941 285734566 106864323 605018695 185624259 302414649 670945179 533045137 742685158 938052863 38732864 908016483 495444470 640222885 83139325 26656197 6432037 364980016 362690190 307864149 523740506 166622840 968223396 821767366 778193071 708705704 647944802 221362523 762195444 77413312 584907491 446614896 894161193 287130643 295540146 692141042 752730120 75804361 658565967 218657761 968529528 188458334 792933809 855202005 541508379 521999649 334614719 794199927 781955521 558414262 254591702 377170435 72646131 60968341 678824262 799444684 964517737 101307528 923261653 517667512 98714260 131995697 629212730 836058048 476580629 9751170 118488739 396086130 153761348 197148739 786881584 540282735 490398634 77464975 513132149 241473005 867079047 139209815 196584700 383950389 293098317 792380125 820137409 370083110 194449442 219729467 848181684 941354417 90142562 5688538 816668474 906925915 408537371 935046907 556853933 451304638 195235472 405209906 451947735 846745095 534239927 246788837 855592827 247695738 585807035 722850513 124689356 721416682 468939386 146612614 750377204 695103809 889426695 15725030 290439311 283312894 963103017 212729258 27901741 8966322 285866459 419794909 298813139 509274242 99190986 651905374 462198138 780979624 604057818 580646243 742068111 286535410 26099874 211487729 124011122 836922177 494903531 242220133 734139127 492300300 167999796 137587694 21779432 473833946 664489521 887737360 113520256 723138763 195094088 673661218 758945521 883897616 931166226 535548113 859579103 949959535 374061792 420495003 831446500 671865792 484540724 856521301 172446730 529463154 928880963 731610790 850588756 29358599 348463994 515902345 610005301 996953491 840886006 657905359 313652502 890122049 796956170 668876955 984019669 812946382 36937917 298863588 358678081 226769420 543778633 359395062 261585567 173554017 121568925 872317425 951936296 678415941 532923612 829820232 800645512 968830663 541728220 722839108 380207201 853498121 324574120 792570239 685770694 24665536 492745983 553009001 671719872 897947317 717023186 238035143 635171533 581628230 858182602 325449006 474708572 136063205 94410943 457262476 19189586 635983768 468079426 833313440 823392903 668336760 592123156 412266365 765506890 417744434 928495021 633893899 108835801 424157065 513357494 485276038 192388074 903967185 653643919 360218365 731801381 237245302 526499018 639477204 593124776 399298163 93199534 784375875 584503426 18478811 894816693 933339092 941371960 953937236 241951758 542356457 766682946 871108503 349462811 882979379 978343567 776666354 456281588 528023356 855243261 958810310 888651235 167555807 961762 459810056 710183142 507775178 235309702 458460868 996772913 59432195 808634022 542548118 639769769 108739168 829130739 220677423 722980201 667054861 406769297 957694934 375201857 149650186 100970136 579085028 489656882 676911275 810228375 852214343 819354099 291019030 506588172 866848256 581293167 674975432 394457581 623945381 678826821 30633489 672514338 580718559 666818887 397136275 606312200 103492845 370643195 598343367 355598831 836374816 36904733 55641719 41239965 518900829 898735387 470929733 97143754 831137182 975562136 507413539 613858978 221771121 597265129 626224345 299133254 96143479 941794715 450429571 6344267 948899302 481168619 830376464 381947449 755130888 367834444 208283844 557061645 171187386 512542949 821010614 602842551 712885742 208869904 175797587 717510813 523557929 573591005 52580313 965004822 628372229 746794636 524955613 525326832 76385712 430022167 784701894 884445419 857431404 444232870 376946511 846600508 793223181 252961048 915551241 974015755 818414718 926242177 124821462 861492981 760253756 496993702 942473583 504862858 961743577 584338819 627169504 722642640 646460027 430918085 578150407 996220606 637359194 566315089 958830360 60409794 805477957 300822715 259249435 560401980 285426206 532902608 626443373 71031297 304280153 168650508 611877691 650058456 86360705 686822180 698363914 647484672 627422132 589991550 163834930 867710376 51723042 486638260 499085406 703449974 288035985 23899669 135046925 507208961 706840796 323156004 871832340 182688599 824676975 106225175 308471834 977033336 823045069 341201753 208107803 531819480 805071883 936300040 492552934 926951649 332578130 97602936 415947935 99304815 180575584 432801966 160533053 191179346 364648967 880863461 208012045 528455119 457854381 292204557 726489645 82127904 820736971 14574407 786900242 368650735 180107631 223307114 463396355 736924383 328740793 894121857 528211099 471526915 310607457 726678347 523070027 236070501 191480880 756650938 857110229 714500481 233532802 41024884 235378386 86461383 957300427 483112277 355213869 393595164 888324366 348730603 921158310 95150425 673602663 118687993 286026833 386864843 347609219 975282164 28950036 581918897 604443939 966332041 381693996 464129474 415792797 692283413 56912552 240840868 647132763 712538411 775918573 858147958 827108185 6123538 191685424 163229511 192534699 589196101 343671551 148468380 87525365 970142705 127419321 638904814 585973745 715826810 822795793 177190186 305833197 888627958 331758991 653364527 368215370 765531568 982916367 689295955 946479614 158260135 179824447 423651039 891488019 885934348 782594341 684991886 148700710 833758664 381755032 551845906 891674856 510473715 610542274 352333199 826822049 622231134 172176548 656266014 167809448 897320714 280621458 679659084 585240044 583831471 761852339 583301016 207316846 433807926 383258754 557986552 632221636 605716287 527141712 256672852 388108184 229985948 234243007 558128138 432300839 480954836 495653448 379761513 920444611 165453473 800874166 196314422 195200338 545522034 603717801 439148586 224181452 995923946 945572885 420225393 232124096 307902303 514879936 760730412 531281616 822873948 594375623 366052080 946849584 416423455 746172953 73196613 771072811 817159452 623902970 751490857 192628638 859240824 963407746 614917258 686031227 321582222 242313244 173437647 171235400 842394222 852968711 885940304 149975197 885529689 79676632 453238745 816940202 883863878 729332470 471626028 399342766 360302176 792789021 916819835 177117057 972737414 978780892 675631090 257003275 864941514 614993943 469014059 557800650 326626803 190001541 501473463 148148817 872298235 560515635 185842588 302626243 205963921 239865599 998788818 898843740 611115927 733453598 962256069 113905384 748848293 367958166 445994198 48375370 378545284 258134724 737513946 743249911 11815605 944442584 500299417 725348984 602140648 474667605 766770768 951191020 645999237 852129170 619231536 441743491 892925734 758852155 819815133 267619588 117161755 739606992 112415471 973868872 827658980 974546468 383891316 189159612 59355835 625849311 157283180 876093155 471069960 396380413 87805772 966599634 129577706 728342349 919927676 250035 968876213 59435251 71071961 88460866 696750190 252189415 317857075 706681171 103622225 647926132 703666128 775083850 369647436 494608057 651105255 876489377 611454849 400151339 942349606 394029414 43899080 741949969 470367277 73544634 608369450 354484743 921937169 551367251 311779687 923177852 674788314 770536186 534713201 207848244 332308229 267429646 128548079 141709510 205948930 806856192 244341179 251877662 651714999 375711189 661889124 485235965 376215291 287575463 708619437 580778356 348148508 390811172 507783692 930799725 460094042 623372813 732712492 542552866 990661737 746371769 816407403 782129316 665088243 617292431 342369117 591445589 972696084 672122255 288100167 149766766 363216604 84563914 893617829 210787962 28193745 752574949 770758564 317149657 435119466 134911387 810702248 497368126 438093461 559112760 200815560 840328242 488915761 246860574 217943885 899301262 615080085 837318212 600196663 362171909 790671368 872099506 935808952 562688920 923515206 749118726 652383926 310826271 491786497 73584114 422922317 158363847 266031966 911652027 54738507 56841359 107654260 450682812 223796147 599975114 909263057 831223521 452242747 478461088 907325940 347963436 452182989 318697100 766873812 893362740 211570953 881015007 684660823 706357921 674888642 195436092 715066332 231697073 930140797 823393818 553507762 469574071 595793397 644367685 895123358 71971734 592253849 828563038 130448729 398289226 979344908 215376982 648954128 450662751 574613925 300631799 74251234 450254456 840244461 310425435 583324774 943944138 706173731 485613170 628476706 794596254 612200635 837289857 512402197 720153042 811782106 443173534 708250670 468350553 592100572 851570997 751080402 327962038 724661967 655893126 252957018 615211909 262512629 360498724 847987346 480950003 291737670 121324663 563956796 365128001 831666155 432553787 482813067 676528196 935695812 663332351 949840808 877125352 173480931 236549799 625894961 386874792 863900175 317036011 873771957 790509848 806628930 968920022 334619449 338021980 825188652 698305607 841692598 814697902 464245421 785145715 896486040 28445915 473659487 401037921 701057601 259349446 429598729 425329516 213418628 162703588 272994349 42093253 406605610 839437247 245068923 728797423 87193712 776314740 295124572 130029377 630874503 444838196 694978408 522524776 979645203 727164614 130860528 581748962 216608685 352798980 638260597 889981827 426385505 687857753 314842926 154813940 381459248 803677002 482168455 409748271 169995663 250414826 855731100 140806661 282260199 520118628 592485826 508453272 508986131 55697012 360733695 565433313 362663141 878574062 160576909 130270251 86993569 530330166 157727835 111558038 530717823 711944903 158105996 309489045 252400941 964531373 87841269 737252464 984296012 755030794 581850275 131311555 646744302 70406036 237063507 408131837 293416479 750466837 979526905 846107106 901696345 313039338 907971642 26641674 38581005 764919429 800100849 972004447 328667425 451311084 352308653 306559395 1031021 575957559 700818994 161064168 535660093 149604117 742975476 945973014 811426002 184948808 547243935 48634984 288965089 604423204 618738833 169969391 359602706 181098004 981842270 709269262 403085442 535487765 146423372 501256700 756199233 838752826 432699860 158185029 810783189 629652262 342823 929101385 342847926 224752277 902479527 45575356 308580560 252397267 467073641 133227812 984306180 760763459 337510074 947488350 137141670 135305689 892268695 17413914 567101952 71784864 814074419 250567258 969307086 905832246 477754741 618609143 797626049 399717451 438808183 166928668 617963004 554900774 20447752 727648457 276081306 739513120 797123627 968352849 252537894 400113446 516357782 243086812 414676257 936399931 497995060 578668262 902726015 90573812 186572452 183894206 928201514 209949434 721323191 502925064 340729470 60745611 810833141 19434044 617513163 586619386 624119577 211151396 956699351 574690091 772837265 251234402 994811225 751107352 187873279 564803816 154959231 271291726 166554042 493403261 200371049 377270640 46047310 372073279 351490219 733260723 629247479 288964380 454991567 433266017 989165098 417911383 791736785 577712470 397492749 727940106 384845473 766923910 675003130 301703838 979651492 701423221 155476224 438857300 497640244 317154749 194922850 955125695 125676571 895026316 286076182 343089736 991006748 350524707 556284742 290597033 170752619 499918424 844504531 949540210 813173295 734048277 845218765 71019400 517160711 598144471 141629948 801389729 870025090 775002415 560579418 953780681 512919461 312895556 460113815 937389023 293469034 963903056 786956180 416137752 359531835 899414559 110166504 94249596 244594299 681131155 895161694 623150180 812503037 911101730 503823733 183533827 842074251 412457046 795763935 64891353 32887648 470077516 334933506 51362625 22812334 17205558 309329786 855053541 176814106 923714009 253304981 961836612 751433531 873327631 625606613 524936499 667279390 680170823 909595506 588586585 847522757 550687488 793742294 293808049 914412195 809339217 209854495 317563660 237076257 234227044 85609120 434493068 480330781 254682615 312780640 719562027 332739942 725173210 901072025 198166322 922717761 648811123 115839290 893156034 796136423 41611325 749629798 396560974 167394820 334525252 544263411 585365279 976170298 780102570 684696044 225185231 413823388 715833894 331494671 269465806 225399091 495890048 305577040 115728609 763702397 669955606 706980180 244267421 643275497 310685787 622960119 141885424 208081244 886879570 725338823 418417817 827936943 729579031 809847174 137678507 459632686 750890838 438298539 228243470 167623194 772123090 951484130 517422078 684338728 967511776 317437832 410814858 613404673 31252201 756856112 985294870 749044672 812361196 209235232 55138777 672522871 813906425 202200276 320451680 99118250 983337399 675521146 267819785 698086609 221656287 780432245 753131401 409338843 511129790 152353499 366880359 700425126 444822199 305581559 796496254 678430600 483168959 546315463 890105471 767892169 231428063 974132862 938812781 75789606 440679094 48057348 694620447 966583632 243169268 356982897 559027649 955902827 328965856 372902805 831195475 780268432 881301459 611450996 926222377 186328139 255605947 78799298 789672809 265774877 399184281 949185131 237440912 625342715 431708931 906591758 74663661 902017229 267338403 319520636 461870629 66847728 131814326 426516798 773919917 554938549 704153485 978019341 402631507 619416799 137353743 126928728 644361398 688422953 715032117 809987009 919236041 375796414 741219469 239079840 300104276 628179903 816442297 333881214 764419443 722965953 777750253 85391004 379409941 82813260 513784436 80563562 52830590 905044317 369711146 799705616 908517317 200282596 653193219 365811944 987352663 166556231 678215300 246126849 410552946 584508894 583625541 939926174 603502507 925313652 931073909 599585717 289637481 286109900 306594389 47968369 722624103 560354074 944725948 172493233 198670134 681916806 157910161 689363846 727594680 127117485 917183829 617999289 73665446 82526239 672738455 802674242 263774220 428297442 21695869 108655570 22479304 347064813 764638785 611640906 986004750 536527534 157064882 803618626 764355302 608993157 321247919 770057347 853292460 661362759 250530992 317050509 19361680 817255100 237312061 275840274 474043668 686562592 423968884 589456761 161466257 558730918 338700423 177471836 588284338 213514736 869155900 37918986 376776694 577977240 174153323 31482886 493739314 642901675 254736260 416468870 847057165 136625449 606246406 196176628 826407043 385014406 320843529 963693681 918638179 275595308 823372981 671722317 340712401 621474295 78460105 276351632 154995396 178228919 596391189 845078389 486725257 977508530 999496704 773522921 333685822 820750367 495128834 822142224 340036440 949655979 736412971 834236353 89210398 466388216 844090779 218430725 120195627 679751450 834802696 480628892 606279408 222085912 325719355 777914231 16870959 328005233 106687891 939975231 550698625 991823252 697778048 771142093 210440657 441712742 974302217 177565104 640578015 628145344 978538311 706820266 969207999 477782255 850741991 857014067 893212503 743070771 368394924 721944565 918707172 870209344 157981931 671129678 322744437 64060095 519786766 980060881 786519919 388495310 858220562 725596101 397836295 706106492 177901832 453919140 804548811 560202830 663111575 904155038 334836762 5508285 415953528 164782612 908248231 344724918 660308985 222907677 214825978 765740568 779193467 819874052 511337710 884800057 753316596 280510151 682110516 244930146 311050606 99821210 371806415 604190030 524795782 162587746 440975511 913713839 846358254 172087867 960463542 926395305 600253931 65921267 185015853 177417045 501994967 455688332 106040400 666185024 701658016 97753277 809471302 47918057 253357128 863358322 986436234 697809734 883986275 958352712 388750701 198988096 47014812 235562514 324198289 68629042 587466544 710632791 413731695 278387054 833625201 440164561 882590930 169203128 794544196 284976879 152466778 91880393 1849507 854533460 415662331 783017677 453391644 898079062 119668859 529444581 755860305 947396735 709777399 563007398 334372726 249974544 31451998 279980185 252822742 19145337 785940724 95810489 229721167 672928738 781739473 978235384 293602001 360871590 681076832 717967290 425386978 238303442 732461792 151720791 167059997 711244203 962212838 433902493 990165422 325568549 557483225 75342413 288437976 781602156 317034613 749203610 802911855 364610399 284586313 894270381 253276254 561171728 497391161 517750563 898221091 367590725 461522684 636502413 538808654 902190330 889309343 451402991 873011718 813270493 566183424 643458369 140151683 940804817 536245331 125958897 51266709 910117995 561290145 154543967 401845788 574510968 530015556 104977760 963208077 165372789 452450413 571626428 911459188 612253974 304178846 503574960 738515436 457835200 138336816 120665453 94244648 552228110 351084751 700258967 865312238 539427663 15943672 244522694 778980887 213011974 327357826 732545032 375541009 349811049 837550610 618656093 114285661 115837923 347699109 868664634 956921361 549076627 980467210 352680455 213098838 479643083 527290725 616338081 449239787 181241233 675008686 78200024 950698912 354024481 753173040 672092658 856388828 482195560 368614410 561209639 391592728 807478923 615606449 24160291 807628386 743945822 278378860 298729862 253453531 394438638 776879831 568719207 884528953 115005944 924210529 29040077 474000710 327696495 932129742 407056181 121870943 835702522 894071221 289462543 420044789 203692403 842715138 549445697 205020175 316425833 190307190 291217826 277033927 7359903 681064738 422012544 595232201 67689611 393729776 130825499 655756503 856533720 318791194 788514087 463018567 84965092 685664689 361423950 238959235 819121218 857860375 652902060 532104584 194583098 663016069 953676625 193617768 195254852 924524422 968846019 872273608 154701969 173965178 192140153 223101794 891089538 305711124 172194913 404358276 749781294 462175708 622621019 467690384 218603489 680168110 950099899 227708026 93168791 612410426 779546315 660642893 276242565 936688770 394442310 148935078 930910865 550786142 193065183 76387127 544871893 178519035 513985720 700012102 849589280 589559128 702886379 57701163 515492980 552827079 875081989 981459925 917608841 955562354 803007877 859676230 220030537 344223188 246821474 444235538 289175122 799274556 760539778 932087268 166478967 293117262 444698436 684849146 333525823 227577473 237914359 871489700 309591397 291703457 730430816 554721225 298278486 877382222 738330681 212870753 261308598 753377916 250947500 769155836 490418395 312858866 979767004 868551737 236543312 967160011 805511260 329961296 209734996 507027703 863590069 381157001 979187545 607899835 856031461 375772099 511621509 776656429 485376219 813409006 877409844 76593337 703152124 348706449 994613876 647510431 455339425 739545157 248000647 925053554 317153687 2541367 503338597 80390554 888615581 860742314 987669559 198927571 938173673 861403763 940471005 893237676 192711844 373975419 611103849 588163081 439747177 431226433 595386530 434317986 335338442 698655573 864385922 207751042 26045899 560846814 203575736 668099720 501785957 677536277 703382823 465188329 49214980 736478152 206614885 161144492 470465034 574203608 494855229 99315500 856455498 61031355 818401837 167632282 142441357 242455034 727680745 875593337 333015824 294696116 814903766 151481120 383907076 482864922 977109136 898956348 55877645 832663793 647988580 855189579 378538180 315554579 453746135 678874657 533886517 890072046 888571165 69481319 226563170 732841987 684363938 144602903 71567038 149374056 18749573 642020865 546063026 834014023 369067544 236653386 837545499 638530653 912293474 49223912 599432650 187306876 848942237 781953575 509394947 103110409 253356216 680722471 122639614 969749630 333265365 645726811 415094634 650002153 5589196 135251723 400679653 457852267 675627175 718081491 858974341 116238267 281564964 920921122 14249298 308945569 851675446 45641148 322139337 388087931 115171204 329573177 415070555 930149819 400539881 491737731 854963947 894609766 584791794 476896604 235130708 899943318 248998499 35430358 826485985 689730042 670320050 589183192 977522387 526299729 293146507 16669344 749317599 404007155 474433866 655894332 319508653 149907784 222907268 480931599 682048602 503630414 52247166 621079379 890631415 518420759 138877108 86415505 27792903 154383176 986855252 675747626 973746437 687761820 281150144 92616658 822295004 262798431 305320720 226769935 276494701 604094964 96027790 521852094 987078157 92890960 43717176 126655631 245813251 729715836 784289857 561818756 829958158 238564118 168481936 110145654 306204126 784781008 396644671 292334992 541664407 864075760 14458141 661878482 795357009 223665103 176831021 757923727 415334298 747752794 983028773 513241583 140525042 758872980 968830192 366070126 506877517 834005522 117483820 911056219 61031573 849895293 39734957 505044826 666327334 30407700 560851704 871539683 266766672 288559143 145896905 212888768 645856729 245960861 428983181 262706579 689335672 523764079 80926184 218704462 457710427 565470763 283369009 342969272 58000290 601970802 42027505 203181039 492179425 70773882 891360616 409841377 483160482 134630284 545271304 742060241 635765473 700285575 571866872 574594264 982147214 283131483 547477394 130439522 444407567 113749647 798514149 471032493 309969083 77207484 485109043 473291597 493807200 678894608 263445620 164016299 118386621 392747468 597406418 700489089 691745289 226301894 506406955 82466399 87367786 378903528 590957971 30293546 131539071 384567215 131806159 98142360 476188887 816476333 625467866 243742901 989770616 133022471 658761571 120294240 624374361 464435191 793903438 258632654 741036519 811353163 90977839 192798727 653301124 374606564 93081810 14205284 287479299 939842872 475634870 516600087 795881518 141895633 590843020 420703395 507201856 357433548 361892029 32747616 817002860 678972507 306513378 775384569 217072212 797237059 169644874 823156461 260042642 356877151 977224055 818524945 747889458 46329371 3447969 903512332 506681910 360177913 74920241 860867289 457030417 124012048 991531079 824227913 871954477 370510472 770902069 512766334 25847397 177649439 877826 53105 956737931 224049319 527550185 484144750 966971619 597162629 459099863 359328915 108454310 717609780 548010224 525739092 459040129 519112384 742085898 723654906 647239955 676856652 605595440 528507167 851154034 301286284 597836320 106157875 219340199 118416715 297168334 334044155 57633581 393019367 458958815 574734092 490009718 480791248 952431151 737171284 644532326 729034253 371545419 901591442 491247062 235221174 969507064 651760345 139744274 893935483 330528938 526465809 792342363 411828507 661392397 258101622 281068902 291823342 585939328 47574807 315386332 18323804 220980885 148954968 693397720 386167396 134399123 149479536 80592236 848945686 69109492 83215340 123971612 497195801 355549159 67974954 854828385 394306342 772098255 687919583 704278055 848645515 143042754 327954578 231078479 787256232 981872394 808523038 481129262 214324085 842625448 482581300 165835276 186917883 169935820 822833879 961762982 103093718 291473502 136849118 838401453 562847162 874631801 468522357 640740677 887574251 617221610 501499548 306826119 39493571 496294837 805104294 906684159 147800624 945009808 284922044 433080110 181133875 105432423 459556696 340927241 43690594 727332310 965651146 658527096 942397030 594127026 492392375 448778712 349690238 758539905 403720084 247249530 735619323 414019581 145705263 66556705 41118914 299836564 38959911 239904648 880105933 4500203 989882479 454077402 432851114 370596695 899964111 456384312 682961402 319892578 651279715 908705335 62623987 987682124 860714778 867394399 148092383 942477959 98216760 98936237 876135579 389890618 79029204 556891409 402489625 185358016 310244955 302545649 581129182 999088934 805282827 618437285 606464644 348683696 244510329 836146169 148506681 691488852 811003916 56428974 913022527 62931773 686085759 652078584 558481514 213734217 546849123 646905601 790804389 658316940 800930458 225292645 996997741 43729099 657101021 299207349 96180052 117362690 673726007 403024884 422331263 234669791 911376008 31969821 996535593 747395396 793852420 175123098 599264798 206573256 926386609 763684302 738346561 306841399 639817708 167986061 75423238 547421966 73196773 485324191 475673336 136056832 3591966 51670592 276107828 310368627 16004080 711881891 905284845 69984516 299788293 184666474 288619238 446385919 79674335 987918128 24701179 258507495 258275920 558742783 185808280 470446580 468708608 948346586 968469312 285560720 227711211 322289717 186584327 446835673 850036448 729756791 571855641 1193507 777513987 580570495 417529137 963539315 566068299 34047004 633570594 878253828 743196421 459352724 6625106 738107590 151575375 919842590 192577850 270848474 157044382 326504040 711311847 877142807 919499064 27243537 780327548 813153161 880333499 910017840 300005038 896722156 682135188 99256011 114447174 747917365 455901321 966045281 888672419 224294410 723495728 829925985 988515125 86094149 955700341 268538032 487752195 545782132 762693656 658508584 51753254 457736028 356597293 777429011 197230156 254404978 129326490 398366900 787934006 791189600 645678236 575311806 812248634 791321990 901516610 933969371 559676097 368306039 997911536 443371046 757925322 42992248 497563102 884955313 716506726 855486212 799906199 431540992 53377594 426570826 275424635 22563980 996502528 877240493 977984061 185459010 405624838 441387587 807225701 783345153 19548845 777002839 673663438 166158112 122820331 300637416 305296937 585612517 351188682 460872487 972776313 199971854 572064742 892265981 875360661 493277260 725992947 881657219 790330794 370459844 235510069 844973191 319518902 437836429 229729543 76967182 104846862 572603700 968614485 289981132 774522329 197240122 426039841 61423534 829284242 305140884 139104769 648271952 632241290 58607915 156103839 98372744 990139491 174929242 148697144 264138713 779277206 334279795 707173150 270612480 297242094 661477178 787443254 104175468 239265547 183335528 326993275 389252029 832178912 799652137 267427449 210882124 720607286 959901086 168084178 542546083 871599399 538078556 810810557 872700672 822680483 132704236 976044418 912253143 498284014 991665481 819434495 268061005 715073824 941464677 710401830 579966910 16847268 626566564 999920253 156275767 709381561 341668702 422101148 555082236 993889268 994646626 295504306 964303364 361245116 796809838 840105473 917056376 966848973 440484024 868116574 270359608 113621686 848346728 517871794 791133013 383795035 161493275 6314107 378691480 696230259 17672546 246742859 737146874 146513418 279799617 675635528 937672746 726940673 483728560 970586539 470027530 890367625 702339613 158230337 27681074 849673132 805245673 545973997 739892076 433274564 490815974 912912420 385605942 663541506 648878559 764490607 968264515 190396392 915376657 625261805 112881146 236693967 568313514 240286926 488780790 349374050 657224017 386653657 180797060 592139041 309078429 325785575 267934248 217625568 138823580 755549797 601518360 14743877 39623758 919860950 270895039 808020301 298062376 612199247 574930748 828872135 867417490 872253177 717002720 109097175 978720617 733308051 937741236 798883701 367841662 233259758 589767408 179327980 875256084 357913967 914306181 181015643 41697638 222410384 546830996 348644663 410896927 56640094 545319669 966069191 702718432 751203069 323857330 132179623 393032381 787823904 922491272 457675846 987167936 224132241 787459693 426605415 648391269 681385647 953652740 532141476 728109340 430224107 703402026 850713574 484659659 765319498 388407662 795169518 675364681 342081766 822905232 773505488 804719844 288994925 858889737 68827763 626447580 550302368 183082627 639263250 807259366 624942805 733527389 365582269 279547049 293986678 441243688 735126745 616326212 251445376 356117548 132307868 334236870 602195461 183391972 178814354 218908341 539407530 311719037 594767387 897578632 837572650 340318300 420518634 1280301 155858897 350414229 928229511 643584132 483321089 202654068 193001678 874836961 288425904 619218936 741548398 379046030 944993512 654904403 476294252 182122055 264508231 693639531 407836317 447133116 919342461 906199132 163638831 538577682 397091024 210757364 403959072 186705506 588310426 431791158 890258373 794697273 146433994 125290200 818690373 541870615 627851103 733539780 776362012 614264560 10197233 470963867 186616985 431456686 387304488 597876269 705637728 146553772 462596674 485344002 359907816 621254460 612855953 812315092 646002941 458654243 561863419 61801491 73088831 286051352 568852089 968062048 483232674 571908936 828629400 649209106 559223789 467363029 803354875 532447412 396655419 547471698 430253526 725723781 10603644 748566857 712699509 456603382 146614005 184449461 256873139 899468336 835023548 691104904 101110403 181807755 457143613 424046374 724743787 810668824 84659640 554418408 704865284 456643609 803312064 317524379 114078844 474096003 261683645 577552894 76513043 38123907 1188715 170535495 574931873 839239414 661338713 641837727 691955983 13405167 640526955 868370849 529737177 369475125 278519897 488376031 376147603 278644162 672267309 856989021 334834273 989514565 589832137 356712468 632086909 273753761 455168351 442706032 160406964 764597612 32311799 130161875 491630313 901333361 383878124 167707408 797519761 151854894 45455215 971657968 34116918 883679319 929691395 595271345 513125109 582573137 372985343 559705985 925868031 544277687 158178575 406468615 640099355 21475289 140031156 58660571 576405026 936916792 802584511 993991433 671510658 629019148 713955802 446294163 240345532 775776190 76799999 747450604 20744935 401516142 527983358 860785021 784338986 651563374 558088700 531229731 644834117 742117316 951175407 168242607 909900297 572202156 124808483 831265381 782991067 57120276 938577847 517453438 93235510 646924575 66301985 208915622 349977126 126674083 38352038 428878462 953352397 927901098 695489763 136370971 793989857 840260597 88332359 484339589 708802860 776019060 938953878 188913977 542338059 490739663 829361767 271105704 916986352 667302624 713513383 819730870 355847648 545442615 331555861 432301627 608334838 840341909 357715907 514218629 622493662 387319409 392444315 211271124 958981467 448433782 435490264 49934557 879569601 676419331 924882569 558188616 810671995 771682985 385592337 555196722 759076486 576789425 192071082 701438380 650951412 814384276 143675869 272351545 306992747 808481921 364954891 663627604 590455715 421437402 675800040 840727528 251665644 795361975 326505466 135471574 930759333 56233825 948839454 372292979 415387590 646361304 750166276 738456327 751154263 5878094 890024878 84709711 33655799 189035690 457685493 575516667 62890582 628006662 740576004 581299761 596169147 88658226 440343003 110291720 863469950 30265646 50762189 237724686 786928271 393716915 775710466 420307395 550030830 710231979 830074614 116013083 45958960 322015413 746779384 754068736 46392577 813186978 152298156 213423822 120566172 626120187 314874506 404891862 846725461 66715512 843377244 448704987 825252624 672659082 462563780 962506903 264404678 439404242 367125171 242056759 921180167 36381608 71714291 230647003 959473267 803770517 555984799 326960664 740390976 231879129 131303334 738481013 961856695 478357734 639033931 740561649 858894519 483023074 898225831 863857531 867864369 86403369 810403110 630497145 19327914 709196233 909373958 129216322 8904892 811491845 611936219 772407204 132108437 704309459 626123790 664652894 90081142 176061790 929438553 50055335 293688885 614757252 316312140 180846502 804750011 754917464 89082316 257824503 89519751 665191073 758399886 656332588 217061162 65599322 49133728 325030474 665961673 28268592 660072417 966463560 265803934 670836743 461626500 359206291 357890423 347953525 560629905 658188173 919748150 586432838 837760868 103105801 82977871 949329654 788843564 367704273 273655885 413911866 971592301 216755745 978122829 38408311 184491135 238139177 504395393 473892681 907003404 127541134 178097582 747417342 844598422 895183593 807009198 572526617 531726831 323326790 554165743 461956303 546247870 242936231 456463859 211164557 481427713 622842495 296436174 453592944 86511750 519155256 611745451 508221643 356541296 887031213 166478151 560416165 937961144 438626480 94506612 705781816 294344362 982479493 767635864 797527923 992116068 128066661 536883499 107175801 153253210 845706749 585758525 242242592 598255573 839165420 384366573 547383667 527445359 84012104 162847219 445103153 592512664 10897690 929310487 484123211 47093268 514819805 886974647 424315242 850385275 219099907 744362565 886790502 726433720 908390512 22807495 23503568 256151947 523570685 597385302 955999593 767027719 301813494 175639199 153177769 690375444 390331805 633861989 389876281 938523630 770095013 955474429 14261369 206225316 755662519 683570896 301887227 836092826 710721264 697816540 324865286 332327431 458363745 68070708 744974356 996145272 41243278 796816763 779976276 801794635 503198448 502447725 205591848 760935221 760913779 959946583 382640552 744645053 705551864 8094106 70617374 341588414 637518804 877825324 595170696 67420905 304125519 801756438 373495322 593234241 157391143 402612215 702809529 666462621 966334730 120419455 102487936 726096937 628052511 256152053 187748671 306217701 83872894 898443442 162258935 268284452 899928243 400798372 539342431 405886223 28371519 786202572 519937378 65443872 56354839 150992064 18242207 772496807 82624803 788506410 571153128 191324232 443695296 61847622 576121027 740622715 250002751 427523432 22476524 756879371 430565476 113903732 647545553 356423320 561118183 432216164 987990805 225604117 623824886 609610694 233542669 721545290 769722289 291047739 810675782 361048147 664874925 760216570 317273341 228846879 748370034 841419850 730840741 513616882 121529085 226137099 758100837 321337059 896439615 343181102 345832343 462981983 579684507 706694712 583961675 234188452 731848300 393434820 163475393 980590663 588990077 367475198 529108467 350328494 297229711 687400232 370597129 248762263 364544982 467803160 656411618 316424848 472349052 477593528 231178386 219789180 310394653 967278725 245420254 827548436 259812938 751414033 643154114 56668515 92745734 754668162 22478059 969133129 597130060 166534416 279838014 740387834 898049927 207294602 504648015 918455164 328013079 834089170 81215211 378268460 829906387 873345628 981464718 540538170 989025666 412950708 516558829 153684520 713549921 587847925 660389998 828324687 808243616 707247698 40445355 9344345 89186276 863546512 168603635 819042504 125198279 648011914 712270025 695041134 843780692 954185388 378970979 607613427 6935947 908347769 658646828 830629971 574365923 377819142 63468610 345104477 590304195 771182204 916753400 589262645 93312007 572418713 517879126 366726354 270593153 133225520 237351316 434378881 826961270 907692452 806528675 606471008 503483165 888780401 210191780 878855396 434605092 437330852 309330286 705258323 980337706 581548638 454456076 103851595 688767046 823197780 798678077 510261049 904360831 196283986 908215795 183088611 916923729 245323955 314758356 727497439 245149742 782270443 971612604 189404697 898629115 909094654 510377529 560309073 417132175 5883398 811621646 490906778 367192631 331376304 565703344 634265309 989790773 444098239 220347340 264133716 542303548 496329352 612492223 878699279 429834742 961463157 665834268 710182258 457055614 808354946 850158634 16117429 344909286 457856195 73453412 369100131 193340595 559627740 885587447 988024795 246810460 295785607 849429575 550304979 922238414 306967314 374222954 852422608 734330603 666552798 824656555 22430126 902536454 544381921 774508041 541153566 325203560 493247269 318210229 31570211 167693263 568874311 325458583 236522388 526357226 31095801 355163594 161341854 736198366 440194432 598785820 875603007 105595076 315412278 608396431 346866380 617995304 177656329 106521563 691671404 30046603 413968634 917009129 465092506 339834083 618361248 257700441 5939878 856496150 483402914 603964413 365842997 423394690 275495489 295147868 849687741 364910712 37839563 633854512 666587146 566780348 202829097 903592168 160265660 407945223 335596370 473679143 961696198 245251717 462012629 928229955 643562737 773234520 218075988 493561799 590201687 537802259 183116035 858543601 159386344 93277247 414551341 308390964 220555752 447454681 933117615 965378488 162266991 459015634 719864443 392351189 158066664 938856590 804902935 642762908 371081106 441416806 902092316 577325902 117382914 61090342 217486007 478221026 877304223 238299023 624838186 828008067 838760997 237950934 30694220 819969552 651392291 846259747 371094533 768514203 289871229 234043923 858700756 801040107 549537002 155437111 351105609 342174714 536290422 967210131 146482058 476632438 151462658 770826527 663824594 800010820 294540223 343891530 514532078 736760569 286601911 966478194 42968254 197107295 830478660 834547565 242041274 98220023 49903767 921591555 45692522 734871153 555285554 417627505 139575021 74089525 98333806 298031847 660291443 78409181 94822134 17767179 409086659 220895417 923878730 549025141 474128054 555241801 290046782 481650737 515735226 40388551 331294072 544607808 881387600 540823707 870860277 175565846 758215053 359719140 182170756 59974173 884939677 887112438 402923337 860353841 195684668 575179990 861630268 138933027 66177851 208517824 858180776 636447542 33205505 141325218 93283244 951806629 464255751 384042398 150706365 717395227 238875995 819908748 530409762 277825337 1852958 296928373 826190199 776093459 233011206 733305881 873132075 171367603 479681245 975689066 580545537 609457813 787161599 232786959 25129107 726077994 785634016 321759202 494345418 891980373 797351812 934830450 277659495 588716529 459168517 40152194 930938750 397788744 796341265 980146312 968165110 128621469 183014762 933989679 470336778 419829668 759946340 466950357 13412554 447952901 532326762 442007310 783655835 707314396 702211705 378620703 377861043 449516860 524131234 983323268 457724574 939878311 380374413 329684842 23944636 488112791 651521521 154617653 950026944 263293689 288352797 392678140 281440306 254864045 311215475 503058440 695371246 207686919 693251047 614596185 536322979 733517137 761785988 40977185 328085333 981910343 344078823 572847430 997916124 220451225 248191170 188240868 320145251 946769004 775263834 217833161 355248105 142210521 861685514 845537016 566996419 11325037 57440446 581101862 102511128 823207336 80769401 172164672 129239396 239122558 966293967 159294435 86335990 458053081 955135339 489787107 20522097 392605460 874185611 124686277 477782607 341129857 630615423 905671492 324506713 533245925 532395309 373231823 262605104 177593591 162025360 417915145 646351304 651802596 711831860 23352905 634954215 82823630 119370940 498098456 994173611 760775496 786932573 238147253 771027713 916146908 852971872 971454356 67317295 916120453 779515555 150839258 576939595 579333429 969664281 884132323 346374337 363449680 596337990 624825021 994885328 650924847 763007171 933625514 677628942 620456607 899064000 587195298 842081504 463235679 608540285 69979598 820768003 277445285 615780816 56952846 588813318 750842266 860923298 478975604 383699917 480726489 94700658 357916871 830147856 552889588 457429712 903831297 562112473 128145391 536160227 696008658 602379786 772797379 930937828 306267418 553291733 464611293 169972897 522508402 42427458 133428892 163772411 261900196 401906604 826371030 496683624 254348079 292974148 643599699 980191089 252600004 52734605 879346513 955227701 180702155 895418334 784575743 849235941 362244063 500588259 323830018 906783302 756039502 601510940 679787506 84686386 945555866 640967261 985110238 253367831 57064954 398288717 904751556 324821622 545375706 620430311 283142682 130500709 716418390 297242363 117228872 269282318 125486019 185926062 407271211 184402222 168686631 73431030 456916628 558168470 762668476 821264671 345769927 878807982 954874993 601885256 663887613 203323117 397811561 947304679 543666914 832655458 677759865 351811393 924707095 381623598 529423278 623604467 5375153 930195720 886613445 695596396 56522936 408789175 139337394 860025968 59683497 356655260 639841050 349992086 101323509 643542821 998809048 535229387 802815872 734548315 265649787 998116814 12342818 113254229 329619910 55534769 654638377 417361090 992735792 987888478 69753813 474096484 759899746 6624272 444131035 704136591 224518587 908142294 364460259 353534126 276024527 449461267 161842954 319117247 906864100 594259200 248337761 740627410 708651379 399448617 860218732 653626509 963163309 326013420 529038499 490933419 909505012 428525309 706341108 14311544 181936989 35193573 709006143 732612183 551090997 41309310 251887065 656957756 846001785 80229497 99886858 317958963 998792540 112405464 129431439 825277399 286791621 477681780 986608920 739081947 79072206 392980344 753895627 78845573 741741638 623281636 888956351 63518254 670465328 621726475 798083970 279060675 403980354 509869845 833699476 178346311 936299367 229004158 835210986 92442447 942202173 619259285 208146028 272501636 857353112 582980350 553992054 340980773 476369405 867158576 413687131 493028226 654081064 164567800 673472221 341496962 24400007 697728245 483148983 523597086 722322620 481672217 257514003 386523363 517575710 420090158 448483604 729069428 246642233 270456911 516954958 19382534 929777481 373261162 567763529 388758755 600332483 837815493 824075777 474117608 161253837 507756406 693938537 573916422 555520961 839971306 872508643 7651268 664614062 156846687 175729865 628923067 898680791 463479657 147418088 713589785 132558386 166612081 351693312 593915423 613916393 668427825 193486405 360042403 859348445 892315961 427616225 71570063 850272286 972602990 165491311 390136928 918054516 326995845 40526466 611200679 555532249 304755596 669652508 262725516 936414205 225282914 891538231 906526790 984337857 998675514 576086080 174051748 696185788 780920348 947251350 759147143 838338745 921738852 353163536 170054245 51126839 767419457 7400564 859435464 474893544 169649463 577000961 150738637 532467506 457726366 767301606 9054118 217419185 31203616 530245064 788962584 905925555 191399743 199285056 613251326 833625018 894654925 751870555 975644868 665293310 15751537 510319640 282889708 576861417 279131689 202377453 7169165 458170777 782832579 949864259 10382799 358500961 418662498 325825013 920898160 715423560 540905727 580813525 403648834 983176840 786232294 847822120 323842474 905955600 68087093 534341669 620353059 840952579 245128032 827132281 311700665 412102711 814939056 967569861 786921359 290746551 662450879 784062750 537117017 17589569 778602237 897173901 562672098 518062537 994403118 838148493 147271304 913246196 10303722 334220944 314480827 414392734 712603420 878989690 667722881 33176405 524706948 155799844 642777845 474352347 150772277 142325978 390561476 710039975 471721495 288476894 454933166 473664357 845630310 849442531 221425675 597708402 933072689 697887378 772426563 228327009 637245660 470010888 704347733 672480376 274158238 301227606 980083025 504832051 98597892 721982464 68406494 147256768 588573804 755224959 954436789 812300930 370862987 926227903 495121443 261110671 775000552 857030305 829831307 229872690 803004766 221798266 587643362 800008809 131875230 682328979 117097266 549475175 836785322 212805799 613082391 584730643 394881372 141494119 416403013 466084744 247725021 639897593 997079040 843499923 395524142 933741685 687391394 601806648 971004066 914823015 400599576 372131118 187231330 870559312 82863205 381191774 313424872 726960677 978916382 736968296 13330820 810815950 133502701 31627805 581863386 328603304 952952847 327902726 46544482 205318916 571584213 665349340 152880615 425217702 239415591 61492238 743160073 500756806 626963452 74249790 167297211 809904914 63798243 650541508 830393029 148623146 919992701 691470633 878921283 502852643 972448256 507401134 518815268 773064325 358028726 112335811 288336300 981221709 870420092 79852944 153914098 587922028 403925571 110974831 213300579 152692037 195175827 222547055 835393597 765150515 337076227 664200403 433846037 809978369 341868738 196143761 819647569 610782832 45958417 878045652 951892911 355108533 35686599 190318459 838126780 201805560 397876940 331188631 999836510 331323349 129741214 394823665 390163531 299445983 572370383 490279553 467021199 943380760 450172036 104700920 625075978 874669435 667928568 775550519 204713712 618123635 731277815 192360662 798574663 169844577 200810083 411078558 486501228 296194329 738686899 40364815 628732558 927960677 100841839 67460827 261314610 677586817 507394741 72347241 19878829 799213981 234561719 755128147 737480109 78780767 466347835 564066792 435025073 87535966 728580378 990231467 888923532 996999848 896159937 957887442 463243750 291590972 719483059 69760455 164352187 936290961 134914052 966171563 782773466 778166286 593420511 39143630 374027111 161319311 717694722 983973432 359112793 685756391 316721725 29589284 192576253 989040984 746693367 339033983 534750833 281166364 974017193 233867373 761942570 183762144 127379552 502686917 56778862 506578756 533070655 752193936 615659227 952505436 200789755 70468750 440215262 960109874 175204445 461201072 348025405 998626113 757508036 701432991 946496910 36136699 587092384 266308916 984801981 352025157 812759800 13249022 891643786 319296246 522410981 499111871 484138504 272727387 846782485 744447215 719586592 634232502 327990089 896917048 590698252 849149370 703380951 984720632 300598748 319829265 765548328 405402562 659093492 388992982 141898811 43460829 218428556 846199835 60494880 87890627 436388911 311104357 513292414 924369572 442189116 614925611 987000335 107705056 694283368 312110426 569714462 535513489 953175866 176531668 887411216 291279103 255398542 877685740 12355032 133852201 317122835 223591659 923604096 46563651 720375245 788125839 353399719 499989554 315306643 209610887 997342462 128719634 288956562 890894328 546490570 381342385 849180360 178376187 163633765 68046609 491859082 850608668 85685437 523507177 10168830 301363933 820775124 904536357 878304418 167289905 842026046 479443810 613392323 498518529 361267110 273044083 188576519 236255402 362079561 837718495 582874852 862657405 647468921 652172128 462642470 748630334 514343707 494210405 467422061 729500838 693324842 417086865 345110444 454747873 645059122 577779002 923954348 699617297 185127125 861033962 440715399 73556425 407985226 50805218 581541165 499471762 191900121 839597714 237028578 5778281 726507616 799692578 227207870 434084415 699877073 771315949 603111724 369365112 425309361 915047936 705941099 966280301 563901083 938257312 720081168 549815018 954710203 96244929 987570818 241314736 499058516 271795343 504136061 794440692 534023482 288648937 399458960 226535134 18151001 6490337 675995806 855133707 897800748 396322109 451178337 239674892 636083782 126991097 663830498 259041509 337077453 938634179 713785091 306750095 617678074 907401854 431870965 672981878 455711130 596645311 754739906 360882427 44971408 29341267 844517060 789762035 494212688 869625271 259075372 724525350 221346918 306385054 885582716 716227537 15076333 924029807 294450189 961732132 724613913 577321669 82793098 779333061 984890541 873993197 706082419 92207180 468311685 377428331 334542747 854464453 727548430 217425781 687187115 288155953 997499593 389501046 830692765 26862852 340367564 611310477 278588993 111601577 858898752 235293452 271679163 967890937 570744036 407519993 400550403 454204360 375851656 907428752 981843556 394056281 160973203 959173054 232243709 650330340 88306302 912808360 72788291 853458199 246671191 260175650 316850045 144706450 444981823 944594489 128531271 684534890 306948076 110847402 810585871 54091686 289332776 834453864 103351195 843400133 579872848 133045018 611603074 936786487 703874518 302921882 816732846 680867807 55416511 17208951 90450144 326936472 740930085 949544052 265366572 992158380 35966646 829707783 728392824 194428766 839963443 120890075 663281410 589091682 656153330 725248846 274434263 485071456 293866077 169780979 888952157 184796788 991185777 564004626 634478794 764780721 168740416 549511459 826218666 157067161 256287087 112086359 290343517 520481191 368272056 800534287 698467222 745408453 742376810 711247202 564758749 484613078 233677540 303036316 765420558 168073005 401892125 40713145 509592280 43039508 447141151 779064046 813992255 779611463 696139655 306872353 697287195 979036790 422744839 226595948 538404759 165651654 542134501 334865310 148890034 207346257 282417017 603969721 682992833 418952097 386409139 701367925 256274923 671404601 232128146 719878076 396336556 221954828 563435950 376584748 456753235 711549700 408126383 332791960 816257155 874443644 894730707 700195207 393889206 180366535 421519212 852647348 508782773 672499367 499767392 163169932 742082593 927519446 243472295 330205363 343438574 415494529 176418257 145025151 570950370 406578119 531563902 309184635 334845723 811576382 766759907 880755686 447888518 238304111 540628811 485391666 209571945 743387733 64791444 565386885 811326169 343706338 61799086 953156155 947694917 971048571 583108384 103594850 221343977 704884343 341155971 659359292 315330908 702340259 696801796 811237569 588396291 712262080 22798054 259677978 344128923 356449796 676558590 608497703 596325555 713026965 496149301 80798714 158441007 101578001 542929418 736981594 458685127 158949385 611590669 409986881 636738693 135692674 925902437 656192350 135067979 881650802 552798027 247888532 438147403 2139209 160967309 445182585 364603277 903420773 887996940 634133208 836098668 631260060 368009790 837515823 562246169 933217975 837407917 458950194 696814359 155982577 654111349 662177862 255328957 159657340 328357066 422375431 972320183 135018748 505125744 920727490 79772805 745183754 409795393 927381244 129168379 301194674 822192811 548362473 31503808 311772661 724581935 157553397 899136207 913882696 834105571 380876607 188023800 641869843 196070641 706544409 867977312 471809331 696642070 946155402 799030780 942769273 498701348 232592332 742859802 230975529 994364288 977255886 537148889 391053436 835517348 734911154 664825005 179408414 165722526 201566032 826625756 778625200 32501392 679982770 763007491 547717447 902161454 714661014 947047313 622355179 457589571 588732399 73548106 337849113 527003180 167639396 574743493 413917762 212321115 643736016 145232111 978520138 745847253 832535232 924733574 56403209 236889013 712308472 501211295 294487758 433219239 739593454 537330209 999472855 952168045 8983373 21532488 869166553 255766878 528620404 806241826 946688126 968637666 409394165 532435733 756398562 995567607 464000278 502638423 881495574 296250287 536907091 153412469 77027998 380490672 649353690 532993997 126717682 767425202 326997773 454509843 176183040 461146885 859528452 391266000 840862632 471826696 648720904 646765534 289994047 747184051 783920409 929189614 764899853 471283470 667444842 260442370 954446543 781216439 84989407 140849651 295946549 903806561 615566230 729849068 931254373 169452111 48779867 96027373 834066806 228400605 530084914 570768201 285366262 870472696 989951697 459937320 520185957 72100768 681262115 812143366 474582200 378628205 965817030 332555570 294484183 420386056 103005326 264998992 234397983 81350573 150176512 640565463 486043872 284027056 735307736 383635604 328900319 682920180 529904515 259832613 240660438 257455733 508313509 252984959 719396592 604057280 139509653 418997097 402518605 211138934 841298140 592116223 423797124 539351245 118805946 940527663 983687196 299215374 538715553 767901759 424389137 962014232 46917048 216626501 811258966 364590556 223088985 392427437 179937101 253628639 561476243 210869176 289918288 219222971 22056104 975117815 390197036 942512797 376088208 702036436 166236833 60158921 822570357 749144585 510033635 523516946 955580725 846240038 841109276 349925218 535421668 961362447 833565416 438390072 207371591 904053372 848775383 227792165 60273497 770060664 619300590 209555278 6781129 10535907 761404710 519574765 300988539 218756336 569332716 890343632 660318467 766459559 969252511 194689496 166699309 243804260 126914582 710045052 492660856 394833238 49730327 780100676 168099221 176517889 293837537 168710734 866830573 98553789 210663843 268337099 88268569 758447412 132180226 831854467 4664167 553961192 850962071 460098381 793652828 582132394 797346415 382217880 864976941 891434788 873445257 983313638 486144836 373102673 875585116 492058187 123198657 941421055 464949582 469130226 857509622 267072596 903657790 550704280 515021290 311543878 446029307 108000527 26762200 746374177 446099146 874104509 840625581 598970374 746325220 648747546 343035789 997584486 313119733 614881077 213488974 689028746 183235231 584421936 996309243 463465743 332522741 96368576 848567122 163727970 645588736 477252014 341055559 889893704 695862077 720129880 116331391 472927577 634015005 994161712 373849302 469442432 726112132 378915900 637428953 390125693 512766283 488553621 259718989 25575267 717062079 572495848 254139814 177542682 603667743 165630712 249485200 950308318 11660577 437609753 485846890 193970110 20813165 889618615 353188038 732885278 845738529 277828045 778642667 359518261 404060235 234489455 183528275 865602192 481948786 322820928 395522605 321930125 142039310 427990012 468837596 741037281 128099083 514323952 23192694 461971731 978507339 829739133 57442373 150855166 77970465 418584984 743645770 343064403 585497558 174093901 192221621 990515476 113811239 837520696 270028142 583268890 270088389 246281994 642240144 509188753 278718164 587762954 369098472 329658487 964694892 400862609 837527418 867990560 734776091 314171533 974798076 783240373 864413025 84812799 603808346 892975792 718145331 782892669 465737008 21895265 13807481 454965168 791224915 247015532 940317073 737798359 898200137 129653833 746280905 959520067 575498699 801206467 508484584 451104985 331571786 490802810 428158374 160139923 282100840 171469921 52281647 843517183 418609787 667472960 463964580 19919038 317834509 780030259 519432089 211304710 247105374 980143145 403385752 876765217 599385056 591549541 921128093 485366252 505056442 120840705 119950489 231970393 39492679 760091238 31063280 251607533 837160852 46508246 233659130 133934146 421206245 286631139 420211333 441118343 960682032 510936820 428527697 439572987 351653280 657291463 862021267 804996725 120789523 502936553 878833523 871959263 172036509 566803520 732903310 157001142 933050371 594812546 783335540 638203276 923232065 514493115 700336939 269920647 989822981 133179595 85689002 43754463 980983857 985036006 812487263 686622819 234546524 590113810 267623082 960526069 909298514 647213740 395789663 620611593 585499792 694869731 487146056 420213034 712756425 308256060 914522529 857860470 863968611 97089292 606064794 297774109 34568699 855423745 740829145 704592101 701821661 203438490 152518645 245868713 245142412 334877098 491777532 373631445 728074048 204945625 397050862 845219564 867680611 232903203 968397631 398748931 576883731 781208663 474594137 86502467 609166500 554525849 896792088 522960490 795401755 811169504 51818572 105938763 387793331 359643768 238756922 392272201 691352412 648657026 611685915 859657184 345635895 451756143 43586716 259208733 149675291 284865161 141206877 779504928 897117972 266272875 82449778 109572769 390589918 851682179 598250469 950150505 789133934 839981975 619072561 121188308 694515050 614544189 1529033 325613654 513827244 675462753 217611663 238976498 525976770 34020547 340089437 718490820 524720497 704097910 15612288 687751289 39141934 282263651 213867063 610581202 606856611 181674180 728076088 696364069 903311664 692876713 927415596 871626716 80604008 140215158 263398191 745722099 779586704 634266979 918862161 729219198 998484771 771768827 360914199 190068769 450923088 646633373 683647994 773470358 793520250 223188222 137729510 694211627 460447159 2693029 543647165 669460801 514352210 630137966 785865682 870906574 79760202 150581768 45184111 678893788 25180880 450612599 461658191 204007688 863748301 368358034 69307684 689577219 738437978 469087878 996798482 851937045 417457477 805009489 589091890 738793109 333282963 49841992 309654800 48576114 51271928 619456401 830102318 924997549 943136865 502592682 302652031 915785180 190695786 233051104 595573484 822565289 741416424 331794137 454844627 413690193 776165729 796044811 610345858 297653542 298103695 742840130 519774144 425825294 781023458 452367390 252499013 801003521 943331578 783640210 502749758 49058446 106288944 447458151 870249418 79168855 265361166 848528567 656718975 587338384 168651474 568864370 813196261 482418052 463005680 11844316 499684857 880505104 356585357 603719949 235665836 852976678 535890692 969976175 517521762 595856972 314549861 856604228 611443572 244778010 917775601 749179934 497019054 141449152 236205472 899048549 378001617 763899261 869569947 799180757 647691538 741100073 251092674 18163453 737763993 193930156 167979558 822675648 33914628 945973124 896096912 766118616 520516833 180831556 501313273 883039310 596695607 948247311 101522704 962850307 518076670 75697185 128586167 651336491 457202082 762017094 837011846 982488525 702061444 434766177 964559175 307830596 185399161 609553383 411456120 207954625 362313801 52703073 897248204 868094406 346245425 925134830 565845930 331465900 515331170 94058430 126628524 474519838 273497471 981956504 499585058 659276956 446408227 992831317 36987533 761095417 726123097 17730146 503765028 401512158 839400226 856765506 896345938 76001349 647001331 39214346 161709366 176483582 503036980 696838116 702861857 873241901 418050498 818537868 39172124 538361802 671353197 823838422 233910111 297718047 321630331 229922086 138162907 319177038 701538851 220001526 431856817 80915145 19337235 288416340 528456889 76386008 894335211 220682081 316901628 449527831 54863040 126617811 613994554 619595508 372634010 402285683 451047525 593844277 53105653 900707232 109847844 265291120 304101188 398026699 45310033 711254930 696010857 959681785 987506300 651569497 830468159 163816004 256108389 704402906 639090193 657206362 625953413 361582331 825661471 102185468 665928070 474913274 807594528 16715905 918311623 960238564 419398075 764229200 7578585 791296031 478534925 131139945 658891780 457538785 250255142 630240221 601704131 28685750 36491403 498575953 156864067 428286974 966006710 661021824 274297321 448982380 54928785 842926006 375510729 376425096 886147071 122945877 85293615 370270510 864839252 938385236 338337818 153126157 922277335 892469435 243894204 785627689 715291719 273964072 53155323 762594138 99416147 528936013 142792691 29358283 537345569 29886575 791187314 494867579 230052808 109871337 460318587 158330047 800986069 599793575 996422340 54325438 225947082 655432876 844343 711839988 82423962 731958924 230224757 631610799 978195247 783665394 382756174 120558997 723849957 508384539 126312010 920914973 516243980 221996122 75010339 696454673 774577257 197943954 477314377 358443538 529746357 513503935 428789085 636035348 52691997 155393901 106209718 252888285 454728384 54383935 471006431 664190603 386602548 326431594 377233943 815872779 762362626 834899511 920902607 892295586 229939750 683022212 199010864 86782568 207994256 900626244 396815762 289164488 696529573 415253498 24069894 201645570 701929662 955987778 533804750 543996841 488794535 146083401 379665119 87570982 306842146 35003472 633917286 697926451 60385378 970517804 884180800 925113952 866917520 507873225 477273728 510098321 744596298 726908578 823644397 439605117 261719071 327850059 202309249 245532721 920005140 80750568 793134571 177030540 780237858 745736627 964685070 48646593 117848501 298098041 501974400 757366743 8516398 376255262 361539340 549021228 966603874 540531988 916997680 910874862 995403546 777082088 897041056 438157985 280822673 133402038 314602433 993784988 311255289 588362927 985399086 624028043 841998326 747728282 840388919 440567790 387212577 791516497 889919325 61628057 415622022 329819711 653915864 487979826 826424102 288517353 811345169 32041143 24653174 402051682 547469864 258684405 620477918 877477077 75732335 167666193 982267964 586315774 383967212 105468163 423689566 98088881 824350939 667121686 65976715 293271634 774959146 166162538 818510587 815771484 102175484 740177266 466134618 976672219 924756519 188183927 811802441 490788593 125620405 938608146 584806109 96230484 182768231 337467574 914611230 899370190 211497517 618533668 461457034 194055868 525036719 882890228 708044431 541435024 880886471 172059411 631724052 874683728 452837893 649051199 839057649 246137108 313495850 657004429 784514418 439020427 431687341 232710116 437892824 824490103 792735545 416456576 257781720 207486508 733772333 845356655 483110682 110967317 79969306 105435927 922887099 805718831 734498121 327362222 130947019 817583757 548581427 770017217 383763152 493922258 219769351 699645102 102894657 123254714 110336295 122312233 473099276 917166737 367843243 287930299 413969169 131220666 651960284 168001598 860299173 95004457 156688570 788816482 378285584 547248617 716176503 741037868 695302415 705003160 856168186 554090610 175023186 612870886 623858269 667155808 420850943 200172314 768788848 269076725 613693998 322516109 336746547 557647495 598077290 467809324 97637471 365611579 474027318 394734330 274317278 863421838 399527302 125300364 530376015 229448143 68692034 817881995 335691395 781359778 91455943 646402614 796697859 7591038 994722661 751118045 577901191 382662448 18184674 728710759 414740352 410383446 313930741 311515853 221747087 67697637 112379084 476661148 553975820 398821540 963629703 569875063 62912640 360935086 148799674 432343443 787490603 462565364 183319279 756974650 255158143 598467257 819260706 328578376 465272482 978981908 439589443 737391025 352847344 820924017 147693239 222617337 61776247 239691280 572512472 732153274 81577594 384494981 421844336 717990946 813565423 519853622 710554178 349752946 8591105 302762721 657052289 882267008 183181710 423841811 644753239 259606326 473283753 806185137 826488416 646572817 709412121 444471411 596051500 731405474 139283417 469342308 355054272 117785616 461924502 124582244 712192021 468115093 371758644 215042214 401504920 436758781 64481609 685840434 596575657 638840362 509474977 221813604 813107228 532497810 844860856 438240107 799327419 527540671 148162371 713649099 637492929 295342798 654193063 203330779 339754592 357632753 197425024 19771464 405627708 289762541 257903644 798033809 247419118 327012508 19944958 828790920 223580035 964952941 731628379 928059351 46669307 1080031 402891936 622141817 287770314 141212425 750998762 90951484 540629593 155536661 361148044 940031814 762855302 350079425 978204557 377112205 246747168 689249757 119106599 366882141 65956716 282547407 401977161 566368214 563002531 157571858 352344854 376647276 918504817 268017842 748929380 676553317 786686584 96829905 744243774 45847646 106089931 931978022 527040611 242672327 993436019 866959481 745428420 327868002 115941358 186415912 53319178 767274184 322670762 411070630 868612877 630007524 739157135 786550006 303322462 420179318 270072434 516708660 192477374 178345361 367731619 670263820 439529125 409845021 632663648 52024385 759100092 544018774 924648543 307178792 938822499 304584011 197645640 815225130 204708396 418581600 242058553 255679558 95007326 113659084 852186432 190348428 175717235 666126876 487158756 446780067 287555482 971415470 480702365 326944836 581496373 795306295 683383127 77707964 358336604 399279934 918266100 290121582 441578841 382386590 135010247 929331279 832204586 893272072 218230041 599315560 676463875 205523582 995954855 529644120 206591433 48078297 168835362 115092175 616296087 986270277 416316590 325742356 553686333 519117248 289513827 293704576 37234876 29069470 548741583 232547329 592836043 378322440 264515443 365556888 781825365 647834744 139505985 783705051 632512761 21353022 152754725 495314292 75683721 94879742 265394041 105569440 26104203 102124336 250168206 972983984 879724987 323616415 984075306 893001611 238641543 446273771 187497221 432570411 740946833 894116615 275821131 886291739 100048945 858138811 411274013 865599232 280039921 869702434 520958480 728449293 850005519 92549933 536915372 21185933 973770494 297463839 368750318 641296989 944386789 31038480 451454406 200683886 369518622 311282282 844353946 725805384 654123961 565464687 123006913 886100354 39485430 336398768 750854665 419113291 761198287 485975703 172865842 724666340 553277036 25814239 542638449 574401828 432585132 226999318 546991342 959822835 861350563 530809378 348936262 55805647 207201558 836585913 81229577 878323786 791920385 548471015 659791933 649898377 10978577 812190092 801990361 837048518 467238699 905167835 688923723 823453136 745784035 320960221 339470579 538758 218868230 278262508 632538789 53699936 747607312 241263672 856117547 422761958 842237878 751119173 134776001 77899062 793173854 601023851 590259351 527562882 750517154 678670165 962196819 745656720 496652497 294038915 263602572 444180280 629753454 707725000 946715216 17859562 945567663 852321996 452256159 989223973 362022399 864958091 435607789 704657153 748697980 428892884 125680036 448103078 572657017 169019082 711416224 423104211 441476862 114974311 756603313 457401176 568924995 127693556 309465628 597975196 774502457 819212691 764344603 935981079 579384065 465091509 244456280 50246873 917150834 290256292 180228214 200621570 229722519 880601850 895489416 926852424 907854895 499766568 436459416 274839924 693378348 372878321 656500770 477038821 599682356 150077420 905323926 651106827 702522147 749219589 365684697 347590637 990458503 285850364 124988100 711277732 473858083 822595556 206917284 478010845 553068652 219269798 995327672 282974043 242184207 593363836 287174583 848818547 782673001 546549878 426313287 25131407 69933581 893827576 894491015 756733100 659934530 788884282 357772678 562765275 375240323 119628999 508786633 656545987 548604157 15619838 719267785 478136349 638263060 90993812 596334451 300421175 838473950 744438544 423637926 30164338 677095590 694666062 560570040 114390212 608289642 88589821 660448498 950012983 479048030 984404001 618805007 689513320 309334631 656840081 306623681 338956809 750557345 357387130 925713196 688717407 761114330 328937178 185682281 300256708 981984532 270509830 223251717 413164838 956396807 998910500 371288191 744851847 216783516 411891634 291190221 650357371 644070515 643368701 168624855 494619821 559914078 968436139 326042107 119512666 144547812 746595378 835512456 370046420 693930687 983715422 624112451 710402048 395145566 526351311 380922597 504167640 895886692 933279864 574445722 986955243 781093927 244974369 160527491 760389336 326942002 328520166 974018101 382904278 905641155 45785783 491840312 759918639 550331469 829275606 642605962 550847169 961316600 660533340 822689305 407307388 544268828 17359027 273204556 781903078 353519050 115456285 922347899 51333786 116354371 561940524 973545842 711461316 242124158 53456200 810438899 430044839 383188902 965648173 305315632 784723479 572444058 568875113 278280533 808671231 316927596 40543714 454445308 864740829 326891235 184415567 183322806 359470401 135180793 393560506 575836297 181260882 178815324 622950916 916355693 21109832 594472945 776749921 23952078 478540787 422695501 732894168 562913037 484112435 350786874 48341188 110721023 836714109 414258745 548598614 460165228 6042973 12350970 959430928 603515793 312923374 467009253 190640203 290166175 113373539 687570836 910590642 642929209 717405058 21493078 768830405 324888314 586957604 831894190 624467287 10195437 167283127 14737875 83806737 348369427 607562428 80525102 166100973 711412193 505186889 458462174 664851131 825596863 156241287 915078199 215745695 472775306 233249077 198683198 222431889 742530578 67176483 295180335 592369883 862077853 813729208 179247864 775877023 784800354 245103213 385139899 106466639 979611151 141348432 291607888 974597939 92077892 918275458 869442240 199504870 973327382 43718841 246336459 89910745 339124877 722000831 622315107 201617359 381653286 40081905 323649071 75019103 737243473 820849344 832245513 956192630 111710708 140311091 637877120 233821394 369367526 550013796 725124951 470629000 949654133 693853951 912355844 324515454 759270369 405493702 615383858 461534706 628139486 334790927 896218943 536234993 159811094 402919748 893703615 931481569 142426277 523823714 559647735 231587319 520947355 972721787 825003874 689897922 598943358 823129652 961958448 561588894 346782917 792902983 12327362 305289794 124252254 530537218 810077488 314679603 897683752 556291783 328017347 762971470 521927802 822247562 939200379 954175554 395960218 724340054 519748490 829763091 625012295 386044872 144487638 719841689 107858736 366767762 622686843 119044863 488942715 241091322 76454983 684060228 882919999 158704472 706533181 802511293 346381066 343916443 437878802 796169873 481095259 364380613 784452019 329553212 476378921 17740394 592889277 539104268 693537882 264364342 420708612 666176423 187704141 425420644 406968845 25809283 841139793 379054151 250331539 509281901 553254187 510632389 541232901 258096387 648579476 633267414 587265798 770070586 338517945 551638026 584306157 156378584 217769145 552538112 573836355 266891002 552521515 422643696 271397703 794891408 240679317 769405986 944671085 985176540 918376694 340715637 906653402 947389175 246224701 688682713 739173354 14383948 699130831 267682261 723150251 338755099 157376005 295010050 687117919 870631159 161242027 146022285 820887550 516483145 263830915 531705017 839456433 308301771 337055680 890780251 608440152 200875277 76203147 220918620 476542981 44272115 939577986 913707579 204240511 287615284 196301620 835105160 695034560 143427805 482293158 736175210 470095736 16887501 865009873 492981530 758397575 738284854 434106401 92254566 922560390 398348578 611548151 366105903 321826879 778661612 485991977 518704363 24558897 845693123 19692157 5173283 926538765 874081066 83902769 836272630 481311291 647335291 895800182 845347221 862813014 386748511 622082544 656744133 28780460 113974359 289007928 769120352 545729215 258393655 387185242 937190612 39827398 672221605 423384407 19780770 851011117 582978975 700950436 40060128 43683856 858029298 353921194 660919736 148758724 127771843 205108804 997863143 800603471 384821002 851828548 278210623 85354219 640938258 738392045 939141669 558489479 770014715 189954682 269525011 648589382 964035896 608615830 328670999 539793917 482449170 64441571 50839635 61606329 445633314 612956019 449516923 554846519 951574235 850454098 192881498 804477803 794318334 398235898 758809677 26748666 807968547 487378396 138932934 963456191 99024951 671887582 250777546 478520905 623742712 31389656 967704948 983433819 895238523 321203990 498684272 172298604 940875431 651646937 522356608 37819429 482857656 602969302 82578427 690054629 371279292 147447477 970666569 110955328 288681497 915719827 441768808 170012796 303233797 756923520 258139754 133809682 874034957 946440706 475094773 22607667 530677391 599723665 231619521 845684289 240682559 649104409 327426845 626527569 32978342 276608891 587551595 483706544 42455966 921903371 480258464 110106971 436809431 520063251 727713221 44880261 320832598 337803343 345321848 228086549 98185201 119982192 110988396 524962853 270617300 534679193 758993124 395943300 557445118 900427749 605231164 672848181 387348676 400007647 157584736 412721902 266077518 719610120 420266323 484853402 76834582 565381460 147696554 628170967 673805164 577340589 87792910 516309369 420101108 812237167 725322174 744958981 661305637 876811498 91566090 453886007 958758092 754586084 777160409 314540668 885723783 547134228 646410788 621124729 111487051 771392936 87083385 143406466 390463711 861989312 780564089 822332708 297268830 788756208 624929114 509773211 594443961 213983938 86106981 971633756 203719219 986963250 109486457 301388429 783613411 507733296 185303174 328152968 179127349 935015201 619208723 797381468 796021097 133281119 864259257 352625484 343839763 573525684 973782694 678432334 686362009 381439715 614087195 753966476 306194105 877313311 979157486 967103206 391523328 262045842 270661129 877547375 937321043 563477720 986787305 155735532 638307690 57649281 466036000 342984536 777594448 292708242 863592403 925427043 291714533 135832581 320791356 908454126 76187484 404521540 3612201 574024336 566950589 803146162 978901371 889598228 542983524 60812066 141866665 233945593 844664448 881400158 277589050 189333489 233134485 728451489 678840398 622348642 753316602 665780253 792520982 241288424 835703388 352551031 364709208 995012561 768280377 922047046 898488556 810476191 125065574 239107479 85749569 226317194 4522890 184539500 484565976 961811195 410213793 969139768 600544456 318799891 435004793 97833060 857211705 964994338 300450104 139753166 723785705 564160048 240267732 520533829 808953770 367428471 280059801 885461774 302717409 770388966 396593319 253676386 412970761 278186912 903630706 578697709 484020526 125470843 268186432 43803985 733597811 135366786 264631982 631205281 425769868 611888755 950409260 267944166 780479557 677769282 197596284 771147678 656677369 175111572 131912503 53606200 517966363 472453701 382645064 532617369 170088113 242114787 917797742 253063834 143883987 977655088 301981375 4890759 713140017 668975267 510312224 667704993 840375435 194013416 998675917 701016221 323289654 396650076 226248664 402104356 294679198 276481170 549713057 63125329 774810558 663164112 241701475 410356534 941877161 461468818 650107560 168470103 600882949 761487366 690969807 182728492 329017739 621342863 787130509 519958692 95684233 331412803 634394728 259748509 523408735 899633005 195359806 911827053 604754437 796901643 154651069 635382108 989205380 86482768 94188264 704335655 792469112 137277219 315314328 453495423 963541909 69589407 449719033 214943624 98490399 886919313 554266121 871236699 334835312 603457789 114000924 845159812 912628854 52634522 451853914 804804740 793568306 129341777 977029439 351924304 236782650 84363202 230348059 723458000 172320823 666033086 238144144 845681249 211250024 40640462 481676055 59615315 813759774 140501163 72509819 160217964 188490558 858526148 465533019 887788900 259664066 769097659 286198957 965197927 800033848 756716776 993099318 156396438 616707649 668803028 428101650 313777030 35867667 124758464 925689650 225496255 115361272 47400220 720477913 447585342 899495885 987944976 992915231 186143731 952794500 245175542 40157038 157348676 382612898 270658781 975097096 833410952 990633921 239128584 675569022 428041357 209612047 976359021 626674490 275236627 206890190 509615159 64499190 494506831 891285714 400913989 781236035 219711337 981772294 612819624 757776644 303672318 238448359 363420969 65863664 968422558 816596487 471416768 328407059 562633807 201439883 830914334 646722381 975314440 26519726 390831396 873894353 284384567 216985660 100973930 14482600 988410940 468472088 507944377 212088364 800736492 841892278 238321809 475261069 339509006 164705185 670347172 456579663 313607393 135846902 587756633 773264074 117779861 444026856 283317834 403097257 625230285 166984506 312572870 687675500 963216419 593425608 6366800 242098918 155764644 310360830 836279070 459620799 462011472 35032159 192013210 474607602 308319643 288485887 458843109 634439760 361904367 700547082 580482895 785449468 166620712 972631099 56292064 363118830 127682070 852797029 120394195 983805040 229490943 937479406 803507733 468211620 568253722 178685263 53970634 887590395 815790868 828501653 907641545 828467135 659326607 646064611 355343131 719228042 182906526 184196334 625852800 618928589 626614859 197957759 816517353 981208907 783672082 521023221 171842047 641922459 841130851 371106496 81070491 94932649 120288547 883863783 313946956 629488693 529463851 327478147 226902484 472278098 897903816 571929154 944798123 837643752 715565114 366397157 844661115 822261043 459185461 248354754 353267874 57667651 584695394 6140482 21246387 65757562 421584607 16872804 871318261 62307857 628195515 330256953 612811490 549451923 925257083 183902310 980194474 143279967 803687064 64644261 373321389 521034538 30388223 33912644 179174661 221363067 519562895 841760420 112472058 446229806 716189342 792005563 565755019 358075634 133278325 773596307 462319852 323105227 805179087 207900360 579605250 557014416 3117918 305292814 410741993 425117550 134856518 54884009 491903343 395787363 490994080 692806644 861390486 368912323 925577721 381063899 599472661 892748727 743831760 144291936 50154456 480065465 912889371 566012953 272051324 622797594 708954051 265075376 774407124 801125245 306722851 49115234 686474599 687405401 885310605 511141761 666967279 977859194 929681861 507584754 972209883 716165248 223787140 468483248 614150350 595247966 154510326 836465223 399210526 792113628 116235836 392981849 926497365 160854038 241864427 191570461 250300340 522150908 437503884 352991195 583870891 448431568 417333274 268691313 644178786 946247338 944088967 885980625 619998772 508478199 55973943 277973633 518598702 616102134 559532674 675594777 813892756 101039930 750752566 973925576 531831389 772895531 820322836 648884944 279541938 15095172 715116623 288211718 497785715 117482198 741900048 332421971 1154482 200041476 531424244 356845877 450390581 216257734 747583884 105930302 173469688 655360038 792127451 762550932 803132585 537996549 338229980 556760944 457059627 166125719 175468282 265914783 878340115 474035939 657040278 785344516 245601838 193456964 924349829 825373204 619793657 778802410 767423887 838096984 605813031 616202586 313555697 292002543 910603039 528138986 87891932 588587529 815843196 736626502 334302196 913903213 204758411 315078126 680141521 520601076 474707408 449738421 765474433 653205003 116960385 198384195 533938692 543491637 991331337 224634004 869919183 4258439 474278791 511599992 265051210 699624491 698160461 47002385 428653138 364863965 785431393 135286871 140532151 882521201 523551231 908168087 39203775 811165003 147708436 878913264 848843170 579499237 921642437 970243285 379241739 723409740 801899750 472033422 593749149 118045860 532645252 643563190 111593068 324977568 861719132 11281342 660732032 437868554 585293153 110908009 87220054 104025921 819804218 309482062 184598622 890456246 617437889 34859610 388198014 316958830 29836165 699944267 474012813 166421379 621429833 530822710 5237721 385179299 497228931 954356993 257369762 326406287 451210206 884480745 248308380 873339037 658794168 373823230 739324785 690529591 616716452 459854498 20816701 451369562 12894954 627100174 666701072 850210840 24130306 879337677 275280752 711121686 580599581 544703039 929099988 22528783 40979612 781172248 146098730 835238223 225042070 567697118 107183953 110986552 923978839 85994606 658248096 722739393 249423835 135150199 373719646 688939249 981356119 123104509 58904903 280622697 28758705 535226072 320638734 992046552 937549827 582732850 37469653 653156484 389875740 426450701 128986038 423441608 475782142 860712379 838544702 85231248 536071265 666217316 311492588 787252702 959706671 238438531 218449591 941050697 602094342 397877609 348859013 178059385 527164345 31596217 282689717 779734700 576223951 401642474 378071446 278865204 500892419 564505033 761468653 321540087 840815554 732673780 542777459 448297966 379748784 546762847 902871125 862483366 816522531 21873107 421353907 31438786 233554086 388465770 415164705 7573366 436674936 454598421 985419560 522994446 778670603 661908246 522130118 163482725 43700357 911619206 387201002 244047214 243968834 296636624 428538873 580144815 422637903 655698228 616664652 909543873 279580913 532878149 80974511 775601106 518090269 52010348 159891940 493461026 902993661 421526882 578974750 390276233 496675953 779946170 269344135 955590128 147071115 221338453 255483578 665363155 495231250 692773355 332445001 207991238 998393856 389362313 153379384 793959405 315177476 229188365 122352768 187826050 349869825 480618412 163214733 888013906 376808589 896333165 690960321 270014016 12764787 947395244 573653743 396915649 171320113 869014936 486067936 833701471 466918011 726035124 711314385 581316407 749392822 462080346 129531123 474184570 640437886 840817715 917426410 544774895 400686368 85360576 398544975 617036399 932463392 509386453 834485806 741363816 81750965 603832088 847135881 947132251 735909448 376105862 472981202 873398879 22097657 899191023 613385333 154139035 166425882 611204213 141952332 186303183 210540466 20129297 405014569 290558412 417787899 741323534 536867664 240810231 243384292 210690700 774688505 727763915 527656591 2939390 666398162 849212756 563790548 614679468 507455356 997971124 683210685 664281906 748542730 228747169 389774600 134406655 757112197 827000037 869551016 755013591 141521514 242321629 128196164 28738898 695786025 812349435 875280823 413961307 388410024 799259460 116323214 412060337 463263679 369004243 166827661 848560233 255304122 671611476 64708394 3509866 522910170 336356234 495547920 922262255 102311124 263620297 247547550 755409417 703352656 178070396 585879910 702835739 579242603 745658528 367423662 400215132 849268790 677490503 717372146 359597912 80820276 890153751 141224800 329773936 703625696 795843273 114686554 883212117 456726821 597819050 205414392 959809169 426808036 708539164 476922499 493052926 698748785 311884054 75905787 364938316 104383254 203573920 327771539 291630720 137113743 510221657 793858095 884553839 626966925 744413937 709768429 571305287 729957171 737906607 155057817 546979335 687432348 335912171 556460343 279440386 294695763 961542037 26435709 901033825 806484441 607104173 201876054 1152413 342064162 401759688 396717920 854144521 550945304 977058194 15822703 354163270 413425175 293224006 174242312 568658636 915136367 546318904 600641767 143747432 991556838 592359500 569971321 532775864 489477939 808189563 545400930 215697841 881626500 47754837 589720057 429342746 228797433 857656186 449508551 505931022 4787750 663738912 9338636 230467198 92879253 320234385 615148602 457864877 495704130 165508265 876005752 854026930 94236957 231438428 737839136 85031161 991589516 88629294 959967809 167725506 103081190 12599993 850257693 355637665 911565561 609001515 89033132 78952956 635939972 568878789 422680 40355728 823653054 732473693 287586623 964915949 31512781 998361564 411130676 960370421 873816144 756229057 162803135 585685345 43508182 805805213 200711128 719110460 912828261 618118805 615324975 355842406 838843124 475415779 367077543 476262162 521324272 516377685 718109399 318060616 46763707 777080781 655094920 625170532 404001576 226993855 81101114 526485653 635227393 641751990 536180638 896617055 977645953 872955599 529217053 549901337 845171418 798133308 775553360 842312560 710072497 779361474 430261381 330451938 122307229 859021371 472259137 855331140 462530219 785932821 574954169 315778621 556701661 577629650 216714327 446376648 449900198 140546438 534470715 736970422 702269296 591961180 174692023 360980522 621387542 401678609 736593362 318695451 5026154 833702519 909072326 237827797 783195056 243450356 36748675 101374072 912299297 245416448 453934890 364690296 618085738 300448427 450160274 44092699 695303978 519719956 779532742 825111038 699150967 544984307 961476484 636497041 241051994 526819600 75628480 913512342 800041038 707260873 86872607 390827174 475720389 818378384 848632957 915701420 536597411 569759083 946474343 860817511 432310209 337491315 205181602 888424685 119992427 649945941 891497378 785983011 270392290 966496724 890953747 315292485 833312731 748902981 564185684 714821988 252619263 372900113 541454839 11784163 738700393 967610422 349352515 683481338 313638443 112975303 880147634 327218227 136609737 112041064 15772531 189822704 69697468 987789266 315246057 230292707 835064560 68598101 926838570 56004755 855756614 226488913 875146880 137792478 927330323 293983932 748892652 879293553 686333087 120075679 356816030 657865298 75014823 79712665 954685310 641621591 86010588 441891162 978424231 815508652 986593122 648256041 862972134 585279313 677420626 338910815 588911679 222736538 257695288 295706090 9751656 158117805 915213973 942352587 266003021 314232583 755445854 362909592 663837066 397206776 7203451 523372539 382465780 140197410 693343305 739506480 535675665 675449854 402158617 278084747 595206810 524421975 50173358 776568816 241443072 980918476 753147075 482437209 940666597 148935506 305600387 667491924 655947423 663063217 279761167 432918658 74396344 145457154 259522556 239999002 235240560 254249015 481807570 483361635 482439225 144864403 435392142 825765437 811247674 405327150 282947872 571222169 494530766 295349106 419733998 657261308 58310402 413529249 585219152 434528513 295515930 956370508 518095890 151919572 874251532 255134941 598233077 597442743 17169667 464328718 660911149 819157888 600471005 821469552 385262308 407855385 794394542 122665702 11809974 561933311 573459515 977222439 959886643 87465156 111116160 199169087 709559137 800721038 192829995 630429198 852369463 9980309 763054110 719547591 251363107 497726888 124246256 728694643 192888453 76277417 244169837 16290924 174032946 664993037 183862034 198662114 857496050 817357405 851717778 466663513 156916737 620101047 155379795 304620841 105379218 972811341 884660210 369807101 26860359 166078949 773918651 519459413 524428731 382618455 117667633 313335812 2368504 732651795 805988236 341412274 730607617 131021208 116497462 740783706 672029514 245377022 9641293 46140621 919807802 336476781 698096165 741563438 259507120 315980963 133679043 88386165 672495483 248650867 444386658 825123052 437222113 749746752 279321330 21966516 117365785 413723014 948506516 945599809 398033361 396817234 933227039 770110682 404190632 991085253 614474143 346738458 766109365 118204820 808495056 558726514 671295486 763670155 250363303 524117924 848698114 244072453 571447754 63807049 718171184 548950646 193116435 200434509 61270893 717193442 852924176 513089646 229119123 539022691 343657094 760628672 439319532 443491238 612578794 889134635 666819771 856471918 195726310 684990443 916527027 303157520 730017754 307181328 281314174 269638646 462780505 251061244 248833335 508787485 279977384 309401576 850100464 416359830 956109378 245818206 631117869 108087048 388858710 153427648 493644391 91093548 140148551 586901696 487386507 219681104 727288875 181449958 414863992 241328853 598154829 287622670 361567621 188554673 798470828 441771239 334141176 190797294 674818937 198711925 156327823 67661609 562641053 330044559 509709563 89102100 135487536 152580193 641255009 137396212 659288835 591406828 617808599 440650531 874473240 150033793 464881645 303628687 516440612 335637066 262567969 256631865 366900244 251366081 268308841 618694840 361897348 539724855 237524910 756735411 760377929 438474318 348799307 472579947 991293929 550779263 422949266 512657966 634462238 21937558 35158855 445277413 592559959 578283057 740365091 534966663 496885559 275795780 723099218 500467619 343070996 684103575 198186741 542167259 864295033 475950918 856537761 790163811 511729572 327936065 697511135 735449222 405658121 563650250 656915370 339517729 435464397 829592057 268345844 491533350 582110027 651262011 200418337 699169051 146688915 915768783 513149577 954811545 615383270 903608648 159804923 37950669 334250556 89019918 979798069 841169401 60163774 198312668 265089645 824555764 42004043 434905667 881732555 675421606 408741879 761544998 393620460 544133518 852930184 701445948 723753313 199879228 290738424 872600466 396522542 13003734 893024502 432279814 620342347 956326807 612540260 608632013 944183334 729038412 318524122 374506733 2051359 191119061 962384930 161034436 600449547 409597098 419120826 260174719 733947826 459857491 332267861 290500772 186784081 715610607 954033242 880511113 834299161 744831918 767653987 703794906 114864814 478506071 413394624 168290071 50077608 187808195 857855474 326316307 760304661 841914208 776021040 619623286 960721141 663187119 827800549 665691196 797953213 451701701 511481392 655469877 447361493 669886926 707495266 815337603 547626778 357822342 113379204 369518366 958214237 491238334 286563534 732192083 295916257 90873821 249530417 934981441 603161569 903918684 485316558 163433307 683321608 657575241 311603581 174464233 699874039 524413125 616878919 606612102 260942274 467316614 873797100 733265571 694809971 13158230 841859422 445701635 432501894 523661713 763285828 57505853 705131115 969671595 974657400 725536830 819390984 234886568 515346570 57900740 965230644 395034786 120368186 957822179 271686717 324784455 924045313 562664580 616718947 595703385 629752713 595021025 661093978 420484396 906374449 673571595 331658700 671978027 559630986 966952036 663084757 605975379 735129820 173847845 627616901 912214197 359022498 931328729 821454690 19145977 96143625 796410592 384794595 27615702 206740086 394931438 877515510 697565851 14887165 883461001 918220411 659268778 501108202 742133390 792709574 604088311 560033084 333044140 320476705 122387853 123063333 397647591 297741127 971223049 38759819 25200407 558992875 939934237 628013194 36909670 785368623 563620622 960783088 17437398 670966829 428290359 380589504 552501945 616174194 350443652 412356528 258942263 561656446 232713464 295996842 837523659 819260741 312608551 955164495 281350598 114865585 857105596 222829935 654599883 700396829 546441461 258070162 130462033 914383835 123213090 94198642 483883557 557705648 518893353 721247103 893939173 761547347 68972037 675318618 917073797 935458801 580743746 189810010 470206670 906234284 920120451 955460106 309078746 216549911 892692477 562105512 599806618 633842107 304637177 935323048 202244432 173734806 717125974 165607728 643170069 4436887 909961988 329204121 224233812 774631715 112965770 609176052 709701965 69947283 341872512 181027459 742774931 579157684 374124822 880065851 16254350 122459461 806819980 881353289 14513658 733946236 567160248 383905418 288023399 459772802 476902787 2033169 26836919 961787378 838879340 573400229 165267874 475569758 675405571 376880192 178460981 644025802 395120239 251448721 98034254 914072879 518530793 40842363 334175522 632573433 166139455 979297428 693792440 405066378 830057042 337668519 327854444 28402869 564521880 778467378 337930093 699164739 323402138 352681449 450630462 403158897 251897719 577280561 389153336 638752624 960328800 544356005 357463815 469671140 724422170 170377109 930029097 698443878 429824895 907905154 194462323 966059778 343472893 885980324 896867723 666810554 69205781 814819172 124998766 695601921 547980509 754907362 910843884 24831808 114618495 634377328 626097447 494932820 740786104 517675284 843662360 915781646 176628825 369061898 130263562 79662002 97047754 185372480 914503197 76729976 166184578 623520729 232977860 395022607 605982864 543984811 745936199 291625749 916985877 181184704 594813506 218520992 80586952 986108889 240042020 226655160 555443568 938720998 94922417 99234010 310429294 169702031 664153217 392231799 625022512 14780334 300695935 96297842 795073471 423240659 731518314 955506342 276741426 594312127 628971607 488333150 731273272 357422057 313067821 318315739 432941715 203163388 701038119 573449682 124151959 260850263 463156566 739130091 192682415 857630859 203277085 462833987 439711961 932647905 993814707 53116139 874885925 839147218 996702372 72535398 75048505 483626637 660940112 385923631 343899344 503506804 8394091 973588273 87983414 319117215 521438844 448008525 926230478 669603671 102455134 149936344 669206925 169759644 235804353 446423578 866241148 939579552 505044905 668972496 508195385 300858442 729649646 777536426 317669494 859611828 194745019 733263054 989740921 245339822 802437904 762395731 769406619 129789496 184131136 210773447 265681609 34528523 754375795 904261034 943337734 784708369 890178853 979877872 847951591 118757097 728787877 185820291 398929685 29844580 21327767 436867007 509610959 383447307 837304691 892523253 902575973 725865622 290029828 887581928 177632446 111632758 497948137 365075538 202195923 718432076 36324375 962399328 436905010 275348847 106167381 789707570 546241403 265352555 822375102 453496412 761272294 389811069 910606659 162296680 78394556 583026456 940144167 183050834 57927386 634001250 884045953 713319434 813492529 520552375 152110269 912326902 40503112 211528741 907512603 557036397 719458744 589532143 397210671 916872765 702630063 424034315 729279839 195942693 220293230 629433764 747000680 738842460 980047819 14294168 205389018 441422857 912755376 582689786 305583255 176721096 221967514 342557329 831437912 593763883 534899994 707596120 233211688 511591991 817349208 159719932 41258471 803090659 175538571 459434849 183346120 788864668 874921858 606796317 377123539 455615684 475969822 418832124 296296548 346522158 582781909 392929146 135760810 215699876 526502961 253402700 715996713 245238370 995767887 102591959 574344248 504232600 300115041 171526327 385219972 215314411 996064044 218112058 59851147 266492404 188073099 3782371 544667682 102384319 577145322 183319271 35691504 176998222 868839627 331992243 704529648 670323732 261906757 405366116 530041587 860282747 267011712 196398413 715172892 619444318 53361466 659723893 709505890 387533967 125567045 701513494 432298257 197545810 123133702 381434911 102504265 513206752 335638008 878830515 285659262 386663398 520145703 945142696 195459574 716618243 745031862 42843145 107483726 981592141 791062873 839715221 90685430 205342925 594856155 740369981 659853744 615060478 743681690 248542122 222778645 942945106 679649798 831243188 712490256 75141549 585600293 922626284 406944352 47741416 69461266 755434771 750191130 764298063 364732026 360119713 133830694 322900516 156649501 186649663 460236221 284404762 667110227 731701069 851255281 72653018 945064068 758063709 100364837 527713921 676020143 485610678 703927953 617230880 238051556 672145874 31782591 117402683 845886154 548351456 886755345 522997579 271424282 509691970 493351480 676196412 761636129 944643088 266869182 994765039 857016386 996050580 467253886 140620985 636153970 269650892 319735334 601288930 443145403 7417068 628550332 98315560 49680825 546896601 258037526 272075833 50656800 468847790 709164384 598548540 862512436 681052219 582461850 966071113 445680463 986059905 160260632 270269420 403522142 850385463 266938880 739746726 385415268 495398984 468537295 130055532 712482294 948641875 360633813 499791398 436114110 151234858 388564148 209521969 114682873 250300755 936324581 210367198 448125688 806314890 146850355 402361073 540943779 463216957 848390205 362904866 501714673 979510030 138320632 516861855 246321009 34948949 373767211 472376712 734228932 967475356 156708594 344409458 293020448 315202081 323232316 92851173 603519439 910926423 299606349 720508894 250749358 4395877 77195837 820413262 843919535 936613797 694852214 380682648 874402647 234361894 583212345 248966167 24908608 403574571 976256026 796894358 325018520 538575018 108043136 133103062 757265313 247862990 762023206 994173963 195850543 716530294 263845021 937459551 3087149 209698740 491399112 747342446 288811032 308554318 230593886 830916297 624859778 86090816 920209259 691712883 323917712 605210167 487603151 714508647 325947773 885647384 235814589 207707663 5734933 335725943 636708158 965992398 121321786 510729248 223824812 961307256 591783779 745091730 28878903 424264149 287192088 485693567 767663459 490221090 498997879 369061198 731643016 64263823 779239346 550430361 779196497 609242049 320382863 90441391 364693309 749990482 906319079 966663443 566132770 430221644 651150887 371054331 816785573 527690418 126082002 594833362 227320258 766495736 956401916 668769718 457510986 985160325 523441104 606490618 10850144 106794040 562948620 247922598 268269820 783386080 861809536 233536498 288470120 960982979 463230099 967737551 752528069 680983576 616790718 706943838 605144455 610538381 643009806 805986934 15926005 715345345 530037926 347609890 613649578 581604299 665991995 899562273 813942807 867603633 870919062 936985445 300941054 404723186 342150166 993598100 354813944 484830205 697206571 172238730 989230321 918222520 33032668 664386005 769265575 758851066 313323074 149210168 765004334 877906960 601327115 509948712 975748462 820757564 624683768 332622162 297662883 472322865 801351007 472554515 376042205 429566873 150993577 593161726 890532734 365807247 664352725 222468954 760449726 343527461 889683955 124881570 983243050 642642399 730404523 562985731 900516641 320271159 85457588 965099745 392312662 459535383 798263388 727556178 927972177 812600161 951365127 22396321 766862318 425679723 502980264 742686156 566605276 322411643 828185161 170700039 492962846 217864016 222070409 710850359 352192142 643116441 926060313 610649720 160781397 752383611 938825278 907188632 625778293 119098639 948378962 453887641 128410175 179860705 382471491 538209075 627082717 71500402 390535955 901764431 129340105 462526903 623640662 901381517 22859860 660203161 6987703 478724543 468007968 733796211 109218163 828222828 474497702 795581847 311537628 273986638 618092978 103547337 517766615 891828948 814402785 334639298 959218527 302593697 75628074 205078446 621519360 439817995 97068626 841585327 367619932 25574813 259007350 884705624 460473770 88520341 272472965 434284338 526330418 207540582 489330372 489368122 439708114 70498616 589806664 429295969 452109692 288796003 204409471 865775883 480720565 459591672 887738792 443738001 550884376 386140728 326907990 416770495 922267089 327534362 323931121 275593558 602998307 751752649 227371316 877431179 461784034 484826660 766902960 591593350 572559098 488537405 150785352 455732452 428831974 296195547 180294835 446934070 165181753 746961143 95182334 984685440 218860569 521303106 444677639 124499130 322652351 42080926 77825027 542399059 943128568 972924065 906904568 161806249 298289319 703937813 73962820 347899281 534031425 673617787 50319124 579398870 333087567 551381635 113842414 898974898 287242735 615541909 378758952 36075350 362527828 94178891 302941038 396645992 984137538 156639476 48993088 267573632 123330706 689378579 924505201 198703274 774735796 102732511 957061545 223455975 260250152 639225537 22980324 435786411 558200324 542779864 889976305 258811488 529544817 4015736 943469813 946414818 471662126 496489126 902619877 412569090 700109324 166272158 111329807 510796035 256658799 844961614 635235474 846740768 48833748 79922904 942509793 536812548 456240709 192607508 837405252 116524112 457338854 902829067 84392278 977942040 882686572 986673277 45613192 768587110 932227489 184340060 240492701 705801910 439663330 49706319 438042412 242707321 11254177 567165232 331668770 720296082 203683299 711212686 580494653 672885467 942943426 516902188 978727569 800262561 456972012 851375744 191635719 134077220 499454754 73155637 555004377 213821209 384411834 638783145 101847064 555242791 97217054 660750704 338278694 913576301 859708235 503100879 136759612 163926267 107724883 194208577 880708581 963290196 937927643 271372278 910843009 830413810 216520093 830931279 215639747 101157058 882706664 719319652 860211508 363464356 333699355 392368254 283924398 884413164 690844205 862566813 770267105 555928292 501511976 614566642 359780817 741909576 556343465 32445798 450928214 314545608 415980386 520637970 256843674 459217801 859956889 543674053 722292639 586998692 723065510 118451330 533121207 163190950 16072569 867516926 908496906 520814607 829558033 712454182 115770899 529114835 502941190 494648471 967975715 597937116 924306432 288734245 298062301 273120901 30267965 306696533 315403704 937935648 144007695 417372898 474592641 955225970 391946076 553319483 773202902 674226994 186562844 497317891 387254699 506371213 49489887 531311248 356929225 693031077 813930053 479570030 573734986 173087757 325145475 521117401 419787039 203145039 703245796 346153542 630135434 966561638 417704774 187569882 421280932 582025284 773865881 813908721 235300056 156969805 865703780 500047769 929338470 882795994 134279232 696963860 178157281 431667640 435160410 700065114 30803121 318131622 747307509 686135444 658627474 454806490 519586790 844823458 675897107 986014845 549871638 994795670 66367768 182739498 696806660 320049975 839866969 670330483 171278145 530659199 565143265 990087772 740926961 56754206 322110607 811971806 28132176 842607348 417736600 609773926 856623915 694862234 694478083 621731411 903410531 469213658 747961132 234468731 970687598 416929843 15074881 288709798 641071062 353560662 764799688 455270930 671128759 582188971 965103127 964797165 554518597 565934541 987340507 276261342 217839172 552123146 778572178 21581693 627139470 624805092 398509840 985924311 695351953 418103954 310609150 297278443 239411150 692322688 358846550 779402287 189072987 804757450 96568809 594161419 150098530 793415365 625296089 85801564 621363616 886227319 507820319 271509747 33651687 781553434 29996550 950388500 936307100 594958749 8278702 660349176 415259193 495232034 295082634 999259467 221956300 852264833 486510050 307412398 102238327 865896644 767170130 113659190 972276462 902728105 53711177 731535595 836962556 509346596 673189003 974260810 693741310 576561114 657813168 230133700 234743654 925598886 242542499 939726141 428191545 636138263 705177379 43014797 662847122 415625200 608796997 221295618 737070365 709010344 740915440 774814428 657991324 796880616 375487583 684284368 927134054 430299919 750822307 168177030 50384099 744894641 675510047 415358747 626192401 607789076 58513418 718631584 359127554 893789105 414639344 382569881 886372956 252786361 938438193 493804414 134400983 448565646 835043969 661768765 263620291 657086021 51266406 193012406 817896831 834904363 128231870 649151294 956646147 678174525 391434294 160848413 342284119 229426350 432748499 333768208 292516378 637168485 749411949 67834055 471977212 545250684 206653231 702328680 291390019 160964034 469476121 708416778 165080906 265681978 466213758 897003323 236970750 267908762 416059014 567008891 438145119 122355917 173067693 844223167 856799493 786580337 635996226 652672494 95827865 669016154 590015977 723895911 618957911 261408013 130188058 746060154 806831507 661390662 284205984 755408362 856878128 429933938 482938650 313068658 934287402 39424822 669552509 344123964 866964750 882211302 191515536 95022955 680900733 480197902 377021806 86451603 468678829 225132269 674390280 734401595 834400999 921890549 815212705 172500322 767130634 191083085 387624784 263657975 424450823 89775695 733517185 856465504 235154787 888964362 38408052 925489908 386413496 730730945 90661309 920612993 448749107 921397097 814220226 753209543 724239128 992791343 997494336 865652474 375323962 572177648 773284295 500689476 778857603 465208256 988625209 741666880 386230898 400950372 590786639 518355840 467633304 538197975 189929492 389696009 512809754 631423945 486839656 574769618 554130738 756626715 461443966 269701449 739877294 769247844 652409950 747824077 82487151 643933807 534026596 567570485 603105772 300167355 439645119 957577543 398123949 880535034 412724979 61778498 340707024 100393106 482811223 303913301 228630406 15027999 805527704 900366373 592259735 833157359 796621876 12129355 834979802 417091204 277963776 922495444 205744830 717514774 624055971 490425279 361348805 946872334 748506648 570682498 499958787 203682188 722831920 577774214 635327907 865369315 230456078 250642086 413208674 87705624 90706345 290596020 760688914 296680806 940485197 866389492 545570585 895335356 826296602 35253151 659331823 116442941 892884612 84682082 471120035 597847999 447675857 993687516 699369047 650250573 671818142 564778275 280988864 250194085 512789594 372947264 443339687 314576827 445507786 764831406 346805354 260765236 601494660 104179423 460085883 558382060 551292531 873321655 377457632 227566449 974206297 655342863 21276082 68600965 964637768 138812211 951543966 178123423 715669800 382311269 551679335 678152043 310383925 282000216 45904737 428702022 421532542 890700981 56090360 749513155 850702695 834320281 741980711 382888488 93134120 701425941 381197058 706954225 393091659 131641261 693657132 857164620 931188786 94848474 2863457 235554716 944865422 125494920 824886766 74276343 865228265 409958808 552070964 304858536 886023710 70608479 885940521 60266669 523035867 524596262 734726870 832118329 447790630 614817960 160609498 71352115 570949845 208348310 585322981 376458934 866790676 657771030 743830846 125782671 986436323 700226368 179351870 77814210 291366038 636163744 767301587 260220166 937119059 3303351 431420670 762268484 574130071 726055802 211317589 931069468 868955570 957344465 828316289 198079583 446633030 521479961 461637057 363798166 636796108 267067043 120119910 750882682 856521742 935074611 74874453 454448250 769646254 90919041 132905608 49675832 495764382 493722299 619269517 425896716 835537062 754863873 530569733 263405951 2342114 340137960 151628070 498393297 26943297 631114744 799905082 584961397 939293959 465596462 325665822 892649360 262153291 132889723 413615044 984907645 737043066 45170754 324043953 845264971 361947858 604808414 753286784 103525949 122612968 740826650 42606685 792706377 952211235 627341495 987490698 523360666 383723838 737066217 234616285 913721359 323993802 479669978 87772224 76939961 29385641 634519846 280604464 590713185 806484117 511067998 802901823 541216767 396203927 814310533 87397267 140866884 767186576 483346838 517458532 184487697 511349683 780304380 961450881 849991422 616667657 730877464 46196428 35587796 962098156 397045694 186970809 453776147 468225420 665021624 40491219 342006125 811670893 318906690 920742968 696272201 5463783 360415884 498507800 686579777 237208741 699432252 237465145 331187364 238871334 472778729 729405302 120689141 235121471 57925537 247888443 351841642 905343639 422391907 758526219 706439789 498051114 531990438 811669755 588807455 221874887 38699217 604339252 221375184 195897234 120167360 593132660 157695624 145104514 783406406 909119886 184996738 121247972 679354277 416891365 788812715 116335062 648026903 763584757 892851751 502636749 948524617 79475147 778192333 321427984 303381211 257790855 600277414 750417210 860864993 94284257 577550194 24584124 687991909 423165346 378261538 760757080 154634722 396121894 154036319 933381287 84974282 323922657 267114242 59731860 10668802 551035862 395262874 965787615 794262113 626828833 198846185 447664028 419189556 369678703 590445927 439168945 504263869 961621377 566470078 801996379 473897903 561185453 311341388 315075497 762981556 254933085 90371236 19419648 766595303 175766413 855480845 650255509 343544410 694703441 69071873 386498550 540431506 792350541 410581423 538486914 540819718 601316923 284595578 746017516 434522019 239878761 424716153 944071868 150989131 844107832 572935157 291261134 867626577 584411806 539682797 660020177 563010814 431946149 29725077 57470664 129853968 829876458 62057170 175069069 719612726 466427422 667308480 70727497 194820501 231546249 725258541 204365565 662935110 180391042 297129755 403993085 144370901 673980408 610784577 396205168 305594820 974285548 723621771 953206737 715719942 656410356 28019862 295365489 587887236 493411514 565251637 472731890 738719387 643696251 55969263 835575501 935777436 704018057 562597758 383566029 853140811 53470154 915715409 716157074 111106401 847096374 455644939 941187600 380089866 102499676 76402689 66427917 587697000 439079646 731249088 760061094 722647822 979327216 114422918 130448330 139858053 609513693 506459076 249422269 632641994 579775362 874541218 600140183 646191054 850629585 268637819 931138499 497214197 97023312 234398556 529430657 191706520 600550039 106578057 753806436 557847683 851081686 335059705 949474004 309980023 645569868 675974101 908351628 970262441 3083729 951719165 584908829 769816641 524008269 493393795 387947114 842010332 278010686 776587309 607703338 581841419 931248951 97079287 822235498 587952594 431647579 316070031 564323848 281796650 489222374 902197976 76943417 882931071 388948644 661151079 504663555 563978546 959511928 83127561 324491460 140863000 297583831 659246395 211358121 308924665 928588106 772563632 688062008 900224786 860137200 67633103 384081095 909459603 812030969 906402099 999302914 801669922 337852716 319151145 652106857 720796247 306630754 981322037 594034895 994239038 668345096 763197069 264946908 861149144 72992417 179931804 150783628 18658201 384251202 135337601 273476014 444979691 185824789 828524173 29467751 626637738 846304214 129106633 267374508 711551143 285789529 265376622 382917579 7134246 31940098 699796330 136627939 263467871 545230411 4189410 508212582 409326080 152446530 842406826 921404062 144224425 471499784 290798543 786714918 609164142 72528979 913488398 998396269 324389977 803569900 559323226 89584183 20072934 107802930 549070938 249469211 301002118 373509270 378797032 221470981 675279900 823386397 704556435 835497142 272579715 192143329 511540510 551278911 527128581 255726992 822692863 857860746 656974565 178505963 677956065 175508945 719613655 262797129 855843618 269283365 28507011 301614353 268444501 279469800 176445701 314831427 888080322 186311251 100631664 500834032 539884513 356768241 721579590 619027902 894674403 7295266 237280513 847855205 55006505 351533465 454453646 895524916 437854922 391156191 846488525 156259980 635754514 259385294 597492498 947234660 7858429 229037334 694738599 427273668 540146880 36467131 526957640 348995658 197383745 893703828 938216101 775477672 36438682 568573902 661459427 989446947 517625242 541447528 314956316 716876566 6924355 612073397 232876506 318375277 292269389 504323037 213353632 745745451 508149666 916918363 277739873 207669220 947996896 236205440 703939335 972339267 690294234 365119983 137162477 330464901 200871703 513351455 680782182 838000125 327855442 858905564 847673396 709307534 87763960 72163015 419958033 56671028 5275565 318332625 655572521 761535611 928491207 892810180 507397790 987640070 272020433 462598330 240866563 376726538 2750474 714833572 740652514 637344208 258742755 259979972 503462966 390830134 994655109 619200819 48769521 768935727 376406857 828212060 914660472 598683454 436672061 312026239 750395170 543117823 107289254 491253807 409861564 298012831 801464952 387632340 733637383 56247903 79197152 44850730 279293753 905518868 154638779 4936640 451437176 199834026 608407580 210372474 42590050 805700764 496865994 371983376 162339208 770244222 279513535 13894029 197294574 972396660 239578538 65901520 327598989 109923512 911681134 230021390 747309522 295006488 462731169 370988110 614367004 787441525 755426062 480347628 285632321 299736133 208407347 702249494 264369674 842924817 128708036 830185810 988134834 687728888 192425510 876221686 144034667 746726698 260868085 486134191 104445401 337627503 20517246 945970171 461157780 603026590 240432709 61193390 367456683 103167270 49256833 860140401 487540764 901092744 417712795 641483070 224462941 707430106 29259699 369498342 797592534 458254150 409505819 471710091 770954852 267442825 779902170 575512358 565055192 937768564 467513642 897475842 591955318 97550190 532904698 653488703 649624695 446165233 326420332 860311120 833622151 59785737 296191320 442172797 230760775 988788184 962742728 771545954 101103564 995191828 848254074 219939694 598981918 155914631 233048673 819275109 170003130 88221326 539353124 983446495 413680401 4337051 741315230 137398982 823635975 708716468 636661596 785710556 696358772 644476145 771467042 155841843 655196070 47889665 517721702 329250227 889679326 37252518 463685075 497394071 812266190 315466548 755719880 229040368 604404513 240805142 305591767 120137249 571611123 181685834 289212742 559754337 80883029 779722208 306078097 387924028 31716043 100267902 91868646 166465042 968464845 580223455 826475175 616622231 744114249 69785423 609284588 562116433 390485791 960809521 720371710 973176606 710784164 813335929 887656413 614046379 272387360 377889075 12232636 216802557 267048272 316901626 400420735 905518060 139227364 7340161 298278724 78293155 803923714 935873550 686553559 403300898 872991937 487334138 691759932 815574460 136793007 406634034 527358761 485076889 374404172 964518073 689239945 543813941 40178317 533989412 687446778 644670431 852848730 840299292 569142096 498009403 546998799 925991904 987406864 119290817 258573055 345771200 379755253 478675259 43969516 73612451 10764911 779380043 707314065 700256130 646819871 181442019 776316184 125715178 497772381 276095947 750780068 301691518 274251698 424427806 4965833 443168371 93762910 176887757 416326671 621875731 29064659 111539738 741811570 294593082 582062648 208330015 558957797 587424732 8735207 592469829 273691850 407301757 68852463 408087245 868981115 555747511 993944722 113825354 429302213 896215224 840170952 655875877 764787048 381849281 412160955 478300184 271503768 20975528 646511177 435003828 697581439 916972887 161795717 320129243 842646712 780929867 685083447 438691142 887545814 507809045 687649623 673809408 288028379 990741724 654019733 681719784 955877825 4485594 445295572 664051252 436458741 861367515 870813099 757223145 226926550 893999809 682944739 55703396 865960251 232611074 514450172 380644052 755428842 163088424 632019623 293669053 723100962 166557776 695124557 401785718 306190610 394226604 412523655 568473772 912416095 765452033 494186659 111547869 337319330 659586602 454870822 994883806 981656552 478341267 848161861 250218070 476180272 199015358 110647402 257239616 976150513 90549697 637287605 813889645 480705169 44327878 238018936 500379903 71890926 736239243 189276858 559407344 362358233 396106464 532432565 924374665 813531031 229662251 348763225 694544875 862839391 192194279 491107271 712199561 476720606 370799904 190229718 291415212 91878069 382118648 382440849 223406574 265598714 956395302 486950582 992045503 626383027 561146738 39804473 10001636 661792862 767885114 433738687 470576882 168130924 672253937 423950628 475230423 665247425 400144282 918290677 280117586 644787510 600538961 409516278 49313142 589763608 884366786 999560350 873184043 305192358 27590576 591610262 361785773 788965782 673410672 825843262 361380875 765384592 896122475 159139368 113657257 238024113 738072992 488322203 996412095 215875850 901470239 344581905 296239831 640309279 101882511 995442105 331838803 171157353 440720041 634287606 393584612 640521172 724050362 970543326 479448340 364205378 183891237 14916539 382311101 941234949 272412383 262021774 271413392 656334953 591263217 760938631 702357648 170134824 805963514 416132750 546554772 11032052 550925482 232851390 944038856 36062960 769619016 836562404 802152748 992667703 944515629 626441732 980845588 869425748 408787527 480229588 348548518 259952840 358907031 660649792 329524831 203814536 264587699 43603172 850367630 400826492 882591045 603515029 867283672 320807425 644904586 470034649 179486386 804313448 81266899 106481257 710868202 956542069 847483911 965868214 621734943 191429344 366769440 580053090 437069636 451496152 539473577 360966082 814431777 117717371 836391239 732329827 377105874 788212062 477550637 773340290 20451654 443408651 691556262 286326162 57751489 648927614 881158543 506300602 64088410 333568680 243611609 907671125 300237694 12627949 916252940 403270000 2957675 788121765 161946303 735521359 487861430 976025758 674115105 19831016 814773702 332518552 294284403 490421606 866150998 247456968 213478796 877318311 653219831 760484694 281701460 764069055 607066763 793073374 504896841 741430131 219600587 245953779 991193853 446019775 271507139 548880024 557270165 722869073 633663569 170877125 417997388 696474379 339839913 441777384 264741358 896719236 986909139 205665633 417628509 21547144 354000171 579548164 514816784 616003220 168758753 914528411 543536783 669742427 760328823 58425186 144121080 715063363 367664710 910588297 496453501 959382249 529656313 739585974 499287524 120492441 687170063 80960128 950956293 617397206 140349277 504081653 43544912 559676632 101525898 599385877 26987844 180035081 82165138 643944532 47027705 452016007 247845956 816965148 41687447 518710950 894773444 856537161 926393309 467409003 811481865 624707499 906914971 405985809 960279136 35244167 893959224 538467208 654798311 548120854 534834220 390373873 18685715 26827781 34220935 516698659 437612587 314561268 904371049 832588074 616595658 130332407 194971528 991272130 130143329 904399128 24383661 516260832 792836274 651577042 661759799 247861034 888334934 987633304 937147286 171130233 339963192 213424716 461174993 547261022 550809880 455665096 741918977 667910299 590997514 404877145 842591700 547286182 436691700 979452990 443802891 264124713 754293267 769020717 965238523 806010244 350456694 45212367 66567952 742969418 193614210 560384576 620128326 220602816 388972396 935476112 895509422 68236385 494941122 789987908 894715631 19520860 896185059 981388757 461612226 535056660 281416066 169393711 344358773 213251487 827989287 17991732 56636777 317892936 558579885 356060727 212688789 155392270 918818501 935444097 333682176 631142178 68941426 433391568 289063498 209375085 324680076 710178259 770528804 576735239 362719549 276040623 868387283 898121665 477342854 216875133 131211953 311690908 191832251 256917961 674735020 975140944 532446211 698789397 871834566 161669318 566704089 543031636 557848723 439136926 135694222 331989359 248875710 245698474 180875972 55158980 790806660 148782961 886891508 776105121 477298743 622577069 675274985 322807245 641128124 184754381 870145859 478268160 44135437 679895668 233501430 138354535 436222393 195065848 772824776 901852961 621253471 46426852 259275990 172190660 598387510 903056758 966997263 681687256 48747144 404770082 863357367 624818266 175778867 27627789 109705702 442287931 329821479 785375378 34858503 813779935 128532714 957752769 978968153 717080735 351124503 121365467 251116913 504136775 313442522 440525783 847558838 219429528 270016886 624811233 957843172 51195591 136543935 312343765 399521930 164993532 969690784 51584200 783663244 971671509 798930583 495982464 938570401 638928608 581753908 455842807 218758614 921604900 87349150 345618396 810478345 39456921 144297485 84566545 985089902 297698219 146234449 53073198 960956174 71914427 736995146 712821245 625444163 42995614 495156845 942416892 835540286 261804060 298056774 240381918 879835265 866307698 988046064 333067786 727993701 670691025 313953951 50466586 14365590 327381212 967351318 410167390 548415122 802431022 717170481 766819415 304695853 620289234 859034461 278292796 417658127 618282953 805080603 503731064 467710772 76775304 50603393 441733673 864325739 332341367 241948344 276598691 821143256 700495219 331221119 854876652 560892787 657568332 55060390 840838461 743586439 928352840 755679636 729571975 125793843 562837150 663772354 287483883 416500972 945823996 403812670 778113857 177456633 348341250 296922921 91155602 798811638 681049541 299051321 503569566 975818066 279381581 526127416 904359255 1863377 78202390 104427139 156992100 50929674 793755795 274036875 102940063 143098345 559157414 399065943 261925272 535903535 589658922 704499713 579114511 757352173 503546218 79936309 796053629 898504461 781656486 654085557 930625676 747995849 850889621 609049303 817701531 697023282 630203614 330089221 500885051 975516074 885973406 988636220 226625204 2016362 197964517 40534670 495737217 574214397 117115192 663237280 318766287 94483139 422455569 599337516 610353666 316395375 694452570 641912448 120265265 369502602 805510646 849446142 299388581 370795757 865441337 602328474 987446622 51381579 611894122 231274847 539374478 309445285 493465416 887868650 571397659 349849555 806530690 403844845 566303777 37817090 114152766 134531246 782357870 770300465 202336147 929412229 64079109 444599731 194054158 309220961 72811932 81086639 188823601 550262340 482597917 50059171 900853999 767193794 8015401 159459549 748803378 923493767 208538768 468904705 274560086 456792014 675167706 682216838 220716715 296394986 357993153 698773304 103084534 474302145 699891381 642260664 372597232 494705739 602473559 691395319 602896070 479054872 63268350 963525567 895118743 750667975 987854901 75963434 661904121 743809424 140755002 969184552 263562613 136035515 869457025 230826494 27552774 787720231 172445488 486042818 513342110 978091460 460307616 206379232 492871330 196365337 341364706 440599448 773475689 255895743 162220344 189068925 844905152 896440547 152866455 703811063 526537065 444839368 942012460 414936514 274828695 118078275 328237780 490773357 604630899 46580797 826361506 64451292 110299547 573336373 985150813 456193735 291217822 701201083 33160447 19324217 446725761 995831286 987831863 878349329 152373053 747132703 114131688 714460036 787164478 971088388 97996456 186882713 545805541 189582470 249364290 357454763 980707335 761154331 869053236 901767915 696063085 955053900 67915825 688814812 417202258 154936376 315653025 663576789 687671528 902789904 295430428 899979651 665738451 251164569 234540275 827656548 559600812 37462189 612571303 707593036 464417151 813720250 185218928 164036836 917308749 198108737 44801207 946807590 266023307 813735512 845834396 523148003 410829729 796568873 22937201 203599677 662592365 673720433 362919228 848881709 893793213 105826306 564287033 369523966 28167384 9229889 504682326 271926992 253607158 944150696 676135862 449977622 363203267 302254661 132554287 923728920 952130528 721246778 77058507 543429490 121879394 381414459 531308619 383253139 156222545 415760659 492087967 97357631 539091498 335057183 77826415 875103246 741514078 296626897 415638933 643929322 742459345 536171822 366708385 950954389 181075292 488526417 846220628 202239009 986520139 137716198 32061477 124788598 519478239 557308847 950370751 182868431 180584141 547591171 87190401 974243133 490892221 218930250 213184508 717630499 190521292 498903938 988382585 27307960 49845002 645471421 171182193 656426632 185990397 842687393 203846674 58769139 71676188 59597030 338497217 836785581 127415125 681730779 980261011 387387964 598263432 77464034 539351506 189825917 298454794 493952240 503814526 536115744 425830691 304657934 222536137 328880423 159649680 979334874 773663386 134038123 368242689 574018311 954294795 994998551 645009308 370473176 21315819 14408747 689476985 290500009 575836989 861847290 854255395 356223078 639268023 145838508 55866141 386410514 404492100 110996925 787919707 104824386 659386243 537781884 692214725 669731743 131311941 328313741 602284728 260603496 890469395 502202216 952565636 870921965 413306277 785645527 61493487 151734293 79693420 93489276 947275696 310992345 819763209 963146057 769257717 411002823 803950547 685776133 602249437 97970560 118169430 680429518 865641215 496212794 979710159 902337426 840811746 500047934 981298097 254103188 724033154 620701547 97554722 155083246 968213714 799918513 801493118 192699913 468468276 881596055 83574227 864225574 637984002 629038774 99264100 973707224 483657737 564202556 568060199 580867464 67661065 609354602 354432327 25624816 494134582 160381206 957213858 846370464 485722554 946892074 591173707 320279933 894359089 703259939 486324489 35083069 921338667 909931667 125476823 858887916 652509869 161965983 450062434 909999977 78025392 214863745 96542094 469756905 651181473 609576711 440654833 424483444 875886304 617940242 439180375 394281571 630439745 570205465 161996348 20880104 644527501 142454179 427331157 110406534 354209026 626044624 909547271 842209429 731822543 427581649 329773294 10641344 843361689 652892268 115984216 879417990 634747897 320781177 974904520 925540540 48212220 141292391 386586995 823201545 733521313 825183671 287194566 204627816 681775711 569012864 418569950 6795690 195037084 511817450 824509710 832564721 494876727 21668787 273881181 238326583 409747455 103442349 665730309 311237573 67294265 813856829 97447413 573753276 530109470 170244062 716135760 674983823 912773466 401968796 414750444 892257927 717261455 813756058 579908308 882125630 25078736 639298188 228480455 723749412 2430246 112060478 558635958 917512190 739472142 442562315 812817994 654009953 933441785 529235046 826368859 522907195 325733835 398921813 86439802 738187339 687158877 633956336 688684648 821252004 23189500 932152807 522165149 58636334 678751463 720709882 788916418 200870181 592817876 957812862 42565175 717106584 285007723 505560799 220213134 629508843 993236682 66046488 993244686 208373589 920812031 38312508 894711089 105676899 369231761 111544305 901315878 208000371 599111160 143093488 22694223 798002234 298896928 818766983 177669828 267578175 735913963 620196886 988869839 68461149 6568620 905021333 16197998 642053445 316201900 494099469 468093397 568957434 904332456 559076890 63772905 856081235 141625425 33396848 459039685 266947964 40899275 92191315 162341945 880299125 810952238 538141 619886918 623618194 723336968 564237244 751387555 835379449 944147162 181571377 669483067 428716583 373442710 388044050 243889837 518995051 736103208 341358856 328439243 118423658 34253290 494376018 603068443 381601689 720030509 982579777 585326681 626616518 360407223 7320762 518011891 80747152 773451328 14196407 739208587 58422250 844731892 799233222 932140921 755935900 431814900 366657416 400192071 851612098 349752788 372708403 273793331 373411403 572538143 312094993 87251120 674410363 663359439 218188799 725898981 736633193 21641173 241478895 378709548 882812802 587516567 500845158 100052884 93594884 194604396 58011646 429716832 989071236 423591970 123176165 188550022 432416617 648057 538587741 30519857 75637358 212827558 905499194 622207552 172187172 413396689 200146791 369676741 684818541 796482455 113659489 496783494 305225218 80228232 538250170 615763583 715636463 315734954 874553495 684351069 785719570 143424756 425376563 992708101 959682719 404428500 986304346 553227 510479006 548670378 528466159 521665851 672163179 743300938 259645030 212767508 632792886 37226878 997769546 268760136 365214849 679517826 317337784 333097534 654280869 80763270 293175267 659691152 412225613 731666736 3867278 112818573 579859448 262187543 550434197 19603640 336578683 122450249 775440228 960147783 839519613 152967878 79843966 500584613 543496186 747662850 753098743 116007152 328939713 505728103 742712315 828791163 265356022 22556625 446848069 196057934 244895376 220276496 926817448 294170529 292643036 612266089 83652490 982495333 234422008 364638742 466044004 498238139 379638361 490409665 15124035 829066618 384835910 53929485 469165642 970451885 617991002 61671693 939812910 434765587 185211398 664184523 13707448 588019870 251803916 743661763 719929415 850110196 43659525 726608229 459513163 872641265 163494876 965632662 773552843 737184803 92103505 123695151 190332640 851364685 862296440 890750077 904116536 893816036 429617463 688308415 361816980 317604245 120921291 140688812 682017354 511674045 827978307 749465066 331331267 639002863 303139843 31712408 249444862 479041650 356627779 738848709 586319116 247669184 933342862 552809206 338804114 853099529 712966724 313814948 924956746 302646702 102225688 592029115 282436482 192677574 472931986 257372189 46606235 297884 561546637 555115805 796749195 906446638 565409978 639791365 429322588 199937456 554338076 413767312 318189739 340371207 472254091 516502896 223783209 24785743 538146865 752748233 331275037 629504342 295398159 38924212 470273505 190548254 151687801 151166397 441123425 462186591 630280342 945858406 101398943 545104130 368859873 45021346 403515697 862183335 612746923 507926874 900702657 335738912 30221718 814896620 384958860 140722164 736100379 394358183 987425508 721430237 230077445 530326352 459415214 39611722 687618804 950686623 510969061 143912670 48755420 699705795 560211733 63141615 396902531 475061722 219039968 146796296 6689798 894455162 859766397 113335655 1516884 406582315 727909684 684255615 615408305 888880107 908619235 965597304 77167925 711744936 117829500 397715882 133563211 440509897 604933509 996680486 378993970 265815718 54442646 410915885 791642495 176738059 653173470 617052598 49839001 426343609 751864991 629481196 62309436 332875493 520127662 251974574 276630519 820682424 405261556 526540558 58632110 823741901 408404207 335683539 273019160 103041717 601397297 527936246 488914242 311946102 652075744 533017128 437116170 793931272 535946805 720095819 305503140 994483415 960590589 673334261 418768153 253992772 667783707 381236208 99710147 468652580 815592708 239282620 544796627 887895103 907775553 874311180 585963979 357899474 378983409 314989893 656597252 830976014 943685188 342389250 518399786 715421078 484721153 938925970 167996346 495098117 599253249 168495224 551442059 985903718 268511921 199023851 729765442 794629306 750115988 360429908 207983324 700152950 502655679 434677970 191199784 106666498 459917916 114205113 586952778 729416251 775885351 722920462 610925114 18383601 79544564 735034893 825640003 302775658 151297575 879952036 59171972 248866525 85188666 348151285 859076978 906366200 98155322 811808216 625919060 434946139 373186891 674520662 975717830 720039195 208919328 470057519 882726455 370855744 998841987 871069013 421890155 578558791 835051219 773601135 226216953 250250400 370628481 578205783 20056013 396486705 530759314 175473820 544452263 889660113 716784416 864843265 259720091 340585422 843776473 280285692 475381392 765718376 212263294 723182648 794122433 540389715 771101029 114114835 435892031 978762553 782850552 266249761 422501228 856379190 842680628 970390695 814159233 105577050 931623211 751388192 127693065 315913514 662308482 742102204 731893092 62294560 24547572 933393372 773751365 308840998 596607437 11290264 398009908 123458847 990529135 130817593 871206157 232776287 910801617 647645887 19518080 661736749 249636346 281945947 620262543 627237192 746296459 162185462 755435538 265889631 801598771 941313193 695644982 424258968 297781048 686822467 264058362 387526666 209973493 137154759 840203440 385421122 604806230 894828778 88038018 321867970 816614237 84613017 243833323 33217918 612294305 111706225 251349306 48460381 665414602 69207109 901973779 522128062 93915670 327970205 489463021 195341040 601359063 189876017 320988052 734720184 861085683 875591793 330418088 931608527 341683299 923277312 127792157 93338722 425501364 172850740 309527226 317006224 523010441 67602841 839218330 802354160 228828182 513591659 247975085 554358280 968100519 720844319 857073720 107038423 439018775 191424986 275438929 429709900 189285721 149481720 838052196 755873228 799013363 850512007 12990385 501997744 379223678 991913161 949438411 952865988 834589736 842487734 746151450 128270026 483574833 481148791 635217498 974630645 110195313 610703084 49552410 79089006 145575377 836739111 323695422 650823379 156203725 101879535 602686590 127228083 748335609 201317182 635853285 893853715 657280633 224583108 338522450 122936812 333053063 306989153 959706874 232089002 250534896 420269230 580114916 539715502 702167703 973960821 502171755 703923149 483975921 409988149 820976832 183391184 324123272 90658719 737044838 157924850 336054905 829408283 983334324 547105637 247839733 105699140 724240982 427902669 271051971 668785000 439125453 145268931 469716924 334162953 422597354 895407187 278401358 51901022 237382487 890873214 13995003 768104915 278845454 434290105 863453399 116612228 201290207 730222189 332591628 280058310 388907503 57301877 655023961 389432479 10454580 290327970 199382159 619283529 633734138 701932858 865083923 130861747 849714785 626501237 325103456 843106559 735139548 83221503 312015746 168914437 686693299 592177529 879898011 664436431 378047618 847651832 807736161 510770459 888690872 585261701 75251102 228533725 806772249 634670235 574922927 232817594 456254269 717309611 764885766 936924557 775129614 310688923 625693096 323465957 63647310 292383811 431769776 780586117 855471631 711239663 510661066 910600420 434569272 956451552 98683577 743409323 868595975 611399627 416150993 129567545 627190410 181228888 320127101 965784866 28400932 116435108 304689594 451921068 136168975 715361215 605882010 63624784 144405460 571217967 34996419 522333503 764771540 919985516 421069550 895888859 599251395 854648162 189736296 14754873 275064359 254563058 599907476 39390886 916132061 636105328 667755366 368444447 534314133 761006118 163744233 354683095 180403281 296862928 408439739 914337461 286070250 105799199 817752716 784570323 312934539 502934326 927372451 249360128 893165364 685237552 979169112 470185023 115049272 657447832 907410843 408937798 433009855 160944878 132103788 7374848 859060037 897558313 115181920 844433675 824422937 46510128 762218275 405914683 958901983 17016416 196879856 119751957 941866511 435513609 614193691 914451285 976619379 821241073 679983752 686936936 7347373 436936399 761774385 312237299 225948590 512655825 510608803 478145354 161007936 220822551 519860609 72541177 104616318 474822965 285021952 461434687 800776279 734606517 502539626 701078158 121629198 542148243 161515419 503010573 186549180 390102975 140333191 176499734 37103053 330672798 943525810 864483256 690171007 77426058 998827446 206971190 497885798 855036749 56857281 39020933 471105259 823910826 7374100 26172882 766123208 626572756 601247109 634270202 483337869 763447029 483887102 711227665 414808351 435638441 565514747 716102108 480085556 399547776 17996560 521719126 530224343 78804351 312723809 378293551 190940138 602504863 283591208 836756552 937089183 236750669 25076787 148641080 677559551 147984105 996385892 80797386 382201955 360336455 726063 108702333 12410365 818928177 387918879 660780803 989935440 776100834 682985041 56870594 225533108 532206988 143761655 317952598 482170323 870516947 302340822 58044685 935857199 442324817 233698248 984718697 304565658 31212304 851465019 443602850 507833531 382351123 533455025 525806625 889663888 68021709 290812478 964949510 244808679 871894951 534957837 10868132 89920483 666444159 114450907 655481088 220055677 905559332 544253818 949016661 297704961 215811547 132153680 202149522 740491405 15917789 308855253 935994330 302551701 302643670 367470873 233232899 855975778 465330024 143411515 553021208 758814094 365140390 416554739 63788503 647394185 973541529 584957449 967402548 57309719 670630591 771833307 413232596 830554320 194235271 834044891 899215507 767571103 319530454 388411919 49331967 365416004 612321413 93458832 611133658 353292498 785318624 744237323 254765467 878551601 504780584 361817411 77116654 379420573 656423186 687235469 223915312 864628261 508191815 784100434 430846451 693827373 799079650 743192464 58862720 989428972 346269685 710590810 12318288 420567791 44233732 583755348 187824530 858837652 170163591 783181367 397003689 641774992 857669485 14928467 935876523 272568426 518591892 852843528 29998819 347267325 755392850 12836172 583694159 712141562 118861295 774837544 738377250 894683748 358504744 253605947 17451587 875790866 981173678 682997045 740879565 610786352 834530725 39212381 738001293 76082366 818631973 752009996 490804615 289509391 681818813 845328432 314667890 137310540 520464363 477438154 703381047 710924527 750084005 392405360 704090486 102519624 424329939 977166284 418722304 783058684 498631890 729362714 651733598 350796672 831689202 201192622 719765833 631072674 159930873 28026988 161096752 323217409 236448927 770978638 101255605 161040784 628421648 6460386 257012272 580370455 127842669 986075337 627068970 85963954 676843339 349087034 308852963 10252368 745252914 575526268 244354766 808702005 77099295 572946799 731480080 383676536 305779714 785104132 251697412 688177798 69780033 282855616 307158713 212174749 489314611 873186878 611235698 304078162 414690982 908964010 237338405 567433228 318972762 731085126 50736637 668520326 286014340 998766568 983406297 647297873 451838284 18188666 817003466 393404751 319767887 78994553 468715673 168000057 674087709 958897527 50100030 223202842 441179068 945549210 683540586 802422994 942665251 78113562 494546430 749980821 730816448 171230663 571039122 800680553 888079091 975562624 853843695 894252203 982085009 75652797 810479253 772707211 957811553 869471494 908790838 458359691 452412066 263505273 718359865 961669636 822338692 669094216 158812984 226018720 147955626 183423033 77725826 752564449 704113838 62590756 924769434 643857049 381889693 109479033 364581558 169053808 267811703 505663159 726419008 1167714 523095216 170248950 438392665 258671678 290758066 310635358 682866513 166036008 880168537 259772846 952572208 978128151 227297141 330898358 991414321 165227608 28678475 269199836 481144897 127256841 772429845 413293467 630270596 696743583 954105981 354711040 262534609 328678240 787365926 827425836 473980209 319190250 890875427 680506836 736269412 979538090 324702590 704662980 240640603 296290406 838809011 381692503 446330815 227858612 70415154 134227457 615805289 163383680 877266400 237949894 757188840 717248138 363375510 89224640 454236926 338917862 778326689 913140124 583573539 15433338 632622144 736892189 478221569 308439683 966353194 944356504 278413046 678848528 609267717 389109623 571550869 523949445 584733168 640815799 372900901 672926746 279178490 980966761 266865696 920929370 854206632 15854900 849449397 847804581 654645363 669066961 169010503 577004974 459475528 144391822 603215085 891724541 871675654 656128716 102855920 967796077 983701251 971208321 758777423 822204335 555558024 490660791 970134846 925081798 616594000 900654603 607967650 729211529 224664589 176964399 252605335 192408613 342483683 327813480 554286570 368514200 651929067 452423184 546225824 238287159 165813426 319982101 167671149 874116649 776221111 86741112 348347454 498379497 181543152 303616208 989964720 509494984 162270790 481761221 176210326 633900904 705003540 140945301 330686327 905441090 282914220 906499729 391504141 695340065 339215826 802104225 525985991 15498149 932344639 353454780 421809223 337911233 958883615 787412337 772613861 674594110 887752595 652435810 242690603 572914742 841010736 540290755 58879064 303661209 767413886 561006303 271921885 674749611 403100283 229000851 868485346 196350340 268267285 857382097 343792066 840727439 651740339 406167327 542857610 427440395 242647469 552273942 840544126 882387597 347008719 209579491 243306645 23640444 657128923 977662664 152354808 793115796 648007684 106765212 790016903 277603940 635217523 10319943 21372500 233038288 812920005 663949384 882025765 596074639 489152907 809010991 838174966 272537517 209415880 2003234 801335157 318273035 236638327 647398236 700460933 126837466 450429699 351944362 636512699 786370084 568013261 309566956 111304932 579730243 891554218 58312858 821286525 576599912 962149218 369250620 478727993 83189269 645227570 146509809 335646591 1407907 866875979 926356201 628313066 292699069 848136017 493012203 380019655 231377379 597029596 782598096 933553562 9096681 889553146 673261318 901044121 960549493 74418347 351442958 248550447 380145540 974287460 685806845 416492667 577296101 248692365 887665407 877113038 929483964 270310915 435315920 632616241 510063105 451180694 725832001 495375837 86031615 863759244 672853945 476539328 918364629 595377692 344984241 775367935 511516920 200755700 188061751 785695598 167530415 439722932 285094508 351261978 167949974 107349873 773892102 662279360 949062684 221008179 415622863 696489043 208808708 78805367 880540708 414127482 868675816 998810541 726622070 53271055 40690353 66601659 528055500 211749537 723881760 557737336 786343744 73754355 550324041 829185330 170975613 528413307 75399443 350629929 729043528 247131363 870191033 45947921 747071732 150453388 712065099 252422292 294752236 943033606 805415982 667167694 889737005 865999258 887669144 203761359 832644296 581874624 86686741 193542685 806966629 397781417 73465093 418568751 651458747 610289334 502225435 640081907 995114009 800379902 660334047 58681672 716588769 458485452 52830765 338023813 806755591 839289631 945791156 864477169 518992790 997366313 110979961 628147784 612711211 592986833 367106385 402370876 764223608 432738353 612293226 164094194 806860994 455833624 23152322 838084993 813407844 393964936 13934254 850707319 436869450 849550649 859329365 461523027 708241271 228807701 747525427 920615180 83371903 806650810 995359895 389159048 525937933 793005819 127715876 306615334 546562911 483785823 602553172 97032757 959195077 826168481 372916464 486481018 903108645 545465646 872978329 650717870 853204346 366449834 728227907 201509630 363049040 84381035 961715381 468587657 169374538 571854332 447111178 763529190 203063197 545459100 360536882 929723803 457609618 299719356 717961586 429744295 910528264 86404997 651086560 201512697 45246959 7155280 926640360 298576886 316695246 181397035 22098633 626626807 750352189 51617115 984399385 64909768 631634540 103771092 661404989 670789419 469068187 603687363 242414066 185797971 390089888 721953797 187353543 738500714 381449828 592906925 443962016 202995979 667110246 433387394 941711157 920500936 990801974 454023294 768157584 685112997 598205435 458316880 435554707 336255387 260977902 390966491 204159344 559226134 588502237 249160629 458955311 904153464 37148585 721951913 332355115 399317652 822911944 222272053 521998741 176212019 711382211 411378701 311869168 35819666 374771129 491611030 372043155 493865698 857264603 67499628 855309866 542644679 564667118 537521884 620520758 315880410 734028748 857444458 996127624 868962855 158596323 495274573 284168394 562781871 761969844 901757934 581369846 524311271 686884437 254494573 906992092 386250296 558964720 396064284 480478113 776834685 800503618 28180226 593014075 587193480 435282972 739721561 326928886 786799773 89046246 767171855 953870065 417549044 530074903 6443337 912017826 53222971 7011262 807285980 631805006 741875219 613872124 800529619 955085458 364670350 510757256 935452908 820969949 618874296 178552106 209104922 691565043 714916363 503782208 169299204 550884203 135190264 626713660 289007749 304761906 813205093 312476451 423224874 982008839 740531754 176776719 574558391 342639868 145457299 495485103 406362786 155565563 907423969 942927554 619720854 785785663 182677449 34363551 173123058 123609303 849134067 734539185 236855112 527887654 898731132 996273395 576193758 706556262 572821876 314979704 228316976 476632608 357934177 948373221 254821228 848477621 745038011 487581685 460234228 422321369 418019438 914278132 107248864 118353170 797602395 690826821 108742265 264440125 92902102 563814109 772571071 241116682 632255529 996301509 523080421 943558267 489142032 177550235 710523855 883100265 283712828 534027537 325217947 362659071 424851408 314175341 120664597 454586173 673568743 367997448 277776449 410290806 615707404 381426639 807981781 531000018 8994240 510262213 417019836 486517197 469653495 495397759 380105108 142340790 407016347 304889766 763913777 562714417 777751304 414968441 564088600 550457269 110303630 222080584 270312964 224126991 926407667 396844026 903801189 227171294 135568622 8716680 407907036 805713172 341441965 327412352 317373377 177401979 486414928 581811843 317574045 267600430 489113195 356226502 227976368 206699547 585226632 808197013 299799148 878773384 174429603 923028684 243307000 551840907 638330796 401140316 252270766 739154065 869800457 357934540 333895325 473276632 843327761 361658805 627091207 603430900 759506833 307937861 371397348 793915214 315232587 137362877 44015454 386258848 881463155 437208819 692566611 587144570 869280560 848262609 30613718 64090561 471117857 929731028 811008430 873821738 277336789 911157901 876028374 152303555 12832593 609639460 336174843 368449899 656407439 343638992 147548673 889861205 115019769 187603552 814382975 724208265 731215858 736769205 110083646 582545251 884590157 623080517 331043773 972646930 18937300 220540314 132226224 388866074 994162626 75519185 899533181 58179539 888938057 323187740 928237246 324162791 585779982 586207808 949222849 710943960 592927144 792384280 77255435 67104632 993968676 799927312 984797905 473460078 581736324 322463402 21000573 401345208 929936443 816889085 693846575 881252644 137240242 276779057 447961913 425805525 408344519 569090820 943006370 187120836 92393289 495196232 814603428 366337341 697472125 677776738 433182767 766296158 559441052 844046541 39345508 680544923 701358418 155122325 13046298 348149053 601963841 511177437 937241180 567802078 521776252 964956761 116080872 817570798 571977996 583812308 908687282 288538417 448604015 191339436 985370719 973937727 719027476 804283473 891167435 252344323 936036576 968651978 753383811 870279997 685812140 656009775 766792779 22277888 77155524 799124272 740833946 490225460 490104425 531950220 472365081 868323605 357232720 979414939 219973928 149738418 168464930 67109061 464501593 487084655 354674682 576806921 722247155 574381443 402223338 717555063 827216496 895810683 981074806 849946038 233291519 848356021 590796311 329148543 48412419 883396070 659301817 967142175 344678802 647948949 9751613 899293945 31074806 506424989 881967352 555565570 986175024 968928687 384010034 329406788 506327920 565794254 963166376 612627803 464735902 747230161 611235851 709794555 614483669 297074148 438502783 908220776 647649762 244709383 722941725 868363004 556751561 488536205 528278897 43607972 855754816 853335199 948519932 110461283 946316595 284727991 699138995 502974670 822043454 374874917 76405118 968106383 279972662 444194445 990949050 34531043 350602144 49501799 776891320 793665052 337112888 640963454 518116923 908408095 966428524 341292146 544213502 452525286 95083231 251176502 697305388 538870783 987372518 578957970 491262694 854319371 148457230 950259874 580347841 103060288 836919188 145852757 594292805 515472104 90189803 334833647 313130351 400655840 848303674 814140039 965044527 807664154 55215835 39359114 58847979 257324059 356968670 61148470 807628283 974404989 475005060 939886624 15647274 900466030 284540356 811285422 159123515 873423152 612415177 66422174 414820962 151243927 385866353 179085181 364078279 646066318 619224272 193201457 667048967 698097554 388786091 613080944 802826674 336809013 718554878 698882630 785717454 56498588 643506551 523164563 700208722 64468994 388631800 68748683 338275756 629895987 688110360 150242612 236981052 316607249 661073827 997932267 239938263 647163411 125291798 800367328 121621573 770148801 838921508 231532437 523199426 566501689 188578611 830898786 466651777 139790253 187792607 21689332 990416164 235458275 84260471 665489610 794905670 616631220 340420987 442040247 640679153 82467469 738566436 819283043 72857896 303079409 902312156 728565194 55737951 979035892 986335937 245141691 58338813 947650497 736323623 199401050 136026081 659350550 901171219 108290718 593401562 195299267 40608192 325434580 573127470 934787375 240401694 349550106 310157076 27185619 700740942 166222309 472943930 120667324 338733863 905037435 105844031 273506061 388700084 390840698 549931066 829003899 335045300 153130063 478022961 26318287 270968089 811047104 344938915 967592296 51752330 380014947 813177343 883922870 948785376 83265572 382949418 719244736 108979372 989496003 260374013 410525599 801615280 423312211 713321925 78806273 10288226 830790333 519218882 560130983 522896748 608309563 59137448 865473511 695985198 543827165 828465952 135079210 329173819 126005767 918568520 776887407 948289239 713377777 761407279 874183367 990797696 52346662 415486298 81948119 211543650 419993605 970683970 542490713 425344481 809471299 704130516 404962970 399155219 152924776 444344047 757442814 958529859 915280461 10983401 439971448 853666416 886004132 737599755 263883026 166720459 943294320 882451728 464567915 199731517 471814024 211189674 989883956 416367326 536445721 917049341 480634546 606834559 137313569 758605602 341546304 666154273 106871541 934523558 222474953 597409660 858429627 774072584 846077010 345306745 204547569 172773438 919125870 964516024 339549668 760695345 324406472 728010763 544793146 861780284 333366941 897957881 797535593 964276913 731272511 195271740 397855037 792862548 437804435 164412227 145416534 412640734 562352020 942474417 752444327 985978235 495539918 705914844 936285945 160546380 230858467 659541071 357731686 523235302 481558538 578469960 88308446 670800850 581659019 714835771 915588517 295494667 522857028 916327501 130950355 335625603 631399207 917469913 654727891 632316574 2110393 818086127 147333092 483465652 386901653 19761616 171061915 346114452 66162151 702473331 240808031 479411196 513383922 699485700 101566956 649428514 285059466 902193247 767816657 62222638 254913691 899511961 177323250 213199037 277345952 746951544 712892678 572556640 988781868 86724598 183856409 615224603 453498981 218865602 33017356 319319014 576977796 741986750 123162896 728095791 215643478 467252354 646939183 697452886 964230846 515894488 748202179 730574896 612673329 259357758 253394941 233910661 298507064 853490023 828121439 434192018 173989617 823345338 568334658 24756104 922771087 459413713 947725649 462648331 279218902 802494716 873669388 236069811 101442975 210226108 467580999 509647502 144733786 755488584 424580520 56908188 47886983 917899275 953577772 284161362 571062844 509630755 551288994 905025048 132931234 775998692 592029742 29832395 43887224 457734995 385543368 194040124 505736847 374303916 452032187 49692846 483960396 464997341 569876006 837028444 4271145 308053256 40359294 33762801 706572339 481729541 703029770 43136013 587322509 166906589 200417382 774969031 785859564 793375824 789226241 7324198 235220506 27721296 696599710 277310631 201700468 239024772 947515095 423494074 294776428 661714630 248123541 739284549 136216071 17682854 197252761 419236127 590141023 381192932 322062839 575896982 415901730 934166009 565405846 388440042 195528721 984424591 972695473 5337551 735150978 781316356 166302296 65093871 316260063 59474668 825376752 722493286 531554853 955040652 42764975 252748868 688072038 527074912 635776033 766276111 513614151 458651029 683204518 312857918 183394691 632751759 750759153 885414079 12684134 142339173 759234186 344364146 45087826 765098080 283818061 580476331 694609469 289075328 877260265 984522676 80497713 179981815 108046690 477482568 915222731 316210091 151058320 562374682 206820541 21402296 699216542 235586892 818604365 848407276 17887371 222082040 558890195 267164490 625552300 78353067 831672639 592535688 279883560 332689124 798648976 248897936 255130491 82708378 21271390 260491267 879495412 56704435 982643025 310706865 993977910 24644750 354175911 31448610 14043835 33711226 456588722 508769040 591416140 671114044 894143832 904954603 676672138 44487310 575317905 245782100 584369513 847755930 339801325 590356898 250476463 930292355 994658828 270751072 735095418 347255516 58883107 639467724 786589367 842529838 933152126 123022938 277631916 418653559 468564984 592710704 452033390 872651942 923862404 297068199 90137452 429963552 189161128 675438800 200501474 367710782 61307645 916198636 826563431 807169485 896240048 200284915 506832224 756365964 557228036 926261007 517443210 146582705 940818382 381909022 119808116 776167525 659924471 608039987 885627138 921193539 377644286 596135700 133199084 420723677 802721652 231122110 175689276 450812471 369688189 26686429 43481812 43555914 809102421 637678165 236985574 976358786 650141897 404281788 996515706 62274113 637116346 366526941 240254187 455639130 466804638 607473974 361923434 744444310 138402303 424386938 134739322 346721330 833874937 880311825 515995250 748709727 96901312 317423251 938293502 747086785 154163224 200245585 387336606 349022705 100308187 745231820 107525926 853942523 640854391 856348476 178773309 352423649 321050221 939763466 3630302 61774614 929941203 822125910 694091481 820487427 788461267 902205810 486445651 378100869 365178410 588606052 689151810 671769709 180118698 767978344 350771954 866381567 584406200 769341548 40831618 605604979 539280334 434748051 946637160 738300280 719767802 269813939 924644329 406781356 798420318 945449430 420026786 194856997 867783342 924043197 794489858 618933739 774348725 405996888 200814797 72651899 967341776 197467983 102594714 908896326 390158961 870308476 310593366 424309039 465919389 13429359 128585920 51378449 964837999 258258409 741100778 520303671 741523603 468367713 744559294 669154786 675596747 740683650 930931319 417092807 190353006 337297323 99740708 82911630 212118500 229539949 921725992 676722516 150755115 958080017 563207612 562327594 982079829 205137168 282399084 122220947 358958600 599764120 873892758 543763722 932331004 237757710 965002478 309735034 655187841 352739463 810461949 220888772 491820790 110494541 637543581 922913341 586547539 562508896 583965823 59789613 574123168 72331250 209635749 902160464 270065788 200046570 891324392 252902745 522845847 407317602 619954291 987595627 153513783 428890153 844326470 62219166 571127223 991074626 526949044 337091456 420074244 346733923 38802405 154083217 504456735 962624119 982330709 874124741 646125213 254173469 560436307 499729926 920549674 315950374 837854851 16271024 224115201 552504858 995437660 734154515 486301046 158462388 739862443 90767861 891055212 225214050 599883278 152187917 307419871 975852998 323789178 325706377 503970396 853809975 620634294 940291977 849045124 473666625 419419614 304791713 221812109 152763169 629952736 409870171 331025088 994915658 549486082 898636211 735885052 493960674 509109338 491957401 105451314 557387333 502262357 685280883 269605095 423164033 761731633 635392408 259816117 639523289 673211010 233266390 366300873 243342147 140759217 968546796 10005351 434658282 312172920 386478609 625715554 672153004 638263143 961879659 659809444 477091228 988824930 979823257 503169708 387504769 56092449 445098282 108761355 593602902 634320815 755291172 963533798 977415112 286438892 490960254 228491895 450276027 566470411 198804389 842761612 257491653 438055188 78862331 841489927 575578801 977495395 2014547 531657564 545174014 993838375 139123319 546791958 466174814 759289828 128878754 327273042 870361399 881216498 903156743 891505217 861546021 997337851 991114312 821613739 294237558 70429313 474721535 681334119 819849644 742756437 145017400 53611492 231564031 774329121 46033141 780777380 826588121 743697120 942950825 797674171 608097112 559900000 322067134 644507732 346467279 588031687 132263695 380285228 450419525 676824075 738012270 468083733 74741748 123831161 540599839 19884149 586467531 222704431 724949339 606290116 29949933 625245089 163944911 717510418 451172144 269516824 282463770 501856638 778095263 419928366 871684178 931169984 529651961 613963603 975224960 597501600 179335215 235627339 926022943 397044348 839429098 172986030 891876257 93223366 640836098 310797415 345034474 34646660 255591176 675326262 143042003 733731279 741072573 50789422 95185832 861247060 348492953 530308919 72187562 662402262 601838661 364586893 213402767 767699625 585853985 358421055 179224317 104538681 819290559 569691825 944559122 883667329 439572069 638225690 173997791 3679381 323994512 126051591 640738792 771229208 800498540 330495446 237878694 749159878 3275612 476839740 191481093 581299948 353848952 176348096 348124646 191595243 440158730 803503421 319785886 762278329 334796304 194633060 431345013 344184927 300936638 314284599 123224872 324574588 3258361 966277776 938020712 199721920 646090716 101079704 865323097 591208562 500560183 796676688 486919700 344122347 955415307 470393355 156704037 920496665 170911759 872895218 402443533 949113597 432519470 579280767 765877441 560596781 474942471 409480706 448451369 651053138 547994988 125028127 762603426 124673451 33218531 435628622 342981757 141650057 854616616 303655514 738674558 122106065 133967785 400996835 245952093 340044157 474673928 429534172 676762952 4376347 950364317 377052173 97985375 536610380 875203826 399570322 157059895 406936134 581676869 700123482 731309400 896194387 26598921 276755625 909533887 377697616 366984549 136431510 637790557 97111599 57523635 844798862 154150037 894126709 31093250 483672527 515117506 934075325 146662037 578851310 562145455 206790963 268630882 781042257 537955357 976286233 887477908 695484086 401826880 756053061 694731018 388726954 159030082 408603297 584481493 104393235 82192831 648103338 578488766 180782503 836193096 601395698 436391870 197095282 385205472 408670879 602416003 971723092 72828802 222446569 951097585 444832129 259239064 377265055 466345375 317692671 18530949 293677475 966288726 255835691 610641693 773598313 428648086 658278708 722711592 461050748 713785617 111217311 281724386 344406522 621290542 208582593 670133118 780651795 122455431 700148040 586105246 592191629 346692971 863811507 72472797 452340035 269565789 965759957 807868485 60823969 308013203 284646742 423167961 620469802 637365368 695068978 585349389 120339443 322481450 77346360 434431816 821306661 785254396 668552588 906847849 610151806 505560565 463133477 646161215 617250001 963554896 705053776 983488528 953578369 325546234 472838699 362221331 578384138 243092248 463650859 956726518 81192057 10449278 134269590 869697368 92722926 350073144 393010442 860246864 177194017 649266693 350512884 451374052 702265051 766295767 804961306 405130387 433914744 121795668 918566674 193728460 656839276 150384472 410973128 362015604 552633531 264136561 71071740 789779301 421133438 183943010 453158849 892221417 729875813 986792864 742535680 375497795 557794608 788358360 251739891 506044198 233492533 729568871 503865514 145106748 464416222 440109792 135518601 317755808 799086887 507118730 302718664 830668388 774770468 519152095 247334130 261959436 868514169 877514255 288506470 83510545 778234080 243228027 433024473 223746656 559976359 974980666 564324562 823660504 222787119 750539415 106279469 450838992 132621166 332395408 124443289 505613454 790142830 843849049 460588314 351406801 398875596 268584919 551159687 237062727 338409017 611992870 896297229 83406360 647085309 841131540 16811690 172248922 392490351 683502243 271976883 206059418 940148862 872758923 212338766 634187097 803169067 125501365 476326393 119271564 915539212 773610177 291428865 619131676 906217675 216879489 521254412 707456868 236824741 586146684 225071248 486113462 963013868 964566124 100087129 49751510 70354054 295556288 373525511 620207485 948551019 459890715 657900685 115921111 147282218 104771539 922429876 839227398 374304613 427811699 196594070 332889757 755363920 100825913 275369507 864581157 968714038 55101592 507099551 843822235 531340532 134897336 134599970 252688624 373057660 647330545 43815190 541476744 533026644 304490324 946155965 358361276 369969172 514396962 899828649 949931352 822548716 963153746 997836354 324629789 369713179 588020495 264060996 139717440 717492345 723007032 543796798 294999273 604571630 84199391 347344147 294053301 511144440 251954890 23082621 573257781 365088298 538078197 977804165 714970733 587771559 123261710 275515660 173583445 457656491 411255032 947461190 449848923 772129026 835421257 498680634 950368224 74366607 237998027 317949763 634785206 278095559 119906558 526725010 443485864 747242547 657749653 832660393 554828787 694600434 390781685 893926369 375631301 568126772 506483897 269292005 855888837 745877440 711070000 225464629 99871626 90539631 860815069 306750884 195428130 719735470 313361399 735914971 862001549 137568256 392162023 906698196 570046784 663630970 426479820 581600607 296079523 102942022 346631674 292275872 974956179 271202592 512239222 34990223 284084961 345657564 363939452 970529654 333610704 192938974 760863482 140532599 952673179 303586976 360033298 86535428 605638893 166082864 737596828 252773221 131126119 450089391 611691937 188477750 548823837 66837715 417706721 73349861 766583833 506319973 511867726 590145336 171929303 964811716 443391631 436462534 882751687 997724257 801956478 565860729 289350351 515086913 385428394 977046802 854791622 249849982 227345366 656812453 516883706 792217542 600824952 842373912 585973419 192755930 421534011 362970793 531168398 998299409 147232381 584587621 595015754 187260626 673493458 227182770 161669118 345233949 808787071 104184518 47415993 416773379 126867455 699219245 354392321 558391850 8067202 125116743 861709133 143809866 912037737 597462727 827491979 444630450 986940364 438174773 418723995 553297603 533361396 296573805 38851793 358721652 257901793 741367838 191827063 415496141 354264772 343458380 875116361 782454636 74711942 338328783 122427383 805256707 93674560 846781394 920604838 951124183 239101121 428563796 97009519 851011139 484375564 920233386 702022879 20954163 540107990 243661307 79369846 101534378 469561868 465162435 620056872 651295804 430874443 2782801 397153759 72917652 848049510 378732872 807997942 81804015 710049508 801463586 467627967 885258400 60472960 328886440 857169663 162609034 589691815 182875259 961610093 473176233 580097789 651697551 781593398 28441225 522439896 206710698 568479100 8794573 485205444 393400298 509621458 462535594 809750781 886234940 489843650 868541545 2663160 525390053 347006279 828674536 736115674 196752637 961865555 758308890 693025791 382209775 740425034 886287234 549920373 96388091 10368645 123733436 40907134 128159157 951002321 852613109 220247314 578927747 341602541 758738798 360469850 142249506 219372815 270600700 865777462 58028577 385390944 455565963 835504824 664356452 929666171 585001367 321683879 16951202 873508338 968281521 912204797 58092008 751971017 322741248 292952170 6213397 931738105 635561149 908673230 446326108 960629998 625768886 115309250 660875205 586975242 654213836 845646352 83916971 671701280 210556533 251621175 138032191 47497721 811143226 929541096 657746692 65890003 117375290 757949323 956258385 963549404 46657189 116197307 134424786 778351291 642590275 281291974 19908359 897703688 667634411 300018734 982386116 499073743 941850892 835869994 675958959 709313554 549164839 781671205 79334598 286438468 273181266 536412734 210879702 808638158 928307895 714191815 299846149 418010509 933679635 239448263 426104392 782137170 355768887 106239608 597889261 973520993 510256523 907684041 797234451 165004531 618864518 12164316 920120365 933158324 808419127 958512521 730791556 297486405 283186623 734657498 153070514 279237051 855092436 480130445 334159143 437831966 56550208 466311573 189146791 406245355 546467168 212936346 640403145 132037267 713013158 784279412 241292666 313783034 976507672 890752947 71149688 319629560 353299918 831681050 713627096 737297115 577537399 204415264 953299585 533884387 22952405 28441966 710592175 277512389 587271484 762618979 901377136 90926121 943008535 767044755 95420458 444498220 460332644 198978115 671566099 743595999 410951219 418865647 746285496 620029382 127865386 495294149 699989623 257359449 603865348 779978024 450629124 722514822 732941581 705517869 214472168 672191533 720865960 792194849 28170493 204856995 520314057 734315521 199855603 658272560 498171260 672132096 855855567 641339537 819128924 835313925 127195751 244671094 134981404 306659626 705826535 353417733 597702146 249108286 212560462 963970133 843405927 337701700 120265202 335647476 784774456 1326834 401148408 876401762 278127480 268352051 745528285 916564116 83115708 48865189 562194672 670708081 791809965 402861852 547198165 274422616 864276106 674348573 824653827 534602649 493540771 145891428 991323207 362227447 781483487 577257054 421634879 185744428 208451895 184641968 880881376 509932133 797937976 354789294 671348209 457850306 481234821 746633188 545270414 283493336 693250643 484643473 285414053 110637102 104645868 273242407 418039932 693040835 311111212 580231373 157724457 174753414 451284231 945523933 649454360 931833309 148413697 464670566 288113290 699575071 799910068 959839147 363973648 47672602 601377358 738554529 423673620 945932685 776691216 285051765 80585808 504007087 820211408 587915780 993030228 379770023 238832248 149250914 799130628 231228945 407676037 617342036 127020824 452449407 104545416 203776981 761335451 337516534 215937704 639667605 519456621 57904237 596284447 461263477 875701953 815504466 655702457 147835148 141955231 54269700 52625496 60023845 540198499 361680217 376135538 317503295 142626108 663989274 978179985 497129228 972401326 445957763 26643666 872499186 85968657 201167556 809004391 79120013 287507983 704025218 876449813 422457387 854457130 630136662 730266807 250153806 266666547 98441037 803585721 444457006 989852116 925270374 761806749 696894772 305203208 492047383 178566521 834673024 749172893 727243721 686075767 96929637 439508921 835303255 397506645 636907239 486789714 794567315 979249379 981874244 202490036 623775425 912022151 282573928 236542719 16460570 716506556 56792439 627840423 895173451 792708238 914979655 375593970 97803251 700251936 680919011 875261054 941305128 581920806 572932105 86644664 809997043 644584299 871158701 727594597 656031695 525103181 285604468 401426973 331554606 768721468 841608762 281019851 425858036 451274558 612949900 53358639 249548026 3586670 239000623 546310236 40414092 439235704 766439319 600807994 962373612 894019103 657041777 279288581 457160141 315050168 911313433 276660172 273998040 791565484 578741028 827153395 677920042 911261178 512749528 591115185 896660948 637573810 747563439 740581523 159116122 388586875 382867160 424550903 227957813 891763214 988462262 940407698 651446097 772331448 212645471 451487211 826704527 892434396 65049886 346328797 318397764 892169327 920582897 26248729 871011512 1030778 347189515 21893537 114932905 667813020 521099859 379512910 782764997 952782214 371813348 498585164 721952819 235971196 936131467 617317273 483669515 848719834 859128396 894840969 350501849 972574093 796079838 820591173 726752542 271933334 376088618 848386375 320218831 640831627 60625872 689822175 151367124 349323798 888720033 263341233 235825034 129166708 288930598 326383413 458010690 596674550 244815384 356006454 129831872 257860995 884763366 234155604 5969852 103720213 523692594 787780738 906244708 190758199 233452628 565361800 83729624 47398542 727193557 154250626 68100525 397279821 527133173 597494367 609173355 606090943 835364135 63964770 289293071 364841921 467558288 189598629 838236810 886109508 962552203 307906449 510405439 927981008 256367143 212324200 601933961 418617084 350816167 278747323 675799603 286860791 602921473 948548596 142711038 340807170 82492256 387393742 635027230 471156980 454569123 637078743 324962493 921071541 781239771 992902645 274865271 521174723 64350416 565681374 434383325 831811760 203262845 772260254 830788082 848115873 223015568 987489301 46911409 795596497 633427435 112109687 851232389 223713548 285163814 476142538 96074958 174014260 822546954 350660203 38233187 699089344 291477271 263339657 91322635 113492024 452857855 699248809 579111171 890649530 919639593 80499232 649021819 667067256 659201327 51726236 377177881 566224696 484840288 68056988 929500788 698922450 309664831 560227059 651802266 936130486 474182914 144556361 477808522 336851299 275838739 169545626 342650043 984268785 304440979 228226741 14872468 129278856 895110866 991690173 894768113 282223591 75183832 575439532 628175525 82957534 337790432 346454219 138342386 189698260 797340119 623949116 907477010 892842306 171594209 960600432 50415538 603456821 239503573 767370673 344806002 139239376 108659132 180734874 762848102 696836296 823227989 216212121 862432664 366604006 788309908 577368692 277560451 921333897 851559455 77563841 950458521 935417889 619022544 920268396 984247231 602994869 865071926 670451765 627193804 798011486 601214995 395235631 661253901 810651338 52041183 942609987 322867908 315439034 581208900 235224491 265421220 16406915 524211616 755012983 878133847 717007249 842662278 297287179 626640888 395093216 505563453 261168287 431581337 187010689 831998783 280406974 999834047 236665883 605623995 607283143 404639457 224844903 618890260 696606063 660273132 229394355 275944801 429196861 742810050 479689824 256557803 238553869 822177462 158609253 481470385 879548558 589361425 696009417 410894823 803412932 4744593 16589356 292543346 48542854 678810085 987897663 375594606 342198785 854062386 599540807 191543720 857696563 155383441 569654430 215312677 393363313 353763214 379648818 384435865 940383969 530694314 971714309 492964849 12229889 536181211 108093867 294440906 583776542 638926599 260063695 428364279 710617822 638656140 830952366 719759358 300221623 811119035 393442202 227215260 423795829 977919320 28170872 409827133 397004216 249476124 357587010 962755716 145947251 833386803 970611847 791807689 104117615 384607935 242448614 52802966 634506949 931095123 198785942 464729898 644050024 810663288 931143649 989529334 583812249 881131563 54968997 264038946 161444977 538194269 20053202 797113865 506366042 89229682 618535406 928904888 257000086 852967107 778918548 899316595 161107895 75040796 562240752 553757489 57018661 209639742 698040133 994400539 847444380 361645406 502218343 972377361 936273835 82138532 974051905 973511717 173350965 34508717 372091985 573305629 327281396 6228490 576892967 452209909 708800241 219416255 20674538 612942683 329869069 456205253 678208722 309492530 243676284 238056328 916748719 710373647 634323269 600170857 202182497 595515327 266638019 988414525 888645981 529151679 599417895 635186380 741547567 251173058 403673331 858262099 736930802 355683887 369507712 691030274 232778970 55858081 863341433 910204031 765397930 174791781 306776158 281634402 879093310 482781439 611494914 570015415 769203715 655349157 209123086 943732351 319634554 190949058 944045948 212407342 789292985 434717045 756713756 423237678 405438185 504720911 333323794 252526939 142084809 400539801 581121366 963914630 757408297 421757772 128603442 4158962 663915120 574642454 646581704 921166298 218628119 405386268 175878538 121154281 39825196 810087474 272789440 269059520 872782288 581401957 692199173 510644851 3169977 248412786 565576138 116463884 273087409 535707980 48075986 20838407 985455125 187681690 428862900 725996245 488738134 162864950 891799901 155941465 559672700 346374831 36581515 574651246 587658142 612206536 332443731 412958558 769389163 481928183 363085467 825405036 451505316 570094822 7384737 701405260 914575775 662609142 308194674 165650598 97897414 603776439 596852340 93882262 578261782 468828273 7244765 117797935 108446625 660808351 457078073 679197427 802412556 689194607 843590120 441991772 240546833 559474499 586245021 928395607 615948030 463824946 150171872 689852868 258680885 501784711 198924173 377283831 353254314 737307713 175107923 101054522 415398504 305009810 373860406 952077641 492773644 171157601 630272782 433448148 624376392 70569672 970961414 261781760 771319138 827122582 225486621 686227943 949137074 217930701 562256552 910670867 911359015 52858405 640104398 841049863 750211523 104898440 362064651 752837046 343972378 754802580 113548461 431470858 274341080 925740316 159953754 228648030 303534392 403903655 662401672 361478148 182146701 488463600 766895364 88034753 292725437 530277732 648575340 211615564 943085248 648542887 136977077 927888082 301721894 703253775 570869925 378161525 491073166 545167655 261998169 902710216 366197808 190058542 288936129 333573717 587848276 156094613 630410527 607659543 966724825 696655493 724291980 543181056 486282159 613029975 420851059 538942580 403113309 586452249 442335764 360363980 629655932 555898640 391672066 272284373 694834489 132259376 789727910 323737166 780279767 933012134 807815354 87130734 187142955 158319439 213127374 15275867 88678942 608607294 210399942 57696691 816573231 76750138 103156057 323509511 711859950 462278205 320042132 329476699 593862786 885215734 603331670 397253288 18549284 100145736 625867986 429374299 145889698 642045641 770369807 486827219 90840797 37018436 105849707 281990374 448042571 606025783 57671700 830197596 751176566 551348566 452599694 164066931 373477754 437732870 934414128 769208154 927144843 279838691 524483494 78593206 611909997 994931514 653347184 675183391 265726458 114747279 120181090 687799204 102910880 394908697 504879906 462905923 735396064 186325569 962251182 988831858 956970704 810256423 105648083 386729369 26436506 77343517 343398070 752959893 620321019 880085033 191430735 575479607 628309701 857204871 70633 101896899 474919261 537928229 89582756 189700210 599299645 887676966 358300659 838048496 900459123 975909728 540920351 124580830 947941153 768970462 714284737 879410257 819864059 457560670 639792972 142475089 188939724 891926739 250864001 683425371 52220145 261059812 582747640 863577568 808357340 604690796 729916574 65993668 709119890 966967288 962886961 691205087 314093102 880236876 782286278 852217983 802604892 8234974 383792452 208437477 976096990 234308697 976037863 991644099 573051659 743878684 459726781 751929796 117352779 902771129 494284076 161502212 61914268 900286326 121210730 347176084 251100688 264156623 343320836 872151800 996589389 409225714 476189272 147596456 30158091 523315777 687951386 148564882 942851994 555547860 548684755 589728406 399944025 42095604 839114333 897833993 329341248 134305441 576036968 337335859 954823511 111796493 883573497 842226641 98587452 354663711 556910566 900385427 20694178 554837746 391025243 274503071 829180876 490078035 674817367 901668364 34134550 45279814 849999408 214913896 562041453 572542849 687349003 354598451 699747281 73466095 175137637 116634210 766831066 16794414 960713357 90657757 246506800 250387474 683815463 124179200 54762514 673229600 855312042 29632798 595326672 55395347 485170659 309336825 216677457 155371867 539348336 605576012 962894478 868709529 863624006 519499073 877479189 177136421 625285164 909967611 902896519 581522056 630349373 376787470 722719258 387493634 507578730 175043074 43064343 681846277 358642166 835402451 769799261 87701176 311126776 470297972 816526300 389972085 89172188 354111559 579334683 684735819 455386594 850677158 524223924 487998588 58587294 273568862 326865106 680411392 524568694 84376111 593329081 181702657 967895592 177333325 3752766 569839453 867077185 581094370 500089163 560267815 476028326 644552329 495735133 232079654 41505807 189782741 413336838 701683541 707383943 64724168 427415147 831416929 651090414 488849500 20179142 221929262 791112055 622132222 816741093 305024595 859277098 640401165 637416873 651122329 398062691 792526944 435291273 218960767 62029393 38874301 835762188 999339961 40100472 510594403 996743250 638259117 653695279 294176897 415914892 691943413 950359587 726476220 657771136 138087391 933297362 447339181 773420294 930983920 23209745 767808353 116782221 994611804 319501191 793098967 999344278 236502928 380337200 222530949 785347896 376410281 277231834 713890260 9223579 760282106 428562859 638700703 25517181 256623498 34702745 324788664 95796912 113536915 794426096 535131236 517802394 321941253 969282512 408310234 150392243 858792448 799579821 804847047 188078858 951707230 272152269 873670860 250974657 721365543 758709453 962112767 999547532 394734618 734915357 809069158 209418039 776483883 93901951 896807295 981031197 369252351 897829516 836704699 783536561 37129586 941292591 53322238 113540345 622133521 307307048 245260065 732473869 585665184 586197386 818877552 297523613 952730006 568569917 42837549 102805097 974703004 873763709 901628427 259847622 306754834 395472473 511407539 318332960 980642698 290198069 843813698 91464050 987888203 667853128 599804361 119002063 77993167 218948383 1709516 148547549 68272453 989495064 827323844 284931925 854977296 492915432 236435613 600390533 456256325 635933974 148550200 138891214 618650417 127629181 956520938 20045349 589849298 126376910 762384124 640584086 989689689 685457931 783389481 770966716 320925614 923005709 756710179 469492299 477507307 845755648 730451213 319916423 33954016 971903458 710874370 641521866 696026766 122152967 888561037 256228354 976751788 995930263 355898927 682552112 661510694 931264015 22531037 853884138 161320088 879253692 796050815 104825049 942471383 32074051 546914418 613060156 711605096 274131228 354033415 390648420 189799175 710224146 850073858 789314870 149415714 247499205 523216923 994635180 376061020 396494888 160873600 5414484 958747402 474273283 323892050 251390927 25338809 169371249 965552931 996142419 396972966 642778211 574695038 409423658 733940036 425444124 580423775 337956657 325541562 637338804 200219319 962610522 858691170 486867093 577300714 384052778 959625036 385227265 463775824 265280827 687941049 136513673 572677303 219658171 371111328 900747415 434955999 532959980 519123756 388423142 771777277 539934370 675748155 840285700 50658105 93710280 312608737 729171159 369316399 699479259 22640867 277966101 637533042 961987181 984174653 179310794 982970372 576102819 128887965 709340118 279230176 621922488 151946213 573820012 886366065 359556472 254625196 243414421 922893848 844919238 582393278 700262315 201909417 368282134 130446488 117864158 532088558 223880691 740897773 567335346 980554531 173567099 666195235 538487167 914524280 169392350 203981782 382881008 805789075 765126370 862715989 558561413 344090891 40873314 613468704 50007825 791081966 369772746 907696752 8549436 656168508 720218013 576576687 715828994 712622441 361960687 349634811 226457138 275879135 919498988 892111016 211592943 956183161 199945039 218970811 692062515 602174730 104236011 415757423 741234247 771045588 986627878 866288052 229194061 920259601 950775417 754848683 33161142 663813998 570758897 132943659 119664076 566853771 583273905 4952383 429180201 74624124 34596462 685168038 390234430 453011531 773052913 604173138 867796430 105308019 715747993 811562730 685510000 347808358 108090070 603376455 94465040 274202377 30174639 563234810 64958830 892930355 218123069 788584901 767091101 781232433 649893678 574155550 297860486 653569605 119134019 828111535 965322595 564976418 447051218 934512600 643062084 90687602 493061188 34943276 757138317 514219344 291749272 985213167 413464438 909793231 469962463 913926559 895954314 765000561 227385278 334004840 940329000 870748592 850488047 133975982 673807365 911462520 913562304 846273415 935716520 904851627 960198034 219613246 124962541 643908252 452037211 416565970 523472771 928601236 577925925 502909300 818861934 542339921 565949837 724015117 220608133 882832002 28801348 568378549 50446325 246043980 900380817 703016509 810142396 376080072 427372238 544497318 126272047 566589058 597362919 373414312 816908916 718177020 779994078 746768172 916318473 233613353 452732745 629879250 734722875 285754354 863523794 733428588 281304752 82127028 125509558 597695361 980898270 401545152 549434695 845178315 430932113 881075162 340186474 288082105 512004201 964751803 750093338 174925806 317288793 618530959 723183843 859007168 221801001 492215416 550254439 415235770 541568757 974453513 738394589 248642586 144386989 556371403 57859469 855190612 464644243 975630011 129862485 919460493 614860479 971202762 655305767 340111392 775472286 909650012 693867913 472940317 367732335 632341450 425393171 779513029 17193669 57127392 624543220 707726863 450008328 261875295 359306094 565384743 247732212 263016060 882616150 775769833 451327511 612423007 388691861 635913578 820752471 144231077 977514921 997852784 615032939 501539039 998317348 943869685 871455581 454864913 328897580 136140968 775145998 3827252 931414010 742958699 690397106 745211316 169429851 172042966 812394576 514725874 794788658 201313459 276964675 445052355 358844148 908279168 683339195 994029039 482862890 848202224 967644477 174527923 119574003 330747498 536146463 777126719 697148799 218520456 780527629 217492025 945349269 518509722 248196231 618754105 561664270 224356897 616444768 692202315 329944663 477680212 863807809 456648304 41949171 483170206 749071908 596225565 38671863 981888797 575176665 62204090 943127437 341325605 873050756 834039075 180913009 881309627 116528413 146516267 252803191 244911899 678174190 384628757 945402371 672128563 360074009 682198297 725090959 862457125 120151312 195144677 250260521 331411913 108527899 163007769 290460914 976339496 711841237 742162634 677194656 134821122 641070511 354066688 144016380 301633609 104886124 86733879 989720421 222283172 39149219 606645730 425609548 997635821 999703105 949031651 694660534 837900979 978273028 669001749 15687613 125705913 460958721 20415683 710822415 531013749 614448414 663816493 403070829 237153170 902431129 748274954 421847341 177526894 127626367 395428353 943346617 643402909 234474293 803670062 547415822 827010916 461585395 224126116 126669118 373808703 538643525 911226853 692204782 264814939 667471240 319996012 997060057 336576028 760571251 265746723 762141003 787606425 673334923 185903085 153093286 37975835 543405741 114681885 607790049 608252578 695857544 177126141 266582532 706432352 525701920 698689609 884354989 228786747 403151949 987061425 455144846 342976079 137473338 985695834 47045356 251870570 999021542 842196318 962891298 600998543 762152614 487704647 858761500 961695348 208911521 637596824 53344732 748945923 499126867 291159876 940145913 660240092 24889866 505712949 59973659 914742738 510580844 683217862 114098816 856620906 824129775 57896266 143490938 179863647 847776864 376970115 172719343 212602401 254825821 758295083 685355992 59875665 140912859 206987119 682583234 929815110 963788960 375441518 741874256 656451979 471309769 632353214 726565814 768917086 949248838 826590696 419661632 660066611 907092057 213531111 328901321 359398448 963190043 105210285 895734852 466044846 409470711 275202719 649707063 972191422 81500973 377722388 416325691 211389857 299456848 542372825 766728062 169763407 166367177 279433392 77245760 995679474 80987218 552435916 933823833 684486760 210801275 863642710 764469938 765615812 394199080 724502508 959489991 887861196 641679888 725890844 967386924 26218365 605893696 924217582 239097861 461704835 418423959 686809687 351360140 778677442 714522439 150183111 405338254 509134800 352887130 184984732 99140078 138925944 463586603 235063212 978684193 501939256 182964457 162462656 309686193 829344707 830684439 501414163 160453307 946942337 961404175 262308055 813752688 799714570 714412922 384934832 964658583 405691567 563469529 898797111 579079178 756752369 195734016 363813752 340709684 759375367 14751381 212458868 618055578 348243549 886601621 848904608 217156687 356044560 581977552 295820644 545363325 227944306 65427048 349924510 710247651 679254668 77722454 674335772 505036370 457704855 454460901 164735013 342519855 15803010 194446133 948994801 306538997 509757040 337781945 922582316 63573168 988860983 520611002 184070775 642327938 98434273 808961745 341948391 28824609 710179886 505660017 55572612 805618007 919878929 689821019 752303563 505657729 476684847 163678247 47383597 39015697 140028003 845194434 700980110 708503821 448811325 81120490 961324487 524180877 139079550 759594164 916327716 595743808 393173405 373202695 989573350 411034856 430171205 398668830 641971649 115686873 131156693 5484042 829576800 335360126 459924446 413886766 556982237 87889364 953851305 877584577 287561289 861586669 571336879 852539216 459189034 711145327 570139166 621272889 476246007 769308691 789093467 485719344 635380894 50105638 442536314 825924286 967006719 516391691 227804616 917878973 520753775 973337782 48984642 674597341 826741814 420906034 325862171 319752483 345401873 241583901 240630330 706473573 6637488 270435623 282418105 36234447 327686713 295231639 936422503 971205984 573510851 517777605 691688007 111070573 198489820 923361441 886771471 196911390 133704452 488045867 32256682 555088364 720118576 217541624 180379063 89734442 365958472 471771060 114392583 715614329 406874025 360623770 873654562 605132369 126206883 23568638 718807235 953743487 385548283 375311812 744934744 539623585 405600107 121315558 81524355 782787244 429016350 324898801 733409691 547990375 287138612 564152968 479114796 219661549 540762436 266914016 700096627 251002671 180094677 735192131 147733474 535948400 9026531 827494797 641116066 368172487 597842785 843905970 414793996 465016736 256577969 882501174 5675567 436320315 514522925 274527155 649124942 114313260 242120866 61938263 892289631 915289305 695699408 175636067 36211084 220374271 358779883 244368045 598165430 616740654 754635293 54333215 483639277 484413000 344043522 479126837 407987449 44894726 467037738 118808707 907105237 667591027 378315930 319879981 35540526 960922479 585793867 303534702 563696360 401355053 236535978 516192529 958736537 207842997 290537494 628389883 662255116 823720291 943625318 473901215 520989376 228755046 457833056 466203528 627440487 974287170 733721411 971193043 775817831 90819150 133582654 668008114 990869596 177251639 650365430 298310122 65463444 732509563 464238852 495289429 869866385 943012591 216431221 919427937 287808395 227589690 504580424 496542864 238901996 62615383 104799732 563417078 945696466 902947351 138164447 375953598 722551184 127655069 389814504 848948133 593404717 267930592 541149662 334059389 991532515 686204972 302991110 441028012 30172321 697493409 469287321 443452074 849776010 781394611 947992899 231629959 638275700 124772008 645750438 294117218 64578922 775565853 165580757 570393587 143872811 493749634 889604313 50239490 546931624 193693593 941171759 341175021 396050569 631402491 791384392 205525543 330851241 625186195 106760968 31546803 194913686 4942624 245972040 302388909 631318034 102583736 481837653 649773505 711159957 625535296 430469486 869797298 156392136 699795700 924258633 869571541 776520459 795809254 479756686 874984595 958780144 79045494 841875547 821506538 166900157 128849887 544103102 546700269 740063983 775858858 479759678 946869056 320009906 324492089 703294547 896830876 629175913 357697342 434136809 270855249 38972716 353535808 192070882 508236991 904240709 699941149 902807953 114652892 629101490 837044355 540257855 149736369 902652583 336459637 524464297 357112797 440559625 443335372 381606784 395593232 234444019 883214515 53069032 290325905 288202549 155833643 541637881 832151737 48508368 812089477 229195841 268039030 99125627 733064682 459493441 19316681 62693153 526427606 828149227 270795336 914541153 461260441 988881963 535841437 370660877 129330389 677910107 410763268 480524459 941816323 373684428 170065873 397265143 428259566 357371716 420305896 388207711 32146485 316774267 3548483 225953157 497086669 70548381 526574704 218232513 984943742 99415755 303742992 244813981 870320225 395440025 604930394 179722327 610661736 200362129 929749141 538753634 820816598 60684975 452778913 826002661 438316739 97251812 114567279 189549626 554964121 99489684 847316356 622991216 999800218 470734103 871125627 583160010 539537751 583944251 199263872 956385854 519548986 542124480 708653269 399420919 415161853 759880667 915315536 193285332 949137969 59100852 661408475 247053030 628350649 784763624 924922868 770335222 152918604 405324807 216300330 748653052 472666358 22831895 878872998 538069417 421376663 901395215 244460959 663170270 63841634 132231517 710267621 754149171 83068512 746792033 868600663 409465457 577274347 605516783 615243117 371260696 984488499 529512401 668564143 352155866 317311420 751763011 191621691 618877214 123614174 387912309 68048195 162748286 483943748 609061133 916082573 399623241 470435950 708928674 867720177 748312322 370247727 724692034 253332703 129432799 490682415 552987117 799330006 289385803 453042537 340571415 528426222 435291748 275618478 813287210 364034895 696482685 631362337 207811586