mirror of
https://git.sb/baoshuo/OI-codes.git
synced 2024-12-18 07:31:58 +00:00
3 lines
1.9 MiB (Stored with Git LFS)
3 lines
1.9 MiB (Stored with Git LFS)
200000
|
|
105041643 753061282 560574566 482486696 162389240 300130402 518268117 229450831 232738846 64483202 340457462 992817365 779230628 122833162 253602072 371645063 29805314 893423192 600538162 576981190 310577159 655480495 735642916 833738724 213811802 294745835 174241402 283412612 471744436 88611322 54079249 825012335 596255751 258548020 605343004 38747672 146693843 927421800 500380671 245427144 369386017 466826100 793752588 389139416 929360453 868652673 289979788 507906535 478271602 266196835 251084308 910602566 281378566 424341192 93682647 507444236 505109576 375234759 92315199 792000812 20914191 179462944 278099012 752606178 686420609 141493443 210506331 940222179 431277717 362919986 751537253 136450872 306570910 74735515 429960413 847055498 898738055 55001335 947975815 99001450 322214376 531043725 789922974 256001993 59004624 369079259 269678362 551100179 307978876 770415711 978230348 4872809 765695479 81542479 166094731 14760318 446799149 818576568 170782818 772334347 324636480 992104335 442263128 121559729 668454459 628149243 504193707 605230869 449403126 195057933 542244677 312284947 592026798 211473134 668823777 722298033 819085978 674096251 41599498 579226733 277615610 519085951 811489978 431519326 457778435 319899216 970580578 531174350 730555010 689094341 14886823 783366839 384632897 150345193 982082046 884108876 580930570 604159408 966600557 739180848 118052209 140219603 341893704 101830872 161259589 507374325 804803703 587035227 184448903 663717426 972274470 726200387 113896421 631467665 633054391 890220713 748910811 791412220 988741385 586014941 772402986 412675637 160642151 474298774 799504480 158935443 636439297 305797855 144988432 530495141 103335457 413216332 638190311 100645133 14351020 621636541 600311918 422272234 640779472 344642628 60990159 495669210 840054376 70542842 224076840 673078959 301563514 731932977 822721851 394821108 653794502 523655228 371813544 751305174 851089542 405547758 663494839 987041746 324311755 599698484 458167197 523619764 274033199 688888346 818438088 182242709 885840361 922984898 205374936 560569927 166091006 218751469 867599856 347877158 23940012 121407715 810141462 961094401 730864824 516177085 363501669 399313956 496284354 787925704 441272758 559223457 309828898 870544640 43175107 271889907 948130861 677812658 472846943 252484321 248416019 91364727 894954784 439677670 960779667 971674311 296039766 277529738 781591639 845401714 549850069 965501125 561423289 931830898 62780737 720292765 631291451 965596056 753627070 732513028 227596737 426814157 730181511 495885091 308463776 216019647 785609009 642917791 468900568 71472286 639681014 346752049 683264698 832523103 586015231 250662344 498800396 699338519 794216688 923055377 493889511 876413173 327125699 663263874 889654479 727769836 960622971 668230288 335544235 757160812 406888207 560815651 436745520 676250405 597347145 76578390 832683490 149977708 998566283 493354653 431155602 359795017 871131557 987469198 802929687 848753872 900465915 951013245 679495852 365578813 843674214 482439742 50836183 244870777 183765417 564305964 968992341 222030573 999868767 406214673 760128788 600822129 45805320 718137795 642232508 597275173 580192952 33953503 687595457 443706913 940342736 479291201 420562852 793293409 779942672 104642564 219995806 155549430 535504784 222544933 696134589 919255887 261564992 381953176 719428300 286209920 504839923 374625412 409407525 836433811 497608037 981504795 451226985 282831823 810948647 220760011 382265819 843610198 80629848 409407504 367008898 19937206 948121967 59770060 615927360 66433316 984816153 497723852 394002045 441376068 965831163 238552912 828645670 806375681 411797037 265734596 147725761 540950730 488091174 497318465 352976551 218526351 75275161 242161946 595818340 70978809 875318459 555575402 839430521 488081353 201718288 375750958 155692852 240171439 242087280 546489784 222909398 153921605 492057686 315293434 977759618 405441011 37452909 600834321 226784440 205244908 807021767 459492826 423385544 353438071 259104618 658100572 936488106 569746880 195242477 309031032 50011792 996280923 513567943 925197506 159476886 574884829 590412672 495045735 621596045 355380642 124629793 125184379 341742520 705054070 379114351 811274210 364293276 937972906 148733405 85324258 118882773 735917910 813246025 920942277 809207748 497724021 185632083 177020883 39814830 642541551 574510485 882415407 368616478 898428884 882522372 86997540 821165914 141976977 891219575 236785080 488123923 207962144 585812934 261478390 354103944 404931914 48413085 709542933 497686760 508118353 811593384 634912691 73740188 2114532 449794802 214569324 102210725 687595916 975422092 987927776 78716331 177926273 324538503 828430467 18345596 954274083 909410086 63998049 190656780 997331499 472049662 294872386 587281919 220258282 830182262 203931531 831156107 832705788 383779335 610200496 344430172 144795581 894414008 126489968 417921837 360666243 326988654 934495966 559691502 697767490 633675793 238699157 665695205 570334214 725736225 917775853 621024719 377429474 671206126 807867816 858611485 822733635 709736099 336458486 54410167 792690400 464063493 913045958 391634902 339630134 471713196 656821223 224753884 127845402 633796271 350221914 807347642 843269638 194316426 432753321 214546527 311160372 936094211 822584744 477432386 481519923 878707127 560246250 242724407 442867211 904885173 489847058 420830035 412731881 295812993 159738890 608055003 659693967 614976732 736804098 759753516 113184958 632696655 853489245 823728018 116416316 71227432 297197209 704977891 561658839 517181847 717342278 127087000 591136480 309105933 742971154 873045064 681555069 258495721 130194274 254107811 551630454 201024098 797100333 851925286 259368116 84538380 256657185 579795848 869911039 109067454 398618274 419776306 375671376 806070408 950393407 549005608 946883727 980243338 312904813 4914316 271383296 107930230 551405352 484200412 386762003 754746932 841554264 192338669 674538374 238326432 453247939 425782070 42535197 572030515 991112036 133566854 341578723 230245959 789958647 674529711 812689430 120576250 773188273 247643784 650915417 769632672 84247547 556788268 499811288 101655489 479443747 67052533 299869402 757272363 310702826 792908248 981078480 111974862 582467613 961851762 416796138 109304830 358391801 975240380 362528729 943503600 295032608 610795794 905510730 64990618 397046198 118947150 157874495 983678349 254869884 132604960 869970554 655056702 159424926 683882440 81309933 891102707 171694636 846145244 878450120 461399913 653292193 861299986 715483562 948593575 878943213 447053941 881991525 615619103 371177593 800936791 95136570 555108605 101389009 393361945 551429304 331580160 521703043 186290566 420001938 244632210 344882114 4118780 290189012 941641122 342945700 286831586 862464626 351097043 873421602 415804075 336008339 239384034 709535091 570622917 712241038 16505997 755739645 647448686 966809520 918103629 273574611 409687864 459394736 371698652 729274430 215150867 877366028 834313673 726555277 986791075 393755755 160444542 821872638 311522595 468057154 298792401 980414251 255120634 249058990 481595904 765407566 387815281 397962916 978991443 692371402 918801342 119996906 403288969 664605158 972328572 57776730 408534216 975342331 767140637 8126326 175255455 133759082 836096693 377141648 307255530 918596591 74347807 724168225 411698103 758157607 344309045 567418490 546556592 62924385 210160725 668812771 638652607 202898853 606885319 933988257 884553239 151818856 325679288 330795724 287325884 610942491 412838948 360036859 121826291 119315524 570738303 850766433 594891738 465285059 38023516 897213804 981956508 550512745 477710346 480446440 444948760 424064385 271848761 237362051 409198959 189389447 737463410 526412201 874957293 404029007 443381897 545018422 608267603 326496977 287481358 428509853 110184044 953088553 191251292 852575751 448827516 53662140 558841717 645055086 594727791 201229377 877363533 118450216 745827315 496971641 963180146 743282943 519295295 829340688 7826049 531423028 510651903 597453840 796945052 712443570 114491559 506060245 375303882 411634564 597655327 678499551 18361251 797902340 244668910 995538577 920389786 124247756 573891524 646569563 545273342 847575352 664962569 197400206 526021807 648921806 976878437 56700492 918880275 281745140 71085118 978221870 308787514 620016509 177860374 225074462 438587525 697857922 524870380 978012055 70580120 350885851 53666945 871716701 376893803 877478401 759519929 470726515 949591699 596525892 788066638 267744970 591905782 459986961 566369790 18564502 958969654 609555865 95134440 734200772 29764378 511034730 914550570 798754497 532689438 695541589 526978733 967517257 883703841 190112895 866978638 331287290 55151499 520597352 558296712 775324500 771108297 309715047 456066099 219297378 250010052 780743652 383724345 670557141 127472659 125864332 918602961 574289872 561051999 545373654 419763957 456079897 651523901 677401579 562060307 182311541 491318698 128283979 393493275 635408502 55124090 64845929 328889779 760146980 123919217 760255240 594810428 563905226 379616234 393955920 788810788 827174481 305182427 58171211 872428381 240145493 552398317 141700416 1081061 140849591 663895743 404836205 470701023 440531581 231387707 385084200 709700144 595619720 395758599 280470771 750084013 458185489 572938702 249860589 603402 216880458 975297259 270947818 89288903 330389994 942841938 726283674 271791205 773425563 80950567 453463600 930305970 997903339 282704266 604916693 388098780 681036589 191267738 129056780 98680824 561933703 268130530 832662415 702263466 684536625 349194697 445747305 371340181 756296201 590367460 113719469 222056092 328308841 441002644 754443979 94033741 81792761 536020516 312289833 619943324 163870755 921647412 68587049 298310782 670382797 892274919 121866694 909628758 779583825 213457635 213488141 149157657 860078641 969461368 433017338 422183096 267004352 193646444 828718399 727247912 405379198 375124355 176204613 352711973 459491112 474270093 732185045 416136464 128158373 164980304 313046385 153618110 903625876 300237603 450819745 577292498 626540901 842978372 610614122 838498941 244800664 639524453 482433397 426329969 650427242 815970717 608095803 195382246 318846874 246833378 908559319 145548969 721972582 903050663 459797257 414929354 7831362 695592751 32296657 383276188 872041804 190527915 736454153 66465905 565824628 770993835 428436037 111354037 831936215 104303951 488564961 411280858 234073658 159032359 737001947 858033737 706664075 577691818 310038047 459179975 110618539 763562402 766159896 41035928 86219580 656435858 686488308 304712007 779770720 846735754 68704216 202935275 739372459 123193817 658576099 711911260 315507138 69283623 939018984 176970330 2939578 594392075 586272532 684682585 431135102 753575222 573248429 617184289 807883709 565594004 389204627 173510371 293535726 946922738 133541155 445929363 739776416 420052684 981389620 746485520 460748220 750664311 679156493 998785981 178767613 518344621 984480685 301056097 633733055 748555146 886264720 608704272 630951361 163568336 517211136 771128078 590459902 56225453 786649193 685062857 320928855 618154069 762458562 412869241 217805795 50975827 945799718 536428707 395324350 652832040 495773685 621186962 133965585 628409817 455053971 117272094 47718778 95888855 832455636 421580139 547354199 448196383 123380876 552969177 134534888 949366242 829032717 140144787 569125312 146443429 935423603 401691420 986160828 578842006 941497729 998961793 150379740 801503574 483679698 114883928 615529393 173018600 916587958 879912044 41477367 110089299 682316826 675146198 181499573 963794575 412301027 412353868 679242913 70354797 337299488 676571642 481366350 201726143 284759335 117200647 790967596 482342880 893091954 16731648 22841087 373755914 265992316 818073983 21598446 420048516 571257568 432251412 492370032 120546144 828121261 81102773 612282435 963767303 435938255 443243255 452701145 25548577 660635265 202601746 519938149 801871316 508715973 34536033 949768868 750440811 520276860 267679588 490548607 829079760 579318333 184365721 783049541 701454986 195440116 171507181 272186538 181801186 393450169 750954281 628042165 390884803 998890496 781999898 400747300 953520872 633996343 290113368 210802386 182107250 301631473 269606919 435943184 399080754 9324777 658144334 489738705 7316541 191886613 505267835 293966566 866293378 462662747 890892014 429079245 224566373 719852477 925818869 132232366 639078762 36511341 509537847 216297489 210806505 406408720 600834663 495993362 123658643 949844917 27802686 15974345 784165047 920740542 670632718 756062327 757305782 104305017 155466650 211604110 643099473 874568799 693767040 643260545 667889868 214002512 872893675 124183331 873364304 75846103 978770288 112285457 288545178 568905028 724258254 393703486 25461354 180822979 590498290 313907527 507627082 70368532 525802643 219073870 173989928 936775003 802761305 991070082 6473746 749751389 819257253 988100093 12485508 629096065 911431635 125868453 250233409 777264679 191322981 12008611 571512038 627644769 554119040 362661552 473658446 535145935 615790883 744495190 256999654 265748240 617338468 797386745 537019976 755243315 958313671 698897612 522856289 212079759 877028724 390432611 102417403 253327580 663261176 381513496 305975156 157177994 249176284 498813685 430764285 299278132 552492573 153398977 23160400 288435758 631659766 666695192 353164447 251591186 502521494 144898713 677355680 522911685 488535712 652596304 976455953 657542925 707772189 953957578 614757287 251714649 990814137 298552123 559538390 978923504 56070440 37142312 139289127 338745699 508443817 505957657 605340895 6188561 372392765 578083326 478645863 355186858 475492960 60484280 411096938 800401308 189323813 295030381 862880359 267796000 488762270 181486676 725371957 513088553 463325322 876489048 163491358 118963834 221623890 774676007 189780596 742436215 831351853 166069032 348246165 29967097 592010908 120042184 373608373 351835867 906769071 380796934 839421533 973432119 70227882 201430419 88960229 955078808 105379853 860350401 918671492 218425143 887796395 581758509 127771939 234599578 342933804 233130234 468372873 701655748 925905207 668458124 338502228 130388401 369265015 415758915 832645222 22895736 246536608 367600185 84248752 997167044 690955437 162326852 741181700 752246239 410672564 114823580 576908697 611963737 961013303 420110530 805528984 670986501 280365688 869697732 438305070 340172815 644156364 401381414 937854895 862068162 899778348 899991568 727469160 376479145 356054923 686367710 874508337 159605045 459411754 148151874 671068801 815983989 566518955 53317042 308580735 831366278 634928533 921494563 550406968 104296778 500091778 465665342 575969382 565281055 584837467 676964390 219399532 421617596 944630765 227802007 157540676 180070693 508693047 63309792 360330169 20624187 1879292 844738596 246569252 418977591 934997577 412418193 400104049 988192149 327919389 232081974 99500672 508249222 377855397 823119135 506475252 584558701 337407270 288848661 760666815 176102548 268646114 828092703 180337791 234233216 27835294 314628496 947867142 170463451 693734655 365347388 658653574 805942838 891881874 927635005 208167254 304764058 527168870 65416721 910137910 454362475 498529543 71918650 655469101 871982341 517122986 335278926 586679845 807724198 554366217 612375363 267755164 596284737 253665355 843161501 743117826 945046516 29495825 990867095 669265878 871562310 30902183 153474320 115117495 489095239 731564686 90258642 609983899 56262581 222703244 191929458 426188803 419531186 578271282 579576893 753906218 179832933 653952784 742880841 686494813 128294596 834346103 850492995 659569025 192068183 657616960 504715967 716913643 375435437 649601899 106892970 782946176 566674997 810947 748212261 279190528 625593540 603610286 321452862 622453391 472612978 665707058 358118623 816439196 45716080 285864232 760310954 623794252 539708747 470119093 47475031 427022545 244832104 862886293 542721191 461540786 284359088 768408587 724366106 832780230 569881414 254544540 127738946 232715629 66569072 979617840 247880053 460837352 71846283 457814972 568650083 806786991 58389738 586417117 813789047 143798043 940881520 816361317 960549470 742720140 456628351 143557780 29699883 959394495 836298651 587643264 951609475 477865464 591099424 611921542 450013536 908549068 533071197 505672952 961549844 781115710 917352041 329924955 454752638 245860028 617268672 654264097 814676842 192507851 617463868 95833066 641708458 470665975 592266269 682186099 357786501 380057244 812535411 185916065 667579255 278557945 886736280 962437777 33846407 902170218 876116727 863934125 281765047 668661482 831487229 87759352 690268943 319825886 811925178 558053433 953225840 463544472 498133684 737261066 488570717 699257362 680687319 422351667 674349277 458282459 493607580 230550986 993925821 591880995 130948229 451674989 865089759 454328937 167248752 607326514 112191514 600421916 777870873 247486956 358214933 325335421 244567561 466080624 550133032 329378849 929228933 29063512 31154572 725648214 647354466 270628685 767743386 242635559 700870545 101124104 56390284 447760273 256504817 991815910 113315178 347269123 50152019 239471108 876901197 477243935 980959017 141514857 770416548 828477813 106536267 730979195 908831545 970879581 497397934 740378750 100253209 922214939 578995133 111220181 768103112 245761493 81459821 848744427 640826448 655994434 120977016 874516471 164390363 31532577 300490784 58726726 700598606 691055604 642803140 932538113 898464334 666999506 789896057 419006071 881181661 268057001 98801786 281420795 959319017 787833803 737663373 489012625 462390882 393545494 464199708 709718804 613436351 994962453 327728816 794366173 844737671 434610219 368804234 177879522 830243642 410899516 819475786 807238991 414476389 80429496 14676661 117520828 444729524 462611969 591950131 357929738 763507472 774862749 812635314 139636359 903038460 857087979 504032119 384006019 113380945 998300597 277562088 967482437 130815652 635141349 942267084 71873537 856354333 551791285 539788153 126729541 634092081 535169508 259747009 76941772 166065633 179569847 481405041 187697410 872704195 287236195 668259019 431384742 116068472 324746778 474232260 767074260 642024764 773209080 734623585 155512751 374315727 557276787 864974287 783325280 995758517 900659684 258817716 562347083 540131848 371478110 324197513 181295079 586295256 351081015 176698603 509688939 983556883 954333046 774500242 343308223 368226264 320538103 197147187 702247409 457242649 407828715 892488155 499756931 712435023 911656761 283420001 724744533 526142688 201858495 304976243 494138453 769189560 509979369 820153847 172317579 897401136 262947756 595206063 973434430 837189671 387919782 526376184 954845354 273992183 625037802 629944678 367127773 360892766 661685544 60749048 610070114 333214209 948768965 779052390 829017481 888749760 141001775 331111397 688408166 239070171 37805403 738285112 135140757 576673879 362885347 605637452 802834916 858543398 865861809 525742883 607587161 501789746 607571279 20304816 413311272 38276942 558467204 718026096 99803758 144787078 555416295 326214006 607487849 516036271 150204629 43283090 557975886 586541589 805803664 841633890 983365067 957072447 506770128 143264262 178699608 710554770 975030247 727674737 827556335 11599804 439384418 647065596 812215780 406014288 755765618 228515104 408595829 772940884 768626777 186593037 498526824 806643030 778663405 740251711 395357781 468214824 635541262 798765498 440745812 201041673 570073222 999159353 655610033 969804694 853357154 788473628 315018939 749804229 22770682 57399715 609076824 683011479 658079233 874070572 587746960 909447914 102091650 195430889 60057101 437208892 668898713 77450748 727107099 641263285 516371574 929382900 645467044 481317313 302547206 522820146 790141469 817214089 966854994 698056135 210611510 749275461 286436259 210385754 856187391 635664308 944058799 618223896 69496566 260224172 910232889 697035785 185702445 484790277 888517289 608718315 36586074 649361697 316037707 844978556 43412653 127623665 232354011 429922921 115753469 9566221 513180260 942674490 610154035 543166880 24858376 970302644 175237592 677962287 754785412 907967723 889029839 740646591 66321556 233827696 453335189 604275286 99657744 462601326 341828532 589063194 739840551 782272309 452081444 171037400 665289096 202674272 517559559 530555202 522913035 435751757 684899198 571216183 807263426 671101735 480698411 159685899 259247957 852999061 90753822 194864943 831403862 914026487 952145013 677935177 78644395 421553414 195941538 385622925 768295030 968950706 566214808 766897461 400633191 838849559 371884666 960405341 831492458 76050740 894177798 510264639 462983048 599082253 880803438 131207441 884176250 131440622 808152854 833295778 402143220 34684083 510371889 485329707 290345670 957159585 962607492 14389647 408642986 353187694 872880694 936684976 497238986 782327941 917760550 921048924 927955970 311327975 656766886 986249340 907983487 286087372 965020185 745834910 166096399 968579615 986689367 959622388 719725189 139798975 297740330 973860500 799165359 66131101 579955296 979547927 384443817 184302148 510061468 621161917 526523477 612068273 594915449 350667159 586736971 189413354 311310518 959862847 537991628 521519116 435664160 629934084 690593526 180647503 125627044 706558129 135997910 667971232 129128182 890136485 462572484 844811069 208088974 850299991 189042224 712069943 989227802 880479052 874204611 704731438 286336660 606429601 192606407 989096654 240509647 593771227 265939811 155335495 488559203 337997292 608854013 77992429 818496407 604920685 801262081 910879629 166738572 500620962 345856374 155108827 713157652 142016935 907558094 66935798 736836129 409115014 831386742 114136508 660645068 262647134 78361461 565005001 59031012 874154263 95984099 858078713 268332118 549260324 692494138 615164669 511685587 678240167 375862072 910088122 169832747 543966165 71340136 968784208 866078836 876175911 918199826 241493786 220606035 972622287 37797991 267140377 261094254 264552386 266767560 277981984 747948249 737726386 841662895 861529704 35882116 68733533 664538279 544248133 732059993 309883829 398131017 136326139 364858211 475248049 343358655 893191412 285091838 402329023 760826066 298516830 203058437 207535326 678240172 811854416 951739901 866318599 116601358 763497038 693693762 743816385 175977758 403255778 596835879 384971146 535622902 119847872 430197397 271534010 714862624 516695301 845789652 477045555 904535139 535968652 794053040 958154791 820173651 867456661 515376868 597572600 169240534 310449 394316684 651004712 895020441 715013655 152454151 523596524 276970870 566691344 625013195 316086454 448489641 28480515 630257089 150228407 198039094 591945503 789955900 85739068 469791744 625707560 117608089 353092736 227029552 689681681 406365353 623020175 585202871 305408122 3534883 251156804 632359594 188579720 168821705 124987520 114494463 893331800 828466985 417737970 569710157 375875269 17789477 970773227 746586274 91088477 578913188 43941579 461126559 132919998 201549882 858045703 673634517 680693321 762523318 960665306 108278108 415122810 744589314 437927632 713808678 867689902 511696824 923247098 392933541 984592708 867472109 24676325 898984006 276027956 218445397 737583567 550797255 183846843 689520949 832708920 812101813 8037278 232319039 615662253 339103100 329655685 59551127 2754175 192360185 50958596 464933692 379000030 407332844 256044034 64958299 218801437 218562392 94986176 585914066 307516462 427372829 320875261 708860230 666894851 419356303 852028182 258622567 961577965 877264323 298191742 461174698 198330589 949493334 654509159 380106416 513430914 273261236 803401148 460604373 828662864 114857698 169330051 987141243 683716079 513409045 980483708 386836298 147351347 669870655 969307392 851680302 755069110 770872257 275487988 752190139 432723344 147797872 941010644 129108856 901263049 497151974 548119388 138732044 356388774 790670014 643954575 466343066 789166920 506847309 74048711 381107034 977680243 257280892 747321374 158404217 855952093 689923421 561895550 318898336 381645869 133234886 47614722 174441333 666593399 446200416 536396429 107828289 527400443 225867214 339435560 954011512 829956077 911670153 68828788 267968916 552181954 960010551 109713436 177268462 356668417 182298920 550740054 717115131 701219828 528846001 751562794 843533309 648478800 751504014 345198204 582642729 215872910 85252163 49562745 315158713 252132755 186418765 95105722 518375990 633463697 26891445 932979716 380100179 21320754 687776955 703275335 711657390 204725197 735233713 376257475 459776016 601957813 440140943 763118198 140490899 777738234 55798194 140623100 669596415 683012082 173375461 231123362 985884961 203084378 656980511 825202269 341948197 325636302 731686840 144764599 793509713 833582889 432419328 238930862 849513248 876019655 129021294 133771555 801620372 957725019 405228522 923351332 406003488 725802667 257824633 349321623 755200098 715731350 373003646 289373975 822135535 633134323 352128691 380987091 306562357 318264878 377365228 727126866 524372292 532746891 877879041 634857812 341013622 642716927 837921079 101157243 302022792 231447747 184551164 949463277 402249476 928348635 420656553 374695411 825446951 806033467 641152309 110695321 473933757 699132982 565279519 835599892 989992165 962158497 612587985 48563395 434411017 963182958 52357334 364794801 755493838 558400421 770952259 485246106 870107613 473482904 918402765 407960126 588681831 641323237 434611081 766106747 279863067 37822260 474357430 637908234 214426227 461095649 46693922 960039644 712523709 435766940 691608070 734755129 252532417 393339967 786554515 690527858 826801846 176455832 46013733 344466818 885069109 56051984 491851556 149156001 863427217 140311354 835105663 267255013 200590147 876109267 875307398 282642018 489580524 120867050 341295070 292751638 43955414 539500196 271600373 72401153 3363908 848689968 665552275 777411261 266537653 157629039 463838274 923211849 853814841 251509185 381088197 271135682 86138394 907211631 18954883 962945330 711718428 908048219 66696611 662103345 443848246 881715421 67098674 428866811 502777296 615745131 499784165 337344881 951446764 307730472 273600257 799593648 122355054 160170926 548171448 453780270 670770780 736200013 171428849 242439658 581594789 453335570 339715003 106718213 203390892 700816863 61284481 698756241 912951668 371196078 821544357 777520000 817440904 36588634 811652214 938136675 985896987 192620242 566811073 846370677 840017353 814950998 847535343 543821532 389237528 908341971 466507460 642327802 266224909 544217174 472295790 844985380 846011778 787998552 362577845 551165433 474188919 38683966 330064151 450357388 695093169 419858930 5331450 482301538 433448165 376017583 431639297 813203435 139720013 578163683 835587731 255499246 941849864 622979166 414509194 918914024 674545257 981771206 388299482 73366540 74031526 632835316 827545501 483181958 568709671 276966119 397218695 139291362 65472025 648331577 454743907 784101329 102599631 308535018 274137839 434561611 988578213 328976937 113446544 392985961 301773203 882875362 978077841 529699840 227696936 656627091 721155290 732342098 763195948 285373766 492419604 988365665 313853714 997600084 107591361 711710044 181870624 640962495 712617876 313538078 546693823 502574071 942123149 710254293 4613805 730777244 316252581 76159800 63074630 275844227 302173796 776419819 522769279 362151488 11390540 885237138 942674802 798842207 691774202 550166110 129398732 477110504 949278337 604963278 545456282 264729788 130888155 69034471 871080416 262030201 455843875 605549702 426389533 462080206 288554245 89365795 795993197 219573979 889825347 253234888 404378770 270055896 316963942 584587499 280389135 162269563 484410442 943053099 27444478 699087349 27897591 559413177 828566246 334519252 598782183 133513136 210301723 570298810 646886554 184347215 583281049 222799441 11951800 364153015 693424423 327995846 574640263 588643580 296698521 156541624 261592250 786736294 564415841 505941789 50705250 588440097 6355270 559100711 891309714 84452647 736118296 796526100 860675601 241621445 852880910 662282988 256825802 589093556 10897112 90379345 303215257 168439988 651253706 527395961 582164810 405817245 353345894 371983703 622309471 358610752 632442196 945612627 947482384 104455817 778123389 487296341 111983482 258959270 155569657 305904221 176451224 586503291 727237383 932123905 813033989 372189588 349867190 136527181 218168041 453279000 594537527 332346882 379678820 921915162 647174656 716912337 54028907 359668742 244082967 703206514 305469488 460158330 238262708 197919283 516905901 253060703 749460241 919198242 365116552 764551563 36530125 769702512 127455683 444835405 751771066 710265914 211847226 577840097 383050539 142853622 629648098 750989981 765983826 156481467 778383332 534099861 263903979 817460147 154862104 661764889 632552210 881245904 100172958 115723716 862950825 65267882 429669379 435946413 897497152 280440027 683474440 366519317 263343066 175518997 844841789 682781212 977307327 132466529 244177522 303720123 332639166 57543510 316452159 494883192 17970244 299871220 765951438 681745025 368941128 998310284 25874387 577152055 143229049 263579508 336644390 267335541 330660608 736765805 934631476 152817572 673590250 665016196 73736061 517869396 945821760 420483936 613252899 970071510 678833194 611865027 832328174 48129123 351172883 622767627 775492489 887574160 752737677 521826033 941347233 570475321 6617633 359846912 834903123 692332489 888856816 404947486 800506051 123516302 245381420 261668444 828410277 597229738 9433492 368094457 185780011 894748729 300264239 741532291 302762525 392280020 514496949 338486491 193797760 714011892 907815756 497617476 904888013 574778759 979671610 82594000 204936756 190218097 269533179 241250382 388159874 974816775 745641127 614445805 683957212 296349058 911591430 579957535 349225243 877446260 367651555 425100972 225805856 882398381 137585031 387112341 409266745 569541528 247240175 739018650 283766593 289864607 943512157 962187549 651106909 458225815 387868202 387745331 879895371 355754360 280510832 995041074 485196146 265995493 711492985 268652521 76318147 906745014 673403278 386289597 989023230 418684861 644278202 750976954 564333912 622285140 774966845 508915569 619202140 830260154 310024066 480576589 157377865 882079770 535728923 172668194 642775784 845579037 239283167 239507922 152695071 461732291 735783525 849043967 289070509 304297974 5349156 844837957 493329819 835356743 933653702 697504438 553221623 139157206 592703494 693819959 18713912 390489129 723300774 439448894 886280854 777659250 509368814 539492435 87045058 739413687 918758165 998122452 830095906 253850479 570607009 224870410 839091789 348412454 609811287 543661781 689252419 640905320 821386544 350156989 923460206 862642990 887133948 414783190 488625247 633472988 725079157 571032900 838579432 460328769 40528421 407452787 464523478 375421428 11067682 514658491 806331473 278536937 139120771 880651030 267930816 971380113 256443651 598843797 455355785 789710481 664929784 620129674 295677184 965405709 208183113 796267071 773922657 529255254 932396905 885478467 997803635 161871815 765464489 450634816 554102512 464479291 623467498 969533859 721260705 188361087 483696083 668646935 228815638 686777129 502709974 285341319 60046975 940378712 548757784 609806639 158191997 619972231 465770107 284729312 455441306 562293238 156907916 278198078 41615464 966859854 49932801 735882129 929819016 960630971 825074021 537772788 345901742 731629116 324131329 77423286 353421228 70985244 575731378 719985962 165086861 320453483 284053780 73783130 391049889 875996031 768582359 974223970 748314822 990157710 508242903 431951899 58646557 665414607 672151606 409096486 68540707 530051958 958547905 3854183 269454768 275684499 257911427 204648961 538880706 640438831 771250100 396319571 843949959 90716665 763835799 666467076 973234585 776289641 32021527 899398675 255066254 326929189 715738571 552864765 694322791 77119639 64132455 645477268 116662977 218296263 824544434 592838345 526640588 524379150 817944895 374101222 559285135 676131299 763869228 868083675 274528488 629177948 419024310 145943274 664377952 978306490 512715500 487837664 650160771 166854043 743425056 298004185 214646448 778540916 946558498 370515238 395487153 251091778 638337995 541682274 403066224 691899774 535312140 523057550 601815035 255257916 522806310 270375052 963935259 859622687 182301234 372043795 124830938 396177688 484404863 966127368 548573700 487036207 54796228 427574842 822273485 309870926 369348034 459014013 843324095 189765893 788195279 857064376 527310856 719486500 310765750 327382021 482833742 634700099 311827144 477642650 394446045 93898576 905630505 744834143 703493724 579936576 296254558 499157217 587764413 21795224 967297907 942697759 701123555 222909405 440461986 485033822 234352771 877608962 974052897 758329513 790217454 451026698 793482041 158185886 153028494 560926755 328027794 776357369 608289142 233994720 948656959 816862537 124091870 534469636 936063606 253806011 950827119 682332152 213088989 853350706 698085869 599876129 188577328 128681888 251680959 122354680 907388220 673887373 121303963 696014189 689270696 287092325 811333270 379450829 244441468 131458797 366687577 447362439 359774093 780452462 232666153 724434975 181411113 236337681 99657371 35631801 228614177 420239767 134603230 281957866 126240978 462177881 106924462 438696859 354424244 611326401 199025840 268872513 237196702 803795931 400594505 946489945 557469127 382848718 556140254 657432083 840666328 105181123 190934139 619064043 83404570 117919679 558674873 18765388 336607659 900365915 959247304 454563765 454679968 488241720 203538521 791561218 24703953 379264902 608008985 717592903 923792400 527920690 8355002 533163092 267695359 873918020 273761563 752374082 850621127 270788419 362884091 305063933 822226179 588729514 550677106 510140307 334697837 742912038 368484391 769985960 478109420 285609654 321988519 67772887 908165659 612873045 631416693 553699180 155079433 258370976 175976167 752973531 933787571 199870170 391157065 552648586 695566322 143243877 401242055 772052901 774308307 537684820 491097574 217273989 650170327 95781000 693368804 780709895 434549869 873308452 706729249 456744187 243583161 212432345 177993424 703501157 877098777 518580256 429282030 918675683 574219194 801753929 486006031 960086906 480035282 243000771 15655109 96196469 438293319 399734720 955701554 821658526 601259295 637887185 344188539 800868366 758615135 343923037 321365842 217145303 624270843 861902274 621558683 951569467 841946759 625025282 235149200 293372264 574894004 297402978 782203107 807096628 453011423 574591977 980449698 426775548 393916695 240333642 270867147 249795747 50176159 210782368 110983228 677049109 49030527 968563258 688760059 288326619 462189507 570614424 791091807 914585848 421940478 426301952 132317658 605125800 845690014 681862062 996168328 817741079 992934958 323646368 102235043 143259193 38864964 22463097 123201384 457596330 82181536 95747229 339118199 348216812 830155154 170083221 600871489 569860605 309677332 30894122 604163064 444300571 906618108 34676336 521612988 785897878 875359809 842968979 479342152 875150634 216629316 361544308 907330209 647867341 755046610 312366322 485530899 901056572 207585638 121128630 800398194 811933476 583717564 796420857 864956138 431550322 480265482 86958583 149849777 834212565 991728601 406564424 178149013 909132654 578696941 274063220 88873767 187227832 798839952 567300927 565645006 527919540 574069580 885731338 670807377 43457443 547569173 404651590 599438615 8674943 931756976 100228794 330676847 92773154 701759524 505933406 856782978 662314105 794505581 776504217 814972588 842231681 275985682 246043257 976859117 737580036 63412013 479182688 952657953 721981067 281198170 324197493 484273480 907585220 773120791 272931858 467676260 244165799 31571130 615458723 881373557 45540959 119764730 221817733 37559278 105748359 321986 906373663 324280115 863286307 148973040 932353269 612564641 493278968 469445878 546316701 609052089 271774974 897551966 854222134 249812017 702725849 102490657 81928541 379230936 948042834 683113566 563633178 430813250 279163879 702899475 994844420 157821908 846086085 545477497 668739715 830408218 258830800 908974418 296917407 764860428 873200879 425809495 246135390 921830096 838783461 425528541 895483774 880251309 392897720 521949916 918077690 447591778 614834020 942529520 866429225 642707951 713211499 359964137 38278683 982680182 5873455 624375769 631028574 925528754 186262272 157206015 400280670 241233435 372593681 347316988 347165721 129596658 542495094 959540157 113806243 341865913 377540505 894612600 347247797 821953807 749367523 819611857 134762240 13769866 338106033 824248929 717614628 600450973 904600413 815251468 157025942 470233694 232902266 479101344 681124936 674188439 130789541 634020147 859058538 232753048 93745495 318846507 83182689 432586851 240138843 941358686 482626826 350334968 158765649 203255598 613166856 703493902 391621227 70187486 20912542 544205811 167764215 668093711 348922835 962905292 917321574 810150660 790926782 628352047 783168132 314252602 556346150 98361407 801894922 71798696 359940993 300883901 301715007 7499773 648238950 798813637 635243627 839385273 478037984 528946023 211818256 751521394 882293857 206233587 132283507 162636570 959643808 297095920 69601711 333388575 218469715 560025695 968194847 204649366 810972476 286974901 97085101 787447379 415245733 931173276 128931876 858126978 265549434 159324731 390264595 941150506 443809599 268612836 632475023 620516696 646839277 531469165 78405041 194711113 851983853 856617530 758129747 471659135 88805354 317148759 350259591 527084922 771787275 457835454 498219874 348848438 638836649 790108043 563704762 67706234 543714785 314528852 701869738 756037786 293212409 618520786 275341625 126506018 672638096 902376176 547950203 103153172 663593258 18631177 71728567 222178477 853270150 899504816 799702105 278142152 351632121 177734606 944769637 628186850 401186951 880780203 656189729 196365456 626374587 97793518 146054912 780676662 700092264 55752656 398162356 762583358 117543338 556707304 389300802 506379031 4260433 974808379 302852609 233363557 256375243 836329041 191356183 877326847 264837645 187488876 325804678 361153780 506548979 135485422 177585361 938572877 160766423 18817662 283585748 102622200 386814583 128234122 928597911 178438305 734967153 241938900 203483426 723759474 213062131 125225491 801937098 719442439 835199574 25375669 447054989 862436525 165447703 536336454 945699536 900507932 342596200 117295909 37748548 755301903 492049469 951440994 470562047 766349377 532543119 626939031 607236751 974902713 769862734 70358712 357041947 370128061 901698719 202383861 900406536 455114818 327832775 737362862 797565900 644282492 551571735 833166435 820412681 662830305 714396850 811788271 595757394 546811253 727783323 656674385 718715678 481120312 422548702 525496930 683024432 825247610 227650974 286405893 783521440 260272223 521086557 573141475 985845808 243949697 513315363 164824768 644184225 888166295 793416787 181812445 891268757 544400307 196173910 994105048 481491075 215355147 831699822 483271808 221104302 746053372 796884574 296084317 12157790 506179619 193728651 121261016 267541367 56176669 710432822 757877135 708845536 664044288 953623566 563572401 215210256 82762642 323463401 904427376 16427331 811322671 35189480 440107842 581733697 963750094 71452066 608306848 694418827 605439743 359223378 512900077 545276267 47932823 95400434 12532355 658340128 870101141 576533046 342329424 552352853 46753061 172751204 421267103 22949222 913189949 429458869 664712402 300173688 478388922 216656190 942793078 953080724 592781610 372679395 669881976 605048200 85145519 187878423 985119048 772688159 791735008 831348045 231222770 265962728 336192229 124840760 913986652 965967403 233250865 631846158 835384233 625427390 445949528 869497052 467847974 962915341 122468866 164969930 99598564 15327112 705579402 583867766 871335240 909409798 86196426 435106835 219545028 206806084 67785806 205556749 84415459 276859080 889503768 827561169 954396493 893790872 70883882 797228448 869610147 527223774 706272812 887434752 860661741 168456146 801779785 15007110 109373976 914440914 991979504 759036420 105534833 820920279 629966210 302934706 914064389 830276334 892683049 514801260 614317350 370844469 300433342 336878013 845120483 936001071 193163704 585403406 95504754 173496907 150860857 906312558 572959043 840013438 755965784 124837658 384465227 329390610 93657686 383495436 475389217 225307244 774087899 302033252 236806789 981452566 418252606 629938629 678953359 244993941 148504068 323254003 237841508 774547752 238916197 494375656 7616780 681028250 361872631 482805780 46645036 364635298 960422284 413559909 397754192 79696613 874695364 430417150 536046992 767868807 869547322 454823771 606383108 542990155 19015050 9254289 965310235 980367212 130041624 541627134 655961538 930789901 725565885 621719701 817045306 286610571 997189757 339932748 567596406 720097607 785452455 147534539 412512950 113223837 339941354 699400296 1558091 97165255 771845168 678667015 140113730 758992832 427115267 457767699 32661877 781420064 398257252 127477926 4888032 329779691 760512128 215931571 158981960 451253441 91009174 856231640 833296700 684080598 186733614 272851327 466844514 932704351 158347017 558756565 450135603 829033225 659153691 237261480 536999276 212559805 643300645 151739479 6136645 603535405 614103566 856865034 199054378 933578779 414964747 77844845 171766868 791826564 95636774 596191205 940290026 236131246 269112668 299726937 584955926 9295381 654811017 548586774 244948144 536956539 340889152 203099800 438350483 595921350 60910530 911958163 996117749 924806008 369202275 440124306 454250915 664184197 149570794 83696268 111920985 143172822 345533503 468277584 472173363 881142522 226961815 136112301 736504220 209380601 802991789 903524538 596708830 487930921 256848214 673529577 695849042 233327002 299577665 62402052 295604847 727459375 549812077 856985957 73491814 162590488 845945424 69930781 164006623 515586941 164459412 444737186 226903479 374676741 380120081 278093099 283907309 126780938 348636384 575705589 426545910 565681317 815165093 803636614 471960161 221341636 254131764 394265309 709729459 986249183 475522299 985118149 825034578 788711652 901026640 607959465 847794468 583927941 117807108 134773591 935379892 455264141 340220138 866495591 365323534 915682241 552075466 756530833 679200335 339491370 419011788 452722237 814590377 587604718 834814996 821897335 417109869 54609876 42065034 428894655 758629291 391598955 895723444 877561281 547695634 302656116 27445130 820225181 374239387 224917032 778449652 867005813 132498232 787167650 813084736 345120337 338037458 581264731 347135444 549844083 447126442 208706828 188393590 918172744 974562241 35431173 988975334 337876390 831309684 326312755 936867753 791466269 119039996 268631163 122719540 604994340 756712114 204789786 95299834 397431911 795718065 945651919 782048828 398749593 103948064 163347126 992433268 126417263 598405851 301112500 616022035 462053424 808188592 118098608 879649851 238574854 307033948 437614195 454660729 782922818 951906834 777038528 429650968 911228297 19713 686308053 875337960 706279524 584648777 629949755 543716995 65300701 405023436 313498180 32775255 380001435 694557708 764197707 227494688 326152065 731168640 144464329 178786771 867667410 180131193 403619740 694075938 546099331 562373474 472837707 386071511 934454925 135058897 313415459 775155270 588087431 434256921 871252206 800985208 32197794 4868088 743374593 910786717 654644465 802094151 213112763 2849409 766776121 732514798 38111771 268257040 368970668 2238089 808162108 945097089 161416287 272798738 615362607 716903333 955232347 802797612 504404996 748307136 251829393 174515061 742313453 601177938 746281284 414184424 259460801 374095341 458600558 856387730 798277589 732474595 970851331 244904232 368211814 709557254 200415295 984064446 900302691 74060234 49447820 267890055 46137300 652365494 35701156 168300982 770057533 871059321 657807846 733297480 361343577 200060335 716208782 162081020 283690356 580335828 145492990 278382535 544150851 924531418 353033019 111340142 969201666 904674486 41958353 389671569 435438880 104356733 952773920 548451581 664939564 218092584 236766272 871764788 74969571 139947941 328067373 197202321 92353942 55032463 577067948 450874004 922525671 634706546 477574030 445590173 812347275 871103468 555679867 479325829 870805564 167557200 927770906 47960087 359973886 463401246 150700781 797458189 479362708 129777887 364236959 333712403 727813267 17879241 945000133 886043177 754592458 561957064 861347131 271025843 119722041 834468288 262598678 834511158 694402995 594636670 68066510 318981827 833026350 694204332 933086172 146811753 372146475 120451180 868416334 113164577 916396253 522590232 263191728 298895253 620960378 805315214 927598657 693760110 322248613 661915630 14520676 475032360 462375755 36570885 44727309 661110391 229914905 955754659 212803598 957025439 380438720 162772534 490365327 459088407 648478749 445059650 174711658 573632797 840020057 101895953 521956645 125638444 941782705 479625876 875117424 167436270 974396459 600639807 986143651 672474018 931896447 690070965 861244380 313940283 662510807 577701740 602683347 763702955 909151022 510014500 850523079 884223207 838564393 628563629 586943488 266120392 915932942 470014559 534062912 512636829 350799180 943334491 636101616 975246440 666436549 506349769 59447153 800855241 220044677 42698792 60190414 510649432 645269162 424707714 719510579 586638429 857625821 599197322 273124884 157757968 943652067 224530748 755816226 986416994 591567038 422327535 472147291 150902855 770997527 584943449 698574936 745866902 223460467 571990181 471846411 893812269 923967878 191078995 274303777 818411588 37718857 17211318 866631219 670018658 620203920 79556843 336869046 592368365 282189419 842447067 104119788 466146188 812827669 218719641 192143256 929101561 266826131 576644153 346846176 90027155 664920206 482233256 584597963 772100135 646098885 148136726 686567418 159362475 673521336 9183294 565904454 704727613 25804845 176339121 345656336 845014304 988803296 43896491 255547182 510858444 369247371 503538411 656472230 745037307 217271227 184098282 157704157 935891835 452926856 785927636 841795174 344932327 711902657 51216246 970318964 524009164 329398023 361674875 236243184 203915076 252080959 654506662 225297310 401385887 383080124 108195130 818215516 959490928 322356183 896844205 45838515 643922140 849141388 538876971 234687658 606669166 74685467 122557757 99310819 696760174 842980113 467143529 603951974 904738427 496521537 946216885 111420159 539191783 38723957 672142408 380283283 744565623 721551720 945505300 759899703 204413431 425566020 772349750 270813414 407568605 361744246 284477420 202111917 788625416 708388985 20775948 527632656 650365773 606122745 906142718 486673835 362177801 431447567 295052176 679998175 762931141 572965334 984180547 896119511 322836618 137128983 718572586 473392425 315739814 354738486 508211457 97742895 718171190 928536746 123793462 136523742 943067651 947604306 908656519 616882038 950989642 217554936 340591686 725149804 499397553 191099373 206252398 416635597 573013974 49006590 424204986 213985553 561953083 153872116 613223783 447131474 107295867 784081039 891727434 566239416 965544094 537568839 597645247 564866453 84959728 284172289 682899766 113494086 768369945 577307026 430893346 372481772 397100505 776190080 510918394 257847613 544193281 958574809 382091601 33279720 589799094 18196742 356433097 178665618 891632297 545920557 492364534 66606035 45364943 750538912 586466550 945261527 332374688 135642356 109553353 211653444 470709396 751762485 555873892 925936431 923798555 775336520 669384275 467716850 474185017 281310035 652184699 508835964 939671028 728733096 575672794 599386452 885403308 24471670 799636826 847824188 820932935 671757701 37566414 411383498 442807459 981591077 936289182 335839861 135256907 2488697 683934725 797996664 174261127 139168727 438254910 510729580 136024022 518180745 964094394 497269081 736331720 503286418 113728092 657529275 181655458 918472110 734981319 256526732 578261676 342506442 444571906 168510189 397012465 993572396 135977820 332196111 245684188 257800367 463494610 819300132 357999400 537812465 105366908 373724761 236922532 951426873 932123857 956704069 915649427 839170346 643660941 64469492 61664909 515086499 772352095 24899063 130143817 377261251 691543001 297593733 709755016 377371015 471902257 663730169 789531801 448853856 207877714 524282089 863925499 234686490 758994992 560713945 29774259 568180620 395696872 247959406 291181465 964872650 20376476 372881953 837721099 598969457 133290166 660551018 275732587 231794631 32056691 730163421 164574043 15719917 544763817 760055620 813693902 249028890 686608509 425217579 850864861 186991625 587005051 968739998 987443159 792348024 469633097 209883884 156262348 114866084 777681307 76462714 283970757 278801392 384261828 629344533 967001520 793869159 372851398 256798329 770035345 115383992 247659407 658123297 560023113 407264173 460198125 11511846 764388346 313896409 469597841 328010646 44372702 222831336 294444377 946839234 704864276 297113218 817410869 447537374 309771995 775633523 108965475 618414542 766743729 727291735 933577188 453275785 84138044 84916321 155364530 861654273 227474485 267745996 745596078 739068648 478128615 246791792 241239313 883216827 934389298 279129396 575165203 356614603 369654489 291811643 290959803 512033730 466120761 627114031 935320711 855707714 226159443 376987567 494907059 518321580 314451366 589924539 671180958 951546906 517789625 822832148 411095258 384756540 598023521 275447419 875191034 400244664 715067390 655023855 801651251 808815952 622281304 507379886 80270869 92841554 238118018 242678774 971524097 221629601 475575483 583598214 800277867 228892064 990351205 974478786 792271349 188281465 641346231 149989633 734021338 319861103 897318459 605402240 144833975 556415810 771479370 197348347 79372275 190425795 225221105 32321861 94475623 479122499 162305493 201521448 685964627 892042187 429762015 278316192 215444269 426160623 553836280 377994719 738102172 370184945 948511069 892591989 399523571 958884592 430440918 162875410 426276420 863159642 266013897 429631997 540805493 290385539 760638314 574897325 145359534 141245856 302313412 587962237 786068291 89228830 599859710 604073541 371154852 778535922 235204551 334810106 297152407 19917236 431660278 92123825 235156952 934647738 63515615 969981255 84304836 803409468 868804919 600988803 700500021 305107607 801473595 321717977 161660014 38998504 351809102 644386442 489670573 789794486 552366666 745394344 976838467 457168078 890962248 767123865 143726014 432599675 720130676 118955736 913434524 737536090 130124245 621017902 220063815 184454913 108278561 209053414 604011741 391692276 673070403 920851109 275664052 709422083 77506054 677578190 792818530 163543788 778339323 693292742 605557206 508438346 780869213 29202939 955833262 800802471 532079583 480334887 773886687 795742096 401874692 897679602 333917043 63026682 606002875 908463269 506577162 537784118 128370859 233834802 567123320 600093827 364281327 359969945 118945239 324968287 500447249 775188812 227924121 363797982 972474383 53924482 686450534 497825268 350084794 130686525 373277523 164006771 404144370 1666437 388868239 945885116 810035359 119775010 322912063 381748302 14225567 38761334 807862880 318932370 811403173 522742226 731834246 258323515 728999728 434600739 163964490 390327312 959884341 140137201 251388640 113803289 110902342 499919588 522997689 564937807 335648081 246236815 36941389 440929582 915134523 34603634 314269319 85430988 353726792 710149704 504737600 57770799 514086007 541193802 273749406 463498610 958050207 319376708 673578980 25215588 942103300 490938417 528999418 954388263 369742091 436554040 224969232 758904666 644980648 665946224 441593112 863726088 436922097 859523051 974980058 847770394 247077740 652877230 533197437 396842291 806949214 836820806 137469581 272601168 702055599 738868195 803181566 409918915 227691184 974761675 934919530 515153736 63608361 282122339 957065857 476252386 345447483 740944655 957647499 33679897 761204184 195692487 504270628 128373851 913852392 851439968 854085399 521312509 723221940 597562010 754200327 848485915 516377914 6845070 60711821 545551938 177940824 753427485 537886621 247540206 893234403 574425990 113649846 532598491 409181899 482405715 838414501 482222381 215999976 763901372 388760508 327590320 344687529 956959950 946489475 928771981 293386254 729605552 683445850 364875353 282722127 998927711 69935399 457501146 787304589 259656500 366252229 122133158 784480414 562993565 159492576 14353356 664702545 31027368 974331032 657957838 543631264 217812388 666053180 676998284 447298917 397232610 334882801 392583478 564711973 829243866 989408786 349677998 333643529 270357295 455968133 435400401 27685338 912110443 307576515 460077075 834762133 365050636 440661402 876960241 196667397 945657420 223553698 419761572 185540386 304473413 583253511 485026900 714691562 128734263 549075217 854293952 611491560 887336638 351119291 171903761 165814788 827564601 360729615 161790911 18231709 531029856 395798805 760081079 630380046 127386691 51267102 939979143 919256128 178855058 106790175 437930335 770129517 239434828 57029750 373819429 906179815 613963634 238813292 394041891 664205572 10834377 640964827 261253668 910732596 125846910 837501711 717442231 787652059 318547170 594203943 115094693 376128152 950871821 169844286 395841978 813264463 424501069 33443463 988161935 194983765 529909801 126989746 453850344 161890703 770249907 905222661 712735845 818926461 722845318 3452306 481370260 737255820 70340265 52421056 152299643 226175038 547697393 273910828 852740780 508878015 846338562 164344061 49210753 320334495 438747799 248468538 853676426 552206104 532200582 444164843 428877093 380959724 873397279 163221585 532567342 230347964 227979706 419534792 648988323 323515048 672277817 57205626 605832146 859341543 214282826 925167203 224078630 702999817 508760771 631923756 793851685 247267001 966633797 114552707 173469344 668030363 465147736 724978206 216056911 410406450 953632500 877624865 687992947 545262363 456415001 109901368 706015967 646396816 565471519 956753928 323178825 658199410 972745647 737063028 356759652 283325071 534778766 482026032 705748188 799149865 151581632 539996111 319143206 797125285 101840965 752409613 985547677 621089769 652374735 200575895 665994860 53024623 62012297 336391367 57502550 914741618 67992325 221644243 275150690 468934657 5489736 141929514 75559722 713704741 928534315 682220910 412366011 937681500 693343802 718271915 77837045 294070965 422200685 868017450 188947689 296570607 981322959 46825024 95501992 903560609 180117494 137156617 22590390 187319753 103591426 327406731 672752154 752883627 145994633 406816614 718980564 650171080 537201720 403588903 364177627 79069590 528282663 807347784 140599337 883069951 437331533 779842825 394930127 185665557 847842704 941328836 36173763 823125898 11704469 459968837 912118800 229789289 707855612 927689674 722183629 516655807 416248196 454868974 584754029 557614729 628434217 276022332 669995517 591987753 451493173 709795311 434671933 999372303 192296489 154144231 891352285 443167449 799017730 43605289 991493615 214522959 956621014 670691508 79530882 550304487 123478060 123151618 585899688 136291349 825960651 947456768 327995026 50860877 441662757 810075700 339366276 511606101 81660485 729005236 912907831 529056394 200722548 171451746 242562271 881546206 55320142 207346347 867837142 532223064 232903081 650676026 267370464 65717595 583707585 250212207 297803747 865409245 875256577 701686272 797082960 454757479 875164962 6665647 610071425 797509797 986229324 862615796 317977714 660017216 874727299 106783287 705096104 447120582 802014469 998701206 359711257 734979697 658405660 568510314 28096853 180434983 651222151 781099720 761234627 18469655 589682824 372341774 723351729 665117344 885216237 228608699 401285998 918066158 987747140 245940262 51233024 479837950 342400966 877382735 993187850 542165295 411365467 1796208 528913717 160401470 548782626 310391698 693167577 456123256 875868525 336502135 158590103 872277581 677573269 156216026 292586436 767508319 843624707 728389891 848160878 305232814 873318383 504486120 54515279 920413398 6503705 599921693 457034404 654332095 635228329 733107518 192200641 336083182 506301640 344728831 522606408 207833193 823486049 674075927 913894512 266347001 676675747 796631185 621243016 176694483 638737127 431841611 761092865 740140637 836014766 204905240 655198141 729276550 428294848 52099352 866708284 638417875 2354183 127727985 85859384 654633308 92684223 626572958 87747926 449365866 830513992 732013690 149252848 1286870 288981087 880053230 129575746 929742658 126033648 451815276 146146796 797203504 312677051 547321049 31005640 725886079 336659185 758965674 535134331 337163629 442966304 333935362 707095774 758567363 732421201 846470295 748240059 63337781 436572908 22483785 782276184 85586177 978210417 646276294 151687382 792246747 845934085 697800307 42909818 88364547 298996396 832474255 444135921 74313120 466800428 860403380 777431923 987465415 848617912 398303210 845170022 842893997 551430784 724274529 181358955 270118871 475266965 303046732 255311705 517196755 451675944 597506931 727032735 95268744 183759532 713053538 717060861 864545735 195800113 128865816 970240408 43161504 382935280 856131184 866387627 504684027 852107277 32707820 139269066 770883014 167859 903846711 41780240 104158822 682662447 840501998 29202126 652632276 880792318 737756308 305857848 309605288 309182066 315681057 922294445 439562148 93312971 282669391 414793440 688257690 732724563 683763531 321762069 695217968 605326349 213634658 612959630 453106138 215898519 756994649 415041431 435630332 912365400 681522398 139540784 894714695 540945394 312976061 914607018 969340473 619077119 435748534 946071917 312772476 504025573 625361749 158775694 466110529 459359185 686794255 930683704 995048786 688165810 969684750 816978087 957955453 106805817 326483403 579303500 19904190 152494687 854584837 333782719 254161822 835768698 828323932 336882969 830860200 848702002 233744388 505828662 366559730 765112388 24321312 183850875 895748736 921348892 816130218 216778782 907868309 208773830 271214158 45990622 439482326 142176970 43781512 22594810 303040035 59896350 43398267 637542029 659690075 216265645 507530630 630952306 636013057 810421556 945829661 658179415 152750706 724925668 358474102 182226903 358769907 545124804 760909444 517566541 693558075 731565964 465598398 165713431 82791687 779769707 929748810 188842582 70147816 551823073 972976468 958726217 718073967 41046396 26628075 970662493 806524504 815618601 252332690 679491048 932568798 803650183 375194568 376758809 175588472 519177877 750020083 925807477 431922925 977646327 992322644 945689824 133285282 358089148 884664771 704041120 91652809 674737648 609180496 59831793 293817266 953325016 394545275 174075153 241102177 257525486 228340315 40380188 624125041 787549227 721362759 240060669 211469161 219133105 176980616 553393010 764074265 591184539 32556482 38495505 947545508 822804597 540737188 758220536 96762903 175543156 641188839 279320622 587655111 182430914 734595865 384641214 544989634 921443437 52264852 704799314 836199569 864261781 491646200 283881494 46703094 143996460 28325844 583518854 47861693 598257030 676693987 354688922 258746923 662893960 943039083 85251478 677724821 50512879 569052592 830177929 286857179 446179614 522261041 864469940 383586925 744874762 593800677 668243845 255208327 72417974 674716312 51679139 499160152 988649702 85295026 531076161 264469948 223583547 917868629 334203484 332921289 390513514 625700504 170790710 924517880 210351692 95358166 944508222 306877683 956120627 228499452 124135451 672444680 935307154 439632082 461995953 776076243 863134540 44199926 970057740 424389191 660370672 942214116 573601170 194496408 756244600 465359348 513315902 198313135 588933058 905722194 7176401 688923749 545711219 538543900 684235842 936433539 473957025 428438643 756909860 251240111 833676090 414476279 563995922 52795678 988926593 716143006 291363933 505838992 520471839 569407826 31207093 921030393 154278869 470541470 320892461 975559578 270471475 278851518 777632321 818565865 582351433 961083845 557305256 553701929 869054910 989604344 447716724 178355122 276166779 77568169 764696563 294381153 557593594 154145635 731632421 57690111 6967451 87312455 264838026 619748187 698087009 55017368 775030098 775172447 17925014 783724567 14850687 850607755 943204768 418242022 251806789 151234340 526016936 370062210 957812484 360263456 981163654 227818060 814472982 331997992 855498720 869071705 609740977 255767814 875215506 432412564 474429358 44045456 946705764 281129490 275865911 747288290 42426754 95988441 634543214 518257268 727715720 220856036 663500376 60068118 524876376 188478081 262776280 32852666 672910962 243890371 689963717 339091239 891426322 264702297 577456505 774649142 398636869 531256416 998437080 901774989 244729522 430832853 842975469 176126405 229810667 325367207 691781965 75020501 338646748 118590746 937368329 748629108 900167030 171877361 510991654 612960842 361409381 36046464 307565984 106136379 808280549 445565947 100845218 933077541 799485665 774351539 767868987 200439347 199339450 528447232 543422556 678346043 143425475 455916168 800382399 266814015 456079874 20620202 757623596 871380135 397567543 666316465 299033021 519113284 227066535 579176694 128036857 3196487 520978513 211950754 124415778 178716801 875982242 324200584 658610822 970092228 505885162 342074033 900227035 798645644 120867483 12635088 311927901 471852290 961832253 224614219 656056023 186755403 932165985 909102929 320606143 384434114 114394676 511782492 49935456 275596474 903926517 205531647 233403747 312340331 619872004 19524382 456986320 445950645 813041984 403836418 456947336 336268611 676717774 267586918 50194410 117978979 663130818 471968508 844621000 846470427 238485640 588400508 585759465 35347095 453100817 855902088 297649089 353112799 322119016 519067502 354653438 108072589 881399502 379160486 858709967 617725445 241613940 49853012 943554358 279285068 494261809 438147654 745669100 857798923 572565986 195468286 618921199 302591766 994345128 328932917 842013144 269832071 267736673 620252914 28906942 703702879 187847432 847524736 952529729 60925804 586278818 331284065 224905786 537947680 435482169 540404448 415256974 963864001 571182736 637022008 589095632 544340672 889614935 880432571 947417610 368916347 390261828 760866788 688100844 725795103 515137098 488365235 950561242 292185787 644490948 482787479 845048620 311055540 668295254 344895669 434936574 706428769 2412626 987317553 291496196 599835034 766573065 150796464 581971133 787656806 974492476 701603600 500619215 254073810 575480100 624036370 190847464 541871072 926433986 73268853 478371128 372079944 215821852 531460320 104001199 787216110 416572546 558578122 23067936 537385075 977365420 827019642 851594379 97001057 862298044 885178122 748472146 867058457 897983247 167594334 918332260 126651034 636176857 949827479 473204631 838244433 537586835 822501541 522995676 417228071 306057567 134101251 551729459 782077604 960075957 910800783 736687106 346786645 886013698 311052405 234825392 832702063 545503839 497489273 950638260 548411802 834357131 996197752 593796894 563332031 345315789 916231262 20132733 634771678 577252398 800193208 931444380 234193582 264259535 174643371 704903430 710854449 104506121 802323763 726461731 526553786 105744637 644869690 805798689 773326273 22661999 830923650 762908294 907688727 451635128 703142281 101628756 514256565 286508194 680669203 668926793 389840384 889325181 35085529 76934860 802132861 170711425 809075329 341718050 144048600 699837665 333571293 233911753 322960617 286635767 858740597 804857288 12720234 129128953 892298191 313519634 534508873 936130551 639596024 758888868 703200045 626670101 370223962 87806193 631456457 238264339 166895878 154611780 214813599 75574264 25251453 864145698 202289824 615159566 319229732 510980259 920042421 502371720 230418082 614905328 550764433 429870455 81441941 570193703 35063688 840860699 850437888 810766967 188027939 314146103 233041096 53529715 917306462 39160118 867517631 681585352 95708267 117506316 937626843 428288842 935947069 677029579 51189470 854108752 30849815 862744140 965892537 457648075 203815784 230866203 388648529 393212922 237159053 138753281 300714832 780603205 733465224 436071503 486531379 593596176 158545110 723640186 104505691 705149571 324618100 613252099 145168739 804904020 747771021 630676992 948321493 786143549 318436584 945769730 274160563 293677638 329813555 640921515 275134683 124633090 349901204 524047724 609943185 134124 868356204 54817259 905029457 24802204 856415932 802791180 951428612 564742786 213266459 998696759 305064925 999222163 144711311 41772153 394965392 649720429 817602525 988949487 109302564 26120965 951313404 661218959 317717130 406746326 331801126 674475940 935914388 715989986 355289014 761550172 319794800 478664970 533682243 235097274 434417626 7325064 116069824 80782466 77283287 822066905 499778904 541876145 430648507 373411787 802872100 243098152 916819156 882743056 475244279 784960651 680697244 273324377 230061710 586277847 739527951 495271234 302598042 427729459 756732719 603965093 344825094 287605819 414786891 443124494 573624784 810101082 868253897 653537548 912470311 381719044 301349876 19174143 824792217 198388316 282148102 137432859 34551908 895715368 536769519 123281577 107450261 888320764 39473232 825253762 307395080 709819868 23125317 769105029 490774077 555861091 411153543 420762992 225920725 780797176 561489060 954326384 894823532 41138440 4951142 644952027 639941919 72138304 688356647 361026273 389517142 167844217 778159989 956149025 524255880 636040908 48434477 934402980 561992189 968559431 654069899 689031316 7873163 454092027 915960670 15009070 404540434 923633010 791103244 659128385 231059678 479449957 218271480 169388721 253526795 795636543 564291952 972670387 469610140 613302650 443500631 684888721 780426765 740649776 46478874 313355226 779015376 689520546 705682420 84531964 122396225 487539643 596465156 564176921 890662111 954699051 939964508 80322233 932051700 752446467 72246396 874834673 774829417 70684206 299024290 298129671 538973491 981308117 280016095 968483896 272106033 83477676 980795594 657009519 313742565 807264766 650843443 953075269 336346585 623553907 267402954 45326538 373679016 193662371 43765168 536919320 134092655 536929191 320286025 106321977 519272385 862601801 772544587 598182619 20886786 744182706 744960019 548163450 965143582 611948021 959050439 500572240 306326368 984145324 820628621 880577906 135190189 783657775 381461969 512184208 597119091 820434664 433017686 666922732 332282179 405853404 490357558 660856896 818207442 91321485 339199622 335438162 493456492 645929020 301680982 107803378 76665494 150011330 198784734 717988010 269474823 637736681 386551840 217279675 635096825 609030859 849083401 168178142 918039602 393222353 463059435 657563831 210348820 461344757 741754451 55004512 626284369 65065447 879878949 396541564 680278431 810368139 766438159 688555931 885101754 643075020 732726714 49423343 699901046 461031714 614510303 320525497 258125345 538379851 164961948 232106032 802900920 916515789 435643743 168319505 525517488 477520612 172043170 789165605 947415747 353432329 279509390 571365770 956979766 196319387 614154135 153180593 419396951 144658323 712816081 738771418 390608181 5901483 981652972 405787536 12788375 197641746 602398726 219746476 274203998 609580 710606896 406078736 411626103 582867048 522366509 910772334 748602397 663404932 178250837 734655583 980543389 179884517 523839652 11897829 163363616 444633258 359110280 329371990 331600840 830619717 579077450 72664582 190971799 839328784 711395958 994745750 67968288 206982029 468353260 605446656 976116830 343360161 309685236 115481321 490903005 688990745 398706100 326387883 556763802 877714330 657392646 882806826 826135509 654084023 44246306 375300469 561802833 301878180 980291357 366592359 437636977 379242310 580563057 953710553 82244686 993374016 402131883 523842416 467376559 568568556 589951935 134320554 942393996 980773031 142599325 840719309 554513726 492581032 312427597 229515357 961147299 141884770 541837077 120712235 239621700 92705789 305109138 584032567 771919710 258983515 766128102 790610575 920022086 16319083 874141919 782666183 266156974 119460794 882132055 954284108 28370015 483597145 735310456 826967840 932350491 240502593 780328437 810057123 344233607 330948728 81978898 437660033 484148035 348786795 176754994 709917136 195491286 117050251 861516233 736759453 973282699 440400938 550111176 109617475 66469509 71728947 27231667 548198425 342477353 999543800 329732843 880743233 208817723 952984576 294587145 230431408 214435114 784510048 603175465 725299334 928997538 755909312 319863281 81415556 685488113 159563282 60410977 834672219 592081782 277588279 799292117 503458920 171201873 700894748 5553342 642531378 26410817 82797035 368956872 169257762 644083563 507437415 440189542 494519215 388452001 817174859 113744462 670506902 695099185 6353052 661990660 790781690 606867336 780291932 7108124 732210446 77917382 643124937 702946672 541547103 879110738 287787326 743741248 688792668 135348034 777865304 865249358 44657569 488878140 183136924 498930439 471112400 12776979 72872881 667766413 375852658 26250301 226337354 532680595 334997544 470018666 266956779 328441681 919451969 532350541 77912768 600477613 223865186 242043131 214922192 249384001 363266418 306898140 779527851 10344140 326350325 379500120 40519047 911489485 469632460 61169176 440051671 339228746 647512093 62258609 70187510 309715779 269440772 536986323 486278533 36020602 639391406 690742051 957156664 650555399 881483086 84621882 483416321 933000702 875910108 258108606 74044126 767129872 535503600 262275888 27268569 385932618 716818831 848963631 510499512 381676035 903637358 484064936 826595171 466580200 856158285 484546158 972313941 646208874 65952631 34987773 701531444 465086846 832872599 194788376 88755943 735106333 598148796 468807083 958176365 967852076 162735663 687658251 576644954 684465514 576826571 688380457 85589097 25897532 36094511 111851836 779863900 848415279 633387179 402646339 561240368 107502139 503962376 674472298 666795495 672412757 648630013 168800791 982813187 351616497 641624932 331250000 460086274 726829872 848823925 378881299 418297919 35423863 812038777 711822336 791002510 499772424 361896823 53397976 591222980 664094343 268806132 91146586 658392104 964731536 710333656 135818759 498018549 424435394 907118788 604340606 760440979 384151821 159861087 45828547 387159784 673995260 175752285 143046892 429341839 900371397 296752338 229802305 804332559 363207871 589349890 895503639 249406924 377422058 33214751 48723476 203607496 93255334 669871665 186051148 187506745 546484976 430900554 458278525 314768929 31970664 163063065 438190391 45394676 384252641 204803324 84380427 604257722 188053066 287028000 37497646 238647768 950367032 61027616 920625652 741628884 697167826 8978769 344860508 680725786 461979930 460950862 608985511 459559133 986238326 904858915 643040385 870492811 3238317 867718168 913613066 717924409 293322633 243278241 587447086 726806937 929610886 585624617 728237820 843415704 35117677 838627413 901616637 139172219 513631293 927646947 438898765 704023456 261303457 368015832 252968993 494827447 902486320 382376297 701285155 419610959 351378263 595721508 453590143 383263441 599565317 497759898 394639473 616877928 879824390 85591038 116324326 247568833 452911233 897311764 597019027 732153951 704732382 567897068 567248312 299177025 491102748 693203327 784865494 121774202 665827282 838387554 158019942 936859184 355328845 546881819 908330514 637228137 238426953 399451617 283438330 132502723 790703768 938082449 145288696 117930688 723585630 351812431 880559104 77101862 244335563 508544735 878454070 203301751 286578437 539096374 739948175 483360250 564971982 371689466 17675516 567300202 550820855 133456615 97449773 84815770 423093767 997161164 346722776 228092679 288462618 383137369 80614434 879992696 244866363 538831512 177150314 753709235 596027503 873137555 666949402 366841575 771119365 590713789 135925363 612823222 667813286 667865260 187846566 440198809 204351637 817495412 454072255 935143183 348736319 356907726 718714010 76011258 202613613 271226656 308018834 683831049 12207871 616583265 233035703 859524384 519870975 428706744 467480996 374330033 639664569 731091825 572797167 19207599 683633253 978304135 583471782 622527761 91509037 898205791 682877768 779054351 771777628 205885949 343327455 38842921 694303007 13228452 375450033 206959250 37951030 824578329 346385298 933722501 411492025 5445613 557890182 990249682 96334684 411141518 289717549 961264468 724473803 252441108 942509110 690952006 233102427 444286386 641769163 841137475 926170494 473047111 45517016 749514376 147329098 466665099 259331869 563883445 344631873 47792446 636658212 931644020 648734611 157525687 615971199 939313095 80891268 482892575 274624153 873077420 268541159 389846586 309111517 168206198 614282890 553991456 367013144 442216848 848328433 553975211 454829215 737846431 130233070 565915088 864081637 975516136 46333347 651120129 466800315 633851420 807120989 134081976 785644756 972472389 400310738 627817097 356695274 18176256 418759057 922817929 641200081 361277631 885635504 747952037 436102388 586616143 275583503 951903812 776562703 348712302 569653266 458099502 625684033 216268243 467661704 847191312 735475906 883801886 859146962 289349224 356219635 584557378 541999401 684105934 193085127 687812943 905304555 998636165 275791023 741900642 993802555 998731285 553062638 762478778 24828638 569837660 656460628 101645564 941575704 593712965 814762874 691823843 975441790 794762221 373306652 254319188 15212116 420363701 868229512 313686792 443086977 416772712 634023276 197351635 996193279 440584038 517677691 656551527 856056080 958466985 689326948 628968272 52615713 41553724 23574682 870563442 226793146 530937578 239597153 393672014 103863835 279025425 267750197 136515513 556095674 645371365 88844232 451200877 685388206 890925704 467800704 202742480 828879209 30944106 809334981 533577325 746912217 845701831 874028697 4070962 530747707 21059761 871759548 202734402 916474216 235837240 782100551 623060248 906457472 893037240 435290536 424122460 637819829 59889231 251683092 420551420 121615997 553415069 692506784 653543332 939680166 531616557 666844793 798128621 680046118 838855917 497265473 149600710 375071836 29622102 677932350 373544405 461957430 47599081 711727345 628103726 271282228 353677583 521499385 824356738 975677984 241534432 273525518 645649182 178453957 410860550 976295008 905361934 514273885 470016016 336185541 893190380 581230174 991394017 893156579 607486197 359175393 32715545 831009730 959823191 697150137 211248998 262384296 527537214 35674819 235794389 969392873 92885244 787488183 680463199 680791495 768606573 785728097 165573400 873377411 367293104 34592591 859538869 147937073 440298556 284906275 183790297 582748165 555216347 853977360 995679610 482751080 6305268 210263938 406616300 30978258 577970563 675913514 739353142 400384364 213582045 314317876 73914264 378938236 681508245 881436367 192678432 543641584 107043756 948510488 786874063 192880495 817838219 401493593 710588082 949683418 208373488 596031648 283001218 300719395 584321159 9512661 51288070 566835113 293683850 468208516 191305876 606888351 87398106 207426343 464932336 799350142 729417868 369139363 790801393 212236280 23415711 488101645 6286481 250548191 330177314 243886780 570219834 939852573 188952480 740603149 903621010 71908962 978705782 703490303 62335582 53277861 378451296 454616953 999063219 918486614 369007020 881434614 910333210 196989222 266686809 94383999 133546859 471651458 441363848 930121470 985832406 579060833 606495897 808789773 491001902 922877837 442582489 607493123 680180185 195556258 669260368 79254611 72874286 612074804 801729266 553057926 997041570 813453231 598309142 547753233 498105710 100068819 210370658 833817792 986786536 601779962 894646066 732475093 211945618 643075625 880161085 441628284 588543182 50609599 735528837 388048788 667148269 356671006 624324990 829165800 47423998 305982029 435436511 618570644 448406008 964693919 860257148 79301335 475131083 748202094 781334435 152906659 650046414 960404993 499703474 787807693 241693743 758134951 962278978 191239958 768042213 167724095 127263024 746406637 993147640 731976398 808404354 601688640 12764 840165843 405847901 342144084 234739458 546449312 890268669 941893409 133780017 928307502 107858607 239374722 504251449 448969409 884570288 391611164 482388568 740122781 132534099 469692178 861644748 191351651 55463918 221317342 530815933 159935734 659051213 801054609 234412118 45633167 153095952 202331992 939908184 85276832 874085648 997951004 738890621 422262539 613374313 553410474 421198373 583862699 526024936 715341690 834793874 346531847 851774123 507801947 750864566 123502026 860109330 786756435 768970370 293784709 134278869 604830993 501868166 923658564 282530072 919305297 819963454 400186704 686544272 329197341 371171273 5122095 321602939 416447835 103506582 3360318 675236154 844631676 529862437 329080107 719022082 875828504 783306644 916786526 51128837 968713047 832634518 158827972 713105819 534117002 513370445 225351994 374077417 799166350 146012668 882571590 913547281 941905750 779129062 494154339 58749365 35599061 969141737 514040111 192420470 276689120 113142386 444755977 779071476 511656916 704262440 674993199 988411906 316524652 191922997 468960038 952164650 149876426 86689439 571946924 985353105 694976876 234117385 622778348 80079317 981126010 493795273 24335411 78456352 15140779 713129308 881487948 393695506 87180505 801627993 849530260 232262552 636044787 358246246 833375293 354188608 706185848 803207841 700655363 264444958 558640848 160418183 349553468 871814923 507264163 486296824 929359104 694657579 238456650 719882916 622095847 381461910 584672188 744355635 927798873 377794092 123526959 57086079 939257030 75397979 985359569 110367894 341067288 785334836 289195241 435814311 136976730 59374173 383832877 747067419 541091310 230089110 870120193 591323944 282183262 514386625 86101009 385827475 446146135 924768404 380118411 832854286 212379955 341894308 775208239 189878953 403033982 41058825 479446201 471004336 709870859 581543876 764886543 394024534 147158278 765150663 791690189 517571906 692035590 323801946 920636704 579729995 322340939 756016194 936381773 963140426 444823314 387458617 508932708 383732622 958525387 947900924 183005603 393338816 339002824 247936327 431570317 262502735 524591636 688324246 150605477 557299213 943780913 575819802 998849956 792691162 61003075 845046926 487008010 233204221 210550932 463225871 484931694 309013822 852215120 170519060 308158172 786658436 903261905 362196305 993088409 429288829 816354512 562039510 673371636 881352999 266049736 308995509 29265141 579799127 486290455 765225972 875893263 520234599 566802198 182896753 58534638 106090054 985905401 93652782 233102241 881348793 692903513 271382406 732675277 141942083 422423329 932450225 792097737 720482124 471124537 745717798 956437269 603610444 621353399 647912061 960005392 650984675 847234432 361522206 696298853 634141981 986320216 738261428 622560137 839435406 108882106 885794983 933115046 989091202 514955238 302110851 643985687 145070478 213932566 66032942 192019815 464822005 199762144 116373530 128501647 277023168 792599418 99502539 19783285 978081594 562081777 699373534 890933847 378053587 605382135 21248591 466804262 272857977 98546795 571066000 124012004 202282887 746940512 220076850 414606115 314398296 793764925 106382559 236419160 821198041 312460639 882278537 480704208 862792320 61954778 401283456 169470178 482507668 217982230 734935023 882889198 598836282 480515067 313650511 43032028 610052801 914297611 69447518 492769745 164187494 714663427 115201032 124794325 619522498 69034749 667031573 196077858 972531396 278720748 311115748 97874892 658726024 461111615 748191985 214779725 938682056 482312132 546623933 73137631 972345028 949897314 543063311 218167638 941329650 713115143 70951711 724430049 407370456 460043511 554592421 676417780 142657618 870238129 982659394 420572844 439608479 739036921 757709475 789413901 787629345 127040947 206957888 836312498 102660479 536978031 408687207 432259968 661439741 294659241 881449491 917733295 979596813 531181774 531375544 788809676 262072547 524142929 273626931 828981741 272512234 956564171 338907885 266375169 617632212 782748473 230182094 950027379 990131769 980604859 568557452 582117357 117329756 469019040 112825657 178832443 655118789 897709380 933868223 637953520 629280136 568254378 379377592 773386490 573076461 133871724 125725131 95558980 123943744 818168937 499987276 69554613 654983500 198709659 669632965 595952483 208944571 817349930 239372976 956328351 470514563 251592209 350771977 800279460 619399381 451445615 786845236 565365943 341592104 982441948 65909199 232791333 647533784 857188719 172192582 984965287 146854149 285893499 689171014 874352955 746260146 442715396 607933224 216041212 803260487 868919165 632778416 198426762 53846760 461062120 827698452 662557784 358596436 380713450 139315245 179746400 252020887 716399138 27833311 135230133 873356445 557079669 391800112 32663307 610796966 176943569 145346698 301372766 704752780 926283142 828705681 953501994 605498311 740757177 588453179 383154533 160980003 345796809 861926408 166658526 459203309 277169069 405622618 336847880 901497981 703567498 553429015 301093528 975513436 847723770 248631280 504210937 583861197 582134072 137886195 968879249 274670796 416666974 610053734 449065307 549463618 862406851 358623908 293932952 690872760 657825232 697617900 745068761 274413027 928462714 141682495 701011772 957004595 716759590 216937157 983286583 515319872 94337796 282797038 253225835 149037670 360611364 902049590 102166930 219708644 94989704 334556854 598469676 21933046 745032213 837432148 502626190 749819428 238459499 160700456 689907117 43239462 844674294 739169275 69317997 370911396 883825065 276866612 301983730 746075938 445826964 731711583 817571604 538592524 333009724 506639753 898592878 821498004 696505184 597509825 285332492 941660227 990886101 136770123 604734538 16174820 922713817 450435865 329254615 752518931 678041969 885062136 977270818 40141097 947446000 168562426 381466040 647301610 327693536 497210160 380464358 228772519 141775061 453331451 872692864 92151817 401881598 634894854 695026886 301536306 586591813 290729582 933969386 31092128 974141636 607898291 181473907 94632661 443156372 145853477 630368731 193485181 436156918 76776031 576119116 554050872 863786299 99135114 46790955 898152237 792625613 859294696 351021565 176079074 83488931 49183239 602643482 478490601 622253332 363901413 144668143 955841704 840208848 864676126 545013228 19798485 788688255 86522181 105100867 207297525 2460464 706597901 515452501 643700165 583635958 670102144 743083006 732622141 302068864 584400032 768617535 993178539 827573617 459163910 647216400 966322274 55657436 589505747 992310583 151412957 288984160 216436364 781837835 919983991 184843370 451640408 740327613 711331926 518286211 541854421 227267966 510841276 163131633 343870184 546442932 597387346 279395704 209385737 804886884 107587148 431197177 30699057 228457871 157165611 779283822 97916763 54392610 312774413 379799173 261180370 18453077 925095202 101446858 748182692 928406620 104206195 310683567 450656675 889086815 33962822 718418425 406958556 257792997 880075886 22562773 322677990 879672834 179910852 318603062 714779931 114277082 646366498 431738914 808973643 170475365 353400527 619372873 13703925 631536599 893050916 936650677 413198299 228352440 723600099 237332271 225309037 448073565 797726238 51163230 141385316 133570590 688448576 10561740 444332600 295583506 808805821 490504962 778714000 635743366 76584563 27613576 992724955 543804040 123487912 947624564 928169012 327312349 712107512 339484105 985582617 371751420 976457003 182651497 442641960 479083086 873020914 843889001 443830468 987445117 42097552 810464492 166067675 864167641 462717856 108935941 435142725 240597699 546759036 473698626 312806880 853277082 48593748 786052860 716014650 776911706 790621196 689363929 60875367 141158416 317799484 209500637 423272110 176723108 799357313 935301308 766306097 22521786 182646462 506273773 206835423 219710125 113878590 384630422 351129767 203776549 247965212 475667668 442091811 554359133 203205796 911285048 685045307 78656831 834519081 433819489 11460371 920919410 85732252 758374349 857318180 144249816 730977297 285144437 629759359 669832408 138252789 337877951 369340911 340243904 151846164 641653667 961306401 151157143 959818181 264964021 543696751 756213635 961950627 738194966 439748471 491896398 333662281 684693773 42375252 494811799 164679722 347339157 779449352 538492897 235351492 107943903 520478905 765881639 344094532 317455888 494027587 527036526 156640133 838665524 867697017 205484728 679831409 455579271 333674499 465492465 15353814 752140810 663443613 230500809 594434906 262534547 796978868 797047896 446124527 957845790 756076191 56491462 841383177 766542111 247440677 149208987 215564252 479759863 790073220 825290423 191574435 589375717 133748653 447919949 904635667 850589285 617803009 796492583 97464381 402197664 774127868 922397294 926408956 376911609 532647433 167538413 303316283 767281854 766266289 263358509 723820793 510315014 734794307 523120672 244332618 847953616 400746896 43091730 878486548 292303960 323823009 710294296 991930815 733853947 863046292 932752700 517092548 450792625 646030714 49870724 959712896 971471133 459828879 353897243 212511760 217422598 791103006 87634669 668080483 452989465 652588440 605904147 665490095 114027173 644677878 812766237 182121881 975408671 255981183 360742554 406613352 758687217 137838657 297731632 740457907 448647760 40012329 75678713 912018272 935687369 504861251 515613094 283937954 357805459 437299812 137337722 566659138 236081500 162221003 162441128 432111844 341520503 834276162 753001751 104995908 225581585 801669570 909324673 422776351 11248272 907034154 332869879 181668321 910367192 959220480 252173027 675089456 342537090 443286499 893026577 884140348 67467607 668801191 570159418 475011224 107232221 79759056 815134706 815816007 588778842 288523315 171793448 706984900 101266508 261451828 474900650 611397019 298212310 259152533 493423561 394649851 939507929 675702765 70936199 257653312 742450034 112104668 312520501 14218338 987262187 969501759 411793665 910370250 366088306 512198354 383792378 751141625 532285926 571171190 414448261 889456654 964652730 548799320 940099553 11613075 195981087 453375346 550068657 81447722 132025424 787616387 681845089 143231248 490979474 662872728 141447526 307278281 708560777 528956760 954417759 376763186 612491983 548746676 310921093 419583780 836167742 977004623 287591877 893120120 887203522 945965681 692049020 576674476 499561016 739570993 693503974 313713267 41505146 908088954 80832092 726905999 858282337 463423067 233942953 985863040 808994966 315770477 483680562 703346626 447742752 510627903 301512471 714326541 208614158 439193994 300131912 176376078 876412721 95980987 509006610 758767934 105139484 81739805 912341906 641069777 247481313 430668814 279408143 91629733 266622538 743586908 332315868 19050117 482276988 86888273 725972498 624310558 784327769 209920123 186193422 381503915 874991343 907338909 840790222 92418869 796625186 535919107 530062119 757206248 882119564 361887077 436425794 201759733 599543540 851673022 688742698 616895056 570122657 523416746 450431791 332628418 65956981 480420274 265973872 934911124 960770139 461094353 409246680 669647755 299882695 483689129 719289756 966791846 17358584 126686430 731994009 769622582 116366873 342810326 178766043 850175448 465702425 409740796 226572903 373422677 900358023 904617127 844949330 718351087 252595156 382969971 148640849 731710956 397294458 953130966 557032278 456772194 413861219 562703928 879898575 918992586 547127161 932648851 619728150 427433329 497112057 486437514 698026118 414825570 50484185 2850753 279557694 22275132 684124090 649625090 315615442 937142906 577542343 625174602 638115088 239060232 658674566 386438958 427141546 24597047 905576875 206488419 554822992 907715840 714543462 469547709 381630002 222453855 311519538 218020621 688587969 260111429 212119281 370094849 445014567 244325207 770263425 346783349 811231121 416211073 331875199 520827874 121182409 518490987 46762645 310252450 840167673 385131415 122299036 756285825 433468168 562991090 545290172 72668790 146908745 651649878 952146938 15853431 917940720 105490693 776431007 250490914 143960253 341928274 876018091 551018383 20376612 406066687 570163267 798285854 794440048 946957643 149531108 301358072 166986603 867689065 182692777 692869553 892896864 287110480 412444572 757063578 49501379 179623201 499386360 527719652 335138883 989056170 285006343 277161688 195637393 348425523 850507021 382642052 688454484 350458417 947156800 661541562 433870040 545257608 582748763 472014849 232305494 748596434 828263061 615293348 188356614 418838229 399844317 169153634 148763523 558748392 384820715 188032019 511182847 494808529 807220482 195103705 51717678 930836479 251147778 372175641 532802167 965884976 654800972 496071303 584461232 294273386 545079125 844188578 430718527 603746096 822904730 214531479 255336190 760560361 810101251 296177957 672595480 700760360 184284026 83594261 132686939 274593436 671622737 67601235 522538833 531802859 851312800 724096386 655722771 796330244 169725267 100201801 10746045 310953099 329755172 68154347 64454424 226140683 52221383 510516133 812105465 500268009 412728860 760613604 95812913 816037923 474441101 613508925 634606675 814007749 530800392 94589551 113600654 138621963 294184803 722473681 843276208 989872202 988565773 701463079 264314712 433451651 435102075 172423108 434219791 296536493 954490908 526955954 991634218 348110275 363200365 909926271 900879275 471953894 940692631 757609354 282431479 834405938 538409460 333757146 496622248 35899356 436789607 897883450 759159005 802164529 96853652 858685417 319275075 751058691 70239180 543447299 436325533 842741251 378626461 412760423 108169378 654897884 352693909 161112317 394323474 901385541 822843767 541515515 555653868 525133333 979721582 932466137 859958006 630174621 74786031 124583995 602484043 40095272 755279732 94222357 220853354 363307182 664332696 766983823 203045608 742086143 961785495 533425468 748316981 699379285 972871885 512693762 240544499 837071596 588346730 117214721 613234007 950976806 829097303 698336947 288253876 126576579 268741936 30352716 841625158 705046272 617013036 936189412 701363617 500757932 990603167 519571896 674919801 331844446 511190481 42036550 176339933 946620319 577901832 449852701 216387608 601801724 957172326 480320684 427431859 760997460 110309216 241519132 421287160 775370409 387268685 891807993 602798839 402497967 329984195 955922584 119719479 389127216 346502238 794693277 510132861 412466489 625862471 239992887 21366524 459413443 187614374 411294286 713340894 674741474 886189383 373659837 790193349 790462486 943556175 785555638 169779270 594415568 528157917 63590705 989689238 747194253 983234470 117852597 862508010 36309555 306870593 938684362 126447827 972070592 739822375 312070089 551770317 124058041 552674129 319374787 900761863 990747401 458875260 950164934 857416034 632348741 855163606 227817919 339925465 732627484 794605559 742615375 11794629 826650169 613222686 573855160 63452326 808350441 916602112 698156084 392274617 237285962 499710428 181989180 236039666 257518625 7579273 247400661 952061883 813335692 311838931 74792881 892267328 922583975 278926052 420312742 38905124 161819103 820065793 103142686 745019515 792888505 682797742 22671287 878049161 640517097 189541692 460606097 362520964 19986734 135713642 255338054 303259158 551266895 322036695 804943324 684312312 838229811 798049963 346120476 719567742 179704970 215785154 911199800 529277291 373219069 436910260 480598876 704653138 615836841 391226681 957049420 790647761 868027282 201195060 941517822 380769925 843412507 888706489 386638076 91160948 972187926 833283233 154749737 895075752 778130145 819163741 60088172 322041596 171758859 296790985 595304816 598410908 486348222 12322506 418684573 171322609 474456758 385658979 806147308 885708912 577309538 630475424 110768931 153398024 353462358 89646577 502279488 552186321 975770246 76483351 339521321 497411708 887495115 560399498 541674930 683993924 46955755 297896103 801943673 672955374 408941948 495656653 254210763 843407582 449692987 417092567 446446473 568769885 402860739 668614900 963589974 645087623 8849699 519344289 600126822 133132142 821173291 342399667 525791668 428870214 301397165 12034303 309518284 875567511 385216832 576762393 968343598 286404751 107571971 668621409 993709744 629164223 890009910 436263219 620308675 506479612 120228090 10932915 481120239 58526047 452640880 469991491 344274524 588756440 192039554 254000889 726758974 801475845 881215964 8635756 299882019 782557408 176188315 109000701 150720819 925883715 644371881 723913221 58914206 841254451 266512905 345296003 364591317 108057556 75510580 288871854 767233108 36316490 284642251 501073555 146622631 817144061 63492549 997393022 10098962 379239505 292194781 785307192 119278837 657705321 972550679 844673815 425216642 973868152 729744626 332357123 697890854 972023219 359496112 651288388 463833849 556339891 843705077 236195480 383299319 874221069 265599135 598234197 237995616 740742136 927452070 266709990 617532887 339125949 458809090 329577530 785547340 183308830 231269380 55404561 394911127 530792166 404981143 703844125 529407441 333806321 762819208 222022584 828507079 417544060 344926300 940283196 164329886 906583437 848150368 676401579 619764748 99494788 176646782 618436991 990487443 622695389 757438819 810964329 153009338 56991111 78059307 898556844 290968534 108710703 675917535 84348749 752215170 646116712 853186373 404442734 103636328 369027514 179066228 437673490 999825387 951340057 961609011 206064481 478451315 225677250 48470064 659372516 557979173 26765313 280941204 779234599 945194508 163630943 343037892 364959332 148682563 28496931 104370023 300883063 643468313 91902005 329231097 674727290 810823452 567945988 379851345 883275130 596546825 236856714 341878880 917346686 930747540 672768200 77186076 145041159 51705128 108469533 315141445 562702785 647442537 709435048 361048712 569900228 294107942 996673394 338143635 814289098 868250436 558606743 591085430 541139383 925094285 845476771 996450593 716247928 23947440 327014862 70642262 858369310 755978313 745321826 943639685 297139312 180928386 306729359 246873008 321361203 366068292 585199943 944711292 245698302 681151184 962552711 870289171 172975710 256418728 100568612 404718632 752680162 20072304 148702224 480671608 271538546 187409201 886643379 314493293 604263387 116632359 996738306 905197171 950684679 444441537 510635039 489445314 517938296 7401306 383619998 666834389 569087223 676045993 552700196 144024995 725984518 842163651 343019998 199572701 815133530 602023555 622229820 815019490 193560186 175645541 457771807 395566701 985441031 362176325 753572857 510800153 122063625 809364278 450716951 947450886 547246709 47936385 320889302 807836546 373757219 599259729 865716088 156920645 253597421 441754624 109165797 415118044 270296669 861335483 787075592 201807057 637839118 599114361 132277246 809880384 751905224 131766247 16359824 710238609 668313691 416381193 244366888 827989598 731793541 684680146 603571476 660560143 370612395 497943552 210970190 301340410 810843916 779913041 405364561 22557334 651294231 127812744 561803539 183949736 234440220 400104222 203519864 254381937 494413448 173284981 318294626 978925737 6855799 532808369 848931843 575164325 537832159 468946008 18498113 920280589 582435861 912740859 902313703 171936766 552286109 825223182 79124990 988959055 361504671 876584191 511337816 239029905 746031003 192401919 608109704 473908718 991559905 521602127 798589767 155120345 265932810 652372635 198834304 383960740 840933822 922073923 666948282 956049177 564316826 854118650 757806831 51806248 758316019 204726070 675581370 601593037 452119487 968151123 425527752 900973715 389010159 316538223 186016780 265866019 570295104 521063704 725275728 268432417 15136589 85749960 120502171 513706231 324045733 734402769 790377518 681577115 500799757 36864910 114955848 50260328 778258292 286042314 95571835 946879908 44182110 623612695 67266497 492698727 223037280 490286751 115283512 655901524 654919911 368333295 723376761 509437262 530588444 73310124 24719988 290700845 642056872 172779431 109477250 802558882 464517886 338945383 766782084 313601460 401171698 672545685 685184004 957299598 618236109 488202684 467339604 594377553 61874813 697639508 152562920 632747979 756279346 462610692 713870032 369629731 244502031 772631731 913824332 586499412 3591861 84538786 12983415 457566778 901339204 452579614 643393376 110364409 32774391 53608650 594742886 285416279 54103110 8373851 661532715 594130901 515846148 849799735 880868494 419741051 685126924 331153273 146345036 311588086 673277877 751426668 714165833 568505274 995886983 799709929 673001757 845563380 272473158 142910455 489456281 634721363 840507538 70031418 73896311 17474622 704352062 380156123 125990645 109847869 982137228 689289142 387420954 341761396 369471740 595207440 367289945 846117831 228791382 4145920 703841818 678487885 193522983 846233346 915973004 796964565 35597122 205953650 582567224 308718104 690186486 918659212 474745048 77130502 64211503 789512909 468255542 149236340 268788948 713254924 890136333 468718246 639872248 589196707 724529100 30554801 615776115 149846561 339399209 349169358 800145480 574474646 224473006 477759396 648100073 921672009 288274398 517836855 494172838 345139136 182661750 532089715 709655348 304208627 363019341 154409061 319103651 951331066 851717348 352540688 362839583 524419726 795004320 645943668 763204174 702589719 844223937 687077834 810084508 24220029 990154006 119868221 640021013 354432056 346615588 647809182 692218197 695239242 172208394 220198935 397081040 90746004 204580692 33674506 435923827 874231661 938995204 483485156 729753508 449173584 194740434 390721606 441886060 750267222 579984990 797686858 273382118 469127050 256761795 478318260 349606527 16001541 410645364 640733768 610206924 933226820 757786991 939219393 160276083 855436659 171152469 964695183 849297760 676243947 510269167 302251085 278700485 471487212 510686357 923205740 555049971 766021138 317082015 868850965 824780608 927327833 762645157 819860910 620305168 108507798 684072420 740012329 1045778 140807143 776354317 572414464 336163463 536388909 278161297 616292136 417233088 53617793 412779682 60877565 875413869 280181249 635091742 454911779 803410689 37804940 225939093 492423278 78521343 642323256 440301156 539775565 671099029 327814467 96712083 490995842 925186446 28320996 17168352 146313153 460279096 781661033 772005539 961295889 843517860 79344453 652891625 575329950 2388204 437103566 520271745 711900524 713131312 896732193 933622928 508489850 87771828 192956285 972562104 215465870 378272769 342628002 944164258 879777822 304762365 942637806 83773675 773887561 593467220 150444479 908870014 151626224 180292399 221243160 321600695 193892241 123075677 614668044 551582831 575653802 64638701 241877424 206784144 664539634 222548639 902281974 623678328 513225135 617963480 827403809 709319734 75149725 566852186 147861947 178950107 933980754 251698072 46418961 561927355 812844194 838228134 9790684 750015041 510146507 553258442 647463420 521776424 869757487 85266051 444398762 470243745 849316849 566360941 636818158 623709065 649231354 85116041 989799502 647628699 118948415 920610111 376069926 493972568 187084669 193253007 575564157 704943861 80194172 771581507 767110970 599881883 536776995 875752477 483992882 931719422 433072386 746135973 646235898 354180176 670827674 576541137 177034132 825425963 496414677 316686164 119839350 584893314 324822178 45155459 39371074 584450694 865979235 160469430 388850747 35754501 181488181 29151991 714883357 596787152 327936933 273045518 162779575 376158999 689273626 543177989 857781495 676347062 287040604 640242955 414353161 438198124 87175943 242667330 174154039 343088735 563421523 376773774 540284156 371985885 906727167 419015642 32166848 124999726 645082457 350755865 335926693 996548994 320822353 158513635 803085912 224655747 139113550 623556361 972527619 853833715 748222485 893518058 353536515 330730120 458915892 142351955 543909869 726354347 585831484 432073575 848541329 850560774 251941174 269053724 813342467 948218100 865805281 170451805 116403169 717509575 89009145 840135907 472530154 134147499 609931034 11611918 655521475 13259351 284274465 197794628 719605634 896050516 452248321 421585987 969681969 91404164 421359826 323978856 608186642 198541187 739865358 346913436 437743079 699266585 190106562 355827788 39395937 455792889 720586306 285972454 295262256 981012716 958701889 432896329 13006639 399215447 286372967 420871461 578910929 845385182 140445148 625575873 996311670 980280945 479295512 32046576 66538682 763044517 81767067 247179923 952968109 263969226 70295844 814572712 485998785 643508618 458526620 421028609 850574535 612257676 186351080 304052582 540604156 700273028 298339161 860395121 231843341 711208669 348223875 664711815 226556252 657290164 782627811 292509978 617951419 361460850 666289113 349928823 734559466 846654847 769872358 520838250 850420956 460105971 820588390 41930443 415866563 890864453 683754504 766186687 87085206 1498432 546604716 252432126 304989712 380848509 912702403 167000835 377241892 124145579 907186733 456174702 400474761 553555345 26491281 180563527 706451269 665228036 832473379 339030775 256111153 352964293 121119650 411016925 388803511 683729984 478385562 245685292 893543889 32095811 978719922 299307040 396913919 290320203 108821027 107422135 10935627 382398787 108372726 282505959 340323625 884947877 312855529 335708815 926051681 485570493 71512256 958295000 34963634 785784923 664298554 332425897 1553046 108331139 960745778 855984907 170029180 83541100 864922746 469768326 750732733 806854556 305967563 317513407 813475875 793486601 384493432 3967524 711087396 749494968 446078119 819755839 82820245 31484670 871619571 442165992 116463434 953648068 560587982 394965916 903765 773395553 781228657 568554428 289697424 511457815 668555736 541957313 207610500 506762777 293205975 220096163 312915132 482697115 504609707 12701610 574066081 145616505 39271501 171746547 475523318 119436759 349611564 359246962 807033085 94831468 508513037 176640276 654990684 14876037 659937930 289261473 132916240 489753813 216530203 377356654 142407956 43142492 763672941 450729633 5975331 639825133 859128315 618489423 946676343 389039384 104928493 670946282 103730847 817795028 532662989 331150505 18252902 445816830 252528323 23887087 78513675 238252544 377690555 975741476 773320081 636138864 245737847 287180820 440392122 843911099 250576544 764390343 904185734 798819749 878251369 688128663 349990269 318059264 107686428 766597000 539002308 686721547 781716365 907893195 473601317 498753045 506617007 675458507 740164601 112176884 404210440 142375010 454455098 149995099 869837817 773662948 612241344 914285823 696121591 109223396 549341853 829601257 75236691 273179675 158043669 904118166 984358603 60166586 711958416 924959211 414374209 989534610 695247012 287434159 399011408 224877713 708149565 512858043 748392506 359464393 624563133 815317173 575644558 556935141 239806651 389814301 881595750 61604789 707913575 143313215 320977567 111359655 14580271 794247976 25251450 246570720 805056522 962535067 213553476 92075439 375248603 647794712 44960847 975458276 844793060 764228399 182263844 677435451 547641294 575745813 63211662 954904591 12652839 434319665 274377250 287275216 607057185 91529075 787719785 2679620 551794442 438552423 703471234 261544864 109854043 927862928 245625575 964777276 230654219 409367238 74545656 102254458 76745554 876171083 37701349 683840640 283310271 379766953 940061195 662729487 712839337 218693217 623559246 366785122 264606236 500323348 408762431 264177136 694830936 532507410 234797797 783765557 861975394 696098124 777789620 350474366 866869349 67436457 618619918 562047154 139273970 63332687 573073741 245234307 412027659 81238966 938250323 386946229 729434688 887005068 717850684 199665195 203221527 467377610 922731222 175548018 513946511 214283343 296567676 748137299 120992912 55979851 750921768 711260601 551685681 23943776 167240109 172589273 91928927 925364257 815304160 269852011 861059060 474779374 369210831 389631890 61710459 406162812 418446356 741709862 174908443 93474481 728816688 207671550 659749975 209734660 528614410 812260239 437758381 248117624 991048475 683508097 45840295 447676649 703233802 926079259 614431381 848198994 903974121 7475879 192918530 790370445 865639114 145728882 362371834 850458234 1018687 15042951 297250048 3970621 826036347 399233156 191237387 548773402 405604399 515220960 279368804 309150621 734849655 187443304 452678598 137129111 577358267 686551626 856435311 407238410 787563965 606007056 665039954 642065769 224632931 144569934 661038688 449946117 48118407 575529163 539560699 133316360 902540031 620616688 631574395 829534556 661174434 53623936 410720448 569720383 623435077 73335694 319478487 131197694 493621136 628209520 570022035 745457990 580785875 575464360 421789828 891701931 34959057 447317821 803383205 83555293 772334957 730853556 485182242 209091562 554965738 517306304 965561358 704506754 998557075 171248593 332136419 975335217 76056615 854788839 532399163 876358744 709037219 460194016 589830437 582801217 932685458 974473137 96350988 933412201 287563338 777014276 218925248 931706985 879973846 927895999 22137125 497982058 317866945 710979313 183755037 804307835 460298306 66111624 65800531 423329782 925622993 776567933 649633957 607719776 312647699 145003894 226035766 109482881 42179457 705209344 977694983 950864623 331071874 270166684 240139215 682321595 713634722 584771836 452117817 119151987 433188856 145865742 713116358 321481230 766925540 652478074 644783829 140023656 98137292 34719156 480688769 766338762 863441333 397041229 425325969 794747379 484671592 525743221 826699882 281967960 336140415 389463250 514796630 59175348 534679954 735674615 639060015 104222522 943318623 337273904 753405726 667083266 685597134 889188508 294700214 203708284 202620809 283025580 644545235 875369781 988584898 83114656 757821350 7230651 456356772 82456469 293713482 945091092 367692910 422715787 613596347 358563298 524517553 747416548 952968018 796117825 550936665 940518474 771757692 507292984 564206041 288044277 287856885 44566726 721327218 291177206 85416870 593338057 739863069 567761767 908115363 807851133 473048536 780502681 334732153 567227023 320850067 381699337 501374260 505480221 168282634 99894907 659080423 879565541 331304649 172445602 153201162 793815097 588794329 329391324 714789951 980603291 967045911 434765102 788543604 2396358 47972276 879494246 776892344 201651955 985117842 270081641 792446087 467225625 459479402 399699596 293945623 208064019 482858288 59828589 905360967 145695501 192187275 37148779 176503085 101270751 54736295 457964306 717695438 684209806 321097213 169350104 859170339 43006027 331996582 247595412 243632533 697918100 536138213 18518072 950331749 908863617 53053539 778977113 519558969 996212519 697171070 88513980 523281469 410990893 222050233 788844351 160011096 498739796 969635846 226770872 105432869 807041601 547587137 952072871 597248418 910201434 43546539 474965467 521052549 49344885 379400570 796454436 15416261 83914811 614484200 472482405 216839273 892442616 521254793 614505979 251153865 615522273 691252428 521187832 859170172 706773651 647018625 325589044 393840024 116557276 661105261 727148055 915685135 289096947 513285429 592253559 841692176 593772509 475559526 857319654 148004300 843286292 206387901 780161334 196647739 252388920 170777323 742760214 879848405 322691754 44165881 176176670 653130436 156466123 307077356 933487547 405279309 11926999 544075706 346723631 280097962 810300769 907471002 656064557 897627030 137157227 376682767 868571170 439569022 851404846 271165365 745804532 383969016 214102070 194271894 243237121 914057380 500437549 546596897 210609759 316914716 217838022 727823381 857298265 745762220 358887338 512087354 76440834 686218256 975664255 617387069 232232380 529376691 656263541 701621519 661127289 722643661 867493256 910784042 241368368 877492318 178562047 645362960 121627856 191717109 600629496 86984252 174371645 700509148 720944509 948023546 416269583 853497840 76289992 894894545 805348043 230450925 625296331 641673106 643137211 654593188 193058720 437529991 848702134 405702141 649289757 532067202 621002133 911573354 325072065 363191489 161717895 765124261 314778257 680553906 552312980 242854613 173550075 357689359 971784168 675379984 556623022 69108399 664929486 966612630 205682790 204391578 393809959 700613018 636321959 6080082 946413761 920345763 363558737 408886524 293024933 116468272 167649809 83232400 710511773 552283513 209570781 831075010 892901019 629037961 304667825 681292399 900604402 605284712 652095666 480403731 307052622 254049113 4263531 733418186 970838043 157899452 637725129 599573263 449403015 630799784 265813314 714268192 408896651 251543224 76166115 442516802 85223453 933161648 431252074 794748175 560684953 67456749 876485357 726535686 390511664 881385219 243224392 414808826 93407310 634567865 62487040 309967647 964879395 517939033 189030020 281121659 694871962 69204252 228646880 580205654 895601963 321766330 630695627 51026929 863426833 570884777 115856781 955913073 232166375 29796321 839316719 317799921 3857323 859699584 283948043 384415132 75944711 622381146 395161071 857691840 421930723 381880820 252677385 131166828 787071643 613916217 539259414 466018997 508001205 431965933 644726885 788517129 856598765 518053710 895706811 212987401 624842256 541027067 730327848 87612616 779808352 440783099 679403555 722350654 285948593 686979602 76719797 993836426 859415583 111525342 885518338 715467965 871748832 482269610 809188747 917495951 642155127 522916524 833602563 952126521 102234967 690540919 997554985 569117295 663992714 92948988 127043638 961793973 75979093 117247845 502812662 516637487 955216218 390464555 764578446 407124156 670750107 518554283 64848950 719257630 349988199 499692553 326221881 486830568 807477708 632714209 745509197 886017565 2308894 386839823 567100735 931545347 836078912 315721889 187054096 591513524 306897448 980918636 52818926 694425886 80409660 128510341 314847221 681317830 274825128 685690913 946696954 228834182 191797728 707417129 576483341 267910644 821073522 671910210 680651227 592646896 973042626 205789842 712320039 798978069 73949192 799534363 906674710 544116769 767749577 350161574 191421535 920877208 770587363 889130177 953290808 781215557 336477838 848811681 933984302 590563224 151073289 779937004 891707383 547224966 544553204 316067265 18499355 306239479 481343856 155324611 408103499 962299284 62945095 57355503 345344622 264483960 448263735 726428588 354567736 63206789 934439189 286806900 184558892 700648805 727598445 815075256 987981008 815588789 635085594 735307508 421593031 498933173 387326540 591636986 239457018 718004912 721671687 589565973 325665953 739152403 275553438 385764247 495551253 649358056 80211264 462545811 545293225 930480659 488230194 983079321 511842666 944655612 457892439 750007999 818969358 722571175 75918716 549945945 821275833 705054524 39233999 442989713 707394726 239693752 950952703 681281327 131914353 87921763 783001346 590275491 353666793 64866561 691842131 471726818 636164539 57231889 379550084 516908216 584735017 292331511 454407918 589125180 747809957 353698881 718282512 526776721 409089220 164609906 254974777 229067676 162569073 678105584 694851887 39595974 954213475 427526623 790528740 267516453 163514833 164233216 879724302 419658936 414050137 140623124 174423981 712556495 235154441 631021042 436370334 635449828 664412692 519179642 456115227 373471802 187365786 42513063 295820829 203151810 690843933 3025531 218200466 256180597 325019352 315116009 585311135 302803821 931208304 790803375 908119388 310117113 361152821 987473666 444944345 356037160 486280843 635670169 496474072 247544589 978900314 621433675 574431732 617899609 435699632 211918506 737196628 288103115 783648460 959681535 917830146 60356174 300887346 193471349 690930494 399982412 882370962 281338026 731766567 781020192 573882940 546400636 623246632 187123393 625543721 329414284 498507861 825745261 250596217 662065200 42328306 131136847 466907191 60005123 848496635 364446043 604831173 895442575 75806639 529158812 297037622 15082957 578300503 607881699 729540049 245768625 912136189 826801035 33932674 922355887 415290376 442362828 405262559 334545473 354702086 252825467 564520047 458521268 677148205 738658903 703575045 7662496 61646384 104517974 625455052 264943841 502703826 211116929 785118572 375759292 274752233 556075666 462991704 385646950 103799401 389839198 698402993 339885653 324945574 100302940 396266372 639735155 436970084 238283807 508622081 979103495 581925394 885444421 507546235 953687744 378781999 182617129 801044274 723294746 824378795 112213083 311154074 135566324 707259754 943247360 474348082 856303645 337466821 18831946 744909277 79863995 960547382 893374081 582175005 45632408 218796338 570890798 849683072 266545148 582929508 489223195 426293088 119044759 623143193 520357145 732397733 533977638 341871307 986550090 403040438 526071555 31446999 415484551 117379034 192683104 930602647 711244085 311367011 773370033 224317563 409906816 602491419 948324734 71427127 510735380 860553661 394121505 811399616 339786591 368142482 197019450 473316090 190279332 974838721 787744764 432532922 944786079 420208015 87180964 124161641 334003739 798262173 211110787 956645911 118794982 301134063 797216380 792427303 126154216 315275703 686052944 531385628 242651462 16181259 881762456 108389649 433154679 955104231 762884985 997775661 73749170 606756145 922237434 217466901 567541384 654938161 781754654 12351049 86744994 180989778 38205540 256044302 533732795 460304810 40331627 759339463 587546088 3716992 143726782 258882409 825759579 477752717 130793014 369054424 769834572 339209453 371180419 534763515 640869623 684824208 327448709 983389152 140049799 175118726 873013374 168812776 238859324 92430222 910408333 172524801 653214813 3639697 181174690 94497913 668877028 66458325 157344830 983159300 681090406 482886606 201407407 122757594 682922498 646615472 683966897 757346128 416450449 837000293 214789997 615815025 212840319 91400237 171585915 329696983 391716365 81585393 801847293 445109495 753121668 886902172 57526343 145773913 30865 148564267 54790396 472541322 956458949 83672835 964720633 958993735 39068628 39172030 116516998 947625919 130312305 860196626 228444240 266431207 326956478 501513241 366370932 225333611 46504962 868493136 527694910 5704466 664110835 51964109 296505205 713582082 139856240 38069144 485733834 179612721 949151827 435485444 285148906 17468580 165701065 66093238 124881608 748835569 96451097 293202961 419759723 104198732 26665866 486886355 626899869 849447182 289543184 945249887 631971964 770085595 56776894 777885778 374620685 363878010 51146808 650939689 759286027 134206973 748570527 200964356 304098622 650144261 689832192 375481502 125567119 316337478 887450318 382586504 96449585 19260797 239750796 447435248 239210813 619172661 21779704 91131624 950101192 12098114 420837734 590791407 524005734 529620682 672368838 598554436 879236885 207144896 668648102 203941677 587172643 902276100 555992676 623491933 164015274 478467929 57994611 666146510 951169835 740773465 180026688 133155258 861188176 645633743 738951568 677497945 325224495 219914979 725951134 523842315 41120754 419885912 988521497 329336915 461658930 798466110 720634794 838092542 625239615 671233150 246811380 565781228 727154738 763982079 916728935 848602056 115819942 621866775 721717341 436125834 576455178 873250529 558563841 196670864 958694067 33828333 601756036 568248517 617745006 672568087 460292425 491920556 634246150 512500380 799064497 738561661 382782829 811134336 188479369 191991827 305799935 563810380 783685490 43373743 241901381 737425300 512253261 28774086 469349702 331958970 876813083 517783842 483723520 602674372 886250838 2454821 795430242 977962808 438212400 889468876 598309646 446627760 197972986 173379164 977547302 404033690 733925577 280433754 259182448 602591079 179386742 660223400 978375565 72041208 844229268 572372654 904826544 357901235 714421846 786386361 331271391 587481643 458908352 946882448 837001886 696133408 821640776 518453787 288478620 788882418 934121074 927003514 225840829 886407192 802355950 532162519 479201425 762304366 642120388 945278967 769116054 9029903 85943805 311628708 596009746 332250226 535808563 145010090 536706018 740614876 157078057 771885058 761992956 308099691 993166175 550707699 398688219 473558963 768811743 179058013 93757641 108756145 541061752 395288422 314785030 126449466 779998698 787292846 61738341 672888552 480339870 395946946 527439052 356761162 74501598 981341418 139567209 757549355 567116098 857934544 92056049 762667408 562098143 242323426 16913254 947884901 388838765 162827934 587580124 981696235 66632373 765160558 373931505 19255112 435500314 36260321 877259548 207148728 645264490 146901621 27728501 343765492 440440553 828352561 44674661 382464379 249467427 383952818 499093969 724804772 44190436 858044946 274007160 946108026 6351064 850092687 506398958 533662135 224910444 588777104 706944931 472656236 807398080 795005395 824848355 945479670 331524569 868289832 979949073 334826833 530772807 981893892 271471746 727259647 245588466 50911391 786722865 96920468 980941248 187569251 137682651 227241547 283675135 148346156 600474982 308020497 26829844 705003760 771587545 178461654 228148744 898920521 729698390 218497944 328801745 23022058 778353587 60203989 647177518 900458424 685706380 910595717 891062633 84675171 999194140 535429277 967254322 677074939 597162320 773039317 382986440 597443869 567861252 856595443 279078304 82218158 870683621 301614113 247592662 870445950 739728977 721524921 645377544 464139262 183683789 237127451 620456332 418530590 534210123 947720794 252928755 311483210 90248710 378392799 169322401 674816202 32200250 478135481 3212778 602079783 682896451 188220413 90826968 190441875 930472149 495735458 188617014 493666179 956157894 273383065 256683256 279747451 761508788 371892319 948241414 820090939 530126305 383057092 667480603 38934447 190841299 184637227 641909107 843811307 58326674 225620082 953655670 936800645 462230013 150356682 973536582 309865341 39427810 542158841 600419777 702198850 107789162 379109489 337129030 371378956 27633370 85614317 775397104 384583928 94630987 857307846 828110410 125390074 28802474 475638702 988621247 496604410 197978377 938512779 367443714 728468929 558852669 215218406 502876932 793709439 97681813 20114092 439960982 830675679 623169651 301443342 170616501 159626667 163975268 552069637 85981972 465172506 501111175 942926848 937982188 297299636 569710670 470651419 601765482 206897243 801737484 130506126 482832378 16486929 542216085 513952975 844398731 648593991 889052207 408241396 742353608 816995786 462190418 653226317 976030932 636814632 274152962 571873258 810083982 133433217 739734143 915545115 93894225 526001222 620843168 382791562 88300141 552176686 545256937 165116815 755835067 497156894 994225809 251757251 166912369 370605261 319479463 436905331 861031764 28324706 124959379 925320778 391741905 527047525 773534865 567377665 82913 504467862 795925263 469559037 849069761 427068545 134101064 650879806 922584161 214854081 712861792 247389397 302802077 547039234 205882537 364782724 43091984 617031473 706508180 294877079 939652833 321621124 435554200 476781970 75371436 520972902 240302743 651864021 611750258 820595530 435206825 393527252 365067229 201516636 434834465 416750982 662744875 968955822 858309643 332510449 996247724 719688297 479647575 334736333 27554920 374029790 731562220 911307566 899803590 691112806 414786524 797748238 781703393 426332138 941524994 590395684 116292607 968877392 314425159 441380055 889662252 432447505 922940660 629034929 289181437 751268096 273886001 228782432 434545633 116499528 105978463 523854911 879564959 957808300 994638538 160212131 432104752 38981648 205164549 168363485 450518309 331042943 292234998 580301436 234092172 131148607 758603763 478559384 560742740 236433469 974974117 497277968 489764967 581400540 584449144 199631442 809582735 804978836 902728438 892318577 486327761 942256664 262538017 317291062 616613287 196180201 408686931 585252005 421298983 80184958 489863181 863612264 321999389 682194244 488479750 905237850 779938981 922036364 301514927 986556835 73949874 964390601 952877994 932004451 220678223 127632733 765212074 855019412 436700315 972129622 270363580 448955056 365862331 41209359 27661523 556210760 809500085 16336284 914709691 477163277 202624046 693203343 902691356 267808539 762051108 493729666 641579942 448530667 43903482 309898456 464250104 429964605 230807816 921181264 647756672 990706819 147818648 601236221 53888673 176942339 225905199 275338891 601591359 942675979 609410844 486989128 361272662 862223725 110744613 728279379 871482633 563381280 667892588 804543 113018042 539296905 665524089 700605963 931118661 839934005 337919600 918965271 344696202 238213878 301525429 78992606 298596282 857402969 158894716 725896452 980154735 472005452 836567898 500220918 437839335 801560645 423649861 773164319 691765078 660111559 261233779 10596035 639332448 472027529 829738172 962727637 324701501 395199218 237408843 184077055 190840290 8956928 324330431 899136476 58417729 325267025 680198858 322147899 148495206 294612462 24345277 403371594 417479175 412012595 664360325 908976442 656146364 114173161 186273773 541268777 310579831 253235046 432212132 785072479 207325600 831456557 297618288 652796079 506543760 752440657 567048981 240508164 55414362 469629252 188699345 479163229 428472771 61405682 616568849 21036733 507756046 856053370 246634455 939816729 165519569 753781457 160176951 466778519 48429037 766759980 390964865 591710666 487662479 446631991 715387374 884822007 318216295 377670532 735799628 793898804 319591047 826645154 405046147 462315917 658767421 159241255 275990208 456393047 581138911 800208650 201066784 176840091 447037713 261164527 813420490 207581112 292890778 721535975 401911332 378181479 973251955 950852437 445173074 157830789 867519390 681522175 173867511 31841975 620415382 405667866 231422422 275759070 196420190 209274267 93041475 178337280 144029280 986425223 954921778 691935081 429215593 265005208 936478680 900590646 458897369 174822091 87561908 249981457 443595959 16530314 963041095 174248907 289117954 92332942 712647600 488219451 891834419 81225539 636998730 53071321 52993963 644446553 380196464 318139064 937170624 192557566 314702662 426640750 899172777 633133368 35265399 402211830 557839943 132000530 107186353 520242279 621974317 578101374 116436045 788990637 841416511 340588515 531983710 778832723 263998126 472402946 487536783 347301578 548511657 830568583 855144502 374331779 635720475 211611725 71260612 886216966 656662067 809712395 196421240 125287024 57686686 160477351 95464622 141889329 110139821 443987779 957130429 521549838 391900130 823529031 510027029 100237466 557903580 962268022 901431059 893729859 608499243 728995811 873853128 837562714 22001551 903614437 371410117 480325964 126196172 627703768 413426203 537179991 21045648 281933173 623735892 537349325 881332258 730298390 742390114 440182668 898966318 795826080 726607094 993826188 793494236 579692383 319209765 741330196 973674499 74555136 343005837 402963817 207500393 882744793 787694301 914524231 236658997 791530546 188326848 863452925 816103640 627859533 700642293 860209317 182405556 999358013 813375697 378615515 810521359 814846315 431994994 57355021 952189707 807221223 897766844 828925509 189269833 69580392 225624294 372080772 394944776 778175521 408416286 896877660 11598315 522226714 641865968 643571707 817615498 285268035 458051206 947307094 652210091 892926092 423272270 828468964 402287800 68298343 50839607 406235813 736701525 34681148 821106912 496859334 292683270 319556963 499036686 958636184 308566598 217833446 137685593 258312643 221523912 212123076 200602859 302024994 742587868 978595179 585312226 73074403 610603820 252114999 10115190 365194629 416264118 38186381 321449785 149178653 990178930 796111513 412789868 386723106 869449196 101478102 91696667 851409357 753324124 836815170 351946412 957500680 637479197 820239269 163240214 678929006 384495393 520160707 858908467 842714764 65326390 216030187 380083297 341795184 692811297 512457113 486336091 631980463 522076196 198418951 950022580 120639009 266538714 878414083 372177785 533625963 929294720 666413312 373950239 460310982 200759751 638388934 595931415 968366603 134820203 320032954 728803209 821973192 444956960 540683008 528644182 29182022 281154361 614875482 922699140 38129610 477806938 293917270 221534214 813653927 780981280 979549341 230900498 174094065 230445263 85582527 525713041 967385786 382126298 165881563 275850799 62558972 173435844 160584285 86003896 944400266 865618970 491326419 250949282 735541412 853214286 199356357 168542605 248179220 685614222 535289210 910811252 578296833 673169555 309090210 635648535 863148306 851152939 525787166 377400576 220327506 794449647 628333628 31150105 93106149 732614311 65877585 262324565 504008011 6668121 756917369 922258013 411774464 146737287 254006554 561492852 249228754 516906276 682098316 796606728 869007702 282244484 356641516 717225565 732155851 791283759 162434771 648930346 40993980 791469590 919899223 237433232 646871202 266255334 668595586 632429975 251938298 911207980 985734750 39860463 825680420 334626564 744896398 188319298 630677840 435742285 269561899 36989923 39194754 316967831 479179233 388401712 685954992 383526502 590753629 778519365 95676918 40342919 328908662 50928753 62217419 292118499 150216204 594271984 518590663 329665914 720572776 872778319 699554261 420936664 628453767 274366941 886508800 720555210 155832336 597874282 281554773 864201666 519904816 553985938 887999357 977247882 457598706 378758151 415293729 335685771 739665768 105934020 484064210 514515240 70576704 600887708 56891015 751331181 378604156 559875746 397184018 482222847 743635922 527143797 260900061 175329417 850194581 702866149 613807955 878245467 934465092 506435672 579101099 589513423 3592275 685640117 41841397 932357251 15455530 196743403 272416343 802175450 328205577 287898315 581701907 945979412 443134772 261398865 563050474 221891270 308301134 903319404 160388838 237976368 114214601 628531831 146652860 341164822 109411157 66437969 684455667 355451921 609200979 220610377 24125430 42166968 755022341 244789794 725006138 231659980 730477137 253316895 400629291 441829876 924077479 963045266 883451507 452016808 325534008 593435703 543836284 444771965 608544729 239750639 296651114 914319131 872682419 748744289 466729693 724067003 497610238 834645557 583206361 111410856 240851812 937908825 804405897 42740392 510401801 601400576 800986112 389037289 332277448 387649590 97356433 137877380 160602479 644810516 256869415 611442946 883107086 170130842 804024545 546879455 977517704 651191626 10952087 794748101 566410756 85948668 844876310 281052917 826710520 999719869 174518694 672390779 188898402 524233262 395383353 106042870 937680687 94049846 335655299 315678876 263381834 876241901 509795667 901156153 425862853 495845024 386670102 235066374 426189655 591294455 589770965 177034099 309533099 77168110 317613404 124046680 609438810 927010582 759179749 744743605 663423744 773547719 360693798 520412392 650549030 175047792 258874744 441738869 847801674 79429037 782424148 781069732 718836692 41343941 258257731 50373773 702633639 173151020 785117159 560641618 465236459 47724400 680171210 982002374 250026462 296964031 353371561 670535009 665561433 350873305 621063336 258070843 953151109 305428049 299455378 682339682 723656526 548527477 325507115 999132992 677227774 675198141 94637544 121640438 928777814 36339294 345527009 643593386 433699109 1055646 764810299 907479615 237449158 993495913 640242065 947975364 209628522 606503536 580155359 38348228 527799059 882458122 64245324 343824643 481064740 392691225 275768904 623741658 61264388 354929069 427191836 918171787 527430568 737488353 634343719 493497934 448371314 132603698 423053136 541539525 838901287 472854279 954825648 454683014 736777701 305153299 767344771 298861410 605534704 972768189 582685226 894599050 100069269 225686092 894747093 761298701 242454497 407859842 594866907 224295551 17623197 707333857 985049000 213705442 502881825 227706966 771697910 58556951 49448624 889221286 524847 127413448 466212592 759764340 110850784 964125205 877775618 437820927 229523849 723951610 170274842 357067475 805549663 603451624 340596450 255107972 939444927 789041706 166265755 681168001 377094534 834938645 946830455 130046090 378184005 671077005 617581127 723117803 935395519 505863554 883530407 402950801 982477949 42193068 486621252 452311473 723312698 102107559 720745349 782602886 604462367 848914161 209395305 365371661 294182129 450700345 85692050 529911961 116760771 560020293 11892297 809538691 906125642 194764752 305737693 436875023 866484724 184750195 72390043 970579031 400633441 293773631 152962224 76656962 548638472 69929687 35076288 862331821 220437660 65972827 668578634 142364251 979873518 895009885 955099288 298252794 146126749 771724224 699563652 436567123 432669441 673499685 409692258 989962130 231246563 238457081 939590792 120824617 326991088 617142136 461955339 698287398 174095167 557508566 939748920 293989855 196874067 16087929 554332461 478247998 754864203 569856939 943074936 529513030 80823112 248458126 976152608 712483 877115577 208887403 48478080 357006306 872926126 238497681 476955332 250513251 379388948 498930263 414514496 312049492 979262433 892275482 736304834 681810277 146929585 204064586 380532324 970955116 763197851 546348989 206161415 821520284 844053698 379978283 746988625 403224577 127060703 514555026 809276031 130642688 703165540 361580082 548474365 952049429 15685683 177125524 991373908 883303391 49161387 45011086 750059843 148103769 509075335 29868976 629784206 303656892 776400639 498436386 808019183 627898526 415629172 810479954 752623629 370864009 335735441 332986250 824528130 878828292 134072020 868127348 394868746 281930492 78811811 189069200 301167635 202595319 799128265 312900537 9799005 767696389 870689904 198968432 965897628 720283776 788043299 78137696 318886093 271588512 203535151 305414355 523261712 526166375 308128400 971660983 954433937 539446584 492195015 479610304 468181363 434098830 52678300 509497162 27374099 274030462 159841912 979596840 454112971 195371997 996072950 436624729 158342274 168706573 957795959 395838100 137173564 363477971 869887150 470585297 720875222 576947773 567296472 171729464 355438431 800529638 529196451 984317725 201509946 315061519 774521852 161181569 29932893 499493649 973061142 558264555 246187837 721931282 768184695 123848438 188202240 385902385 967633495 170146836 662498280 333890795 926417199 267018415 392605783 391646843 692076299 501822270 68440839 883935563 479092995 829798363 343110788 530525465 260912069 505156248 32932634 138613919 513304219 486086006 90310103 669580069 53398108 805475902 24460451 931707229 22344879 323672836 107621030 686807599 73952798 182139606 986648757 906870925 225468872 61617005 22950332 656731328 769231595 38863885 252002114 436474324 315847441 208371355 166218464 787392272 39033711 181129231 765348707 940932881 951831271 92296146 902152905 76549074 593302343 555002506 262210879 437569238 903395413 830451141 755863042 522320788 747696001 767517262 779154059 249226513 882330708 284049132 293609938 383823356 394884454 105487901 440153345 603502420 749324881 657435077 556291471 194663126 623328559 836232560 631506487 677082283 490104851 317442938 318591202 818777727 74773472 16586290 260423053 866479024 388820771 675888474 812250712 120189703 862734840 129335363 74604859 90386977 19908118 138532497 170433447 69004037 445455505 451301684 241989732 843097219 812905152 690676272 411557954 843118296 879987945 609763985 202814302 415827214 727067014 476151477 170554677 637728686 897228754 253781698 780311401 847980586 327658665 49515938 218055357 165141389 926421817 781187245 456254852 391420289 537917142 683216214 117230670 668173231 889433659 199884947 318947281 192715995 748160373 887193389 47298252 613335772 191529433 227681571 737198474 114159355 972498496 640885948 356870439 175376659 357566556 970708346 931574200 623286558 73954355 700927747 70922854 522417317 450528872 61384762 153390770 987087256 246031406 466569614 433890582 844016312 656409636 314756684 690764716 287058977 753195916 341672435 17207518 775600087 451832306 328700271 560591124 416584262 647799657 653589477 382841517 737295215 741890034 725206147 865318969 454785554 469871113 800804930 511723985 636089247 117402789 155109155 34556000 90888549 642152606 335370987 36842519 311510663 843832870 337421075 613807208 655579448 382922536 991417196 229739454 919347818 493251661 989922081 262061778 790505068 112972265 364563826 456549135 747378640 332045578 769923217 585799131 130776410 179819625 106186538 959930475 371573057 930741578 959370862 821719838 969957363 887001347 573916543 638869439 363024758 652814370 757943569 817520428 260144924 899524478 502301261 175287052 277017033 360540365 610466697 140579472 312597655 461475550 858512823 497885368 938514457 844059845 486261349 292188326 572867461 310625227 289099679 744748943 485332116 284503336 896584198 76552289 460702591 509503174 132295025 754547230 317652416 236248516 15141385 481499507 407849010 365846652 186014574 648187184 218889797 814477044 573703425 776295312 470346595 595389912 361583067 244095017 930572047 208207869 595797521 969553638 735712045 581865102 177084339 243514404 611881611 641383790 208280590 965720654 466351309 684525512 584820007 272888879 106326867 68337608 758911832 172495934 296952775 307850778 129493586 672424633 934668746 795287530 811961036 195748660 857031547 750315841 196704049 850655504 146348228 611527383 809660864 321436601 592356247 475930062 15880811 977607019 940246659 777256244 859752469 79454033 493481768 596353916 92371181 326603999 313637541 926357036 425111176 793814836 181524131 529026938 221228970 838839922 621069962 589386582 158597865 156072197 719475860 629440638 53305587 546238356 19628913 526006916 196958923 312516146 683680064 439705662 63416054 466148737 148622298 472941784 974014476 313175187 536096349 463133587 528179937 874515303 460855280 10474532 710546532 116484050 320821900 202314239 668217268 280973019 276603711 382997307 928882444 400678078 137427916 468251349 213323125 710331470 266066705 195369033 955270634 761720251 405126136 605520932 435360247 849376882 934589878 800659970 238370980 332042748 167533024 877197025 218735673 306001409 247323234 724985386 175488533 966339275 150487669 3479020 995403071 492449416 464653247 956957995 83508380 358427269 642503490 477876039 763792756 233965968 527829234 859442908 276363464 540941308 73468835 762872557 144866449 136967218 799420449 397517995 684592516 247939982 513601700 439153556 15527346 471192889 932431855 333653574 659135720 252113873 934928963 686606646 42865981 3542218 24452861 764790137 912570869 110965103 531748905 756786914 549926171 456181417 467138784 933578358 86290947 691155336 788185393 551758034 586350423 338566035 125652705 97958583 619107275 752602506 538033571 719109169 980043593 511073679 741295397 72880001 371351639 35583778 87512318 567533232 303312644 22138967 300962599 802363435 12205106 44076213 40508269 893127046 816575796 612001324 776842183 687930537 748376881 177766615 187994222 288106963 355229597 459772643 594200324 885690472 668854454 207143541 20331192 232574550 635494350 280911983 45386845 102068827 936823493 911141325 385295578 690969678 922355741 128281962 366923848 865271190 733598631 719298615 11648774 631831983 536722113 118714070 249060245 393076617 838758395 871758640 80304822 786271710 19836877 735996896 514597819 76782709 536250963 675947683 149334844 750421252 342556877 392033194 962260632 740194309 28627300 691611336 783389252 604790541 135176902 826969179 656722373 732394546 922407375 316271529 613024164 617097759 349280552 869776057 783660649 921394849 765168234 529207064 457039465 382234484 597056942 687429457 218398982 963938688 570135892 859209194 849476745 338389940 529122397 316312506 281587437 303399164 725954368 835398623 843402017 303687380 819247037 891749421 727684641 529563835 902490464 60911120 64529171 194758991 292557641 860484191 418403711 403152351 598872010 444504670 639249572 735393997 659746418 515875945 731529484 88696480 644246677 602763046 577333087 520066550 192279115 366584825 983999871 21609748 826387754 132023485 55966469 323408831 543985117 482673777 774233372 530956301 398720198 418661164 873110645 788734392 340627676 792686191 963272801 156531040 291307410 330168320 667113229 496860745 457804006 191852073 876090571 853541234 513323885 338068714 506574548 605015254 330084186 210003199 242266294 115752115 337044460 235986595 824120572 640789221 809617178 58559064 838323625 505120208 280513053 156310018 983946741 400376688 813258748 397126446 774247141 267518828 589763467 331760569 723818110 671496464 999912711 326762001 58211791 934575750 391938117 525959847 442377643 576458347 489435810 286254591 172439320 178565269 328886921 792017042 544317535 816087419 94280942 416366151 564770287 325025157 420931933 760750175 878812195 250645305 626746555 537267071 77785802 313957623 10800442 107571839 592738786 197589888 826653175 642518152 327938838 650783015 792009353 273004130 569897912 916739332 702009457 751118851 286994875 212131430 506339738 630910387 532789854 807929454 717942178 375052359 526172771 626627292 986317277 784273542 740308931 582350776 937311597 860423203 95872232 794357945 147446918 183282413 945827086 765717267 328849004 793330915 69659341 500895262 565850861 532735648 270668727 642304249 639380407 117847468 471217596 601064737 920502856 267794706 571676700 646902524 493936048 92384734 628953216 295065639 588701456 667657707 474184900 873419541 433073362 39213597 831029349 371692996 127277750 124719844 292091347 47552248 99826224 32291338 781234051 943545901 373555560 330894048 177822574 281080749 596703227 191630814 452510994 498981555 324357981 51248296 579016767 353171356 693695704 465973022 787482770 910528981 223697991 905369591 537625418 642738010 908205131 205589805 601764898 481451660 81570939 709397153 2957206 128011572 843560497 836339121 138853280 561266633 761127840 214344610 307989589 88702790 413445332 142035637 367952197 754903693 714913226 423141700 202153195 945727811 864838667 708083336 663378591 232606152 931458194 713564933 430475076 918381254 800238100 329063221 514915297 461949272 767881917 347916304 747874392 851374069 453271853 104789957 235401069 189905937 551539934 324045189 454478865 225768800 470373648 462984828 877639711 454511004 775927717 75322036 792114838 681388191 298530358 691842251 706170443 886580849 858737589 557849328 169289882 35917218 554178479 488918979 177881777 271229619 120790576 587225277 269523392 345200316 665525760 884175255 153931357 517342711 391056362 942659889 209985103 230537677 664885512 902526342 906518887 331407555 253374513 463573676 937896613 623237243 768181144 766657616 268381615 45967653 909627753 156850567 723727870 207203323 126357132 754740569 399811852 166757688 579447697 810083195 251233011 497599350 116129836 784809387 413619373 704057194 186110405 724324977 227212037 355127747 241601794 456959409 429216527 382647455 891971143 981938259 403094074 599112338 518192323 76675514 47188834 752139309 128766333 95643903 648412110 215533392 51890490 585916191 495269382 804188100 335777324 759076583 656287726 117751681 886699948 521750360 553582808 557524477 905612878 95464233 752290537 957304637 879842749 689568098 522662511 453567384 513219456 855136535 762618655 372715861 233120831 874607505 981492905 667139554 933434459 793917424 479864853 862809346 591881983 597076898 906078083 886509694 794974470 86975112 912446295 756413666 827692269 92969193 246723621 436098204 565485774 705215961 431294394 921113827 830238566 374511811 454584127 369157753 80847414 989901009 321550880 33316004 123958022 910988211 600943492 345998489 417868708 118165328 695391807 588248335 253057032 849075627 65007262 970305239 431268150 826475512 763575401 494447951 945573195 293590310 124120066 551375107 727475003 168892871 395808924 506600277 616340498 945131400 165932160 339105107 955026072 153147992 628771150 903780078 475838409 262956820 138134452 521246716 338454987 844050691 691609154 697774056 829936297 454977306 164501032 176106417 771423652 23099527 535911219 293062568 909327174 146599761 511180842 173119080 712382369 313599833 599300194 656552612 751478659 772990599 687141210 590866382 418188956 599186352 891934081 790521821 885529163 527224501 243196644 544143314 747971071 529280858 712759233 24927999 446000543 7287793 692077491 318681642 522848851 76395155 746039190 876216707 102641640 853523283 600975584 839691557 262222054 537174636 753011162 968322683 102821550 114241471 153807574 389675943 388387582 340802627 793684045 609574757 792333138 722753876 449446047 87805948 499544209 871233110 850612931 263938206 111214079 852938290 674222911 321582701 817172805 5384636 548469306 526479147 610153178 218433830 458725176 408396662 544024036 683640423 219536885 182240428 686393565 609602640 68322477 624339161 453724205 634922922 289048771 409959360 217229076 904281714 123376629 826004587 181904218 36637861 64578306 629340462 317824287 314998651 367676526 183059852 917289243 228561462 405348176 876932324 241930288 67384571 895617367 352586553 948514965 160738676 988330770 606686792 822891806 349757159 452963640 880035337 601958706 185596911 510578123 449927618 81869296 538086623 737850410 194412108 660498242 121571936 649503542 814331913 686666990 741563133 802632507 405192830 777540005 999431452 449376422 417163945 246173679 704120529 149930669 416619410 586796538 408408485 873046712 865815207 261706800 315838174 275815516 709165475 938975661 255989306 557369865 687747519 733512200 844069850 268398713 501477586 117330797 873254786 153024682 233187376 984734743 87902014 262439040 641894355 571489961 620421606 104417474 373260851 592450785 808841079 310617991 400459175 578681051 242671090 145882613 701730021 263998104 48841990 324624686 662158968 85954800 850849859 965926620 888213224 49980098 21459400 130704227 994858355 868480820 468154084 753112758 601696240 591751858 719228526 229565851 769581611 380573169 719117282 144103436 640330034 493801399 182798220 462434487 847977305 679508446 856822869 817603632 372455054 17117477 415590404 791530060 402508207 358412592 444016972 533308757 732270852 861926842 231804452 841422023 944544563 366377098 12927283 153755808 919607619 371223112 256194621 676600340 489523665 555425115 22292859 547449801 164131239 179575614 914162687 492001546 833774536 733212916 301933665 845680370 138736225 485789308 240098555 863537843 427094111 682260702 294192013 712355009 958277230 737076046 85457913 633404070 258717540 84532402 56266264 881814620 99839668 443704661 996583071 170434382 636827858 483665596 970170460 603707200 91748228 639746822 945097171 916334331 45960876 173045346 663563209 717888994 826903834 912938139 335467889 175279105 872411634 47180234 958079783 216307685 475409966 535087764 12017160 27673586 215640587 454833301 239992589 412598174 56813793 981467624 583619293 553950091 50739646 226197732 226168513 904705652 271541034 947730795 652354658 98979633 201309765 666418471 277127850 70926939 217564798 244649194 835836137 946518310 808470084 73269209 732255685 418816833 293929289 87686159 951222438 614734167 50874195 397445905 823475218 789198995 962910137 401003012 73338702 390780824 208782738 491768216 372874470 52990148 479806414 865244638 449433405 973712822 201748725 242908615 353554444 512976646 666266148 57670023 864778644 951261382 230459796 66578021 13090112 881493822 891683647 232344040 927809261 426689073 165333755 479815378 210743169 65041140 514761330 762237275 703793676 335273358 595127469 189538743 228155027 751495180 99286037 236941101 232483921 365596139 160412512 340006069 88041724 65270673 816091736 509755471 270523539 997553637 217299671 926044531 741698446 598864219 514237411 467979940 72763768 863193496 340201602 512923241 785866075 845076076 802660814 717087208 361370261 115816021 82131561 475430676 604974448 640892692 265479292 825323135 575848169 842751361 342418926 921635360 144097663 823296573 453658949 694703007 985128510 993661518 70362998 910810312 750120061 497691274 988786129 932904214 300322667 635942741 584487046 562740651 213707944 312568159 451744690 377119367 557364825 643523314 239585829 439198091 598038774 947120351 37256609 374149959 553758109 978935374 201695555 230425129 867988862 417253399 528092528 454721224 836093660 103327376 349016680 761192485 294847152 519826563 955930142 350582599 764814898 588233549 385295824 245746733 632761315 237329891 559495730 352515885 639865187 596433013 206361832 452251462 732424904 496639265 20768848 718387876 369245442 396623294 570945561 676079190 561456033 475123176 774115118 150380309 943712229 303528959 689329556 875811150 505225400 750650732 718157062 385333460 572273454 664901735 90028404 460631835 57350048 819214415 110648926 833082525 677638211 832897810 764528596 887324261 374223160 498329301 181818141 215223581 584306367 60975040 748701584 370932278 907286457 562373435 876496049 701659060 947991266 804070122 678004835 722088367 952906081 555389516 29721628 235667764 92850956 533146697 682249803 194389555 788151552 732941066 286616702 42850572 650512489 631050370 279217798 447927432 184737424 621495286 766710444 502994857 101844600 713569475 548486902 908194347 542099556 133541998 803161552 341726923 924815132 388709836 130317138 726787399 209725573 552126245 104212435 740419118 30476909 794619596 484174454 999158493 346633062 444164634 201615537 655925544 598550152 563183026 760954000 627267813 517038725 937355565 62762128 664781169 852348106 506811509 533476341 388610869 15927124 873039 721421674 951035475 409344013 586022336 930281032 528611606 648749280 430943607 21115384 736322181 601474592 330537232 199470218 889327707 921187408 601075492 681267627 871755623 935419048 267181794 576849355 716193056 440303460 835222746 451465703 521855287 25267209 736842505 524474568 764608271 579652906 100900185 191427214 676500395 285588114 519690162 704625529 192875234 712347177 13862531 91587752 711621182 772997111 307613850 146900156 752848148 954519080 120572544 55284381 72453364 683790427 360991452 364668163 372989161 10330986 174164067 194207465 267825379 141127887 495062908 100476168 974812615 235328584 135037471 631175263 668130590 772827566 688722218 512616761 571640551 829211037 405741749 950164228 832562288 951903887 190875270 190129898 898229292 74327060 576890836 183041194 40929282 745459230 677354494 86770851 855308920 471637639 525101825 87655292 717275825 796231228 234635153 231506974 18113927 867869367 630822617 492500854 947513386 75792081 338209337 205227849 407954258 75840854 600901746 566214228 660758289 882353030 219263705 765078516 323371161 45599954 861109631 643646381 253432585 754861962 542221639 877055159 194211888 524446430 76272604 236226747 675995515 367679161 955671482 748483349 656458879 666327122 604799150 126873986 368256623 163348519 438975249 958048056 578187730 535117226 33908575 477950019 905011096 201914202 240281491 268209061 13488990 741713709 834135876 253746206 864230424 399372569 411666498 746920350 993716618 645286114 731711220 193876441 304440715 253486904 862707705 592758380 617168699 982807223 319132934 490693484 126959805 803644295 13944468 249684859 183402178 207337050 650373520 830928326 813534518 244909621 694484771 831789404 847618582 851184415 305620151 473308271 792920492 875391546 458315166 401999493 486126369 97792784 205411569 522586920 280185010 249229514 130051899 645855782 37565126 680083861 253782305 599380777 858101691 581658891 193665335 832999852 122544375 842299643 793615369 501616182 636098399 791288574 196143823 22738274 680204309 919160079 238039058 949888812 805316890 834862455 560908311 268751031 726513790 291268826 441914526 813854408 519431644 407580502 307992166 103047127 288697132 845037086 709493083 832011599 705676492 845725435 194447410 448680025 211144997 933764391 94828063 74764507 911547493 592476000 750915758 66856792 556553197 375342266 773616635 679557188 38667570 85030176 615007770 52316539 2651306 259462773 695802091 83840738 150198376 960392040 952805719 877770891 638242870 699816942 842193757 211319627 912118968 934058757 953783352 887378124 281539825 757631625 926596067 554508374 813292074 502147373 389595672 443816153 340744010 156391407 843146960 191789158 635934215 40748093 733361556 928356630 972875619 172714239 532346287 900497827 671968041 915421883 65905099 895947186 48345318 390572558 911952292 147025880 830175825 629616299 557321414 377694595 522770298 609426057 1896185 647917688 116475994 657745880 152651693 363605799 48093921 410619654 334403536 23090455 371621522 410710433 817664580 547077979 438529793 373693953 684303805 285008188 475629140 635354182 144145178 317572671 98266275 150965886 361094741 238098702 627957533 210924889 487289884 696471504 159938248 493132856 790933326 95207209 552435378 289496218 468696288 724901585 249312430 463586280 433544054 843236064 520892743 406911780 400784009 389214459 43340468 554353375 119615712 135939813 783699161 323177846 699701720 824101800 636444721 677921156 157979740 887923148 504620248 846499286 97879380 634542809 651358749 486004148 53798511 788252490 796300272 507107319 905148194 16082324 900778408 207333143 197956641 843278317 406307023 282317590 962363728 376829249 657035474 620718171 969898546 533663437 789056527 288560676 454542691 656066658 961195028 661193662 439672716 600441722 812860679 409417775 160784275 305849762 59279106 337043484 895791556 8758057 902323416 498134828 475877592 149109486 550658431 953981968 731048696 607626349 317150997 821990405 578758227 447473392 563026330 93750028 571694169 499237516 827281628 368039533 335029810 669781706 750757857 699306743 588184394 201042978 196343410 145983235 189060437 83485929 246443085 43181945 718775433 842003561 146537617 83859934 24189699 788474797 102707489 134304806 22433473 138336983 30122636 604176494 135811438 775098304 440585662 867151180 366934180 977108572 422640569 524068280 171995187 223707845 691382396 807147330 406381123 831090284 642845895 580327410 462937998 549942265 95238095 973467048 615498771 717803665 880397831 718250267 332829025 780886323 494985256 178531599 301485025 178725674 369706518 408169277 399010921 498420778 594689476 477979520 971792055 958566843 700078410 575580930 695943851 823716437 584015793 624102787 356500158 347849143 376347550 932091296 329873128 686306125 277566166 889374856 130283048 114746299 517875108 415787530 672846105 323896692 177628101 611620511 962083175 175699064 740686678 516370652 192352824 186927625 658921241 382700279 137609291 796612757 970275875 681059799 600284658 328037068 931914689 859890067 595825955 661996623 750121768 401126629 204171033 374205961 403206546 49512173 925184422 253222252 609724344 549452003 102296001 754802165 840173236 833697547 698533081 485200397 717153804 724520297 850875159 211076957 74402458 115607935 278553809 109862571 285039177 779641544 623737446 189337103 743168173 109566107 76429780 471308909 887898512 927612287 554333118 625276742 967225035 442386111 228019191 577715694 511862170 329208749 285014557 409839974 329962820 16594562 292128685 784925758 731020734 995339569 658935408 100748115 373876709 517881479 177418934 936495464 757517921 13725806 582332956 255491820 363218407 812487492 519124789 441482391 333800104 119593386 192105237 963312006 644222162 670786502 669072498 107998375 233748217 52438722 307116776 703490266 25573605 626952922 246845717 679904387 92456478 719301938 205531800 890777628 291229095 807252386 837505380 908714772 841229249 285239401 328461505 67583176 881561956 756710987 299863230 854771770 540491898 409919893 265217402 131618335 24830665 523250568 430669891 233396074 527815068 969619827 794407509 998857168 943310876 97456956 520364466 768108317 250349733 530013128 553856721 364366172 649766443 993979906 838096584 325970217 34584139 297613926 561955897 36253377 871647200 187572207 50972574 46508326 701423250 165594641 935062815 923365057 316214061 346916648 457028621 946808825 117529578 901625062 257670567 981964317 77606042 580987689 140588978 836949613 935739018 621373119 292667094 89101032 422656767 938095841 156356212 448636385 143716358 954148266 971569004 368224030 745500437 573183168 620719513 446913316 864030551 824289611 761511015 765451097 244059819 89054627 591784356 382556256 800036266 734714159 567284774 692452022 562188047 223577522 278064356 976570869 100455289 484349003 460540259 118757371 323329863 663339873 787317943 50565202 583055159 711864931 511219078 500885425 641939768 605391289 661916337 771997762 206277032 552540255 307073773 927311030 254908251 787787830 264939915 388584348 283477004 177427963 982508279 305020401 901045116 165186725 603218149 976613656 118926271 196659931 875422919 587347713 810459260 337875669 446188384 73565939 518420236 736059573 141224225 381322952 653802508 587902214 829982459 982193894 911758154 848109578 769876381 353868799 278448811 474920342 109545058 965497385 873343298 526866573 937214687 400315505 659121378 330623113 721342868 159688641 548967798 876407757 899883124 852958736 646391687 304970317 424541050 420946387 294310510 653144121 336435662 596122919 669747745 881666431 444614282 676259780 322986656 421102864 678439282 679595169 312450030 796665043 123849656 8508348 843186487 125893071 525176464 100374936 895420865 999090472 380148152 59726299 193597512 365422701 73565183 640057005 24388290 327575898 269860603 433160134 367847908 483905840 740637501 166649305 990672285 389641338 783328202 105061150 399573409 544970424 705713629 450341524 978867689 464904015 441146016 947774353 743637223 915731828 44969620 287870706 920591455 986916160 121609105 820585331 938007679 758175975 387614545 458507467 70719583 492801556 165962879 934081277 636877567 834926196 246280529 290808104 110319105 933790390 806328016 86743207 926893036 912951658 798485093 86753551 170849307 437419702 310648490 789220289 564106756 10320817 379391282 547237336 371950066 433949996 216466329 731696212 508678550 445011588 940018364 203971551 363929375 662096833 791267000 75958525 177524189 774826543 43326220 510058481 508543669 940814219 169091540 373615542 171969076 491588620 736182523 524483971 265006308 738477276 940329072 270635572 904129222 265651587 904256360 722208952 250420650 789311377 489306926 996988673 941963871 453406139 670060242 93069935 419181290 684197231 810802821 510649793 782743600 231744033 908855431 625075332 64964984 144577352 756688775 244916435 50049623 688486939 77220819 744955084 137750340 571944745 50323095 940042543 749331554 55003834 885831042 15671462 503659120 598564881 78221379 79818266 120343687 815110864 322308241 189986904 494138451 481459795 721366627 700379887 617943967 889089640 625902811 101174965 299253290 405317162 959351416 431428207 72589314 336543523 885541392 392736972 334100859 398108630 320905755 661746930 312623569 384664408 526294472 249648686 509030066 63586689 792545081 142111344 180480345 254444217 940785590 544193599 977983285 738208024 179152983 911585054 3875012 883039292 965862247 136834931 582236178 545334368 923150921 336855587 844465915 670100796 951085701 253330480 213989274 248966365 169524323 970552888 702266446 155858911 884909483 477239544 710058515 709621277 926845372 777083546 539340882 621606285 438504619 180365660 504950156 54900646 831417233 199713370 412661078 697792460 146035213 106161758 15256346 987087883 116533143 950543305 271772719 531812044 362844100 116280934 124887245 785771403 455497773 587788117 132556177 695000406 16975025 16405128 687174889 326697095 391014043 761325162 741702820 725702857 820209477 396698697 370231387 38302320 332964210 948676728 236251821 995321166 318353059 990467597 13836499 729061643 876714237 68097596 461756572 350557569 288398393 602807662 652090960 965740545 351733432 822559982 700271180 654181279 715900771 795540411 265680831 439992374 792182484 948005354 75283034 690064759 246013510 934083128 903928407 943871341 626143628 892138885 198377030 522775211 919226573 583491581 910263352 419538042 269150635 990473688 876352779 819467809 364218678 724255534 228272088 799662327 981532977 95302272 81314758 842978900 684144368 381632483 881677521 61987569 410148140 341720842 408809310 698665166 37362084 432344847 183842426 36683756 583575267 340730351 191920655 416119509 183775760 27560768 458543101 950337378 652936971 767277866 350955328 82696951 586912592 264860797 717389353 224871488 404143580 665759516 27241209 358548621 322451753 294034792 227488960 806645490 44786707 117195171 422030918 81891753 238805535 537521415 965212567 983490419 255013345 791158054 686651731 514205653 83763515 194643064 801065318 997547399 703962384 253730353 896990455 730878068 286424042 271262787 537329707 458606872 652046137 290164527 831072653 460793850 588105324 126648636 542393006 851502030 347310063 510198131 790494398 395685464 548775615 85352874 79667336 440955664 697269764 944260709 295639110 245557839 105637315 762833956 803015048 821570780 22078817 130146618 384460796 440194499 153532951 988649415 566830791 351444112 377422674 643917013 922287655 657609776 721839262 742304723 443141257 614486772 736199716 291853972 881901014 888919661 512973081 902839888 537794312 476840474 581008105 938811382 333090921 570145622 56489843 259388434 289227525 292759806 64739811 120183297 684580733 911464057 277471666 525377874 90444245 662354276 835038926 327546980 285745930 549826363 748754951 384462534 527392938 534719855 723890350 631141322 183681371 957752770 545360429 300206056 966935859 602458014 477164601 278244289 196989682 348839070 633100561 922272594 72799831 314757093 585357256 868070346 592008167 229171740 114047758 411280418 470438143 174787145 923386469 899715839 787501434 373019275 57513035 918728278 603277485 379164679 623493739 98676247 832622842 828900937 124795947 551491973 770248525 352415851 181394103 173646766 236989140 364410072 320920346 684682881 156760038 175286445 19526372 753606042 525681512 907095261 528688606 493196238 88239119 139677726 866229626 660185163 606664168 142978862 341887636 767088111 457792000 500838607 452554034 697924320 926053045 822012460 656132837 106211139 666402331 273024687 837127233 841064167 711002935 289687320 174015865 246604636 836779905 435144348 789136106 586454206 890798228 158440548 515224352 928158834 908209514 691373949 901565198 903757653 880372964 136361491 456944280 626397068 629924539 703106221 124419348 369374136 322402608 944999683 266066450 574117133 858954752 635557716 274282985 466979482 138784069 956941870 453438444 969535738 617117103 432331894 282995562 148432743 549381666 696989867 608959066 784738561 342348514 168921165 603350329 72275925 617527315 841436237 171394738 125793150 252814235 324435602 818825160 741759487 201194217 273310154 689782527 929309790 950524778 51155695 987272635 677607625 237685181 491784696 915593006 414925715 276927883 308394628 638170731 792361140 243962199 487703072 322679528 323276820 446273282 895313382 937791440 935661779 749884070 950318181 426217004 357312136 846346216 503349926 95069496 771962722 753884446 935967489 551159815 967711314 276112287 675229891 329293474 424402582 123163115 917316806 807855206 885559857 830544505 512541826 372397034 420156051 444300616 243684723 402205934 937290737 320556170 676206399 917079427 85648400 119394355 577818487 637382157 506924117 240869676 589465256 64879324 179851086 249083363 812540661 793980988 386646715 915854675 520271035 115585518 202922876 107051747 664195259 999763534 732967699 973135360 410011358 589025840 691179305 179058667 658592272 597508308 689005489 172043372 203652330 395919480 275930711 219478923 257512509 899987095 930730727 270754515 681897072 409799 694618338 765882894 281255141 745876864 240530691 80944830 749267843 942577220 482990764 80347812 815014582 860292704 684908764 930142283 828122389 991426430 827853126 771323195 609444813 486543369 580844062 144851033 151202152 685253447 308626214 34770011 366362108 213445097 963456050 651335851 813729922 987156898 675898178 139682437 820432500 277623908 505246516 521917610 386161936 640831648 460942364 490414144 684092592 390754353 530874146 697070733 628808978 689877620 360859350 174351332 368544755 133800060 21910319 546624221 85610324 561321539 869933805 298706662 399958425 775439445 525866237 850051409 824206673 759539446 62449137 638790026 562491704 356843382 216052495 501511584 391769159 861472018 126763986 393316650 23586280 948970527 509403915 209105516 590168960 64993375 862535901 148478922 886567931 413816201 254893864 483791789 474892521 866220935 439421918 618122917 716595605 943323895 129467106 106038372 618519231 776313680 473253771 639759180 571045201 997531530 213043302 493875212 819931247 949453527 389899899 797079617 198698451 286960553 484805481 683857035 408983373 615033689 257315437 748734165 790791995 776213569 63027874 413317992 316482593 533052928 629420448 305634085 989859647 587119477 296989354 912666873 76243264 282112222 80098327 79851722 962419671 545648182 990045877 923860941 547540847 225580079 847597104 946266941 860852349 63026416 71228809 276737719 19920093 630150297 890442071 477576761 147168543 993676020 369887674 940737794 35695618 807773756 347931999 316461874 96382265 916478597 459695607 805960706 138335014 887234554 279850238 44086061 930800069 712515555 207645850 677674600 108388128 244701950 170245430 473154940 630029139 908957672 805840552 391957985 815820566 360054338 357936325 683891506 684740608 198388628 395822056 733904540 689115576 956738973 816359804 600613380 147546854 179805469 509173455 257600755 954946495 834185485 399056409 946593868 11477747 543351148 649981752 146205296 554107782 938327864 949228201 243264543 927725163 320186558 25360236 607199167 97427769 781216406 223378135 737509915 486021043 679392292 32730238 252671807 234407087 299029281 199564217 665629432 663247092 156671768 176977223 967505963 851598453 2563291 684746260 903250241 659488393 28692590 337488032 655971240 763831172 255977954 19487768 387775706 872264729 817416644 18243353 431937826 475475473 174973020 465424870 477018668 188621362 456865864 639681626 872498564 219876203 190096756 622225193 120357052 718896813 460745258 541489083 18546400 255661162 697775713 997486758 954774560 258141940 612250786 705938397 376772715 288193832 622061739 962144657 968272010 806051437 154615759 175518726 572767774 379372949 299492335 811605148 234158315 527499380 890518522 380174275 637652323 753210651 173372364 626650057 848394469 493468200 382549074 501639417 768331898 727856962 597519371 784383647 982473756 105724392 251328365 386376783 742490416 934517817 700250874 162658195 338485249 811215408 39870530 803834391 223347094 212395324 875546841 200205861 168530043 272838293 53783251 809103941 985277919 370946371 503590673 537920546 580128470 268656346 439155837 221438049 490033626 511606029 799062345 520760298 161850840 50349879 405577369 841201989 972235131 560744308 466883227 870633449 166280904 332102154 565672417 655993599 188974425 395390918 534501113 240124425 56140450 153180813 176022346 38958915 872234109 852025413 901236817 658504480 245366234 748937835 10651200 394405606 457587045 399219444 408289680 697752592 237690712 877303943 31967157 148905014 933910625 432248282 505519124 80758185 673639794 121783248 285836349 711092031 826760952 869794803 213787510 593707398 744926704 821225322 468294860 968414119 560459047 40135981 571206766 78780576 635945937 352212997 562201482 325898932 26753151 588712540 565579580 579530429 541675884 472908320 955187387 787688145 636394941 172765498 863647681 808496802 782531927 820567263 375209088 598800109 341854641 653489131 280256322 386295553 81682788 659901489 134541698 9980096 70687845 676631097 950283106 730617179 598086676 202211195 109672334 106953208 388416535 766637530 804706366 136138728 390677133 394795709 231850492 234359728 671978859 324993251 832067874 692951771 666841828 455968086 36535931 613897260 800854706 801308658 768551319 165985029 363045385 551689189 362322571 859207696 869596049 629309403 374109526 63270423 537439780 528058656 784743070 56986672 427835441 299781903 835077927 198700280 610847365 155244429 60892882 794886157 186801346 327616245 551211477 168726493 322037108 14257246 141367540 702653751 170506303 322733315 580687980 902988331 216819620 320299847 470749226 926079701 534654023 394825111 350089775 850243149 141959473 332580572 134234148 690570278 428476700 503020636 334643163 889978914 535588224 630268599 344306277 71554180 640504539 28386124 121589468 161309907 923899742 17599888 841392879 85651896 32711067 369557968 884002849 243421524 307868746 990692162 799197353 48692442 158210273 8948151 271531727 628849117 247959195 158371662 292713001 225903644 728739829 57441725 684715241 987385929 875229205 764232401 525388694 140593394 299352092 656836897 156329150 986503794 934824582 291826742 3737686 209475211 940133758 915871724 795013259 509984325 384345752 444030081 427920284 30128057 521903553 377377322 569655042 986520081 745953269 261531335 923822792 912890485 389453639 58208010 859035098 606269998 609545944 923899469 474064192 827781718 611567063 386646831 10165915 774553840 692162897 125803105 717888575 91514821 347552066 475779292 929848609 92724274 357234300 144205244 953965216 907009309 29385990 407578404 889817961 592926393 294057402 145018472 227101795 776947674 132061113 175631541 437915617 783290154 592530831 536958377 190537759 709526784 891392235 257852423 102423612 449902476 619861703 535521922 228065800 657570166 794033551 492059928 401636498 800822539 184162845 494062252 691971956 425827865 313677296 847005496 986820720 419120044 785273537 559081146 830296116 597500070 33535092 981852959 851033070 676249780 954412600 837973682 783203606 466276621 664608232 729026794 697452893 664795634 469865407 698439837 394693792 370901911 921460753 164196444 742023443 818240335 817795235 539676369 208590031 43926870 813407776 118292976 705138719 610557033 457672487 99107254 748609072 156912113 413092616 434630683 185676895 681405941 870845603 927836429 174232432 144656501 650573149 499120183 339772112 394423554 959767801 508366414 550972977 253391382 719153531 526501285 33503596 403643676 586429460 51128445 554716816 305621298 739604985 725173531 741627036 849556246 964241038 106731104 226202911 382655371 363426640 480871918 147479109 297643343 157666681 178211207 281594093 773862971 371915561 764921494 764688788 878824579 126624405 802788953 490265656 253686163 688607223 388578871 540581735 752718298 116923852 521480539 388139241 202633323 242992425 957833376 462317785 768488051 189728613 327498442 457289775 348092618 362601749 60107428 631720054 347516963 102471644 738512723 61202523 870587544 675483569 599101299 398121544 29278821 348790374 901019498 439674866 833242914 783487354 168497246 858242711 185102007 92497057 217986775 668172857 306684065 892693539 427555812 630286661 943418113 649250893 513275643 115501105 830206577 76486469 389398989 368528895 364678029 231703994 498138719 577800153 154112981 905293751 862083132 33751215 454612076 475967767 570210080 918338287 954974431 773144013 269058654 13227800 558432397 976966020 566275607 219848712 387395507 478383983 2821255 293681811 60381315 832265380 576224914 399269383 179065362 679790381 967539399 527506842 7689663 787822663 194562461 987521726 95528576 200263103 568344502 700214931 929280673 458480226 114309219 619384856 927756708 728577551 28238760 475746131 984491520 661215044 205971943 281559746 997500861 679718298 369353982 420698374 484947008 270992529 516679519 406161838 634498955 780642830 649996578 922685877 39830015 128315694 419359010 229435878 305369625 786608201 601300303 301746012 883230124 895110308 225468602 403207617 117072668 83850409 422436277 347609969 476158752 795523388 257031123 419064247 961677314 502002888 616010394 619136364 454740126 393792649 996382550 551903781 111698518 979115236 888585156 477906168 101825704 100057674 909226497 600119826 727447502 632598174 488308830 115414604 28196622 710719474 495758916 739532567 79262749 365931130 677454461 374010496 94776555 66815981 686449190 684313044 106836683 269697078 762602375 201099636 770829763 727166087 131167954 756766279 36631129 90331868 710847657 534815269 73760350 722443269 783591311 545065215 701168388 859504978 568663069 451494906 991086075 457752696 175785759 690893314 199753524 808556002 12084895 704829631 510993665 363141694 20354569 253399732 686290176 291348879 185671518 106456565 815049332 155214863 186550599 897945122 536189233 898793754 626998667 343459480 272719079 208790753 329273711 749366730 422039678 379634205 774634095 257029039 536572532 203757979 919289288 666270904 959629765 333428340 530389949 403989397 563210043 455382816 364506931 749020825 221832669 710888108 229408950 544168372 213392885 810744563 706171251 69868167 472535647 803756624 365179504 496982386 289746301 401147492 81547175 802002600 362073220 57413191 560316858 898493275 273297092 268806704 734908924 255567863 932959199 859988326 715293378 381319761 51248449 700903439 214957844 69677437 474093153 238555149 976788882 515711040 625444660 928296531 941026941 702386309 295350411 954740500 910508342 259009441 176331981 888580402 90897776 741166499 401330842 460602919 87874677 836614879 535782987 70653755 482985159 197001533 712291650 915617475 455884937 390340 463248250 282709570 602243404 420400967 88075768 141622365 230886603 323388602 164518518 885608728 368707858 858028565 950524743 251937958 85924338 426024541 575414740 322482996 896951812 602124078 646424010 245074548 634650283 935857060 380339904 952496801 735746785 155402712 750573824 568100646 663549905 435391956 965924815 499049373 66901484 252474961 922852072 618052377 540904982 101475771 774950410 931369059 871115527 864625750 446135937 942048526 780507714 852198495 817300517 353400581 280507881 465429678 984615337 435977417 531172896 955250907 497999062 685843285 438733520 412542478 611130912 377047824 426496625 85174535 29953731 62736904 144578071 711920355 467924665 395630197 822053415 742132871 539383567 243325240 305542642 915385946 734101006 149624842 787296870 294345526 853327960 248010003 543663746 461544317 489157096 508974101 543793057 514986684 776685140 498094312 903391578 679985854 402455909 350052643 351773172 853326753 545359813 29020378 939609341 58469190 369181545 418991952 983815278 418658761 608740239 409789723 388620502 277593468 539259141 623966438 91787232 250916377 680078165 51434968 376535426 357704220 825480082 596557368 538297124 582138127 517503839 920737727 530169847 392024753 810657640 619018481 214278289 477442106 710346189 405767674 81402616 2889477 924377773 640225968 113258005 971032037 671846773 632189091 686571527 300514241 145461106 620379337 483356460 958326721 594697635 908879608 650000914 522159261 673284027 734422419 820319370 30922905 112085942 748789172 812043038 269225135 422221298 714867516 742475469 524765667 397950760 595743027 894532511 892394965 154203335 873876993 530314116 786275201 294528060 149638074 500277522 790222056 226309847 216278822 260891153 788386529 429565705 875527878 730227399 702220180 22792909 891609413 786631066 503155063 251878585 289164204 377638464 927187296 402433792 188092095 672260301 250948180 598300897 207837971 678467872 127154877 65314085 168898400 602751382 600446920 698748671 346999783 146407480 932458911 436671091 561696550 796009139 285399738 381446584 946148919 540728666 394024460 56723968 583557813 769694713 120793804 944629910 183922360 546128385 146785411 592413758 214841434 531037049 297398233 884961901 159856624 216781587 768412632 718558863 747802796 575049179 423408128 472910942 588723620 687725671 774633413 858810585 31792679 849868611 515498906 319392437 705831481 177421435 381958060 131828005 843037896 760233569 903200129 906858623 218806328 243477064 54410713 596466910 772184157 597490953 324119867 385360652 415436688 497496743 389779386 923690450 824452530 954244462 243027243 205858650 584368776 53591842 388298561 312749038 99777266 917672426 886667171 631936453 615515005 226270931 985165621 977133368 371580067 32092021 807549043 995970212 777507607 62592909 430793367 924309641 596286073 126404650 734932905 803853286 206427312 360648353 834156588 407418806 869590750 436884609 850318270 268617374 738269789 978391503 970860284 323143284 568780298 296321896 442997257 247645958 162880127 464144363 221298954 57601890 226818019 363150617 921072061 128200915 501305399 523131260 36018690 221768202 655439258 456645094 776344574 491656251 276553483 755510807 742845048 717578979 527645055 810372164 755453095 164942947 274021359 319881282 185858589 244085544 190155405 318446572 758540593 227099481 741619108 99974541 625277176 930490789 486308355 11130401 29093271 272265670 998809440 966982216 106125876 968734233 596270342 680686540 494456580 605680890 639307367 550863400 852444607 326440799 601355034 283671874 360533759 454717330 815224656 940890618 707407901 616128942 383427892 713601782 837445349 14700581 880878828 455832645 445473738 874955534 543053589 562376358 358204814 345821162 15545194 397670120 641581297 464510450 138307744 570277240 631397853 241886665 918783697 468518387 217279479 547570880 495025844 276479918 942905899 847554271 210987578 800062591 320216106 475770135 27290923 854285354 937773683 983105961 691448769 216725336 866546846 749546136 525650412 577642417 716749937 766562347 236267205 413777698 919926547 79072121 657276785 889306227 206440023 98623967 704159144 173784158 86468151 260006254 731601011 724090560 778290125 674167747 560751780 405069229 33714999 586227113 771579781 528990017 290621571 890442231 956848475 109820161 205330489 409240208 449084091 513690597 94940852 499921196 28521861 902130562 14646527 479931549 267729483 905958070 736298488 883812615 421134811 374790371 817732913 950531842 579951350 234337128 78787332 172592777 627627014 740348771 698707312 87940501 470739914 645884046 764897459 962400329 536695863 282617355 359793490 779850702 367638939 537246439 729317942 788862171 505648861 120659971 326117025 595398976 919778119 894499596 10401598 814595249 413718146 489292983 716650872 586481315 395467345 423686620 291798297 688595872 25151096 475111222 287732278 629016433 963389447 611362362 117550338 875731638 387088125 659864498 49440625 319594835 785051920 282883759 503662462 386726942 520185976 617567176 772770928 157642049 154944936 578089002 909423755 746575351 933331540 481141709 807872620 83979477 188171821 880730796 519321059 639254793 837670780 352703434 62773866 521923902 540588845 713398331 91219406 895169524 786970610 522413711 858820549 255131303 426705714 133666337 250316662 662596412 96345008 102238475 267499539 116544806 286113910 870620186 327986468 343070863 382833986 979886768 693989630 13536767 327611880 240794939 421148649 178094618 396207577 640456776 131060341 380000407 271816572 870750621 212159234 817334561 952759900 425898183 824427703 250471901 807314416 82831458 359258551 573768447 239497240 391058217 489099299 946351502 989630766 223877373 873549715 275254682 855347756 765665346 915764750 632527818 168567647 751632725 749462148 657034179 32193292 652826140 389477698 914300574 736711721 291504665 54465940 94870529 636780436 865935184 457152966 790459717 993699277 926185663 484158221 589221753 272641319 900009015 341735781 824842522 204051919 535779813 616351568 777651988 402965324 318535951 4167030 425818195 901149168 68501460 741561200 510187982 744750713 27238067 966382864 915344909 930048805 170851840 457198854 661463801 114384550 808400767 66584526 496726851 709166622 182846311 579424902 59658787 5499222 387565215 121631160 644933888 824357273 185981724 760326762 840569169 986169869 90209878 343942531 244720285 691510153 992698638 291179649 890295364 152827499 567190762 112754564 818918125 84064727 433151144 597758700 718468883 182458778 693060520 104425973 320816760 846061601 173572755 527554204 990765577 237308507 798845849 363516011 922703065 261154092 738979285 286762189 462246876 965716864 624977145 665910755 948188561 458614120 275790607 833034839 429975690 990487729 16382634 20872716 449210247 386873177 181019965 88713158 485686421 688425074 344420656 81682551 492693933 416831011 115417594 159520575 72937833 76552761 692220716 943881822 517628421 267151083 685757003 751229020 690334385 913506157 787247338 96266844 79855337 719012379 215565197 742844931 926072340 921821110 466889883 361882487 139879683 478660112 922325047 653207010 153037706 942727619 596774375 440510494 629500143 903071276 282425359 816423508 325571743 489321479 899829511 700952895 281021479 296741048 627385142 463504485 695238538 908784367 375474980 267575782 286459660 558870471 927371220 312097020 32883706 231115318 906699972 675011174 718800616 705683200 266049052 645473491 796108585 708390317 308164877 886741182 297945581 567517738 835073301 555625446 886299985 206707800 584519996 194624598 547077887 402619726 772122139 666561613 944786325 436766925 477758833 933803750 949209017 929649159 858341478 985635992 144899494 642814305 344951887 60324216 525867850 523972062 948899391 599626596 811546046 606178729 92643630 99394892 140656593 402544380 581009308 651021768 835093474 793404590 894465773 82829484 891392099 188619494 19544070 819270194 318770236 469869792 954261612 237486663 691141730 886894798 350377296 226371995 515547831 888089080 225161079 870621555 594425330 109473652 62708339 243641184 221752821 494542942 837221102 911089864 739105266 284318462 328496634 243143794 627399447 69653721 40156784 87078952 793693344 941334287 734935723 533551645 148199733 861896031 592428824 146036572 466793065 691484767 261149791 251613128 149312285 638543565 457482542 928676033 528068694 335170538 460347004 933024020 946154445 467630245 260904824 905793898 357667819 106338045 633182837 563730852 271379469 409354792 644369556 216752683 634612257 381017200 129296382 858349213 29361202 657776914 234904980 54638592 466828129 895029629 663544829 523297780 535808441 53394433 512111554 760198731 322976769 893196541 182986756 526932939 311508473 664609717 676296222 926160423 411544640 468672555 402838725 293947276 147841776 599085490 831906721 821222866 364139583 112458226 66369790 815241239 697331346 13978620 339838959 566757877 570233766 105909073 237855545 72213162 457624277 482038586 470251199 267420908 842990707 979727957 213775085 559865094 549926044 363774507 378249023 464597173 751652438 6167210 259667388 383628698 124355331 730452475 190611606 986938822 502240624 536720439 442120096 666435479 882441126 660277693 498701095 23991718 462956498 959258295 675189667 38740846 859475598 474669623 241659594 328280752 931957891 406870241 943736744 282857194 530766806 187438194 430921041 816105339 254526115 933952040 627552195 226927229 243987495 282788326 584950911 789039880 546644138 713758025 329450526 861143656 171078379 412369310 748976962 407634532 871212875 459504222 293743852 51420748 418206164 811409058 515774707 939382108 796946828 216897187 479381677 612907329 748852775 203072147 297664421 703618787 387894235 304616430 874463567 263070116 615519743 369676354 488948305 275268721 267464992 651438086 405043384 826210063 885145004 698824352 566420793 175883898 357627187 208737157 634977821 569779476 333854590 327345522 112202933 335885104 78905459 164032536 941396822 109854136 949530878 416976657 372676388 742728677 458355270 160556176 921185565 684430910 868191147 465878770 524837598 296305003 941919103 200610130 839667563 326875736 655218448 516834296 266596717 826972757 930999656 217148969 237280782 856043191 759814658 324578473 468415988 1915435 696847610 292957932 903385913 979309360 172468044 807221241 517529835 4180853 161167194 167080475 583177220 68668214 756188341 736976676 898390228 109105556 490254483 491969533 374679413 387648507 77874806 351384250 672996887 344492724 277479183 583547411 170628928 143961428 659547165 489982954 451086675 174076127 756733895 24813908 174268361 778427561 985318579 247647845 399944614 809644873 160688536 8149270 968533399 353566492 485833159 643915510 725346295 867528718 216423269 984058337 796067665 926331807 817663461 240822971 638486880 788190434 885689028 43020425 499377257 163698030 32109961 238830011 622899474 908814633 991060762 167664741 516431575 199284411 109236863 273658159 65858459 878156656 788658915 448133048 744580937 554721075 979089527 58053575 993339624 433765974 510189085 610407691 151089812 816232457 882644061 292150723 777675989 886458397 726286255 950255864 788390626 648052529 422801679 866692914 353904405 705328911 709205021 486558020 248901472 402757941 737625545 653916877 385413869 122978536 355836444 714418214 883895241 632262858 372790284 822704616 625534551 391477172 910784879 616422759 139204292 564124529 228467980 68876520 596276020 740781618 190436258 168363265 836709708 814238818 273970806 535757038 193618885 951574983 441547103 84716440 782671573 24037070 632060003 755950555 95251664 599329255 641690657 677606774 355659299 177782536 641017850 651526039 58100713 304437633 251643679 295925084 430478489 969939611 306031704 853407667 498644794 761572727 38990288 845082720 735736495 139714599 191239477 482129307 938363263 373679163 786310720 133526473 781345884 428228746 97550590 881924719 569831231 680957929 459686579 933498636 193180564 107950732 9614761 606351446 766483637 698289581 177845481 717045440 302953353 174418158 110777182 373458526 744834070 284427447 945773346 952148941 635555494 592929984 678395539 31327581 298683254 157178624 464609568 147723262 985457998 848401805 226068825 320029785 921241803 793892272 799755411 245630095 722209347 444946844 851117515 678369082 676230863 923468447 134412271 957583828 638783412 392730067 694438550 985927140 141414291 652104313 260208752 135838703 445210746 25678035 614179274 778179951 130845391 684348753 869786680 256257998 157984028 563634760 375919453 871598957 368996096 32728641 139487019 7096386 102834214 837937095 111275301 837190826 893328084 425604769 952021276 238706024 988981089 643184168 31347878 355092797 467538651 335158409 938135032 653538699 749136575 33341097 675356393 981411223 509810845 417187523 860591905 527761001 354064307 275732042 357651333 389430134 674129109 626930170 200755418 82353955 675030254 105308259 519882045 972762740 67410524 194291402 901051616 839582578 223575428 649823870 773936385 468632480 988617721 950012247 8750853 880690449 140240191 562151436 906931176 201963816 455187132 128713993 277228600 916727707 885794307 59633271 164803603 260069172 685723544 781165525 748637329 98966870 521133076 3116060 717304658 139209421 925434826 923663869 232235080 250192969 798275844 92707064 405745151 868164193 561403515 564408913 358075864 158026255 118430609 715642374 855977935 843743437 969938115 408239199 772414339 103232722 118534298 489983389 549447372 317999354 208049 281178694 33137328 711839731 955978261 977717693 382574528 114808593 137947920 310155932 698385252 271056420 839703226 292952125 670267514 426919816 503050036 56950773 507085156 731899693 363595000 379141391 996573998 951966244 94071338 213660641 944341954 948710019 855534307 447227539 434045551 754204530 329385251 880840740 110376992 171276351 986492328 101563184 164142294 588792846 108075215 170512768 602291564 248822787 673336538 713637844 622402481 683755195 943516753 809110271 771014428 703558078 235322589 176901117 619179502 47449056 502210385 155390018 257846540 205107328 673158549 785829757 727334632 393005389 83170901 524029671 472897760 953293725 393171157 801319743 194304945 192178599 13135789 818344590 718885587 780956008 733032173 629847769 627833410 690784839 414425125 388945656 990612364 271390036 488198041 674379925 855034548 2293222 692908690 954265902 821114356 180919888 318109919 544912525 443827912 507900815 878506523 104623382 621178352 527991838 628589299 858615368 38828782 732088262 389219802 403061273 649621891 954132628 382188946 434570182 896995578 561160274 717135050 583425383 654171908 463092508 957355015 286538210 436705132 363512022 113147279 31759521 214297975 196857202 102106814 771176048 456352794 959388240 919940118 860862601 207542890 779790178 360794265 235012541 470985378 915940971 185717298 210302459 760460471 14393085 111021667 99767104 827358568 691288323 861012932 995158445 732236308 598323687 628598139 590922397 107158142 729302017 1160133 773042795 264180217 592644205 43610538 302860453 831491349 706996935 375664243 752647793 206184629 57558397 971634774 671538908 120882637 599109366 788688057 380277881 311167715 560213160 585152173 218640405 365091760 643135821 859939802 714407796 656497060 660228391 746280849 348460476 758018935 366098849 262045834 896390702 416769288 836081185 322650978 376044246 810535588 955070724 44869628 496067284 407734693 388563040 569108828 535735514 398421122 615566068 284989899 564154737 299361919 164789199 671398960 866941644 534669979 624251722 151075955 137819209 984306304 476253152 763188283 898248270 203785963 258531761 36917355 134857423 371567059 962981217 719499702 7311089 19993832 637575173 456515833 234560306 646843840 979738578 672353042 849097414 226394607 180189748 882193575 235302505 37936983 136284292 984769636 193245630 232280009 881271855 728128849 537914395 685565410 759776458 91405828 964631647 430253442 321260051 227098891 320279757 801902131 372973799 604292847 645214242 358744546 716721478 115437388 802323796 176981939 498645486 43826788 736098057 670871201 313975816 374849451 404191337 416773525 648221570 451764465 863252920 793333711 824635838 986869690 138979857 736220122 713139735 578933229 485448282 77367177 36166647 14634996 38241044 545473669 235457524 662539495 983634546 278405416 797985509 875895784 566264717 411715180 480812152 538269916 362543639 250846184 810359602 339947499 558819128 706890983 882231055 303429008 152738755 21878808 261408277 476232121 407553080 94082518 959968605 203382129 845176687 837188486 433486073 491870993 978461414 480614684 596065172 957272923 975608050 160106847 104813363 945617489 951356693 453204823 160926061 103022404 356073642 100034406 68626958 608776361 781177922 984744306 59129078 279406082 91591511 780394641 582281554 324902283 122627160 774385728 770766527 400322914 444360072 806259840 472481827 969217415 626163750 42290643 683992570 232368325 808847399 451466683 870464123 760334994 452096120 571432922 876183258 96426668 872228912 217647917 586783459 974444719 471165882 633768804 485143122 252402278 4863731 889284304 129540711 713691489 401115654 862014847 386699626 866677780 759134450 612711733 278556135 665257936 289140645 413776132 99877440 807646160 305497595 440042030 296898274 345347888 280059757 927213122 950710166 966721661 192131055 63423901 981367113 35166504 309096641 101727658 686879531 827031777 818644406 209968200 173291267 739372987 112527628 400524149 384155336 37926445 302700071 410084208 323144179 871707234 929346902 281128387 175820111 762450010 191908769 784988416 919664975 633557692 700087955 775660680 537429322 44621125 433283273 248098854 254429556 597480918 599367364 521705014 190294606 861989697 742617293 126864359 232720669 505737703 419320439 517795720 448326458 247476978 498451877 725496374 260144958 309589955 467027679 430811632 180681758 261652979 678010695 799822402 922548956 49765704 3634121 979259511 536786379 965757077 252365456 519128354 234147320 759536492 254562898 166822800 493884290 35694197 759559718 302762735 955207926 939707466 31631913 75603679 671347912 769967864 469761173 463089889 126983257 477079414 479122736 64976428 681639615 726655306 35475451 77714759 420209171 798652038 866155287 747048512 185546668 543828932 370995432 997696249 436688490 20351885 672836757 461973818 77140058 287943843 633642676 298735321 831488077 242564604 888299616 210957734 107903115 801072310 710971703 307182625 99143203 522786100 37164008 536614551 346413145 833532614 513679613 455783073 631255826 386551465 871755953 493284119 463130737 423712081 649780005 421890726 726843980 778501209 207318588 465429314 913874485 881487613 853470985 908265260 297944815 241176427 773653396 140225652 884106104 20944619 988576389 836568387 822128723 454911981 124071038 930045375 854680951 437454325 829469126 961401493 942413803 427060531 110877994 289405421 823566783 247711970 318081978 748926101 256702214 906271975 465808365 355262440 453626357 4193184 395922772 895917192 802265262 798734631 611769826 894005852 244375338 411086359 717517257 879344751 245305187 129104232 741550702 235021763 500138430 14030633 929626111 633762973 984915045 472450812 896040464 994206440 106864008 672682298 164923398 488319847 450474316 412393843 247128064 778353178 481858822 457439213 83950311 277971612 883203952 288138145 149724961 737255084 447967531 496249131 46783989 926323093 647902471 367774155 20632803 193786291 293847146 954094732 835348635 651695829 952704240 74317821 698970265 487731693 796224266 849788930 164140743 76134516 920204614 256268178 173529359 426539417 843001476 317590600 307308899 609964561 214930036 21634226 73659827 175550281 175460640 515010633 706240425 767961890 646986890 187857396 970296409 715057146 115627051 393835308 524624787 123902659 49367903 51621214 996678291 394985499 158893401 772687741 645616290 362010445 206320454 170854106 834908244 916490427 912360403 751368019 565412978 427980130 795207295 928838431 155277518 806246264 25766211 297301321 191834590 561095605 429269444 289564709 406510295 737203182 98324467 476412312 773923157 812054697 541748019 631465321 496414612 82168383 753761336 554055419 229172088 857627542 23190471 451194302 416348743 995266502 128259229 749163662 105204713 565626850 663994796 676312939 801482872 136813918 691350495 416366361 320331697 798417113 348496206 403285220 583583265 459689440 893104070 341899398 667563290 94017624 560907884 698927626 589716916 173502898 668909435 47893265 8357173 445640015 238623119 365534110 476496872 239563270 286914810 166809014 980056623 807553684 638822988 829661377 808103313 350659597 284360369 602515398 588631046 28026984 730476923 796895841 364299504 314779352 939358530 657889410 712360569 282783135 637933826 732158571 348865268 947390545 194039314 361029257 757305427 395003126 812266499 664021047 60341148 9512665 742907966 221161340 366546543 952786087 331837200 962923682 983433260 490437907 625329164 211818590 126111032 420014445 924797629 146441608 20367019 547019359 87956250 493318634 381803891 743651552 706027833 439328539 215182492 684686529 736515062 52607587 61171554 899428246 372899798 67884199 236064032 309190174 73261016 413654243 394983388 217433444 652552980 250195649 837686041 154104366 52225819 576484245 429164154 43026033 946925562 21751354 999335968 567645960 853613401 542027536 856236277 687464142 403884755 762251256 411157366 802396455 209286164 487664167 117790000 85677963 849823789 568821997 617587825 650410707 394701211 615497544 870323067 494635327 220385813 186001863 770389281 476255727 550462048 773228662 80775224 905566443 142312416 793503377 965992512 176604087 279953886 364418552 868938114 352953261 271683121 821697018 704133140 701280676 501429203 418356186 725633106 554252850 223742886 91803367 742117336 319687348 129506050 279752586 515330690 644598899 918920616 67888820 186705736 898782399 169110308 194828499 383607444 10631744 497215279 956075858 681382742 789681200 751423374 475764688 189272238 420083693 10118087 556091647 337257906 909131029 863554815 257131460 509621924 222360239 323547386 603578148 717592739 791404697 584969994 875613484 483107741 302673164 611571221 905883549 936645588 277756132 302887784 740892362 632635158 556964534 28918614 284027335 636555456 69978366 637893744 554983392 584981637 683238413 906680980 571246872 741040398 563954559 973172449 660813427 533333967 211544571 529289937 321442349 931625667 618795509 770536296 84886476 455146881 595000084 148004325 787621449 191041275 450040488 433797712 563362306 765743534 444221317 485690693 567260007 633349779 750436306 615921149 25759131 437567994 258959034 488507478 758416382 811995448 618865059 309001930 107306491 918650604 975732571 478836577 313523815 535184524 291794447 427868343 575491864 124880222 135173560 979611443 984256026 951612600 882185004 722158690 738776029 122399890 943044484 42247526 394954759 731113162 294117712 471805460 32778223 287378993 905158398 978946988 25703680 30963639 169944544 630819244 95552898 309627080 860680925 965206267 639003618 732861243 907598623 171532475 456750552 947074568 932837476 701797643 395173930 908431383 690573211 239092039 480413929 379546248 322824628 877302060 477696300 192224366 359410642 289852732 929404186 597025933 401376949 39348714 200454016 680536524 933422103 396862445 616206138 23520763 376762879 108934446 9089965 188250983 646918204 522091389 365967156 643929592 935154389 837497626 322492173 192426829 557470389 785968640 927561043 487819500 166660713 426178246 867095672 567828795 354254129 305478408 485285715 850693646 454609123 401206510 491566780 51585195 57701740 980840448 663163366 839176961 407309285 502840086 101203836 473722535 921189771 115006739 274724640 793262954 323225387 764945725 911062612 819762652 390774372 599650370 836550151 85845555 154842535 252464002 282189144 932748947 793505985 665542327 809128418 540786680 375254900 808709390 895376817 413155869 116528109 36075591 585896428 365992845 464990837 115817380 813498520 349212759 817089494 429645073 846840413 487238856 258000617 726038821 965489220 437477546 878187652 54799406 60892349 325805601 462811472 719361525 860087926 575536027 8010405 45635969 973159627 80114323 920944487 804819960 152858797 555818093 225347487 621753817 895650282 35358429 588134583 554622815 817866052 338396805 345334726 831123183 626740794 246799866 782654479 326466342 884526744 936899467 160358850 715175662 784455346 352800329 600739096 481950689 353129229 887461852 453049214 923199635 638949964 110010386 926213378 742756519 850884914 461016446 834719157 63309851 964611949 425758815 280502827 247775646 760513628 492543437 74640450 914074806 212553366 672752542 233955453 851647976 912312270 184110622 883729239 31366550 278023797 300518476 834987043 766248509 434602550 992463135 31012599 899262859 249951885 655160122 161822098 309999536 259789117 932160566 814255188 555818811 617789459 522797785 427941878 886422324 857606665 628172201 162010576 75424163 337641888 582084693 797535605 488198179 883145453 180839013 146133887 465947003 678827918 714236110 773838942 157275190 420858251 490461375 880977011 21143781 597747137 739803716 977041155 609763635 592889732 830448097 640364500 665305908 13443770 22126028 167006991 625828262 402326125 545939669 433715720 993418757 483263696 278844574 192875357 982280642 741880796 399298939 513832390 990022983 278268290 428678745 489518976 666043408 656495654 951754845 615393764 668721898 1868370 79576787 196304243 522837411 721198340 252958223 578140569 553901096 554726755 882781990 806468201 860877978 194734986 796381283 187449117 348456830 355683722 949000930 777004103 884633378 863891592 697679970 482181318 866324149 210951594 557303248 118768305 31413504 982377931 955548594 197547979 882818606 996012133 140373630 895537448 642828624 468481641 384481476 106590304 979095098 819715514 398234358 28917470 96932457 751828683 312606368 348248100 50155758 870360740 558240055 323911181 595708648 765938656 772999522 594165327 476845092 844849575 16318910 110655544 857659511 751536076 315369038 363801250 54636833 487674216 435753359 83731131 927684422 334888614 191702916 316445651 608683616 378068432 577916687 591381702 667656827 872014608 547004299 468816068 428026524 208917646 828282457 396414528 166531610 291860006 67615119 407839849 743425929 753509573 506700471 522567534 287467008 689065831 778140664 619116506 976777269 525412087 601031215 408614954 127341194 97388409 730221040 612649595 962558145 572412419 699084514 130393935 620913807 717048578 519036149 679449473 763821200 253209082 212274945 112979536 937288580 726287189 322645451 519088377 973366155 730171339 124662849 818593091 156483816 762083549 499621582 458734913 432904240 860160898 18754951 283506778 793577382 942887644 337319766 256666877 546666906 561742640 279678961 752535880 744336437 272049829 200695867 48887099 125086448 347858945 695485199 933497932 708321294 465404563 689450639 437594087 147688730 679261278 888853093 299762379 533313777 589763146 916665346 673557528 428813911 437488552 101858644 244574910 644121819 464338182 219457656 595382215 268467739 863266388 724652746 295441861 351421237 932126957 563135146 314184735 441375504 395431941 587557598 414442535 312750289 715239785 571046898 899076057 506169813 199038216 718819163 861962740 636563554 227584443 199691022 796532249 989276669 435783454 840943131 750166386 216844030 186227822 189365764 543312423 44642905 415164108 619691815 67446843 145500873 906923119 808028691 13470613 601594645 395769777 851497261 847507369 897242890 726382975 661940800 448039375 12323978 124849840 557673561 630777940 556565195 757005708 990582051 514222807 868819441 947397288 690607055 321509746 927326827 366937544 448381192 72581688 723385319 324304714 230946501 535633844 465614823 462538563 5528621 330420262 824763868 742132791 647356654 702785555 353528371 752863954 11091150 306154613 457731530 968565096 897252514 631561493 242953184 818460542 381688207 812011385 961761893 691770978 655811645 965355859 556284305 692617970 589374195 150352737 413362990 640963122 726575449 562970768 241491516 70158275 822637104 912583489 144384805 29383287 616818823 734229569 190516280 212821143 281700110 265101560 102903416 594927478 568784744 826188655 870971680 609659204 609924038 701932864 363842891 226606519 100852623 780793879 653818859 956154820 524877521 564183263 892757357 915245012 837726612 169843160 530224333 231135736 196808814 671110774 69508629 951730836 923162341 257687909 719003563 913920327 887590911 149986640 678631670 55472993 853888912 96019151 553573174 727413104 893847867 334738281 416551512 955722496 237540584 59065991 551453110 915184756 876068959 891642482 632075372 871637065 634807362 698770810 663468073 495671283 359939556 192888007 973973818 675076167 150889658 664923183 742541452 314994456 112849289 907271524 518133814 27599990 779949931 560615422 577013169 106429467 470555231 325687353 336949104 216706617 44953283 622628838 210931470 675363343 122946792 346469908 215077886 421978377 466023719 251768097 59232514 674728397 328146030 80553731 462035152 649179174 713326201 490784622 903300346 813738321 773977986 315340944 513164616 424974310 911198738 162394391 163953253 560799301 125534905 873800347 240461113 198773769 19519502 970573271 241471948 147808555 344943011 700223844 336936815 637830527 594858021 631774885 965955909 446469641 943105918 561599982 606402917 583571186 123034227 444372455 852161885 483113882 31047066 660913911 298717284 136674234 260510801 773207657 750935476 987926905 277399991 605094031 123976967 995944263 422614893 386283273 93353660 784850643 862532541 942139984 674649803 811818555 274013968 222092099 924045191 96312009 689891258 276076279 765087224 551219383 116982173 979305919 986419699 892012349 36392760 711574765 560287710 828597572 330732805 995736121 679085126 625253491 714188515 45095884 140798788 441944384 83121061 139147523 461914916 304104098 357594070 159498947 678984843 664670532 255324815 933547273 182709337 897774441 199110633 217319562 575565275 114865769 167702940 724906143 175312362 893134118 366051316 258739233 74139039 299799332 660627764 809705703 342773576 149793053 791912176 815684259 660012868 607399091 583118045 465944114 989579199 78192606 913416539 780750369 568403417 759354730 197439934 40190447 598141850 838918223 763610143 936036072 332494162 129014069 155305842 338513182 471605151 706049811 857291912 916254834 532260859 609259117 746589969 759203435 823949399 237451650 867916681 997034548 740099179 613971706 501149414 716705742 423916683 420901927 652913795 746937284 681646221 229899137 53478810 930016378 864705654 547395532 842326132 439647712 934349551 549549481 684229677 590591919 14198509 40951540 45085494 265121664 620759359 792910341 269784086 493805631 455611784 197389966 583775193 77466898 79011334 923799145 796953627 34415376 754125236 291510014 286102666 762278734 622453980 831875723 520824217 7107636 157467977 66944895 850764147 867074049 963635825 130108052 456496737 605694700 292095095 681534771 468982339 666716484 227463854 975838845 360062800 234715733 563466379 483809412 502717255 571005294 470466191 407819823 975033531 134678619 107208219 331773204 756994017 52070531 835034751 909695012 413492022 623355716 150698153 780301098 321892734 101080265 485343998 212909364 960096721 455000194 618777439 567836799 797609627 671514558 676373033 728693939 59817418 385333497 508396278 596210145 187815422 358033732 822289459 515562059 862534159 943879422 154701532 851538823 217767166 580305236 600302852 566860135 796632038 505773444 848619258 514668934 956080272 393817241 311934987 295920367 460561344 542928966 173699290 207746725 529395175 96022230 118232234 549527052 595180735 1809520 29329993 224818284 479882494 331686934 286965760 347891043 693655574 63591944 337071895 54789282 8141888 844899390 753814798 260942902 722434693 306167357 363226474 928833416 784989608 164356951 642607939 489512172 383959210 653009299 395022662 687066039 455750269 888673806 84883816 575607450 632098376 652277652 184635580 84058341 885562693 568215068 183212791 276222331 744207549 63825970 600925854 197395479 510301751 745977372 451729876 735533914 879972969 877626035 341852590 147137064 235780230 968479326 958953612 348318179 57212658 596505814 624776190 703513803 900545341 923631957 111828546 326516485 229824823 728294044 817675162 479430034 710384258 602058942 786533664 206703620 140208805 251592672 718736609 962903280 665961430 28605305 244783334 654119973 909243956 233430706 300152216 678412315 792360511 24118508 100232272 722839741 443879956 606418438 981074521 931365325 83577167 880928200 279163644 211478098 969327113 683337244 572985450 507499448 917512337 14938039 750531381 736996195 256121631 691683622 227990119 321447023 83082812 425097662 441104770 683827622 538547412 433759109 506025084 534954290 130783199 395802763 188152037 815878249 897671795 962366348 613069965 627021900 417574958 436294105 214397341 18894460 142759734 97158480 239570587 650743439 693861006 344515102 264929672 681570205 317814082 684402013 310778470 683152221 182361310 293133124 491362712 906244145 875748024 472945381 935029386 724285521 857280939 967689384 293864013 493870724 749357423 596238246 947196034 858366922 303664853 202276546 627595152 741874401 618919736 964867149 872664929 536023415 649347461 695576208 510911326 375716929 831342710 934171750 237263205 122031722 357143139 605729077 901247580 745479506 540678317 440462873 248692475 655185020 247866337 440364698 422140969 860670937 710926148 382799353 807992249 130657772 317763153 381044720 66741939 304089409 728114530 550727233 962059389 377023051 318069361 743420405 720609311 807148334 985085821 391578383 791003123 279188896 997755631 184730714 233557056 399209051 604298864 999532181 784230530 280980744 732778580 524939754 400457331 323233026 865823130 529647242 377227127 643739343 608574602 225564435 852040728 983511516 407208474 948891121 882584814 994490174 596720828 147666406 897043080 225136497 455683674 116511545 968315795 702072401 216674794 801978169 11940313 566090535 2889227 336073909 355820947 481829529 819785316 575915256 23190739 721454311 758053182 834445127 333165280 962238110 433033143 516809016 120956846 943961962 971161755 396323198 898940468 450040622 413169988 798479320 567933487 167969221 764793233 781760976 967962380 490156274 16194302 712575918 17290187 28075419 480196015 791229469 121040432 205885644 210369761 634402850 82238977 268694628 438843715 257067849 354860424 755063224 252472832 302419797 943061446 859208979 600521299 407554757 55417401 898287736 329613187 541911966 927789202 487312237 659281606 256978539 393486510 813292413 896241187 95446885 41498054 303872515 326437337 539454864 618051026 873341672 793095631 294834201 214041811 318140118 979126985 43972068 749753870 947888282 243449602 480400987 571279004 843043924 614071124 919439404 655955038 758337353 215175462 386853947 503586351 782136331 389784669 698043417 819378151 473133533 817273228 953888187 592416711 241622579 189130654 871755482 850222137 163321653 130935793 465533609 744737101 569671959 975975042 141211818 97756856 280245194 672683570 448564167 971434515 174033532 661902740 598937257 34033906 18578522 221679017 927880494 268663926 353405473 590170826 804040585 695640034 268885802 163090241 993064971 942641581 688081552 868181881 125579199 583043551 607078265 722696710 548373655 486718742 296800858 646447405 163355260 226025388 638873565 938135941 630606977 730281432 71410563 409607566 774497040 924138136 103067569 277691196 677243008 278849254 383459249 793464266 854538697 828135929 797948777 868866860 648854281 762289927 132701440 548306966 117505936 84633006 989521202 386891574 625874822 369124383 763790128 922848604 745823181 448520140 790020082 503150384 261079003 286636647 239275441 466169454 143208341 589923629 110529996 933211335 865072923 572172372 911090860 400038721 297097391 674335649 375853428 833426076 492457061 490479233 96900345 750913506 689121102 466031347 662305510 442211028 302123695 445024027 905864520 358432366 444422644 642317795 402195652 927232208 427296347 617342192 970520392 957062352 443926741 2463291 517807335 374711060 651624156 813727574 556846025 377091830 385635521 576195165 383409089 359924476 447987591 946859367 41881211 813332490 700542485 564744523 156469979 457313196 118006624 19566980 707805909 805164027 298343427 370367328 830072636 963508680 501413915 91343862 890683993 175289283 820279097 6753048 72327738 69524903 281852242 551705386 880659626 982555278 379224294 775743980 186260165 140038143 183188940 478311596 535402992 310606184 194842322 616451503 891380676 677287538 767560161 129065214 584000617 512341408 601133392 497963986 116405115 246680209 604276007 568478390 901888866 941703165 970016723 942846508 128015548 218727930 126764347 381802548 8490075 820417649 564189288 50060728 228862630 785274221 784359914 888539301 664329376 704451520 33238013 795146724 193559675 129026514 471526352 804801673 423209580 369613979 45077858 111028221 268156800 223060269 501840181 937531327 583316288 667092391 434664693 811923223 310921892 245573138 987024922 642515459 556825986 260811532 452193687 629259353 244448210 450989307 214765359 595774997 493087960 552536558 118749595 593787903 396455444 253454531 969712079 987914734 215205772 811152577 912076826 450326276 743928582 161740554 464404059 421623842 455450531 172071754 948875652 134187474 744282879 841602505 651328814 863869614 663235253 53865581 775396701 458701002 907762425 698438174 177891187 547264983 981071052 160714537 811317475 998479888 704782923 429321745 961755178 970420293 129353167 400645825 618992811 79582292 515610772 669279244 681273432 301012780 478816429 211272687 111182480 122242997 709646393 300457072 1988911 515531415 115772296 712460164 207118805 542863338 446049857 589984580 814385235 834105760 974213441 461450986 452576487 174622469 320669580 679910494 587511225 921660664 962657955 875738923 908885063 141718024 795890872 328943052 710694842 524005459 852992891 424956652 421806916 39655104 4653807 466118701 616340756 995945144 440337795 438090406 619109121 891473073 623119055 814651313 959761064 26215936 480458754 453637409 760439877 839546680 695784439 876257093 34864452 767744892 402926053 678972899 164311365 707031842 479001958 945477072 953255656 611759844 762694362 291998240 161839026 599809113 123720877 549237087 632618071 958498662 767129035 190295529 435531476 892107167 548265588 681056429 290278049 865557531 926041398 979334250 46717750 841982817 646646765 99754837 780201916 156494639 501183943 9450899 104125840 132385811 120103768 342826536 298915836 655209109 135146590 591741055 960573062 267368593 848358929 851547266 898698081 214995714 208434756 950680238 254629401 77525638 242443593 303827445 117054253 636269702 933310030 948557115 952638169 627572356 383988621 196624156 385095574 115975027 842674158 900959054 987928103 260643575 684567163 158436082 987391129 158625959 372258907 924892952 669293227 643902237 793726484 310299792 140266006 659908187 872251569 297744856 584831368 262867407 506668827 420766994 265328133 893649779 730814178 563957613 996738944 705945142 852309472 29568410 669394653 579740892 688824587 771782081 430040578 72116770 488778446 360147102 655788943 925440362 207727209 720024724 585645092 116332454 396269644 385074761 687555861 579874810 599227866 663001241 610961832 585312481 164048354 317975393 387888628 480986976 976167542 703558531 670600708 119327052 243800607 944073665 995564887 630662663 171643067 806446446 147801140 363454823 385186987 268553248 540128397 963024185 676307127 15084582 412285472 367583684 420997443 369146066 712061811 239349192 795454745 496522977 499228460 478216106 312573687 666641697 740745130 456038640 990418566 47959776 347857184 8473055 402992902 282028924 726365126 366412440 397116893 369946142 687240751 790829829 110324171 5620535 999676472 917114827 450019277 281755935 612491597 501321351 212104817 582885975 888570514 594755191 341418732 345852586 251420528 475582692 174594383 865569665 198892749 39354544 82756479 119311909 152128289 8795884 45900620 859329580 732035904 124950773 731021864 504120942 305112378 907674033 846854913 500199305 567005542 216671659 709255435 181423246 422246612 394252310 539857759 985338913 892196551 99072562 528192692 692825429 460728701 726016819 218154256 787707880 594089508 103557844 820292428 725313775 687550459 919922883 747742732 426327402 533256936 392708147 120407523 935957297 74653618 687457902 11850159 262820255 775305931 529532706 117303552 497200479 136620382 155511477 476073802 372687746 32853274 643069504 839895919 138401184 952088128 760629431 463094959 736761105 172609208 638576164 411368794 444251235 924564029 360983677 147504729 803939559 43129562 123256574 911770147 238823007 840198918 999486229 245233997 917517681 961070867 733954709 745654303 830311983 239753361 321971404 873968120 528252353 925357388 623669478 66464818 703848354 869222566 241274922 109932340 174205340 13411353 155604183 473868544 279925694 424427487 205995114 625102514 73270998 237831046 334577339 440235739 205327836 121296272 997581693 948094308 284409522 160738922 586236535 609040714 468138542 772541593 970133356 949755283 994734347 646024226 373828457 617791866 998930939 861518453 782098886 291596896 414426214 109021534 455127659 706274301 665660923 121770634 676911902 26642065 913620786 916901037 116609158 171244305 67214676 956661787 664415618 388844436 575544219 789583597 578809506 4160553 273146286 103443092 715178504 989414181 834970023 267433589 113895468 200900875 732750207 189358720 94824307 541175080 593381331 503856705 602670939 676036095 711222087 920388919 958018464 801972744 673923379 865593842 243142243 94988485 104663383 851509291 288123730 785527329 366787626 295345279 258394228 515275841 621120615 371000878 500862560 34964356 506986289 326941256 278495469 577096025 239245317 141188946 341284151 478306608 839584736 856651392 234427187 661459385 127347116 446252414 730771924 940454698 655019000 261549662 884916672 552909936 876824689 185101719 404688457 965609789 904845186 477522535 801665778 648542103 105495520 372947054 104848079 699291924 242226754 720266634 998410228 798157621 524011508 96258283 122321895 670967868 211117216 394340433 918054208 443537779 543802721 720244545 728050720 628863927 973784271 979433699 1973971 540644482 990990524 17232014 346688576 277912001 639242725 616069481 615856090 402007390 402309254 39451252 49251517 160272229 615876694 30773414 888465289 723108971 172179015 952310985 78190377 942039670 762232889 216698120 233556671 990008315 508776873 542302763 212868753 721470452 517442935 206267188 543105568 277265223 548476125 643038547 186941041 164694293 425848745 901466483 242378320 525077632 904320788 315063018 37930209 51707935 542202730 884310758 363706323 632431765 908035573 962128613 671748977 883310744 732414214 838072475 291919417 438157273 96171916 973793155 606368297 793885150 676247365 49208142 912800142 237815594 551653982 386699724 567779101 854728986 120191812 887245986 393262340 636257616 607386363 743752046 969072548 966810640 709028123 924005684 760983092 392354495 186663235 241863568 806793788 963996228 377021558 642333068 299796909 165680634 800811852 700524971 879594389 889834422 11110987 845236259 123953947 111795281 680581972 352320601 208060186 933773304 864220361 548178641 972900129 670326418 248680628 901758177 62709034 962137868 971638363 291813084 227753699 242372238 640985943 267593634 849356776 537782370 970676365 919025047 472372049 114450506 360765776 145799323 988716104 22519870 729798 636534273 176510526 159503242 586364599 872839030 657403003 28618101 718642527 751483274 501249189 572334627 319771699 564606781 218524308 198560109 681038601 186556693 929724993 947790649 55287327 282860093 706453695 675532076 350645369 144219156 948314271 769932944 393744191 73993354 654667349 109333612 173811974 811794564 907793044 770183794 620937903 486159738 486099989 515040870 760224573 934153566 354982922 782848172 206432622 552525343 988216328 56787927 963457044 799637973 730251992 229517159 178166902 805481455 958130640 477809131 353712331 919127528 497141777 171515173 84464446 916970027 540690377 624578490 816769644 125741433 463947898 766151339 113586353 935415123 33895645 798992421 257131832 585275079 4804226 776682569 945336220 629567083 36126395 6359601 907362030 23277169 877683386 866462337 657040761 674945165 460979914 898303686 567134617 427828551 257608395 650035094 976101107 15145263 14526619 728855697 854044558 38882920 499626762 673814756 424944541 644470029 190051925 604256410 349352417 413738135 447260447 398597078 109792734 413579062 425128657 376764272 73449067 32387740 73554129 905423340 805465619 596769460 224708543 649051269 218546387 720928148 83066509 30365338 733532383 553014823 876959979 456388570 715088076 708279440 629932584 688285002 374502992 768049453 121734435 497951253 765218275 211382611 743350671 739424013 801095819 104491963 975300463 67481344 119954921 801114031 835273688 664406816 341168728 362984391 311009088 744787501 367918072 282604353 339264088 724107271 996652906 166063114 137175217 79643554 721991409 145264503 180231952 421952718 71252331 79402621 910384969 229724001 943140176 229167776 370628464 286319540 889620976 588126734 211608729 487582055 243783456 376587376 113603123 291168328 267055810 454342827 915864628 459429468 332920065 182417526 101146987 642064993 403290385 17604997 639379490 701002165 584384149 119696154 141107701 555294471 906919575 343927429 253104629 661932283 29513551 795908249 946938257 477400102 415395446 692524327 595429226 676427230 139342268 755731047 331346373 371068871 688151017 146097635 174326509 580184210 868459020 793963377 384400921 206459924 784627632 376756106 260316163 140711131 887172588 884484491 443786661 654188440 113007167 879081745 344865260 670804104 106419800 387241187 110092469 764685815 130412061 236365686 498651372 73119590 732234204 703315911 57359202 445932472 521995879 102887820 892214953 821724813 828407738 75886043 56201935 627464040 485740779 978713310 654993858 118781505 868837615 526659552 427773861 909725481 822548835 587408945 808666140 80649369 85455313 165123292 573844393 618200123 61772842 574640601 166846513 925323005 308064411 692156786 893321349 560394041 685829346 768223158 431643502 26862978 943871151 68162709 560740832 217155766 116306688 215415637 267018717 394556811 64829527 440022331 825836915 330781158 472260766 696398560 613844317 827940812 365110801 278446710 417777963 248456490 953563149 571953381 179081249 112341794 285910624 323947749 24082963 265515413 723851784 950416645 377283696 951304362 224674993 388838414 476168290 971366039 627697640 26498464 221547455 270789609 124882157 667224993 354986042 654550990 585728076 741765701 70943487 380102114 620166916 802245418 891337994 711227513 766769592 782768544 372804560 891497174 986336 65218484 709788065 154100151 586525328 494569870 732954286 485533841 113065945 235645414 394691505 329506350 685551608 179754035 412335160 534123778 63992202 39911140 93899378 829525201 886958419 57166291 846945236 584841542 744148487 121197953 823210194 568354533 236454240 610097069 943724339 492689871 937372777 584635670 593855429 229593559 821321418 706731396 927970954 421601839 444550761 179294132 687827711 961887298 484476941 565112813 430447119 734494826 986294371 258551575 271144006 774521804 306569030 263650193 703812222 29326227 620625272 76764618 158540685 878128765 538753047 824189749 865196288 661000462 88460241 674909673 816009420 753731987 11469678 43311109 380037370 835453351 268900281 874246189 31931283 936068405 955682113 28339393 544327294 377559555 42521798 237801146 400507974 595925666 999162742 325378274 405061533 974710541 891015738 482438631 265983816 190785015 162818666 360616994 174397147 690812136 452825337 417130116 41132350 218824021 884251433 875827500 130185412 161579287 623850340 578898001 888104464 829176722 97965985 880197802 811417774 13187813 284065904 138537747 431010083 531663210 903492476 45487095 624730619 127627621 913737885 859873614 164748656 785006514 981241482 965869852 174850206 538442465 640328547 117865654 593747940 517904825 6526918 8619652 800121974 196270458 595231877 375978224 776663471 542888889 22399774 727380362 584492849 443743606 632057352 573141003 123919390 750495016 563916913 209427726 344654397 934910021 962879139 973258470 299637223 916686896 656390867 954545453 228022067 620433985 567386852 314007817 130887886 438086447 849443911 48240160 823137875 907223277 106591124 916343087 752081415 303599942 676186504 730781127 400025184 383191318 616582979 123006448 779373210 331548861 118417599 720344461 3247811 175524132 722923096 851444737 418291790 261849228 969258631 580587521 693330337 56618530 666180632 873926042 105664673 652686991 157594959 82359818 396708795 739624087 797097902 980064135 601224507 558793673 583422295 138471179 989949517 95734729 175796459 222406483 229732493 639832532 622615722 431913570 117166330 117542051 654882639 332417960 877848939 890296759 645188908 4173548 354972790 382030477 450191258 182874863 724966570 77544708 101230968 300926559 103310495 884387197 467713038 930697804 564543098 833908719 352934329 717547874 462263266 767301412 449457897 227249541 171465028 808298260 469485457 275576799 946661847 875901081 224296744 46931720 114048127 164091564 823838547 898763342 617664162 326340009 183787484 408212805 454743861 505422320 478221077 828940175 639908730 696428025 923369234 538987209 231597687 150887521 467550014 901654177 420140116 53429756 100887440 587856330 286360327 47585405 770886111 810267643 887923597 786476123 122560802 781472619 245179583 726891104 527950392 488298746 643277981 574534342 83134327 100489789 999444752 937866150 169211097 172617385 110421221 850468679 289483443 661257876 473749426 860943805 443038136 25989761 96551650 828139789 385626993 960566765 525826249 594004155 829095999 750889511 444466920 243933034 732208761 810574123 198643250 61690465 114913198 968050411 470100007 727023479 758946192 555131293 21048679 559734274 71730418 867405278 744356138 621120496 957695106 606817364 685237628 999700270 228628576 148948819 798203510 145675188 378848595 698410174 815404953 137102705 827437612 135923558 528697008 964384270 792183569 713568186 791857991 890475705 542103714 704166594 776721456 28796421 616815005 976280687 277249169 783233036 579064358 757862674 309906873 243022007 970234787 684874058 223486341 809473852 952307647 350452146 919883591 849662399 714742091 669543036 586085111 584840926 396580490 164940713 775768335 524993044 188443553 585621971 889205437 955312811 301702210 371634322 477523194 437480677 878759476 529456712 656250132 784250098 175137768 913293629 460978154 382943568 448377896 497000625 385135429 900323244 37399532 736048593 640756674 874024902 159893376 550337254 67200967 794462488 118324942 282513964 806723504 806491829 714724686 746137175 797810439 232391806 130887310 576755060 309989373 364526203 686438401 730664908 475917468 182288666 11018207 101768311 75046663 662832792 817079732 261388452 667138926 219903542 892854631 746302796 331516199 168997850 550006366 508598094 73905438 670977794 731459867 764152352 278123977 901675896 929286315 729729091 473707972 569655224 446816209 752778565 77990344 134044844 180329964 921856787 961994024 767494948 160319122 308205910 585569818 251780720 43121701 727226177 746258712 445925504 991397995 940772100 263203160 105397794 534626349 910322554 845005439 594848648 242079446 650638735 414636145 414662296 995653126 202558112 662338735 331900888 905727155 155587987 365287209 652630578 448512126 853441881 341610506 369844208 155593010 407948651 88801651 785002631 296839842 968106405 14037407 784366074 175862290 442215373 931773215 936432470 448040160 611098647 886167927 336007963 272578073 998771239 91273897 289795333 80737973 396051671 961115645 213293529 770423294 241130853 860368203 160061832 419123305 853998305 714269632 977204827 120947016 823985625 591831934 483250471 52105258 565255907 168053004 178032526 618101011 915125592 543827244 881530915 329886542 17553961 520807052 481867070 381212289 10486558 522681507 744974673 211117333 791663149 588755375 13115808 659599094 650094701 11040034 80997343 210440541 248491202 418016268 491683249 720911609 611198678 490106522 82912499 426850068 213114554 613960567 639708299 771380383 859043042 271054806 935936697 14643043 287034139 859846848 131939205 582354195 345936576 872627418 382092364 615887522 355030249 692799601 515168393 550053091 332106134 202882867 844719666 875589162 931763603 833419169 422032246 29934916 97420723 443816141 973522655 77638556 18701017 497266818 389084874 239089776 660644003 810052366 396499713 250446061 882162217 847515903 864523837 818446375 750461249 11982323 521092224 676763326 796537823 518871933 475746747 993934466 411928293 221916251 223436116 756177122 292455713 772790981 298109238 786398336 296357833 104498944 369964734 243851048 721130067 440043088 822259763 556883239 812015602 629331751 29765265 759508370 280843054 817169333 71122436 969937727 669032751 337757295 715228994 387700829 174127929 773685718 284668875 352284744 983494048 89485258 739911711 431075755 832815796 693515053 840395886 669597606 191096365 145846821 724853466 55688149 483486337 814301062 64825851 625559519 762185806 261686123 595278675 83184830 935874698 531792197 199513477 279705056 926004535 232919726 228164957 415372007 703224470 957466428 293048707 610002946 819034645 549280313 522681333 508285958 255213658 288102685 37572643 680870175 156896405 556065182 68348011 444265281 381975995 694784268 476137832 586193815 243470445 582673121 421028920 921853555 302697896 779348730 114610090 784410443 658650163 741451403 570501528 359685949 754359110 573850916 196362603 205933536 380741251 667657819 974124146 381776994 731436947 377369450 886775752 906018487 885439374 547184817 708376003 439674930 716019198 907323808 219671471 362354203 198980169 596855035 584773849 56331282 144058456 721673993 536607550 308242464 404376021 861653708 417663289 798481746 401876344 517619792 264499497 453433575 372713060 500174628 197866863 992703230 734846318 87535747 666684663 428238964 532144099 853175214 543547349 101422779 809064489 77204304 709179104 199482546 576465813 737346657 159082729 87712167 662843588 235542093 161818350 553075156 41102145 728407311 579741938 235956317 699043876 331653576 571004140 374328078 960249677 822507776 361440186 742386156 208110898 481470264 636931562 985387237 885754024 310201093 293301541 143627641 278781861 62703318 577823878 853419880 91366039 241695840 469440062 557322859 802119007 131737867 657029510 831031429 753240981 874506065 333848502 994734993 830844108 319727831 687832682 901754985 885417776 529319538 992735117 570610541 692333446 393079898 356084527 854535460 682266356 347254402 563087964 871866415 262376216 887744215 182295212 849379814 567692812 708400257 315599764 610147913 991081327 570919802 900188778 126305964 613798549 165385443 722748073 134053314 977034338 648259618 225289690 519870471 43743307 100686779 449323059 413184211 69529153 50297922 465265640 81634328 243671607 97051705 805790869 181823123 818711916 219943121 90405893 683831570 917017099 733347281 17038174 552742765 883447205 381913674 551963263 807705603 76829374 618284557 78899413 104913312 562417819 648468583 837532115 430898952 455820319 437632633 876865033 17538186 366600337 124156419 882034181 254659946 498835417 930866006 84943778 371371319 896698091 265138069 269528046 533594981 900480137 491301406 274333603 687055884 382293759 812667050 618095985 696488313 709329059 340331783 745672764 403693759 197987700 737479781 836568950 457815875 494042808 25286042 169267083 743914409 391080099 272794951 463283363 943080346 55550185 864747057 830100668 169544368 707917449 345535584 936228143 472785566 941053699 935176142 524360142 579146185 11135068 686844212 498802324 751245031 517500211 159971178 566354725 748740091 690077202 912035897 644047046 996038986 81257359 475877456 800638518 570734070 10899523 283255087 484300974 483227950 369092931 670275189 866413191 585674019 763705042 403689001 570718948 10888024 283159614 315481447 463255839 181935195 244588977 829542245 418921242 378456229 172562887 841435951 638592180 223022186 265855258 877184628 451423188 555440065 492568292 306775351 766682058 445012384 54600831 806417821 748005280 724767671 519260290 251839181 150735659 64146801 223182725 886940998 828113083 292283548 477081295 369358578 729371298 262951895 499879509 235877360 129104856 769980017 758391227 811814196 746157110 483243008 860474122 110570408 453139315 745486467 14548776 952062351 300292136 657387325 730375718 454685195 495706024 869301749 574843381 992028971 927630146 674363286 972208659 462109310 877117830 923998099 228079137 358719945 528208717 535997161 453867844 712549876 724268770 996141148 734071791 28795699 328533732 373476548 298268006 71249674 851979633 825374605 579473581 715609150 666659391 267132307 809563439 346907362 826942898 9707111 494377258 147604621 606360682 870847584 335163397 829896809 671470081 800901558 619411111 123693963 589805105 797160178 428955876 744243113 49195564 857546742 178611492 184695291 663867336 972039156 85532881 568218057 906005101 581584224 705546089 67962301 713574923 483403811 252278737 470095449 472564933 575837145 556065031 632102495 201798808 480357793 898175212 611512099 672889102 503436629 632138418 657989187 957184250 755089486 618341742 580972282 931254325 145227796 940815165 714797214 416155351 270383939 987087698 96420563 603830514 599487145 570230166 854279389 878401348 305785479 68003324 520256417 615875276 643188182 644764579 435778259 687313292 671554194 373994136 533385474 332454413 532687389 854107942 963777305 774238317 833909046 160399215 145428355 29837212 712869988 29445079 855974625 743006495 357842084 596652205 168644624 211871424 670904957 292442333 561297427 384701177 119823316 624506027 609729970 838978765 658124173 67745797 59589420 947914108 799095973 977940877 885275347 535089242 547801453 680364172 914035118 346467267 987186960 935546301 210761850 503326915 501385153 651257103 973080509 853586644 127276387 605406581 407066475 752660530 284416775 414476420 474544009 812467120 32542559 483986370 628364482 462033645 889555936 846656803 24844772 342896624 272654378 116662707 409740395 406279580 335979004 238766456 133897029 484940198 621899731 320325629 408951075 823085829 527019968 485428557 246669734 533147579 553189555 825611499 716066107 325591494 235214448 593684154 878713300 142980466 137027704 582789064 73341860 431149082 418939841 597420291 547516317 597709944 819548263 756062726 997360011 694226149 285827245 20499682 205597524 189952528 428870082 922367742 843667113 297646986 55906288 669369465 953338910 683861528 599482876 139352823 618218829 771457079 880938621 74615332 583937667 886814088 321256396 908456939 824437148 361896619 514038492 847439798 987119660 81911163 171484912 964803081 394148733 543361817 911336086 666169978 486424243 269709452 401203025 504714289 953448748 844220017 994285746 308552784 340807543 329011884 737641311 252396177 582000982 117574211 285661406 875362890 130935613 152997826 10507966 550768197 794656448 341695210 747923337 313290320 480568541 150858658 924107896 913824777 424538360 182159101 491733263 73436081 13112139 705191718 598450630 588927645 123342832 520647344 733404881 707872446 295707488 864532573 321434754 957460696 155160950 808209000 404184244 709259374 453501394 938696298 908649837 425469823 344043434 27702390 713756146 968816472 195557040 327864292 829763605 169234335 154061114 788366775 276138707 21805889 137634993 610453065 811914698 553891208 460002821 610150581 991600483 897471629 836946897 164890497 929134608 248413546 894012448 150078676 431428434 413246670 197964404 180054018 649432335 886378115 262893748 996639413 802129887 864553390 262883499 493983611 49450852 953675794 985622069 108467652 661709483 398842899 910468360 476091224 467765563 108025206 803787131 530307673 336725662 908229011 511634415 875787408 594901414 968527907 177212410 76549983 253935266 910094312 298821499 552502282 655668495 831381193 954465030 554665619 530011172 871679904 701428046 535811006 430463141 982609949 130704131 669104156 710141708 370608328 451652634 843508416 875935363 942138803 725602908 897386629 40731584 980231836 816764914 316221096 163182492 908690551 680010098 790461475 922975682 353870041 913426105 276917410 84165592 421929961 472407664 642223966 863567835 389024758 304409997 612893465 218293630 850524392 334826309 186561912 2520770 383492098 940760080 935878393 955293492 52671078 96450781 491988078 581287074 578400042 293054767 421806986 832579635 436736439 180618528 985930065 220147399 729242000 560041835 114955630 734470597 937077389 750407998 3078949 9100429 185356190 616958295 423858987 859937841 424682336 709329420 254258002 9582211 371796381 226767737 851645221 1126113 565545729 480380956 152503304 356540065 75175252 528101233 115290449 940851193 964346807 780447362 991377885 506396016 836336439 172227560 958099625 7382351 642377724 859822137 151993710 1654534 384076216 227428500 790389983 495297114 460058776 528549347 127945982 745288341 900264552 226116083 515113480 271460689 880355823 731098065 152117143 921975988 93111552 677811172 977927314 302095026 298806379 981722544 394884619 67821128 63369858 146611858 514494382 536528901 175194548 994454686 919531057 650610999 78257333 119370194 995790117 898022367 772528517 358407196 601791423 937250554 360652747 897593473 982311730 430439729 674696096 693571649 705674292 670727325 18245140 58995834 119043558 19306271 643907904 593155949 809725665 163453560 223282082 757174830 994542890 737776606 388877341 337279448 812889525 782206567 560581826 292250362 650980991 11008830 181208099 577187640 237398153 663919940 212509000 823256066 920163325 228625287 860548990 971010604 411281968 706424089 951482936 639894322 307563279 483838827 194901734 529251864 741832774 715811853 439286007 185433061 611545621 70492143 873017087 900226791 574723438 158527567 571404277 328651338 424440154 488275602 662847529 166099415 278178802 46383067 29074447 575397078 695257641 518919242 632559357 596175261 348085248 81811126 219690711 417738540 785667789 990061147 899353205 103616595 730869463 19382223 601938284 226029688 917211545 881279904 8693029 653042451 302526193 983001349 72068482 487546821 808984744 186985777 974197157 539864234 382403428 746917147 217800653 471770120 885356356 394488755 181154934 868236752 996397377 981524741 796973976 145628994 683903898 8728468 286347327 477594221 150891443 366321260 959967678 481166557 476779649 425579975 715689455 265734812 420760014 234228777 875048210 396251650 827708394 306222429 335904428 930170838 698054521 18348754 110614035 376071633 6579954 784791244 26792519 799403216 286964600 687345569 528851602 192890873 152459044 804645278 644925276 839853673 135246644 271025047 228749329 557851856 513628518 293545203 209386378 354480981 17356853 690802371 789131986 799365703 327011312 380781996 440090087 219198379 972887043 980725144 486899632 827891697 903890379 463570230 350294227 837144661 86603666 598240189 415054233 897492682 94967762 743824824 829861489 429731221 910469251 475150674 185069415 998622916 853467712 659628981 545144454 43598869 851646388 35210970 911700254 656857840 647047981 151652785 397802490 357808111 412623973 891495983 963348473 996995097 42944534 456058890 842688968 443392319 156863636 383620937 509979509 101705870 23256322 714194387 755292231 582587391 539588907 382211783 524412860 132922166 295275622 471557570 948462110 628818222 21153334 880887267 875692966 121350838 758710359 398747102 673746722 25653590 321438098 96816407 170603885 659066285 19294616 12586786 602401070 802911069 54711712 5459995 417234707 106018902 408353981 669153620 890618884 43416220 556077979 134884089 362828328 157325709 629295387 135284170 475881685 480716510 526383189 205393130 248704376 964962307 865931081 713574832 786198561 851389049 754567534 36003491 724711954 36038085 688628928 618977310 233445628 534434880 52904384 943335955 757420565 598464292 980598564 31716736 206030875 665921696 509129188 227464429 741042414 392380068 827440119 801255912 868417836 147371514 560252046 26609442 835104387 277023759 719240936 568884340 519388195 89100035 52645068 403047972 796910910 588006097 86155545 956671377 237940344 933794667 126285786 768695090 30106265 799493712 77396499 159892376 160071980 707468121 774205140 432186374 118421560 751333564 525652389 639156910 535914411 24730682 350664660 123995211 522029568 267771060 867528859 83309334 843000046 919520260 198433938 909933091 754663751 400057144 249001527 823010476 223737354 12761029 494003077 288136535 217278208 426738839 212633573 458475605 278253581 411600672 702656384 507829634 208410873 980863340 46617505 49929935 857472249 611657070 995385357 405755695 388321812 174103817 155266502 457416871 222842452 716062136 607278612 162996246 782599470 260750206 458149655 611257593 82226058 284530858 738916528 478307249 327747802 809704712 927425192 187607774 776818420 94441597 752603382 624725185 144131674 856859489 869335816 939929501 224142199 880583975 843913919 651849042 713178201 20816095 494161993 968339337 195460106 534157588 934785641 948137141 111271818 247237483 521544080 56089576 78539134 613471916 317799873 694427620 336700736 389496245 743695318 18756747 439624678 78039752 947088795 772230320 343536249 992030281 442782879 107861817 808280640 751531822 911489894 145707601 906804053 47774639 910903992 410692732 547422448 506508815 95883911 966181595 691886033 960866876 15406357 350886742 372248832 599250856 147614968 585344169 791109290 526290159 334414866 261118770 805419041 824391090 332358006 91598676 837061466 903939259 50613424 975984943 967597158 978261756 60375003 559724793 93186278 265245378 788278272 273109555 972436092 955130920 384982310 884187499 764515344 380433505 417711245 532699862 392857054 346809068 696374692 807458097 142985004 498983956 702640 509886193 684233070 324580042 517759350 159295260 681216290 133861287 971924647 527738121 594217190 293111712 465891317 737414965 359592627 776765088 559496385 179458992 112005908 481709224 932834741 906463199 269123145 119312448 338732483 688449606 267651438 82909352 742348530 214553576 261318795 330478488 470534577 595467183 408459108 959457008 106555982 282362513 206621950 566948747 129201734 489751289 958830405 906090897 648731977 167762509 965523190 185132985 802382665 644375374 837597430 794765254 509497402 909113733 353947734 410561137 357610009 249341592 506994496 750982566 909100357 141912818 878564270 112747592 650884955 752511153 677196549 172637489 197912674 306837911 390351299 817535911 958142837 836488789 354447689 488044309 800378461 268586140 390575710 685021846 763102288 637838717 758016534 159287210 338438317 406427482 973673769 601673383 132474493 28816747 682512413 789131494 784245966 541504564 886037410 628223067 296670386 699264148 495559121 364554109 231820730 113188213 155023269 600930788 657701666 248971149 200250662 544486996 18852329 340625587 986758353 165631400 843410770 530314528 765032614 60687142 652458698 860656428 383887548 439280264 811149550 790876436 801887044 74065421 124201836 398237845 343465545 916318601 155724261 467998389 11888213 50306470 296613436 361225901 103530518 217075533 375918515 190639988 814214616 23398508 654202733 227902227 996453083 865411963 17746097 5607526 836672981 624153751 98064468 575157001 3743660 533127829 371547247 699996985 959239360 375708811 471003768 84233315 430569812 96992188 506507996 945730729 402385475 337407954 946076464 358550127 230676449 945420323 684245684 45866905 343145890 326171594 625857142 864490528 571727529 542459688 504955193 997528959 60937848 723316888 942271913 81646040 85990989 409148117 123096452 8617656 599319254 641302808 908944907 152551853 511095185 182004509 788655609 563743855 873860550 230361915 394621368 259787025 929949389 949722663 920905019 78531494 775924527 734566067 728291985 422431666 212956957 906017711 757225051 459063417 728116571 764839998 590462762 700294853 494619802 144420673 1982921 284263988 87997614 708709726 925274358 136538288 83263876 954090296 383959910 284686335 76466551 75028621 620751410 903772700 281031845 187811217 462461185 943507606 822101399 903568203 413763746 351404473 208753702 53194969 76894852 362747429 458947664 245068689 200393893 741006453 650516452 249735557 607215496 165009036 389967007 543499701 275919617 429912540 794016068 170753997 59817932 309303127 662941382 622189586 655564210 16809364 525718685 95567879 359754564 358666275 886419269 852435865 380385604 323731335 900575803 242661981 511667844 448335437 941764324 314713536 483996764 457566611 454257177 276709198 573464099 997894588 438712018 892847064 350689203 275650088 892917895 708864492 679780146 564387322 33039649 436602252 797526945 959037529 130528099 197159736 267511529 518720663 851118546 306126123 133126861 401347794 99152078 808271735 902617257 945139311 282907426 622704952 966698957 823671061 318605378 865757078 643811718 884135447 409370154 754888266 726975904 23779825 343601237 522550950 939486392 73323118 976999174 566797496 982228174 149915547 23480190 516682589 286589723 541053018 213662537 84232657 801305107 657408847 522237597 374846078 929479134 365696828 155280872 42654718 303552811 983168876 111772499 723731862 327188625 956471477 856443098 298468256 612765180 941917864 349863918 454746749 669838818 852627820 832658489 176169518 526919338 46155254 64659421 784501749 844648324 91133113 608574710 917052368 375294067 630585660 391485118 360180715 489072858 738426445 527680645 771563377 900612480 231588792 19600231 861324838 237661379 68870289 241394975 611144883 999538660 493532091 525278872 34578183 970513218 955124287 304711307 579274872 594129728 308687121 690289472 968832116 599332896 70607503 201017705 73719645 901875725 260925488 387230177 369057759 483890044 567585854 12595103 839877317 930089507 241183846 850883720 971138850 415657596 993816631 856911770 24872717 847905906 606275 491778953 12747491 953835687 764490781 244671888 686020818 600598260 907546682 207297326 966131905 590263532 224787013 627566027 254993898 502282171 45805265 137403129 748408783 372804605 685128433 550915893 976028559 446801969 11155937 541908611 724454957 865554844 561124215 170746000 884099879 605911248 245554655 100050159 265184968 608113827 363456902 262024161 412903793 157700060 741134396 136400972 267415044 636885218 679513815 677718725 288767385 624348492 978607414 98394097 767340928 280187494 918198335 321599099 472686177 99565718 293480633 238720298 998755892 946891567 753867144 595046070 202612707 825438883 260250844 845587244 498376019 161463394 213953865 32494332 28029916 358495537 193351669 166662752 431998551 611354234 246782672 868290517 74433991 792692955 570415547 568100499 956402338 854329849 184770213 348165227 174947209 570769199 699859494 848065539 883535014 462457564 729538035 246831748 918817717 408651024 287826653 237548825 823432476 584788217 556409493 456767295 574443423 175873623 562694689 582483909 739063962 917454662 161783485 485578376 387993633 114757690 866295128 347587702 537926240 81502337 550868087 411627336 633423973 235160540 893528352 425805740 127529432 445777984 687168780 374708749 365261363 679368372 277231636 43566091 795645918 408624733 373089043 799890085 244548527 635518700 825400874 132143564 461386697 658774395 293888627 340212367 806708578 139696760 624428036 709524076 849929413 814536051 563330380 285309345 186724980 239443694 737961033 270064460 393713438 337994801 559848049 460686475 479676507 764775914 62791178 115493868 974082522 220541584 485812441 346010360 140371995 59476334 168708632 257425412 315201078 899850833 41299472 50793894 111533241 460904898 842092791 663255274 149152374 797713223 434703170 161713844 999943896 584164693 77349642 187173316 785540415 139784287 422697627 239528107 719653612 116148792 87537131 204032136 185002111 338245379 316275706 129397985 924744934 40371139 324738883 99933719 610669733 580951174 642147851 313777241 220452250 406469478 427926712 968429151 866843684 43605726 433172287 812422261 80822729 639571072 338153686 113891850 781882416 405871426 129784361 757145994 582985766 929257060 626282206 895164371 500150912 167671360 616488942 61224780 623669665 120060349 657935563 948275153 516107820 689882814 275763815 661730074 879617003 75032223 302750105 47685358 926686930 956903871 960182120 776972883 972572221 83924095 667426808 236583030 897627946 887858147 87501952 256064297 109414133 192581143 145163043 96721375 160731167 125193855 930859981 728952932 944758637 838796087 365227874 960747154 506767028 88281509 645850977 600236828 414157055 816044699 714573698 793372992 423265634 831576448 142326262 577539138 516714682 1270173 507322950 940480401 802913346 553895191 798225101 775285189 597489771 514692239 46342318 660784003 881540496 472411403 49232585 619534635 973413177 36365013 104977509 84598309 802884810 109669016 655041578 975641187 872912996 586534597 626454517 190622143 128671469 78433065 75125307 578641593 887833596 987149274 586891843 992104955 38748704 846326194 387213850 598229027 916164381 138052082 689656254 13878309 448970823 618087637 218063917 585095148 187933678 472778427 138088952 843455194 924938309 597323976 836805322 940524107 22004170 79983867 963308049 428235995 85715597 259218988 228584537 955772248 931384634 46421304 312454573 883295161 242269108 968358446 832550517 134159863 306488800 164609588 556459128 234214649 251199890 700818101 694549534 553479207 466604771 499775977 461556648 426691234 222492648 239413717 967777990 116538070 74828717 14657647 206738483 672994334 952156379 400676746 816886832 472911123 755035168 644860594 906010351 206790560 728802288 31166380 848555235 856848412 544756276 491742018 167771888 665429412 116958586 934105756 579658183 39023343 562995638 650867344 890638470 7469280 363764857 728640549 31847988 731194430 877661263 884324487 702437984 432716248 22677905 309150045 807960080 621434688 913243846 584502380 291692961 815525181 37550085 77139291 562297621 835540330 813362626 404740565 560550345 911674675 806118326 404702158 654981345 322873945 727677099 729280286 559404450 149996514 314147730 580999373 830723856 640387090 515296995 706724586 288501259 579642203 12220219 426878043 747154588 189835126 883631600 548341435 89137921 95954981 437440420 454853886 533545862 412898136 878390804 759335034 741732393 134742690 476429980 632868712 5751956 57539763 751720902 919878844 732242612 489940190 777319627 98418473 812930927 702072682 408823105 846080594 380107803 127835463 942494512 348458870 416154161 932974781 30104217 205701154 944647586 433932066 610487392 513120195 651437081 305834397 658756331 60304018 665635852 793430632 269395934 275022406 398495883 777923887 482393502 253037514 167368666 635064281 241717359 415654264 181688614 155084942 586326339 939221671 895778318 820940770 366543483 879725635 913915589 614917109 760310962 114678865 249402397 753104974 146305874 446259883 15439775 215592630 525933325 62781730 411014728 741240029 406030457 846737824 541821037 603415313 423498556 34005348 663804950 998091512 155464673 690394093 41328858 155074360 303099214 663721879 396657078 261365637 464117147 994711986 181578040 57239737 89114726 293879035 903129039 218882427 86459726 266134027 705494165 498405010 468486714 396396243 920350735 341613015 859640269 326902462 255496219 866477393 560715591 652054018 27760392 615167186 859674790 927990533 880232474 289035852 914380447 187613578 465903836 599798846 16126561 238437785 257478608 233554314 102921500 234292499 347308256 960971311 814821629 413157854 58991063 835436588 47964535 715530270 481296024 36936018 93386476 866009767 943723604 708757604 127417765 928477232 656984534 277668900 904860930 12853086 605995109 152056435 933548406 696625294 200099428 354388664 67514947 292892605 575932873 906217332 607018383 657514248 271801657 583723649 790765235 502747316 857446626 499052448 745629630 131778270 270080202 866141631 675399967 577092084 56809565 633359929 86776370 983637888 82340807 178035308 527766812 170619103 9214295 492135225 294834554 135124643 820728104 412301278 902604347 94630602 904401775 18236997 844931730 917108848 553835635 547640712 236103797 674321940 776502549 194072851 483916487 518182741 674798883 930086155 116121244 875220178 971164150 112047673 530392893 190010235 461245643 274241213 429820948 197644909 310230645 116212370 447510849 432527706 900180877 682700251 519656868 598111848 781968612 480341485 828104860 582079994 321279370 588161991 305849543 136496876 398093742 88499827 704573281 850728720 911518043 185742638 723683570 613043383 580635922 597610031 886742210 554779083 25594366 728204968 475833412 835490992 767734982 626735074 322502789 95198364 230229942 93104763 543122052 861985639 824943834 100385877 602404027 928535122 735080225 257703245 810055171 94460002 219955137 277773748 43139736 663527697 46434221 347978276 275814114 106611672 811233619 244937877 195000424 38739855 596630104 33298660 698359192 599409678 69545337 955543418 907725025 435845312 748919921 806875536 249272536 355785029 846216627 966027807 486753747 481146160 411430934 402704321 251296154 152056910 175083936 157148878 700831960 626856700 708755329 618337569 738076573 325920740 958608329 571400469 231188578 346734120 328260984 425098282 5388472 87752422 860718129 267839301 503199096 439779650 148764962 721165290 114683275 661149361 49492037 752472081 171943837 439065353 647935908 441422117 499613194 609137213 730025235 373992105 360909806 660320923 793205522 873122478 45956940 230976609 275786591 470888239 136558141 466975954 977715644 500628986 475957856 783125849 922586013 133198661 47297243 555039843 195985449 19842823 511197020 779640483 46829170 57044108 543871781 157485151 859279233 909995616 977461883 445433405 499853946 838202705 700923943 125672674 913634721 893085012 688600648 728892217 318740309 561658888 550139506 855041271 522326442 547711754 262689504 205106663 90676883 376702181 205604947 686438203 598687085 399636288 480624254 9188290 114208718 864370035 202900200 192577061 680366274 551006815 452465154 685223273 133375488 115646285 488382268 644756734 95201611 997904250 676741154 496645345 917302181 343124057 508734053 90115388 694070585 955836885 943353950 158529837 492412427 647325854 908358651 370626049 464944600 805365914 348543387 566633778 917407870 154929710 136907561 513094393 714298791 924625223 421756707 662400699 31899929 774313997 546446550 907919457 239588162 73386878 633682355 614693525 358583171 674226801 308633488 88378862 768392995 5169297 157906418 444267171 720451189 715740855 363268814 167543453 430001696 516554022 860062847 812881120 509436825 401604131 772057264 491732384 218995884 46784997 474499891 63537197 104670918 692424601 798320382 995593141 559804177 986866986 15315310 456385729 52333611 447307901 46618449 125166256 977661970 237505284 400325419 845410277 304166272 661354808 178086646 263061569 775445054 28229675 625581345 815961975 96031000 712348547 858034790 552187031 58325318 100909998 708999362 906283135 434945263 652429156 724888911 966913939 35732652 969133669 993874864 650421712 824794337 700498278 964618154 188720253 295833922 144664706 161545799 470158160 588609579 561031570 794009766 822289352 162882297 847604845 909907873 987214233 434576862 21188073 124463553 476416418 695867513 689840424 824853210 995812024 546231169 841174770 591510624 134665500 940396036 549839980 139121351 846861638 440047638 944694224 467134472 44161591 946505928 150379941 969199725 581186747 215770350 39627736 677555732 446790489 153197449 37719954 675732601 261056628 15402686 407852678 937870251 610019295 259157120 969610318 502440785 100603542 751045844 757466467 764681930 66112447 121533869 642439820 804314065 238840188 101138949 845457160 383155706 320844655 226174083 695592422 865596061 88777172 571484351 159532788 467072486 614005039 480117794 422624388 759780669 758139695 473619452 510141018 720687393 212781145 198785582 912626900 933102618 566414267 3187461 267080373 743372686 598448595 401814504 534325350 465994528 639475148 498182438 504559169 836414461 592166494 692232462 3949806 953084340 528410878 196833432 403151135 923910190 93717480 116848767 195236070 254847566 443321450 30025938 951434388 584161636 595010792 40152013 231559675 845786716 844360967 456093145 977362790 27886640 714933007 557117888 355170931 472121145 932494031 410202325 460491307 255714178 502291421 320279372 177339321 726266115 254536999 608803948 741640747 237686992 133699429 219186488 313951247 43111521 656988182 189587472 460255648 442369706 997154400 909207444 404894839 488440549 445718778 427227143 667812773 844979812 980500260 944958302 85575464 622969807 331863079 534195443 96781624 591996834 227055455 310555554 542440612 947680665 994630396 499223748 186180262 650947750 942475326 448513876 140019202 10917321 258311784 790540461 455581137 838930095 524121948 737484012 340332013 64196575 838535405 435803379 983775123 513937595 585711677 500930091 318051520 618780356 579577016 677437950 313435220 547824616 64063804 899251660 82066080 930903604 11708565 624613096 819624706 559692183 509874393 167993346 851237538 583409062 242628212 303182446 641626582 40259511 900796241 609816221 694052480 619774422 992490988 516662243 162773370 34843067 99017569 220472748 901396767 85011361 588965127 645156089 451842621 454056031 495435703 440637818 294162525 636335719 402451473 461475131 239343466 785939550 298027703 112815208 382524146 487415650 121410760 541593918 418529819 474613977 13703367 789287473 257333567 296258074 181196511 323912035 517190706 570809925 519925779 95316194 236695804 522951491 34623973 11947900 326825274 988130808 716830095 929710888 482269151 758665993 567754271 242387192 632204691 504186676 954341369 722024267 916374482 365261922 598308419 773270404 963276310 804027142 448726204 251948489 235398112 582675287 277846220 206530543 688268044 687656784 538744792 232927605 925525061 601034737 147118623 344833209 908942238 799656229 807698479 834462615 291246259 69204335 759355590 442407462 316850047 598080897 536559947 102991166 899507308 496583382 886993803 157108167 833776185 618603169 767865701 95453299 38719735 354700756 169444392 948437226 746100350 399441883 952688637 525716956 760046861 379746395 740170488 410001292 855313474 283826474 297849701 753868907 949608822 670536876 183320052 20406797 54000373 750760399 453048123 311752517 762136135 525330693 933921957 908733760 375271403 858628377 813016866 138379734 584108276 912996897 482533128 357812287 622560518 344413544 503233826 442396930 756766591 897248154 854809787 313270953 141134669 945788784 623111356 699652658 187371153 101441830 309353286 2284639 755348182 969831304 833631619 191640030 875737274 370432491 796796347 722682964 389416608 218774820 643966478 694719144 552339166 529236384 805918460 925288312 192512277 737466651 573426734 545888667 151772650 453247607 134873990 575542563 225247295 240232661 245592437 606862459 974935033 656962436 68218984 725340082 838447022 878063240 446892958 180373093 213900547 67854994 619012797 123779849 826755182 790119410 963373783 198614770 288504554 709524943 817401439 676705513 611361641 815615822 375058121 247655668 988461719 955873150 562775201 898622159 68381004 553298479 531534911 932724653 846822796 541620447 176396827 506360520 62581338 353370584 789522846 903731637 372868660 862150841 748994403 565132859 701144260 810087065 872259269 502088646 174755862 709850631 755781978 372535269 553320362 545539516 755198327 539846292 842632410 82534590 311340776 936797726 956918721 775959470 314335568 97859409 566674446 298072296 700760221 37391256 314267960 794356878 332286599 174528266 322502174 937069032 280310194 315451936 434051264 246267428 255864403 664895777 893833029 781900745 469021523 53419343 91818519 193038702 254638423 587151198 398438773 800869039 284993622 149981741 621049952 638921786 719653338 132633020 649045556 352500133 860147104 437597505 623601442 325528712 626441643 667424863 724132524 974743084 739020648 288574903 877210728 388342290 176999002 949298248 29363871 891914021 389744223 864309428 806983566 688432656 840276580 886661529 348057138 604554944 963431761 711003704 314481771 831397037 288029392 405303939 759253725 807370174 31613231 849494923 371804166 706400060 916352730 584113614 593594468 491674705 520765141 589451954 37227767 672773476 417642090 33352556 191015545 529376761 884653183 344936482 684218976 718637506 667539556 950342773 324240465 86516842 675838819 217126856 131751796 439314720 25580781 748469692 834511581 911688561 518316581 542036323 22345463 2479528 316511666 819858532 605247315 336546733 801204734 463459275 171014205 78271874 572431453 905383133 998193086 175267131 549902529 93602262 902866621 914129374 737622652 483494165 826428267 313592130 822291228 6503359 137919051 19400269 454111757 703727182 478114842 486481821 424322862 312882805 233673613 792767905 352054643 27196582 258119222 758574488 904077976 718086735 251905554 918546709 63713104 722339066 210595118 467533525 331492354 809584440 793163240 198522375 41061600 831293832 336947539 900566368 813080586 575385497 791087474 196163588 222873671 467037150 612591453 459048690 282656333 235900210 322624509 541842614 798984223 266113091 895898858 805442602 351633167 819724082 110573597 140787986 763198307 651155742 637337161 447386532 705859176 356401935 803493196 560027647 366602531 922457462 786138773 261659976 600373451 500440035 513214640 88448248 642178148 532394550 941716594 577858217 302169862 783734389 744277511 176682325 221931705 99832366 254693697 443962706 964040754 160749271 803386371 260198073 370478912 655696944 394344547 68186008 669946372 843537266 935012125 682343909 18947116 280874129 226832916 832904610 86304865 692929287 723016142 987591079 222779466 918266099 371431257 508786775 388849728 474807121 781175551 276859487 876801433 76874868 146111093 237501416 576816772 410463631 272409364 854107388 737812409 170819566 640406483 290713182 354156212 620184851 438966046 199972871 80067168 962870192 330181078 523697545 295069116 342447156 493393187 909441553 546172152 846033604 844511223 921551301 570473029 755910228 876316136 62367668 100693746 760246081 94714927 670403765 690919023 692312614 454280905 257986035 226015693 259761884 736314908 975253780 393226590 478584135 734401969 679888936 736896979 285106347 146348118 867942203 484777345 688501222 730283987 438767149 971293743 442970072 736567670 556562017 33931778 773462665 278176169 260922590 758841985 836727328 187469677 255810419 955819660 227333015 253158228 651666976 202560695 196202809 440424245 340128740 266990957 853143111 139918101 448255549 954442193 459401150 715224004 201860694 321266425 871399200 697292769 187532305 261097123 152410884 910387776 285858102 544283544 675399961 92108180 838334758 604222193 301086793 513123951 541318602 110967217 955028098 459410565 292428408 456303697 192937025 606906925 693501351 486881171 141025397 130941469 102167353 479712907 897003802 504263727 698140880 838742227 7717368 80158254 510224100 116194945 961445064 695667004 117181989 164682452 35551579 996653540 309715283 620727592 67742819 439414918 935650736 847611592 426284456 265525935 898150027 72099534 408687259 717391660 691677421 814869630 403159717 241130602 797295185 986176659 912040437 751873207 196287898 151769630 495589556 916455343 557076968 115770134 695751824 517706490 366884140 517813656 467912303 26007490 897175717 859387476 978794985 257367287 121139402 147020839 661285698 259233509 24547724 894272956 79681587 749212446 714583455 224634772 532795697 125774825 163960851 223810395 816004369 650781325 675310267 9868064 90313952 295501533 383032206 147324917 96180615 921166922 8864217 119784274 642261511 724446019 341890975 218106421 702425806 746125144 832543525 349334814 377293858 840095307 935603534 586680652 918018396 354987270 554801467 114768954 510098313 883643311 235658089 558381922 278832634 755153113 591387962 113601776 47688831 652046297 435788447 915270587 818331556 11426692 495911231 582141976 444794120 54889796 29831396 708856391 929704619 991037742 306745404 760208079 4570737 20693118 912346097 66671990 709769585 924761965 782832738 95656384 37838849 48631623 812097779 509404747 368051551 30849966 476188305 983780742 189711731 697411368 734464364 958815171 128989346 116696591 163380958 772674076 196776638 574674430 569399051 905385830 488417624 254261832 186609434 408825045 55818350 325178957 549400024 499546342 408488204 157094797 689846721 841124447 531116885 880666258 417240382 543853872 900215153 973768847 539952522 740162476 863237480 79467056 202578725 178573350 446120447 645754470 775025998 183285242 177007939 14059603 676159056 747828087 794665058 286832239 113584048 604327037 873590532 256896064 973680221 497162227 507817366 116241609 312130153 656686957 585966275 788855601 120456176 210139355 985638423 99946665 47207046 818873876 681053990 885096589 822082668 826026245 521771011 438044204 812478887 915079573 127348768 503910393 371220156 274490728 972072269 870248744 206760696 832866485 875124335 376889727 48861545 267522294 719933032 162415128 973107534 596079965 578459872 173506551 731531524 453363747 987089873 23024294 691133969 653409034 962795325 974599802 12850399 174087625 26335641 129927164 867971317 973538335 780855208 148757819 557866017 938529314 173371243 516022816 657393533 980867417 394304121 135790874 689454118 983719062 669838422 62352671 368930031 313445171 880115932 566874476 761369537 220974057 370574936 567955464 250584460 236172832 46740852 158271562 423829141 112883018 806888087 609834400 354262290 732652359 345045734 936833774 976768305 476633498 928369354 843794559 410549943 504251102 127454987 735759654 92610466 130729121 483240968 73586581 975955272 164389678 74178440 203359419 864745551 455438926 726628079 764036883 898025756 678824418 88473293 368162769 474819903 349184990 506045185 168797390 980648788 101194983 144832235 366463512 734123491 447641368 342109745 909760292 436867513 253941652 673232573 56003317 412240609 545772185 469618690 351547743 567898334 70788680 17625502 623089726 866528081 578262501 465088964 652924438 842244362 382304490 435824312 259072337 993028845 980610495 592475778 331157428 483769273 240574872 657764651 748653804 692168782 36120465 896842476 236619672 680917023 227739483 435544304 287235757 631963408 461509673 329049962 791620592 653705218 482389386 951130870 489144386 286176924 82958327 35903417 786918681 183091645 164684588 502018888 390106498 771958774 255090967 443253714 131259645 665829785 641570055 38469759 752163321 520285162 834466744 555665628 521520646 389559900 834794316 392490383 536116073 996668974 739998819 708687859 177886217 633398007 913657833 223454873 372656972 333904372 827205739 160253916 478344269 541135097 245605559 241382701 833531583 508460677 489412622 765647506 67876463 761092665 162614388 850822873 276100093 511525170 156152014 74394646 40701024 383370892 752415117 862494497 289752985 331471951 625321047 44250985 224702617 517301190 98977040 342419402 170649738 186397803 171884977 240096366 984500334 328308997 481258048 895777279 594031662 186537374 816607301 892771117 454698604 787229976 662314559 827049642 282250593 167553875 287629976 327370269 439352780 197189459 740319372 143784593 836177788 965849905 724976893 599504084 929737078 225766817 140460549 839770432 20395736 540989780 475332621 484610936 916060380 737398802 879689092 218940812 821785129 342341900 527476081 132829021 875199962 128442391 227090889 150639639 985890471 986986468 2374578 829895074 424259354 310241263 318815704 673263449 302478050 641926268 5545724 245839704 218594669 983997236 625452653 293538651 349281790 314715845 650946926 878863868 296139604 29262926 454504605 38537014 526555665 942903783 195313579 961105601 752356016 986395667 614608973 427660238 258578859 693354773 705533914 823670185 651149922 833932400 578946221 580654915 313540367 856783663 37209841 99401648 39449552 204183187 413120066 405421015 596331923 767795255 833577791 20138321 240959948 797543282 901924243 259254827 715112944 431461986 671267222 64799461 26258309 348326224 101919386 227233609 417229634 433718057 360241780 385034145 396762549 146540016 785232261 569675084 921188213 998102361 312207634 337682188 339677101 4986089 206861394 328111786 397936143 533404108 500908732 305059811 228217768 953147418 465464174 766937486 773718537 988747454 561049126 885527108 774149250 4585005 469363754 134815105 248707735 452154208 820438812 593825033 771573441 281831630 305583967 13411586 298659686 573114279 57649905 715249135 268289614 525135604 990242285 885492735 237361134 151129178 775122846 250761925 162339217 792661606 446587453 658059974 635665988 856325330 346418875 101804205 985119758 249683756 817729088 240316915 50727882 921605494 626317974 256483921 849303054 571713300 579367374 655301865 856060170 671552384 998538757 729595227 602857450 480963843 494949674 142009144 574869452 446619689 157337919 924015879 344730293 3077569 297291196 191369027 104937887 942513168 600263584 921750378 602369259 646388989 682384327 519888613 522248052 61415616 6615540 950905027 823816742 42081616 981816447 584635041 766608861 145229897 41460813 841637888 571159874 327796686 199600160 3519402 675430564 909899504 321775844 137842361 486270218 312492360 407117798 997959514 919145018 929698409 376071495 774405271 617318662 813527623 111521284 65173450 751210453 837993379 358701923 115867283 156604757 552238076 326317763 201019564 570756093 625171688 338482659 801481018 743398272 933780328 380234962 246851437 873468713 674315572 569794720 484845317 44533276 197591700 174631325 672734374 697784464 451117611 494219381 970157665 729792096 921826908 913933937 119637132 546111446 380131073 142087244 196181065 648970994 857116375 555904275 949893709 245324093 18237492 491996455 577064505 504207230 971510821 837277242 176513497 367564486 472410710 996754454 517113992 875194321 278990243 638048680 431749603 542147203 895879838 522770930 932431517 728011560 108087453 655653932 263975475 191368546 394249708 543731992 413985749 806668372 283172563 431441433 377411349 978220543 396394450 81284301 244122793 307313111 8308374 34806545 312364852 437551474 83344021 747861610 361023506 200040814 431018137 831499608 467717222 389780031 312339818 774663710 873992120 943639633 440444061 846292721 198987706 18967686 281722424 681366942 641850067 404925902 880326238 858439978 275573643 833377810 534428512 71797958 759358553 372918635 960369740 93033424 915204989 341519653 570994549 577020162 443902274 24414596 217248527 840628420 546233743 58255087 927163183 790023381 714895555 184163250 380742959 345220374 123532495 778625399 552430672 659213323 818213714 616666082 65682376 487222180 89309749 208081215 621626360 222159592 705528063 134543710 601195049 452395285 316885224 281109285 72976005 318069929 249706460 855077763 252161266 975344822 159785576 344138285 812336491 899711173 220466743 252796532 505441076 973340137 91413106 241099187 6706938 212578703 604389174 167243457 223361217 698949858 584574371 455101292 79954546 217772738 602693772 469039757 503437342 71684562 115329984 367190447 349123989 486733683 652767183 49498333 672671642 751182808 745971414 845609717 699001979 558663811 876993757 407500498 667626216 418379200 222244144 211693258 850478623 611856759 963724605 337717028 855430028 154355197 840480443 303740738 108930618 605625573 457515068 741512296 570868897 27974712 532087863 518595614 362888323 776829398 729460368 346060343 533402974 407846871 302087087 802845256 73495174 460194205 56055823 685974421 636147677 421325475 765980537 919260669 758608424 633511346 441152593 8478554 714258091 711306813 645386786 747824918 291034249 353312621 99242585 904553658 469730461 365374356 962949053 159702085 644502648 64190129 442377923 34293791 564309716 63641052 835885074 189148793 625208081 539757733 935293403 892568805 237526774 372251456 219728826 920104869 747897440 80624154 842407714 205258673 588504105 52516309 749680469 978502768 171742216 668856804 511022339 107745373 730210998 636013145 330822355 198467763 715208003 582452963 511690298 757709793 422732507 838471528 844939025 112998663 592079124 627255238 340893848 50496375 922256300 677844967 85267647 829230162 163495729 40365600 600094747 673135962 85595895 607956613 363456814 786433904 95184063 361719155 763873259 538267471 126140736 963175017 264875059 268112072 580767844 598957889 4808539 705832971 435828635 913061111 549573162 155827341 743097633 557635529 572825244 317860593 331296429 116463259 17956421 601914572 969483680 362858563 901130915 448293448 818800372 423896940 97966427 523845963 255108057 48992371 20014050 984056811 20785631 815514991 654387754 58435995 584680986 166051967 449711254 881021473 500664732 204498212 888803767 246156967 359994294 588074070 520603403 768425994 313138374 872863224 108424704 905221008 24374920 246914221 797128571 241021646 844287748 12853433 687863735 715847939 369291873 437292681 368063378 997176150 104181714 487340698 725285288 713420621 768818652 234253529 322118020 644695525 146549005 859574279 751196273 283812444 594860884 912093753 519632902 956494332 754300121 990669186 780169104 181873399 222286847 308837550 219138381 48054989 164311734 749930624 175343047 472389942 749182878 48756221 549566450 189285331 247616357 497717134 608016050 858970627 719612248 484450487 506546780 169002581 167109972 616702465 634854913 748315989 792092789 765621400 329163744 856196667 836764122 613363473 596474198 309930054 238325350 674871945 529477439 736180643 733492579 51338033 253048592 36593171 121417176 291302572 787002270 269675617 480859533 704698369 448545845 171456371 360959456 12283874 109943195 779938603 553146066 32322609 639232761 286343951 970721793 378842516 859525765 731109458 396548732 279919342 952665820 888061020 334957622 905342661 18891268 127574621 76983197 988727539 145542450 878097672 10404696 316976500 320351366 198767728 13930131 319226525 282484953 761196438 806748697 619867480 83453817 569025314 313940762 796600619 84132502 123982672 842714818 28919623 330850680 429459420 262502787 411300238 221315361 811468178 59599057 139068927 44004447 231855434 642683651 197627352 593895387 567780567 787278002 49602633 405911474 101917281 792924099 941444734 531520188 330017277 580172450 92712061 687428767 255765504 803870232 263649382 52432049 932750698 392642581 621585761 171715556 981669664 913587572 256812884 57985432 122864240 177167231 369552163 691986353 657893728 316665227 568194744 159812333 128618739 222012479 992674943 410597279 205683666 653089511 210938342 506305446 313517265 444962129 957410606 113199253 621435172 148991899 96507650 205005286 967231023 662754574 835997836 396292266 237172165 477830314 408679565 847208081 598434788 202198062 580018342 514278602 247442757 969889316 996785940 140688943 90398482 628830950 317632118 718156112 756833704 140866053 666747981 966099835 49388944 901584198 20635153 92260684 89471832 927046966 855076755 858052554 941544195 76831916 947836907 443496700 658338979 710122582 58419687 356390380 4945666 394376362 867279092 35357872 25671387 458434318 702069401 1390937 999144020 285444910 470976477 966446243 41533525 909137274 92491468 966483696 446365788 620292272 951364255 495424768 432553507 796253744 794191508 845043181 629554076 320976053 406030388 448926614 276624886 904984947 16199883 13584886 995746374 456208729 77240397 466100780 885827324 175707379 289736403 750714926 92365478 28185559 302829639 689905021 860865546 187097698 736407610 717070790 996220418 324325807 965962493 31230570 327408710 936344391 375266058 187695419 256472713 733511035 831427617 794321491 714984728 368314477 850258234 225507910 738016851 267055729 492718609 320886084 690527800 517007655 348456899 490089760 957732071 120658189 814871097 751007977 918702745 462244631 10640888 6833752 872877009 902608803 967793614 22509583 415528161 308036937 300738064 745524745 245437475 914712606 618255158 125155053 636318555 313800672 579376628 852707514 607440698 606684748 506932179 68140507 218393964 232472754 341831451 217860968 240916234 758208027 726960459 107638599 124676254 954079808 35553763 643653702 467675562 237952517 475885097 140891338 10263307 397745875 392586069 685106770 325170032 356419906 785279810 313568385 511216566 733194055 124161838 960423948 412788541 157839290 63447543 451228604 121451874 343136406 618095541 295667822 902446560 321081726 424245093 875904197 933543230 887330032 894324503 345629390 594085895 877155612 696707315 476553952 825100787 342050373 378840913 594975359 420270086 950234377 582478553 526117916 943157414 74210181 786156254 363145820 48274194 987728735 421134502 273720102 104720982 187611959 965581651 407915922 528348548 843901241 820307958 162910002 959162394 120827089 515244953 215123443 992846811 214535828 157356728 847940012 467832224 197588499 954530011 680541454 536661270 516276399 85865947 781375377 411984290 814113290 399607165 209386819 842153446 437824077 302347590 381113789 105117990 467123206 17631304 615698108 430880592 237558853 566821986 27781291 810630574 662180796 46350538 496455869 408341981 911070497 801651408 468051463 469158834 675395436 637327796 466325903 34800610 155704775 653623621 713675664 653786461 717391504 769636345 524850248 760459187 946601794 401438886 601392657 289069342 366436602 949153928 908608803 747655241 648700877 495345024 194608294 995438627 366678478 790200244 83555039 854461712 434375994 822500505 804418715 961895895 564426445 90978936 867799465 141700739 606642314 432232708 941183916 221887549 849082901 247091465 306604159 805011393 877316822 46100041 860401567 153072140 548162595 35601885 420633346 774835305 716033442 921775 725947870 939713799 159090661 324423127 405080074 758444102 300241715 694803579 37184207 789931129 855133546 750545976 753617234 86619596 748464818 696218842 546999555 90873446 199782304 513101954 522102060 223078612 726399088 810378185 299808895 811341631 984408134 335664523 529190615 340890570 462836122 864513803 14844723 201632160 624615477 333543708 406487052 100055132 798666321 435706818 695690373 987507254 857972168 119054621 83919961 393142884 191275574 91416791 947315509 337000597 102012678 852704015 203216078 988162479 521838324 252027653 702682509 627627354 777755510 756410181 269567934 542041895 73192204 903380184 4962183 235041627 18864814 775007376 445492059 840246691 615359204 516624912 811603265 812893598 734842896 795773859 304832786 722716559 110883125 68780288 833913145 325670592 653483111 432309065 282791483 18050346 399985059 712886851 136395588 918539606 907571621 422389656 774373646 392542076 381529824 950319016 704997888 577464683 387001074 265567313 609033829 120180930 146335874 682326137 646408258 207849690 914373807 168038269 958912871 619482036 820211741 285392691 612250223 710898538 47366657 272811890 138342425 1756178 82336733 404667877 293126558 573313328 912517388 720026782 600091628 455796189 314816748 523230219 510655057 899474733 203427080 40424128 125467341 129011861 486593175 588357099 416976266 382168439 608547357 643559457 39387191 946734915 332533147 344275412 489842529 398762113 954818156 597329415 443526453 210173613 487958658 519197920 939346932 768289102 20861930 384812660 112898125 481294086 405248045 905692957 2223588 394685229 399693411 698296692 763407335 763134831 74906492 640749934 591729890 599320911 779647364 998350667 492569898 459040053 818571395 603574621 361686360 836586392 429112618 293937398 664426420 65430989 226640080 394023121 698346030 922855465 777793648 760883814 840227890 274740107 589495072 135365909 545848482 215768563 98749960 613389373 864223971 128779698 55291275 165727085 328495524 332720359 602511136 691317187 790899927 59022726 61291789 211502619 314544645 553885398 726633715 266622614 286804701 709644463 166338096 826124540 187022294 771512616 548062656 849723809 550986035 596756557 505639017 691085648 451770360 937231584 292981012 87227303 564161415 114252113 964919233 836681583 278349743 155706518 356351301 844750479 240486247 449638949 266112927 311239106 985002893 728651155 834434292 959449090 714861035 963217763 375864069 516670882 177368987 16813940 933514318 979529609 727731101 547010156 572554491 558150697 406204403 63683591 415290575 865866536 347501430 335081543 948456693 467354850 745007405 346349906 378865833 455509892 515083547 91288120 850367363 516942251 743414258 266795288 629565892 795461963 281344121 971760458 702483786 303311778 354710715 809271273 852047423 269756081 74739953 618997346 924342886 797990554 510655695 426501186 792291319 748612481 156565368 775927454 84846274 405430875 67106600 497904239 215252198 29980998 866138235 301195352 851007184 81553990 910352481 140486250 737359529 646178127 608757186 262534271 305349443 523954513 523658589 798544113 641125092 320007557 935426494 540909263 380352208 851621385 64671119 836192175 571056301 641148124 32768581 755913543 411008181 822585463 662055695 179480629 568667585 839543498 485815267 665894940 451913761 159045860 205798743 357818604 316923259 466690482 871315537 808310847 542977842 463894344 111599692 496658928 94107567 331891767 523421633 256106397 749363022 904255625 650348952 390532501 374286103 773320544 12981247 834882012 296235680 424940400 327272178 986469204 409589020 635159909 724745225 539870375 340718460 528101906 102484366 691273590 133758209 341433940 567916566 948062654 868072577 688179618 296160422 157503746 352606964 118254315 277159536 102596979 862842486 620707027 487144317 336482659 823485003 595956612 52050430 825941580 467386325 244169899 858413793 118271792 468870699 214229946 455603447 409543319 250870438 267654602 713487135 228520325 975401397 750660000 659253895 473406793 714769564 719003220 90915085 865416137 566730654 971098998 499166797 659288979 369634518 760834350 987655923 937689595 168138768 725949318 501042672 126625246 244684783 348341801 118804802 629053627 411223147 239417298 859977151 463155220 968177998 238228123 320670540 46767125 71022424 651141885 414434356 353005826 922188207 939559361 919698891 110418417 860366539 280278712 683807367 137338083 53678482 343036165 639418427 730787266 71164553 738436939 855612596 717035857 334202420 209969749 282802511 895042463 874492242 776382519 90945430 404966799 533123284 596044009 258505652 395226064 618889560 477698791 969314409 671586921 783710892 259786687 773515660 945354100 304437288 659975505 536461187 662079972 680517764 782722313 155014973 165420206 289438521 446741672 550179863 999007423 105087276 699551187 422366581 538579477 262136819 25510744 542266263 336723400 855323433 871655505 126823511 504055167 319649009 226352328 329244585 492934367 53617625 471204460 289436709 477914060 993317428 408442460 926838803 546964431 936289462 130725920 175118803 332040519 19089087 654728123 264472546 117145595 299253236 821249969 899184888 186939709 395578229 662136012 854920000 695939820 718897184 685369347 758094795 260660166 216794382 420401529 360134337 230461657 471086432 580453372 444191031 204532554 575364566 872500409 766422507 456377733 167361591 287140190 422194070 922669174 676335953 824481402 587687379 804678818 504379129 432225646 4822378 77661044 328214258 11978661 178692078 834943561 849548220 25838687 264202243 118312853 546992697 67355683 350161681 642202437 842884135 342918336 931978377 161574113 766691514 89951202 678192818 179833401 168714172 443781794 299578824 294000379 916771308 5242813 352543864 959073577 368028363 520033493 6099283 472422412 19570457 496331589 777461723 957234255 40342625 961551564 321114930 680636067 459894323 434268795 33751926 271016204 770505573 264206885 836003231 121852550 913739773 231897848 132685529 522230465 605414516 749323892 188891437 296340763 220158834 413470845 193701394 969304265 966206107 497057600 720059141 670134326 148215711 705472923 582095307 222448001 273314585 309234192 226330848 24464487 891047565 131397525 312850807 80507281 255365769 887463392 468153484 562498298 449933716 893945178 277946367 891028974 948379207 951209020 218182001 596520623 63770515 139841651 767310083 995548185 425008004 553165075 158791704 726979923 780997968 807316399 906422527 707735499 6243252 795405439 957663676 241441353 964487316 385192571 395612263 295175974 51507343 523726573 483471319 631947179 958851282 704514549 874175775 383364632 606766745 14380649 200236655 788214738 922195128 389376640 616591324 1661455 74767426 440683012 686752063 97054490 636446247 897147604 758037929 734220172 319611284 721814352 593755657 255795872 688023752 257648003 762629930 406269967 272885917 172889476 371146159 116803388 228419202 9860888 545159192 630839121 401690804 112305318 449328067 702939039 476929483 706571132 919836449 511903635 842761901 5049643 604678517 542864611 953600887 322712983 977865297 827892828 767852687 885353579 696607231 146936568 717495832 955311622 314945793 14179066 693680197 187430259 86019275 423566734 962598745 274864293 922416230 364241252 315736683 473374858 439484515 473233255 84570503 100812876 119705255 282947897 731852217 670789308 876423426 237515307 520423249 86845241 587802446 733431568 122193392 99751477 116444959 725824322 420987844 42825682 606143180 473918135 544260507 304722444 836034668 649593643 72343559 948937635 537710103 604058463 556391673 773977011 520010443 740001901 360187137 75137675 500564369 780658989 107155222 990745909 481256996 721125750 641329669 235800529 499329432 324626360 842193888 771722975 330337453 858229634 554388696 502053861 711711458 872810612 770501984 860818717 629911042 567180193 612042263 560764686 926661352 862310373 703141678 820029805 835374307 498894462 230527078 950677287 686064371 809420352 312634179 506635736 848611057 764874308 72561357 72933752 669445324 97635149 848227786 366774485 646885936 584106262 87823645 590654912 275292927 345015551 405154273 722880397 92269943 598255688 574715014 86663026 231166955 350731700 335241767 924996397 234384613 850182031 632524875 88430728 136731076 158267777 767229173 224100342 963185191 778432989 437298513 391777255 120694725 870405951 149230147 106036937 135614271 451813031 178040735 826359568 673158878 378400926 417189724 68879654 322378750 184108805 23636937 527196362 627950254 124810659 655574707 388448744 138656385 856753690 119146256 567279453 398624326 691886071 334910520 245739968 440835687 395848178 142334364 291272041 103434448 476759617 874936533 723050980 51649711 719394880 924224925 815296870 829635233 449743234 788169286 337881781 569023546 276376839 184865665 232062046 47298407 705369997 841760332 834412775 480420490 374669376 135042638 895204825 965924105 647015907 122610130 462173009 250392096 676780454 400328542 393998607 22561851 893148957 887198010 6865744 183988860 353223972 856212295 8505716 910896946 9357620 192728415 973156019 658763680 552311152 517790637 704180111 294687402 786757170 205900939 703451277 453055866 810418661 215088625 553189168 30689668 972888261 941827899 190602970 16829630 616440739 420077509 850854378 946288907 7667586 866823050 738392215 252680927 684653331 54364902 158957187 554511973 874153737 205848461 403499624 869927666 175414613 155777698 350153345 488415734 52872327 826900740 364694708 272553336 285562870 957094155 399802298 180251073 981441714 477837871 833056932 656242828 293465207 469436291 742114558 902153916 90771355 609513110 304675228 474752413 84701431 161789636 828846790 831791624 263050579 275546194 920280535 599288456 821843907 817013973 649299110 742000033 328891189 40678225 57558375 549078049 404360560 517295636 775217316 436679272 140012449 444843332 281323366 657314123 214151830 940618729 250329186 740063241 707073468 695550006 164170423 319958050 623385967 750710677 154224380 918552615 576402341 383467428 493559916 727978288 308693617 364147536 50787314 840071778 452500736 124601015 230210906 99461209 660161879 608604875 743890225 507321470 585853028 239112997 649390954 477120936 743189033 273269969 139439852 141950660 956144258 52411572 634811358 751324185 159225249 709902647 686380645 552436117 436076138 288622888 407200996 964641897 335898822 841163032 970324340 760070057 301581816 612916801 255711863 996611448 662672282 516205805 650956244 410770509 906495548 86059899 932623850 880779344 501749265 95885881 974238215 42811564 343134789 492608053 530562871 171043157 277438600 511787988 790110469 475380796 759757983 393083003 959495992 552351696 346198006 369879313 185187200 296158842 782005704 529507587 370179651 879252095 150397622 294667809 598556219 985667245 437286503 657561786 494699528 755305696 760762205 89622627 849715846 145807501 158368692 12836569 376128865 884711626 672088527 15150816 252896122 69651031 172782694 232056100 881052541 802809376 347109462 865367359 52851403 409043146 650945414 188049333 92698039 108470131 560071657 247186135 29185816 529347413 870588190 331314271 367239706 650690580 320820091 79940750 746414340 272779083 328956424 590485956 36253300 598789114 826199035 994100618 246260557 643974233 863686949 337706709 397464775 516778013 622398250 189054946 672325610 571140408 994987172 699550642 763621825 468242764 40611511 562872631 123118762 117500381 606646045 270094617 890193339 67800340 825585994 866842764 553651862 262598296 632721019 942049445 262659094 289044223 644061725 215452294 616860895 736451739 332516843 128368778 122006872 461394189 519954868 379389237 68561752 580307027 767530467 227755410 160134897 705177052 498229413 406069053 892393110 718873988 738113392 71310014 99221833 11602090 534075020 15294277 509673669 489916727 482054201 388744670 2856220 116948483 296783310 697228522 307967304 870033506 829340812 675884791 373735528 459341444 774820265 481197692 634770819 216380057 695310867 896235700 965905560 176512227 659566343 93576828 778007097 871825647 896616603 639270810 393235798 481204954 49038014 225680511 174617198 948373733 369499049 340117586 398513607 103826603 267635983 877372609 241683734 441648364 781286867 759576684 854209124 48587957 41788333 562233933 688379982 826292338 750876294 641780517 884092811 312898215 979319344 89036252 889330108 473460008 817892014 21869435 631958676 845683186 700526755 373881139 771820124 692436020 784028631 769064289 296354142 413376744 651602915 92954309 470897362 218393976 491096089 590787103 319956649 533964999 506763285 239653673 39595282 935891637 117968090 205516103 668743715 528032478 951741299 469621299 900506920 674027382 844957160 505628830 816628331 558080706 307254861 827853572 899303360 407491840 419588658 53854411 141796889 736556308 214072461 782915023 641319299 397522022 55468773 821692588 458780977 641091149 576972888 446128864 874333087 715719273 173259491 518304470 238062305 814797403 822060004 2404207 684660848 213091020 306404604 224547992 462641325 628949750 533724775 800048718 550602241 589834815 404562210 408779120 699795454 3446637 122249047 154766023 96812177 43455671 466550887 854605132 403167219 768521737 175294791 592813311 217357841 398931187 829962876 796683973 901366947 514227906 465046212 151989268 727608040 157364313 686739886 554902990 575131748 611895371 688502200 264887908 253142424 787572273 383888180 256617019 623734845 814153197 123644131 200697394 12261160 631003242 440092195 836639158 350702916 278450981 635290520 977800755 454013870 480172334 627986891 580419241 33988541 776353582 845845538 382642525 422256915 126945212 545724464 170979421 487121576 243390234 997239185 479444075 651195479 895722491 548355214 811508852 138808764 829684757 5143754 635644528 152826980 567935755 728399700 233575977 453049196 760276566 740912597 680749558 434958830 525157618 498023225 173799391 493172816 906062644 329383775 411467980 978549564 401689917 166559501 555062999 975251301 844613907 756126987 203327341 226521293 936187228 681465907 920399428 16788783 721703843 350945385 928090518 633773158 694522041 468021122 546192848 866622573 261189388 797798630 758197740 664242222 478330345 13603321 847574545 882615024 181332884 618960137 508141064 183821724 567415631 84607809 282976536 924889824 485296344 258296226 957863452 322634728 261648766 706335477 926176550 80456884 231145441 181901793 746153398 19062098 491761230 763834439 846579202 740378029 561003329 529319018 491737298 175404238 226928965 825697526 517805995 24221546 537096318 48116408 827996475 567956282 846955214 905007909 843301329 734266572 622518035 494230448 910418579 629743146 471560649 108360457 56791412 973780377 444257013 395271487 665558071 791038845 980010422 947564607 335726785 902966810 501613476 674023560 187136976 62139546 446257948 705951082 599497865 94679473 189105110 919153770 56303920 740697588 318703436 282777982 813756852 498878636 12006649 15001218 825748577 228661921 678570124 497550108 556068553 547142567 705813161 901405478 310153050 254039028 392598926 485249349 284297599 971011782 573796710 316292316 985125033 372363637 315865476 839989672 369262333 916552416 732019699 989774388 844562890 395074640 433185749 193297154 429260782 453252197 192683133 953572555 232002141 996518164 465929079 879138325 486323590 121582877 632508751 32065118 883425464 197176941 412037250 193586963 706982626 525949512 857945182 97352111 949431900 856018906 396958308 888581791 518344333 442397466 282920407 194807471 683118699 534949378 760796935 868767409 110359273 608908560 38751290 381143915 659163730 803218986 277401533 420925006 245027734 664113139 642158596 215116638 618439806 196358840 304648158 819058706 942257124 408147364 636578622 223520412 323129231 844841251 901551665 938224867 327799234 82383 852617907 925471347 322883328 547273245 445997209 448420761 474305672 419863008 517108089 299046961 483315154 598557592 162343879 197760295 421771810 651642381 39819605 272687230 399108279 941690684 280176845 561926009 790606090 919090824 953449362 465589099 625511248 413055629 316886264 981601605 528379913 493024568 418583715 588864768 533732151 67580284 864215733 569001827 175754479 793067227 573790950 877353320 22432467 545597428 496568794 397193467 1797828 946334259 47713083 866388408 697807229 960163935 692080770 275240079 16735780 980638849 707157371 222062229 269713407 766894837 43800920 983164826 289058424 93876952 315973489 180200383 38257280 450795962 157103536 148029845 408536327 508501996 464740163 74446653 241702851 593844981 292520282 717428296 68009324 353012346 715059465 124218882 955913470 647595340 189804537 88547444 494350366 999346951 971006588 806405378 144096837 701468243 319500836 662481945 165939783 398138571 857300526 581117911 678368431 807868919 360571608 279427146 251315222 355908264 982221272 172811496 427209001 585062817 698515812 470947568 408992215 165767975 999873232 455930049 707315723 571738219 961668454 942444783 160868850 895479332 870364961 882171474 498956387 290498069 665611411 631042172 10385384 540618390 732884659 582533409 348858081 620905229 446051650 184050882 564331502 464546996 804151207 704171817 545035247 383159709 836366894 869310972 289240800 90129926 210266078 763715449 978997859 986134481 314269171 746086076 562600144 177849389 56444270 164032382 184706430 763768070 91121092 51640409 666096398 101834954 329547426 143228774 104917277 262981041 190181533 626533221 815423814 779620509 645140216 604649671 561309328 895518416 795959210 619847585 362488955 151119852 736806015 96308715 997539852 771661643 738286193 122396182 531274821 295600310 519715490 760034870 665163541 991899824 763985020 479064383 516289115 377172880 31340053 745730159 201764567 645433501 446000144 978899687 665218339 698406221 25341877 423585703 759065773 351106712 605545952 769410797 213599809 800731103 876926205 213848777 18627849 827483049 415375752 503949252 215658864 563374344 121482245 128607589 87942160 756808178 813110038 321564641 101665254 96859003 387388105 681291893 264938431 631740231 59734062 112596553 983981141 889000120 35057010 906443303 42045936 795471357 388337835 864216548 919824330 69929171 501433661 20157545 55523246 42409246 137381391 719481021 353150739 441148812 799984449 203057814 685098495 142441493 465705827 438430240 389733977 993064281 720264502 127230481 783367534 887172191 193511934 907341717 51734090 648414333 316253007 777326829 189358498 484519028 574334888 118040091 263460770 127267703 189623096 320482920 761932632 14692023 493187572 161734489 233994728 788459350 326262810 381194014 525799245 967648087 721032395 927586663 766763753 679936361 811400257 464551073 455961498 567982676 24364135 988759883 54248970 873567037 412160221 753906943 441989318 777176465 976914694 231528681 955083577 701628640 505025974 617663327 843569631 156585483 117726120 399133059 988833596 436851225 464724547 508401428 114468486 755281875 426509884 606128011 523393367 211144441 502090370 476927442 138828006 327060783 510673413 924811813 321383006 91004104 415455180 489784457 378978058 555264301 794496891 778421424 595966143 603513509 818782817 982524927 499944156 387277276 464961161 774402352 956867743 583180046 508319743 672247376 993333678 754299135 438201161 516621649 973618085 235098061 950229310 485117603 713923181 620004558 173720840 205781275 168454775 808107456 177111075 272979019 690833878 118058670 294117487 894082305 197981707 606785182 947116278 46713475 191491499 698738112 408066393 860610130 654269885 190954717 506474986 56511690 626207863 366581672 899919809 762202127 594355439 470897630 467764699 856730118 692592815 749626270 456325954 870089286 708463280 861739564 618204707 128624207 462943522 204187113 394927742 139025562 27025078 403851365 300572869 48069318 734171196 936954059 644196073 744254542 268471434 962248765 896863980 630090523 309814261 589873696 627557963 681198561 694718146 374075615 193718881 674023618 761485195 206134468 572157060 606665790 459294649 151313508 908378732 455743477 970220137 674480807 73746739 643703923 500747559 799360066 884558126 928109642 89035799 703724415 994512649 876338961 32501647 697706553 805890008 744689743 537628837 577878631 437690029 458792675 587455075 955029790 732109130 72266848 968912535 458095645 635035367 126157452 706256179 786145523 176948633 198402504 271982107 442624490 663366371 665854279 266352834 264046669 195775141 165679539 48908465 11682959 593636069 398061044 556223558 270120793 265921486 548854293 221857661 872171711 90698841 831911976 441772485 798731059 653633700 258014308 598000484 446517153 70047376 808264096 819506830 875962526 250704573 884736467 437100893 152785268 216710203 40015352 2953212 853269455 291404750 976426566 98119619 201504812 180689826 725727557 238440406 989963423 726980719 634475352 632092077 465584479 289070074 79867751 581333949 877053164 201184989 998768468 135181886 949989540 760849243 2531312 284297979 657841190 705883416 163270147 751415573 706510426 276722844 801976671 810673181 181479250 80895026 664492210 655565981 299042046 455695806 662790941 625858385 792117016 766950580 304138772 288647131 299162646 337776192 507987157 946403407 802356226 832837418 811822175 332067861 419912623 982180278 295588120 971367895 557295094 665098805 185349327 53384629 137320328 734703895 744372378 851621476 475951997 542974873 429057321 618842279 570456694 203345962 236424746 700941743 60876342 242506206 805654650 127315719 591634083 661683338 822490601 904776137 592105582 874181283 325916479 306540104 315556023 54618077 325324685 520726043 514047430 985129376 130980736 91612383 876123613 889941685 432096052 208218002 312419109 847392957 30719381 239861526 15478251 395733573 423394843 838368190 897755232 546303252 506954743 550888228 848644289 47585260 489155879 695734974 44988853 295079053 598576450 453526172 997376886 147489092 306892669 517046671 707267510 225405712 867605116 104055924 416807997 349208398 829647759 868691170 479699059 498000981 706808379 358902496 493053535 905417874 550086993 995126419 565994790 577211031 524690742 315629489 325951159 213250792 431412297 273574891 45572458 566461043 657499480 451578127 632446664 791576305 507072219 450102788 793027480 409027651 406043506 553934948 102327618 730092122 100017611 92602469 932739949 143294669 441123364 296758207 357369385 41482729 536487283 432832718 277561226 113401101 958914343 568888723 689428384 180774734 487008081 716930324 400225794 905399535 601199820 770933252 429024165 442784474 303177067 914995724 23092572 825226452 606800733 691969306 833074722 205003499 560358323 540761688 718061610 444860891 799213954 916852151 878130966 874360883 302472988 508380747 181379187 520298013 222583801 516154678 745137462 906357808 847971609 435108905 840175012 743402809 458015610 293293904 851349527 624100614 140889805 91667207 829968169 584812469 333775403 214853908 910081505 872838054 831971232 608068174 153655142 208522323 357675316 431048358 619831316 286613984 379284043 431272172 757498087 104679960 119562199 611256288 161576560 163680548 480713643 850295631 825421599 91893994 353256722 870878472 761198392 206113287 309068754 465597509 653310764 530454370 115528886 807110248 677509983 308497703 907695257 405162266 29265806 638589381 955667174 258271564 304886194 697137297 474115537 342563330 695633137 441184195 331129872 677716651 366536583 302510983 882431697 464084633 467780236 406591327 966488069 497194807 429405601 38985275 592562323 863256497 910772872 773990122 219579716 454675153 40463440 605096348 704942637 158157787 658465625 566269382 430380624 341163561 471483257 129378381 376746669 848070700 157199519 192121620 966060219 514012923 659141878 149970626 959455660 3986926 63234279 697978903 884007828 699127337 490658337 24818110 224375995 369536552 403938616 283494617 87706326 986184923 629770443 940283866 331174921 222553189 361500093 203722974 764877528 812655009 245427767 730891680 172335854 81728524 331074713 91440322 931498814 261783591 723686263 928478697 735668163 153829626 884590287 690332206 34204665 332479570 982829500 173470245 372351344 391237283 349368199 92522362 34973018 85884177 801252989 190875116 797436730 393528878 483539765 987516174 520589856 375956226 824325165 498996161 373902020 918258696 329544433 277720550 202861746 368598305 618943659 4413586 793643789 90133729 542842732 300872216 608954739 239794379 930091675 598579921 251670373 59501810 810763709 42989394 60060603 993555920 227799720 3350296 221849577 617352849 41458543 36334895 176589880 893461919 261611387 100347866 330096206 110207474 232943475 50293123 324345813 525824186 616497923 29801521 67494955 33050928 942462061 935086464 274022900 309669389 389472982 208430716 9803358 539226303 316942154 348836004 711148436 563217130 100273636 360880361 954817871 738709659 551390125 185497910 762908155 23006037 766144562 823478293 315536009 57988982 317696944 939271777 166562480 374672989 259193230 76031369 802971228 404771927 653885226 789329665 620220115 386394004 206512678 880521459 120556428 535021357 735599360 662752498 368860019 915680415 161609515 570102774 317490373 126917295 652415093 370146661 806743857 848543806 964180431 624342666 16207313 751476792 313495155 271781478 634843644 973094448 972920449 258369323 556082381 782651000 919834852 120731784 603333469 459937046 488939506 425762137 207890942 695946162 596479161 686826566 346284134 541429839 25721076 27122492 969470903 314465165 958027062 953555177 473519922 292513226 987222545 260135424 132585715 364797558 10603842 622239055 488091994 74655081 694653626 996139786 760582801 759584895 538070429 799500337 112052827 782289273 705484470 812359961 176496252 434101737 839248948 308095638 626397703 422764477 540323929 964322840 738976638 320913583 606853706 142805583 178036334 485475624 977885871 779740751 806421736 737272092 535270425 56735263 982912745 64633349 56659725 409034530 553425484 287323456 745756914 190572762 119780301 156477701 242471941 649456493 390953270 381230733 175096643 961039023 950890381 463664423 1712118 550050949 763695334 711460186 174829565 883050977 110336813 453710381 655702106 893138939 2151895 169149853 154742172 714267147 972643256 284524098 153557532 16434016 4108565 929260433 157415945 6071769 798227882 318340441 57842697 476492323 179358767 262978807 548921839 170866320 255867059 948988509 235415506 195154510 545166845 381474161 506527941 313228935 42241957 805538004 640031997 609401494 987916366 256550923 314915623 286386989 537972814 387901024 647092049 448508632 459438832 336134658 355821726 809848253 238428788 635445082 500593654 951796437 447687967 695948668 838550988 944064439 512521509 472273225 218714072 531813333 296775476 850842297 284884144 597488102 592340132 315737867 108162227 150083670 823141686 775956055 134609713 153515060 755004492 41056271 984709543 206554011 90218986 231165164 503509703 940380807 120959731 679053867 314975250 121440329 471631190 707138055 73250362 811062243 278036989 475127484 480037207 800679685 954765404 159887792 124157586 96805393 302918547 634722149 720612751 538662341 864737167 785063607 396152517 41328827 695018877 19039682 801565723 619273316 902731488 43000949 992871699 695456938 988987770 593530369 106058855 359681091 321545348 797974173 607926523 579359129 466962003 847058736 530794475 695452440 433323238 825136943 414757394 827421979 899932836 766930813 410304736 163118202 604585321 361544211 626784992 262129647 121011628 720985642 832956245 872018592 4180157 600236171 417622926 856620466 255882067 261768317 161914006 905246266 988122287 23094448 232993823 29390054 307872534 503375362 144614449 367428484 339713390 236953923 725852937 1112219 189913228 95776018 443920943 576578759 80653334 781733402 515259573 837268041 881134192 207570436 128472758 926738578 542857435 206715726 955445697 293960238 288230453 450353137 828178055 362938110 882503097 45691830 303493651 47964465 347093527 783924394 851651010 6550905 919617217 935658896 762378593 895618801 680389343 861764996 8043314 880368851 25911575 145139226 359833213 39602855 147892761 519477717 929135660 826631622 246112737 904942060 795335228 62966818 731660139 748666692 601934417 250940905 804587066 176733493 628756126 92731293 447448896 506448133 579855928 319981522 361633131 924522867 140044996 665099324 729574595 617450836 521365866 796904915 803863696 12355013 532851621 472195918 246311458 883620629 993418212 862408222 352469191 51247712 629747590 685098478 843023723 93962385 925918003 493238410 119386012 734880790 203881783 733428906 822096405 964545429 716069441 462478035 684259769 939214140 353568580 447040023 901904385 150220893 649377456 355469444 417623355 127829266 117746265 4657677 724074759 370262335 565621305 421641900 141482484 325028573 46662571 793978330 30168415 135741746 842865985 958930680 962501525 471385200 43013082 374340538 107207976 405369257 804419533 33808002 380602233 46301615 192006190 877259311 202518872 456473241 210891329 277734887 368745903 800843031 100353812 165298293 123572603 499015026 806631591 441208185 536211691 572415246 400473908 959585570 111333415 294348505 607836839 889443621 90974727 327668026 708448376 825558892 281506001 613711433 970865936 94049944 431161932 149946257 733924555 707093442 171613513 304372785 707086089 927350953 534831713 773379953 53719086 394686256 382654489 542070622 359018140 590033484 392535012 459436303 259098463 511654038 789851285 926025496 132910282 99981950 477485470 597882735 154115719 649183742 865507134 296724763 746873890 800469439 762311982 16138580 298024480 826628405 685282279 217828245 129473525 474114434 745510292 928957753 964583270 157308123 854540991 251929639 893991317 197029156 533843306 571182439 528280471 823092610 209095451 822499363 475571987 49170284 758051288 92430038 588159770 386634934 270422629 17532514 890104832 180715722 205435205 660148220 736904415 424389295 885853384 975849331 999046496 972101860 853198349 529654343 552676867 252974645 755537343 46046659 580134606 520884978 248357979 636965250 413231031 928274644 397885157 784086324 539862548 471661834 575926947 809606887 150271655 657049057 616813401 289782286 383031839 280733161 386518737 478317601 44861793 891643457 921315982 171839724 172071462 920010262 420492744 698772014 68868732 507982789 978493512 419976420 31747223 220287930 411772658 815613218 457071893 882151652 139016455 898814504 796174730 170150071 652881878 202424227 664980502 957713951 713473731 799166659 544193468 861960607 973156871 662936820 491311408 639241981 706674814 228678071 414665455 950655832 274548212 460367819 799075234 924669790 82006013 287458879 779934219 925613391 994516138 248649124 797613850 91554456 274867313 734888269 490437663 190101433 23076953 881951804 194172545 90362320 451972524 624180402 612824260 788826767 229358920 20188273 892753600 331898308 953596449 813086648 980920771 613503372 413224039 991103941 21977236 880707054 29567885 923645472 841146743 782935218 81296169 27952292 804129183 341613091 723569052 550174146 532033773 414738908 917003243 970644639 395665547 708082366 592365194 980567964 333205477 5798808 954881023 801760985 148748478 36578976 666731132 600473729 276172968 632263905 67988188 318364880 923743151 1193378 25221099 744561801 87564055 134704494 959505777 167443153 720119556 760546872 480849416 353941811 664495862 941645046 691631125 125957350 27514189 28370168 72072748 429768625 774115323 691525420 383765578 335717012 30432679 923675298 613787263 693088255 593378508 991395458 715424557 759033349 284181612 597091741 631363945 683319590 401310618 711652413 265277164 610198006 582586790 381708042 941558570 427272362 587431268 311410820 535997260 67160162 799637432 322555491 500616714 78983666 511900517 404362414 845719795 696308276 359560020 647490654 478672216 57146706 214215150 700348686 330293900 117245972 942320192 944701857 492749473 90705919 727282070 890176810 101072564 990246606 833363820 800718902 914483314 239977920 264173708 948757785 243585834 332197669 873366481 704154537 296725141 616064932 761971460 12910144 606315095 993221674 311962918 28059858 345973934 30094857 989299625 992253305 817913150 263172294 602780240 401278353 871950632 947406149 704533875 802806801 288762273 506712125 481072171 80250907 592985353 23214361 764260228 961615795 927201997 635955256 757870374 909231646 513342381 461612075 604866313 351387275 452012962 94084883 127569405 399033692 477945733 950651311 358335530 533840147 595790960 299804692 267659795 864676185 478456296 731361786 219690245 854793923 596973513 27549067 374203995 55267579 143253770 607410412 542156770 820724676 650759174 565936204 733872777 147466989 464422580 594187249 952633299 838110890 595529740 762515281 663897327 921972075 836677554 946862685 72881829 746648613 482122152 27042585 744654550 357318705 933615141 775004103 688202789 733236893 948534722 641867102 460263085 890598249 152925094 154456632 874821362 874623778 722761880 686212946 207415114 637423911 842412428 753549862 430743100 374871578 512055702 493560703 577565287 809112956 882852427 852666673 499247919 847519976 854413256 846072815 827100991 850192512 942159566 200121513 212693104 639461167 942489692 348228669 801207925 940864250 978862763 843902408 218548830 186031851 432841718 956619115 252205449 504669021 840003226 518902743 266359398 870615746 608435275 169559907 845231439 825756241 256455334 612778819 420997839 984173242 797634203 970664543 447131367 875075984 396854249 975755566 291521904 38767107 90918493 234264796 259303009 89067559 820518335 628117143 415544345 141508799 637485618 634834953 67842663 386272406 227572263 47517318 972670739 34392764 878166410 248712792 81628463 678479439 655342974 783721432 470684184 884220051 509472376 601549343 715318514 660533431 880069902 847271180 699050880 714075730 702172283 485164121 853605586 663646856 575694475 513913989 711833484 547260410 671725816 464326662 96404034 68585010 366049703 806316028 157337032 270760227 802556383 933369621 195127526 854244835 983551982 496664598 536134470 616385454 380306801 90351668 861484922 317515087 226033583 736712400 577699110 320548336 814976198 770993091 277172786 498860087 368787299 126080703 221282503 544441501 96684088 790643031 891800071 195119146 570160963 498878684 396166844 96139629 401889540 249166405 32961191 92160655 840468841 420830345 791701997 6063804 26814796 41277553 60992877 368324593 365377799 516218978 929251029 759316723 887804821 291122875 946187148 195808134 916030882 722513671 81257888 402522252 622233003 745855119 299382538 519868521 684485024 582777199 439553325 989346465 508885877 758315789 993448185 881817155 200656907 613952458 119646951 744713112 620449182 153272251 155217043 928688811 599655610 922673746 246692148 244775682 423477995 104766421 388647355 509322094 556806239 406054294 378105638 507289774 186375424 852814620 866421840 299549117 356369235 125970233 394415723 28970374 395407077 336889142 452294970 628536847 457594224 601430821 923851741 222180890 460368328 371976911 279426604 736148043 612980409 859602207 217597763 511089143 769544064 837438837 753420409 447468997 801628121 241168656 974991038 210440532 708186822 977116076 261762268 229273486 505229456 783536557 769861121 760784829 893975722 795455042 75569653 713725969 926080865 605564340 275705186 520448715 829951644 138211098 548051379 678312759 582999712 447682489 678805670 620568679 278989419 719307227 745594428 281388383 706325300 262197493 640449975 933333110 864849905 343828342 870970860 750679045 261002390 122713094 764462846 401308361 427032379 875305781 786467501 668299801 907989195 380046972 985643015 289074120 924877205 183658432 854979615 125928397 975176641 76767889 903981583 754222653 428792773 417380493 585196286 107200648 539958499 878056036 378442076 523057079 288207984 148749522 333281245 612047182 227075259 825569902 238060949 65334897 103131053 765320698 383543556 201403786 998971305 157341280 280554336 509105513 828313514 808129617 370258327 97070093 783309834 316254374 437863255 314475150 453090516 53359665 274066147 549680982 751772379 238998399 362558746 698019761 158070654 699211068 833625675 128465524 118346904 289474595 652424685 318362668 691368049 213837691 928943445 923576134 77324696 684820684 79585105 580088189 902557202 691671269 31102631 434450427 643446429 843590035 130946452 596612787 893499571 862979702 297079958 309091353 656312808 114130666 102761776 541518408 66587005 896906338 733240679 70502169 783030122 649656552 521429305 957762164 697709632 462747564 402814794 790679473 713102290 883463836 734108542 329003165 738063018 623896347 825800914 821056217 183821729 951027793 953805350 443667761 247795056 628761575 569992272 607724743 852995957 783166165 397549161 514972832 675127024 740330227 92452449 843000670 373190807 167517431 555661731 379187348 819534481 519163420 935227284 781430291 552463007 988007668 682543540 884810506 757418081 982796712 914117017 55015692 786358653 474499241 162168423 499085675 620980047 771284074 86146243 718417456 343962830 983869472 429863449 49872395 563500387 402128396 673068396 699835662 315238388 263467630 150500536 624637228 971121928 956308214 314276776 721405385 801035141 205900464 984853134 175555267 358395576 718316729 117821207 904642535 12518883 334788371 521292922 519884327 690101985 706165093 484673374 541492775 819189755 449911985 895665059 549393699 334511654 118225004 8123614 520782957 345623860 229512770 925666348 649471957 253181718 122236876 528516574 260889509 884945778 632104873 395798873 13693901 34644906 994378780 418154658 97118627 629385326 82955340 52052519 989018136 899993262 40356532 164372641 254707196 983319754 655584552 717935696 390802884 447760351 183682884 804895091 714563138 614630618 586333398 318834743 862441126 587036221 35629909 950614684 794482049 69023619 531841062 819826311 585455578 213647448 590034336 983434636 678196807 830414003 840443086 816489139 820546424 786454277 701649833 911706910 355284082 509623731 675214839 840606600 581933513 727462238 148413316 700852653 444422510 141659232 808728699 297647473 667382501 241583124 665404636 879725402 786769217 909680290 153844868 203458704 990154867 151334179 878691337 751956298 507145395 675125637 513314889 24570402 755782803 901768143 631347285 13935003 834066896 309377875 438488352 119113592 174471790 483348891 369558836 440824071 738490639 722897020 368888489 218899954 785375679 286806006 758266561 136448446 345590711 432082180 892181782 343235224 2904454 821647492 609375713 623035062 130125475 572008008 116877815 144807882 535790803 957676051 777999530 702389645 346321550 3143914 191162300 12201099 730492636 942383258 809149524 226873917 979895476 268153390 654440474 723018978 38797684 341187304 277274826 565230991 426287889 47769320 402758590 20578047 751703283 720434545 275532077 863078500 946214676 210093195 456792739 281080625 12514965 58669557 643180708 602334300 631538317 453872984 166139653 647943857 461275872 967030108 121418458 123744719 753198075 438147200 701780301 995681746 21087214 632986125 790613600 478389070 48950260 362479926 66596228 581932905 337061388 693326690 928308001 599069098 614509958 127014894 154986056 392694629 335471704 527869680 411743629 441837365 334866491 809455380 891387441 2863672 890200879 199783366 477889689 446772286 859430007 762277650 688037950 700057548 740104719 898432042 364679904 666138802 239970203 181278516 843553288 61085046 677206740 307634203 980466272 208176013 717223688 989923991 526735311 611900155 257604168 851215404 938153918 972739815 517888788 461839594 295340478 818952558 804818145 928780789 719478814 604149101 626879248 845468809 517537842 275530191 703114265 640067828 232112800 909215133 924828947 182395503 712229413 715890744 792872731 915682608 5579031 865423072 379326389 7315899 128560507 933050198 564198684 95871925 696263863 56787573 12480370 246431334 397503141 24636613 890043846 755722304 259790733 775549072 359193443 852794386 379087740 740211655 552107665 645762257 334534170 232982521 504571025 54217603 303790676 420069920 74835003 254680297 953118930 329818406 388307423 634637927 886579115 653701224 431726636 645387825 506855739 213238174 169659343 796218045 564991453 437982290 384055472 818450826 221450579 121859274 753140616 996229005 646640080 418921777 182937091 770394063 887066226 351553092 204038709 245070745 832411162 914704179 613568979 898153689 755442407 630034911 373113269 317948130 624042901 202964603 254529610 541785394 461379995 175770872 673408574 576235305 443196480 989666708 859082201 138212152 276736345 166499372 344474257 282540694 29690161 528185941 428694672 444151793 537682120 829236414 996603613 846137979 691089918 885324442 919668596 432594728 593897201 194114248 946491400 504310871 972826007 300969687 501741119 396916754 238408683 668693238 462519665 578330308 168700605 439065351 575657468 821098994 592809382 669611808 538980189 697740784 137954708 433182411 216283269 813799147 623960757 169147 929211315 755052402 89042019 7159925 486704433 196424795 284098276 962221079 827954973 564114324 268919261 410205840 378693246 568589094 305491291 555750854 185478210 535409279 453834240 57387521 786202367 975849437 195377668 524294895 65165781 698231587 107181308 578089773 483091748 851230796 908584916 399381987 374603103 719801700 359441380 119525170 996986078 813680440 849346160 227405665 369041940 930589925 880768394 163844224 282730139 187618364 21157472 45321533 377850963 174066053 554539541 943702007 979131001 231016519 198466319 932360097 555137361 141626689 128261481 529241070 327908186 900583959 517822163 733714314 331136207 417606026 794462599 189194399 552060458 211318921 44402448 980495925 740316152 46196764 562396498 724597731 827746415 878049945 906476459 403231658 488584125 767733562 944538763 689628927 174183140 845691561 228929237 455197626 172597301 358569248 90678755 706856460 232483667 909221498 194990954 610514409 638327270 700329094 62450419 519193528 419940729 168628446 815313697 935831894 233849575 860355531 149738338 167093545 477078723 231823213 566647296 568975719 410574361 364062531 11608658 849715282 791754043 381848146 319383956 353569025 53613101 804088147 967685035 574718280 244136615 460729347 414007716 360306999 727590230 761405863 630422118 442399711 413312628 59906341 584731868 890827793 652439224 22336461 18196187 792084653 318036049 875085902 564642196 425631143 126060472 999935036 273746155 849752273 228961175 194541273 721991189 327035813 151396035 91150529 287699668 752620306 68384706 216764629 958901198 437737230 824235692 504499130 555823928 813211405 840635621 915876498 488336185 581201632 434504260 561023765 304798305 907987120 128766722 916302795 970633879 173678035 153280108 100437856 31494251 136340278 175269538 276841368 786531360 939015869 584913068 711168235 840019140 772277162 731974370 426692628 450242699 735467099 857770366 714282873 121467360 731557555 905362464 576656641 864215447 204176518 930408715 714684312 495051360 766068769 235669347 334785069 220971230 912428637 812153603 129287078 232775435 982681474 612616978 444285487 532042451 962941693 664819895 511681173 154935002 684570257 312293613 685892898 125427341 896956829 300578937 752531105 471897103 36072479 598555874 516353914 852644294 863397778 696706215 192012384 460641855 641487137 541521171 577908850 767075564 457638805 386211108 233046797 62475345 113091694 129423569 585347077 641514378 499694952 11010261 219291517 343458200 230514565 829132356 155797877 400207292 874407319 373173912 967331882 417230152 397990023 168349786 733812130 382517465 269777441 607129878 720165925 531851822 211061433 985541805 622364278 476433650 217467240 139452176 116710016 53761697 35851769 951807434 446324491 412135437 840089330 388894932 122625652 74662620 748864853 525248759 776211886 693647315 272360037 726029870 300195474 679824065 113126902 840726832 881264700 969788770 654395046 340101053 158773468 233022477 603885515 926015348 915634756 586077399 478853313 92434731 146307406 194201222 717723026 243389847 87368764 129278638 439101335 461087827 354697358 990046285 603374004 508123517 344155605 194611793 780145142 135824725 945278899 735603640 370857516 296159278 537223103 321828163 842685971 200549765 663705070 379038838 589995095 587146656 833188397 803315700 53709926 894947042 329701894 998085263 634514668 745228337 285027766 458963710 99014095 518326320 779605156 160825356 443719392 389156904 25936659 65136289 18241031 839827290 684696732 901079735 177553192 968443000 482579026 917900079 32049538 51381595 486640068 472517512 427238521 726141976 214569258 41992237 780369671 904747229 585237642 356529608 68475507 598053949 104005068 944529657 756746234 415161818 912409610 533898695 396854455 547529982 492811055 218807615 632773642 238989591 519241730 949731571 780687456 942643664 348763439 667755093 724236652 469913754 412566815 728119349 445016184 177407119 964393916 506148237 257701660 909328212 585962842 488368066 100026563 838741417 889722079 33258330 187396954 923432151 825629177 721296267 501609346 833503244 912162168 325300381 203005724 509961730 881724755 284312232 612870243 924997187 299882551 804434967 113301250 722311572 860950660 531535152 506427331 508180465 60555035 476512049 662611618 492026542 104882753 338480968 310970067 579469059 151419669 224643996 258970292 313290551 767329195 819804603 162248459 554901105 874120451 297606019 858264791 803361974 999067604 395381244 357725982 523765795 548721265 234840514 560978342 302451128 96368063 201716106 934989969 219519645 749096450 977292154 861156703 359109483 514334059 935080377 626021347 714387723 837291955 60693866 494320779 543077354 785828064 197766389 758777956 352592404 875601810 577316122 782750724 800486602 68995328 13366222 264105000 942350855 683150942 587662434 769669031 846826005 88752846 302981220 581238000 925330704 388714191 311589917 729099355 23700942 437699592 10794161 9132106 706384721 578264321 777854256 821151999 861214245 260355113 277462368 623402262 25116850 81594263 947526956 85384910 208596719 591722497 636730489 868412730 105762513 780591817 959846755 186176126 203379377 254688545 956818284 375185827 60781996 198673646 503279325 717901550 75853415 514439462 545447928 457284737 561623728 456226964 788617884 38587558 204026070 678384565 653355891 484238817 290646343 981197686 361055422 299704232 191903512 243621768 432867842 437072022 578426737 161419710 424954808 442197253 836203713 386631853 791078999 207421228 521551946 506516679 475699831 300236623 177327511 169985917 909179346 105022865 559338063 94461793 225197696 808273589 249067109 92225021 48422080 808686920 165692511 675190796 126162609 693918976 942866539 957515 315609784 622054990 276551379 472477073 222115750 556757424 820955274 145461460 147256027 7074731 764100607 506663752 184531149 43899044 614410436 645160190 760333853 314901669 688268258 993973612 823760023 203745461 962943781 15495380 97479729 133917217 655970637 877297663 619927006 363834678 408902653 920861944 278923870 639964391 573771380 163488831 78295669 649288578 609441052 193136238 15117963 484236573 212699514 306829363 880611969 7777890 359507826 939179421 548013165 644223133 688366372 732273010 272890841 122932117 69467238 363744041 93407651 128227602 275900175 348392679 979188536 147112528 472941143 674952850 726479781 321505261 631426671 524054358 345379416 604793314 893930759 56532071 940173241 782313573 66504786 474671852 282053745 173606869 893645189 990069212 979024568 633722448 212532062 222944336 398823959 284476905 151246889 517875448 656759210 39470554 18491648 855731174 504917953 355395943 256887426 585315853 864006336 485795707 648330184 672201833 528335539 288996290 889334111 809158007 401846233 394411877 26521076 256351985 85443529 607826803 583464590 840956691 669247429 348721337 190758081 703933095 640682608 691828095 720240708 207957900 422833253 682209040 455965889 216775795 70074023 351771987 388173360 540636041 858398682 254008588 865528084 243528636 343076332 559968757 451059938 844428474 464247741 765994977 546018358 373822475 780165033 711291281 746212055 358066000 58537821 759154502 99920802 240594172 33873254 233913892 639719904 32920012 141306729 572631679 382318851 575640319 184635087 280786219 511826761 176497953 402445962 990351473 556044192 510850919 370741587 468399785 203511107 697962455 215415032 889589666 959910005 39268128 44755860 770146191 72876580 361847768 201991757 431803291 271415777 835088676 295132822 32500961 718046927 579184322 707502794 268582892 975326062 470517310 160927171 590640074 641959662 175658080 185653814 731666849 964374734 67625754 383325605 184543927 327252201 911550015 940785993 984760861 667221937 382449443 488890854 762165311 623213288 26249303 4003374 829412216 85809388 547114091 214297933 502682600 518405121 152908543 853063136 123288531 995957323 827456931 964221345 597185959 726295595 632722582 448205844 341847400 843437024 959423106 129377011 441585894 924052719 749338483 764437322 867909854 627105776 506301163 924045615 857977203 306924098 728568337 812488397 446951627 95011653 146476469 433030455 26866712 635656090 737441714 794429034 424129953 83689275 249749891 409440269 783921814 599605691 877272301 254701928 650914168 826859632 593641148 328057220 25583467 80303245 630211200 836409450 455490020 476639837 615059075 523161200 62770416 575870607 422349147 86949733 193288320 638389096 279352088 269880179 519502655 618947396 443165779 510947402 260627721 150844168 257490077 117930842 757317142 985358014 592469598 828843891 83553268 83962637 714728999 149924927 81372415 788894306 916257776 910842538 801357882 907050343 262859241 459653915 388633464 701277093 731515081 943528804 642489879 107941618 851388202 311038525 398713224 740023778 631526173 549166502 504561557 169389647 884654944 854561212 516119197 605240733 879058548 577328382 575729037 71271205 961055495 844091300 193398696 765331814 567026520 670426818 724289179 928323832 397137422 135269831 658206753 201173055 635351797 150688557 617167848 664980665 164264336 537229641 185581821 379493277 314656330 953782750 528657100 369545883 85269577 676266750 937747579 469534208 367896673 2024256 79005253 228537162 400256280 995500943 499172287 398372132 39781929 427474523 433008177 601126651 680372484 646534923 288156627 705214399 143860863 15863909 907707711 908984097 673738180 811728075 164665951 653326453 211432677 145327022 969634341 853535975 841740343 673613252 885018877 663157167 212460703 432349376 844702206 657088782 836637721 782063812 392872526 691093554 217556188 370999787 455135826 117963180 755947625 767006865 109217049 173746679 94133558 766542297 980493476 463635400 771887745 729712444 723036014 56136978 182966207 118319937 913160266 547750464 78806391 686368706 847061439 177523839 700224004 406828340 315793318 185163129 912549971 798604206 986376159 749551775 432551946 129003129 550436610 150470428 368192893 308555488 743402608 716956046 194213712 702321871 169145434 907287476 5465032 187274735 671693828 233433310 450771445 351449112 211309962 980497420 197686484 322616146 570930933 863041436 686056331 607722789 983157787 860891928 830955865 97005152 238935259 426593304 238595275 810025826 68157833 729273102 618663491 835271263 74689296 299074299 153267937 232139024 639041442 917850287 417406036 91109158 646337120 676079905 82794585 270777186 447878558 972711958 185611308 67613996 542640681 97870333 224875163 938814788 569681969 954214622 576242964 24705748 6083762 427590509 322598266 181925927 543260693 41022985 392304544 558073423 47467709 23128813 574783740 286336306 530095619 692121750 429564570 837133476 622464121 664194412 845839216 696675162 352916947 769628740 126593107 288543600 536818447 20818607 26413709 58209347 715922230 636020185 148657564 975749302 98853790 319434239 833483247 680278751 23940517 420754961 506275780 496519123 694939487 198295518 245950342 725967538 345912840 509058373 58425324 974043095 726412350 810335462 913438193 468273142 957100764 47126478 236466569 369549571 736771161 938473269 623017877 676134186 382050915 106537248 627904970 659686705 163131284 563233831 436294714 772553719 61427000 844963924 721819825 824624642 188777106 376111107 914629281 70705474 253533857 658287982 210269867 635148382 33263915 427293331 407202265 326923162 429024622 901822044 589224965 197125392 108272918 570007234 790087892 702420842 547367619 706181603 41472783 820611342 617540843 995741825 401521039 193465950 959471281 790016451 491360324 597843455 323181249 674674129 134806796 970325814 851947459 316532851 827223417 713436129 929377645 692369444 931762104 818644459 709161811 964146350 776817863 866975532 619981036 963357795 593395107 295104029 269693678 199556157 423497356 300089781 7531213 553644869 400498643 546643299 23164426 377925709 181880866 493841050 332277301 256457264 299893650 393121473 554174171 581139406 742174083 186576059 724686976 300194230 59452251 434202586 109651942 94673911 301408442 228498383 698511637 26089241 710397930 589562349 791822196 426168087 836695281 352788743 880671950 681969087 723318120 460993463 571415527 696356518 883899024 790945219 918901261 543911961 210034366 102607981 56681476 560225917 831513824 192011043 662752423 949960495 913290667 521283230 639831285 700503224 484335542 151278984 301080668 588329039 632373228 79932370 261201583 347450801 808875266 117806965 503152050 298337811 39269572 23864834 844864692 827372173 437004589 505816748 944105361 348371626 735302563 422455086 940762330 146518633 852433391 489045143 652413224 708136765 387886290 605790290 557642565 752337442 102465302 695171878 711830453 80048649 51056006 333260122 122187683 607765174 620425884 223605845 418696913 371453592 537585808 382197149 480628542 242849344 124494869 439075817 397464169 754992157 52848836 199096768 385314770 694474473 180943458 498572971 99196740 355434481 538989710 186500633 181891408 668777365 913062462 588314482 327931282 655324258 636407109 824857988 850833500 837758297 272796318 558778390 743396931 863888423 858786607 579486688 150843060 511847304 530852736 808925944 511577763 761465787 504668343 677673854 504330667 619794779 943433299 379589091 276843837 7033920 348331882 631084244 603837002 166694820 727822312 637343492 157616305 457325370 127397718 840236634 662381658 328491841 813517199 222901907 586565287 597951984 637682528 885877482 897086319 731470329 146903588 879342044 126732395 66587213 247374874 708106987 408147712 303147158 66771296 846523196 529062857 726947508 334226992 753418455 513549017 8699811 443956313 908535396 403238928 702953566 92810859 293436077 192900507 650042649 700964263 468664672 793554678 658892824 675474011 530741406 580027329 682411141 443094554 311727456 979959985 510785215 942218426 536180134 183596125 950285577 138342236 319966260 813303725 625272699 702194233 719290059 453568257 140972461 575999602 32373399 57135438 341432215 35616544 883227362 485590193 146534778 2232688 553824072 466045628 195760040 652255027 55257552 737261865 746772837 506809433 589208376 767670040 915330974 900262940 720179570 179268540 252178408 216432399 608533382 276377806 571452009 306363355 249380720 111056416 658054259 686429097 132062302 520347552 434715105 703581248 760333503 438182576 568101559 295226508 168360455 722828556 576777519 425610816 17182735 781615134 849619577 235191033 944833777 905474375 287890548 408578674 939895412 955420469 465103106 371195261 321942681 933283583 2787587 328143983 260309353 943877058 26315095 192935342 103700044 468043586 563237931 807856548 249324501 117853976 781636025 501850703 209150342 301381131 867371978 980480375 515864368 576775754 869422886 493001227 163984845 513556789 723887485 299886949 672196032 521435127 634505125 243578382 418911595 965004157 663657336 816038167 642840200 266552533 283150436 877452593 43502791 251789048 834032983 635615421 397769029 670640415 457730864 475987756 827994331 802352595 860431829 917194454 720487849 258452365 579664198 557347844 878125957 231958607 749969301 167368665 698212256 369791929 133388307 225814510 173915419 817273156 853399083 33298888 279680445 857404403 840295245 428565881 74686701 824832118 32647154 7921478 868856370 723532568 400773010 385130018 678016207 441270190 109322895 233455737 196903974 229606070 154376630 178199389 122472879 934159918 310492802 139820837 330163643 892670041 2984657 592983508 574807374 38345280 581257371 441269972 323606621 200903186 604705381 48694080 844169573 974718464 33136249 180828267 236909510 434742493 715053435 972391144 895489950 918710700 554053231 191240277 751490234 764981160 377749106 352994234 747783960 326397083 303511491 630820327 244422063 983681158 224985358 92103419 511931595 508438220 383131338 986101924 653163236 886452240 188751376 764117389 227053495 537364941 150089823 199605472 985509024 549637753 325488963 222966704 935742410 798311800 754097284 18158375 359502146 516336688 224223057 641709144 808229164 33743155 163523639 43188209 650511300 852970500 70749793 230634306 881715014 829801211 110549830 973702280 49015948 940534272 464392586 745447167 582156630 813429846 714759349 708357250 391470421 909888084 959161895 228910675 572017824 166395444 983801626 291188980 639251506 895056536 381625891 278390430 319115138 261919359 182031999 778354668 27640217 545932420 18361621 957087315 954868263 154593100 611996623 351657706 712860381 953604414 773265033 939026283 374370746 89407168 776762239 550099697 836872387 184146836 647104147 967636616 864222613 942588156 556991992 803794173 892493147 250817227 222793200 977796522 168219346 731721934 22950269 143040401 51312396 432719121 13307993 708200596 378287158 786171791 518504102 403869226 549653218 357364446 28701076 406798704 814392605 313572617 676559981 123913358 488161559 659241209 593910645 275025832 87774734 799853921 569095741 502872787 87334093 728398355 12063334 724589278 147635512 816526301 361191630 743961806 566562400 596528235 77859363 734307150 657078076 850375463 599385502 208313368 821733496 566818345 945451440 898767069 418999952 950754243 604944074 956016829 207168855 682609435 240551201 900302674 755461943 663261344 482534126 51067853 17583908 815111796 448377303 747107640 208566980 861139167 798185421 354830589 965160832 523440157 190752999 827972822 232224166 883433177 602129774 86019571 138745402 640942405 620515391 810949783 539776056 466839270 448280225 40025737 482795621 717635237 834416245 816359734 578961933 883149791 435319211 815357979 719803755 525386014 745664386 462564148 29409116 395926664 423446535 311739490 905363759 434095844 891846942 917895434 187296319 972478717 490077538 459221718 246268441 509540714 87718307 573640432 240249226 488718178 154378581 693242761 216794196 382590571 555980650 414543235 331324691 590341316 506506257 929560009 704047942 35708623 56070790 700274463 172371643 467806648 112251352 472259749 794297303 281981526 547776065 922320536 981155456 289165589 950359145 899520339 526225324 876128643 901165415 275964324 670145136 228775579 762382964 420967595 164591488 274632102 29344724 453966307 575595687 628309797 210350187 325332021 309005807 73882234 132567196 171305806 344433313 293777496 181016856 858867776 622984282 328526174 483617165 646607374 187597076 954030510 298249834 411919955 729254415 899998530 243045189 288385861 403525846 52998501 106829694 560644681 195189789 900663602 465571430 512643834 983498810 52548842 543706402 132269053 667316161 691731184 861241182 77724447 350186461 578918882 338840902 582757745 592223095 780532418 53209249 599752851 256751755 541411020 237790761 347959416 352588520 915387100 390043792 664340565 825587820 77058991 595324379 632947916 840434768 623311620 859747699 134894342 433307871 497299162 428730891 550736119 778935374 41800820 11216836 291609647 436246515 833082127 301887124 768928832 996360334 646942852 168200101 444444582 882693939 405748335 703725842 207675661 210169751 201481585 815990589 715845082 752665751 787333229 36815605 535112411 121897209 20240765 906381160 680197378 650337309 195541611 301302687 833653313 757160363 640410051 777918305 760571943 145474834 813724801 460263522 885453912 767611928 192344803 422804776 200563205 181169169 651877968 337452820 93326960 266886027 796327393 101042310 902960198 735240072 705796765 917570981 499348755 350468980 568665151 202220474 86547833 568403093 425385907 995949500 348621145 11294029 602461068 833637000 18787461 404067122 205490624 127720680 288745808 890323834 601792571 519860519 858414503 986953203 453136700 809563950 127443179 735205595 60737478 691693995 581204595 228312809 154313837 975943656 920407613 326944704 539515714 376882714 988963475 568198002 316727971 204761888 248231684 131058664 635463327 192190429 58452482 280884751 778975519 687481675 934752645 68649393 593773127 27539942 9792402 241379709 68458535 801376688 682786898 153673220 38597528 728334767 794422186 350231592 284197677 216598688 474492912 332415300 864848062 193614789 786095008 538862143 50435044 838231335 635387320 248521428 761289310 900262956 815509719 368487875 914986187 219781247 773965076 567973126 569716606 959679645 812627357 134478845 828947476 118235154 163088102 963129884 878264488 497286180 323068160 263028189 663184386 317796079 780250515 41615279 836688268 854077409 484311995 599184805 237978066 710995754 839105856 687423309 114617433 684467958 117688647 233093806 916628166 265938924 745639650 925143152 108450843 407485140 880208827 875801129 907963469 380230554 296630198 144607771 648112444 541812544 194598556 278725752 977961149 538158224 256099798 898677984 963856220 799607513 423052493 939813655 341256169 990908709 373101547 558760936 788757076 192714838 299058405 78557512 878265618 582795331 991482814 345632028 362251188 12574538 556807421 98459754 778688680 940555989 583808139 980449093 195751859 247207953 670598677 748309842 422271053 344921415 756105687 604733039 54305201 356175387 748883749 470325544 182130973 212318690 835683969 131418298 77788549 38940487 488584045 118678127 82079955 523290390 69097160 262169818 764749500 529364624 708300250 854516336 408275145 780592808 976947300 791167608 833042357 536544358 790038751 974607528 715331669 129713053 456336650 367828325 315820969 513881842 704797814 737933921 537247945 822319506 424905722 89482927 75746959 304849883 155579685 207670015 50096175 64063522 972952396 813216801 452557055 872197663 973899837 754315534 114034185 723920969 204149741 344631700 465009666 226321291 134863748 482287381 588680925 990682715 908794928 655385036 559759003 360045221 944335805 778996625 199156153 7484119 584861934 194749187 233845580 320767227 107549957 367950655 59583849 518584589 554614392 147544819 832629139 753464064 406494171 986758500 847130727 498924816 884349163 74252374 964023176 40299150 485917976 7309681 689283789 618316452 66640220 791394159 102428880 298001277 515290155 47327607 821462274 148716703 987064614 852369750 497097455 273352995 256039293 541507310 813080845 333746114 601709421 805905299 691526058 434726889 963725562 431538158 117399653 12746415 967019010 311009349 762563825 8938330 764709244 43778326 997394635 861922038 73075770 238699863 855545860 454119384 115505232 793258101 820454484 479056954 298276530 77874063 743443441 733387300 100794066 641374011 211587480 374524307 489824935 170182192 7785272 722835063 938826313 577043294 591748688 3492415 445550528 45525413 764596405 231028855 794581859 476628814 221052308 477612418 740863647 780513299 530872662 829305845 711359443 553323806 651816158 293754835 63480141 570399645 298845620 172451222 721110445 959114121 572340089 275465314 139181831 539108812 747967082 509144964 847050536 686002496 419969178 536861168 792212368 141766544 32821369 538682909 863284257 655889874 575103930 193906443 560533855 435821772 847066907 469067523 763069034 398003443 310987649 169006494 26974595 875499649 663736456 191965349 880803224 524330107 316884545 761954380 670104048 983828599 450582711 750561492 112459312 349618839 230852368 156787070 92281949 623665927 98538421 956834562 328186407 861028391 158106058 902238451 347400954 472445183 67484631 695809336 344917689 17303700 815013643 564996053 72298906 937585791 156580761 928603866 341854581 572348597 9988974 369046086 116004851 734402240 749370844 699047600 460338121 348239009 977976814 261879068 16566851 951470266 231463892 994562803 741457840 865155934 822355170 242440778 640502738 758489947 275073314 379632943 592693436 199950995 68516441 862856929 995967046 270363842 868661858 568975786 773526935 492380990 287168718 521188739 111362164 640900629 260256649 59898603 149068357 980276165 667818431 585117923 383037949 624788470 417688783 17426411 323706198 740499233 509002672 757035909 514058321 449946370 767389641 626553100 252401716 20969483 401094734 367962394 23649987 133375968 75518191 928061931 88873966 25138788 897191174 973334185 327478025 75807845 988370204 624307894 970873030 123550832 92645019 308269376 179179995 262037211 162553116 393765326 104254273 33529304 767240335 398393526 615301340 994933277 744853061 418336151 714306400 965730619 780718505 17747082 897016638 3357778 700548907 697117249 447976867 546848881 143413404 12108494 466149240 400781847 986656693 331918352 233519042 193216902 714959673 708625447 354570685 215067323 213332576 901997029 466788970 420956716 679228847 120067317 356993325 187473253 55439727 662113665 327953164 688894935 120138395 874820243 608210984 461018669 224754274 216246203 681031772 880905092 899953151 987586114 541490493 416234940 410166297 117196923 712553747 518624378 841638971 636080433 712402668 815842993 457497151 854359325 732377776 162141939 124400533 218149229 555993893 473156187 447628054 674863752 529834910 17955510 79288158 810240350 788430551 311273386 678 196249610 388218586 379124536 855597287 686550032 1159952 386710719 705659174 869828855 819166049 214241322 649066268 824276851 899208580 71454379 820877376 47086836 429381651 848906654 828455160 234453493 309730739 314899628 936047533 565871284 312189338 987482388 101131118 457496640 795206919 512235319 349992641 576295980 361649436 819569916 991177929 153015354 472144625 287555709 233975561 654521064 414885097 560714736 227895183 61122868 295568724 433252393 448278446 636637852 952541113 248055009 974032353 801925348 681434726 872135909 185540964 63997452 244659689 332985138 479381714 334815381 604502520 465137213 760135936 436976357 581138191 180182305 747147239 969930422 525675552 67639434 911361165 65969684 40149404 5765930 687480728 858371873 118015159 975506015 532596100 567483214 253763171 834417629 4562435 134485413 994408848 759932039 780864786 922892345 812235771 794579394 952625304 69156516 764467781 899298588 878691156 905516116 262719136 789828936 833972735 281870609 82085715 941007270 216386480 293060506 998375492 334244222 664271537 779142583 988388885 199896550 169495590 976775239 683576307 701257524 949667840 72773631 78224325 759224506 26921383 116138810 129086865 983824246 468515406 823612069 144904261 213841968 731681994 85795264 153744563 348891548 308168762 119163961 928353685 24153518 68184600 794609434 286694532 244501444 70052922 833478630 584746289 497100407 750886211 734969011 194451961 737112065 327416164 825571674 664365025 727524688 423757744 780712920 576980039 545192067 842066254 1523128 574047945 773874049 907437522 556644858 544438557 398089840 478562869 370272364 148943241 573769509 591073838 801608483 24413822 116390527 321684045 177936229 926127081 150375615 932454582 45084136 99408966 448876680 741703261 422313832 187581365 582531939 72295638 610226973 144153813 20228541 972418698 538513682 835489947 99657593 186301444 724582973 286012786 212712395 551485436 150753481 82761753 283625352 730077352 295186266 992528687 390335954 698918657 610174180 620214901 102232311 506514828 173684432 173250023 774694660 932162639 603431503 396372246 960690976 546216908 811754686 9588454 392967225 609665441 607460757 503498041 955280949 467954323 672545517 155668841 150774625 485711424 558997414 318729823 434513114 65604033 96200247 441829269 803695911 672973206 221083052 480690616 420254186 810517767 160290999 78703629 492070358 794475323 678764596 668947796 881639552 338710702 610087585 382527846 327494479 390355747 679944245 568183331 570422066 806268314 480923109 48633428 173191014 873936518 296443021 619571127 360726737 128384726 79157274 387476648 119658322 328405876 367341759 53111395 129983749 671779293 725754306 945913229 199935931 380867886 504325950 82344222 165747373 370509809 17640964 537688985 102065706 243112106 972846984 855801297 284642567 991616978 878848521 262207548 287988662 314599151 955455055 290517812 230648425 299502594 434342959 130786049 765615411 988189970 708369966 705434391 268887506 2516205 142652134 767730527 300659077 693325329 219584660 152940772 972792185 641298993 579787185 925033781 435727626 370816621 677862154 832636174 837479132 490954787 627374560 907273838 598555227 419598089 623591035 310119191 285996238 901503314 786875872 256346472 105851784 597892846 86200187 796149132 219212740 116901116 470284997 353260121 829269941 318259971 420473443 115416885 782461333 715157723 856348318 919376923 300240300 627661583 392078034 370645900 253318427 462849373 141210332 260718815 591632213 820371028 485522917 922925291 774913610 954812619 715564246 725328663 271504732 929312659 306758526 960802651 676851771 532960638 509954667 706537040 733893308 830114201 569325951 530580247 185260565 844434814 548136289 656012692 325462711 324037935 616892602 849536099 291112854 712058381 950716858 311412413 29231618 784339980 395345985 43276819 191873619 270623905 85620036 89760085 904758289 33494417 782581680 340528724 875754479 370161519 173444889 998396433 93963256 154200641 378446324 648694617 520417200 558084729 539812296 171554763 405478800 233227661 274057819 330372202 32292162 895539219 145340625 90958960 574728427 763800668 287384414 970032267 869503248 659257425 862027069 208513389 572633765 57082089 266252331 634685179 129932072 594217166 630528520 90287706 92449673 738151489 768639851 154541707 694753855 88534491 354467616 152656163 461384518 912655954 455597712 523616497 488150282 306615757 463106836 113347086 204818581 980627622 15699600 561436029 475613837 429492426 360501999 73365141 836632954 677347955 933225871 935130987 838777634 519936100 373519117 947484656 207352943 924554485 250359432 259158978 142301304 712808644 938849457 45636136 177478007 93214857 702750318 389112028 686133773 379120535 946556009 77334630 478065715 902164661 90307914 204622514 207031409 633156500 862240292 748450333 839502162 867746601 415250243 465968837 871574356 729312080 526148234 426958913 627594489 675164235 466457097 281093943 574763132 297157705 50207671 800241647 506379064 160469552 782989867 631957665 493532253 111751006 900905731 828543617 699196731 473916162 33444027 576619091 748397770 370611377 762876613 754652481 2955389 964608562 955750000 175598609 908311702 750999510 185133234 767369397 763696354 154907659 399557638 95865853 997547646 876226434 56569672 107525244 861824659 135075375 766994591 866057439 41385166 474841870 13692718 811864897 532207955 549517866 498170677 346843136 273215410 877133499 230205905 183115773 134586994 745661742 835427015 309703116 709718187 689694794 587158013 556693840 78610331 655083333 99459517 762542494 17727366 696088079 299296502 628667313 976675614 541907851 564149527 223942708 330541696 456357674 126277297 663615428 82907079 330504330 857360528 600528390 866139754 127857311 169466896 139212836 932183687 632374337 761188896 190243866 886995437 717914377 663085792 637726859 861825653 372822237 455250282 916136014 6807974 877753172 764324277 422479411 889934592 695468695 721936319 586512214 461260013 246778264 816764431 848524751 896284118 756221077 496887762 259269634 378128207 450177200 148901980 82842506 822883963 426400510 78527555 733604661 450645110 478532964 656269075 884044423 301887793 359881983 996485780 541761034 809697165 501389481 852310759 533171919 272817173 378878315 395799063 957461762 863630002 644791340 684979846 836100548 917448749 715200138 741936458 490075747 511002599 383235659 508963792 66390408 397941902 40911796 788226303 859884685 875159510 568911177 57243719 353139638 277089084 991928059 224376648 355430787 52642250 340157006 518146937 35302675 908593561 649496122 821866975 853162543 157059590 790953229 932806282 708501228 224097851 389844877 401824153 422143964 457405613 849245651 695193355 639656802 122988646 44345036 209920688 380486072 19930057 468658128 325828031 934893364 810388970 58274679 977564128 793197010 961328567 735873035 113515248 767634703 107094467 351725340 283046291 861641599 854480168 220577648 730181853 742692158 490634018 285492117 139901919 712777952 686415188 33000936 758809484 980942735 793709636 308713694 133581145 769920539 595047804 441597869 114987567 190631247 249317456 927996595 160330289 162757542 727860427 662157196 839787873 319447490 41861499 224914064 242104691 826957391 767890269 77482932 653724954 880303572 844216414 251868929 827295069 754783210 808557837 812044953 423451381 249110105 367062605 56322130 895505608 36935823 950529639 568188565 110445413 764116295 309452556 835510828 849993179 758418375 806450277 701469392 832001806 69945238 340794180 419739580 76818175 824672024 720718769 510804791 399279734 879495899 679151756 948872724 542768985 94829755 954616491 841445373 248191872 299211999 401556069 877671609 156825122 350272662 826967195 37838620 648993774 539632326 413061185 612613193 86348458 469073561 592303506 43785132 638769370 147688033 834884647 489332317 633504354 283618484 342075242 691617877 70048055 239314844 341711477 629164224 8600069 80834448 165384421 346558370 991801070 634125640 908157602 336492547 742772512 392530208 857475236 761042546 214675122 221728405 42694885 736114815 521021353 426495207 675509041 402441317 966762497 664119549 750622763 834286579 255992542 776762727 270340734 134687936 121073693 594967897 531384086 575602921 451412536 958888896 643278184 116445166 795606074 210498124 485405173 587618591 544123552 270450250 379590727 977888668 625873469 938708846 807189287 475329571 448066104 779101514 161036283 774949743 756847290 458466309 464329023 583963888 188364602 616096291 154464570 520904734 442179050 369115483 371304309 245849189 357359762 854559263 850057345 350599533 413404243 882612433 904842189 978910121 584158496 613911142 891979155 748829557 615147616 107172905 414209351 758232299 613245777 323775043 972121642 396906919 866958286 137925532 507655701 31875884 275959532 485333435 876337079 214573156 308569999 934183250 240761098 377373548 596362591 245194013 681980254 268316632 539337412 753483128 177237598 941305757 77614148 233598922 27506005 50675997 143373339 975096921 244226858 279047544 141879788 198511237 774177519 606753020 195542350 119805700 953709206 45780084 360904674 934788833 697668055 898162249 716083335 171328369 827824172 351212101 957186411 573415510 534067855 476335020 57150950 238481936 396892051 653226607 100768512 872627997 770057633 751097170 770144590 33621963 227450793 782332157 533588710 403163261 218317817 348289693 757456356 884764447 76761499 854191244 210024652 97261684 417993250 186363334 541002977 592703954 14318970 467716169 272693286 686302189 2468190 863983 759093045 870614867 753507312 262500330 287448770 658897865 261780800 150018182 897041078 753965472 297510943 148797283 893922163 883069471 677570884 652178445 560212277 358688223 61956468 644699508 596670424 909296490 45882444 93580023 788132766 976588255 953896773 354032141 805589331 680174187 919688075 515542908 434391044 601068885 672611977 123225935 996588737 777562267 328972312 131779535 757421393 916766477 340539721 442821398 722186613 672466962 143066682 537039847 834308814 205200821 602313480 671441689 999058128 174047140 66084251 222839712 170659377 996584167 881743561 470098972 885044602 446227122 592422142 895635524 975598265 270209356 806848339 204349850 480158786 999071139 476350874 705117626 652575520 953112025 954047370 337515388 778750849 788329935 772176166 141325510 43970218 846918578 5017875 297152026 870629150 47601184 325846431 150765598 54620785 716971670 392183629 831159986 206351654 283238604 346792297 934219164 252144537 104419270 147409673 284788812 835897955 767614718 743804535 231706328 40356452 262290226 102312040 356327592 658720436 372338499 365957842 794441935 148124250 964923106 277456721 613858483 691598314 188669821 902846788 989521818 952302462 40487328 388443446 61880693 994994323 656014617 124946849 921090844 466841164 521383353 611637669 98574144 604928262 764597510 340307238 627509194 865324681 44276977 217201113 793675856 139229020 414243273 972323097 399331084 62376430 578217739 192778135 844390608 249985612 659253547 547488494 404702410 840976205 150799093 127589156 993774717 747560621 470835478 786868203 698887111 534868809 66566237 439991015 844211905 721660273 594854612 288853178 542283473 772835209 143017542 232084810 456054428 415054557 744959587 439817389 317966052 710596616 178343448 81625047 146907569 451102829 697108474 385582958 476551589 118967844 501498170 381420796 664264297 108331867 675596276 89785586 670601009 378685334 831929509 281169598 429291739 729869424 324650743 907333721 237040559 950415261 453716620 790908995 372432030 802789739 605963046 946474354 591674984 371569058 356091278 649708506 228924700 26352727 791946039 311169026 449688187 593238348 789893622 373074531 250286011 833993439 715286606 494314214 657111744 407838620 415438329 134982950 626514107 218273807 388300423 307792301 490311558 861774314 16149661 420153978 22817655 586851915 657701919 676291245 535903039 947094973 198988572 862308835 380044368 751408173 68242724 906116995 975311784 14751759 500435113 881980048 875142125 901795363 817033489 63706574 38441183 772650305 551473079 442415926 329498764 898926058 225140193 736691833 23396811 474219051 128011933 312696249 841416776 24874424 296946843 27158682 470494092 118981750 959642076 687330865 457936835 511811276 712252249 222661189 485478836 583187453 790721614 263713928 898431599 351876520 374296297 921556601 448154547 931631757 5712020 265710936 487852710 24722136 514773058 605372252 349738508 793795154 227449777 532580462 229100152 937631245 833452351 976734610 427530356 27634719 16829950 279046462 824948890 709518112 129107790 239447431 552307364 347375678 702111030 217015157 581680646 56067411 860206885 963545750 700134731 784236676 661661535 730425293 567526971 53319979 975789109 554930407 887365717 684491760 43128787 125382554 780339915 965269610 278661636 54073433 926419614 136326293 478516889 790798510 254129279 965570927 831223534 156502208 989026753 911511856 676930889 561007102 578824493 571165326 319132324 295765085 386172385 9386825 310980648 804726399 729479078 125504404 330114237 683647594 445274477 235666126 41107841 777174207 809539022 770918550 10689427 187912401 526536774 78596062 95118356 349121095 178305196 908059915 71023033 769428753 994253373 165307192 656485404 508437263 756827467 195099619 875722041 859372891 205996589 836659636 181367409 966153582 441881546 612960819 451831912 691501591 937890889 319606850 389067133 280886340 623144805 98063879 885282592 858100855 983646773 224545579 798777426 630809905 367044163 330755006 333923974 346103920 765848025 577649738 108551714 907472045 19314071 18463443 252140921 790603908 937262306 512006427 9488600 188253840 308156879 52232082 370872256 331725578 250667747 725729903 891845105 255294184 673063596 336247904 976393452 251170545 596839025 590564522 22743913 326244686 613721609 939144822 673492799 199572311 505497953 386617018 767308403 180919357 944024717 876122361 27451108 350269255 939676551 574561186 584863824 403003722 641676893 5265434 636006240 384414288 478658249 494552805 481895386 166518913 713321586 925214441 775719057 915285056 668797452 405100934 58560269 556739795 322685441 194611080 240242608 812515070 107798777 874189232 117552518 786601146 143777173 168498017 489342880 6202170 183408560 220545723 606168467 49991541 334171542 594291077 339318320 575016153 359956346 820372017 551878057 912550574 122230884 704821153 618177088 945554534 567015266 844685853 654475070 418589794 358948626 334189123 361888942 255439825 930670302 613080700 780712357 399436949 359973537 728450939 253210196 413907867 975978785 858346239 333479273 327604559 731372246 289076215 126017046 184533074 423516559 776625791 106860262 188437441 26205297 407789006 493983673 375224445 153249369 459927072 799518577 300792970 686364159 459222204 977006630 372294471 461454496 683887527 563318653 391636528 227292552 627186774 882427101 247532021 860168079 650538304 619024834 611872729 230990435 92580742 492059750 126118108 957675851 807606641 912341392 486874897 538207924 569901995 285778273 313400814 189436810 320808077 797378103 968765458 276170070 476205836 95522421 995654672 251216166 788220628 783179517 357597585 63780128 102960760 340298502 450331906 858039948 635906711 647072641 704731143 917865154 863420972 261975494 927744209 790812168 332440758 524534246 445793540 905990922 925024941 999341005 941284137 451805415 462445625 75728674 266573202 206166533 649355474 949089459 181902014 881996329 497089453 267520844 235828476 878099982 443387862 143377363 41478933 964036590 994371809 851995336 3722938 432712413 933401028 826819787 823819035 611184526 989406861 723409353 647927624 494146103 684768995 930836689 651532117 790618015 130144315 504812619 475237338 973909853 168837441 703587435 740984782 260880996 431510577 389463553 408526570 465604456 823253494 57634862 472220822 579436991 502138894 844166892 787936617 678986827 458798403 665848589 798407524 790404709 398393538 98681978 927685463 354404535 828353584 439476741 240093899 637481913 918627518 9652123 378118222 35215284 2667056 417542327 617526290 771564 646882506 293123955 960536916 764387194 275162844 744446946 612633373 860431937 627338574 473313330 19066610 564769104 859936551 972983492 822277848 105471265 413166107 416909802 964290730 588906620 491573030 873816213 116649252 959897124 859067750 569026601 704774743 308426372 22230122 374143345 324854877 851886967 931879630 481031229 943963981 571468918 220729653 608549683 465742332 50574659 351308437 755861895 996013491 449955992 684044115 169757579 721898999 578953470 387083992 196479215 472560618 80225455 604065005 604888892 171832739 321216902 465224033 412892028 343458020 662142289 37347406 549555680 177267636 366342045 576445021 96902263 529658505 460113752 929865337 333520279 981122449 533088015 963644402 887893244 349989882 353029893 461175417 298198099 939388669 427418973 745719143 74758759 794868574 539633948 623607235 691557580 559722957 440120982 423738632 991959002 840619985 82450170 440524279 605596733 184751642 113124253 488978500 619794908 670962091 664586339 762919257 588314736 966007886 996986953 69094560 359606005 57218800 744623000 955136674 217901667 398411905 446349570 742097266 135639173 892704564 408361278 916667759 808708497 448381690 294105845 887039414 498287212 840305052 563625935 271142978 696823635 322648214 462765375 40165155 707048172 271954116 579377531 813364205 892264918 996878566 72841799 787264762 339212772 346763116 273863255 633201780 758507727 650374020 686065161 116728229 839229957 274825309 432939518 631159672 169428359 736068698 246607423 509077178 583880107 151450723 635929880 34268683 507528220 570175950 916031133 604716958 982873888 804338288 869991754 286013055 83333477 244349045 203555553 577650129 168985007 870823725 628689203 12822035 827811650 43533547 289016222 514436108 560678884 362744756 768202453 635902370 737376985 971451496 532487090 45689706 35380207 539311597 674356540 267874834 869436320 835834354 499120226 741047701 446458750 465674482 899675868 166182871 509003662 496723469 537938235 532895237 240917227 620984656 997538180 649890658 257968689 28910181 625872147 407733428 403891734 380884472 584938399 392927992 305621748 553712916 584789429 168525732 196487939 681773986 398873559 997708048 960991955 615697525 424231985 632418743 811066926 138065519 277099472 521286137 935008271 719705513 100494253 169641460 64964027 322240279 317205984 537327663 223389934 921808980 991666517 161082677 683647295 424847361 82955994 979637956 978081606 534897062 523855471 813595445 722327024 390755702 935920631 922797353 177768107 426902021 176106623 105190328 900939680 335900774 728923007 465685148 830628076 715651921 402881379 643983118 332567016 384422650 528710192 310368703 92431077 504269343 605580934 781130480 529508774 368023193 504116070 929514190 733829241 792537172 949280502 390549228 316069100 95469725 61286914 302877941 702789910 880446472 613645725 489441507 833805722 7753188 416598287 137768434 944068867 974143811 958457594 798210187 421359154 34365819 221092609 292453547 483037385 41498589 801001821 801796365 135339121 456655619 512370296 38454110 803043891 490905226 51784012 388073895 390372853 220312991 414750425 897751118 402672535 651901424 427973026 647237631 750974110 233732951 31999912 178382700 917476233 455863481 846062075 605095610 277470998 134929669 209755289 363106987 244786218 385009590 278211417 132952506 384759460 467353121 284937891 568297055 406903914 608710774 615333563 177633289 583435279 778476312 5023210 829263585 314847756 28037008 262483757 215392856 843194241 158567827 48950764 623144358 38565348 913349686 683489867 796486280 567093351 668390010 438036698 309741247 24180851 85363747 168673668 622942043 350560828 835381996 308157781 555169644 477091766 798438805 162240346 242350476 906534174 204993268 822662229 821043510 950164640 983294962 98520942 480704319 709013661 43040640 457768622 834190116 907218580 640021375 644743189 927253901 318621589 163729409 728904682 339440372 867214469 594074938 343218443 896600433 581304142 66679309 754087914 511240273 862138108 909971800 580359590 350668639 803963752 273634922 496313282 650607024 700133712 841766465 482848532 372940159 52055490 127414594 12659420 393220828 83362120 808654107 498272700 336297043 4987710 124021754 129644485 559055734 683656320 956131773 608458633 417084760 832681693 246942495 482184027 63848631 546886342 480880882 202397868 278199616 916412393 164631929 242894754 173591855 784668588 391139726 954590754 438982391 110754452 274340667 593625713 654818646 539402320 745103883 508732221 416078229 691761098 206463548 65854313 981745600 708398170 815230284 855193694 661491207 744817136 945581413 213799829 310126688 637481639 917289357 399656680 927806718 331043731 389588670 867424700 319210749 191618418 494748257 479883114 599006657 538307957 553203439 978324226 514777680 390299588 32418674 330069881 114521058 267433947 128166514 629590717 538674675 556610443 887786520 959471279 428232339 459591147 258136813 349720371 612141640 801904929 723590365 496833336 733632071 216582851 587999074 83581790 325834132 614821283 660356150 692078522 48546184 893815099 235187757 731140713 315516077 68487843 22731493 983727554 580620353 815675936 456012832 153874398 579771192 322100366 959592040 147156299 719439246 666887244 611331642 705515943 957883863 168259009 562909556 106490246 164703349 47616028 693806405 387880946 899237606 80988949 847242094 608832494 672355151 393742839 440596050 635886715 508437069 612843154 188095834 46979227 246582885 984367880 521476659 56719369 635301007 489315002 481143428 27757607 417427503 478752773 245811015 872763897 884095246 614855742 167844684 2650941 957524286 29876080 498174455 757298400 771084499 882878909 121873272 704256970 342610903 893584135 471267875 575623692 226834688 857030301 845544558 863507072 35767588 774278438 196747384 664477270 857366738 975437993 850583772 545221918 431602523 448191931 570629225 265528284 465576696 432649296 882479677 528151914 999460655 289665234 72419164 93304993 899948638 873913058 783642500 695387047 18082184 827738624 187256926 840423425 496119246 512080308 858192960 753994578 922569697 8183145 253552585 231067714 453688798 107644101 795287642 262518118 881488716 328991829 425515833 988056396 960766907 396641908 713866516 422254072 172484953 831468774 67030189 425538115 599014881 474702324 538563536 626303710 611456682 965444280 263868642 656737138 793358038 342115449 22124893 491326018 173955267 602253420 399521031 325728326 860176860 673393410 175400506 211695242 792832214 221750478 457715268 394967794 190689557 631861737 920197358 835407739 432616994 62308015 626599629 159551168 72157210 662486934 459015714 301525574 151899808 886019701 978524306 608199787 788717832 248199467 802265325 529757577 875030530 408946350 364762636 537555757 979076802 17327810 896582772 501952954 852186629 2281897 225778807 522960528 162332492 553970454 426938811 878480840 250943650 119058938 784670166 946462063 244316039 992607065 349996833 645539286 759129564 105945563 332380196 490780410 251170462 125653547 804045694 602484157 566063925 325334605 757135238 290263609 267581319 699070943 711796994 303786546 149677293 310099383 166566035 901997283 809826618 158704317 710677013 498416049 723019635 985300931 767837315 635212919 549877291 839184085 679867477 706298407 485295621 953115661 684960475 620003644 351091188 960879916 949050993 775297485 764221232 183342703 847187470 426857548 557318448 569084321 582527421 820150396 288921803 478970885 461165527 685382174 460004822 944043333 979051128 323383302 622729618 393107852 87149169 578130990 698112578 210143651 737294843 793771743 869968528 855845027 414226146 261088010 64578936 767031689 156631365 80168909 301451343 221865713 249039506 848321663 864076052 255399953 163322975 21827096 699874271 164537492 285594961 300437193 590347261 434983290 45448591 37128951 534993156 160825909 469602407 417951593 477971321 989418913 550643850 128084965 177120478 991869369 952124834 611309667 93107250 590079293 745397466 574575071 225779102 229541627 35688038 345605085 389546693 70495129 487022868 560372424 133747510 939004361 490040997 406174555 148831356 617733018 798056978 345763582 823541605 433376678 441651411 726048695 268579020 57877358 458737340 195300603 380850119 971951500 759415337 569617259 935619670 862439229 713841 525168770 668911496 223002715 429939232 116256177 529767026 542605501 285971454 792869173 968899872 122642654 399779342 933855205 465145552 230432563 422331923 536217664 507723296 965608489 49206038 844999005 561153584 368280217 334761842 242357603 664959835 372520580 236023100 304478205 543327794 523381904 840189337 947967371 185673020 847483102 250052199 513993235 24662492 638103872 19476096 527294094 990995567 527767096 72120607 961621411 137351507 818258463 53092257 367356801 101685091 794336140 692460354 50221455 155988263 237874134 155401490 337796915 150867351 222593164 941130270 382728648 271817648 342221893 672544855 143265741 152001675 536232839 414032942 323564865 723340857 654581422 491959168 355400254 638478668 130985537 555205604 306454152 25235177 960510384 121367372 691395578 84789157 520384661 80922122 443214355 97814022 763432363 715310367 514756351 587991060 722633228 174286901 44987293 553602417 427475564 760514903 610342232 147110183 105543515 873121242 479566553 747767083 756578645 814470163 894628082 846641416 91337936 493042650 726837627 641143779 855490083 562173113 359550640 700098726 820013406 797147762 500914176 31750279 966107163 580337239 115503280 994106173 155263792 830809805 867446830 789811659 791600225 458773381 564942586 755501409 630881284 717902329 780130788 971039544 337034730 390861794 464031545 792461406 534395948 365122409 462922709 170696262 718576339 15445884 966333519 314246841 579086978 94577465 740977184 292513660 297184501 663077569 554515795 208476383 923523020 871480864 116735268 339738896 90757273 2225604 722912805 861071458 929323452 172774679 654462539 614737708 741596588 383476605 962490614 779779810 576007471 804693370 240048776 425577460 996344643 920906194 985477608 831204331 218926322 416352316 745348089 774666195 127786984 984509961 659157278 119294236 739362999 987823754 48288613 46822835 918661581 529128125 62960711 843635906 593131853 791951228 650007410 268341736 993084928 328769549 72779663 737903269 13572574 481894299 771973923 45301764 504659125 914899846 583866043 327468275 951664085 440768210 459916928 223922118 247368539 235255041 444746897 903706574 539615531 162884148 392650967 885171314 449959098 765454042 335025570 56636469 500243295 931052961 984995165 668552183 492896218 923161542 623200020 59546264 904870624 661773524 376099796 532049815 174066717 767277385 250524447 709407508 767728781 812345700 321261679 41610015 169311488 418998551 537734501 609064730 515133454 437200123 575246192 600018336 767715427 373772013 347938388 664218434 561714309 408554368 690292016 991663043 624937849 319413908 340768239 641286467 83552198 286251743 443507903 676000432 530659950 350516482 84906932 706521423 162603816 224945824 483790677 437570955 786380799 339100591 854509907 138445223 829801758 541974665 857963987 829456616 77960824 817244742 905379291 368441021 363186612 344477333 671469533 709897510 843458224 242042945 840163098 778454164 67487097 747910658 262502962 373153702 998185240 901573193 720659885 73750809 429441735 207955435 135165094 402436479 1974070 84848379 100506200 810006586 844842707 198357023 662782566 299736032 801157540 705049252 294864915 233273048 220625453 736581141 287493035 599991025 868419613 654941642 676761755 765045853 951140805 527116200 470507855 471806322 432726418 298100634 648907402 988724943 759059509 308603057 660736958 307486342 917014538 799962952 949348917 750460030 729542879 789630103 505099627 464465787 686640695 111524502 214514836 654895547 596762218 660940984 658162466 944018081 399039956 89585179 420832984 396683357 197498794 293440238 399512182 238199225 408297720 988029275 823292355 868618857 982029683 78663118 544101358 677021222 485899826 170262759 419867560 896882927 114221895 578586421 387966430 585891067 269518434 760374230 649312633 455886200 669220678 903454850 524185522 363693640 360655537 749410630 690646189 219268831 957545467 73254050 458944636 407453380 102533087 256244888 408615111 279448110 939849001 475517185 545771232 663390484 257226503 827437504 558244333 910462784 373624612 798053965 60896621 313235868 301877547 980212380 149724256 600682245 890094622 683032383 169553865 127322783 574335521 328483298 287422644 920375120 359643139 332369777 745408879 795879015 201965624 293544708 305400599 804037725 257064885 517404887 469943125 426541757 952449394 141865392 143723447 14206848 888511720 164425226 646448078 986947245 438222005 704219155 361526526 555765575 950799127 611916413 397934164 751437376 311980596 277658097 891872298 744932412 775017517 747782713 977630404 771674545 89524727 657784724 302653559 69607221 434487999 366166948 189581816 807221778 458004197 812516190 864273485 271477956 358982660 580833988 901470080 205662651 955612147 453370525 762232316 201149670 186714386 1384191 716062998 516984698 449154903 861657869 620026456 646067112 523864678 373218847 220619530 72420352 575100585 113196928 881917565 645730266 571289706 679967917 784327007 923499607 463187703 167123179 115651079 974894384 226903047 825987788 525892412 953126422 857574242 105208664 49385063 693850261 970293434 311345257 376455284 977243538 762431743 976174877 127384997 170455088 886890569 843970853 765139315 536415665 518136042 757165969 285387508 192816627 829292466 18609510 177968027 888457833 569834439 827318773 777010553 956258369 17496389 483664478 839122798 405950058 828597597 766525115 727470059 866929076 372299488 426180468 17250924 419280573 34014278 669307002 80248195 289982559 453753923 74061408 87546606 723248806 990265412 452625143 556712419 625861567 233885393 29173739 289001457 955728705 912237271 78454566 416753190 973080013 196475932 529650718 890692986 901996551 672998085 585109593 913138102 967479057 707771332 221414099 471980537 616901224 975115331 78407640 58732887 492939654 138964969 52241809 764882752 650770011 725931638 477024779 520056493 675886916 86523867 263426436 797599782 618669056 492151577 756329224 327364062 761340540 160755872 861010701 847607801 890640630 334909136 991400993 827069078 440188557 663570916 115600741 172437179 98990879 270204100 999600091 755364057 754866899 843721315 201872418 895567465 981735377 134799782 650552700 230772076 44777576 460933408 262787672 112713135 55433129 302312560 751686953 452355533 217007201 301770674 691906043 314573417 520403932 675183935 770459558 605015230 482694248 202501237 930380744 480273899 553821006 714470399 224019923 543492105 840915994 736454877 671758532 514923383 711438135 76622248 362759947 159330190 266870285 624077563 749245522 181013003 877552040 520360909 228113607 36393017 155635803 858850197 262529941 464579058 872666440 4336115 457269711 117718936 803214089 480917684 827455391 864224673 286533374 673473452 766350802 949278156 600265673 198420587 472977110 652987819 909265553 232637925 42914316 978533708 36757617 895311354 25653200 692039303 859289428 902451661 849803745 556901520 280238858 950936763 55419609 756940173 535844856 467413377 700663894 420032921 235135722 278956614 438976444 838711019 429853645 263057030 787846529 860305230 525039080 501464136 656720604 462052113 173901250 969962771 523486139 183648961 960009597 351459271 688284501 778224974 781125319 652511090 428709094 843039463 119715569 126087205 224940216 892589788 537216044 209130006 894139487 272084711 197699804 106947344 471418563 297297422 718626556 237704328 425372285 796231176 287117479 507573579 61566372 562163135 860461228 38855264 259649843 772490899 11152343 373749871 16556726 574740715 473233397 844583999 322575225 578096528 250114867 489054258 454236780 148281600 399504002 843326611 201184099 903748961 861343850 577529252 542291644 838680543 157629142 137156873 530207643 468420874 407248168 170438268 573013408 796288004 765741586 988306233 142784856 590512671 713978308 951845608 150105199 926398709 595759022 433181703 844756556 7632591 671703482 850439732 557983869 637664805 937869663 172264943 850242371 204990335 57279159 203983671 67757944 631458431 537078458 108721261 893850018 218546736 246303546 72595180 645828874 584663973 474743378 147276503 297410271 431885149 911178665 821319251 399321269 497269235 394234337 537103181 215281729 603794736 870295815 131107783 831707348 959181431 79007138 611563408 589264455 495749521 44688340 9711211 106203406 60078294 365486214 920734346 771792027 760171664 251702668 746504075 892539790 301408669 469610148 668176918 914575836 325885908 897817408 851250189 367870720 238969235 238873802 638497869 206577066 441127405 227003333 762890061 568836014 952521228 812130507 535253507 390864792 754782377 352127812 603640714 912988152 616245909 528616806 129274252 414782418 380350469 851746861 873486840 232040653 716187756 465683725 264758315 883492747 789841789 303341456 868059529 212716478 547461881 900141287 644518087 995772902 325654098 416538225 7447092 866054219 655813052 767936087 937238014 507913941 248015854 774219004 76537456 470273506 108392117 937930322 822240714 191911083 609587697 580126182 723601203 60258757 327779317 451696297 845503873 411898763 165200551 934535024 68637998 723659670 706649234 519458667 223116199 592967983 77350468 319478128 390040778 422165788 538008517 17831911 445879874 897114713 927464788 420426347 33471623 806562056 409421195 481526567 113582295 3131056 356089011 391548366 489987957 447893152 285026725 976538954 889300039 955202900 581683050 187676959 932399740 527399949 403986711 764992248 795656217 396091858 752855297 899414922 18114157 779469113 572464304 945208668 29269207 75587047 949833580 928620076 459756539 332698511 805633550 889163586 71116632 722320418 461999873 357529713 550157802 153847487 468976947 769758898 315082734 670012875 153218467 435230230 880665443 209181307 968211654 202996235 992707187 9639491 46825764 997435124 47930362 810377972 456551685 492913477 131209790 453029535 340640675 660585160 691504687 86655316 816934853 874001981 616320629 295198605 714395078 551002900 143077075 323413374 647051583 436971732 669946278 302746360 261376168 93246061 543435513 757349471 902425437 492329633 2512884 861111880 21716821 556899095 235601967 301520133 370322684 591228425 808262693 564452776 913742257 886329456 876806101 260632718 310900642 841940779 777979351 146585503 209552542 273091331 788383570 187724493 835518909 795127595 979944692 480487875 205082381 368239374 243351625 527743905 958536970 848707727 203324783 125643812 576278488 545217201 141070869 323506523 400887008 595861607 188850075 876669991 619220012 649961148 459062191 977964220 228074566 29162807 956851872 681324012 369591036 156311379 149008478 869413324 93631257 239243784 539204574 601597645 235906615 423887284 197131699 862571339 20619754 798567608 423882509 745736896 447786959 123649108 141040108 772630243 952040066 355821162 118814738 921957380 163551458 306850843 177016907 605692083 274501690 682943259 667621242 544349239 447596511 624464160 626768849 519903085 558027238 241884992 889057590 289747094 576071233 122532649 691267158 481427081 459654763 686754429 237159967 215058421 126389059 422283898 304651386 692173780 203633734 139305098 555949716 467112812 478958541 548793265 195300397 786300088 808971927 965257846 989272961 4656654 188978789 630871764 243926082 991424734 209699044 265867602 106301026 700017297 231181132 978077999 219584853 359428431 20233613 19867395 420544859 122972183 20831979 563849512 297922353 620264883 479895271 999415275 658099498 169087608 390249904 581445319 552959417 415240329 140431734 787665556 388157850 498256467 466507323 638803900 532509263 796829104 184133910 887013258 256166589 252054230 295854402 553414062 152112181 838921542 771778739 678360921 802611595 489211971 360765759 317763320 356015503 816773794 670183882 2217039 260545819 933775441 316303042 374394552 182643482 660693228 725069534 55038553 320749499 338651518 597646794 670067470 701459836 915941064 346486257 761034264 359611121 916515103 254061283 64057266 189086632 734152251 897041623 162853808 238699156 285688896 155458925 388396148 178927941 215770125 389470268 678474971 29620556 51590432 121501475 585821062 556554717 657024763 310952605 184646817 921948971 749062179 775535977 514858556 295501364 386434157 516869639 212566192 328952282 652886033 765930397 16546101 359638413 736827544 564162651 742832410 618418655 936871919 302382891 769417034 79125751 221362161 931148348 939917777 788279282 878592725 997339287 725686495 629229265 686298499 696302658 848104360 212702534 32244218 376123977 971603993 139000633 429522574 991884110 489194452 119449068 911620588 19435299 747035185 914383421 168416033 470675474 378496344 893150387 197648004 453364080 825429353 764350859 52489035 524355782 642903358 68834593 202669036 934423687 804903014 942129183 522176659 458372150 847129203 116563035 52541014 98774767 543435871 107382985 243841761 327265650 918312297 755738315 285639326 325446621 443484176 418656569 915795219 745013259 898032865 891910130 86831319 344535177 697125168 191313314 29726452 936666928 964079361 700448276 66004554 554265243 319275601 854501802 12000468 709401993 552590229 694740876 791137826 524556275 612125389 209024592 143319855 321648597 854724523 859073603 218242644 861334496 302926348 932898117 292145182 975292261 550083546 975296006 68080443 901215155 490516492 923422953 934847283 91885137 704497258 347915756 859002378 342346197 13931778 217296471 238324427 949459407 100392324 494778124 625862476 795051949 338119712 118591774 984001095 291802627 17144279 826341831 804078177 133876187 999052737 337909935 335425270 48985676 269048937 990948113 932421870 152320297 977157497 335133571 243598075 592856727 887278627 914552225 418697007 455027963 885484768 193452306 171721289 306699531 691454112 421167294 565820241 904259951 666924831 986144744 648457543 87937579 640395576 728162177 230968195 468800108 131543169 55315349 535800857 848434595 418600920 816563215 314607888 435359631 32131399 226635418 245319815 693340127 177095672 487643913 67289206 221671316 360408070 586472716 400038662 132602186 880852238 783870723 566226830 955605917 772719211 312212890 790393762 929232197 497679995 574626761 563678072 867686521 226551406 155514375 854895422 810023371 100266424 961474630 168856217 555670473 400971407 970913698 79382714 653724250 554072361 746392140 473669255 399877159 251041506 497263137 237186435 698250148 423935702 409389785 729252480 78226520 624355989 363062348 442721591 673982084 688824505 470485563 105076448 102394300 232067189 320089651 439771741 638421476 611433718 799408338 563289600 243707600 651895991 928932946 421161713 513169688 834287759 49111875 312546277 772499887 483115252 642617028 184777887 819420336 12352690 991382078 123450424 900526769 935809705 103643998 923479459 201872052 765221391 411387028 521462305 20694012 770600063 476202570 766381776 155315994 928478832 3524267 716377725 617100372 56216971 154583631 386123006 984316046 852005888 841515218 738147121 69733216 361270436 92500432 950212017 248504467 625281456 716753834 383197350 130709730 192610163 790343634 894188167 884124987 668144012 106313821 718428484 919409196 158551187 197927553 907224036 76231427 849288780 28896293 955576734 893501436 155150191 243113912 264852949 621240778 684431431 816680366 301201422 597973632 560905479 941118087 643698303 957051690 522990343 899914610 800369635 339582675 813661573 882407714 748266330 579150685 117087542 800661565 305311963 429477828 390068489 336419804 332506165 718813966 3056705 507245785 158114745 771275429 714822608 465004633 129046036 156413307 620269102 248645364 475166097 552624205 665983349 623180132 934255702 774411205 22940459 43654644 620678132 564246663 297167723 15763231 492069999 408641291 432939035 604071132 874056519 947229385 563733787 75362402 720983624 624428056 725504904 436279745 949264937 499868982 911801800 256758172 280177382 147349152 813854651 538789750 616633131 55822174 875815503 660666959 846804095 299101757 356517320 730868161 825799388 590381234 375390585 247089470 114883293 936183485 645506302 396977741 694884783 286000813 429513668 833098247 300171204 935782445 99980850 968704727 562154439 460664088 96247115 660395201 792224775 464509904 785893380 507689275 55780663 432940672 600607639 858005380 811377323 779180381 157107246 979470956 704417040 726189931 997899828 399372577 587861686 237734744 920709022 204383237 540157090 512078760 795565235 681963463 113763344 4478140 710287386 803015982 786310851 49723073 9537330 736611806 369947907 814561261 855904663 329517658 978505965 360930334 593524113 693558905 86539069 836150352 467267948 81448396 272931989 266942802 21587353 91696215 206179919 73403860 433186405 615646839 634238667 554985217 532449046 540661040 985098813 474085713 362500494 771395243 611007279 554544504 315345304 394979493 163514630 878316083 684449677 148736988 661349192 215337100 708870411 174421557 408441243 168340707 600126247 970114228 859874129 522043904 770665023 762942094 169353641 778010259 748136889 242175705 647622624 41805080 970750229 60693024 818830858 145086256 176961922 395524111 80056841 578006923 606271584 645642099 40174600 387853365 770945918 443849511 595285871 94186597 224830881 828142119 848446106 210873717 803664746 378877268 643169114 533410060 789230164 767089792 189806341 852206078 511960529 516686435 764566092 380892602 247009103 166618338 527700456 793171294 159875511 430809010 940159864 180110089 221687911 995715622 762711124 114874599 200993896 822358131 320595966 220889491 334124155 521009187 878005219 395992289 575702793 339191464 388841851 220554226 623575179 584450795 40327330 967661058 158995162 793199890 939143054 626509201 498980352 998313169 409555299 514278332 448348964 172958680 686715100 878528127 614758263 727826268 13170161 333279401 137063816 416055918 177085099 56624392 405822036 976177881 258487839 174065088 29738761 378805188 726942484 565771118 664271698 144807423 583752010 740819631 361109053 489266055 489282499 445370388 79932944 610632703 802372345 709567658 439242932 790319684 771015301 91629611 430824406 756065084 981606373 196870933 200515011 380917179 31368498 364368576 838382618 660753539 752604193 554088062 170641055 115643250 964903521 735662309 116069701 176900742 337381411 910050319 459714243 415562151 187252486 196353526 510437075 145336216 711221842 410883332 727500237 471092312 414779882 664106849 218694384 410794651 403027550 276119272 713783856 716963868 805616059 141309923 200721335 629622350 613845748 841309500 544721041 958915688 115895283 9986447 690515826 810841772 400492844 672620929 531026447 307301653 456810713 297338054 122799631 769775952 307954714 597580512 290106972 742539595 922541264 607177099 484123889 670563934 260159455 719866142 239455124 744207243 442955170 741398016 66194140 976690420 427110591 972703186 873631238 606309303 407672234 244147494 727150749 340646784 136221750 435671508 815821072 741875304 419117855 457457231 472069242 693489046 339435334 190482010 917483263 871002048 654292168 456325350 344088313 990674250 910234648 169637739 957889215 329594617 894127626 704719245 687468797 977998397 771349487 674882670 94448781 64552496 881914068 236903167 634075071 959156567 911091560 404736147 374786978 796892398 386444215 530356951 767875184 315166773 87231053 812033383 240134857 426869351 783682513 2826813 589428016 659085752 992985245 463365494 30297428 55123619 229326033 697736663 957651686 551536712 426113673 150702099 271958198 632174027 196816685 973116592 714548887 974467432 842578783 868710180 532516803 215021338 622194927 832766973 296194936 663518519 924222272 841582418 19726147 377294188 654096676 771222141 941921805 753682966 244313933 277043039 841863086 559274372 177276232 947729288 850346107 817949972 843493702 566063374 448213775 789991217 194328650 926212900 918911665 596559520 516312264 67764832 544202003 97354333 673650042 596375069 731626650 816375409 788706451 915963909 671053265 761489826 871619226 625000755 331355117 174238322 493459273 258901634 768409575 308930390 515168590 451321922 996882370 794427382 66437782 636505556 813556623 877217859 987300166 961642042 67201069 408111945 570362910 775887889 427236278 828877232 468072564 169130798 77070279 378247790 36804331 931703553 407237193 449241566 216146247 55790994 741606335 2201891 590209218 405589639 384113086 840910544 513812444 209864567 673788815 379418029 42330184 638078206 851531866 308940491 122092291 704840232 112516329 292280829 187722425 645592631 927982199 512067428 576288875 217444840 931955002 734629698 734198452 118549933 680095938 893521201 673260176 619442648 546526945 945171466 912103561 782124046 140399898 317624522 522609062 593676089 650306426 305086393 80875523 508868869 875679634 47606035 753577401 512434173 533096612 602858319 749503435 408289962 270889519 553496640 177919120 997482291 878814076 227912104 486168670 927073118 637615302 888528669 88659606 605121324 270957311 496410819 743232774 439452827 405027002 597893704 399045263 797529953 245189768 574776270 347265916 156207206 87455156 936065886 390999347 402941785 36347720 258369428 456242260 574636721 573553191 95336016 197317879 252665750 876800789 283639294 961676457 503566828 14251026 336085369 732979280 842571145 389258244 758497110 244800050 18734021 689589054 797209403 145321279 869925504 579778428 635236934 131916736 549954124 960318781 345503473 912257709 681731695 812934319 14000959 743525660 474779179 82361029 332267977 31451281 369075133 663317930 730931793 862314373 259729467 16046976 183117233 445709319 829255834 323104359 741585650 258545428 890389439 750747301 238881145 69321376 694339398 507839716 607402301 418063228 611641754 495014823 119483888 979859049 243715400 935049318 984123111 360098780 299843544 199151551 619137885 500069980 26010167 773524255 941836648 814320199 335978613 27824695 500968498 622611642 580895538 808891238 913062705 520347354 312622997 294988936 373318290 933440581 506729454 758506662 545808293 761309244 664216208 769369118 560174261 14619281 264581077 143928816 191744772 894757874 306229949 277227045 129135135 413788727 498089873 627873193 731102151 301820972 138694754 881939565 82124551 872493895 288750461 681177714 843633899 388094878 669671262 375835354 831487361 661921215 828151771 277263251 758350862 773408171 868330370 128133733 651775237 97735164 556822311 746109996 388757837 761701096 853051685 553763056 167997885 327144880 890492100 20692557 978795095 288063177 538818651 931777416 829654267 202339956 104652517 341566415 446562726 678560161 922114365 748049000 584924021 597903429 550649264 817587548 996222998 631189629 219188264 727816821 210728198 900055531 964025705 735878334 856145139 693738975 436688128 118318669 475604701 331540756 483936147 20931126 506903442 424517967 711093768 774624030 46825698 912072115 253730213 547331530 423622754 978123804 860004865 487496385 690063156 532115235 971010588 949468702 331750967 205716773 467671295 773567501 892733431 960986532 911483826 63903155 681549385 863605532 962873199 306749872 672634499 919216062 337105514 79526950 752547808 59008811 888418671 366701577 820722844 699964234 781218171 771798201 378514975 745616535 124480135 773380469 529498937 738095912 57595017 904686990 464320677 629726559 30255228 750824548 623174983 989220217 286272522 85989275 599404478 159196837 20916637 588975201 809387541 944421157 607056721 790220863 325072889 518128729 138164260 79530971 190743660 987166417 659097795 737483691 591189034 117951973 986798220 63320920 399196033 996122663 196763919 287535154 869911803 651848150 484678070 834496514 30243987 532731037 339070789 15915941 790645268 23151333 556062040 834388485 137050297 330131801 904311310 571762531 484185635 35553921 330097009 640695310 421531123 541331421 573685291 511793570 499995062 622996897 491090464 522980817 458404022 956156774 955049296 588146547 700610522 73793340 390214143 769033749 170771366 788942086 252813628 44142422 648173679 286605709 396719396 403333701 655908684 414170005 4458937 440223804 626880104 760311472 110114001 173950476 577900576 243512201 552819925 7684711 132654735 750527809 596263372 757009629 532208298 976245854 659267806 630229405 73839419 621735141 106426964 303693850 730250773 690645770 322460097 142965174 175295505 360721127 622380341 720821791 569262063 284204566 383237074 710354434 458256429 775810544 866317507 732633801 369999049 914840580 496930737 381463105 665702489 484133453 463362822 433077289 107173211 86820470 871555249 932127916 986435410 665557911 183712018 102278194 335424102 258670467 252996848 336681838 482903947 214147289 697090472 686074895 576350892 651112122 554241122 447318456 930261656 800272497 599224084 727303770 668367736 903460771 780860233 643886302 467112165 765399199 777472018 696780287 863235934 491399577 989241006 840313317 233406514 523266087 821013066 286419181 336574878 424600559 79151462 323209723 124948055 695812872 896758316 192729914 785378905 878604532 435236702 858300842 60837483 382688241 70814036 712744413 691820506 527804326 791679059 919150678 720151356 768148105 944606158 919809450 558530130 94234143 630610429 216160712 352592501 340777377 210530649 254612157 142857626 380978728 791426453 161151192 214399929 589188378 962948135 67206084 346573529 859614635 381330490 986739772 100327491 750728519 267481750 648211947 661662246 939228377 975068579 138231000 950892390 982250258 207011568 440060131 853312817 910987125 461211728 737059688 376897482 456936941 346814246 489401078 856884562 589401263 509293544 645376068 860903781 932827655 442700337 894022684 909009157 355915987 175689514 828686275 564930685 639509779 863696003 633765437 56846436 637039089 114743716 892005628 847213819 741468706 932540825 675854205 85784507 962959666 913479180 974057041 962798315 404464789 209895171 211671213 875467823 374329662 762644361 142387063 926839057 699369821 8465280 100543793 458130576 221905562 598451194 244006752 458967973 206902053 437533560 787485023 792672983 112649309 859181129 67254151 63361260 247909470 731025001 410237060 421613397 900381841 69456701 17804308 802223109 667653603 471182390 184244987 8826980 648066556 452822763 954430310 903438006 599595007 53964941 716260723 375043475 128006188 98069037 321260936 919851640 446353920 392205261 214831525 176906890 363324692 661778979 389590644 226112862 602360282 824438079 840756859 899783831 795569591 919494265 871532412 30704766 652253909 240977200 995035189 409471407 410502077 880488383 801588516 667645457 959186162 10781925 220338318 853858696 653496079 688464158 118204366 842621 17437369 415779100 549491505 389755089 1749799 872917834 415464133 883282940 224260756 563982822 951890229 380415114 983046135 194777332 460669127 170682067 24269877 139352003 448913281 246100207 1972421 338382696 856934984 444088811 408340837 689796804 24736839 966878191 619912552 977055550 453104984 840231346 733356212 986218325 805151638 689539139 488443775 958526863 279794421 778255095 587279350 475922190 868523117 875889193 938962961 224089322 256915619 615334146 562019695 126258683 553507448 128643395 550282756 69977721 91507522 903375890 583882058 879239918 294650240 332926318 848448132 925635861 248872340 787862633 339198587 493197223 504564286 692026506 662611986 671381554 183287473 44059677 570393504 650620583 559042926 789139510 932843838 730312023 70033077 607707801 324874360 113971766 525319213 181692325 595506168 129808290 428738615 462669872 827513104 754769069 294837691 772341341 732415754 101559241 790305769 416958201 837791679 816482159 590678570 302467143 475105594 908000698 263329177 825033287 155916329 976314187 239946022 15183912 70647726 848041601 478899007 503340111 938896343 399867238 159782123 719784248 381078355 334498375 182347678 715629779 488380829 959328955 789224566 572483728 279024607 456152005 430752416 191584618 811328091 538404091 89361888 320849031 870759295 217360692 236321754 801921284 192575529 383127630 136712164 792579800 356285920 905905929 851301769 452962364 426726755 964133761 779662012 565992466 519051082 923379971 133742566 136785836 777883588 360896101 482065885 220417542 458360264 689616650 594725630 877314331 974170594 697506313 217851738 290085225 731485802 208522943 223388142 393904738 900378180 248052715 988246123 151330246 841432558 452082759 847093811 46843495 226147685 77049467 400886403 446686086 688974947 827457044 562371555 700727339 327287505 321343070 483514871 671122193 970845604 402529505 829580377 468347238 162684185 855957844 881804280 917360067 149470371 497082433 183245175 300900242 720035005 58414820 231446168 117676822 733771108 619596945 786953705 495445004 462759945 148672837 733642890 515406931 533657590 782466086 789239222 882081750 252836900 22762762 404832521 728897933 900499037 683455952 841262155 94911399 441276311 374890813 513821682 623832333 22503539 723550168 659096633 447461315 584062023 756785794 286995549 89873722 68833457 945170018 531773194 598251967 558700279 311329995 117413336 798088110 232022597 587230631 337962704 903587569 705986543 600565351 115375661 681416467 689150969 538131505 439594683 977830597 112982514 286679854 540239327 627766818 774005450 48962012 853279728 167657196 986863383 472710004 23129092 859333006 533152487 273831932 726639783 1394953 203906142 935794316 641651078 226131290 801294989 506319616 963148992 887006413 655147608 717472457 851219297 303058758 134962894 386436508 237344627 32980201 648583379 239802118 31559598 269607343 135990686 739481497 255932792 388330189 666581233 601688357 658057410 401028011 117759205 102846284 693514909 461940982 470742241 805229443 904334385 853415166 714947143 602309631 558375406 72072676 913393186 493911646 22379303 672028256 868496199 369920586 757816996 301171610 972792377 899369132 485453246 853573911 715770622 936164090 488850879 436991293 876558528 339257949 553253182 754293355 57311405 836379340 759103879 685205975 541047410 528610521 346931376 265917974 862028382 773492012 729168546 72740320 843448767 463688456 598135206 999197007 13892443 937118213 612246087 936206195 69787157 802917634 860735224 126489880 9097173 82140776 979005628 715415559 526524843 881982917 168752824 209317310 806884546 671543050 829275470 148242791 870195951 153229470 624389532 172069805 951690166 352653127 711269016 924492577 686703798 196294689 712811267 716944096 227303574 62298255 906442348 107698007 383669419 311336675 611591614 426195912 995365323 483104 745562272 22335533 907778201 776310525 807874269 788969842 952177790 876265724 881246034 85416183 916381805 115571307 117975271 635067824 604894785 479315979 617164202 908934619 817490893 920520006 599731370 674297630 17820785 349087847 688272564 816972593 874570961 859187348 495272143 749123493 578627950 165163432 624600223 138664130 160096213 910854356 257176741 44690725 171521193 293692604 507954659 929630759 588446453 789366267 636605145 508663328 544413189 415037822 189175196 357954036 263295232 14419360 725555386 578556887 98596402 545201858 232224199 749027882 905388090 902501890 793988368 738178678 716369536 788654256 493836148 678967352 206280200 510948008 259750890 913090614 699239836 195041076 674022621 546395957 381656894 159021484 603193175 479159612 811068023 999748107 159155137 628729439 246096259 494041100 498906932 220907936 861630272 99993066 784401777 17674433 161130863 48560342 578593621 214604044 453298788 615764961 129525240 743234818 140381852 706285502 130833997 885733112 486749180 214551511 864376169 68194615 414493586 914686885 585249473 857761497 742021756 369857716 587582117 453390663 428413954 927082293 76597620 458447744 100032414 298503151 505184715 666202754 936336101 236404806 148572089 428589024 673428459 822537299 203884934 336763093 766618726 604266218 592371360 81263310 285383335 136210823 180010813 737352330 442732637 411066392 734012062 762669306 174427675 867320610 71398721 757460303 417736138 326391179 388710340 693369133 44761066 651541078 948592014 895512772 38508696 232647579 68374537 886796066 352208801 549694099 175375784 55701636 184647685 957839012 714616136 31475605 231900543 895932693 228036979 163804866 56756996 89344950 695794204 437277472 735260522 460602074 849165930 137587550 584498038 79409043 690627949 133709922 347746702 945296610 356473012 206180058 746391007 935468850 892979331 999924994 816841458 765599545 610412357 122128792 13176983 32049060 210082654 105294350 86518831 944734477 247415741 784935357 490035495 871692785 638191789 371060000 656083739 184671895 433846556 887722890 130019490 345309172 42282641 913928167 642303901 813187250 618876062 866438899 384889466 113806268 963170385 183268220 766862314 3254375 172261914 395787057 725031575 321002344 39008833 889361392 713633662 443281363 788358406 919669658 828833088 410847613 609766152 306912108 345620563 822661084 988662030 506196178 934041992 204611282 971550530 952010305 25276380 537030082 321699426 857626700 635226729 727975913 251200920 84004246 706319918 844535541 260058742 565368550 734997420 958509555 272738255 397100921 679530987 331080546 103962108 481672999 909533586 923899553 688167706 910092601 66334330 66198073 448553861 357224084 330874372 901337380 673137653 473441708 992765157 776364320 499913365 263644921 679672480 827042255 354990044 601313479 863570513 151527708 865909240 816164581 888434596 878086058 383960056 512594343 460944257 178377770 93264575 628634604 144866617 509953679 143819122 852519196 932196269 281510330 22470564 393786426 467259055 527054659 164588222 21983456 848146867 544302435 360693230 344821076 210869365 804039301 908084568 194835767 415917493 782043481 702290312 311304174 416830881 297244940 301200615 858015013 509786971 67846032 719118312 878876916 652498556 733709609 619253621 399509316 444885321 299018205 748403087 876672463 258644454 464809424 760348015 943919355 335916307 431707373 547969046 281309647 370243270 883165792 635871271 800201076 571639345 93971329 861673084 341117897 722409914 228653428 854040913 974122801 582922927 70369831 927420966 937102488 495668089 182479424 818324544 163575079 930663111 591689348 820978263 822969915 270780393 864799229 632455314 296361561 559471591 285492263 110228915 241073684 736783398 29104769 571448377 89858227 568223939 156105602 920380435 322993596 290152964 48149849 845150111 358692157 883064709 997900307 347301451 197811741 755321178 530716388 711105112 619670984 440096268 504735592 57843928 907769302 291329467 338919007 895888556 750334193 909125327 812517273 598079917 836234050 492945856 931145812 325909707 517228502 243187724 919872915 339507941 165475493 717466612 182998855 179018606 467076528 457132325 221062228 757953707 185018120 882706639 949960187 52629051 281695603 303122332 756342851 715005799 408281354 547210503 381437196 433004494 439919747 880667704 4081579 976882165 828062335 291723447 760531589 425442168 505166072 286909665 939511776 214404093 975419031 659022974 960630953 288439102 543284535 209651185 391227124 764002280 570514871 548247470 749634655 332504405 330749107 731645688 153165683 539039825 93153314 236112117 979577884 212315257 391470269 393606278 600269768 664034991 580268415 462506823 847479143 798039054 733926199 391521464 130313557 547546662 553956993 306274580 808210977 651897035 725641606 591418257 143984693 948229742 314085808 940104033 552962108 319510410 684056578 205172980 784234197 210398462 785334653 434228313 270854827 776855144 917927123 523676391 553299330 327989193 464509018 533847936 651838557 450154497 231382065 186661438 282056517 591701960 278232199 664200603 456950183 430640463 613664721 620177157 545629221 573257716 961667327 228061209 724857426 4887494 750632756 727032717 816466788 100303549 496808452 487249324 103968485 536138541 1647581 705645881 885372655 53989710 949900933 231358737 182051060 487345200 369569490 219865585 68372803 152689479 240179644 251008829 191323957 673302846 723059491 685966304 603525229 282568957 388037623 63042894 532526867 832248794 865026428 79712467 717654868 848678454 309884719 722916667 528798912 559676270 349928615 221973268 703234849 431916809 402073590 64937915 335816769 942312621 431813681 87569710 194708561 950919240 131573564 134302142 40939718 171884243 161929915 481580690 350197883 273398903 27709640 250590455 830225132 903966879 349768623 320555902 584543516 800014415 118323308 35114714 104251973 156897422 813624043 38973330 550253660 668192984 722737757 503560430 728448537 876239139 270695282 951586355 463580268 864860844 769195798 876913966 301438975 822339905 541298427 838904164 836392631 80434098 153109448 304336999 994436708 794362954 225543954 500105915 582392594 489836937 581562962 598825331 952396105 758902033 519886952 159430918 77405494 656973552 129652343 383026050 18735145 281578942 998757839 858921631 223900675 662149504 78687258 857652254 333638724 863681306 69805927 17520113 264395054 582705038 588467730 177439602 848923275 28915733 130908526 565097628 899760456 946713353 840195321 834795277 716113190 471657841 93692265 793553453 830079509 659143946 794393200 428945362 719678061 989013712 327089005 973723064 337932304 708311235 36092660 36429432 845887593 680343539 196899955 942795069 148802192 884702597 123949890 615801774 225186495 699697930 17079565 596319107 61449000 702107618 846485962 644743294 199962907 69571779 398541185 644952939 632172629 799146280 708782335 891850439 845694736 12237694 642493821 640110797 628055246 687505799 893202217 753336972 41601136 426616418 361497784 361911070 558234078 905789845 31902307 186680326 189143403 849562835 852596081 795651519 218227724 34498952 533849409 448426387 769962098 426175681 910566760 58476430 41662522 9186824 268363455 477847830 1366687 534347753 450065367 305403505 407025887 894866348 292765679 198332407 874977125 824698521 777623693 377226763 119089340 525348711 837125591 469861475 919992483 761073593 554628659 336655649 571598171 572269849 79825213 91578576 562079072 643781358 334535949 62612056 556487679 577887114 145713700 140818472 414986313 315151208 64046049 632431174 869202133 487616766 115392408 411436631 779394840 272200486 227407480 703723620 200001859 703777081 757438044 196674329 289087733 64326146 52072010 310372016 165441953 870327449 479211381 252847794 190482058 781906241 342201367 300879509 697621904 148289202 100891508 389605619 353372325 609918582 550422438 613246048 842906539 150209403 304074718 656017619 205098305 40523234 703693714 58490293 468982853 477384694 948898923 698601421 227495447 879136162 398982348 112728965 53497654 708496926 779583800 134849553 740342419 230638015 355222523 139612309 719913984 549849760 776753581 456361782 834017986 611397897 169953402 73387179 310089985 884455586 411545704 884839804 403523238 686739014 142127546 82881930 216893903 780438147 241264592 305590861 739906928 120165685 603156399 237182155 910578809 700386900 499914622 231462876 966437626 748836963 867510409 532971671 768810142 123427139 90067915 843729151 280692380 726376167 690943359 198971050 297607295 186436050 170180869 35395204 867101377 353807468 825778900 446000222 7576796 66698303 111116241 189124331 421951528 271933238 765874211 463119782 976425451 627033212 34865484 277520658 202855039 132063968 303842218 706864072 432504241 359565853 474309107 360362178 383561628 987292883 595395494 719874018 459648264 375593558 413806795 485729650 783488278 416137288 164477607 314659903 84545280 268476450 220500796 843350424 500504516 833487622 953260843 361027957 353718127 214292072 108451469 332660223 963703911 190882495 263372131 851616753 551794723 341832687 261756224 613788597 436426783 794891202 528177289 779429302 136415375 519396783 506660609 971092826 938911294 751283465 595622080 466400458 771677006 873141199 415447762 592535417 750023033 704388247 162182351 757139335 66162200 601541365 184153353 68799433 190900318 914890588 196949630 855445996 159750207 825778818 508471707 832424412 922453493 579352226 332403067 665322531 936046121 526122345 82922126 765839570 821109224 583904746 136434315 142833722 391856523 112122071 252546906 677288668 532119074 388870599 415570528 303172726 788008147 913324326 280922720 817403533 355959546 66360464 571334013 827139756 444731247 294785562 508229837 947669741 276096377 771391025 344994098 330442190 67721645 206147958 68826025 50538056 976012405 864183750 926737358 794502258 938181528 154351766 469166093 630699173 994014076 847593625 299938325 654154807 702160094 274040594 54638164 280635022 333177192 27381450 252389410 303787693 192799440 589716377 56231977 599099739 241998491 841449827 25572265 161963758 723382325 980358622 697316312 931104756 692561953 336774920 941890795 570065727 217348257 7765862 758478974 669289629 416586735 133892090 583419717 91873268 739839235 406838810 947271701 934911042 453349730 359765429 49859163 892687875 432141724 141165793 583288120 931257584 791857960 674364050 576332623 961802859 629217819 28413397 905698731 536886205 652894117 939723284 824764734 977082872 977627236 566574223 501909229 389000593 628676197 354077591 89303593 561416191 895797480 146397524 222292487 453722104 463473084 507611111 46370625 667642076 66457352 356599146 881246659 505881992 77570920 309747691 602237431 50009288 702668576 118750805 74798702 491260433 561331870 943441081 787251223 147102136 658779321 938999668 333646642 598528384 27464027 178445172 993447617 152433333 645673345 739054361 651118162 854662524 331397722 217144145 139044669 139377984 931643823 13795648 239648973 762811883 642501638 505743458 365622729 711869267 46192471 247620319 227965717 740727195 445324422 818919463 370892236 604734805 28814387 640521834 50089853 89743414 577428068 290640768 334041289 690398253 281596374 700179876 694044352 27518413 787452497 19551968 491171379 131269258 683199307 134867795 745155361 834873415 437495197 961871354 414277320 305269848 29471965 942562584 763451909 570309321 533273118 58341589 867360868 572483675 811338522 940847484 414806496 326115226 716445787 118737486 68628195 165931898 357587548 568698508 641881137 497033816 320137572 673275248 328422600 220961967 260858317 436739208 306779444 205666413 279476490 878328571 313687183 814095107 263006776 343386515 935671559 530556324 465224196 799944230 568544425 788562962 381486707 224606632 300621361 420152311 777733534 930911300 613413019 600384114 645172314 663772922 228558271 695608629 681534102 671736923 913318813 391044900 327944191 618317095 206644537 642255012 747620068 41651329 532529720 405913876 845352476 969507970 339072910 318187618 843395085 683614717 345398572 897983211 62051312 126015053 303707179 640864829 747911747 340195454 990150907 399899028 954585399 936072578 418128548 647803125 263572959 390499902 250388304 489735911 681234088 827015371 210942858 913954197 149396617 634977691 457370270 746652485 975822029 466060375 811413343 610882504 119448402 598580661 144187444 445969676 601799150 357524717 183285553 183003422 878590123 139886524 223975153 173320255 753952479 223718485 411136680 352956967 744267168 555005933 345627603 806715254 441146981 596700604 460627509 430890817 493855076 841747701 923312372 260716426 506576012 140346097 760410376 866032496 149773999 561511 401579113 697903847 489075161 438905835 218630634 773759164 975305358 913632864 223295164 274684798 465633879 953702172 717958873 957590195 687836881 509438699 427303346 274686123 403453830 512467194 194472615 89989739 591818587 58896181 960364686 444055483 845313001 945016281 25608435 163913423 826474888 337186704 283567048 749895656 115576211 790243054 570337347 647097511 198707032 276821735 424861421 51207728 693097810 521943800 719231524 781076429 518367660 110709106 744804773 940006133 673554091 645890571 122261696 838394924 726964591 899692890 793738701 603639049 264789903 960746390 254821943 5099617 35560957 147006884 962311566 735866978 935951207 116449859 22745087 881533209 500286439 5093562 183741256 630009595 789513806 628326398 924997238 40634945 53937989 865285936 294637057 107301709 136522534 934270570 190747489 744627867 371356618 743307919 321727067 122891017 15237719 232971012 171781051 507932124 221102809 956581704 754977037 870922564 136294842 59386081 133736400 317702513 434073637 684018939 277391125 775506471 862133495 859236275 57243524 231330486 188915479 483179299 61943240 272492152 473761144 105304813 635433503 916969871 952894452 20388412 507131161 497207369 762203075 211199199 829809945 335987812 431227126 140236649 779109214 487132648 197807553 412776488 234370889 737573148 542303121 535101651 615438138 236135795 552422614 959503561 307664422 101004716 87626251 425848289 472525376 631358408 644608543 78797136 700413077 221727679 352551005 772838701 379837672 529954317 958058854 510867929 37911809 334208535 481305855 692564192 30329741 221724921 451484657 78806957 46519821 115397840 956324897 121974436 142906271 720264471 312095071 478036327 767987231 594859758 210076075 375444579 326322865 665938967 355505874 399379758 135442064 63061134 910028970 113844505 677975532 819276736 553930690 125845931 920366890 517386370 50039938 795820469 332676556 19730417 55791058 500460374 289873553 440705458 602388906 39001310 234910268 670533118 812526536 51449885 920780281 183976390 715277639 248160686 213491678 433874737 932154046 134572683 420394946 762002019 507094393 553964602 319542345 430139985 887390104 827360255 528163687 571637485 451752066 858247123 827976992 73177684 930459169 268419105 822817886 52415010 596213124 32175603 106444396 400189288 542275930 216394021 538226223 263933174 188773130 198590705 504535359 886516058 267904260 412087810 793593003 749748015 209463954 487146069 322608160 781325938 192655424 222420916 308709406 407472173 414559586 109844876 10436692 725511710 575073578 218122075 431901539 444899020 879227957 571617988 680553250 565355696 660320388 132720114 781442932 647591888 898417734 678485381 127256370 506348615 953145856 965616005 122113820 481354221 929679314 805171677 19397109 900903325 796549075 497013240 609763180 880119997 228449282 355569264 309474561 682868347 217646663 754856915 609364290 639142854 51139742 500515567 367406406 69025395 314756096 970603628 120396742 437493095 636973842 378010547 825196864 331458840 833465142 311577078 428781645 952712323 188916490 656636295 447011818 2932348 659896354 870275529 3633164 765138701 340990672 105562395 537409400 109777340 712477440 874516703 505156726 233867092 268096437 156837188 515294946 723187329 824341652 872376434 647559361 722366292 748144748 278685918 51039268 96975162 504364584 493414205 753099652 16567831 883967 368156070 419278259 548635310 500809452 987546867 32471957 99792712 24410756 244292463 986596131 384443958 215388019 306296323 165804968 934050024 872196658 787491687 112533012 985176039 646791214 47661931 797285644 600896821 406341853 320117435 66052409 862782861 197962963 843637244 410375836 903218198 774999989 354770713 812276888 46274015 146814954 987337363 929065832 391179010 888331030 23334102 154972131 784385399 523160163 863873984 729316075 311524133 883281816 988369940 340089149 833324129 842981769 858338899 789862398 653385728 960925355 577300536 220201217 679964692 200162692 43794513 807877917 597978761 566948173 559072710 217402982 697412663 200784488 449256022 132374028 369753581 502994268 32301149 84864409 652160748 187895233 39221648 77717561 257293381 577703438 564899287 787327194 947868874 610789388 518246030 480110098 512588574 415963614 920463507 189192836 904680134 739886028 165135097 233274044 175923318 559453840 886226560 787234759 54569509 783065748 522577563 978088215 72518581 427523171 786123610 231902471 358670685 287590842 9518716 815917518 962092412 985936822 530531496 310919174 588366352 878520908 613583585 492557180 384572055 826600288 102428430 83707020 103260226 286029914 975005972 849611527 269599712 435330171 344156248 23662477 834529510 834595876 319066684 949418450 156260642 289236812 667608279 737405886 473009056 355686404 829768455 323426722 248964776 631702739 52514722 803244697 49641260 226655937 247357130 862569453 263236503 780095937 656523768 635820814 176862200 570104149 912037825 326848366 491264078 867582102 743039150 752289348 482187610 769990149 514372363 833039996 900321666 642526566 245440677 385124567 869247699 869483110 74965578 431702711 655717821 400522680 379223240 111707496 868355425 463349675 121459444 16055958 103825591 198900767 51481147 546581255 734116376 891238561 509074275 422922266 74001196 45742201 849630077 851486139 805831747 721616756 644221336 488520103 973771889 123907012 108090315 22720522 899279549 648794653 973874098 946299978 446544016 221273682 823500034 232622005 637887389 606117382 625221610 797570965 201821323 263660447 388972504 879296038 530599017 347298244 489687402 257691532 361805678 949025350 266898067 604600056 296756792 266260476 398576877 548323412 523463416 131524876 598862253 527188767 802216360 264544543 292457694 856932920 558165419 873134919 297623035 153175796 385610520 224452828 780540333 355858019 217426555 686055637 400923686 916759466 808940940 659527537 588604912 955195617 922678841 417542378 893687089 204487068 812510550 184838321 166400168 266818283 300172054 223251358 813456474 907863350 98449685 138943725 396532346 600231900 231277053 383551872 243461419 146168499 917691032 747886670 427365338 855405614 938685245 729441622 289721977 117743880 45142417 477910887 594747436 339262419 403536950 383524098 297326169 897727887 381131490 93607389 734179143 341592982 881296661 253810283 542045096 799063454 876390047 836805669 56127492 625663202 936229031 226286402 885641987 181388141 699869275 926439596 723478666 721208389 652151748 325549777 193113012 638047477 895874729 409331549 158351197 571967577 792740388 97282123 226908678 362061694 263043478 5250068 713357487 46613145 919560057 204452839 826427300 389267298 35143703 481911334 541156524 36075413 437076659 582251881 604526417 534451599 641714331 831506983 254280526 506110492 924774585 172536327 31134651 714912171 874177407 313797570 232236098 188480484 887123164 802069571 829363438 831349143 13880070 844603422 723637918 381311359 43394910 202782003 533414254 606229922 118263181 12760378 76322687 269126467 847362937 246966836 100696469 430218168 191967228 655908354 171472160 365354894 797988914 170086560 605819637 526762265 425661671 34312104 513483346 422610330 737026578 70983075 153516595 154381781 40969313 816085827 342432632 216304658 129196111 539750417 508972812 225798970 640551708 495233476 236299399 536126326 225712420 499630578 814875436 304000887 147386363 843585435 572031354 124473756 929159531 367607255 521129142 188889542 946154952 607453398 670967491 370397742 240702078 777233385 129835246 357880249 950646732 861363004 982805789 551554093 259186944 825506964 424559173 74872556 299834538 55197216 195651954 712135359 28802704 517121089 484856458 968811001 48117506 486588788 41020124 599009111 286833478 233866270 889543328 495487534 722036452 50801370 83185851 605479552 155739652 195265187 222582310 787994656 411473926 709310307 947451291 191426454 488092258 970234164 90784070 84154127 74589921 218735952 78568952 443542785 398780375 531175839 28794474 234696040 141910943 844317815 324753929 56113624 374800634 958057813 693742116 629945871 922448600 794166651 315876019 472553166 510971878 40350692 859855648 321597543 559324573 380472028 620739745 491026967 626977567 439051492 637661924 507991501 292578402 371207229 541140639 766506833 248203311 784596102 731682837 519621305 795869499 353421642 169627590 423316707 703314889 297671150 573251803 913283246 861997950 884149394 860451238 62396959 903009303 894279401 130016909 173865208 618288057 327720269 398912358 967255883 998513081 532159234 157534721 868234909 548823552 724828901 921506589 848928231 222842994 199124741 309860686 596577837 893671648 234938378 335455625 4008332 226884826 710248301 535086450 674583362 210067980 42149898 203091557 649738227 67327584 247681261 568012988 694651362 415979731 461406989 319041183 677849573 215688617 677137132 271425908 77538046 771345166 432606983 468233879 795408325 139964209 530568585 473313003 342317170 997760150 790384745 666172005 142676670 758700726 25617363 193137249 870591262 159500583 181323124 745972177 771595013 639430432 681591750 750063425 644277444 309439155 589554971 371984312 591333684 357154282 121552993 608949204 91912889 498954964 371863165 487959172 662105281 214482116 276855556 357168457 222801091 687754212 446165819 412481793 892390560 718895814 647113036 325820703 434904187 431775444 744424018 287903469 143812070 213317028 913784991 832503112 834489077 557156023 978729010 689875865 7785390 89913532 717986171 271830494 879357156 510641427 853657957 201258557 76395795 35390189 651756110 294783485 862954743 808445243 126291886 844994658 811399369 751997481 788552922 766497893 794217050 837611599 370343636 886363278 750528365 292870185 402801507 641674776 693585886 14648689 777574041 384921747 184732368 739004274 227095161 711606618 684048303 318426568 780411380 469775632 783420735 236253608 868258744 255118176 274053716 795147852 977033832 141876391 899391211 655095873 706613927 82690026 472090578 426545525 484527884 740966519 355103432 568328725 30028417 18470613 485277496 963728640 630308510 394809543 363746709 217276492 122687983 702632912 610715297 874662980 441943089 196662133 196447432 803105506 972743739 716106296 233300283 694479202 770683847 251825402 516705697 672159084 919988016 197078091 955677090 563303167 184782862 407557622 789756566 302167789 797926941 416224871 758495175 259104149 787572550 176402382 867248821 457358599 864750402 598336745 388003167 682012884 707011291 220817834 946962347 31267506 349266270 804065377 49618267 483552402 686226872 192488403 490089140 239818596 576319961 986444095 557984375 561890335 494160656 832832753 244385389 843184854 336311639 846499828 789749442 992309208 373087588 287379097 638995290 469109535 931880772 585243710 186976852 556136546 273572956 925962200 398945828 10745888 850810081 279911061 940627225 37739148 651693842 121606203 368344958 153914803 689223044 874365562 288997795 480428083 756357340 389164051 491552941 504518219 503732353 674525538 259471838 180822601 800189903 579076132 684972922 40257177 626980523 57355373 976520572 16732949 250301076 481048426 683554661 412175999 482410358 811826072 717347388 808564313 264718884 301338568 667108697 968706168 755099307 136434268 688397677 944140657 888763966 729223002 139484449 518465378 493048717 495586493 54109951 729809927 672355522 814545352 490821985 297659118 872668923 733417387 299373730 83748269 865905390 626645198 721118788 801589571 199445500 649526282 104610363 715229793 60522468 48535266 409019264 435455960 928529711 778729769 798218538 821046156 13965354 271496526 281807806 757668450 931670730 436778427 460894748 606072177 842663790 273259088 788273519 190557493 389390096 941955016 921148309 524275563 742261833 49575975 709518573 208334478 507410634 145011671 61699470 79934790 533987166 865591916 701646190 980140655 587653275 646947606 511675918 502254604 512886812 981480958 187650352 550892298 303147201 161405430 569531167 813493789 926740505 459153067 842918198 572216184 200586739 451469 861465015 889986943 879992728 391395052 840815504 130513733 982888536 530268523 106845236 259354464 201484990 92441201 267209496 738473223 578286858 350358103 251575364 792114197 739592575 34332608 83499795 957854174 196623079 430613078 630787169 173218398 262967645 859279628 375303973 482906987 827189102 162677167 719146167 793682015 862994609 369596198 496476122 669977214 479749647 716401241 818325169 600718515 753254756 929356391 135477887 764033365 884181794 444281724 591117419 221739164 788722673 238645093 690916036 228703146 378652438 178083301 33348434 977556359 786529703 658442886 789687740 776851629 992900139 541310139 258455189 471370067 259250899 53097773 903671033 565475564 18186832 438977485 732424490 534720619 634748968 960773855 217895393 221968976 432842993 194663887 283169391 354128806 112266376 662466993 456803971 674362899 334541209 159888967 906487192 955733433 454894882 192016463 993549705 414631051 439693103 86228290 649485680 758765724 787386031 268468953 555245933 151395751 256911755 651886312 473228586 566200213 941918737 313989225 103527513 217601833 176913976 808039826 108084552 204212844 260176082 30426803 460726152 970396062 899822992 558863807 975575999 218362050 853794286 408819828 324447330 744047470 982254193 633913986 848397417 900119007 355577407 746653945 632893372 401280743 724165337 361673616 484293685 538054446 372737334 857083 696541746 869236022 904817730 437059969 277750393 158840464 520926059 849703042 975093787 471496688 668552158 708441060 935901206 148086489 461353482 154175477 739164021 821886504 791800586 44295875 467220226 527695121 348664405 507988695 659491764 97435658 771435717 312132366 128905604 903861589 984404121 953477898 890823615 339486035 172331102 222184612 26663829 600918532 510806792 473113617 180842103 297013580 232464747 485113735 977156411 794962837 752746747 247822710 317897775 482733113 117463762 124270087 104343363 53950319 515669803 489035451 427136867 744741383 352546797 897225828 460746980 242898004 907091870 125889255 993251399 382787577 66331873 1595883 226603151 440545645 981794772 646899234 891088160 289473055 343987366 836099660 88188494 429061844 426178012 973093349 11904329 354444521 834772433 815529362 961037879 57565482 416247335 759423169 710558742 193552543 305544231 960427488 835675800 259028734 490878822 127378129 594713676 350121049 575570506 401139823 150669383 591667091 906296983 547659999 648351911 360832596 259792729 674579373 983087038 114750782 907290032 733748703 799750833 829883448 504231284 637614584 437452547 948182903 447586381 205046820 195746360 221103686 756220874 724936836 385671387 114761097 978591949 860390487 937542218 684209117 751505322 347164192 291484802 133689586 693744140 877127873 999998669 387924792 259376376 731790964 646435124 134093639 354956522 375579094 274840198 797479474 802394752 221287865 516314574 959238924 288472411 682451387 268895972 787803278 999287754 608666404 884332769 526438242 390372440 548450764 90933064 328678810 133136577 69512987 980339852 832020088 394070599 199126752 278676322 896796838 886554195 756316550 248395225 448942028 276179086 142312498 543810204 623331699 251801172 191792909 391880814 39787282 761902981 520449295 181928224 391604729 569037612 403882618 766050029 364560333 493728159 28237757 317450136 331184053 357922222 947107475 931472164 47554125 637398150 1633421 98564873 998840766 861722236 494091980 800419596 16296744 35433007 666906555 335406098 601020221 542545358 97979370 132829281 568207773 655223210 223102983 556276192 546522312 222230212 963231393 584045398 42281818 453959867 487814126 270535866 287347768 915860260 852040716 512170690 916728277 279143353 90070406 847487877 192842442 865593616 210406672 388694829 937566357 698593141 416868216 8351951 181834772 574621102 729309440 259867112 422628572 721891056 821551910 59830250 571823619 682010837 297769309 525812927 441220176 426364297 546595925 232114753 859391329 564368689 531458244 381812483 99589022 234278755 635193641 249492547 821007137 992658632 248144510 187457041 730056313 723142557 948768966 391661325 650293693 270464354 871471887 586449741 620595645 462239758 166432028 10720628 787784297 712504987 801432966 696962356 586908336 702552106 101302050 992545335 963520336 932826959 894776051 791835201 779237025 920360474 286357781 867279663 291493809 258317502 175058997 560577899 259727412 410683470 39381715 148458030 795885866 545744461 505478983 331710840 693645883 877175851 336611444 630987068 653339604 420223988 336384935 348257392 760527656 390868029 430431824 807877443 231669116 424838846 686068833 473759637 304675911 124977170 745513096 346740806 202021506 357268933 987120861 606652285 16386924 834403398 95596262 391396698 859913933 1452405 624520792 377000665 517069746 241840959 207572178 971088878 940512948 472074021 670246606 141401616 603768999 102175078 599338464 305651954 234974010 854964729 648433829 497652286 283092884 45010399 981998235 93222398 956219707 530162657 707835964 815309623 53099063 960645382 767919157 552558141 854982218 156125132 771620342 767334947 306331257 414631217 231729024 226869820 225151675 181481705 82969742 848797391 203884636 934537576 210166725 426204290 821895171 599035025 334647695 886560705 243359094 218097158 90582480 625602613 325599393 997057736 889186874 619834536 461075099 896638582 280943204 620334663 273051198 741872920 890009802 469779538 318152069 182117740 380494438 529889870 657302758 115796916 604787718 392862116 826721499 156835764 288826751 142270405 694098456 404977471 157617494 68214429 877529443 294035954 992538904 908886081 329486787 882821082 81575957 657850435 506047243 735082365 15464159 354678862 812346748 717498118 440117476 854174639 686828518 603772754 284389053 658516505 761931777 950833819 569464850 675646508 377345250 228853226 455005066 370169170 928191866 927761750 387596269 688221917 117372847 83345953 58925114 164270065 427013885 231505037 771236647 892226245 579383270 774941861 532918441 363090100 148123077 854495188 670292556 737317682 96088687 490263136 574209102 620013292 815396360 38189173 692062282 326481709 238204955 696284705 970897499 610347698 19872116 51851979 549076921 350095367 122977227 629720597 160873473 934481778 690367204 587474902 660484361 658662263 496533996 709815853 623085731 902257334 998626913 371434795 876319518 95192058 775378671 842543979 104552105 77791172 498270479 280000720 598890096 42159392 46916054 777585580 461599965 534656551 130745400 632826887 525369880 337941727 421833436 306876747 336159608 138355362 171191978 470284189 362223090 387319044 509626933 560659479 954576463 934923116 144859831 884251378 244957853 476227599 3635518 993817958 363712786 412369800 241339341 549721535 556336721 457023764 76933444 174452050 465484621 342962526 974957451 217716396 79602623 174014626 387773366 233982053 616900758 90577513 495827463 789126820 114450226 540086582 983673885 748234453 634892150 198075622 263864897 148436301 468858775 52341604 573518173 426402740 935893439 754069268 380693379 867072848 868901103 108389822 158074292 306520926 314364771 451506101 679835078 347199070 775664007 420876603 668410351 305601106 598330295 126003508 124550675 725768492 576946666 348814490 619233826 228871201 841063680 653249428 238763291 996149558 358767609 78404861 741177843 706190106 154932701 561026229 996854033 91614307 155753503 422783986 287529727 386013453 349384310 608340121 590840087 595685277 510290373 427391484 778599656 43301466 286787588 69154511 504121554 543909544 670144874 831759607 201748925 952908651 950333546 608986998 862116348 269594344 79918464 279456276 905010920 806563879 679109225 671440435 138413033 810679464 190623510 616111797 429950186 774341811 889603328 994862572 467658489 34560705 759666840 785482656 391712121 144483519 798683321 398095036 83499367 523111322 225605825 33893670 402154595 270330692 22014674 308966053 838976989 920970611 794750182 54274236 924961412 20940354 519545479 879957770 379901587 184769638 694548763 425500629 563820317 60473615 20455455 941930273 7096040 51956025 82760921 52820074 992584202 428109164 121328136 605063173 987839358 902168619 498263007 611853590 592492473 778119567 441885800 960600673 873314028 411322414 506715892 285612987 568368762 69775408 742542926 712097198 561184187 145265288 302303878 917527293 161308961 554607108 342906692 407231895 826741221 258135149 172557115 474976653 765394573 677922483 157652005 367236550 429373137 20295430 46662551 88841260 211885954 942904830 290703389 994836755 81755686 812456904 662678485 577740812 39895450 575970842 4036542 541202494 379754978 984726894 581240336 470045944 651700479 731029127 336582872 406422061 232063959 747128042 854499242 925576390 729600078 51945326 853440717 961821319 235258673 671676012 897870847 183797452 28143882 314274858 636401423 167049874 312648127 30731858 46299023 746507739 381131614 52647536 770088981 655342729 301279368 191196347 818549810 890141215 551243241 355586212 165885402 198927448 339758130 969956788 912339898 702950918 25224700 676290559 306450706 416837750 376484656 102767760 245666825 253501253 511882274 236113705 17835664 883255990 760770680 509885265 548573577 433812750 560107353 837490775 148602345 875767984 892713719 290091441 558127378 921907763 217128431 631693878 338293754 549320884 116023876 744418984 390611285 745176953 761480911 645892698 851375326 544796959 639669109 825489641 544112576 733416498 744727409 897494187 866142118 905221880 39512210 145553976 100601073 726947325 77483829 277182043 989869053 798501132 679770784 593156359 224649889 71447828 484933761 39400465 885538823 117820042 398477114 173497282 551546956 7189621 442530869 676625399 750911754 434371168 977284321 122576398 167371338 207740954 39620442 308036358 630745694 320343324 643231714 332364134 66986905 532222540 98213636 517450319 509161056 320288052 772309567 192730370 281711937 828507158 676189777 583373836 336811882 793728386 637359062 812711576 625798574 27296506 466578944 740183327 11408657 610741780 46135449 387149917 466759374 662939903 390865996 466881162 536871705 721256659 898945813 855285148 358865294 161921167 100047433 136014993 651289320 677917487 85885278 958750289 404483030 79519577 219087623 635867195 746611449 606218831 751652116 547989112 196975226 159150858 879930223 629462166 460212801 938814201 111741046 604245571 840199078 834500883 75507651 139060472 985809487 308595823 503041964 808049658 446160420 407387736 575771906 615186168 326254787 191225213 669245138 169116787 63201308 222445860 344234496 998749802 590624026 551461784 384219482 21622026 592423801 944211318 118082029 510628335 34204888 809106442 19436164 305796500 456362326 258983266 323158873 241720938 694535551 541889643 22620893 341997353 74001750 300392547 26858000 815485937 315505207 528925834 659864387 597007443 458180233 961773178 106378223 823594594 479287262 128995217 207450310 431623725 153539327 287101941 25279503 424161288 508438394 290204576 860033524 435822510 799936672 176039265 182696438 672230297 420070280 370546074 409778743 33949970 867289239 572019067 654939487 767594744 953430922 575374146 258609250 121038022 12900925 740891269 114175047 750100062 939048700 991070282 711091568 293329519 746541507 34803693 942812295 436266264 540239477 842679267 227682061 333458529 72951643 593387429 833621258 945557785 963088601 862665823 900868085 476231723 523614667 326842326 980397301 120020289 49009992 266633962 570148518 808712107 760999711 884045193 813546461 98008268 844105751 839555083 409430779 376565497 103690767 291953172 633488684 745768108 7043089 216029420 554430972 164218646 308077983 992649303 658283127 773817203 343817844 62813963 389402527 856977508 520038011 186233790 457900289 627638633 358430598 335873568 333717393 194744566 624474253 335350630 192807820 501771496 713526495 847476008 181660299 606023979 445130227 551848893 165681346 974294851 262406089 202951028 834492465 924017142 299653973 84458694 76317352 675936467 237751709 78607514 574274902 748225276 702072908 520212155 438257216 486197585 14265359 891792143 617792599 423341557 177449996 766559654 247651333 162181198 701826762 982046241 523128255 71441616 620230116 848243745 279851968 697622008 249428624 309099326 71054064 992913420 758902612 168354308 23981204 898834580 440253842 310409880 898711644 267209902 710801360 967531135 816960338 364711837 23674145 507498289 736564314 621345448 45956691 147827439 518427110 994647558 244323543 210162626 545966313 160100829 812336495 117720922 145346593 612496936 43973825 171556753 443368564 31698604 747576272 938900090 226930679 818775968 36793039 443694156 1571074 663383706 715797688 790520054 806213112 906731851 630585953 912589252 490202054 350981752 4165685 360979775 800655150 427810093 282635874 216117925 248289672 992352064 270265096 891951630 976566758 741469384 193924742 287663968 111731030 203225182 930121203 643680866 754053392 32482284 334182311 695686156 294797254 909540601 289200331 239198047 320115179 763568967 798372657 811510222 521824057 902423454 134257684 148482657 813637284 419650443 99295143 76491081 575400001 754518785 255357748 404018329 824387079 807132908 581781231 58141476 907744128 960090618 145383547 997741619 173611289 313459513 109854827 672660543 550503953 917840223 368936152 30711688 99587013 827201949 696890747 17413763 112911451 37966628 205799944 158011191 115337636 866331172 483906169 427547603 674167337 271508046 586997218 978003646 686740594 839416142 320608674 42419207 369541867 261948147 938119363 662567282 344820138 333702765 726082475 946850054 879696896 211042457 457489321 161133408 127429838 701350678 71193474 932638772 456218014 78664530 502593790 441465395 377616863 405965367 914904519 647383671 970224222 642617005 76217463 984107503 404079733 894974111 29008524 129206056 25467086 231173742 132332707 109114443 896857478 909076870 719206873 663520077 622635191 554321705 130085902 540354411 539661903 214975256 483655957 954984220 240141037 551946045 259826936 39469958 588434422 26586105 178649430 639721360 515156392 736453213 40052716 192991747 622046730 64978518 889465467 473891547 147412224 463888882 947975999 942882808 692777842 668450904 291648450 546899637 428860548 670422894 886928291 758884517 516215669 802169020 126618140 187380156 838297812 415922949 122910844 26194643 135227889 170525255 463359736 654630252 425651182 215014373 20914465 239920644 549643476 442374151 679076454 378293123 30143919 586182370 553713587 986431721 147417252 456407212 607640010 796271031 564355759 287686972 863105250 688718556 994874435 925178020 450745264 276122498 790489068 245326441 857630506 633248532 954464313 390252724 997665851 483699118 673025010 222112456 154591454 664736485 548223909 444802463 181331900 573209461 883626664 154313292 925984255 825744631 55343295 362495365 141854230 679334414 268665009 607808562 777929725 713380709 866110594 494205702 303320192 435680491 886557606 999582155 944596786 229494905 434059724 384637465 477453924 784882913 834534938 893684497 473787750 907988528 120458740 583093170 922324573 358435499 550854663 284699475 798193005 866044964 447889413 998962423 950212333 374846686 422947235 811022415 888165131 916614220 171549882 837139365 33093100 130013800 374092546 543565746 984003 254277101 332363144 923365741 343364723 404200258 233631830 163525549 18123975 738142517 195600948 271984171 994419208 400124293 825039993 572466001 45776292 820970503 349776720 434186497 673595588 172000203 580305372 806820006 108968104 2924404 296848273 546462404 111489097 60038296 388153072 412616804 929394270 686247360 578857644 623737040 542856224 915100238 551625927 61790700 304642517 429250524 931127253 318666988 381804351 80250189 650355313 626725832 862924831 720304638 872913056 817599042 530828583 424477187 464079487 890372087 513863876 85802198 364732534 84409417 23072544 352278721 804617192 20867441 288656206 974397896 218134771 970669291 434472322 836547150 384965144 802535605 40348362 931244087 802160172 90308810 256560698 491700750 894462977 617064313 958768368 982785960 232480326 423755764 557151128 893936431 808584476 628203075 226500147 203533518 71732906 194766334 406878427 799737807 760933996 612200062 436113474 352731118 559670348 997755145 38540378 551111889 466977419 645028051 545845934 124172622 555960456 415235075 140328853 888454934 167811712 335175618 721140936 677665331 747347397 981868531 421073760 893321886 302446309 214852911 137305125 966041938 794645595 20285504 659395527 601972411 386164978 196798769 654139142 777394192 346992670 955488467 194246606 608973805 521439492 428546534 588670526 323562325 320311151 518779086 824198492 246483554 642107320 228044663 259142936 508682423 816888747 325235317 559316841 430273043 757698466 564549286 504022861 771787168 602782182 877415915 99584604 740694804 378443961 720497012 604703706 39640592 668894261 511087097 219786974 21199093 884756618 257039090 732022386 471796277 131530177 64961660 759564160 356515985 72620544 446198944 489415107 613386419 256450240 140676274 398720455 583507228 125061559 303363209 167764547 929690925 646739204 591289871 451207565 429966507 3108793 366910757 574238752 180450161 167082921 351593295 103941997 814634798 155486774 810911238 484142789 406040378 34295245 555939809 738729437 487284400 748437749 124544815 76103305 183881625 691312685 453424370 424566542 691425718 920102878 184393405 404811858 929477799 305939657 350524874 156040309 913987997 122958811 942274324 24390166 527021864 722624136 640219866 527963272 125318745 440296485 877054054 759704887 215357669 600815620 882516626 368744909 108497690 237971682 914531078 943736033 150368802 38783873 943720085 359907063 729340789 641207888 959777130 686433555 124392090 875960534 74024055 266610117 562333454 264024075 223782447 918685230 200992776 21648534 580831455 895176346 229743426 164918476 484478831 585916367 156158290 316768999 230333336 492990708 663751930 716475977 156727214 548154049 29536874 639153422 947951215 526338542 29778067 200237830 291720737 67353778 906664670 253727735 841716255 305598540 925514473 22689040 763346433 725939185 478678622 326509576 30298350 453902357 580848202 732249387 184590074 577308151 420983391 71058267 880967572 268050124 625979641 826308430 441009823 677252332 457454474 582726274 555307339 334304091 580327699 44864158 280787681 298234496 166376927 768928596 945665553 185285564 245490355 60847224 14688333 319342172 418266519 897342543 94561759 480689864 240034012 810224369 524194230 348109681 985565806 629370008 762048240 655726736 568502774 108352470 766971213 748124898 898704935 341299960 854375117 464310928 626941153 985882969 921777083 622346205 829893308 573480938 971448189 539210057 103167689 172563110 355369224 713448843 402750865 331276532 456494466 246036078 387265278 817819254 37302204 137457461 10718620 371307711 746596355 257350885 353735015 218624431 467449858 872073625 580042690 837707082 688727258 516430805 349697160 222134028 657393062 463522220 310164878 426095063 848528889 449124459 141323535 837052320 71929762 170198764 340411212 785465992 258721149 979970202 717226536 586026554 683284480 465923757 555551244 427948456 472804272 385199356 516882299 102806704 604789539 537458143 178963048 899128566 465703034 760193650 557445604 761351357 881943463 331821497 82714266 828306535 657657752 105918577 960178646 696817512 813222488 511156117 932689049 826680696 21564277 382631316 907511712 234327327 618304202 65371096 157107481 841224241 480207943 872533094 794394540 8079068 305484556 420926589 989389767 627059853 2134683 828801262 621191305 762212736 365863050 211229111 878173980 697897955 191274984 381391516 524821417 86803584 778088645 508083118 522986114 299720801 79057812 711616725 958442674 975739455 898253974 105882472 91229676 282418580 268809971 693740635 893191810 864512315 726695508 549623514 372022732 121577015 442106622 963087121 109190569 794936714 238443489 697143789 959872480 384328856 517907888 400885142 517717167 69108126 683807193 139887031 346581582 36857691 360557071 124304631 490490442 507077015 700663601 527541937 366070398 745638748 512104977 46704524 103669927 752186473 150332262 438110185 596033651 736195026 147605419 674627457 673024392 249839018 394449044 406390388 693787166 97518738 300642426 366519190 310133123 515796273 997637553 478184432 942059179 553184000 723226838 348028963 125193288 516912849 8908146 600841219 84086295 50010559 101972942 262148355 733521017 306970287 514575793 291565060 28996665 539621308 335650176 446996097 265607657 911791790 27539369 426029222 171399424 802035079 207263652 556598716 174315565 953186862 928454876 86571981 357836141 463603319 510171419 436413389 868075416 907747192 463194550 435751114 673693234 909569387 374040847 561444190 266444690 708738714 808173083 589482711 763334313 694777519 166254451 859354195 33928306 786143883 869611096 342114763 868772535 158966796 844062179 856344390 657918447 307253971 275617388 495310164 109769323 25962020 489135480 929689972 834074898 550496743 742269563 173991203 61159158 309777532 380591681 640336781 463182586 265167805 97031101 344801959 302057211 585504432 124492011 766686369 104234471 568676288 432437019 418356909 917206372 783315136 571887970 927890382 670308412 476073771 429107551 439251232 787733642 837864100 417371508 580665385 362567986 662225169 544879131 815383781 286565239 576793211 677768807 477650653 50247454 254624823 482938539 614144870 498067547 147122587 682696437 558905990 43471583 995319566 107296368 481591439 342062924 594767470 295585033 131274581 858551469 535533436 8443782 64787940 349110239 363775762 505902327 404114471 26507309 861729222 321503314 821627043 255721134 145784087 810358252 298778662 971244462 161356577 976184164 501228214 772913786 231622014 951608748 300786541 587268395 998087785 504770634 51598539 970802543 640295418 77111138 454930179 925778253 823957469 909503889 864156729 764023181 505146961 407340242 402153454 796749446 166427949 487643466 45970906 325568920 699119365 688272484 638653877 228407347 273977521 482206069 209245447 643701443 961273353 515308905 743402691 402512419 511397948 994701402 996732114 756051345 349876900 676195996 518271661 416243181 199773938 359201913 256038879 80857521 937157437 90325840 300622489 373420049 286712349 32306790 986933399 327973007 771513283 323982956 375354991 305612529 723010812 522544505 111383732 616071107 775122409 550257820 958168123 483981250 144006236 601144524 142463266 636420877 696469104 745552597 63516102 745974528 262783854 587180449 106854895 441714718 20549222 534821522 836911060 78903448 339918065 252727010 909798966 955743185 49801434 129199122 580937 128892198 255701308 772440632 285579124 78283093 53133860 300008758 9263868 104994596 410455157 916322475 925109264 962624399 296466877 503771439 352783031 642979990 271630982 836113818 544851760 333915462 110374268 882208067 297025918 535846887 840422663 985817852 541934043 820088331 372288524 634747167 679479052 674820632 209916431 801320208 478721019 825269152 177985476 919406027 738927607 543098789 500018364 608625059 682952159 203740735 395310804 546130842 713972093 620860610 796779495 791281600 673371936 393418236 520769838 617565435 539921004 301056547 82099859 179864592 72467101 506099171 939020574 810876966 33366533 30309004 968646032 109493905 2565719 669341473 943792889 83814448 208102849 574700807 739544082 346605372 679691376 936529879 332504231 621137464 88114790 283149412 762526303 357234268 102400957 349907249 854272238 880791609 504911784 94903862 510787315 73775446 920757897 667192893 410290429 717207644 920238784 116469145 144553215 565379204 616299121 729618020 30996824 537477937 157021887 240628528 897638695 735950982 914979002 279861290 99016038 664029300 605647432 13484115 954425891 149183506 60727182 934434240 40376705 3141928 945765151 266327921 52611336 46270023 18239214 707085879 817490534 983887381 566012677 221492248 610562921 393550413 790993633 843205324 18224129 300731381 616108703 113478607 68095013 899162289 340524818 215051678 637103112 970234086 789357723 293518931 110394179 282829533 35217769 737688374 792604833 553072064 126125127 994741618 8115560 318285608 489324489 290232876 137649188 825371213 670870344 573794642 354485282 666610370 122995017 521541241 509753178 11568033 180306979 700777236 759927342 456343632 526652025 340020389 286457658 369410477 439951101 417184985 218825980 227321286 240938812 37326919 453216159 55567255 481279180 661934588 633186576 181036535 143323529 33832675 99958772 383461375 100265478 143210925 983790767 619379011 804281117 249250090 31638380 52175120 255916712 442000700 294503445 162560118 500326445 978382218 187454091 225026919 651246402 457034153 561782004 519491657 564161511 299231849 92626673 637729739 951706952 172990259 261848205 624789616 821048530 676290506 513681696 255567220 930274814 437116631 141031255 863109666 856788724 422339467 339596638 268748431 848188583 955499313 604309150 457439957 108561894 428332460 277291624 927893510 139183586 928713592 487078231 281418908 660293397 135868836 455967196 155545702 132887489 317221990 821516373 547943039 421653997 305180042 850861477 200839889 651568023 958153791 819805552 304130145 607069517 891932908 269635189 495669950 353130339 633115977 885622794 456154204 62558922 320300485 925693845 208749878 120397916 335457367 861851197 179902407 953082257 460609397 689616422 425729517 37229927 614343065 905494131 516366852 328185080 965533302 478675261 706775906 969513892 322053307 360601387 101217501 169458968 788737988 957183997 188292874 855814105 215427637 615260631 212387970 330935324 247506125 880314412 385803776 226874959 746400637 287568501 689078008 617630659 146394327 976745461 89348595 856065306 249870715 315499574 795569882 485613160 728162943 569177068 1027756 227005293 679038391 734292764 663380892 254662817 792691860 452448342 655277812 955274351 127696509 134514262 293228433 419922666 347988290 836004237 432841241 915810151 721916732 931755263 871550918 266265233 430491623 999310764 938251361 344297635 749180670 975924417 502037390 645828199 410201871 974231401 804111118 692454300 979986648 44191185 215192128 594236477 304076624 80813339 283714526 519926779 771553401 511578297 942444036 508685339 375907404 242789233 360108104 334689814 100816863 286953153 885883698 645552424 79968043 903387232 359895504 727594995 910727423 614053928 34854256 2638009 401329234 552691886 645400201 966859848 123659871 200977898 595198311 893038659 154786112 166337562 466416830 292869301 878590513 6764856 462402284 333106622 686648681 978147866 289079430 192867193 275650141 942407787 939730621 8427488 310525341 69571301 279558379 807882353 350844512 850494425 181806582 169657877 507088411 851117504 506391932 24828762 208416261 271251144 109655 563564222 84223885 701694504 729451717 253490231 540864611 613955422 681456404 642460037 714483101 93699783 100644943 76453269 869992041 983387820 506298974 102850057 116344479 829879797 974942588 964458496 811447215 689501130 276844457 608991569 424054278 144833344 312887707 263224972 928514393 884137108 46535288 570743894 134866194 126611748 560864933 330224706 731870818 780623026 261199134 679947793 167701147 603130571 440413008 19833574 853868133 697931364 300242761 332165438 27490818 583434668 23756523 543955839 543919965 358801351 309668882 920816466 62402239 22767259 639311385 115416570 711525049 842879404 971149150 203416149 944861867 173630898 516733137 967487443 715790643 4545771 677601992 861629663 89458529 434539186 600348695 564053239 228921696 749327621 16837388 971018595 216628167 752661305 519992458 222474188 652973436 553108077 881614044 453309665 960140667 165628086 492214418 947237985 221106377 21049776 514433311 348460572 813103385 174968515 270660934 16796670 502223011 14849529 21859795 427061484 853308438 923145744 119471434 463358523 62309283 592295521 965099183 564600096 383727044 498796665 427426164 833729249 43818176 827766105 870754642 753680206 107220124 465711875 308035107 546341172 353748482 203931199 772132673 517013145 336988003 397829356 682196320 626044294 614667609 336761766 264981271 807929167 451116157 651819434 475895768 50956840 416043565 759782719 733280453 567716304 242306011 835489789 245839570 330243716 732143126 502468909 981456490 814808629 896901131 986983271 421321789 906184733 887921253 560278597 430596420 403615309 639507013 337837611 844696006 103132231 614425868 758172499 435067123 785807795 380297544 928831174 920364472 867579536 724133354 613647813 487745374 567835652 880722742 703144608 370710125 283150319 428804352 764547986 386848183 609951457 289652483 52975268 764985029 599005163 912178325 347241782 593993346 269447077 666269312 792947757 13274494 918989520 456499392 459367236 95341304 980160560 255669238 975386789 156483744 303057797 82908784 453381727 63439732 180117240 197977471 377561233 413174872 506248125 316914120 498594704 897097047 340735388 558774887 982798085 23443329 777001287 124193417 563063342 483443311 967394718 360031789 640490397 931310073 213989983 591351171 281849092 142654979 786010784 279725358 570523477 593194534 567545327 283090224 306121007 603942279 129156720 702341661 777542323 852936595 199402631 925540950 406128369 947278790 209100571 490492017 639138909 905493229 313117711 293346258 396152525 313132354 656555414 693627954 391082621 316942650 680111933 24060805 175284104 598019735 629069541 608772023 801275799 505868788 636896486 875081251 694540362 315775900 469026780 940427171 956276336 20017001 604954048 814984901 858755269 672471289 534353342 458092323 57692368 862229 14686005 484078395 582844880 276081877 283646915 300482332 594455448 9437979 844439063 676539804 808765185 807517302 675500876 216597416 2572113 389172969 367822454 970527401 319664300 248273005 199002462 377691137 812011261 494269407 881098731 17800475 909776894 988942198 737073867 993370711 286823814 446867132 482078642 701662084 546623543 447254103 241029517 239317718 291895304 756046576 994689652 564503573 674387682 604902402 709676308 805058632 362691615 482056095 124163924 353245554 142965576 182536108 136877855 553352663 4882246 751834534 680406606 388844272 44515332 749792408 668138896 73565604 844310629 284963763 599433088 476077872 287137984 944048352 338588970 791868637 471461074 802889764 442895146 251167525 546546068 310368216 940853340 487145121 634301003 360022439 146100436 840923964 72031193 219324490 934231937 478894189 474866642 542073687 814615345 113455459 41661076 777003088 492938362 933810909 325889020 85750831 120553603 918883172 409317848 257864983 197802521 250626960 292720056 699025549 286669586 133215254 733810703 656028174 902397532 198731975 963037491 799273705 860477075 977585574 267785660 875644333 955573201 679695276 444886865 578621957 186098485 949871084 179948763 522313287 650350107 402622875 771527791 194579613 354191115 691025349 355621162 274486933 51502789 947457849 944410180 923327560 946430128 979997711 556892647 717271273 306575671 747231254 146635306 105710918 936999121 621872704 253081039 514379079 281475250 304752443 699849342 899816069 260078543 168066544 770878973 356168210 445793179 147466358 321734931 737966878 770216674 118181154 347090534 489434306 235661425 339342388 403320836 95528207 690998735 806416331 409196375 764382188 825226321 720819901 336935432 128903755 160106061 332599151 333792906 378363152 435606662 27732861 393913581 153743034 944763775 813962792 462327572 355111472 513640743 954665602 904165136 622458646 885762287 887640549 22063958 100044446 10978325 954835161 532102621 276751290 974945031 760281504 689023791 763485620 829104691 166208897 389652669 701325261 128006328 88914364 446040703 178062810 837173910 863947986 802018543 381635978 360544135 5822374 397327950 971226997 712320649 475623279 582575040 532110210 464141420 634900761 453438414 217379508 297846537 594156246 989930884 770578189 888208934 593345719 466144115 265913534 308378238 423725478 507137726 8007001 956917884 614230282 651634609 808957905 482026571 162396546 478784929 929064395 263885526 363387382 337365022 658980467 995685097 273597675 900863120 584706255 500899659 732999716 234567331 686456500 97138838 281619618 844114847 395812671 500316439 475840282 219279342 467841218 425755421 213949493 760548202 652324549 924116953 738354213 816928353 787649390 366339680 684318391 889032764 320948378 973697922 618836982 982315416 761708978 415786066 628294553 654825782 508026603 420638361 296017687 290378629 939291972 529877103 800661925 832265416 52909510 885437576 241655766 530271199 145737317 674736333 746538376 598144679 300084072 980597999 586310060 18066402 588788086 453843127 352553665 374894959 159292913 755656346 360903334 878279793 198516566 90850407 527322107 234759557 277820870 180099971 979842449 238095919 254722642 978308610 845849847 269763900 270528139 134980577 82708715 752782646 658319409 963957102 419128990 234951258 669183591 118918523 249136216 101761381 505562028 388347424 975185881 593433726 959887106 753989957 913816897 458600641 281544155 519869599 976085842 503767012 24445606 630350003 743130404 256797764 444040389 474372469 264130791 203703947 774268472 848711819 306919905 360147482 216269234 557271022 666957824 285605116 621667527 71535858 926008614 929137002 261757840 78790152 171511246 489612841 577539986 619742709 261503566 533637108 661622771 453096611 938260121 121712590 752400927 72057418 112841571 490568668 975265714 552797784 279982079 483030370 312089510 238124187 966717700 347600125 990957230 434195589 221983831 563009790 880582131 437616664 955202880 116182689 928033763 601124236 372225611 612780066 114809777 460116705 933355193 411611729 493377050 532007782 373578327 752766535 79093924 814574677 30730420 945066690 740763891 384604553 769609709 620633820 628900886 460095180 729935434 950862228 211325772 880098433 395074353 895270128 874740785 394491796 44324047 804427097 604377984 170586874 111633100 639215763 939483709 581528447 903457461 445534173 309603712 221943583 175085159 955889711 574117307 832301537 790547782 220768400 696246291 347070238 681685221 527903166 992813137 447267795 260752358 169242214 839108119 820046244 776168829 594592511 432016270 874172372 512196836 902953395 707687211 859063463 668000028 478315512 86890825 35127916 967075054 425405934 495485657 564147959 838572080 186629403 315739525 567593086 965382624 450127523 225412992 974569329 167913770 373185655 777725367 336012641 933204965 400506691 327793953 273423509 21859977 269965471 333089298 451764887 95216399 750802481 354522345 130043152 182888581 150442237 484291888 924138565 129229952 120840096 627238868 225892112 144127900 95195418 740538305 914398117 190686218 138948936 266447385 769762782 529602826 724083398 156127479 683677079 634638642 821896035 105479096 303418125 12014047 372575508 428008490 255032837 366720399 863642205 615571031 509039935 668835952 548585868 963384928 391016 148374177 581686539 811476726 783462492 420658560 771981527 834430324 327837313 356890095 692255913 322556970 402922754 948542043 739012868 306335653 714597745 288251356 423100757 212273642 5571829 631628719 961028509 415913118 378046874 91252082 971983641 658317722 40582258 922313256 157701225 409234647 943232732 133509739 169413504 472990834 878811640 329997420 399471075 861620248 719095850 345755295 990524467 805399371 448283131 353225281 133434254 688543688 954934986 547390493 95324400 508713904 1463020 557760099 664420156 496669868 268938215 199984747 284205969 492309775 174882027 539528929 783488868 599804696 499161049 244528192 558921344 987916901 815883976 664435973 703814407 247916738 867839409 740930425 929845563 436171374 154799896 976661242 987480989 676203029 684895748 558755583 906056650 824985582 956916662 542260534 832076929 26049676 522855029 899876547 704219161 42516104 470522244 256454817 8496632 812479683 16296572 134571106 469805296 287952833 575902240 369815884 103679940 593825145 502935023 619526368 672870525 423770342 814868806 195432938 830292582 14115270 86823767 288475191 36639724 327683436 493918170 532237218 439909154 86707269 919968799 670805957 492336961 521351132 625782009 217148445 154374801 813976088 94274640 872460976 433005812 253138915 204476842 848400441 652042949 998973814 113590850 413418210 365455590 377814331 20835001 395069724 479412540 55946846 490598364 684081091 247277338 263918738 642753389 161830074 670570831 554440357 864101357 641414089 367520275 701090890 877005837 44867888 431041545 265341190 905245954 306320657 467980235 676113068 756967112 337774050 109950370 920370116 740134616 188388514 260948946 925802367 430014283 675664004 515416216 242082240 401415229 531082279 681144330 621844573 458721749 548002568 152308245 646533398 908465871 647390429 485012820 343197570 915033860 163910771 685171818 928906146 419056343 716327779 305321438 327148194 943817590 582989003 499776642 760370166 91305200 997334436 57418971 462903060 640627516 717021091 358021928 648710813 275163672 649367154 281239929 846842905 351089874 807755944 342609504 56986016 162729794 744306853 614251557 268303630 23473771 895038349 49816094 16686152 536414676 782799019 810409588 718744954 563312467 118196180 239449904 888572626 992764216 779451586 581107357 156454794 836510096 475147780 763192236 815260201 723873805 431855304 839074231 486247957 268513708 727002787 177995758 695065054 335583222 866375073 163136267 854386109 158740591 222459174 821649452 115943993 184307321 521065173 708737961 585461441 661542117 881026131 35653539 152445993 205499923 608692415 541544862 930774127 594891400 269031739 878514728 370687408 441718649 433281876 30101945 58585548 60650161 890854151 166866537 437018600 650957052 40314411 783260783 116502771 736130156 619956954 695073343 235399717 956612082 539471613 763029694 370720512 387886521 80349835 431944404 860611666 522960111 75310893 605613550 905858646 193849951 203553335 961539035 388942382 328404526 4118643 531325610 806240944 469736867 967570980 770854198 466709875 637988568 835641810 49422842 470444583 131037579 593054395 245043528 191653044 622097005 769596596 965574642 844622061 530725569 205677905 66692025 685445759 662163273 226099191 371845461 702868916 461683699 913441434 940596182 672340891 496334090 67658878 638921130 618785154 447529234 863347393 816957740 63220056 553458948 617608244 209209051 185186593 510061884 652378443 828019534 819295024 814387911 496188549 580772828 242127198 377979487 568653993 73226200 895962329 208808972 723037426 787901757 143699659 947983017 422473014 195677397 810043899 952521937 579633915 824425680 981514908 581017095 972555610 813215793 36254868 35556496 563533240 195170174 629636323 962130512 66585360 375823261 180055905 715660812 41724241 777849272 352921227 943431134 360888905 32833694 993872710 339864257 77485396 323545308 182711528 482330915 788726848 875294171 192048751 244140452 88390646 501981397 63982486 926288316 793049253 707697469 740485433 801513178 631708554 750695739 263394423 905364062 416518293 41124967 168779262 410390509 361739431 946538878 126585185 15772686 921606738 927535381 786510363 45613470 557988990 916692932 832108749 838953053 657425050 535413055 297283792 174199858 801172701 874844286 123387521 57823562 667817806 528051212 785377402 175330367 925088353 281583536 989616965 956625665 50627062 100004726 792059082 643205640 475654434 551837997 269119749 666549594 422054925 928496809 429346310 163332438 75220519 16283107 392219531 893898589 217651331 556986706 348186773 24870224 657298898 371951186 789308332 29284564 806837582 618899337 486963810 608051938 326658435 901446301 707283581 33103328 769295940 530151129 967049405 297019303 17598153 641845294 5001726 726865942 949378911 702046103 599984525 52767594 661181832 84059551 638811590 579564333 544224530 983991808 256016774 458601233 580804115 270723956 497631588 897670460 846540888 164741591 918439233 776224861 667683925 740669089 238445819 290581011 470753223 756833683 319650936 377881125 523518211 349813046 83904879 546612112 527509767 238371301 582997243 792813836 885962044 570522086 373393681 832542326 649077792 38073292 341938821 425660005 79981621 835992868 411538283 341176892 191311618 860112300 398618297 563053590 550048921 796735889 847320535 311915657 669178812 670790610 840493467 749818906 639769205 151095492 53215500 629887218 131164183 544852425 257326014 527028084 664986536 40961026 917453790 929982134 965201404 927656280 757579430 97187842 552864563 234115501 61431155 584310886 746161584 492816382 524548695 36192933 869583471 937275700 507864972 533706619 300056420 473518432 326598056 335202481 209057293 984695033 814141656 70982994 419427092 858510041 743275863 964144890 498748056 142145713 795839024 6113880 787312696 85055057 30310434 668073276 480648115 497259334 603197713 388666241 736513420 929395073 498170940 140785410 766040307 363245420 988511435 543089751 371299058 953666645 785143630 361192436 572311086 794063492 548447953 109761979 434451368 354596911 777594098 256682958 368095352 750117035 575640696 694615450 855966163 837830964 781487097 9014847 262099259 250574522 417352174 581566841 649167231 321271955 604066163 851634623 452047702 820926376 124042579 604310517 209376437 613425323 400953362 858945920 606004605 958220842 772928972 503391923 502280611 653337333 146692260 624607834 12938039 435551374 614459507 95104588 914547775 330023640 246157529 25140993 382770967 708812874 197318084 81355736 592783632 325532078 349497080 683126826 422696055 191328934 81314071 433715825 293662039 140769154 912217797 783809213 229102160 489459032 313520364 953506117 916313756 460428234 789914950 774207636 940344615 669184358 249490639 858987932 950217393 175352122 541896221 236921733 268228776 596816722 854946790 235785705 957022659 635727938 176089074 164419406 32553749 976787722 349101267 371928262 498385890 703127317 115642340 928133114 218339920 164175365 976050264 962890386 537533694 783141264 493914657 141089559 111959999 738698903 353018001 256665850 400493729 79539826 281531817 964362104 335064262 985159745 8050425 325286169 607454541 805648683 224982799 274068041 903459262 639959148 586880374 185372304 145772214 732961950 497912274 30110795 423414599 162406883 949293364 248140723 164396247 319346337 309362028 2954569 316779854 410693583 382467364 115011820 846561749 555065552 154265464 667287329 877482804 637073806 41780367 894066676 346033339 280390059 886104546 538577606 384969882 484073216 799176945 1542217 155055511 728807525 559245628 155649490 529884739 957249351 981803995 220982986 253370564 310114731 206687381 653098785 852594882 900945155 157041140 322403262 96807193 77039528 934599313 311691486 251299459 14996001 422407706 409873831 408336073 419693131 533474476 238624762 950419518 613230417 982035752 735119417 96252192 919859656 161427232 587611294 627422116 362719184 413195430 873925140 325941425 595193835 635867701 62817468 990880258 406373491 21766855 39578658 762014067 712202557 371283894 524401624 670388784 228322647 918175918 333611070 450044320 269052347 518585336 386712669 462945954 401429196 280861133 288792512 473315010 444266233 633202978 837369477 673564835 745464799 924024380 848636452 356131221 965686900 402279737 27485703 91250988 909370280 366017404 16529852 863716248 268545877 948611444 567388167 517857078 770971008 317655298 230810186 673731162 296641618 953925268 9602255 397688352 692592821 452680740 784586605 415206943 842392697 58920589 280752162 408212885 389636938 169185613 323222323 489776103 178534496 701183180 735983449 887393467 934821723 756080290 940481438 760235054 231500830 99561877 753397803 536457764 117537877 390411041 684871963 48343748 553310477 872841362 995253105 664318918 146806193 320717584 706559284 751133387 720455925 377968825 956780718 859604003 75478860 718073747 312753259 316686253 221451511 441092087 28503137 242188206 534185077 992987078 117243050 503605277 491924275 679232418 981316400 434598309 673450514 504769299 906607159 18229397 430020463 845354374 42133023 912523073 316769174 386222856 405708320 794460957 290005649 356378101 205673613 549708283 191140646 302675585 927912714 215577979 753174922 166356294 119184784 270202514 587057529 740381478 861629015 493830111 145772894 517830215 463618006 717077322 565016364 23222980 866435405 558968159 417387349 396986236 525475446 948662126 765281811 237020735 662482319 500551662 19667690 703724051 877471545 721151820 393179501 330511441 547901696 132019357 626573902 677037629 517761649 488586262 989294951 948968955 354315097 96542576 933612532 217657145 520425086 411888667 418160135 48023877 29020835 161099485 901035293 703421542 367817008 595889960 681516059 545246547 707774544 753421382 363647336 933844454 563715068 928186444 172366570 750748549 780106416 950184446 828791306 158391850 913813525 958624520 978946767 491981932 541856219 78431247 58395624 937292044 334576726 286623787 385094837 398864943 477840190 5304935 154282813 35654074 88723349 792967954 661049926 623327629 54057402 463526429 731561055 645793734 851947117 776042974 482589899 255202929 315234008 285165747 436912572 27396360 399737652 488221946 622525012 299292707 509871593 689162242 752018004 555929265 849458429 353255279 79195686 278397821 718112393 403719602 9899380 998358626 948104007 591431638 65595669 193873687 368714665 936501565 889426966 72385237 528024210 23047231 640598045 39293600 666494556 4591316 80894203 338843732 971469383 367053076 115854446 506362803 303922793 811734090 973919820 8541718 877143689 998702755 647433140 984210993 10076365 621774157 933450694 59467611 739877636 689995016 184588862 42943886 739490716 32980390 699033900 574390861 567151500 808684382 185442542 291568074 708296344 264042559 664551064 949642127 335863275 980996925 251534781 462816046 10382105 783394268 177809201 862241974 776260399 906593397 75474395 882693952 689934370 526937194 545532605 242813493 987973614 92707043 736044532 628296747 300174557 342105997 812546252 854765733 608687630 581566304 296619889 343468110 713079976 466329418 669609979 105049626 779324350 610540787 22433760 929074391 404431005 174569321 684767113 433586439 190017583 327202861 521071751 80826074 911878970 985850725 569085380 927093022 801278626 609526343 938280416 383872790 279736510 915344103 110584215 388273999 262006402 497239682 78670968 609990924 988300751 216948443 154642431 601332637 799148885 851273698 410120355 53470845 212950758 596030638 403497565 858935682 976198580 83174031 914571907 957367359 81568605 37530258 378057099 5469229 668524045 394360143 355852791 294008490 433716773 992079665 972846134 849084383 359792584 439843086 133695638 461547326 526911131 365874223 73698441 329318251 423290051 480849444 74534353 172219851 76149468 668415324 848625019 834647483 396526284 386806188 579204191 68024260 756700071 86390538 352212220 44621875 637788170 547961297 62975279 935306939 924043515 801796378 906957629 129149640 741482795 665802326 570156996 829184441 515509750 52438712 318734792 697682178 479346160 175908018 932025104 492794277 718859862 905438419 75424508 394249238 821465226 665297186 138779617 660316144 293868275 706132214 183004634 467832050 289443310 154408012 246410590 59565899 652313762 615759345 174085267 381451040 343872881 630954340 841224473 390845867 941446114 81968874 247640518 342081140 930486917 629490260 73536533 829548414 562503190 827560961 68352687 180412467 101091343 383434930 724762688 413461153 599539464 671390063 416516801 999229895 843437577 691357778 282022134 471386834 742667378 164672291 463651574 638042542 359879130 117369111 227680099 737396256 914758810 497490090 879098100 273129533 115281582 854586816 730134396 175572 783857237 159558336 861703145 766261426 284635172 569342121 15632802 12613595 794544800 162912452 912099713 234060972 987436695 861903754 806677362 441450692 76785285 377323980 142256603 282686219 268385654 502958379 680743288 552273927 406119320 154885065 538134914 98626619 200117371 526487855 561504945 457446873 406688829 227447532 217496578 382495029 632291219 158220429 466143488 72891286 583850754 972185425 570037320 966872281 262276027 19581799 337978009 800262553 866948090 585421470 445365460 516955818 927067852 662413799 579823911 360084312 396595104 31098856 349768322 912955218 451548352 378148646 325795240 602104448 44546626 329956670 908759235 405897759 411713313 547718497 926661103 969899383 271273933 704792748 548147437 252239314 820517274 617298753 992581051 750459887 2863396 660320776 871195213 102033442 17026013 250501112 562686124 111454644 967276676 792993425 160139501 991754494 144828350 383157504 562589571 242722733 187547242 867033639 97424304 61743051 939669301 553283772 276464940 34198688 784802386 502115791 240015799 640765049 649183725 700055265 53254933 639453067 518324858 998692423 497815434 109854300 733146534 144999403 356209652 753837524 473016215 855939006 291901513 853422052 462982409 794398956 412179154 233842379 672139638 756342812 843556468 67560806 364368301 403748204 425297162 630089479 743372117 185855466 832097199 570052751 495024337 189894056 158435580 930176642 597234100 815185857 945228459 134927322 69471791 916905499 659893621 997769387 761200193 106593671 989816392 336178189 613615319 596932308 334793981 47777997 532941569 280441049 664567442 414548821 519782181 794405424 489809382 855809552 891080997 190758453 960848222 377795729 509492385 65047790 361949693 850101906 222976887 461431734 925184398 389080316 657238832 977029757 84485693 531198971 881925845 512959398 442131875 761499072 457047167 212508737 663388135 816645614 961545945 983889050 858017137 895129180 697905067 125706287 856086901 673827013 735022429 350818042 583934887 719353446 931363408 62325087 765187090 725302251 132922659 319022407 659062073 75734123 217472261 728729083 933992036 392065039 289660933 222403938 883766876 145536961 746633049 998513069 468448401 100410304 766003148 430540553 708465280 972317658 83232783 579775529 618291805 664754723 412641686 30027211 832210686 570809740 646618132 405425065 172300082 888481576 530576648 812102481 876962071 892423018 693205121 607878879 439951523 596784082 522400911 265577092 458734678 260973664 44453914 462965698 226409433 322894470 416043722 941355589 455561728 10262505 528578560 298424056 223292088 965031027 864311286 795489571 781094282 143239157 185495992 752536340 963726962 234915184 546804840 931701256 76741397 476666770 919779768 261482180 161054433 541722772 605083961 287794553 849074357 883306345 895364847 537923957 99324894 717279952 892863120 219151152 233645594 466980363 702380773 494814387 586702843 909174944 4598902 901540367 662180218 599713523 245986891 680169489 439802791 369792951 574751053 921195347 357077909 94224048 282536480 583718894 275674412 244385533 810553017 9057084 80419969 142411039 608629976 427207582 401607121 793223202 673903516 518007665 278636000 328168742 690668649 953607821 906405588 550091260 318182187 18097378 19998847 121678703 897697924 713238657 256595125 853885833 184655386 310596812 194833456 210667079 460049690 745522760 337142148 225580234 61594967 66207422 596368545 246203084 925569054 450637682 354546839 194518971 415641666 231473633 721983832 280403062 987863237 495758354 271424406 699098880 640858843 564147247 421800652 78417923 423351163 907173170 528765503 379573829 215574953 767206544 790928859 396473513 54191545 641143495 63148788 517855999 691512087 853281647 710519795 451529364 694746623 901420520 125426547 474595402 382790685 824179004 708274575 756413861 912211468 299568049 938991223 398240623 415550160 395852330 168915707 965440405 426189140 352098340 613395831 175549287 613041679 511049689 737455789 995682801 929449123 167892675 560500076 716159472 657355840 47517019 449142888 82070140 834096258 603377575 444078319 107290221 317118402 690209246 874873628 141963721 629503207 896643071 44162267 877503285 645301246 677616595 242703966 360454839 926018604 943717096 520709255 813525061 801464788 17514266 266575850 265520499 813415958 504696089 382393173 300236721 806450285 874740941 700279343 165979712 820931291 393742853 429975333 330200618 531346649 356068539 314559550 773873256 432669911 891616190 246398401 165085096 237145405 297973352 729285139 237447135 151373406 160504042 469737864 688912304 119264265 216786919 48459575 520162054 740883810 806758179 690719023 907432212 596452573 135578462 258169211 183453192 951337313 611526727 673970850 211132652 529454284 737480545 998213437 232595581 705118264 438354287 550260387 562473797 343121835 223862932 985222573 525956174 886860807 725075630 388184638 146685354 186274460 94864037 493588189 73833649 74451444 634173949 229119221 82371462 818998030 653238384 488748679 620171474 77125549 826764046 148198929 320970992 138865393 308946690 674325327 256519330 854082828 185725290 355521459 173768139 562488795 583984802 513962147 54759679 589985411 486176877 666404298 629704866 671597552 249203983 274131261 724075794 25015880 62861498 684305460 206099771 840934942 770941801 204419823 327769625 386528294 742362244 652415991 703156590 905648077 37748730 842019750 381310126 641888543 587226054 605425769 481937892 894002665 395366135 582545044 598589792 248238070 462110910 337613680 3405344 348019644 215763082 619540303 728026177 825983881 731512094 861370142 995839143 842006419 792660792 727453145 428640126 310013714 103882025 63105728 724999561 151330249 766658194 988676350 443117199 306686860 179742747 820643941 876847181 814362254 426962363 876797300 931422517 141969906 631582022 699863716 802132640 95205288 549475768 376688621 542316970 990518353 414111251 844607148 264792317 838884458 902209210 810701506 909718789 734632834 81160409 846338627 811031220 693912160 475862341 771582176 111443082 126602155 17455322 111121641 860161085 773256857 220297532 321375694 49945325 330202982 699862991 247583810 31217796 765286 488341463 959331915 275060192 401909990 622279691 652434455 649461907 102744063 339710179 468396224 943553062 850022036 449635633 356783561 448589372 249035144 456644304 741520350 557522106 689786466 668469022 611277163 175822250 453195200 204984051 731343022 814459574 634762594 985406709 574620778 814331090 757555698 25395236 733417757 102366928 847934863 966679083 361736699 114195891 805570632 380429058 863484806 278011833 253185178 800850337 98076346 843302208 687212884 159691585 827633920 901990323 688908338 107693654 371871239 587247071 433142147 957810841 822608546 334671254 167438998 325854202 609310534 525059250 600803436 557454142 508619756 189291454 249082521 569178024 11206017 615457238 159453388 760133977 85857321 870356947 581517489 249381915 654450458 822655607 960341841 523568740 569935138 767494091 476141874 89726188 196348377 318676453 167675035 984713516 613284181 911988547 384919403 770932151 522241913 329178488 57893581 750739447 179803581 727944083 565741296 847953592 732655150 956735731 50917790 237754500 450759333 310076952 724520314 878022660 208475336 258592393 198013752 498529423 537039874 374274505 479728240 257413647 493239239 661897455 673870936 967246911 689183793 801922477 595718858 417973013 717773620 704578321 135071199 321012523 941411599 517592065 640021865 397131206 673548436 644865686 96691059 158330921 126945724 863322669 382254441 990864514 982175503 749676262 133656298 513188962 241148173 255962016 135738411 99770435 855550702 482755909 624172968 34891841 916048207 647163398 277381684 285868163 397687440 696851273 913586344 418283140 271719301 670206367 418558822 928617820 888346259 426140081 859958630 488351465 427030221 547711121 578555499 669679050 349927964 183389556 156601085 525977566 220348867 824127326 178123740 124549594 185912820 586535940 198808807 332887272 673242529 821593443 37751275 381186167 175858100 438817930 335677045 524205742 593002792 836369501 538085184 572719828 688492949 921405786 453110695 19743763 852290752 850791567 292815417 701463412 741890812 227903493 905761222 383811729 590269954 689682296 493578295 174654094 739873697 691409010 954043846 631684579 410327234 403516410 947089125 151597284 679362490 273580145 772062066 337670382 522534114 763266929 558004767 989197587 751024085 202751728 626184127 857921994 135601614 626805396 531350168 133575508 704785302 921312800 322390905 888816450 710840521 394326558 127140673 591585184 807552885 342241927 790711398 198266554 577323820 487449616 959646660 393006683 18530203 814805774 182406249 732305342 12459622 805994857 541435530 574405261 523571364 207288924 110947634 440398931 786979756 865634205 92488677 205259221 284681775 327130285 254793622 25394284 315333937 793773742 152305322 356993770 717099068 662957437 926421163 123153221 331352623 88895039 779404187 341748875 215294639 925733121 607379317 662613055 831395045 666879103 596598654 360200676 5973344 932556270 605379696 537726358 326977052 510975839 792967398 58310136 585548798 691278703 720968782 723495552 317961618 227014630 839478065 760632027 251289270 933362158 42656690 361414401 185391752 932215982 131334630 353211370 393706804 268834275 68242584 874364483 428269782 418095900 406463778 815161254 638809358 709903679 465803869 732151654 9151994 853844309 436564362 374687864 964177296 394422015 774829090 521541737 299943399 495874357 588858704 837324796 555052928 511896081 714333747 658519904 473388055 579060668 486542533 462917749 315532386 564593588 676650314 213273468 373509828 912416890 501478541 798870520 104821175 553644393 640343374 18669591 341580885 53413313 77079770 343673505 764125819 511446186 687590458 37863898 323439985 390015801 201371390 117909748 555488259 693743058 667103981 258453108 174798606 49463006 155064392 980828829 492068735 459039273 673450151 337243139 285322932 547241459 933993440 931322177 107993681 766439266 801119073 939650615 62775232 298953272 29504405 790582721 581305759 562157465 638666771 513893913 652948216 37718413 627335881 637973845 859480556 796276815 676776657 616379964 578502324 575506844 70059 542244314 925435656 907953128 142111773 746831982 10780869 480748801 882506576 418785077 175001279 76841322 748818378 973233708 772128367 78810326 907758468 587371096 807722202 520893374 578280128 905278327 66755712 156480246 258064300 61190221 505953365 330561482 187107902 90380673 612557070 105006595 729179874 400253129 25923355 38316896 415617431 722217148 272834759 106637265 574987931 69265429 356740470 881786949 158127020 655741214 77540982 30231763 176987304 182465346 607678380 46762733 701436233 50520062 926966190 967347843 644443441 832721160 971773227 26492981 10145432 795769949 746893954 83284326 483838216 56101567 909865244 764283165 445951405 935556443 420513610 861580501 953184329 717098995 778895134 905823558 880183266 925606638 156498491 158809774 539607113 706274983 59191237 240365583 601728259 420535846 288384643 495335371 492641631 449178511 272161526 210413293 167374714 705126747 540986421 394349526 95033934 397998472 386397281 501106276 19444102 18756503 445609104 62677212 555933634 807624999 389374593 902811195 821927813 104857649 714507618 525031973 539332483 301726626 224196225 866960519 882779344 145446617 977105919 318703558 980928452 367189250 455152699 810499110 111247364 430594120 510023054 843344374 546805380 155254228 755499016 636820557 957678507 836737055 554865774 605758502 17535023 843662822 499889026 599260571 398264391 157629000 426915370 837253042 493672224 7253683 449794483 499751057 792515159 396384412 390044309 297995292 981210259 90070473 554508635 267014723 844515909 116583318 631177231 146072190 261499877 836040765 737284410 839411134 574558579 444644302 50184843 840394921 290415441 758510407 637633158 459417295 477638880 216635900 369668797 924887426 100495104 191539342 860814925 732952475 951827923 64416394 849915569 35061919 944353920 866023094 233871274 396012865 301794863 163255163 546245574 519567948 507044563 785254177 576509620 103249506 513131181 955979660 186130503 851638190 507476090 215387902 558999201 53379251 964967780 682480117 854048782 371103537 961119712 638720373 42924170 709982626 692251950 804199738 125704299 764397571 597065389 529473803 687166851 297704743 559975903 122921803 767388903 340328731 628593484 241306929 946105579 488015124 187231263 783025498 363999726 291760379 745014199 442595291 802956581 930923073 649162987 986738480 397107321 63115736 287900883 953170477 823617207 130482502 504513641 64663744 673252284 384209300 317681587 809558710 778306928 152580027 950456986 162083238 153806158 43565900 713066537 370822313 445883955 183811859 622188321 864310549 53716248 886426794 505073813 508021370 141360612 548340722 487276087 729624023 59159421 261468101 782757971 32839682 128593354 618997625 320303265 82024908 622707665 582800847 601608824 976768874 545631755 627166214 617787764 186542422 81190790 218268050 981720646 692591818 68913052 75303966 734745389 444521371 574194519 111556698 86638467 856508264 680082823 711761271 947314128 292763669 787922829 159429094 294207696 714604341 351883804 164412962 82981506 291087051 35611670 602886515 260598263 472918206 348650239 293683573 745716876 224064142 403670233 227952669 188517858 68167923 440570543 938787950 467783410 167100674 160532009 171883519 598033425 121464057 751261170 403983061 749226265 526864925 401959444 279050223 447179436 282122751 461382990 364785550 635206515 432826766 178450072 779700262 100589587 969053034 123451552 981639523 6089050 889303027 124578791 750379480 557967542 473284217 571543165 277531357 600368732 16340290 328132669 418678144 525918029 64231149 150695125 940061732 601850899 124814037 183290895 371260847 687606369 775822888 845038886 193648005 826060595 170224581 352028890 938351451 986030469 506930514 753201536 968984840 34020918 370874556 636841743 240625966 361653450 219376159 390233190 383438020 479280993 975747093 26421680 185666841 536727641 797882638 392377777 496888369 39824157 70222130 112460070 437601801 378679188 7940577 307714665 595996052 415207445 708196492 921409629 61211591 77442368 137041099 690429562 814603971 549634880 557736063 996241744 196529147 403093668 312425078 484483424 255519194 864773928 552174977 554264997 194722480 14215072 802104257 509970516 678865681 413490626 100517864 405211233 680893291 88798864 840420754 417351929 638484235 370439387 86846042 859093273 700451365 320188151 605649943 473770957 78571198 921671815 968802979 922960269 177110078 44584360 178375620 554829229 885611442 553010532 447624965 499848627 827111360 522801925 430653127 32390250 627754702 800651575 999889381 315643123 53267370 401570937 461990985 996969157 275366289 364391779 630617852 371620687 288459009 170708211 633679209 164099451 725735838 108446805 578499793 784485627 526870310 955392116 921730841 541064970 530286829 329619769 420939587 795096748 345634612 453018136 820207381 294723284 830578728 266751749 973449588 682525582 586663177 171188391 168595604 497547009 244521787 715722651 525996008 892689213 100387367 809533739 686116703 23074497 474528119 971222999 147218813 223794376 848757058 480821727 216594370 438849921 995971233 622161300 237592791 276258888 151016833 3255559 905225839 449448581 465181899 139474897 812540119 539337906 634338341 687386513 58749212 813763323 980773279 642406545 229042583 414621833 950751238 632463566 84594931 388252607 817334474 679585571 399389388 269960560 825181868 891778193 17156865 512585981 373840953 989739815 258418797 535929392 989845679 125159587 949063945 626326490 878001279 309282449 426585721 31454729 253169500 44354528 406784944 826772377 110332427 693783402 479529249 671477344 517709346 720244000 851027980 887751386 966880678 38996079 813730657 598188554 466496335 461626825 875751473 757053167 590775437 119569010 614090081 471424441 744831125 229547416 937579386 972438623 727839478 420088510 659337721 860264614 421207521 841423868 347831856 425440952 187941661 610468661 21931489 701328595 62337946 684975215 57103138 914133522 673329343 943581069 80388349 346689074 967072888 909613939 173913479 112712812 306727360 664749203 633823738 904291742 43439712 459542836 687171349 899608241 657524922 408283609 45252340 508978486 866290571 629764118 800458825 198098975 836836239 89953520 31933459 744201377 636022975 783631188 664558430 504822976 757531621 509564844 48358228 963051237 611488961 849181805 225918948 138665599 368896280 45736772 445860666 176323237 208028014 993130875 37724231 513134078 515283344 122339031 14235409 810321954 22197149 24112209 983960388 104248448 63613020 670765427 984451899 13525885 802419126 278431159 484930245 454169261 331230267 4014360 810425927 29669347 162463877 633396675 494881786 213662469 781200775 713624412 166589993 385133806 202528103 231557069 188087750 16780782 76537769 441045405 313904114 6764805 139072690 154356659 119484440 701966445 464710929 949916396 266042704 550713804 73165937 640943195 998236183 878269978 210044670 295453809 648375767 641380909 905565535 310327682 669784019 871584655 484579610 234781499 790003413 704393179 837160049 858051134 224928445 632131681 888519428 581894841 464258145 951314709 873506761 682293299 45837306 660137160 905503677 914196540 487386994 916360288 860414164 954758330 917012140 851705168 442025045 356522555 314695324 767017538 853327076 20010325 122315896 212146372 187026332 699266105 72303249 444936765 619660542 79831257 663872268 189390802 207868726 602214844 940500366 673659945 83930910 54224405 234944458 226403786 505841306 118644830 246855006 990245740 203875500 867277183 690887306 358156759 392501982 657138584 570054713 909363614 539609688 367742764 491193675 439118251 871493703 1605913 505006143 157337315 931253486 511275843 364474905 598078508 642514584 701269788 895639722 316989823 299688965 383264201 504532194 695359647 969270272 618987540 203397467 513697509 336879943 917565862 791399060 293119604 151567332 511097875 763552040 989229915 421517910 902033914 211616207 834267340 330514889 583063563 743628925 650884298 347006668 517167630 286338374 372699724 165068273 138236088 78548550 415063072 190651133 180281017 149443916 344837626 90445609 512747957 708541727 888683241 774926118 894524550 204169953 436400640 989122244 144875014 879895459 415698028 746328896 901981355 562945553 847673753 467346187 788027745 45298517 784296539 226459268 882487210 898028859 425650880 503867872 854165898 921090212 917721916 678513904 453409545 92932653 415349948 298204346 127326172 541067734 439215037 168650191 384854422 772367643 893167619 783464295 140884140 324159053 124572834 398735493 578114950 415769254 446590896 673585333 754327441 521085810 564949973 512661435 34586160 658156553 876844778 272649485 96072758 745279736 245274053 192094863 815667108 602991520 215910564 444587072 163892906 511887343 641616820 496898193 766448442 402315354 477554084 234543902 58438180 559020653 345897120 247309352 830599976 588632643 314899396 190358945 142826030 816852736 143752907 824570300 581271406 265464629 243930989 62721088 933458024 732579538 813546059 267574037 488534683 606244300 234763675 803192736 555751121 84244704 217384011 872878596 413071994 307205054 928642221 829379830 195943942 359335842 973097710 547506117 976616833 992510516 460291212 910464005 248435939 692579512 606686864 435248821 237462978 259581680 325984056 649086660 933554011 538897891 624282718 914973146 159668382 452942474 842878435 587720783 6184301 636187028 252037132 60359594 740045097 405607328 255765130 164381048 80115690 72764284 252132135 679798044 187158733 675635525 243823423 402613531 582486771 34117181 844617639 966148197 364938610 424514282 123752598 64295925 247292801 421049415 338148522 705532147 329107883 742728675 4446270 692353099 3156857 169636110 356908030 399055624 192326490 711402140 816199401 899858287 593105768 794232852 301496664 754274571 666039116 769928159 342807588 910481000 365577464 731008204 341602824 993796937 130920969 358856041 412321296 652633000 389854111 369799634 293705039 556802815 756208901 796474919 134299736 174145512 975805265 561239699 567913473 948147855 478630752 406464652 766041930 857647783 721198272 685558126 861172051 346443180 689088250 11367230 546369390 653292905 93087315 662862260 692648589 504867521 630627131 978015803 701075959 812917964 57469685 711486361 770531679 766921734 550889631 866757555 881946285 406526153 732164589 517220563 44990906 883796384 993642088 646357450 287004889 298496183 322729983 697530540 314995044 912293935 628904753 395200542 378027675 708634309 257737 25884155 760514919 666316017 948665945 736456334 886539864 819472687 60889333 830584891 838211157 247662775 856395946 291236803 293491990 280074724 107714792 175557277 518922939 846892157 782846195 700850008 80694459 820745831 73647509 249388988 959064961 434916247 701839138 432969263 79038365 603619776 31031963 235468458 453697683 600759607 766660099 356129779 229004266 540276544 125421281 49345318 705843480 776657646 465624969 380675438 56960678 483514126 737808221 663704366 682945071 991385990 241514476 471897329 722072635 330471899 943964485 476866532 752296363 783940797 137915310 65139863 206321232 706647490 998267437 851845837 664345986 369277424 835110951 826508657 280810037 879207254 794013974 147911141 402389584 449588724 492912065 359390147 148851814 494512550 748344297 222454812 634171767 783950260 82114127 319633700 694062592 857399772 721606812 198515643 765250682 576547554 895977550 660474485 572701502 242847801 454326949 923470526 733362710 443888069 411143242 249067787 620679484 957720106 164548717 247189987 118286540 431476337 180323590 781235160 667039129 351089231 956962811 539504695 884986527 405002093 588202017 928305902 158842764 579394989 359862453 931612505 737202533 202644692 49151221 618890761 17877740 687869 744503887 184066174 168318171 329537075 969528023 264142682 297633585 412006813 553047919 524526113 56434545 148020957 509170147 996903184 398325391 141340644 332537462 599422267 135083961 690792221 120617515 490124116 97523103 887275467 875465409 849525171 75367936 925588598 379653137 426719953 468965257 476887497 334535146 358881428 894838658 893103459 958640208 354643853 404127433 397780168 818322372 450819707 544511125 532323392 398293318 678657872 590154045 464124847 427379394 806522526 36449767 34167006 192804597 940754528 491550174 205491543 669926730 764231465 930636153 112651802 324994439 535501314 354885974 760589442 272573988 891830280 995394682 556591702 941232038 25423472 834080317 636087039 924741087 424017599 576381461 872061023 116228098 370268607 514102896 820488465 428358093 642195540 932949536 806220332 918111357 877673351 47144587 690184682 8734537 326985260 747047638 30936085 665816919 388741504 7482426 69423380 510032322 118163283 73867841 136617594 759819003 932915783 350659421 28156833 296423505 75432619 256776498 990259731 323807234 995403137 701056153 671393933 884242168 213889022 411592935 373132342 250250549 939820113 778502240 597880047 690416542 343059734 816170936 796951394 645522423 948862538 89341547 883289608 900362336 155068074 767649594 485784834 667406115 516887160 869358847 952974573 626830648 517173710 712805688 46288010 750345317 624230727 859555804 233872927 250126652 512466016 746347232 86452103 97045943 850555501 480486598 558588366 881433464 648463734 299553202 995429098 944459335 195602570 93463454 571141238 344229273 304636483 616169405 87535521 473273160 614604598 148617869 904808694 100925079 637246139 803783436 188931423 489036810 784268699 990284126 250745502 629072664 688960131 167677084 260706655 354451146 765305057 868989626 593007262 828575911 409589679 880626571 732777044 767571651 65312545 248084275 141384776 800559812 395020377 650758902 565711084 700933770 293208088 330503921 955666226 730885509 985736280 593418968 273674622 784628009 183981186 610248039 439068963 309549955 484432350 835378296 53495240 244654600 580046556 573560376 687488146 781887270 528382783 598244036 879357397 629586369 696084721 985917362 950671328 951965566 824362851 753384037 640954342 98684566 263862166 291592804 44128186 996650943 548097715 538702934 836079072 421740574 463871279 467636038 878941614 532884583 587864473 868440000 967668762 794003305 676684700 277097471 593188655 272978971 176396869 204658964 81510515 669417958 377529653 7503013 4896228 117032310 218875231 538741905 403916474 892181163 385543890 595687467 474274150 986495465 364853645 708378917 645797821 477304688 248684459 754141627 68003631 337861848 732774720 738150054 754388259 603904913 145245306 30384308 441945885 241885972 151917270 69241013 343486455 309331556 32880861 959723521 672281372 306688575 171385139 477982539 192589597 622411700 310709999 809119876 711778042 201630937 662358849 1101075 91327250 296126680 22726194 247074883 759000625 790241707 530660165 327782577 43119325 685288245 453308471 478267382 709093978 77462398 471359220 303424874 407631209 525776512 777321884 173726168 96975768 182061271 312125068 226856533 736413274 340602363 293663042 265555619 387147861 947561903 639599087 747338330 641494868 47111124 627411694 280621716 741245629 66589253 832071884 672800758 179955820 919644098 766174419 329261343 728300901 325715130 751412442 416162507 750701198 816822418 266691808 715439350 408680590 739365180 197436866 975041986 611660541 401823100 587625015 977349091 785674923 304972427 106377443 734047732 109531720 952659758 666856364 438807791 777289161 681693879 59810952 20869951 525995807 177168085 683752725 821461162 828135831 249562382 462385358 350132426 767940302 311322770 428796417 541856800 329681517 742275268 629045918 821088341 171006266 847763230 172694282 25616988 771129157 470093787 860656356 148269841 473191909 735606176 378273762 968612666 75387247 24304458 843319512 640028250 13415041 748627487 125124005 299638928 25690619 512151691 840827239 636583662 538013296 713508999 460715038 623781227 494400574 901955461 110358652 256975538 531326734 935364834 780764685 869176620 89027684 93885891 38572411 59932009 987136784 509786532 142672328 80226961 644864424 467558407 307795936 87872235 240860428 445220821 219995956 319762414 541127956 933527933 928226998 531674916 594387098 733826221 498033852 585079332 461246308 39143711 821448270 361034457 829189092 305174451 385386813 232908477 10229587 19715904 489889514 916345445 567836508 665317366 738705702 733944063 307177456 246690326 127188721 928827562 868555475 755753679 171285755 25516479 721977799 701588527 691788963 953056387 454865247 598371776 979266120 790323294 840754132 627242292 856213080 496558259 18327 398554527 33035196 895578237 405803636 867884763 151734307 977020613 411595628 919530273 848077745 691297272 354484946 924358907 371701296 150389457 627593615 690867039 238754777 883897282 396704409 411756679 732073817 500220004 776003436 510117037 581868667 398197105 701180280 137841398 943593813 697887691 868292646 684233430 535275061 461564854 530041367 414794407 443650717 872789363 473412536 984436143 9672126 36688638 785045666 831248111 240777912 403760610 248696269 413813175 949373438 714497799 979398151 875459415 233358628 468444702 297750422 240208258 381206217 930239827 972523820 915016270 351929303 453403719 533651606 882583017 513474321 328076342 395381728 312306699 43844875 661317491 465377534 763465615 301542160 360444231 158764757 765247331 143143392 691171120 443631831 710659602 268066915 510173422 50381115 662598106 297598330 915947723 726139037 675238700 185998693 628909005 897045174 838926954 186003326 654990418 977443787 906582476 346856658 203729806 492553312 822736551 435925298 272837538 921865216 12697977 28139222 505859486 404494908 25320172 460951047 593230733 613647435 820716189 398280650 829876449 298327398 292879472 29387588 27761540 967827104 109032171 519000011 982343252 885810054 391244405 848954157 459863699 558171104 920446768 37647818 755006507 149449526 915819740 553275822 112071205 354525327 153680952 610847987 616508420 473106687 88085254 819254481 364205733 684567170 304153997 180113926 470433728 166062341 152685354 91953324 728663173 560489498 579956121 600658115 151994627 615353759 224599178 287851396 574622257 487114674 689134406 729368923 189400803 779528140 642599234 613776788 651854087 767429515 488070400 469793786 614685224 705657732 590429801 108944100 21875525 921781667 585723710 566106434 305668010 110424709 682490392 936149212 482595466 779541423 483991352 397482498 784615495 826038733 144134689 430960669 820301800 900123479 937217939 67763474 410611488 642441753 769560719 689386234 492939909 37234421 225311429 429532412 918719513 13714782 780327378 310550755 3510939 361269893 467782317 150061722 445595838 456363360 681758786 43557411 811686231 220870508 693880715 402181080 267630863 368537803 448863774 973665508 507921694 995563726 647436067 617691711 93987928 553487732 707627111 70204990 267188954 746303519 76748483 746970084 568012656 222968160 523412897 677801476 414053022 973338897 468926082 523836489 106680134 885138862 829021756 352133606 371211913 84143890 832036844 463656323 785401403 678660791 420254517 394954479 362937431 487496875 582746624 682531150 863101510 431261568 751839512 477832451 128136823 148967124 285746642 776871070 606810765 514284551 386098350 140773147 160114919 354560055 881946407 464713269 74283308 429456304 854586654 594420922 72132276 848042846 914406341 846122092 210757874 126541533 413413699 740000471 496564951 637024393 37709336 110229475 155164245 800154707 827413295 916620434 504281516 309267235 103311972 792882647 149776640 483823274 583311027 116327538 144625216 696773135 290552252 513117023 311767353 460968683 599617293 617565690 741030385 7419541 398827185 679749282 896395876 696207036 347219256 74236033 779670757 60972029 243928776 124063813 627279369 464852879 769131337 785436300 527425963 338990845 417376999 694919765 586904970 129317686 634921298 847168318 344735168 937490901 239849422 492185223 127637837 17052907 96438401 27087755 260302141 163952340 765294960 279370524 369681928 592194149 89529260 194703511 59322245 537275130 892612020 796743468 527955087 864072011 235372231 678439228 313553070 18273851 844413061 884806530 427461991 76953472 562843575 880821814 917147976 171279636 775594672 188520292 518953018 959657371 676396087 9540126 40293871 300813804 315007799 281347053 915767224 829499801 610324460 401904390 608858564 991246990 850749583 595078632 721749251 682844943 521184419 960926926 994964454 460153715 394054954 891516362 550476021 985520722 829037440 455131712 208047479 107150952 982589378 609539021 957003478 616075507 152542397 56832557 759037809 893330662 927607501 82130583 43148261 508701418 435610820 453376547 49116216 496165029 247184112 976760947 504323618 886478396 191390876 858749356 547886955 898390422 534311108 759396484 806832343 622148650 930582287 721253587 337731174 866657721 766975749 507920312 96518861 389707453 32122794 937341605 546189618 663815673 783070016 645932112 499701996 260247272 667746796 481193867 772806523 449399924 323134218 275866675 783594647 494055890 511345170 430433594 457300289 259956039 15915726 635343943 829647791 512295638 706618978 19195444 50747254 335414210 940987044 53270670 762622871 112334734 16581853 879511351 620215661 706900587 864173324 774959854 343293206 350182723 819952165 264289262 965854561 814132738 70157981 992180458 49392814 459904151 795229844 509416495 79826245 960136426 609040139 363447949 419128637 325416510 745070419 851429353 21306518 498821727 925324326 325387603 976887844 357120705 221628608 927212760 634225229 686042953 133562492 473499954 337828686 238094880 649530105 514241570 798163816 353593588 748622117 377658469 581764133 13120073 115355224 259336359 580474721 891533741 536279363 196257645 318744707 16602562 825661434 886146228 814467529 614374404 73104910 603689237 949815085 176857 54188515 129513505 462260820 478614164 228232447 671176602 749938827 895853387 280982539 552953377 479488731 299269445 678959490 326912340 4470338 787862351 926696703 309781647 202686177 536311277 967562292 862448300 532333013 84167421 537806957 932615156 370652753 880479118 31725386 502071383 774042732 965621181 172944010 812247058 398450808 287191267 781598400 387844594 816436811 150787354 845685255 924248520 438044258 396992755 944481225 331046276 682458771 389560549 554236195 853798240 442336464 29773676 203445957 388305017 816635523 816289904 847983275 93186132 354327353 611285992 577902847 17000142 252125787 77195663 825865450 685229478 208967369 90757492 577938496 482914081 121664147 496429114 100963758 39316771 135592556 874513567 732551030 221763399 480445387 616935432 936682342 896735942 224320044 257654886 528996584 629431538 230692909 338312189 898847638 928760855 312143255 587550967 135235526 888182294 895302474 221852705 647429875 198028561 134382419 9269756 814123286 716302050 916728488 117912764 784909492 732187503 304664437 172076547 302460695 614449397 895251725 607617283 497901480 159651825 527468282 611669875 127383598 694968080 824127402 61198882 718315759 54241527 440346340 951812087 335934885 527807150 293722355 758251647 99736218 755718611 512762616 920665547 190886639 8708138 334584954 365285774 525984153 242073943 791651797 489951701 554010639 159737201 220091563 915319602 354643394 571726160 504935746 424040829 494958327 955345097 492392775 876912531 146382866 763523450 117770865 536256757 139591770 217543018 986327611 18429535 281062133 959685314 631005231 701301596 151832003 725682043 995491617 4141399 728618043 312818929 922271212 933763910 165886993 781443524 690468359 18584831 34208113 385946652 230569147 837402516 517136685 108306337 800740090 970030794 714995432 104153588 936392996 219130487 498016542 151028084 118472003 408037565 32793197 75903848 456546082 299228615 835867415 780991384 70828653 967548409 9910113 322861378 49052377 203735553 721211569 356128559 531883972 355126940 733147317 194717813 99316515 722862331 587319354 962799309 638590857 75718029 872089200 123640208 548896421 266612084 596755314 638174074 948296934 887654162 26723694 891422006 248451502 830996491 396941751 275322195 486324709 81802450 896629312 652224507 369480418 128887092 86975649 594408089 752111182 125369426 625565468 904199253 639777372 663451425 612405594 900642514 92944728 540787817 822400718 822573739 949157945 506945249 781106199 257312293 880909574 801340254 242071537 633479202 691206358 193516430 701049464 150635184 587604346 206793974 254405865 76591559 282356851 270941404 52760602 217785700 938123946 421147035 47969292 967899190 186207867 708522626 158611606 611079683 450606282 494354386 226894783 897583760 905930786 600030576 233286884 207349081 131411817 997799209 775850418 773866707 799536268 338974488 959008901 907155697 883315670 103327220 614892437 325136840 125454471 269564798 195289936 539679332 163522777 601841181 678931342 451483678 538511755 4922004 210579787 984450550 239639449 41967274 503084532 458762657 757276420 371915955 836756420 206035248 965280726 712620035 646585106 385236889 30479841 997734653 797722782 903313868 477670211 685401758 24045431 113809162 833252396 670716796 171570894 994234959 456059938 914715568 241062320 272090730 322223439 939229223 864825488 404784458 369525728 852266717 768848438 138094348 119570488 191995810 963666681 273975944 962831775 801427270 847593263 650361983 188001416 985090572 845875964 272693467 830204444 162702967 400177518 455898674 727370743 387609927 495125567 959907522 742142569 587751046 561045974 272485724 754163313 446552794 826493236 191108906 791443747 97420421 428350977 537583432 306520191 122696130 368303451 43754066 84706359 980435415 705478007 98632202 91012729 407148079 109724596 698997961 376733658 806998542 746972643 206551605 247616847 287419915 22551523 516766129 596046516 630153188 192199803 803362437 840750024 134273743 759723787 325034839 703443626 91969871 894702720 845431360 526130111 631834248 509054060 625932896 229943124 260665002 780852792 142420055 197147293 381619268 193540097 776515517 340911162 842096537 139382284 373165926 42911696 420135575 621323566 623850658 65918146 452466504 96549306 190280118 739672367 659325881 365717235 894615450 874027268 89370386 681779817 272542465 419631278 742445605 858120425 677803495 502669394 846599849 794544423 558724782 541285138 503543768 870192663 617786308 560009093 30600760 528402202 612379230 870323170 797955836 516871111 638178824 996265020 73090866 718300498 364476671 124048839 429908188 658862216 5665411 832238131 959746991 530323828 787047863 454019268 458827409 144242521 180039772 684340847 268712195 603832723 942316729 23695846 247665314 140071345 376555841 371085009 113204510 504882767 314367474 799922140 739737433 910749168 780554931 948584877 943432793 384462714 67341340 803788914 353523223 735004251 776354983 334446221 761466232 243714260 626958872 861723640 938649479 648019986 17150797 506073328 102432188 906282788 781511360 256387487 4158327 98086718 747235896 226570089 243423639 993799575 542118183 904911866 872640605 898864768 347651985 305491769 984536846 393072827 138689288 89060183 528763988 962674480 468568057 329437376 798730743 564810959 803122241 806499676 574881322 782832565 257268493 420747386 666987598 561202303 247358462 709998011 10690691 65591860 209271118 229565112 335679227 525770569 418763244 631953674 640960028 413250843 344072725 665697930 767281378 983898829 125662450 699060277 88246886 476311907 552307888 810357417 664394767 195927595 75091119 790916403 710845497 646257764 160687671 564849344 885261217 95167317 379846112 638071987 753438112 633777927 58689517 896381167 552424276 711953644 465390391 260666210 971941811 369435259 988748822 401870525 422773754 999467829 333034808 748415202 348398078 978519703 114614778 838637863 195018503 854592314 812220697 984632674 80298430 414786986 430638635 878511121 803486850 523019192 123867893 995615494 46481608 953910865 356173755 856724321 629460 25994122 137662220 566557744 119900447 284244529 709848148 591527006 359384589 782850488 903017329 122195331 902748340 848055298 659477213 265396177 827950465 886637349 110372684 121740425 667504392 244012358 253551110 30815909 610756844 282494174 18278442 420989335 570485775 378381743 191074627 974994616 540847035 160499866 989036378 68357148 881079564 929991916 747550623 106395016 418632881 103616133 886610801 28593802 342856662 322398532 847454450 46842101 847518206 987738221 392218888 402391485 866067815 877376470 679785310 718727922 959279803 212122862 330289675 452015841 78380160 472479168 653959137 637001168 147734902 297349008 79110983 281743301 449537204 456415205 657709257 649187734 848045839 975914923 417129558 667397741 297582520 474290732 727520213 235630447 808470744 852125163 664361397 321252483 767449696 557848106 297193371 622247508 754508077 920619008 727142943 289013780 616417622 551767706 502548576 862672175 748995444 441613352 769405284 969347148 8902745 667966954 399313531 154617150 473250191 921815848 716777954 83162765 693862490 816478707 430976782 284919354 394258224 863935097 729408110 367048994 63139511 866993787 295878136 363460741 774309854 82405107 988339961 643291962 643199518 501143569 862130593 783084129 425736153 692832684 254380814 596515107 757301385 887125974 202758086 104079821 328651669 121936379 464221398 780210009 464819528 624652471 221979444 34884463 523519381 89110407 222090506 495880198 556517030 251116005 812214368 160621070 5662112 407709804 925717314 43833903 416624215 344090808 910125352 758733067 713454575 3974309 345132508 710290115 914813683 419462904 855555997 219809970 827700917 358533654 362729835 895390854 613722757 70129471 656113385 963381176 16629956 375882505 802107407 25653903 298127461 254665100 711237567 479862334 502640263 846042699 619496448 370962078 783830282 381516377 899314161 349015289 988880572 129746834 611531217 445361818 993779436 817407627 326384003 690770072 618094563 387395801 619160434 555419367 61673498 623495605 442352852 132126893 276491862 989315998 398033492 687315978 109374864 132822123 60849960 973979101 602366558 583047677 686716285 455358863 562192054 652589105 917636129 582335389 998227976 927573011 218618668 498064707 856484778 622809556 663987146 657172974 406374605 583542442 288758146 419686210 421252608 183899746 627380000 345525174 257076009 878088820 754507322 989516963 626097398 114543709 865937615 302068700 257727898 527839550 53870575 183763175 94622828 315752769 66750054 973605557 416151715 637250381 503760414 336993520 992776216 59592803 75246177 325857990 725806447 140043422 261073858 108340553 323450633 900932862 240426839 725539516 658248304 65423214 650985789 687504275 613065679 317632465 617987083 109789920 403796906 586910914 781924332 417229618 919351120 95770410 941597737 330065973 658258851 163765774 58372471 36005007 126403849 382248897 467875938 257767986 510896142 906811866 53969915 266374300 345919792 543970515 146292513 604672014 116349932 705961360 494975391 516930162 63337503 862975463 118627163 923037855 407057368 28410753 780978839 794362368 41771561 698704945 538204400 442272540 573112110 363856310 338478314 385051310 75510984 577479179 719543801 937158177 581606858 750664143 411564545 861936021 791790097 484507766 814656242 856470109 870724116 374560312 631604322 506435405 874413800 984784726 342733621 140123046 222575388 403357141 418130180 778440958 753283959 617050089 799246402 676810787 513190430 799822374 990343152 300573939 270316070 955841317 474721566 968251072 602987217 208390097 914860999 495989413 778200616 28299296 397235144 146730683 708021261 196312020 147408354 583969050 655717246 255227855 696792129 704444376 925113821 116086206 161598894 825960876 734635699 511917638 813488614 516028943 73022730 244717628 840189314 32958415 796832641 96298790 183907858 435765125 560840535 810641077 106152297 647117890 657195132 108476105 644823 771418374 297205381 404098352 942059733 391520675 98506505 351999130 369205104 827935416 281974843 349679252 446614722 267645533 764730879 861889100 924207975 807290908 646314666 148630294 606547151 381349845 382694371 188442756 489232128 965565047 108630637 963444145 293104966 281940864 976368794 215684603 822038479 236716896 882749480 765509112 77991143 371979641 502676392 253013646 258666197 312261779 539903860 17342582 278654748 440940708 171597441 610787747 441363342 526447224 514999288 640664464 232237357 681857760 665954007 192737646 727040692 794130976 259022950 294284081 630654807 820384033 602210057 421600768 761597042 665824616 835957860 187404626 197126174 204994054 346950609 217909215 739779290 36051466 372249120 619526558 774547580 179315334 665167727 406126042 884704732 642935843 612287778 25228006 966300206 76206225 176193949 768971727 126299825 306822712 865237246 460416017 224337198 692202580 260910239 851137368 650559545 756867957 505999708 374776518 563708445 367476922 792191458 623713675 901608774 502649413 147138510 258543416 79866873 323160680 350257765 157890013 744997541 141185428 464836029 680390980 797502758 687960029 69122741 338093124 525557091 515829806 37340197 484668645 639964945 935389937 427274657 783390387 588566370 760419536 124186317 902461276 550108303 543120229 292364622 548705185 397695698 985279904 376124344 996560474 42934673 903654002 215927931 439285953 665684136 802175116 64866277 190199309 655738650 614452752 883635001 624838704 607282824 676737677 123366273 6236995 259843764 665430714 36218195 748244753 408517699 126339339 302386108 30845085 935467192 188245798 398803299 407391056 882510840 225956493 704536058 473157160 222067465 518549966 349333260 848635689 242273563 684658515 784660393 853347583 99831822 87780991 956494193 613080746 874619727 351365348 904717410 15234844 871546348 920135171 146532537 588406141 573727789 966887088 654354364 504284219 399579307 544014472 702144228 809150521 993863771 261581167 971134526 604144539 131738129 434477042 970134829 238057616 774545948 707914479 421327706 306438028 916319855 397631612 686085356 733784821 494091318 379527693 335001489 378044088 849706234 30391517 19923917 881534306 584977329 238635274 399981678 397587395 54386730 587771559 247740243 460443566 935093886 525694152 183414911 168672352 360892129 871319806 234218792 916211751 743922127 152745273 592359596 410927735 556175489 182106604 624578022 443709753 408374697 611540030 943347982 578881443 240979385 520151355 593289085 927115684 519319212 527840993 71306479 553359781 409650424 51843922 186159591 835504562 215288357 851327791 22730162 824365566 62178676 245245084 41618631 631729788 302465733 111535012 736943012 985485509 127158791 975296804 551526681 889431229 319149731 939865210 892615800 461677871 745826501 902133275 684269170 842515988 448932130 280128790 335117104 877348577 394643701 275716075 924281277 655660019 828090590 284455798 336826762 861595816 241816100 985458526 832801774 266850292 251266685 62732943 606737199 77912598 425084109 38250367 352819511 445492660 465594100 303339560 496746687 971671645 87122618 670221097 213283407 517724309 626650126 102502353 279081493 688151526 149271970 42486984 996772841 14271913 99920372 708097368 613575427 481563400 162641839 459638003 998115722 695501392 768886725 494782752 837016231 804440304 936001772 940139205 51552530 923923175 190504736 553413431 17567849 161288645 758157834 28392660 680538842 596751795 63513646 847912468 472627947 742022372 888799630 90578008 926648918 486231630 140665596 796924576 103209520 457066406 774646324 235291071 271843194 666462518 94646645 298887341 468908895 959874157 876790131 255965229 558561944 839043082 780406649 384196366 606956 618380062 573970019 750140559 744245926 613582894 289602264 450290730 189646695 676372149 81107606 116968445 843461583 8406550 103853707 826994288 756132348 898184130 698652519 988090223 215567397 745863452 342877739 613059730 646205295 350493577 605942959 611904641 982259810 386512457 370046074 396901373 676526159 674737530 436160739 254630671 715363328 145299813 813666241 534634216 255992171 339399671 406259746 784790851 146632747 504876616 482238818 94435599 373529622 241629716 321984558 353792682 741478756 249073086 963675556 202023644 565581805 878306606 466338982 224591938 121598444 8697553 876679071 105774050 328186395 950739749 733615387 897662931 496624094 476980655 876122458 945470013 931781806 864344724 536284053 250221652 532615074 535098971 336426030 453227014 635259339 941869968 557821673 926084683 493690897 964795687 317669917 440691651 551739847 140221762 555610834 419633612 709549293 721024423 329495633 814412784 602979141 313412889 507798911 61064447 853706162 959878102 256757091 237235603 90834764 283155760 243562165 671809739 615854639 317370074 282410979 573593454 799169505 623914403 180323019 841075763 695503907 464482416 63496848 888279861 824147645 758085854 194725788 43929710 185329735 945661609 959314018 311713424 603447696 609003771 680904427 373949519 508997837 490611576 301459723 869406769 503548045 428380450 563673842 603528789 222569734 662858246 368811426 307991946 313871632 372069910 646607937 386490458 71754232 839916720 73201848 86618361 732125722 146592134 256827627 520933208 172661182 987840680 219646994 380579182 595287167 740920875 328923149 156614307 943423999 297425996 517491435 168653307 385042603 295164510 814926514 245066761 711368861 988243188 246640135 637729909 33834329 855212251 200939812 785269010 522110418 294173614 973692682 537575156 726050121 58748550 696531811 6412278 952599562 303461371 830165224 482553166 26384404 715466671 382040986 843075870 142133637 761007715 969449720 289888676 953294467 237224571 407796003 374802870 76877470 927415178 284531972 476244870 406426025 125430712 247474968 467946886 614163610 37996005 675855183 336825538 776412051 747590280 688117187 669657391 623050244 128987817 187318058 815463933 984857555 336831632 221020893 238149358 519599994 521410696 749311832 351462534 751605158 439711125 634402932 574414853 433373911 100799965 281975060 160671631 620891628 439322882 60294488 67363932 621753663 235467218 266040670 90740870 123734966 840452259 814043257 10110551 599056313 813936854 356110854 146758290 318945882 149156790 548129211 103794918 321511905 842443280 20276215 616550453 714220477 254936604 943578226 614097354 940469350 357405957 695153184 786838919 890871957 561915237 580806210 722580520 409351614 82144658 477790756 514441181 222660090 251020247 360727576 22195958 819537135 120993744 785489341 193858728 978118998 546064679 86449441 82302815 841647012 776211882 912690633 839780162 92732308 847769372 722607966 448037245 657250645 40887270 734760242 146390245 986721887 404891145 965048851 235912112 365251735 932269381 132310206 439952085 783640049 535221396 940175170 187819600 639778536 869058380 212014173 562856462 534938963 322108800 4222010 118895584 217654007 552039927 930004220 21689811 659395445 49086125 98266970 715203690 352423867 216183871 930403401 267234726 349794779 921944767 5356348 348915212 253072866 973334199 499525370 183098810 573163776 650879890 628000725 986530857 877063442 942422322 733891886 31604556 307146033 45125343 52655405 29323643 67577493 612958290 674928065 536718953 833076237 269075393 945174987 315596484 684563998 504786737 929818631 494641118 756825349 543576174 121830334 659776773 235671356 98456772 733972955 375069928 128772003 884048378 528213144 28199031 491283178 307462903 206670912 83715416 837001900 361648200 810269160 548315152 55847960 519223111 332365239 671430744 765463308 918847375 923864053 122230366 930826692 961187906 360151938 109547130 206284453 339713179 585701265 560792679 24636334 914569070 692526917 197815108 185033891 583851875 912856097 325083110 439495879 537531349 455370511 147869087 694786521 826518618 306633598 490582399 919962578 743984126 702380868 584734819 278306664 636804661 43980300 290137715 436542549 389328452 167894652 873632770 596938036 364072448 31202631 245253482 961615817 144720085 672586845 813127058 205330261 268566808 928976532 365413459 718512850 111299528 789055340 900680306 496259657 333603131 84672010 253109856 738246373 148163604 35288109 505941670 377861471 962742207 512305323 804266416 601926031 310275835 696887017 339638230 784033540 606220378 13759473 301334063 15441009 89365903 501850721 999645460 186440053 571860123 469261406 655271336 621835429 536229043 435192083 813492098 476729978 123843767 31334775 893971084 418999618 65724696 430631644 391433799 923126757 646919627 425600822 791898816 403057926 104228632 76880864 107324458 409036235 966305942 347518887 942620061 570633140 933533523 11678558 382352442 521243531 649114690 347993230 500883762 537581848 328196715 178281674 435874537 545604377 584587034 537809139 647486532 953884764 638296266 501984857 496279905 502819802 118728982 562281857 165375651 382773150 592100922 414882756 818401965 540986861 874094442 578026181 855383662 647200755 964160634 311199267 954180926 791951256 438935546 199022802 674652351 914091214 519434059 660073245 598180053 944595471 684653205 431240281 814698781 133937407 393268026 591099864 828014145 93983061 250877894 927961151 974609855 463074406 527692885 12918649 897393746 315805895 75032820 126401455 378278556 619505851 851349416 442113145 352541942 34537000 359790765 958783575 277396381 633408618 709193192 494789122 326003161 107265877 232932886 316472280 813724837 510014923 482020320 130280562 663338932 443893052 392997708 947833100 463623349 614709480 826068111 677430964 330292172 640625941 850726388 45448283 507100229 187963318 670578263 664426648 197765677 799593236 749031805 426548332 395473654 269707953 366212095 555795769 759385058 838838195 599578667 49379659 592191760 519205091 287580347 283803639 439939379 612234419 937200267 860633796 665256010 321507972 736259188 12413677 231566085 190250718 770249195 921109063 116531202 577474244 563176372 984454 668865549 444994523 377319834 522827737 979386413 403967368 241218554 232938516 265320489 934207558 834551583 335729906 108837509 320268284 248968541 926315826 801027816 613703301 794016832 799301937 785706513 111632556 294127911 661839612 261940831 226032071 760422809 575678969 572554599 918540249 139760661 509444715 264068712 356031373 569707910 15705291 577865033 2610273 745268538 364220549 726551312 680286656 246884494 689351022 575038588 3015305 562935845 892655267 570971079 803676236 22127101 903112133 247300109 193172508 264752227 4861525 421673107 9505628 175044752 648480018 822821382 585992328 785638345 388635781 34677150 959541062 433643043 229591734 349784308 192687195 604975076 92306498 248374794 411364684 84473378 480542489 768096601 993506041 143188470 188215555 240999976 319786850 159514378 114369393 990215219 99180155 120756389 451046645 591428699 541087462 796823342 825224555 878824692 452205548 930140861 974778885 146425273 837786812 153486349 865823313 338289735 797354990 268148847 413809959 715433363 259721590 147791947 633814740 532715672 265050205 293490836 839002251 755268748 408469774 664173975 102538405 321222684 16806340 7712716 667661470 274464728 437689350 725705574 540804120 405589505 207216049 890950735 923454321 776652375 978262232 592862573 923714027 839759274 680433092 75391080 637477132 531423370 704557720 40518861 487379353 374957881 591140440 31342851 749297311 21464376 863893380 276409063 64533264 408212919 262178619 924724562 102834309 538070741 640215899 13361837 125454977 168898616 943529191 949044623 787619999 276613320 285761887 407995580 683112977 476218970 90804455 914106829 883451406 621066690 541738274 282035441 364195585 342263135 760125185 51412620 508681359 894335607 486049833 198481017 576631080 314916153 289143034 373912109 568236181 865413613 27380769 593770920 583224694 884219104 525114201 568964523 979927615 568254277 619719876 917504786 706752999 971473944 801003061 499835378 740048684 804780622 284648693 772463889 852568971 44004780 468395196 761463413 103418359 948710238 321114623 69353981 191270972 71558282 701377111 481285297 564639790 454700995 44590771 963370729 54132956 584585966 699365742 73626275 646726784 975004408 908999324 131787926 815313763 31225481 313084533 676735445 164660943 218795621 971207815 251993745 361460507 251392056 239484745 617565132 452413704 136215084 322572132 886309468 776946386 698738508 358555479 645497698 327489925 828309446 881032439 237207423 754174732 428286335 718264566 690522816 677637918 598706529 387969822 221274783 998354066 622985289 18650852 306436724 824591054 80065697 115115026 980021925 16167217 709266604 23682346 236949640 949469408 894330301 487841774 957711536 172064122 114959773 952144035 210359112 567861825 348844133 543953605 731334747 17685144 238642440 177166100 89565855 975641470 808236713 192298528 542674687 95756808 834693523 82188481 186672744 200351769 396058004 943540028 923542146 473707530 10915769 879334880 622224755 489011648 781367766 801805910 97511789 600559924 132813206 233162634 501714075 420772742 537737904 166466767 275585954 895390443 605191911 605738210 91919747 627714885 520274879 781546628 84110421 871192632 434768457 63751683 915698120 413015454 530309355 974074115 899909412 77834539 803081876 715193133 357227135 642004515 562138921 796892348 866422411 690609450 944150905 984874838 99028471 938114868 850493170 664845258 226883169 687573537 888054049 705406688 538289513 547788352 81067327 640098805 952178310 543035401 91728365 287560305 147811028 106292455 246512677 806253609 250965894 577664509 134955626 772358621 284521745 295719554 68162539 170485112 662561858 905526450 742116760 994324669 749886250 469897531 947928304 932746841 654645055 389471055 616096408 250691522 421504131 536228515 5804331 425408299 960997567 382965990 986510133 546355147 747989753 813075211 41098127 933547725 660356553 454267452 838861253 513954982 924057298 166603417 470718637 553759997 919723732 885511152 768710872 151223393 220070949 30605644 884362627 600660205 293835833 98166517 703471837 122579606 96250018 520622900 829578000 284541506 108686721 749332642 257512487 451789602 591160202 101133043 564518963 440569880 3417582 187974199 259651326 925040193 248808411 595590290 721341655 679244674 433001530 669555657 167128407 829614740 218940733 734523223 239482856 853186127 431947717 145298818 291307330 531120520 774566413 165885861 707395225 736299310 865948543 690438377 83492606 212141818 378939910 419365165 846936682 196191154 88757577 557433433 578316179 419349121 573634866 368775920 4654426 285668230 789901996 975375993 643871122 482557323 538258233 79257718 571639049 904515850 320227370 614769829 219576076 510601528 542691045 746979483 858256558 398707482 870530286 775821593 866398025 417746216 264707584 97161114 320268188 427945648 142365311 614771413 256879625 502489818 534515203 189848741 716975817 78757368 530000128 480880569 525320791 984343965 682130181 219749956 889550485 57040655 352634244 831395575 951609603 131443318 563356683 996341850 678136294 253203675 738394320 132184691 923858384 657733386 509242585 54856710 606604233 116338858 612070241 720932130 284725958 678552109 736900785 558759383 154478556 678736317 633447351 107715072 872710366 428487636 22454497 574302272 47573600 723360024 33494476 137372001 211393209 980880353 184718666 738774933 170169684 173357896 38501664 72459496 678062551 653081000 96209267 264796865 333048535 645576343 680216211 45821974 290683392 567937380 394103114 24354714 686102763 441751772 762337826 195354986 764595409 899732351 759647604 60796510 655585687 895986705 532426573 573678853 351460455 129996327 787183377 935317689 123528626 682382972 128511527 195103086 453764753 510350291 415045949 867054861 498146893 116632108 131548508 680204297 761983781 444000355 606924191 826563193 126015982 684454857 523687705 530784411 592923689 388891823 301071925 737262040 968037538 293052098 58458977 893260859 847044754 424365596 535986697 1028974 363251934 260442526 722703772 577554825 732926797 722524061 220808693 565269273 849972999 347834482 805501837 647119246 552426458 371163527 95723171 870562972 296267750 262936444 976917862 785269023 16445019 453505804 508464792 429335917 676278631 802581158 714608761 649469545 13645759 818004999 764902249 524184896 104411906 174741918 25109048 424414333 253600101 923053962 680279347 684082458 381568222 48353138 774343850 698246142 381631769 43601822 589423981 467995527 222545570 976896580 381825136 618619830 710332057 115388890 139816543 720338078 789984458 941465791 936283749 423290322 246286309 325127241 11005511 729004197 547676222 716574207 784152948 494612715 375958479 711130629 940960632 527367639 484045105 206480799 84561193 488824020 52178493 125647457 111099828 585468909 469290149 71300216 540161686 220029288 294581278 224471682 854919207 177076287 483457948 974198751 868249893 759049176 322377721 528755127 382737955 187380123 669356477 167162349 271403436 897116072 181739563 590445239 446753068 806053481 501453326 678903674 136747115 324899277 630898447 957281679 43123983 879455642 438041192 832522912 376710915 831673421 445543266 505560014 248392190 59152637 563921567 274329333 290972807 564275660 963031946 519061792 82364917 56970281 902577701 534771407 536896809 929682809 863952781 485623968 358637921 790238636 138513177 373171821 789312354 895187268 894665348 790773797 238852545 855586902 38062120 972834528 820225310 929307046 880879818 95110461 147472670 591346379 788610701 528441275 475754715 82251603 704234396 539144395 417164930 488870946 938213130 739861054 83030840 781902090 239065524 968629808 890708726 648663902 421661481 55690509 986105441 879343479 410179554 173031340 923649356 752853290 397760867 42425998 205231566 356468612 212861281 287523120 971544319 936684378 187572245 578367405 943899408 164689916 951008515 377280018 187233284 206737676 384345630 489629041 726962470 384431072 289441534 13168701 842712855 436062053 351168295 329491014 114790755 312077029 802090652 953424946 994574552 541494582 683739161 311981167 219673939 542927870 481113889 56842659 562068690 564754278 242957487 619405608 184580218 549407977 606529418 670257789 375864291 754315239 855003394 355308653 547489803 518833527 35710208 113610131 803612308 508787926 271031820 632453819 480742133 747566169 529196660 109665756 998999524 585638812 725752721 574635349 413928831 675218665 355922565 350258301 605067154 949631026 910551006 796021641 98974006 893196836 696176047 798287529 381475146 827544161 360821545 798128655 428576781 648240915 35380498 125215857 182252814 790483827 213848655 66311192 666044227 437519411 608879204 23095225 338591093 392464316 310657978 220267072 389375454 917435454 371560149 404178050 762615533 438147943 934679994 604029725 911212277 546063593 443677359 161362264 720767727 760739524 82127005 92343358 30694586 67944472 917122651 795718869 86347699 649421934 511749493 801384233 712104375 217569097 766868460 824280837 79172910 923797197 807459445 190302276 210793063 451236512 863109158 716851879 432497267 683512614 813276303 257809758 203510252 704979821 927767938 9208463 496016867 469105324 142240793 364410749 455653569 303596141 240234119 697002313 992789368 860103842 779013461 922933217 102367408 656650163 528856576 639199595 141272121 545956923 625977823 339801260 763586242 413724579 435103277 854246843 515267397 931821214 679207604 839491929 448477984 729104295 518375976 235137399 754137645 197080997 186797601 111692649 23881395 545460370 482583010 7756229 103869007 199737012 766534567 950345773 852229065 182612751 658428889 928969766 418677707 338369822 451762300 168581704 731648947 740694797 236131363 461524078 385998905 456749802 88042163 839966103 905612665 320600848 92497001 798095328 350151172 992769184 8337471 741567822 717422670 829804982 953433817 368021202 475608671 202829936 478625759 951161410 823043358 521644435 460790273 688177760 462970234 158069929 299472745 53636049 154970320 852782197 398378803 175131776 913708873 717924562 202242399 417852408 999915276 787139353 801395030 981714593 681496222 560963007 441240682 754638866 224224348 820955438 281729990 358877914 37587662 108303238 126132710 854350092 182180719 188264820 177853168 166997286 827567535 950856648 633338877 636424934 688152685 888303562 573834392 510593566 587292188 480225673 8586555 870856476 871517062 167679919 9710244 166907953 930500420 627845980 351334309 470779734 114051933 819955480 131810787 122135787 28387030 849566265 954533942 927446234 564564646 613067367 460689234 930429883 968217492 191656550 756776189 784031722 365741285 525687965 801870920 612682169 49554220 370225240 469493767 349680033 126672825 54085482 121876481 41335369 844454273 978185261 453879681 598233615 626742160 913294109 522817101 175944420 738364084 991000135 964632319 452538724 698315761 857075269 171547384 750799528 835630 174577670 965414969 404081120 462195574 180270717 204961353 562081464 573861709 928166439 440313929 586715807 53529744 342940066 108490695 63775036 831595393 817503978 591271985 812474428 549967015 648182537 221042960 315278157 938233268 964272541 942122369 801037695 989945435 673484881 480719479 880101968 493163490 535855034 568503061 190720681 221938756 982923528 736801000 532057542 528173644 55672519 104200927 971817532 617924222 56744259 242607807 661308939 286240901 527059717 600916569 433179357 221751740 127715960 597629584 223130206 102233756 436343119 860587779 739332606 632658406 989218884 773842665 964056973 944528199 76494264 35764675 824150296 292707741 589566991 567743682 958388192 241015324 312787236 180445855 572378490 706762357 194829363 71086635 155562813 423640677 498495875 889978768 87444936 715936273 379835754 936046253 777355027 737944485 760859653 790806441 40850634 495920830 961082080 892157572 897588499 405123484 937915107 749492464 39854575 622958341 368271907 834844012 353784895 837404102 174640041 762119767 969501261 355482630 930471942 416928371 438907845 695283701 627669613 631584193 68647701 651744627 689428898 606406843 191322264 780003779 147281657 535577259 997336714 334686376 392650338 141222079 484592820 572505453 840577128 867868330 149680997 671438764 406512521 865075273 813017463 983445832 571077352 181359514 569152760 458568632 199531837 137601497 687695354 730813743 189883247 723230362 235408709 137696769 207308683 166559077 630663241 373027338 560320017 74175242 321710616 530035282 999959820 97529714 476019758 885387054 590801811 154052975 583218618 853197097 771900629 739858168 514770644 204345718 641417161 118288640 391122655 765894011 602639219 165354413 27261036 322302487 568744967 723010222 666868676 644616499 969923880 688634107 886644068 614156637 67734995 663184181 108332905 951462878 498278082 565388164 608226344 495719590 474661444 677008963 249597773 881540061 636631990 734867269 428886346 384221266 385356724 230294704 668537187 965654753 716997756 37291573 272377295 483441160 157131941 28923947 694349185 805590725 682785893 392609189 608866594 402441012 697049704 713374110 866738438 808547644 680303146 322044433 205567668 157150083 697967054 280722159 407856476 61630505 522798225 899649979 601885479 67402452 634798070 694953763 37170253 896222402 80285502 254559942 828937887 85535582 849841846 476206370 468167208 841012718 293709988 754463777 589914070 460938004 566736730 84018984 330395241 162725101 14687600 78610732 997605187 683622051 151791071 806013297 466461371 275141751 844586162 982059005 539284978 627190290 903821211 45576756 6043005 567233551 337254763 401772389 640020285 854398716 378675786 503069561 980839901 791909428 14475004 323843507 935241413 69793151 34725037 108566354 677353279 768109929 965941110 520304679 246015551 497428599 782096852 587985046 853448894 430861559 947366932 977449685 788858472 728403907 393194144 824842959 213052009 215787313 194100803 10212857 643490387 533060521 208263898 664603231 96631923 421690228 67041978 609480487 202117912 246466425 523086629 686250838 522922707 784486724 728976974 618504924 694026933 696071672 472089324 622492320 207658483 50315379 410811511 82643780 690784125 943071626 884977203 226293472 240248346 826136354 339297471 665799221 571356502 572715224 872813293 558302983 794803070 909409852 59815760 444549023 847910006 67788100 23842831 783332670 257393312 204568119 421859066 133602543 999743233 79078217 691387434 342341121 813781997 490540646 104124618 146261229 674121731 119465083 828498992 255439037 324188550 984972459 384404592 775751108 249290935 74435842 848430167 678408541 305593504 43525984 850638652 999247408 190910029 833561678 975271882 690841026 551164872 726431515 357063444 577923888 495211381 905117227 857850300 281597482 956045301 257458065 874511054 202700404 155783837 865775826 40167819 837627799 416080731 452638542 621107068 543616008 546720134 767946221 38476105 5814885 383593447 511192952 834451252 838315695 781672039 265912863 19391540 413662730 861233438 302961144 269489092 908199469 557492903 784102364 258766009 897498306 100499194 238029117 329485125 32316710 934519007 644665308 298080737 947040405 831910186 673652990 796135776 593517896 601783906 908628708 606718060 634117517 828094457 898506631 606829205 435345913 470682368 573553437 164644892 747413770 502613383 462686026 491519562 875748926 915223578 3062320 583637575 678483678 626157565 611458400 484103180 514030724 475578003 998673340 384742259 195695510 844918899 621094422 512696483 146587104 997643629 813248083 482913645 61874266 731079450 484711675 623906287 369910525 553262045 371349519 323404264 34102072 987088364 993248385 179051781 937150776 640542324 636358352 468129153 315200555 251223284 926377415 154143498 926370481 393735923 966023064 507796188 832355133 943717829 931102112 504399290 353169662 165482646 308539127 299624945 298179747 580826187 471531507 138902763 833792175 105045889 575461553 203249230 253892578 448558308 892462941 723718311 45786791 293634531 433735984 118214489 859326863 541527107 649528930 401084022 219702141 216999464 599424722 707216355 387341198 385509188 797185098 264800026 473318268 228046057 676469893 827577343 466665166 531362730 516309950 203268411 523212327 263770804 432255785 983589519 553917836 386000723 534323282 694144462 281002127 988444743 406740083 504558555 375853514 59966564 884961000 922613792 533657781 666292963 254795779 625172831 311512318 764278592 971203260 85245036 470407518 847120712 835414687 776723294 46126325 943305947 529543079 436072742 431224249 659849186 591578433 688465317 786970993 984126723 524592097 741816312 782824502 252968385 434526537 451917438 900124331 197302564 811638593 466484974 934826966 114578406 300164568 142835549 302521390 199405484 730941493 230425300 130029620 255905769 539654574 905636950 277652191 249641169 308441778 391328979 863669331 423695560 549066961 954195947 408576363 98795192 690656211 774018709 507587466 30891051 561746395 519190432 572583570 144530352 885039766 977029060 299038463 229786450 207645227 24770189 755790730 281207038 435045780 778603948 831440658 454564651 46653386 218855299 317625240 491718736 984894685 256229743 661621430 768109221 118483810 658901381 820186194 798427112 478199795 887307394 743155475 128943954 34709668 917711838 94151233 538056493 678170669 823085347 299027203 712292982 381735490 116730969 498766803 512235067 353625121 310376699 240559061 318456404 479611311 683302883 185205038 374634879 490083557 817483824 419175528 801755814 633443884 847969822 936203865 131586857 612123793 155584292 334597418 441732161 542547238 12842846 17115706 64658630 843439785 692181678 814115663 784896387 235736861 342278982 14190452 32157011 965138073 78520502 696647522 562860992 401687424 698898596 94890914 876078407 336826330 562861580 719320411 329550474 382264205 804185555 851074578 44379084 596369240 407501414 949643843 806375905 85746945 546042984 929029682 46015011 637630999 571584616 456272550 347781988 225426555 309747905 131154254 582734852 857389679 546609795 703137193 985607264 454537584 874513667 70239508 314281094 998695834 405347420 358632606 95230483 5134730 394169778 111962493 828663086 882343310 543575727 549829426 419623764 993529050 340408251 941857250 859326464 782111088 158533752 169468225 329898214 828615823 469848661 938369287 725964057 191578316 360922607 148180838 624703537 980202777 963617390 585753683 597027413 956366771 393427258 130402071 623306662 564730023 322398079 105683768 618287408 722387531 338255823 140769341 676299349 435577200 287417714 97689737 67187250 764511466 90612118 819899722 221883614 232708790 1867803 53598740 834462791 856436677 126552129 481205546 772628438 988354363 918286052 616475761 19705024 837990084 611430755 936224661 187607102 443880802 945684128 518500090 555272842 875517507 388347319 720312877 893461611 781913188 440566130 439328618 906947683 556304553 683677184 122947434 176460421 609243812 795483206 794369658 477999099 661340679 994419171 980171320 63447629 290124232 404552840 953826673 991658024 19499188 521160244 547696640 290565472 319230878 457233377 586802020 147368597 988604546 402005204 390510130 907487861 173839089 756111748 947625014 383499496 510172158 512944261 847279762 568444235 570346325 673864498 277328764 418094457 530314950 61373802 731102914 640077357 658391414 128887026 267904703 408623314 86140026 644545249 25341596 981226225 114114820 386057390 361539341 157006014 711530606 65948430 54436077 803437382 457932580 464134668 88269569 543189209 433972926 621934354 916368584 689839053 911480961 399134052 86502968 885158675 234938676 583542984 397068799 458369607 69219321 570758691 513700828 880915316 654428438 972010867 502230031 131234775 770849381 406260899 562764238 694404652 904665172 539985410 695890035 454396373 144440518 188430530 131286130 526629104 136791096 749466259 877073802 160991961 698577723 416833961 805080181 433377557 926336218 664277597 838986295 920033439 367223536 496900353 326746999 775319167 927592942 532884493 309586425 811826150 693299383 919061283 847970581 201098046 508671457 58208111 753415077 982788699 862061982 95741741 216884543 547550115 263826389 401743073 733291530 851922853 875318233 784481230 788818774 814618245 853290879 491327236 296126166 299463398 615633928 621020309 770233377 162804355 692649459 18777100 279660199 520719990 406897173 840887760 367771396 182164957 919502858 149340591 590387721 669832818 969133684 92201388 15519711 572452692 445792842 578194568 479246298 945023386 203426579 261610314 622385898 701527792 392564711 376418622 437432278 344397099 655014501 483431853 945291354 942387332 150033754 250974491 232125241 101460110 640725893 590377972 624436668 873667158 762347887 584201972 887083010 736663206 577801545 48557552 149305605 427450628 333070701 947359703 430948926 681515305 920630115 420308182 242692396 345817768 634726898 521185066 22040514 210614602 436373952 182703189 422538696 730385827 300198823 997780134 193563435 737279293 968914589 781459742 287435149 117065714 753313970 232679020 989325912 847693084 577410215 762541334 163892555 593722502 606765051 927757533 660148210 774521115 252890769 646938358 888990193 696259601 211011418 89254204 766233354 280999671 87011119 965492959 174045298 441169608 882859376 842682983 603961704 956489655 884023267 266645507 292276068 224179515 450284078 230498452 409293536 611577142 267717196 983211020 641997327 947447706 81998263 104855251 142864468 316285815 24228100 288787075 795080079 32197603 55382976 63964497 776821746 4552729 67606681 682747868 490386373 768194108 549735623 123330389 141463034 477626102 506695011 733205562 586633744 133717358 978472104 197810370 471569674 609273860 644394821 655753847 247416075 696286862 438887298 445768589 492122664 262246118 414520517 614671585 269718619 878141000 696450379 687822203 327240188 626684872 100920322 154311050 357820157 737527103 220232647 19554531 73958797 397842679 307536723 996885194 208811984 50326353 777588880 427211320 594481163 404133552 603302079 352491025 595984826 472142294 106626639 48079614 331670020 434564459 308834574 785567072 258992232 564678871 947093977 441089786 54570540 898903839 984408928 233673532 416835027 885955995 93297237 714197452 98334219 125445724 59641308 972362257 434525011 298882150 215872796 475333744 256199480 976776990 49967064 247595513 69217708 789066191 468652064 733096907 644017336 490937319 103675458 365290950 688278863 337980735 154071468 15625285 46111970 666241210 618316 7804715 497543620 186733769 315363839 308887726 81912933 223354548 479151308 539080089 798337816 212804980 578694782 352160715 470330574 501437274 335457889 800239874 630906894 472805970 547434370 944575047 775321209 540372228 331764825 426531684 880810162 16520539 669110716 828809793 425436121 840372555 530602128 557989310 966902321 69294313 652636096 425412627 321976212 501306025 157898281 491747087 723586235 737344989 180815263 177880109 496639681 98102458 198143631 561692613 969884934 580349395 525237607 616304298 425867830 163904636 110559901 308573980 549408127 170429292 459195765 40831523 916258892 554807386 324887474 497141130 126517528 266872764 393117542 511789757 301552187 755385282 296386660 837165949 669081692 25127643 703711139 293016641 12304864 252417824 951934357 688571781 377728109 840643510 649045326 664752330 955570507 717240702 642209084 563013444 726057790 613047235 311025442 805810454 946044086 723353021 700457941 559910759 883388267 959619640 931485194 293919237 604850325 166485509 607264576 620539151 402776634 974393715 36448282 21862937 589684935 162390439 29920197 96478532 753509558 884574759 933136854 331834771 874712706 708753528 283399780 777031482 257387113 855774500 208113608 367696076 12743991 489036574 414754530 190958785 430738160 512080724 875348745 568677703 401403534 606651496 195959734 954451943 276178724 337066198 654172680 52685190 825842826 884115834 3248610 300641413 299810154 212938704 958295865 695318257 154055668 570443533 675085979 659069011 883355880 482286806 455851759 594472491 451463629 401103682 891666327 871873502 708740698 102201897 574443246 63066704 149536865 605736689 261244324 260071382 940493095 528375887 985723853 76597570 861075568 186997573 836378419 887956804 621143918 76390192 609015121 579877059 437854403 120868104 234585640 258469460 511507169 33736389 410656765 142420241 64580641 574365962 484644695 968232636 964303521 246808303 165004863 969820940 746069175 100592790 213266949 492972771 901844137 138789184 865351057 590147911 653463956 470630980 992037253 147876045 442244301 153605492 11782879 445148989 330610489 863176684 653183013 346696435 72423724 214699592 302941842 719541440 521288501 910848342 941750244 715124111 361633663 379753251 662037610 136729289 561657756 505925861 667755640 733453289 880871526 575092432 105071237 777893167 189637381 242127121 537618766 200899814 925105052 704757723 742773 315825887 240965467 293411831 208309795 6143163 728538494 570117552 788154010 716661822 214274799 383987553 141696578 772274218 902660412 609776378 983901945 979295122 587988857 881593380 48143786 776417475 453757791 780889650 610599394 400085519 854637336 181718402 705917397 370364768 433311476 908191987 581322760 995295837 299613719 354630766 661413333 666504204 294191447 441156332 121904553 77884541 249479797 533715621 181936239 533102631 659691926 346854607 59827765 567412975 223010701 953545708 611217443 430954061 646693518 531073610 187867993 212284713 626346029 952340348 141555486 565512347 140458528 353875879 113768216 854495004 352308777 458421475 186972843 125616450 774531909 587955454 933456044 651823810 730966412 722278597 212926837 352905811 92969890 768732552 806712733 711029860 51077971 116656549 400910005 710163420 463638276 823271474 131432300 950128244 855818527 140541725 350517891 42411130 877011068 86603585 43901874 905320586 95261018 298003852 154807312 432444984 415621829 502370025 985228908 30344523 595174378 943674490 75893424 497025575 483842492 404004087 559346923 779928040 99460614 995631429 980793538 747268081 30629788 475960070 935349680 410393444 2656522 917442176 728922484 399996140 410976480 580657339 414581350 504441662 298637899 270434889 267870413 624200337 626117235 174502242 740054226 450803726 213878877 567951154 741190360 546813226 551907087 770146462 110590717 333998706 46486483 988618890 975708466 895795988 506006242 573427511 687007567 135873594 595397470 465779761 860085305 548473485 374494664 490919364 804455253 517822846 20398539 150888026 723692451 390012517 121985153 473050799 971184836 985233440 719338440 361501039 827954438 322547131 918694608 218172932 546252741 510425983 210839495 610629035 808971681 132884501 322499429 369806207 805044111 861484210 153856231 422711710 772704755 863280764 265959394 892213906 181492229 420409986 578873241 526198399 690369827 295884115 664603893 33138146 251916779 238857095 552569332 187609523 557937511 251715357 750511104 976032155 171471655 465211816 80424565 69824825 960766894 642938266 255807274 934679544 159000124 339288361 808337293 951788348 285677141 709164014 206696641 304688437 465157875 714560626 324008795 891240199 224114883 500978343 338273920 933434070 188833908 456607461 343753101 46189083 705324233 933704426 973246425 448060499 224350985 916722765 922086961 346361620 291140039 242666187 693811708 787037603 497420997 762755348 306933537 977234913 795124105 800898077 323543095 347111477 623493611 318119320 116425214 305886302 756632110 635059275 502628455 84002540 404912127 5834836 550391034 649506057 908716527 478077338 365289596 187470885 560170714 558127463 84874321 369325504 296971458 592344570 105888481 397685668 754659611 373856567 602765805 428593330 933997005 130292759 862446383 893609280 829270851 877041242 414760878 732190091 1963224 251164133 287768338 825616275 445405163 245640282 581991491 442147329 237339865 344520386 528273437 460113974 748274788 197178704 129362388 201729102 305899269 992202806 258357020 544571335 117916433 916576966 389346791 114687337 231598104 444241872 984611963 281290942 1487016 266921903 456605003 752307943 438431425 943956797 257019522 565408770 182952200 695081403 818656995 856151808 472084391 57547208 836384651 597566617 652646167 415493124 865361151 349634245 883784458 571197023 270563539 176687113 207979794 300543960 804506932 931379349 488772421 703752981 758417516 460356605 401400610 920373852 344450438 906813021 97231107 939535503 32942848 816006546 698284381 338801693 770340010 959463056 820166671 8365140 899716552 651407584 892540705 119355477 18034300 275713397 965850488 292650686 396892728 460644114 243192896 547142827 293330446 961985521 126082722 357322697 873626148 632444944 902520438 713485147 690689052 957722854 40498307 102395441 669272232 90172981 305843244 57633334 980601436 857114923 884596147 213317839 73850480 76028912 45698720 211564885 100003387 688263134 612546341 250608125 248013301 299306021 736420573 147954376 411259498 884146189 175030163 117275202 758903038 133883831 889702345 564721057 68857736 409844411 99858010 540163376 731056084 59981524 343266959 693733602 111022017 723259251 724882204 938443041 689173260 28544751 699818059 771512123 189555194 633720058 23814151 972424081 993010833 330184668 150918598 168372290 642587388 817349184 799048544 228937932 894247026 102079512 165953754 262716252 95004926 200294908 886598642 117948695 248671399 207477689 287781345 891013848 833317011 858961885 447450714 692732270 498216513 419207492 590915838 339036848 23376248 583642596 262953895 669463754 638449540 74992672 460506751 207219640 661095840 938349736 445145588 594427396 454246881 295942249 82010397 235245205 850659794 357054750 256424006 18258977 919890327 196317494 541892039 221709852 479001220 222859150 370985103 760979582 10220692 897212897 399329353 160999433 653328690 778123255 182506635 862542459 747835089 355322113 625841882 894432508 287072601 269504123 656385318 951604412 201471230 45130130 171028764 263238430 107952312 848376262 843554324 786077587 174940714 336356597 727939269 612815554 924734201 514404995 837324180 332393692 194904565 151089602 886412132 969044311 559436835 753906547 275176123 723097772 990455788 20739230 497337725 714626417 166305863 198151415 912136399 271086195 398780734 947898700 506511965 594351779 327033228 768786471 636624353 606871723 740297876 244457561 860270315 399547561 157661206 745043132 23631087 891834018 906658183 643488954 363463758 659400050 236099519 594244562 53662248 326242144 631423212 866672901 897280746 125107562 547553184 83437607 429751504 142810471 414436826 779636266 497613944 960185317 49064091 683958417 787046872 621812718 433731132 194821113 378507462 392254539 555693195 647492908 431614706 965168268 738857871 936601845 69090096 471109912 798255561 691478228 644530017 159251618 323224110 772793827 340459271 824164962 455564917 269650552 482701409 972759345 222712590 381352039 173998732 566679149 330149464 440213605 848089201 376018989 361232188 230676035 949331466 145640500 447474565 906010253 840025351 345283142 748352995 473441739 839380071 354937401 353811867 260676630 949788370 889951321 650514845 896672820 231026607 291938244 330125331 77960727 172235806 772017109 233492685 332732437 853800803 41558666 867385436 476949777 275394491 797203140 451359837 835317198 922988464 792355740 194662909 408987320 691250716 408634433 640950045 145574218 449811106 353269400 847703119 194075001 66214670 601685684 352049176 873409722 103494673 691229762 182968510 319037030 376855396 922865364 32280808 577547534 82764426 377737116 859737173 839417837 354688501 280301277 455633367 244360147 305054677 208466221 659077772 995398501 785411890 557762112 46812083 703366726 671974521 496244552 647818300 314823407 581850062 31796356 956404815 374177550 967667114 728419633 426168849 659249736 644338293 423712061 502959323 212099560 31541974 26942974 566736066 462386589 859988207 181328700 397031334 54732754 355653891 588200071 449105121 511888681 260122514 955595862 750537705 310517849 856450859 925570596 829239522 883169620 570217158 890241172 58617314 373140110 448297856 393082134 853644681 410378252 677312833 996386715 559841897 966651534 968378119 646775784 9456194 111065368 102446979 777422156 17289986 585133690 395688963 567956090 274184663 342443163 563307202 172577655 621910102 862330988 300686835 776580031 958570149 55407332 186740318 441603446 256024410 30187456 632288833 704352646 79123587 481862286 21836302 382540946 860986675 774212270 607686861 297569944 314041002 967219297 37275524 791515464 210388490 863031484 920006147 279210549 691666025 308294966 492846986 376688291 173316600 183226988 683512004 396321152 337569987 309605712 35030547 872416810 642586884 168055227 352005233 889655080 252805207 595565913 412507306 526376794 227011240 685404161 624243611 427173566 564658864 303313790 719843798 334221675 39746162 334482143 850958918 926956838 101539470 299202985 790407687 933016586 656005869 166602126 543317567 413646654 94512847 695673670 661384850 225167530 660692169 88095561 470534623 67859723 170334046 386023098 8269645 993913060 339494175 884225377 114284099 311961119 889851550 198199184 206648722 60925228 512947360 956104663 968564984 745960138 634604825 436980370 791556260 362013514 643086582 313716797 207136882 148810510 593934616 62479675 127564059 313065286 444981034 341270862 959756457 890896807 177951987 366076508 405680655 231861500 26547168 119129458 340561119 438651559 826650065 514156833 530493296 531839969 482497678 337994138 1011108 161248401 866057844 716400032 137848055 920225818 122349825 51557542 329703881 119573581 29141046 7632056 514969567 104790975 147926527 81041966 271697254 77079849 50926376 628068488 864287475 357429548 571621332 551564793 185490082 678794331 745545608 560651430 429209299 448453592 850326562 491372571 89455330 291710859 397722389 924816692 232344321 620497689 973415070 229097821 746667865 587776316 277126632 165540608 885092228 664948950 367120632 518966702 444821097 143673768 411582393 456499458 62324734 354064677 398252944 512695632 87289753 234857664 170532881 44532250 505894813 876198796 726642041 70751287 385102542 624724054 451568094 763036981 381439750 871632074 608140302 350286468 248626589 896549877 342484718 649797228 247858838 306540794 816461598 897894991 567969368 869394654 330386366 307665136 946898285 393198147 643062176 360184790 921471488 11109439 375210838 775194521 42792332 551034359 554417368 428393098 474246485 670525189 981323101 790723498 577106688 776192518 893908075 691097545 23641256 921019564 233129320 885724762 974402623 217249561 242069167 291774671 428884042 329567346 645951269 634575478 898975692 210489483 967846906 988115069 830017220 595270700 806713374 455911368 922634301 549717935 689659937 903943375 723410899 84796760 410525995 367934547 998804871 309465197 570004515 181459538 959261715 212569461 272397216 710277868 787124738 521482822 652291016 718998747 205609813 916374921 657440079 205730539 338984889 334108976 368946981 555228449 677113233 569844444 410381962 590596969 777576012 789974427 156493093 777037052 983982490 600719824 949649318 792471724 175414761 736984720 742792101 313430842 130339251 734173189 220778875 485559418 35597846 980171135 299338340 798127276 298666090 40863622 194489636 550142909 285766577 770203379 985887615 694197210 420374539 296276580 149812782 12896663 966526969 636958423 914434523 547156085 355049155 18224864 873022823 516177167 279100511 570303536 563419879 592308955 426726482 398633202 242189858 691111633 601505055 944097114 214302868 303307803 581804466 125432872 154214374 469626639 470150712 867218922 994472925 169985953 691874038 259372637 317857905 379726868 128428479 763673620 834476082 745822539 636294077 589388093 428524415 223377475 589575090 486347487 711366494 82228793 699471269 903572012 820787584 33232635 819640943 886139017 394765031 547518243 623742628 152615451 271908944 659285028 466630428 410584780 939778248 249327132 653244121 771222744 811678270 628966788 714597059 747808670 513910023 51544290 652856449 839429029 447193383 302103735 645672477 416608703 389748841 943769921 449901185 151566552 809288381 878320098 327158500 182683273 202814316 576871641 496998631 213028585 677695634 468095992 697786296 639511128 765610252 458199266 493069689 920168278 400813238 618931477 916460782 133827958 851784943 577288446 44862589 296928007 478056197 739689466 779653631 318443299 53897396 715264819 446789708 888822900 657717371 946164916 317599860 904610057 323430413 694284012 734063603 809302002 766561469 39944782 937926254 147231625 927203007 887474263 316518214 912222875 931461279 375833265 399185547 163605360 100550724 739386127 757630594 722275543 787758142 808878054 983342373 288264010 424454973 523144441 378963264 416791356 846060033 437087767 320782825 13878314 812634345 600012274 54484885 327294352 85629271 64673496 338302816 45595894 605514515 971775372 388542692 744790694 434299232 328063893 599062999 549635549 564001238 916294193 233440919 778455176 720129270 568569121 314346637 42990024 147763482 383906004 646002320 942775596 68373409 677770199 255866831 159301749 769178582 420705945 390502439 206203028 193368025 376908333 319104087 655714104 792497536 654335362 571496852 770675984 660838441 37776378 903383207 429964136 881246138 135721006 143140087 801708014 992997643 59424043 727265646 939974377 233814104 563977248 735239211 284286422 534486087 249661183 855480317 969579925 648584160 350225292 600498548 728271592 28393376 249704134 985215585 248233966 797259234 807382100 460594652 66219059 44719779 955807729 897761480 513058816 964009584 378147383 700810977 464744894 759330416 718720041 78215226 543482160 582320867 504606107 126677946 868083793 598423804 395032879 273353523 133095631 242113912 353251474 155282238 945601084 636670783 765787216 115036461 304864777 333694764 171459551 569638417 931520277 780965887 557389867 930874424 253779174 263645297 897875570 218592541 136957782 449857548 567270649 855610940 739617146 613904569 418856574 363637057 629805878 666594139 339138190 524045421 880061330 820626268 99317263 825556905 93121555 208444498 395724713 311580821 649006828 846719459 658259484 174060222 851458767 103138026 44259976 734727415 408530872 921444107 736671221 555735219 716982151 687609310 381782392 166357450 431942979 610998276 251612445 397179294 511037434 250869325 992863259 724697004 345280636 972924940 186082973 44252556 521305304 948816044 505522778 752759512 799961700 13880734 260822083 768626585 418180905 220458713 402764518 948976585 648477785 454851311 818454674 500816849 430677873 463525809 456829036 960887946 215238026 74348175 536727999 150425404 519332833 513358997 503031407 456418935 246354430 493495897 100760471 620208190 489584949 670274330 979021698 584237491 926585828 149872447 842754835 145991743 609155708 175737401 576204138 914075679 73892747 58061414 857653749 991532289 272125026 779733468 238761870 770653921 297560723 272170835 179389698 615365307 582060820 285785026 419915772 669812860 142486313 573247807 808892104 42882858 35518298 428616228 211646908 717064200 232525057 258708664 596987100 249226108 149926384 557508045 924913449 179995547 709017671 244256535 733657101 871496224 508112038 444834153 689045340 826453720 191502011 950898367 249358069 764172243 87330722 586399308 5989915 907856011 5903828 839951244 821405338 346657859 245332804 969110608 545064409 11120434 187448660 311246645 675329498 323561075 534484634 269073769 37486829 511360972 120159207 357427473 205007761 632287863 487510064 674494939 348566106 228153369 796719755 505372562 840622945 769955060 170093451 242694343 775470740 241775844 454141934 119275583 740171418 964068053 247961958 905939423 355686012 142877438 910094853 933386472 475877918 570223070 727256159 346199867 485125046 12277191 213032099 337536530 319061476 544807394 523095192 717212384 337519215 877446682 570059501 877535559 103446671 108396842 730782728 993666326 274784529 860508739 26851750 842906492 829462880 513326211 734435561 563651715 539726896 172067384 349367749 123516635 415379049 387323149 336518824 44626296 43474814 416535642 732674710 469650831 178698029 154521479 312944462 963637115 111259017 246343087 594159820 325326325 667133390 855308602 878976121 395440637 648579276 960133255 455582066 608317190 122694121 620745758 899424852 764122142 298939744 757170653 768767642 153184433 609346846 185268310 687633624 79042140 528020742 514836708 177014767 661890234 321525350 750273285 422485740 463594617 785757880 130022444 658438159 13772932 444054680 588566308 860444041 421151193 735451766 804031355 81102363 987025451 771590601 161681936 667376920 157950952 412130748 784222328 589060853 914929488 994522046 463402019 710531674 965116914 127421428 240855894 880738828 141401203 107006998 627491194 728440839 685735719 838404067 974300210 970459464 801757812 297247451 23877372 236093128 821303038 250334825 227125250 346696107 49752877 565333304 93132932 535636150 794766077 460130215 899921879 418671771 270162590 990493502 619842440 788972627 557853617 129908638 727413373 60802970 641606389 951807221 875972679 285613077 870308658 151606070 136404931 400809636 681635803 951899905 429356178 388306609 385669314 654966812 836092133 167467052 58594045 338994356 22623772 901088985 100323663 573557600 766133307 641488761 415624314 389031236 935707368 224351530 577793585 992090388 966950118 787713483 907190570 598237231 30354085 964342418 388339453 337610274 56680004 322336512 549016260 343458847 489661643 964040285 733030252 388491491 612622752 879806141 305315847 670840240 492074291 235703579 890262921 715408782 675144822 516358289 642873995 288368494 159183200 683554999 781039467 608552726 821527616 342872238 298364684 121100347 386568924 538041682 279881309 769188421 135176368 787267509 164578053 663774569 269023026 986322325 102727721 262153991 952128287 835553706 442011417 217398680 892730660 80459800 925846529 252430631 81627217 202209892 744378102 684247412 95504403 238556460 647775409 162882138 347240879 384398134 106988229 323610212 294757714 428359404 586091558 486830200 566029449 825776473 322297823 804191681 566848696 374077168 482963938 185508887 188319384 718816139 897115077 220052059 361835378 796221117 943510888 181461649 687587218 719964129 467126842 316445513 643858384 262186694 481762354 228995988 403012508 585732884 907354327 986406170 204537619 904762616 204899682 663100530 69375055 135698004 785101164 82395169 753564430 679407827 499004883 458771461 592706992 965641848 239970715 894837021 564679225 703849431 365040134 971762056 855888917 165551925 316104147 527791093 16085808 586187843 871379680 20852675 640512625 331084859 602166252 394251773 184781999 891631141 349163366 389513014 591815565 33231450 848938658 595218449 504624700 976647953 372671329 219182745 212571337 43719398 17083786 265198456 277788339 835180255 771271797 14295951 376370177 82047062 289020083 391604587 435631091 455235741 724321100 587664003 197498885 11891045 326153002 604199904 147475611 345930168 759781905 491905779 5680331 37800363 969872278 557438912 464664994 563245923 266868635 23294912 732783903 497939910 658972969 186275297 519349429 785295987 115830083 625070801 410498056 135957210 625091235 294586010 188250232 678834940 391853686 392884702 522049288 366503287 505692157 923213094 5462287 308532525 688847612 869156299 629895202 880817318 694178679 543995266 945542347 310418352 603956329 653264156 279580369 195439765 583184165 837756956 718510358 860482120 505331264 46541200 491016479 551930177 568410375 214858951 343706771 763350659 834848773 600246699 517314306 182234639 395621858 622177061 142682411 99518491 589419621 783236589 314124152 449472700 533031502 266572184 56036092 75285162 774825360 974572598 674673010 638600466 418291331 850758667 872065133 487459304 640993223 253515039 894522640 828099741 12702092 944529878 931368612 402199487 707155893 261108997 491439575 917166983 758081591 301668525 129838396 70500745 299890712 614434293 77273673 977656730 784518378 650914792 863908843 781667806 876790965 874751090 707091941 460664177 993012816 638996806 812009204 118915781 903027796 369953996 21706918 674393488 649025665 176891547 30375739 925014242 677301806 473687618 6030319 828707681 662250169 620307171 237369711 432101007 597396004 838170308 850287374 35685864 715163316 609788768 576404349 733485857 562474053 64522897 535168756 685094473 341159383 948734317 657628789 591004962 859964369 162549951 843625866 577365020 792054428 788981976 287098819 811697432 44717588 847487199 377058252 417293257 116566453 346185440 365046214 746387270 241752775 517658395 298865000 310363077 154830907 801889374 623627124 211064718 86494844 720104270 239850098 669862512 823902333 524396707 902548141 192358507 381746105 957809491 80550421 549300774 614027394 600549891 58659282 688451476 33713534 765702480 867242355 657828338 778546093 32075588 426672343 238668494 702468776 547474105 428912991 833057930 250037867 462028441 238058037 273071737 605538370 902334803 343588595 62514836 494269507 504103496 317697909 497194285 635186611 518790684 490450583 242860899 550349974 689390395 254046143 171767512 385516873 215854741 571397382 688940872 609564082 657960681 229854561 862002612 390007520 229562878 845073610 922013677 999510295 222146315 740947403 985041627 925833387 504771802 989035114 149657924 600371007 696892942 780302694 232650250 632557833 678414429 717167979 382871407 344044538 589742854 224660154 787770896 250149491 579038240 666411202 581303031 398313571 978757682 558668614 3228840 614529447 180282144 795877943 409742788 656658807 685387696 597043651 779386214 161934987 329562233 623724428 624375751 236726694 44612468 409780147 57854601 207982076 794907560 40998427 259040685 916068605 5029249 885903395 44496417 671742235 216281843 447384927 689056579 123287375 389369782 890507094 147561893 944037639 294058858 311416655 368306674 413753672 261105542 2750431 315543265 525162687 737102590 269357734 804625283 938650158 403449702 612742675 166439623 499433558 663364322 986833158 164244701 876381589 120400556 590969588 909950386 636801009 835322018 67659632 270291728 70519386 433715691 376545913 389352987 484970065 146026915 390139358 161384980 294117464 439602380 585552928 969117483 951796825 31695863 441563125 48575133 41168032 441655437 554878582 291930713 603976853 351284960 76919753 124172223 917210300 892796262 747159784 447168318 356628562 995166390 904850955 567267870 191101570 6787090 981573259 306334330 984155060 741542113 477802332 525129777 645974121 988816825 640506437 905145165 775723985 466168468 687194150 385662863 61566504 256542984 303910217 235174369 215661352 691307523 183755042 745197796 742671015 491024092 585257596 310153012 594609453 872909234 278407957 573669090 734068986 756207490 567578233 877962673 129618035 969373821 129085855 187778652 503492505 675030424 342281534 844050576 956124029 357878034 99743594 80585498 911622202 797538824 550208613 883480642 849459948 545733782 934149248 91112346 132127594 937095242 233003952 738625506 172654799 604807342 523086662 291305833 680736343 163062714 716609552 917607347 331904695 180069469 293694251 910497423 79353716 14837697 163904320 11537249 475409053 772848649 261286767 11583617 573677251 990883243 506859743 923476637 99499435 654856635 202720797 27181482 742776181 626696292 475217496 402367561 259391073 751604815 136903568 503061624 259201484 706915350 14495668 166844046 546486243 245408192 911008941 19912524 134134399 552505250 443496067 616103915 189142230 142085852 310432860 303520886 581476596 477030049 455715510 4054047 701479959 168564034 396976944 249760943 616926673 428248661 587766115 577340691 795655970 624233358 649462236 854839235 876411840 804492544 457802587 194184718 242864338 380830092 977187616 197276667 887201851 137208907 966743520 997773120 590925287 200265745 953260211 868834921 899640384 562574938 244741254 631704083 783594220 58176918 376921952 377329969 235170696 762928074 301027705 580140044 809984046 272551284 173221799 253194452 422727995 298689335 616710040 313941581 255289047 407078927 981105009 154091377 64144061 899776574 872129791 28748823 944966033 720284073 868204692 651308417 590343256 147493288 276422020 586627258 326119833 421082970 656183384 539477495 263731032 694210090 115444597 538898727 571470069 899675022 957621354 777740952 534610995 629030846 505613630 701276680 931131830 175211020 252494939 130326078 778388825 302351494 648560953 803477107 54834024 585082737 899126746 163811308 969098395 625888922 264952591 315009640 842251529 205810623 696130312 298592539 936993335 618607548 700944361 98479069 658259675 824626380 299818277 338053399 297598938 994296424 972675413 360712742 535889751 415444516 172790408 91873214 582462814 185553179 247667870 829455010 689609959 420424733 92612118 236391511 124292329 268125546 570631472 870527040 205950114 131994713 608780992 377668306 835186777 79924421 229713297 213538021 173324072 978431748 720167518 325266421 292039815 389691093 795169650 800736134 539167475 910610140 509358170 908092635 754630909 688607039 35003815 931871058 940777540 209385810 328942989 612326857 986693427 673836591 140430141 33119900 439634325 401440578 128972925 454256054 876352667 533750149 917772531 313937369 581605725 158313290 501210001 179857633 171746763 715472233 954237255 297806368 458309956 624184698 796315666 832847200 998502144 749143958 251696708 43322988 236266333 600307146 567201997 854998377 854817954 107604419 551668524 326427195 179276935 601777710 154639105 672976600 417838960 376932150 569816206 200547994 532751224 471853379 955292212 784180000 801991737 111256655 795917881 863833655 711865497 641857454 254845138 493624078 109292481 120039834 481254811 313836470 508075573 290632408 659928359 143965544 506997563 960815354 550781143 804353499 934649588 813861275 554246821 244108431 776441123 299272635 12549666 90421140 818563191 703144339 434182310 921505885 831686137 665036990 62572907 492159330 663725295 878616605 810690936 609385346 376968449 320930884 947494580 190529358 671264641 953358139 154534909 321430920 908721693 160561888 688796769 724951704 11830171 897770565 506617722 55694152 281327395 968331131 1824206 199183937 579480748 339996957 453609454 315722618 901980670 202014984 965914948 754997981 381206470 800689737 171341854 387115858 644162241 928552344 266414018 510583844 970181419 384995266 542475945 659076380 77381835 7663665 46145607 524087569 962859504 12483846 712261216 110970164 914386702 853717475 145151175 66353192 195264273 976830422 286697978 650799305 804977741 207001618 56982705 470473493 374687717 390626552 907933640 255667842 628932495 224442482 95093775 217479349 584548487 513512590 409123159 742605275 896097123 753879351 578103362 370194220 566388115 646648260 550696662 53846588 348346310 224436865 85148104 327460949 14098665 525467483 99180228 490607563 458528521 826802523 380786523 344421261 399021404 16475502 595896612 82971770 258520975 721590061 883605668 544151927 141013083 174986861 112995429 492387630 622161914 970915468 652090996 840046776 601579408 41566201 113955191 350547617 249361333 827695787 84568652 894365465 475304677 311996842 479589005 907716582 847728350 664754731 563598006 293989523 224095456 168538694 965084352 879421476 588880878 182801310 98765051 178629282 66267794 144764949 254343485 14147155 828041581 499773083 516271127 380031556 298281051 26441154 893770614 692844573 530760058 295064624 655680330 480387406 336163066 52232621 860912723 13908454 647228672 825901902 603367743 324621005 677727244 981907632 472766902 569426099 950609929 764978488 486146042 934969595 596856465 565660026 411188855 815117715 667404469 603880125 829266344 327856828 462269524 279891357 977970100 908588302 543882669 126777251 981942269 556615271 950988121 940771471 930021548 867398857 627796395 428126043 482301600 978732573 491702318 205672298 472567327 56756569 131293120 392164993 235709185 602677951 437237711 699376729 979136372 766671964 996007769 506302786 982245457 673714466 508209594 209675894 654448697 816404841 959338792 348736829 887356775 482494021 106707210 325816146 121494446 177294588 965331146 949636203 875973807 349291944 425417365 115423101 335667261 917433973 413055908 19562137 555932046 58638712 637495932 199557771 502730525 426368763 855742698 834902015 896804420 13496715 955833962 297789875 530657687 113971131 465751688 707224477 649715462 892397444 113474947 856032461 166928449 799901536 805572472 399516860 911072730 990874956 439157740 510490003 253332964 924329800 425368032 706041193 187562441 602550319 358161271 156103008 713501271 79261063 744747851 281217877 594891458 539733328 39683091 996507242 212648115 925176387 41288580 638862469 468496583 837719951 80214816 862775927 958662736 960747298 345883531 532312850 580316562 684289816 999226249 474081731 393711687 661058888 71040802 754705154 491498633 125541409 590059774 892506889 44471138 233257380 185734962 473915439 244517672 22612954 380530318 802774425 751607141 782793241 18234329 993254567 266444656 339805075 293906639 205086139 444376632 875433091 112128837 488920607 309515450 419098479 632778851 754698104 305247137 334639113 289065209 846019443 636116798 341034749 877061493 134802880 236698960 613512951 586096123 975878103 425909514 815074522 507346328 946699992 553894788 637391378 216596686 658429123 233729612 138348132 714298206 172667501 540338862 362362243 429624010 968131248 975583353 23938853 643535446 590683637 676588703 143032268 489866189 336313833 983886978 209947708 645578405 636509108 870551107 782709793 358076470 998376905 160405297 702354762 927007196 774181530 603372074 50315806 642221862 654462300 982700540 782150510 815394295 951146886 113117486 161138911 809840129 180142167 551152642 433108597 36929996 405516205 791804667 41921432 139155852 306508557 231275621 949062140 40051595 683136899 513643035 907891445 622612290 737185866 322278596 448126460 452888341 317436670 179993867 551556182 973537433 344815223 987571838 760107629 578790563 95323065 68187200 642334360 209785836 62693650 147143879 505280032 366717511 6831039 440855511 750240758 450941408 860605707 551868040 138831599 562440892 949005333 239557610 297756386 478264130 908554100 231247450 358754169 132542580 764762627 915254767 37754877 975622937 533404675 50509859 903348295 589015234 410147945 565589791 394835339 477616700 327654117 711126928 51210075 74241204 92980365 533425046 438946948 500730703 320506914 744407579 553333479 833321871 158235121 806329289 362108655 79806161 511266094 135114561 747846424 188702823 793606665 86424303 962456211 669686299 901653930 28223751 959548566 933332052 662472698 886634233 904572415 145697810 571073920 37665244 949057376 537716685 564730144 42291146 166634920 101072477 251921620 860271851 189934488 247206346 933638575 754688449 910206497 268961259 655658305 560013469 891615679 833211410 687810078 979210148 333912218 495646157 812231283 782093760 661685547 549130175 818550651 458027060 446270046 200387239 917375068 299695575 858769623 980156980 832647633 178281938 329863427 73034176 449868845 987487702 714407433 166129504 520263704 554072012 121529489 889615382 619735061 350352002 644005211 951931170 203315006 403431018 628505130 894603381 772969987 535229775 920558133 891738625 942345423 384316684 44093199 601433009 427244996 224977775 978684171 871776226 232216150 978843162 823177325 567788678 93220120 643613147 166295777 393629213 855498466 731301403 661022244 367914165 257669088 869159371 860906321 680459163 760116275 740059408 484349322 226857260 914550979 766272619 82639009 852791201 859944725 25160803 941407151 92064222 561761437 738756527 511553052 343871914 312256474 417383664 27705624 423722585 785636269 184772253 624198018 758425394 149002613 401243929 65597910 801705340 707440852 162730134 472502456 728931460 643728461 761574648 117061867 493177097 571614601 232403349 89907308 420735883 874736378 794705863 132355857 760537891 45569030 441879225 464878975 82144932 587620238 379445162 603715132 462171591 182014940 492881683 785485296 862972776 360623659 28432927 141004866 315064859 676130512 810831004 18069102 852811622 475908731 64543793 829154490 159610139 565086594 58445165 129334982 803511333 453895241 52627614 924220351 493089538 797575484 271564944 198991563 492069019 656119573 626615062 924455906 712338770 882079962 602292780 593668658 527449299 964314613 205288718 924393803 758967697 321528593 980844791 143127399 422116252 522619343 342385269 16198488 329095107 412713874 830529824 306870556 229705931 587535315 399180215 521869688 298974113 466662995 75724763 622187545 187892560 389748967 638216515 858065862 834249851 275141985 298873726 622129488 854556925 643789249 357887087 551937972 20091098 121195023 674517457 408225813 510301734 842540159 18155618 376564278 748928736 291376629 680027703 399332597 293579909 362757021 524348895 440491156 785953691 479018268 136754689 94358940 472225759 259002481 773571548 81166972 630555542 914641246 487274079 88772632 784510116 222041007 759373414 990931171 755064371 538974974 514187304 499173440 7626792 883850404 191530450 446372155 657325459 848035287 485729617 605883251 928608749 233513985 815067738 40617402 295981120 378703151 712209456 164485298 826556082 265798711 172055199 236510529 816962923 519297486 937634272 253058897 653327787 653167082 668366999 513787872 52881732 12849539 750553237 855204149 438418223 271111142 875294819 211568828 763784229 950107961 478594743 816785693 68946942 117171134 210505535 376100553 722237330 542096191 874375790 5273828 818071361 313292518 61397486 864992267 227192004 90448314 835182871 854113288 541261914 918224862 833986446 853511260 292329176 495096310 471710136 789150634 969870902 415412033 963864643 243058011 89282708 298181057 125687171 144686852 780021716 694538060 529628731 276570886 491316170 573107465 438218673 835285872 397260251 841017938 779807209 723362858 175189064 282266594 517228729 726448007 59861821 997013273 387290723 167815164 340570401 211955737 852175253 772597750 481666580 783038849 799894146 166097421 453056656 234186355 619137402 815420622 770398369 339724533 48173695 611220752 309848562 908973546 604089192 69433543 185490591 425011723 258975941 294206668 366443791 972179853 501793329 333028340 37297265 594117981 362899009 834724623 350321003 77378979 142156266 974250631 875326726 527396362 883156452 642347612 528749208 35515423 2483134 437017672 901794005 564649860 902030104 890930144 501996261 643644176 168689838 715439877 315766829 144189002 727909071 604384785 468620171 625978218 479231484 50238601 70599874 486640251 339702296 496769261 135210885 670334459 150539841 153122152 86567237 880651620 815701203 205401040 668378524 345325220 307678767 786832976 334861931 589858365 820713576 297320869 151261991 185123533 234966149 523904806 524767947 313255456 965158794 881814231 443952463 513428929 315209030 565111701 18084066 215595999 270303767 981433429 326904135 607100442 611207768 886764075 212584072 776057223 851963988 389476035 475936020 824866941 366764257 818932093 20278110 818281412 86654177 623198617 625179599 474099944 692001034 665760661 761677548 370435787 354625326 391685307 174884835 269956662 348781990 754259141 216145882 248608982 83254046 94934729 133960747 702806048 438818275 956801260 963971862 471449337 155201636 705802599 594497995 222856185 473388072 407992113 817567182 600915945 685722799 778224522 753226006 854048143 319513161 690625351 81256915 278297367 599918231 237430477 91043972 829935622 651774902 941101085 984784822 581724153 768700072 367730995 510339154 920838734 468938203 111180232 723474973 693996922 163284758 168201459 221371298 544959242 774640161 237108912 287977807 474306836 70629452 935888059 725945693 623141284 750524519 882070438 246772008 355104529 840700633 618587057 456331302 332194872 97235691 523635585 138396340 153219231 539447116 574155812 180493490 344398991 3520915 520528224 638554301 977246425 822832422 967006197 253177871 475821491 511714463 283089612 112832933 645074890 299932355 433582289 351462168 425281466 691250886 599968537 858945637 262476775 780854893 685454648 701588147 306281082 875617884 66157781 583693250 318141512 796016812 311487619 516098847 325424805 88238699 642881672 660637984 199657931 656733308 429456167 659993047 453796403 726878984 157544317 696027571 514567080 291759315 310654915 978727907 880655330 753923550 277447102 575303398 579106636 137722407 260096933 417597422 17822948 810384321 503933648 586242700 107352679 950438942 20750142 492548632 78932024 358438601 768956379 594709825 866107761 296177426 226579590 474764336 458943767 139864722 920332403 54845541 302099828 535626860 754133783 1937894 232877468 993298310 18444447 351515433 475823432 657955985 345931754 289003466 243358714 567204337 343802692 287709310 42643777 461811237 114685308 781718960 584241815 874925118 495120128 7196672 103603220 719558095 725115779 187989479 787048872 246561279 764707288 435217290 188527995 527557031 699824510 936647238 745019216 561992369 616228328 235012284 750274555 672580614 791899142 966260539 260608683 88796646 406547051 860097063 490530134 717908637 13732945 85308153 138758531 958814588 268283925 740654685 95788681 107266408 794452045 488953521 412503216 373061538 32000306 953555797 485654497 280784374 421105923 570565882 878179934 683538381 895223533 263033823 243945971 752127435 446410839 210796282 137732034 943586899 561821240 413289980 505140550 414635752 784413174 930154382 133387493 873203620 818372212 154792860 962621482 97922029 779940418 466154772 132709377 127170357 759464501 268292475 605625290 607189226 363749716 62547366 525896243 789784517 755700287 256791850 682988734 95154615 227295327 576106990 565404275 793503171 750369077 636851075 170800842 854203816 761662649 727520390 420709601 980795285 494135743 881487164 648017336 657585644 647579120 520043270 609334888 675073975 461022997 997053176 471275135 418383175 408284143 458014387 8064617 680080758 800931789 529585035 752713823 453530011 313682269 623401435 48840868 551257026 908646154 748989265 909919876 479843237 883394578 516651326 851835027 491798460 387343599 876301736 552485630 455969480 279553831 971469651 766584543 1896291 105338989 684848696 445684585 996763227 758882209 17069438 334553970 676491033 20257980 375820946 598753457 479098479 693818083 508110053 692778064 372270423 517571503 413220663 493392493 517033901 303581207 929995627 723511804 997742347 323304279 218912297 672879880 921499485 568510436 103351664 755881576 745830670 39563812 55074918 827886231 386224649 26798263 546273393 659105140 296921414 501285142 764241501 333320434 874108654 686502375 305797892 992325225 51993633 780343120 751433292 720194253 350486979 213725242 493506217 213319398 220555056 234939500 707576102 468183306 163567866 754399023 460421260 346702922 167531960 973843176 755198568 552756696 397034116 464128101 99273273 392583205 572797346 628231337 603579161 85630244 876214883 54891258 45835255 882910567 359525347 946149578 958129316 556945750 909052410 749397163 434836390 565024658 517590543 653496214 999766973 56020900 42442154 639540861 677224693 513565451 633525673 888982197 501615688 341254199 945025124 191485015 785960565 993878614 607616633 300250254 755773154 522293926 173871087 924076033 310349746 991092592 733003200 487629004 395400905 109353388 287838466 57035195 455867852 177178530 313048869 870099653 954894098 964677138 693619734 71846040 603545291 330286631 120568822 303537487 348815681 140203897 382384938 377659057 457047310 575933487 962668193 626728772 463820069 135468224 93439135 24697390 579585091 461314530 153118033 151289408 163076695 664746675 598684769 131472581 824837774 712464580 672037038 837386950 580516549 970381591 519799996 156371877 455178493 574894440 576582603 113712290 614640660 653232694 308853346 562249143 998647108 616215321 867337363 10291092 91197113 45833250 866147690 18752869 490958551 262499414 696907953 713005710 46667672 64316583 853170049 414160996 486058124 31792165 935027009 611347202 588412270 717898422 114526532 952458788 310899859 846585342 801102722 447513160 42035948 270427650 233308660 981946319 39971177 521646239 310596358 442644934 610944890 667757124 486323470 658739658 209324544 808624735 437873776 542427178 149643974 419537134 708510604 745456941 34640074 495555264 864290458 603145704 303070576 46123204 758309546 401965419 98874525 500507245 28961545 180149382 354752930 563855747 635410729 321601962 897553418 893937290 10318473 297248888 573859008 641315226 996256048 272839672 345590401 146004318 851584383 828963367 496584607 977110210 759811871 266348973 862894741 533959578 40616236 390443992 958402757 74406130 177560681 371892971 690356016 5429174 783009499 216493242 642378490 74593278 72304435 309707841 734941157 590052177 695954420 434962617 3119458 56219421 184423280 733434538 278457812 927624919 450954996 841859216 666028534 520694011 354393259 149158955 200897711 108018417 193957019 361609751 439121886 31105957 715976715 88092215 42111301 923820193 492598012 105223950 14743692 282525020 997995673 999845650 39038161 863413326 160339337 44608830 233722030 618185137 773673535 215673428 984980434 872235375 719816932 88466963 774436320 159607856 208535279 549095921 567859127 408207670 686672346 119932177 613160036 602120254 192742598 976718233 661521567 616791047 237339960 377014232 668911323 29022176 140784551 391072894 436042728 184862225 569030586 19369115 168511419 952149277 454756664 728877827 838925562 56126364 853679568 705629177 835467585 917822705 46339648 924150209 458945830 693044585 546941749 917080049 961653363 914457882 442241205 432618911 543088400 734316729 116272750 878081740 798848718 341674093 84794779 708106094 149695461 92925290 960857436 359280969 126870314 265235814 957621141 797599105 694007816 639345963 228484173 421194035 538411149 607629511 13137491 707787575 877677182 990442181 657169862 90140535 442493934 48970476 345416525 730905881 621057859 121684369 90843013 196465348 80698317 919179088 739574337 314097785 381239548 336571821 367942329 193944250 510598233 371303523 98216751 532402452 21395543 608785182 455966335 166803311 268952868 421663059 668140313 886906833 300885847 542948954 889460434 86093037 743416879 662287548 917866702 999753803 92156352 422907649 538594721 989427941 539997827 217831788 817533212 671036240 585690422 963532107 512709774 192490878 376746383 7963221 930356300 177094925 855140737 685158946 518691464 646263444 799121401 948900430 860259272 614632944 20656202 115635242 329800799 859637060 571125834 519408000 266358692 174399112 424876198 996722116 551028336 204241272 236133691 963378100 41320719 94634242 502348612 306928477 202369012 526762883 143334412 613988388 362202290 69799286 197236181 671698444 55391 158217594 370370547 224953496 657380558 600326293 290582275 779359586 202629071 954173567 150492071 132968614 386912402 933741190 611796794 731553730 969921760 228941281 19562382 181507172 411349046 952964764 152048569 75676185 561844226 924274382 215881363 478493309 473170359 983172092 570836269 134036209 623552448 394895620 346181325 476646604 911632057 373773800 740236931 487313024 359617497 125703981 773533740 819946082 100430380 963794698 517111168 114884696 302376306 993372511 33395315 908958418 700209842 164542233 667821656 982395177 263893179 395464289 242979692 448062910 682694152 283318471 197654914 746758185 846636917 192186763 815319915 901756692 278124673 640772834 101743138 879880059 627788698 221520053 575568556 782440234 669300437 803988503 998028321 177414314 200642213 42499054 730085023 389042160 421013792 181710421 249513139 644980786 284896452 398767127 366646747 584196786 1138566 926158663 692885090 662074820 423215757 139493938 912959984 692340959 761508726 117588115 54174073 117441659 168809625 419195188 480954662 128003551 471208106 618915638 684668995 69450298 911685567 57147018 680594570 165865579 642605656 911991884 124191579 950987017 479216921 199353208 317323721 564101505 736273676 626867903 761228587 425063743 288629630 869840667 771062898 709177678 929411343 452132199 212041200 854598915 320640188 423303845 391990886 752979584 347918812 291302204 342365915 59585251 461391449 223434324 526857642 270333844 650034264 545757200 564196177 834535845 920242743 230940430 676688152 598047444 29234373 619868472 294272755 924107026 768018752 799729597 255199184 694903948 997335060 940211220 20856829 374830633 142490230 345150364 766246465 160600501 377765981 180392026 143680042 514720782 613454090 923717125 309164698 599629799 788119968 79171376 395044549 292561258 815667962 418370947 893600832 803233595 673379449 703138758 203624219 314429298 365684444 36437311 204300485 995370267 493458688 960711874 846988022 715858590 674704511 471051313 719895928 799964678 61403495 180431015 215215529 221245222 222206904 812055432 452176468 625474505 879413378 882800307 320282669 882180078 739360794 923101320 983945252 952064624 254175498 309892055 461190078 803701741 708677206 580027027 23695153 223022694 455578496 653981737 777656227 593269015 110046680 692140329 154083250 365703302 515176242 237111180 830699182 698837487 787277906 886333024 94151935 64339622 999833009 311168962 798134541 707411816 777144629 176655945 176848578 837813539 172385034 167364049 818409503 291355439 391830290 91095957 694480055 970182125 193536864 274918092 262550875 331757609 232664154 834406153 35441352 594844901 832692082 369382797 980183596 663118002 137741528 519885275 506131020 488478555 997732434 439785810 550078835 169839736 569241269 10985790 592529544 845429648 794131747 680452571 72370221 402450076 523792851 516461101 163484288 182714796 512959777 817057196 945785704 157440737 717904234 967349640 312995282 214361932 914972988 416739663 89142738 853599408 888138851 973602383 22859392 68208589 197490011 563139336 556623030 159310249 856523486 676101100 103857401 827724690 166112405 147532122 751097214 455628081 611405263 677454907 229207112 580940253 800509646 692267189 459971933 553642877 185242034 6593875 120683415 868669689 345715537 310496777 34698228 664982344 854362613 907203970 756841194 715518112 137572260 886575288 943528256 787570665 523902696 253720242 542357796 974733931 70190883 677307055 353382598 558310668 585938021 560524991 636401785 800581849 183488039 373548045 495806503 475724550 364252093 144564281 342437328 789100485 601035051 465238266 934746 977116777 159504813 20323006 956579941 703989134 616462337 309272824 896067925 296595585 314499517 845128539 681270046 802532030 603596586 628827707 443659554 713019451 86160144 339606463 611810582 762268480 532070697 391067799 763540010 661075172 644063637 117570448 416445348 385680445 277385794 423440569 167763316 289282447 47630944 392470801 371008961 968446653 747788851 926726968 887187391 290384362 884548348 39301366 529083797 682709738 485397733 718413217 976262227 623730793 62485781 349651307 832052552 34787150 393144896 76325070 567344540 957364198 466331072 687447836 489054540 471898546 292968849 835584809 564474981 457408648 735045086 920516530 282896621 512000681 356501628 426901891 447570019 610013522 756824543 220318233 815120743 797525970 262230402 448992443 983639064 514878532 93262692 14524571 178701774 277013176 753844137 489826525 115568078 458106835 485195873 357058174 875839369 219789575 6592650 700693584 363859202 906926837 410506371 379958102 374628890 589971220 34433028 275558872 778125272 463369715 517474200 414856235 480531096 936869008 656550265 221886053 983124604 633909473 171791175 448659131 191577095 838030912 170899676 633428754 426439395 825444362 641113651 238265105 941432205 923997274 876026761 273823819 406176452 606234445 441840718 527309944 182739832 904631566 636702271 696293291 893096958 994949638 650873003 206095443 811758736 507401547 558756730 874849564 246724147 658920409 571891820 88305052 961349784 47598888 150968449 588993698 227667281 153934009 225838425 556344521 441505381 737702438 330939651 447156691 873772567 747287562 388757598 37241779 884223236 737606434 635023338 585188179 849368440 34109952 177198859 296790923 306621703 986261518 1464598 287007536 284573177 651867250 270601383 283017498 337800517 949403276 263803955 825211962 254775802 800963223 849326912 677362804 992562077 896287167 567525684 667387644 567099245 721473119 318377431 461451289 162039740 683159539 567659401 619837299 684410469 563744332 719743682 140420785 663483251 275894746 780758826 651749235 948557211 108938179 426242758 99924620 953887920 458891530 883254292 589289905 206482573 900167970 645316409 412323774 194748850 745285335 389970650 32019956 600732764 848444415 57043300 572242096 677913195 44103618 809157847 491035054 432171978 273989947 960139558 154437909 557489848 109456761 581740494 925968334 890713892 35361738 8153538 351170180 82675374 530229429 332653675 454769147 923007375 329156924 602234428 401103586 585746289 840540817 613963185 561653186 833470913 102369793 697006844 627558846 99071980 907776064 8444348 198461579 427006250 798593190 497001175 750272990 429888576 498975897 333832862 51391403 550124637 690817145 903226581 488304807 226613725 980361621 831952276 223125610 162843169 909916369 752506294 378332025 649413963 273910669 421526228 960816309 354324900 166373130 478970080 343784569 97423254 150022165 139584947 831154584 777958898 321512728 766935187 651363162 306703019 841461132 367390815 983830647 944985628 418503054 526406474 416860328 98237703 44979168 928521166 303321628 538945684 35036172 556488835 148454538 87468057 729555423 254832684 592608134 735257228 802204566 870014502 398543701 395532711 389603399 836348867 85112254 277221587 25718240 801583234 897641820 252684268 372146448 40163861 184786098 662923434 17288047 314153152 119245276 500750005 179619742 802022728 985012486 151039044 503151921 692545224 387194055 661159669 895439927 238590410 254911280 875650714 44002802 304462028 6597297 856610142 94804719 689676388 911184322 851721115 217310440 5505789 619715056 305914859 465450521 128140359 339895888 210753852 457137387 217163639 223992671 812793710 136051628 257800457 154410177 757720789 537992966 698952265 503361658 89422013 214336010 567985058 45622185 493700676 988530410 992540316 342974535 130048969 831669425 296811487 766584100 864888393 897552652 639512624 520234708 491782568 426788706 931055479 772536558 701872582 474785216 912199622 820936087 495855895 51006033 432926126 606437268 239083865 808368853 872467198 657763001 591556675 796490219 790772863 52153518 267323678 844630026 5454176 594089074 469326414 117242702 850825118 400284333 795064322 237328280 395265188 236291335 346635336 874804577 931707303 881327941 775537952 26782390 870616107 24960110 972993967 727790832 689082787 319831270 847857183 967053309 469848862 374715919 588153463 811213107 676448578 956129043 449792185 536866751 835105935 946407128 640208411 803805317 535726227 901489522 85700678 148918728 264875858 245643855 551310082 786675311 281934604 206926023 13965313 436514518 246449901 959657771 547158687 343467924 489838449 82024998 787400803 285252524 114132704 227948628 345849251 322657995 548770190 570717324 350795859 519524487 120053984 732566616 146672626 366667230 617902721 756013412 411467093 611201727 236003903 596715490 507126669 686688261 559916977 799515122 148003824 24658589 556696109 673074314 86944232 424062939 521998364 779892084 457897664 960065224 875750220 731950704 127441594 723440701 379019948 843343926 467546237 781685782 24788342 651818587 110646097 846313551 472107285 103449014 679027105 293908844 265777019 943651452 253446315 129617447 626881483 803393169 380840759 774943570 88998321 30650735 104481634 101583128 801493695 400167530 852999322 547100549 84895140 52684206 15752867 160129211 142884411 552579904 32447298 503668124 712332290 909239541 425175004 999126725 521933854 215434607 804814481 188191004 86090709 107459727 636358871 245953319 807716729 919318285 837254194 811948780 919540714 191054898 82791145 138649079 397368403 591464307 959330382 135391944 812953309 548263188 324089603 41319936 131448176 217750453 268243798 138071667 251502830 795766777 574934158 30636725 812708925 652115942 652333010 743703361 515419308 759353772 173306967 930207402 623322110 417997515 944004350 76874011 624165842 403469049 294714215 592112022 213976480 838621799 190853121 446765828 462793048 618080339 365863324 674311985 74302850 645439532 143786568 950533587 310976802 631496530 668694332 594846211 453167469 404098866 618991064 585032035 534702473 989454225 449160462 849602455 13496736 560892772 359483855 336197590 125555489 88505172 807603277 742598304 481136894 867990882 437792506 426070661 272953347 303250543 900884524 122732471 970620404 976115804 884206857 629258938 697952365 450320529 198261008 484218817 140434778 296819012 120941416 297117542 93312070 274064927 47904931 303702353 276633452 999110518 961506461 786207973 62114128 924726039 321489118 519093672 635138708 264300896 771530372 673526597 861590214 406177582 659853933 548924179 756819698 195336098 455340413 946369340 596590976 88075247 213717704 483989779 892094123 11576148 304661236 895471345 440306080 779631254 131422117 596449359 305747609 536171646 685412298 772492122 280231951 459433471 93010108 783935467 219336876 38459774 41638039 536099478 727336399 624874638 437774276 44244905 99635000 987699138 459761281 996616031 39672190 969490228 510784438 110006574 498937154 92228830 228700457 126257274 797144788 638976446 824714637 660620831 876967008 653871563 812839316 117571603 692078986 198589213 43123235 516308765 963112449 375591706 683770601 901970853 735272227 553552961 710378003 856445513 492273915 226514733 767712594 728738659 383946189 492172010 110972981 398713983 433031712 184093962 414571129 614311537 327283448 334099292 173803544 410124303 23177755 679929465 830309883 873616071 238292252 888129950 113870557 996606896 966609133 810136448 80874390 886149594 823888497 81360753 114849036 54097019 777766303 628655273 166083851 117431369 389200035 625765795 624738588 6679819 739015457 999587623 186621643 719041095 671308023 687582230 346338879 20601685 245358100 181466564 180874767 734776702 432941286 351750999 887724572 717731509 265787000 281885763 300961420 260912439 501787836 983283107 835145997 391031672 732075144 513366389 463164245 188905953 383639432 354311322 25944033 466385960 843104019 990418747 20173377 906283816 291301517 20061029 301488057 19174702 516755323 861380649 563196302 346840042 217401573 580738950 443349967 977926033 563672026 544410941 47910805 372080182 11902796 518694300 378097921 471268957 84181596 130316654 677860368 38741768 934425396 494636071 224135380 782495595 257836210 49009620 529464018 595837371 458510632 737437253 110172838 558347181 100763754 218262429 396309657 621475699 472611901 932786006 997870584 624661698 588043797 792824354 782307901 840793227 421630608 60848193 969246691 25825644 467423256 864666646 902687185 127492286 141444901 432298345 391195593 921171492 971487271 554184500 754421962 635659516 562888580 217673436 428274462 703647431 800449756 721044825 118003456 632208291 607528519 173786241 212680694 394099809 848563236 124805720 588917856 506227 973797768 834726167 818170965 989005941 820853412 208458961 835617741 957749751 447278529 966191859 542804010 430488861 597689282 879524855 975918815 140666878 766987640 29991125 661975993 268743360 716115635 213510187 222030341 681651364 738481963 434581723 342219314 868598940 939691544 43869313 492838086 873120546 369089157 460671978 673096330 567720309 919924058 266842441 195748075 198569319 960906459 11132988 943683549 958807737 742137060 470899214 314179805 219684987 366960546 971901472 84630758 150405532 708548751 885157231 567275542 707492883 195396134 44913259 746137189 294500558 508864153 699226143 693618797 930464388 949123289 224040557 381319799 978938901 612869000 836204751 816437642 264045800 39895796 326071813 204403473 140047130 908461982 32919672 975266433 536006409 209186033 210032375 984938957 304738092 831475841 942986804 886804655 768590940 761530433 851636135 243425864 885409071 520602662 366463327 22886108 885478283 27793263 531377125 370268946 180240732 976049943 875515540 370095724 445889982 614248065 629697473 899835290 498915122 691951662 932383569 658655796 675932947 176708621 247967258 393875872 70809206 131219853 550611357 267038206 878502016 655409808 987056897 352211545 160954825 807312903 993032231 937025712 72771966 44238763 904737715 420078934 87446851 634124563 719217693 877180351 148431596 295056973 863568228 246200905 921889484 869346972 745336516 848271177 853134449 641417531 862422086 946962585 64750147 675998772 903051432 836338672 848449000 424766662 366805920 994417400 531906270 537386412 584617338 70959590 93000919 612997944 134394522 780124614 637232448 460444095 265320893 315301692 115968378 912732655 422517214 41666690 806679637 850776395 606732753 645182859 985328326 420002344 914724737 552112034 42564979 588177504 826413043 844339789 350386736 402676472 45043106 31021353 573372919 454161937 959066855 500957841 321608961 900285801 430987192 63801801 930516412 86128480 391871270 405744405 537367315 883249993 289214202 318054255 466201091 18927470 579774482 470945295 269376968 698748109 153034570 97771060 881573537 431941303 419183644 39351328 175073778 92799883 216343366 817452982 192489269 359236380 246943620 439242326 409817220 266892655 176154342 700340240 176282910 833846576 708648684 554148530 206054757 195977469 396732077 569610901 96053419 267550186 284510399 317174958 19181880 987410960 604059674 981960830 254873168 149127402 862261979 305941096 971537653 974231980 386097601 371174869 481046778 33227320 350597307 296876469 839713017 255903010 82295161 274491645 653096004 150108150 664545424 270140709 960595189 454427128 532380141 886538326 532015109 288022008 110366101 488252158 355154290 586434787 372493454 737119056 466984863 352917486 912236265 150942178 216532932 787391401 582341840 896651518 838981264 259615683 333552474 778279668 55884529 948382089 405225726 459847276 186438934 270373215 266102426 826912665 737155345 631351665 170547448 369245303 479652116 98099171 713387059 511404863 738456860 681003415 531398115 213497687 135224890 885702389 578481726 253747769 637429455 194887139 255686130 933682025 771060937 311541723 464053629 177889997 690357500 918115239 636911024 598605212 155627751 39989176 449421053 17544570 803208583 391913688 605782771 745343421 249012737 17300300 874303806 989771212 180036007 144670305 796540418 918457814 411243737 385360897 300375922 917752275 965643750 80086260 937394820 619802508 497705739 674258858 960901594 984420851 759606104 791369215 279172421 32671755 839525287 892987465 381451865 14631153 263634314 900742506 848564339 359235434 340634609 368458741 453746604 558090539 290996614 369636345 589306047 367057965 725951773 928233965 630471312 638547006 868291379 404821604 363141691 707446674 459060827 740239920 50568149 395830098 319499124 68759701 332026313 516163097 815431336 697973289 800897680 700232571 91296254 446393612 841450872 100642483 105156719 174454683 444093152 810518299 390643718 387720332 697715487 897263491 487996288 666812947 324506619 133655188 615883470 28593241 66138386 496226563 798880528 626748829 421811672 655585806 38733982 394520292 956598007 227408028 468782302 937280151 4839402 636914010 490811623 750951977 175321315 12370244 279167609 817684670 290686957 824642847 434962122 142548455 670910893 604857564 423184096 632567856 428911788 628600045 176160506 992761388 510470411 762118952 801100629 244532712 152153451 683151046 198283378 924504701 71666327 81676568 193787946 716362869 577388676 339152580 977994761 577019465 72881193 488065301 312509487 49403892 881347606 217273456 734844437 899031620 274830152 1554693 686576885 948464578 259041898 116676022 108126226 328613868 760459381 834601276 648820671 105717704 656184675 414764798 598502854 616827894 595579094 191660461 174632367 833815619 925364517 832202027 743656306 186544643 499768417 699174865 680237368 569933161 524234404 449716145 698498298 366778656 805487439 213646653 967254506 343670583 474029530 507535619 97378740 543112337 734824257 307482893 335362306 136500927 964685482 12580474 50073649 112908837 850272530 48466681 378089905 573142021 324743296 470453048 890014058 839661811 447827697 317839858 264386872 515883912 575210037 699760944 195381087 115403471 870346097 107035866 111419351 613045184 425289588 989766672 603911174 750685595 155665454 104689038 651903017 736503825 340191625 335789234 788187061 173773958 914046660 743393273 447827842 465908120 628344449 16748777 649123871 853219307 523803856 173629704 564564592 875184577 171469116 416433642 25707905 24893494 60648670 458082780 483542772 732648180 930570380 324529236 306678647 580994939 822748300 2348343 683901421 412195446 191545153 878995767 315808390 989959219 225979239 831918986 130113601 147132989 426289674 999107997 186328908 606412581 913639672 550481239 228177203 573950594 742954730 908357440 822462427 853148648 602320235 801799464 202689777 805034127 101124685 207368052 19996343 489571553 139168284 54439195 252506872 336865961 636313446 182700843 710474959 165002552 406150707 346056603 161114685 105102688 296341177 462676486 530397446 283724182 121135672 267537505 358841498 80986379 847544151 656566907 934148711 521479920 213906883 971890091 315066731 316931246 904019263 506925856 414823283 955570664 637436264 948740542 15836672 978236490 568223045 617916558 538652691 875365570 670750291 522134744 771633819 395133847 434517869 318705478 187966695 613843825 925252705 6187652 399548121 800187494 682543051 148917870 974858537 973695315 417326169 569597761 902010255 192548769 278657703 863975601 70655722 283474155 403810750 946464325 521589087 844273544 160776497 705670751 551482763 741162676 947652444 872040013 684231080 818001909 559814322 459643982 816744621 769131634 655099587 680195814 574841107 94264932 601223243 685537196 219645220 666989407 405374159 788248780 744705265 589929782 562674922 424328559 554974540 193570555 525218455 97774623 697779101 922500640 952239542 280754049 402092352 19440952 913046740 874110698 766391714 480505433 69160870 178393198 667789878 346961092 258829798 784156629 93827944 501243740 480484155 898306581 958809782 549060145 627270935 365850286 638295571 472994705 950685844 731834927 69609433 525261532 170007826 74811731 951756164 970031564 563774176 547978248 200846841 904080458 683688244 83392604 659855662 687240752 838553996 832126870 630342279 870330678 750392110 839946105 411678666 447570739 884171734 517622876 445627086 342274508 549837913 227700298 877536862 58166379 374495435 350901578 292267002 747260212 908691640 579827635 834147671 387922397 911226938 847648794 361698589 711834249 493389392 299497170 493980252 96443971 588667317 701939389 915361156 320436977 818369061 831865773 159636163 323840357 556608413 404179786 487685 769115693 920847570 699797229 24159421 864926423 427759060 844889030 614923189 803542635 624955604 92037974 285036588 232078805 698426092 65788088 248185480 599283487 136046536 998462430 503430264 546913405 103465640 909174822 94083417 968423928 481216880 93700275 933097831 935775962 157891596 169291325 144218124 467567946 481598638 929503757 779342256 994384056 577492701 935472049 983888819 174029312 996526935 557729039 995216058 716275953 941557233 558059308 853191431 513125526 192686657 706556550 875538189 837847372 252711544 789355412 26420083 536429947 735796949 663169135 498866140 160872639 708130727 410396767 761210003 111558299 482376572 377301896 241031109 798599623 419894654 579036389 501491896 486378269 664897748 468728021 870762268 534451202 282420555 132475883 79011932 461020830 564234214 232382239 332377745 552522131 592648092 55126185 918256798 521400279 278276959 244724284 658052108 153315283 730987372 281622000 516567691 3764725 79696907 643468941 562569629 675809666 780409069 360645084 404537705 797138938 447974154 6656099 205522536 901626074 990310831 466845359 717169049 736433182 503941348 536999483 274729709 783548665 621055762 276574772 356182706 893815858 960941409 904505669 252909164 692142362 398309016 540732357 716514139 409871762 874870541 344584926 175483535 504673710 32373835 320673678 206900527 170192073 517629296 791912702 439669193 590890129 355844299 389371504 267741053 495724186 608966486 199186867 81473565 980935123 981226014 760527019 711224022 537956926 168204845 162716292 809668037 118865374 605114985 228765059 652151846 595275813 587281341 287825311 599403789 389439934 336976686 549102508 381783777 454315094 618190894 312736168 443701235 460231893 606309906 719505440 283315451 683706122 533199271 270727009 977137688 331884942 404221342 987456524 273400978 33988518 493605253 158274629 430396490 360917046 475536555 996239137 383149954 591241555 224544207 470611034 926643508 767293776 317962891 859327818 198649935 839468058 823974402 816662613 390314036 793140851 545500572 682648042 494525512 200979810 355245855 846948149 620368416 23877628 355307195 57123964 637813686 604358505 668126882 877198654 579502819 152673838 950473625 730620972 302332729 172316415 752372657 228986203 105414049 701150556 682104579 344695976 31593646 50304245 105537978 887594655 308166819 814928883 837211233 601083118 947522233 295752427 901290610 644415695 843847158 32222620 596234173 998370319 447181748 653484764 655878971 986589396 688434599 735932290 883638251 534224107 818126398 642860478 883026843 985725120 974075144 426519897 587943480 386945632 663527768 585074091 182688533 64042445 626784761 697166499 411514164 984094403 819831835 766212443 923621261 61360845 888104449 135283189 750942956 88983274 716332784 420477800 113715653 558948474 539156993 705585661 245270265 112330458 343922006 621282129 126929112 177330755 350004351 495812382 561001535 245181589 566778027 267177063 20492294 978432876 991916448 890595554 977557901 934793412 152308413 768186852 868739101 868111083 120662120 370994183 162360972 647812871 764391774 656021514 473828833 692746368 912154252 506907072 682196561 440336000 634575371 955586807 92534097 797782187 872998056 176085026 964777742 561871129 510934927 905728314 801638736 901645212 217447157 302552112 486247551 701844834 122540424 160693836 299468647 190439682 834787314 825597573 683706221 76252237 821725817 554823724 814831115 473679527 552780579 765559079 225864008 324100177 599889076 616065855 587349513 669719508 607088943 870100420 401888793 616934541 217732855 824435371 861098400 186764414 659170149 361159491 588334176 816667963 821055612 27434695 629695995 188583024 145953492 365251744 939897570 311461676 883671104 919960259 759979771 742907033 615792408 472170502 72742409 523006751 374195245 399869987 602238605 500757425 399471073 559216411 221048599 262727650 277417212 682901377 804368790 414376089 480687508 129431280 802071915 682809285 218586935 351206581 873441753 222768045 552625245 19228011 843889794 286662855 743392536 363908835 911212323 71594137 875564082 451124205 72001875 397687815 160376111 847169963 125410874 281747649 638549273 590915806 326491570 645299351 919374583 835130540 905203480 386311557 113989798 235461933 843865939 198056019 886867422 428643328 328616816 777777035 358108145 105854601 632451533 345344691 898298401 635681699 14382943 673770719 613152869 167119003 335161677 740223961 489852705 490713315 733174624 974509700 898835341 286165786 523745080 449916853 76958049 350589721 13998421 63700517 159661163 621876861 522755208 137361179 525948477 651745688 867474199 823033651 721239615 214847063 244816263 870027268 32207047 502306049 537478270 748741938 831631354 846558352 685135089 78673830 578109146 174181875 244167912 987978159 187415818 108351990 192065609 311673526 759079504 791043440 419962772 161833891 888603969 112069383 947189616 751757426 144250900 6769600 136131451 97178501 471855297 882452988 926978761 346246873 553449788 548576823 824316439 822554470 757861313 728270826 423500522 92248025 69583314 271225901 485486713 525591704 875920464 639216327 444461547 393528518 114701032 683298664 890827964 808588088 805976977 29753005 139962642 746792760 585639779 959934489 638482157 628616509 488274092 216473023 665800972 741543561 381511479 317932107 442675971 986166359 167871237 436074767 40000439 228519704 447641818 279653358 676123992 256765128 889553516 67908891 206362911 584337640 150799296 507589570 853656187 745719085 326244602 741285629 616711054 376350036 638394514 447012904 216134160 795430109 575719126 833378805 464770483 524465579 180112011 461436558 742053446 992098987 221285636 865693665 781374030 639921528 271796913 366836016 691306601 333458590 505072740 304737382 167888501 868954510 634745060 63089164 169856839 515091265 622202807 645979201 798948397 392391518 48196986 584403078 127153996 719588177 913052387 800899103 162391782 325182289 54491203 556629666 7256320 748826021 836521815 728970163 10882564 119346400 80448740 996762411 64380077 680830690 698985538 332890215 311754701 457565935 195588494 648223528 918007381 72562649 433554877 21933978 459979974 232304881 798323154 569727324 742449207 153872679 687291770 363986889 114300056 688271779 772977025 810466277 477010005 425572173 262952257 405436695 337993456 476249094 647504287 2931552 224118580 102240960 708427253 259197340 971522016 842051852 526907454 505112930 603884113 520359663 662589704 932046574 957679449 503019285 44763992 789222591 731870849 117899616 538975967 63523644 788278847 281227060 354065541 264316535 993326599 862741102 825275731 735055480 513626262 527526868 254064433 399323199 645608933 823920606 916125963 118524181 385573153 73832542 143289680 808978214 943307873 447865280 509136339 269790574 43611207 348437063 365811498 451722115 528870058 239341801 956676864 898375049 577857529 260428794 605960839 28216169 370404685 167755040 398888947 87289027 925038508 536132994 91101662 789733338 668501545 196018611 242513786 983548752 397353457 448204463 560687038 155548095 829132559 623336092 636822266 250212995 938716516 347839124 934476803 75790670 866058867 881609476 373932209 645096908 54057612 332892013 392033793 381734479 283735699 423633859 479370675 29623900 679096255 877697805 744333580 683693316 415936605 995206191 267488859 691765834 310902492 749655265 565346250 379177049 807310131 65730106 783268730 824948251 124088626 751694768 499562938 930759319 901014486 869331549 369311424 547132920 190581341 663639952 334652117 363192852 683848 876293136 760119505 995286140 190052552 510693792 540789183 173717235 972946683 457887266 326767031 291216136 510663300 387979224 516529760 984467783 467371599 79203462 754987921 685053561 739501091 664285696 110691035 348632354 696584092 461084722 112519165 101310833 693576183 76800388 826340485 330760419 6510897 351794497 230859957 648036878 32979913 513100523 33246024 639228002 994853474 34986403 397148604 806172123 594708357 51866567 391030021 252654954 691357151 405537271 230903273 98104145 102094208 730420729 208202784 226051152 95786119 874878563 251141037 951563065 90429869 891690307 318354876 55958572 871555090 578134543 942220994 235865837 86956775 417365031 473038018 604266827 260556310 774345952 143316630 571407531 910375264 894645585 564685741 959742021 413905258 677049470 405680888 948013759 483322979 290485516 66639316 747462305 872407142 993562157 412228168 738629126 232809150 455608338 475212198 38411015 925838551 972443693 821299032 809311145 51213823 213854271 838999425 38004345 95322611 325417548 730925993 807465049 77297255 247754666 691344342 221627714 318106999 331443028 832082979 130731183 149501304 660714778 283976179 229316068 834852392 541159761 108976754 584213345 852124064 334345043 552322125 667761281 71410413 746962559 469530716 4049927 634683193 112170583 514593246 426525645 288808413 623933853 475708025 493523147 55698572 458286687 645525681 968415815 88688396 948434570 332541179 976094716 247314163 201991682 349203286 991411532 487756197 138115848 710000564 944735610 151999259 552896058 484165039 301275320 979779793 517859380 609504286 479808128 11609636 936356000 988616981 985297450 138542596 932894642 765532544 539380214 202022754 141699575 230015095 786309302 281866281 280162935 377345909 447155905 172515448 177488455 161184071 497841143 6674315 683584990 400505448 645945922 385867042 18237840 261159466 362607236 800381779 543140596 8719565 33694429 702732712 346851144 429548669 274525019 224458629 725771251 515254313 106923967 426337550 224416687 390517419 148894375 952624005 763669825 446020432 358197571 739915622 533850316 416853371 908248826 735199665 743309610 364068685 53229746 616013714 854025112 771856390 383679643 582373008 560337263 205016578 857368624 840056673 378765541 326026002 806654228 392733668 720189842 923086805 42942307 75091090 954984191 830293672 945519522 301752637 715155696 678955251 766559984 807614101 880181307 47141737 279623480 27131800 761341303 892679791 553415596 300310532 160998017 347304604 138822421 634688076 339211148 334997293 272255302 875049355 501436840 131079871 554816643 498807336 593338174 179452901 644740448 57739950 451859203 848440202 725632726 278079818 307415196 101725331 613022122 327180475 364349626 757080498 721294110 608997842 892921194 214737067 958166354 210744121 333503124 581749788 701943675 974061458 401366833 346240094 924016496 332708959 139748142 803543886 98536430 368233119 720528163 757269533 670525419 63613699 696869869 926519110 911335183 857124396 393329171 832353163 597117645 30488783 916285759 892262573 435527772 842150022 184606355 656222455 424075156 819656423 623506696 313374932 811537294 527125245 866177610 67758948 369170711 156282207 613309039 58903205 552803585 382792762 949771054 163822320 791346394 218574612 973267621 122856747 233592876 597893444 858035809 194601083 297229527 786216408 749617822 762497012 246417726 617144771 386249230 567937411 326490630 623788734 516443307 196268278 767452471 831937809 4488474 638281222 330504886 821025649 80899041 988234432 217339419 190279758 595713484 196775961 406452849 617738300 555545844 334148281 425266424 417246348 967592176 642969645 475092653 776520046 9695581 680879396 332154261 26966824 593762405 623831578 266119606 717608761 934989888 6058588 510558117 533901321 703730131 117539045 78665184 119878419 902875899 220762076 16697407 643631553 43813573 81581772 965493367 889981510 151293432 249000483 657072888 840570653 636349123 240811126 932872971 910564588 114205727 675126105 270975553 282815463 572717861 569017293 860032090 106684729 634010165 687700586 824402568 856326986 44712137 876574160 369456452 184141232 156893539 250760553 223510288 965966918 256221874 829446641 256893599 823831726 304709830 460381123 955565027 980817327 860705358 461838867 179641981 332286138 656367014 279996066 273948000 480135944 464203084 931059248 221648678 438432776 92497771 589532102 408725413 259899174 583519982 756220131 530076856 198624148 131162571 696797612 913869089 375872162 951150981 277908706 347267696 850849466 422396153 12430064 509284468 916737996 676744549 192366991 38649449 947915628 655129927 307892499 520380137 228185869 634483019 797594032 27937343 420705100 396216818 471820054 842335145 50520034 871072624 244924000 868527798 433204346 145883671 37451542 688134429 155441169 39329696 144048786 757134450 492775707 752439972 957929327 510679978 460824075 218310157 401659232 246456847 567737685 986018890 137998602 640285454 293882602 175840972 728327335 719650476 173890863 919780475 37294906 418392646 616304426 980119757 238289692 205183718 753040073 435074194 420644206 753518455 554929341 442316991 72640547 995756469 782153555 163828175 32855058 396252742 827524520 466359929 434629679 815649303 847637810 70793199 482777673 245081804 81815879 739877783 385572795 377909698 790942470 268420665 598222409 88353676 897532258 246936083 989012266 725107178 919295192 433843590 22162682 468898911 565525215 660807976 328766578 582919978 835372815 336925949 130982074 455657451 895773739 263359529 273492899 643194580 467364192 610005254 377482770 877656468 279159578 173047744 911928401 477751710 492715235 784174437 569937087 50243787 656805283 445103705 34292462 177362947 438167428 494139049 397956505 856761497 507797868 810958889 801312007 620197049 631269641 513302647 994539488 914702862 983098643 675388781 181720139 707632766 248166413 324963479 116858406 183947667 734499955 57863860 272719884 588320056 97455614 235530975 467635940 4317026 883276095 939754855 253100154 63758291 420926738 604668828 205252786 135597038 694898299 412712876 378855555 211686680 993522291 715903750 773478093 115521331 208977724 113426960 98334765 848286984 364331478 819505962 436977180 204369389 100426134 835242025 902991348 482205585 672726934 626910908 248401172 656595642 960778431 993725903 600989003 129090538 284004174 789617396 11398290 164840580 33596540 40631011 874324347 594068589 304002551 479721092 433993200 476607882 666473637 834950792 459586579 923756058 388969229 361013657 575522978 202803756 940054579 612420716 515395336 16523526 904699187 846365587 93970737 69187266 133849891 693659043 390751103 828826442 169637963 225275383 226171033 817116824 984836828 24577193 268948097 131256232 114671374 949569975 440878300 582988445 473442134 355425846 7656373 924343856 862955252 812157029 409559230 687415231 945238113 926986947 976328184 540236578 821627350 387563155 349454183 29102148 373980565 82163459 174614178 927209853 293746588 959263928 492320812 338595094 537470984 589371746 988831520 576824362 118005150 560677670 37208866 539769023 393965261 247296677 359909439 213874559 894468027 224655120 846821712 354009899 806561900 859633005 687621614 568517080 4058346 533081931 237858748 567448420 688761643 397368018 168626294 776190348 208132069 368607896 163035532 74218361 656586430 827242437 322725114 963904721 147528078 23134293 515335829 595819822 947765466 222863117 427524408 753789781 5075795 668566472 614390249 259630043 452205275 886509659 722222840 457297816 187108980 478914558 257083803 93166599 225145961 673682945 115604984 423379254 143583443 93868830 130042794 861543127 880935693 674993292 664215859 465207110 88697115 581277488 858273319 842104740 743083050 829567211 699315373 141870934 506412123 12974688 924718665 838632722 957644124 465431702 480325416 743336039 963093359 576022030 430308620 957029264 351780932 88876633 321208285 666510975 123821499 116696481 524686111 682942636 887557675 514461854 453890752 832315836 189497432 938607685 523479151 102758199 247342254 220605417 762224599 679654478 91317094 697460598 986247580 723946184 537144578 944090303 647777351 522215849 197753902 636147813 75704049 422528687 687150765 845225576 146666852 196396757 625390307 356533075 873714347 910896045 603566137 695268273 144302367 647787518 27623067 538809579 83696421 964145317 264949442 887131814 880293904 557968546 809564500 337585947 333503004 157130354 316789619 440289434 820575852 578483245 101556944 574283552 171964041 72405146 953152093 522871153 443870738 728214862 829627293 258501117 917505600 538402507 944590233 620365408 924106028 88799966 316682731 312261296 120463842 935121710 56278579 834908441 853633511 574681789 633318511 449329836 400709309 428407240 125585494 801192011 317056458 525853636 436862568 793139463 706295616 384170410 617023039 514210694 927110604 454193215 547076746 958086604 876037348 142370544 794649852 802147817 641384845 612211263 71052967 475686206 686782262 602619427 621245191 867294336 691396115 100255680 851177061 865825376 888194666 402555297 273485103 428484082 632269823 625258712 642110449 267000261 393413207 736296246 741254757 100413327 430800683 12200079 199490100 31857681 504466765 808313856 414600900 417529588 226245512 384463739 85876561 239084079 191564923 530743608 508142429 220824743 697848551 254682829 316119244 911036949 819913880 146771683 947094219 658924681 680919236 240762150 503154714 272899229 985002465 532424204 945170422 970509049 909956591 548441906 553140964 372355549 142116290 416575978 312632976 744495669 186016775 257413695 166707128 948478446 514306201 430300157 116333517 774421374 991303145 426265849 688997827 962503492 933035183 37273977 924270922 205429010 676059299 828263242 487441046 319440269 931813452 673482289 36658002 358505988 675289739 577694054 420510563 843035729 489286936 132620847 833706893 581088336 633272738 568253120 217602626 394946196 661116248 139993200 352597370 305688547 17785783 240199746 172363715 100083734 112127970 919166437 45131351 617776685 253658130 626221243 674910614 74362915 318307082 270443387 441841648 955849589 342200858 225984876 684837011 956552787 600547781 892596635 326892447 860935944 623988853 624066741 282762101 976782008 519915139 812942993 100353570 617271996 509851709 287856307 355481573 74682529 657625416 405060338 119056047 658122925 503313550 696818651 136041459 257457682 979188844 952369241 601712921 185939020 172645729 434874932 616088989 431092679 180766375 917454604 726087810 505892689 818562619 263511199 744879772 209228150 698361971 457377498 335701899 242272622 269034783 761554557 257796597 889776048 176668172 451479284 593176404 720737043 633501449 998367738 915010203 623772424 857496228 821835101 155101334 924657060 893858786 459000441 157545748 241263474 692139486 55916136 409624447 698098528 118425708 717202336 624186451 257322354 958074602 552679225 417258911 1353347 783229167 453291141 983283440 107704303 308162431 473284065 860010461 461552337 83352914 638754328 918250619 430176350 795714446 399271349 72017160 589019928 697800505 33618088 31601510 770930062 143797589 148119128 562651392 481781092 474825416 409035754 684046404 727318052 25856712 911127616 620917318 159291910 610187543 233372196 40844191 776646617 194655029 729237457 667707113 1808349 989216679 722969476 124794730 947714650 940267487 823969163 146949812 969057346 843044644 142974707 624984431 836245647 85567445 210664772 153033314 296358658 574111157 212383490 925410362 952921761 795331596 828135643 890300481 257397292 662417691 532127407 632227740 131401796 74818588 93470435 293110720 534524008 572045977 345676560 312247373 991418612 896140701 858666357 549513285 4634698 848981596 59269458 281923762 313005630 130485683 134415316 758394531 440060440 710569002 758815760 332087012 144924298 10235660 754450558 324260602 42586756 209608344 207054671 297171921 555598274 894791464 489851198 499569702 20904179 915548562 921902127 822705289 217323756 128796579 651176123 983876891 28095269 376005796 718707339 244961126 820213937 419304176 655809944 219469712 510156617 309147457 759912453 836988920 126048712 252000800 372206616 928457849 803696256 820000636 805244150 802253387 764897236 503800886 486176537 61600344 568852628 414091271 948321417 599390811 67177858 125616410 407111775 126243489 362948169 878395123 629194209 528706785 504218653 603438183 249029750 588427144 331076388 699381245 301855337 505226298 29521245 87065073 202345610 629894422 977968948 952879548 141838088 650316855 641887809 770707772 484975751 502740833 159983071 825222930 55749364 676484104 826745436 931339112 447901916 789422131 683757808 920382233 890962556 191577303 227140579 946332547 277862982 610863181 706527978 238945113 871813804 904724519 199493865 641768068 171582541 282911132 594016444 425491741 866407714 291995534 855556813 892472203 365487254 554421536 613435980 662243487 849279164 156306247 480969747 779190526 290599760 422563240 619500449 932289161 101138474 959835798 144599097 649708172 625699441 234704516 37548042 528737044 41443627 495195570 864355323 639847423 382600791 69950142 15698357 112003792 547221670 926295244 888847485 213068113 277406193 308829334 278048916 896619281 948781004 362892463 254423832 704768149 70109841 32339490 654075437 208035507 430888833 455826983 858840657 974645218 2449610 668845004 859443198 765402278 478956975 28527528 25669964 485393167 185214957 912433068 406622080 503539090 506028049 598116606 836678932 282082435 737114006 502777918 88721349 890307307 444224423 482387342 692700336 26728451 617393913 363835055 919128374 703019151 456975517 428694714 790131110 298120062 533490197 203345945 850701543 396091597 527020616 210919208 522767 874908105 549215061 135807731 941366892 339809799 82068737 566108359 799596450 637021409 986010029 71654383 809313171 269037083 70230160 602693650 190005451 818222161 797585319 84408952 67505335 839199726 357063063 785058871 698510811 105109837 351661044 511960053 283914099 271418018 544754257 994697044 877645903 152207700 468645399 447149505 638911850 152333937 397861988 60516777 170438175 593771151 793242652 367716485 123778646 643066526 776791714 742596456 71638916 156870763 46296928 611037033 494951162 628144817 507879439 659525764 55792159 528745439 817339087 568788412 997043812 650931492 71137801 916366181 515803061 955071594 833287092 339150424 733159660 693066770 86634882 577372191 309857542 523582209 646294091 31218719 908448201 438365866 458557628 142108751 307513661 238625111 550148877 941879452 810945090 483055569 555404080 442237962 76576751 618234801 622764761 549138134 770052301 55119145 769036954 476608112 918289086 208006581 897798568 183775099 983087361 309345756 448545258 537375340 923630553 417215201 926914240 992337796 679128882 364539122 246148522 909663630 795824796 644471472 151996075 54338078 749778137 144990935 941846984 785374847 893486031 711568958 44815315 258033633 833943622 499071585 522415565 666959237 953989917 91285545 971016094 138790647 420417946 706423881 965121848 67376353 200234730 78450026 423227135 67319778 760537632 852944446 769292495 39613575 662461677 775464966 395187755 802731783 994882025 741865545 475394460 951579990 815067053 922796874 162659278 534475131 450165091 630308323 536340448 998568439 204869046 227048186 352386425 782719242 914317606 656135542 529043208 700348841 128345454 784476487 92240587 409710349 140215081 675333185 628087253 822521898 781159337 826091773 29128292 494960954 176067498 684157346 296198892 528024957 453280561 158721166 867611890 882860619 252441889 386624326 958443989 252269839 350328886 929914498 314894252 477816084 352594378 165922297 420097816 299519711 689991642 293050074 309592217 635120581 172645438 650576630 826453624 556089466 589544744 22446259 996925675 59415959 293072799 321847816 923333908 984052518 431843590 209464370 198958544 302073395 400257681 479415911 93511652 377879975 405781542 486414474 755582239 936523507 240559552 608317002 893537249 788669356 912137484 966105933 767905680 16242274 686855986 737704115 524979182 145148777 475769236 70315697 481734284 203324131 864428190 631454606 343835322 249048165 285056004 982465700 260435481 409753953 187077952 157323705 781375734 329380958 524995798 96012823 280259241 757889906 32501740 511867023 691520287 669153317 630355316 40134916 746942262 194906772 348944336 972349467 311682713 957779174 390570127 373579480 495488669 13179945 272257431 926686699 470942470 158521181 777328567 13543845 218909164 983997842 785095581 627742033 367382899 369314439 811805006 612606620 1397334 783430740 718369193 187743273 622685521 108431135 175044361 770074966 433415774 208973797 574661199 41212658 373739355 248653063 752380088 699360364 448555181 358693836 787480259 378110491 934862060 983608423 336464426 749141821 581747189 458969545 111866225 71548790 111714858 954144195 980260751 392537996 238884207 956641223 211768804 852224041 712106416 223197497 82996141 162921065 46825781 272423575 784345727 624793828 614103526 527308802 10772285 40670913 122697074 58319013 234793045 340462897 901428501 159481698 355660096 177817094 767290243 930314537 289518968 9102722 344739965 475895678 752475161 660634618 651867599 56858005 679273102 115830562 586132861 508810744 303269421 300176012 365356971 599487444 955799406 164752757 571453964 375827636 15738392 524437587 684678344 477004422 939150546 208799694 186476480 29462355 181968257 156237678 934191744 479090399 433094430 394455996 608112839 833859284 73518514 460142784 684465127 513965889 500041299 20391746 460868494 292572041 133634172 188187814 293443718 749072049 608326512 857900460 218465305 877263970 297929893 552208123 646170593 906193540 424726701 740264316 503560249 12193779 771535025 152944384 654246542 846535235 479982361 349800626 792375729 947860526 239672046 27609330 687733100 254116037 749068523 230228985 807923259 557826572 6739840 982700226 936409190 714725764 356409575 393862228 23599375 600198731 115328483 134302814 684535185 295701743 802356966 852259877 171644843 990750200 669826429 213554264 638356736 940242978 758209406 946214571 361532366 559688042 311388548 396496351 841480829 818697047 762068906 294474878 737570327 62154606 356908444 293171664 926667283 663579396 982885961 161015921 463052912 236378554 741633217 312821972 391068201 120890257 777295953 184741454 989063780 960109867 78931833 590312913 31495580 353672772 478151848 396678779 774630669 877049388 914221035 280720710 784960635 279228183 543613905 191414413 500551138 590094275 600717664 931640518 574019757 306959817 980529268 965873541 577461634 557458217 477896309 589277202 355448043 599220664 780073211 752911824 812128732 573558317 758795825 572461064 851680566 546981135 150939608 889561503 719338145 115248807 339127184 145467425 344439152 830319473 961688190 698646755 241489714 101252727 203117846 180509390 428720775 672950105 462492214 970397734 331436725 649243896 741449170 979515477 635088868 368116571 279114202 896471711 777242574 216431494 565824039 450934158 18951164 613922186 752087495 170097242 849473639 839020571 954538442 487100387 611590585 293583034 17661612 859906096 233075905 463514911 196026001 754302143 722652194 801151566 1416368 747831298 490102876 162534292 188534153 941911413 911927550 286789072 110770305 935332199 358726379 877159038 780805361 271408383 731853412 847170255 731686419 382662474 148346068 448433913 452562510 82435567 948883028 957043275 831312145 600205096 33896592 293283758 583470189 256549825 10714150 466945140 330481631 240188058 112145928 444862865 453101815 33149440 731266005 534672028 406055575 806985120 520978741 12660169 45020197 480652831 425315732 423527939 553898033 121373689 869685796 785595471 728139464 591251451 811003545 752886745 934419342 873170630 133353500 68866514 959569435 48341299 663799167 800157285 794927399 867762626 513789005 708559008 204564733 723077074 404563276 904398285 166336506 303707449 34720508 298169759 998570281 983436078 99989187 698273513 939669270 653222199 130355239 596202916 703765876 35923437 535323538 774908609 757289507 53543707 928221085 908036796 367225054 736654592 419419669 213636079 782162810 203932041 722238608 725878969 414982705 471135412 572147095 597552279 788072835 722653654 701831669 118718125 741157434 129701 520858522 221169785 529904025 952764433 958331527 157626674 24126694 581177770 793732621 72457041 77715507 254384988 87051044 398696127 740805472 975416675 409830142 692134473 469544198 876908970 32823989 399276740 256747119 826521074 267091214 249986014 714141304 463071004 308062196 854157354 122116993 690965503 175334324 764895115 226530168 264719788 979383343 658296200 475966872 186751921 90094192 284803018 867647599 73312442 621431913 437700801 482263936 693821772 897673609 97826220 146536306 87115853 405920834 546735120 717770976 238728621 394857844 74514282 218793264 235923502 952240019 496065548 844876462 790057611 594075361 14287896 954158804 174910968 714978643 921495599 212791276 129902435 717077146 217992126 354374804 821142235 533202388 353421998 336336859 788748043 134867939 31683733 732042629 776587723 492044164 357828993 391184228 631569604 909081726 59432992 881614474 261802417 349763151 102482848 272241969 287363725 259901 200263492 946387346 573930699 300685146 427590145 396421156 10878466 981283095 387808204 904362496 234975526 579036739 832143690 254695743 743419732 594699609 612963331 458222214 187643726 282685333 867954808 481977591 942028357 305730690 166817413 247360392 677707006 111686796 573477511 660625765 895361250 338282577 442901697 752917854 306299301 759335030 464717460 670433701 149988492 405853934 710711210 337584755 27283651 974298843 218003628 983722482 743387758 961947194 490563992 790991545 463199433 372050319 234722998 571061310 483472235 218247966 179991457 547999769 206636175 310062867 884989307 636384458 363981249 207306046 768504244 118200029 546072510 162034048 266908728 531709547 152412293 555068973 93303059 111626185 225408540 126106697 354238886 884121980 79924858 271270012 257919907 311402324 178651557 497433706 244801313 299725826 322328947 289191076 587847821 89650033 985205005 85349478 69080085 556298217 161455604 504370755 18677084 317321049 360027255 454798862 685933105 448207285 972769514 304986068 572750695 594263238 381749397 533749819 300022872 287342784 623007122 853191273 729955460 951946093 130421242 360203993 690829399 77830335 663250016 743020773 483736060 172327064 496230753 245432650 543794909 210812334 278801433 51416980 807356518 255472980 647196349 274763900 921764881 461496962 237824446 656741181 298306763 691112190 297303926 45323863 376807266 503545392 656967940 677880076 522404461 450258584 68424920 120959679 331160128 468606852 518337524 353555332 353821173 925444702 527271943 214807747 9134296 525982111 296553930 20278869 241170038 29534659 770675356 526664864 369534457 769869397 406025737 992919854 693324596 495748101 274094851 774945186 383884785 237438473 297152834 109145455 240016856 718680145 187541813 588595789 244999510 704007677 14795484 21191586 332066843 568658283 118486547 304595593 589900105 362654777 531568090 456453184 642326776 260599947 84265716 838061791 900985006 131362905 801683052 324418474 96715691 13495135 510357335 637365794 683076218 403943275 308348692 817924064 331500380 541807290 368407940 32015588 115496146 877175591 354727883 886281445 893396944 577127257 295198683 135447831 691258378 857762790 814524212 738297350 291206441 690537620 158854470 763954277 207326323 765253795 217912864 874881089 26395384 850544304 301121370 329297884 736680516 28239318 397614823 233056446 53016681 83929359 824182510 416061343 485558672 83616581 981878379 717515778 452244747 708231160 389967527 556932318 255646981 30790417 322606873 947442110 478450792 460502361 982150124 898120823 10834811 37053831 914401797 551415343 642870700 986122547 136655153 834224707 256737021 471475312 519184477 798632196 479318576 401973135 751533858 486358595 923740384 136225211 932002976 241350210 486433271 48464883 631711644 524739966 430089298 452320865 462458243 166778520 547277035 657274200 444045067 387485964 441622393 638628445 543108759 866727916 617213890 436825657 191589387 914178126 357627364 261160020 826513744 682813201 873888448 842703266 561901316 845998671 231713881 640461161 329495574 402840880 272719466 414917228 1738535 130591120 495199271 1963559 614628055 674426959 515600362 212047481 359655689 279265742 937558098 324827446 917720084 779599626 867286779 507199903 435857448 561107505 34290088 250149136 61526970 279426863 628410176 790588294 902997372 430895718 53660853 210729637 624822736 37490760 924758384 58511427 638672081 763084027 310728208 668582704 265058517 552969885 126071646 193458409 308412829 402614424 84537502 924805903 639904117 81201259 114758156 679623951 759756192 250941803 22057033 820796630 140800366 874596181 408274061 626973044 648232995 465323942 783409746 104688298 857625404 45244266 600482794 980531726 677207433 394535608 167292993 432361189 432079247 980710052 133262292 217569940 180243979 791523108 281785199 124339308 401583446 761450286 832307577 60763290 7072549 741905950 509603660 821314621 102759916 642434244 222627970 673314855 217120295 826535604 151590492 909881074 741612749 957157081 910001966 437624146 465854094 755726242 491689601 339909356 743813335 3156954 932234553 173307032 312636668 477798656 473973445 142248714 503806888 832182203 806220248 976213376 646979434 216995519 912294358 602906054 879053016 82933007 193100004 910497354 421858999 257361112 88402482 661873877 788058961 413842744 697220224 87694737 2346586 729157141 891162902 373031563 238381131 379345400 720497879 734093071 94557680 7108578 831171202 358251155 690468627 951548382 517358380 174439831 231377181 286693644 160564145 559382782 964831575 232865862 954795001 696048857 604044166 226394678 213298358 703712805 981560581 332288706 251560622 302979106 600238555 299795430 667419829 311710943 941812084 616648030 344307109 522120447 286450688 233568967 167066037 897574787 871041528 792298148 568344788 490502436 251624308 889276353 582625147 163725666 121526154 693791815 19906651 281444701 734852255 709562775 739688911 16662086 601340187 856253470 268374727 482430820 240638881 42985879 48992159 536535173 674894032 991947589 53818063 965372647 216856864 629367799 904803055 434475300 191491779 163403423 392528545 917214520 915291648 810403183 681127368 310509208 246224499 834895053 241529877 707162206 319804790 469948888 649746271 806408987 97477701 618667110 907927516 430557196 734936184 330372945 991045960 413504522 102079251 347366260 124136090 329932540 4139531 85657878 261927466 102446942 96740501 299693453 819273796 72101250 696558155 606081326 470903669 221260105 991887822 476432442 458464217 602701138 629728840 799954236 904779511 360975196 642745746 90577929 934693211 894335323 150827925 762625030 431610060 459495383 145053277 634571081 293644783 76783938 49135420 144974058 656520498 917804585 613763949 62031763 304708397 437658705 423886307 264000734 346836209 410165441 277642102 178634174 106050227 257438411 872490495 164377491 163112729 786369231 440726600 413354623 446691152 49025388 42028865 629699591 756724476 827237870 55115541 899548272 626480053 683910693 10603894 128446248 298678295 611043638 973355303 923224998 47248512 754448694 882816015 59866580 918672742 530740752 701567022 339008082 616880546 152095269 218419707 954551335 193158377 182878593 771923814 685553722 508459454 359549409 145675629 695075850 979180626 564958711 307282219 719412689 674723409 124458240 145265291 765905706 672688767 298062869 122538456 954262914 14042203 873868566 740845650 476848181 265227067 96679421 296315951 386674958 256219804 105669521 780358143 375698511 472331710 692633760 786717123 559104294 124560384 479013539 371755706 528757222 446559088 234167110 202785472 25820690 180707161 911022006 704335153 500001014 229123970 286047741 946758148 446027677 186915121 843934052 696619464 641265697 756002593 375458555 693730840 141323182 239756791 781636934 185060192 322116247 636511992 605507921 865360927 675203293 927559721 534823284 420053910 29545231 403000369 784813049 167987084 369112706 82467509 769258024 64071008 422005974 832779347 499160727 173649893 224652630 157548312 245744457 951119495 788081874 870006172 441905451 551799741 717217830 488184624 739980491 603718387 619217824 940071201 384157730 289242807 162254275 974856504 292319629 742836347 351076687 380421553 720983184 568441126 564786881 581628927 742758790 810877111 20839725 433878424 940841935 651523891 217682610 125583851 743615653 880800907 726367713 815599159 216948934 394509760 106951623 230897244 471670670 489423126 262295649 900605358 863254190 110345736 43119677 685931199 701388818 493888921 424711342 673306663 146768638 66212337 605015297 476402225 488064840 202349335 735320499 243553021 849108805 160396298 129709687 628152790 483273658 72420711 151718415 354820128 779223883 275807843 328766373 507374720 978809554 94317983 178523039 965651324 264169602 494108609 523126352 191860467 687100869 762857480 69037363 384445813 672789709 231507001 185838079 727288334 868245154 786233413 232809962 262176325 782491573 322660775 462378812 325925277 367852616 583227790 263742449 463645301 722373070 345303604 664737841 208609274 391769794 962891219 445974821 47318348 914345708 74790148 401875628 591489545 508398449 343928391 510083711 586953411 848183364 379993895 347111933 912169486 109299147 642155169 594652804 476953119 943345465 14167692 10076293 157230124 494496051 218555895 275631408 789305291 913175662 937493447 566774084 758228447 262082254 263879093 838860986 831579005 254399005 307310319 490391211 943057144 790480337 285751775 408718057 80633356 27293249 459381324 760854245 979870039 131323453 809447131 641871165 486169423 404607908 761908960 731946135 219305637 662898588 343635085 817573895 494872867 428605840 26239588 571987328 330264997 195161202 443672524 533766702 439870993 840292629 21092515 311097574 365868375 437232354 704607948 132657087 797117806 791529315 693425129 490006840 141973641 916561361 256765237 60970237 805891687 473746730 856702110 690734634 171352570 965081084 90463662 423474698 123495669 10037698 170001439 506081130 631932896 695803030 415951752 634199428 822759934 887027470 156233227 685739495 926115780 421844121 28936877 582587500 625390238 748223753 484251673 483403473 497948984 708547809 586496197 235952501 681230141 102654112 569561749 704362426 395966047 745815207 839185513 892646530 143791064 569897244 645689935 563978610 920416732 546256084 541290272 94077980 662464732 797543276 174861518 485244734 248468274 390617733 621008322 227569014 756128928 340653749 336746730 827530333 267246279 575954892 504967296 561308166 535506022 483624259 957784876 522295774 919066154 147173631 444904966 875112476 509552737 544203755 854598242 499075768 494385656 910681458 514654099 453031887 114891306 135527907 454050808 685109735 433089981 527520665 354813466 385503897 988423987 748066981 526720953 979388546 871265155 491550087 827389892 434843463 254704873 84571595 544287581 163870068 903822914 413804455 261946540 352291701 766804912 780805874 78265949 336832973 568812996 101050001 535449464 856374518 378274349 158193722 103311415 85529406 238927788 840629676 220571847 463537211 196408577 156778187 289254752 53918923 277041846 822023491 196507249 241607827 364885177 168637363 823347621 697262047 355699891 368928695 654591861 207259454 787729079 530210727 871797700 310607014 323897159 482706986 861103431 137064462 997023661 817900652 474022205 158999278 965603335 143008829 636684048 92602235 60197040 379635345 246056976 200092910 369656562 698582876 232347582 140820144 57203827 681832824 342056443 198683425 513964215 312389875 262694142 301884930 29140897 527368154 33065484 101572762 607968033 515088341 527290733 634607704 890268282 618562171 76095390 419894219 400744242 859353451 958577185 531289565 222202133 131527008 767368007 393316541 283651613 482111556 985290989 219607927 978119600 858635821 907901096 391638849 835442316 581075036 387832773 503313895 272732970 380716722 90140437 405047428 527712712 130450082 977897859 293047980 348011659 252340452 144005814 260529432 830159749 987520906 783475506 586727422 377711983 615497378 701008681 895945384 852378097 29464202 164281923 64638772 374909568 939534903 752584243 622996741 174488698 371804392 68707121 394824824 116878541 274008751 682499477 177480367 473173836 314734375 258140323 256836730 340298659 69821558 295196097 23809112 437504167 236962643 481545919 421054661 141062878 150507143 31971025 165933786 56407832 488096321 45563814 659007459 220070134 525370461 232168090 305073361 201987242 177392323 49215771 402758101 881627105 520851250 889463022 730360097 299461296 286569403 322471489 43695407 185602624 372710887 256664897 698752696 321934063 677295109 717922437 743551159 65707753 718064622 356204733 308983010 122042744 568800643 629746759 843002953 18063578 487141187 196575280 622441034 478237286 635698257 805620306 583876177 951981940 839881758 697035886 323312961 188182966 672793418 571770889 561585693 517477083 162332198 662908134 602698316 352216794 619478879 681534760 636894387 798780322 88911768 247675380 267938045 687088008 413326975 311677385 342233056 771775224 843349560 575569546 493073864 44449827 819097179 136490965 975079542 912267296 228024939 910250355 314653782 77357400 610418707 109238283 10643757 335760279 647481674 295628848 129246951 396905669 475467880 211799992 602473435 322028744 455175977 112277425 196639130 659970531 858341655 675286253 991745076 932800807 160323525 211921471 201622474 927791762 720312530 364945260 361613585 619096886 848960495 203145341 563695222 621790407 965284581 846709535 227643111 282337740 598035838 864581615 214061495 78549472 549534374 325338033 614812351 656598849 478205169 628176299 637355077 649675788 817033868 822375863 672084785 180406250 71940487 27877626 714636721 833469000 48992964 488506099 618041501 751573244 898515889 285672209 700798557 314836429 389559098 740469099 400296777 268967037 144148332 690214008 45665112 456689419 834395151 60894091 985614499 558568190 818766104 344796432 912724876 129151947 144280557 406969895 897836219 588829323 799879532 171981515 762271637 946951417 883559548 638509754 279952715 402396134 191078650 975927360 50201964 375834579 361014794 698123329 195442398 916316369 144977654 47739839 323925658 944453474 619569530 777762463 523914304 415468232 762330425 476281493 552237093 297416260 791531121 894898324 685420691 775791274 998714977 606090526 980638126 264513304 181970059 64175973 114792960 348665651 699270194 784821369 978223173 386508222 738594708 749785315 103569347 301688341 426830789 10403411 715304137 148940779 90465947 872874309 584547863 628931991 367272412 84370767 99141582 432338503 441650553 369885420 815486128 560658994 32228557 942231649 28638100 739986074 899824122 676986055 147836664 330087998 519207002 344812452 253777251 942085784 265586782 521111333 989502323 208451929 831382425 952406049 437160355 364673668 457871028 142228807 242116044 841534769 923716812 687399623 89461193 7820633 104525513 613173613 785484856 129488109 938576142 386151824 147705760 158128726 593573244 497583312 4950965 226790468 347915300 112977137 235629663 154425659 266829681 924767063 647190294 421000118 773270846 712293667 101115134 431948577 917384793 333618740 555616033 11905128 180661358 444085677 638240149 586743753 634652034 192048662 624939474 611423101 9864973 685780439 693093767 56604100 30997671 554714243 817463290 741667074 806334011 855966810 513395301 576936711 797516903 546160785 18812910 249969796 895952330 186500620 185611053 870056206 161036802 297618275 640730147 781586751 431532345 508517693 188599076 326356505 377312398 640887193 173896804 380083017 736021575 28045178 618698327 981110567 291408896 450168656 317283839 50027964 979569272 929777236 378771687 933439844 13291797 231045666 89450224 989430184 206453483 714482163 374329272 179301221 975719861 692107578 598141364 633575383 430476956 696930086 244660254 795333437 949227163 205755077 591524319 460619716 21063907 79835070 992714832 905248560 687830855 867961808 411663853 33716239 304373870 165509743 165970916 896817934 313613269 958745516 660718786 425133949 389881390 27590014 282935965 195238515 552930057 985308742 405493211 398533046 818311680 289740259 816323236 747270227 100983945 882068215 132772359 462406629 82653666 484860348 939909226 927712014 442470432 868555817 824771302 282981252 913182018 48830491 346893219 802358922 417001311 857338279 875899368 345405799 580718410 647201364 877396584 175052318 770254388 340955745 217410246 764204328 506949242 589524388 439088433 842024435 646134662 776802717 584260544 909455336 311893007 704821771 300920489 586048795 52485465 18875179 829317578 658856124 501214560 44216780 280003554 929381448 61929638 288141289 535770275 899397158 999053875 558287172 413110975 746324142 646530016 833055103 526705366 615037580 672216750 655165231 54102283 954671299 170508300 254716675 975765701 601855439 532029555 74568114 630080466 918574309 15156815 581272811 162902119 195438314 440974275 177093294 947502936 247311317 331389380 896894210 985382474 339361803 258649162 566421941 115968256 290962490 927860137 954994632 991567748 832223340 482244601 965548053 385562486 238706339 620123106 28330884 254109100 615583553 927551343 229707376 199731639 452508968 592847337 352692707 483018722 820711927 247525486 798724452 455635310 733434436 384485617 819739796 567269621 391665167 408368745 590462906 897251508 710482193 637022644 493955994 114442072 339479104 360105757 959799515 679264836 757449658 487210356 952500407 581120754 105338707 353959896 710265152 665302666 279551115 214714540 98423902 624120032 629167198 35511992 717970506 445636915 365103999 907767654 442306962 640338844 173821379 479346708 31142710 877059790 228429487 58880269 121435634 533439321 77305026 366074995 795675112 60681210 959061320 709626147 868579137 131141533 862182403 838786064 575847125 729701686 438627461 590031802 972323834 139167315 956436967 234755794 774625434 354515244 37980694 457602031 137915602 431428045 886208399 178365577 964558481 20352690 389291188 539527020 948286200 911757323 178675514 206466574 365731175 390470726 867639034 811034520 414594847 915914788 555953821 509052588 672887488 736505401 372412110 918238852 123739505 926232743 736032607 436141032 257443467 557956295 527955782 401751290 751033972 693889894 362533085 367964824 402684008 794505725 607826735 934835327 55006921 513163596 302075735 444441956 433958048 450312809 600301096 20015457 711540330 613333475 352945228 521855598 413270800 22471657 349729075 575565665 12313188 578184994 997647503 198333726 156561303 895565237 60229886 514160832 227257074 339105534 969764716 205180286 294658320 453270681 413786073 621652416 613208103 466010786 701741076 705668302 126602332 911963509 207136243 748309021 461743731 740743134 9401354 241373272 362649004 439499152 691262316 818032292 186101547 640592716 88037305 194949385 740735985 750301731 593672928 641222791 290389576 974881755 202582321 441009055 627059839 47264590 536630741 740028200 120365220 163689864 710974815 282810929 547779626 409882263 537348196 480520365 43025646 458255392 390844712 727906793 191237466 111382214 829718197 195279391 907946163 529825307 791178693 178967325 734839176 882330561 597904258 238541837 663223117 754395978 422430956 667998864 120949619 199228643 81380791 359244461 790349020 974132832 684039308 173610058 172943709 570644542 315218304 877466511 388222744 966998023 314064012 422779011 114124320 159436360 608820899 181855736 210952731 668993527 346261654 63979843 419917291 405152703 901443140 57373040 941305634 170317268 737412638 481021811 806064878 129220705 714100227 861802873 707723432 664382740 991868817 8157617 307800283 605112798 426347068 764005477 355188897 137474706 738108932 612845812 75339403 963163456 359274283 765293927 750036118 230115747 112581505 220021421 229455844 957006025 223218738 192792309 194870177 339221422 258786515 660031683 866268020 859086786 17710389 393002344 841597900 944098089 854071884 489822760 135406327 618026457 396209330 599121569 427917832 369508550 548327317 16944762 381416631 318021765 491715486 627809917 986664340 831296108 680428422 791468489 756674512 689627909 567407490 924715822 166875396 712181459 387347044 107006940 125120002 577196892 459522125 839199201 33050386 485941944 548542978 196799056 41983024 477432474 723517040 239937320 431033998 120729398 802668543 942256672 421716005 586707972 807983710 366763880 543645862 598198565 130158416 970637838 183570158 986675046 335678016 609102873 116155576 756981989 295748542 740154980 763675065 606897719 624749513 349716363 169703914 195134480 732667955 323806792 218153529 216773407 592381650 667583116 734597918 620303755 294192613 431266046 22993687 594125962 284774810 18367340 594150404 206773370 612796441 318230690 964485133 304277695 774728554 807725067 564740307 387938120 274916846 761379530 941120933 508560076 603619003 322199662 527028149 186461986 216755480 519594275 376659798 803491685 685121919 160537819 295168459 17329762 864456315 648050934 473016640 659556844 519996974 446636515 676631358 899130140 460237129 702884646 70088091 868888863 405055106 727932209 131252676 437121899 978032472 193124480 703258604 822243169 469106757 579029455 385796784 304853385 825640518 475055093 34932236 910536341 648156172 218993591 441906597 896904549 488068906 257327754 36713645 797434725 221220771 615945930 367372731 909508121 673539322 887694231 165798663 57593665 137044771 530487921 811305847 120639357 934903527 110191382 615025010 259321057 182716114 884748342 758854195 761898385 468744143 417828856 268306673 317288327 990943824 575263215 637385877 310718385 519153899 929627068 496842707 222350141 293292747 650229267 674198866 822088799 315606098 162064145 414155371 689436645 856396734 213938761 982409827 385295606 639055003 682288940 593223818 794083044 513364366 592298071 967746076 31673463 715523208 337150976 616903596 113739016 924327688 750869593 3108493 907814269 87378757 835866089 335146857 279368418 415664389 115439001 36278733 840377626 521282332 653803165 387933736 683204349 780995086 631766003 481484054 881755029 642646393 697804988 312849046 841290074 574186327 994090314 661730640 986511858 643491174 352420916 724440198 673598843 258307330 773888348 926930600 737689769 261449015 725871592 844630426 592819034 689705073 53586413 102319414 999999254 996346939 60274002 927741699 109183645 973771445 357032024 649154427 49214153 519592199 480319734 102038067 484369349 883311870 425998575 484251040 674315384 52099649 343559565 113894583 588246146 319330615 833817760 772435762 544209048 420702730 13722536 863421030 616915999 678843683 654830261 894732421 399003458 551520932 856010100 258698493 95293209 804151628 995551511 39044003 558199597 292998334 326812856 964798526 564207306 688807305 753242340 715589063 526039956 757202981 613392011 282314940 371583626 952632482 268058590 727180866 566686725 770138173 799793829 143719398 867669716 61351663 874182998 838722633 611987282 256338418 661512699 557703148 800113331 807634981 63900569 988259694 874147337 506772808 157198296 892773251 937466531 779587254 664731433 636222194 668925561 303610957 699611296 814062846 140415392 468349753 184091969 295305118 415625500 43359646 650840445 525931164 740772207 43130357 233799042 910574876 310463966 665663640 490499096 353184995 596717635 693251655 971534793 612853777 786445624 838983846 96271360 980249468 353386855 898556405 838328453 860318914 525569078 92024925 312627515 626282242 596946597 54958292 675501353 975929502 338794502 260814671 190661065 952816308 147904676 896360100 98714685 31883951 312792206 18705329 927600199 199810898 782065269 343017105 536154459 590426077 669405403 612275579 954665267 424935867 598627511 206952939 411821127 926051590 871865659 989929987 977846684 707687409 10542203 780984226 646419753 979994916 645382229 307143463 566658414 606073909 364687900 975277565 709852603 612089289 894524202 24800784 414762097 77895644 738941734 446459559 842784686 647306617 76531614 416881212 206916840 429596213 372381775 510698471 878954241 18952932 396826419 969770644 187511113 702890073 343123872 215042490 182013395 623761737 607435622 324265927 171546363 522561243 528407380 459181558 479377236 327954614 193189930 933335290 899073587 215878163 266206558 822571397 172404718 244363403 394142117 263401522 193522260 205968714 21033284 473378119 864397509 890245724 59475476 321734425 7165911 877531081 931208762 594133043 464229980 699769348 11418631 753862252 508134784 321463087 263413264 770845675 563546463 135147628 64393305 618860842 597778165 772811320 844784527 280857041 962480896 238693832 809920949 575292681 514753197 644722136 375122138 22288225 785372166 293712499 706625767 96026976 851930030 21943169 192081651 61524546 47494720 120243986 325631316 606439986 993397947 245397391 82568852 620286367 569721909 270609132 10095419 755281984 763740929 83892641 600334524 826099733 345013488 808600899 299704370 476166119 365954289 659860586 720399466 209077932 155410463 481289594 221040015 326938100 485509344 856387386 625218537 420973001 13012692 126870314 690341945 130321059 242527149 343703186 132815897 894152137 588248454 108628599 224563983 161702186 416843626 671430602 598985738 322664795 273309357 331024744 259885638 298154303 220542134 862004060 155472792 909821665 637549155 195924653 302243202 434009070 577030925 673883917 824578014 325503672 308567286 258402765 700900542 826639228 838637915 220445330 575805469 16005827 119979288 549744373 705728827 8743359 508047059 821920823 242072988 751831714 586635523 335352941 43642895 502893046 366496832 631445670 195503928 973298144 560375836 224917260 950936381 432070002 205605685 241649467 653830954 142565202 90742524 683938845 967373761 88808 531452551 974893754 984620000 560985601 827556763 255147606 372251755 823137976 727508043 682589773 430231714 480784152 112697250 361898900 465990758 31829572 86309225 221470435 995873046 582228313 566845488 512850823 466618110 414910641 292471955 305166987 692409126 872322459 449992185 678832022 764459375 819532019 519734126 538590171 999434862 987082609 529761370 940410660 637835746 42533355 307996132 785966702 393177406 215476127 241061374 480325964 368286505 953946707 392727337 900278553 622668088 312676048 410651890 84153863 132297267 292239780 658291543 237490500 602082001 912910715 408328184 447980021 443882147 46503152 339121944 592787091 868067759 732398407 779968379 583359250 146134484 469809703 357835394 475646402 548517406 230576550 220541997 899120755 831122150 368562671 404988537 412887230 957552576 76545942 497028703 421996128 21322262 159893191 652054689 165648016 404198110 585630510 102936403 359706137 195020666 942582707 138018089 402189782 23508709 816988724 19889654 950578858 422754241 739271362 666476447 419358657 478094349 226221263 242349065 245674957 121268184 148757224 825413022 469058976 517058673 387476077 611686352 886157279 438145835 618094595 954329733 260349152 849900278 889571334 767799644 33868782 358683024 332572970 53040984 633767679 567041783 947894106 911996249 920611582 516777039 347783376 196056028 94567954 29291596 197933986 57451421 576887303 438374206 866780626 69997760 727533332 465431232 491779629 790821210 922837251 354092238 502193404 157939219 781440243 753481670 968259070 327882630 760092612 37778280 130482127 633595059 154905861 828656164 868010944 15904808 715944216 339939151 317661054 224985659 187508017 919555070 31702966 107804539 463105584 538814886 478735953 829648594 803207310 133960773 638913291 176750040 929289222 390082623 465390677 823645438 520743040 688524267 139182924 518792767 742165831 135406863 494854991 83967165 229513563 209526864 869115635 176893042 14686128 199293357 710522738 491530017 219614114 951079626 304990371 192458919 132829988 897153249 490884688 428662074 809972870 402420968 378485251 935080858 942296139 602223016 722941540 300632095 313064376 272057934 593198257 123253929 595638837 655846846 177978574 456547412 780401480 507641374 142473406 910477397 534453380 522400494 183876617 562070375 318010403 216109862 554030175 998222766 768786364 145083888 432861768 409873117 538354087 762548105 280325594 981066470 195644508 27299826 172986123 969604783 301526634 955824310 501065102 436059350 237229638 73929602 983741079 615035705 792948163 551519059 405424833 837288672 221731606 862141116 700817236 278545860 224454466 804810063 484789690 883592379 508684438 365277925 585793024 481191672 918011945 654789761 566030479 366260017 333437244 83358095 310383816 903589131 374399143 286075042 217212575 1092681 531396072 34228725 651709665 876416903 653461801 299189892 992696296 616309923 726170470 424167554 913700018 738345863 493173938 627933454 889770245 370763923 519064020 908542215 72993382 50411433 170389201 781399460 16150058 866832295 476267908 130377799 468254772 334186958 180987858 159521222 395517904 729403718 109600106 919662785 702043266 953247364 842566425 132235744 456300457 902537749 902972186 347749979 431767122 329751456 938626536 354713293 940436436 235276140 953174024 540767156 913097918 483460528 597437776 189585299 696122108 23538280 613300253 793833927 826049698 12803318 501391861 722982914 967541981 54755310 542383770 786061601 326156468 701696019 350443777 415980427 643900218 609357218 47534170 909812953 629472186 196095583 824555713 156640266 804983397 341175038 580206102 819524660 776170868 529316331 524188989 204938676 70801989 447432613 214992868 499388212 530546603 285548179 639478635 729772434 564776419 102812495 611651737 835526505 709236324 556239788 24357886 57765030 867422355 437028256 256724410 377481782 722976472 678046585 591058277 394216702 585586009 675916946 750352202 850570364 572433031 74924617 837082007 474328225 634871635 840186718 497088136 539769112 605689090 235380685 477596289 238207084 739830987 774424125 261661676 639849938 128106832 549912983 140242528 362231091 70486877 906602847 644679641 580430400 346031276 972766161 221768383 179759290 740567181 886647051 787863920 6271984 956735029 187694411 468711695 207700772 488861803 815783848 262504497 864233116 708137120 734714971 860234206 113065151 370058132 928483954 275896790 625940438 633659940 934960773 774195438 279173686 596918290 928205961 926132251 688338181 188791444 526469487 306566977 503972931 509235334 149975155 356712385 424577551 759439549 659836968 961886292 426901489 640070290 948609447 904454133 747702507 580678076 366541931 997370259 485060183 970121170 979203192 983364930 67321317 618581854 941134972 404027861 384868140 600148074 307109448 589662459 244967847 214561322 540780135 697344014 153266161 175298418 988766849 401325730 626121529 600550447 510067609 751170524 901437800 33082798 967103929 785990521 132597918 251015181 685123476 440579093 124929240 165050842 868696674 644166510 846280053 60478839 382232941 332741283 322560314 739397748 732071499 759353344 973606057 459115888 894012463 736555422 370753205 781924477 993957552 930363605 511452263 700757014 594287581 327214642 628701743 989081812 760695024 117091713 336187702 54572109 801298240 608493564 703247051 538320560 934255536 591261041 103237257 436727430 941932900 372938034 239780728 973029714 862062975 636414063 866284202 414688814 817494543 89913439 297027536 608266520 555563498 740033530 511783602 139848787 288914674 105534266 961249077 747122575 774512654 842242545 121318408 77900549 901661836 914191999 949300662 230163666 318002359 488417427 620106940 397184015 429196687 679090429 656474930 296519407 407282347 679323276 562000301 420032368 139308938 846356533 853034398 168716655 722588350 749109711 442659096 141788979 609958806 78667598 962023363 931769885 609524453 750101701 235482479 228871867 40580195 61298374 55557900 826352966 467017646 825047890 357068337 951875162 470302178 756830429 749533541 114518470 555365248 742161664 864359153 234618416 258195880 962698543 548847496 293241859 432987148 667059306 72229600 658346359 346201639 928369093 282978632 84523609 81032533 56655526 451370578 578786765 49155373 622466900 531210536 49966433 446933191 913618243 746926705 163533522 884061984 175247708 243590840 490894791 843467753 920929062 338648553 761302492 232334509 318783423 386852976 626147703 707293879 955222741 375688316 649130481 701679924 38570727 99349765 942661837 169077905 997646358 212777423 756143764 486572774 802403554 287614380 45860272 557825541 570916004 870380722 675642143 157968690 526787391 148380370 51126586 788742499 374579073 618524697 125749585 947392004 523079559 331071594 851612082 393251786 89774815 925950123 664735975 716250662 676841412 870500858 984445250 27045117 68570867 351121965 800852612 251023476 641692276 455003914 329864609 112612003 838151523 27579596 34026470 774357454 114779239 870943500 47176791 682750491 400700091 636324639 867586992 871678814 292223324 335656691 753617926 171760389 77635669 245978029 659364878 282208019 579994433 649275122 180930863 313103983 33176473 3849881 611477980 826014882 686507653 570703981 978189511 300349212 697528322 326039485 770042199 435341892 58519679 289773481 787209029 366959554 391516393 63443697 751844138 125671266 246401643 336934736 385891327 740904623 25971963 491214259 195149888 655795669 166468345 457280492 440539007 39377845 640541595 436583827 875211947 81468781 452850369 425343913 274040900 775883220 840759862 669290267 946308278 363245968 907909510 581781462 349658860 813488666 315407196 661287348 457683392 959555299 164833889 123587593 499459466 64648826 80129357 334150512 456273343 567246988 67489213 267940734 323326427 506885507 590687052 180629295 942615031 374339054 881831729 384604022 82551191 182699310 478525773 613453078 251455898 179603617 389169052 637358176 657500617 419718567 383563891 583430938 365381877 675348290 820544939 927823969 169570379 504538389 568503294 677181245 760444185 682168706 186844165 471093876 416799683 707106873 339644193 900951331 542542609 227740219 981184022 551410507 532399536 709183128 122810864 438186205 904654607 944180117 259736033 155411633 460543121 346869416 347192628 906032397 556788693 513738174 729775828 216962893 702915226 487758132 977328189 383965233 580416960 454888478 16491089 668169324 654500284 193499075 8257264 217472934 106545449 372716545 231451761 4118190 2491717 958771859 286747499 947373888 581617920 605334392 187252489 405874735 763226816 246619518 432160745 205596159 99731285 708238889 260341580 79840560 292361071 797926459 337645110 248214469 857901189 693088415 560984302 13198245 465090845 267312608 889045178 750640212 580605365 89646200 103019368 964860321 986524275 598855911 977407383 204931152 992700838 140382078 989135784 325621178 402421385 14730444 435394276 717234950 333124309 937161820 200363250 590275397 416224200 344256331 474516650 175913637 14393290 140472407 886679362 127113566 598729162 103174515 796449850 815728770 551839425 241736927 669919331 730975955 269903818 82165862 490671418 732343546 912303937 859079195 521213063 372465642 990831620 239675628 686608467 927054480 200974495 975666776 896607601 110425363 802160559 765928176 50146309 603606747 272860974 477210207 898085322 356885981 62942536 216921224 30809476 988837259 793189733 927976617 866597640 940151868 339172221 418887171 589333954 106785137 95976842 181974622 642008594 182149009 72759007 411880034 694216293 159305013 798751334 780170874 384050174 367796672 504692518 141386427 907692189 163483605 572337859 759100550 537139882 998125159 663697306 59319244 776057077 884981642 277390038 997192768 831350577 960362163 452193157 167043500 708250529 182457792 173673082 78990175 573426961 66877264 708845786 523362261 960794302 438345118 567179176 114396522 226975939 633086952 898757042 943012228 756616085 868270659 593236373 420931814 937893256 370771544 861276139 813325775 449378905 281243768 591806643 114961413 44112300 143877326 496854751 609385775 57982565 270677678 299344168 743097660 275198301 261661938 206989063 691281187 106534182 825091635 360437275 397550456 315858550 140988326 183234343 947109621 282096917 961968123 606994585 429798503 995615293 475582608 226771557 257617326 180089388 279576656 774558778 696406684 474550192 306000305 474323636 46951549 878368157 476561187 290602304 806340681 512295331 708346144 649603881 12037673 232050752 219961024 84950905 768725599 714380949 40690296 75109873 139903004 295794061 718138048 795309396 454154290 124116479 114163413 734831351 656929913 800904659 348719341 856712699 301634629 264237605 3811605 360195819 54226647 142337234 353598148 834029620 56027969 851071760 919802327 106133012 635540223 970195007 74167165 970227837 950336103 661765519 51378666 571913142 499840504 808835646 37964120 728296420 311650245 801715904 155091355 15307262 817854219 236789746 435651041 608081676 198520532 912802978 342390305 947495019 60606805 212581339 668978014 53094510 925666686 463269236 496708999 424839284 986958885 833085595 364216728 34629767 524758554 69267403 324233390 397944893 211031724 644858339 279841702 921198453 842555383 58315126 97279825 455822697 917237030 282098363 375789148 288740123 473744613 151361947 419044467 851569205 394911737 766799861 715397712 595492352 785966061 703007435 775770576 573121793 91442098 536847722 998465895 337669228 441312523 379406258 346007270 202774519 341302369 141150188 3235039 623694572 135195008 476071144 896160204 145501538 517234275 471519914 778799830 156404456 815167885 752671027 130258696 647355170 903079576 246278978 596855564 550748959 304322268 131511556 579785370 458029697 657370936 336893731 184199622 154015862 260004760 892106426 346627847 960220067 849037808 5754900 587517663 723261651 27336778 672955048 125259209 395576158 761184926 456918656 894616534 645651783 96027340 692968564 616090039 402550498 822803487 926725863 389285706 811891022 431372113 463930024 984855195 710920187 160287423 203380576 268489605 101889361 637324039 623988218 771608960 792152002 742304695 46688667 375844890 138110984 44742746 477198906 93080251 773101899 784673205 519059968 681214782 866426722 881096472 733888215 479832017 891883311 717609389 894358239 391333903 491242641 192239722 609352827 717654599 406563366 337723708 249691412 497654279 678638569 570581783 540582050 307030594 735487808 13044397 1799339 309446961 65618413 996883047 140672294 977099928 703769610 796873535 807564405 863510563 393961523 278414917 750172203 463494175 903586271 861889930 672893371 895271055 240508009 7416191 785779330 64754603 151278561 668492962 271696745 118100550 893217704 527767790 336676615 801729672 185948787 84768727 775705471 868687137 202269528 345461284 210785145 251960682 870474677 945715579 992716267 232831485 522448960 975560857 145199041 634815553 546936070 638306929 145705635 352706182 184864870 630070489 921640906 762132860 106744736 954910727 317324758 619345881 593608085 109946752 988560271 616958289 779261360 373765291 279591520 149403347 239407010 743903799 717648971 235732541 489765533 659753043 380638161 628726072 318795787 809996798 186004249 57601736 381849815 690585311 432339474 416172991 349863493 649893701 243305757 935627007 650284512 418335615 457415387 240664662 152849024 371716649 596279803 697188728 823429365 118201852 317775607 347653462 700351506 992838696 833492392 727793510 32356454 841857248 262859482 234724531 72261110 405774365 739135247 426878144 839703977 162995445 658189678 946755111 258660186 866657320 611658905 85044897 76779105 692950926 144467590 501849200 895856893 414625628 765817265 256329868 339366579 609426295 544702091 30169208 846042277 935108187 89185189 990277917 326186992 693271382 315008953 609953720 838570223 185679868 522273027 179927547 97139470 926368685 165722883 232224544 635698811 642387387 936048041 216554954 607120421 132069641 865150583 125612365 276854857 205175622 772043043 886176953 337278352 408085423 284734786 764168003 398274616 449252631 636545076 601448036 859792688 110472538 813587156 597441245 364923158 284774305 170220503 441407366 608954111 45819919 157887545 492953587 255822292 650741990 5448533 311420003 130045448 466099548 786071692 898876194 587291199 500724612 39045175 615268515 314534503 610765469 295509834 965763887 304473546 677275472 710262826 488806890 507504109 330767426 987236922 534462322 349815779 207712639 726854560 210258614 797655461 82084721 734058910 674241069 136821959 340312022 345637789 515188278 991855845 341006478 374808917 229564181 875258055 388603693 206071747 397775945 764938663 177023508 589200410 886546781 532558745 131585518 499889306 114357267 544402077 43074008 643373796 115366021 470902304 119488271 56856948 533068532 764256921 911455669 875823559 624115695 443508946 279679662 504919028 917759687 324671707 240725701 893562680 500807005 208718760 222959851 940401039 869414710 836314103 232334732 979593563 273205640 559926361 468072562 400900882 108216970 638891419 542956236 365435085 207883029 542272957 461720468 335830748 698711767 502967601 290470597 172914379 470966450 201964396 74696393 81091740 823223970 72544240 984127701 105381654 530961033 430531851 532759566 191296838 340172337 419685242 818747011 856712801 140967802 863817571 233653605 285116985 137246815 390974207 700773016 484249720 411047687 967793427 224106957 935199489 721261015 330912520 885126561 738470374 218307563 348377293 711597951 350615212 15731100 543338432 395389177 56545995 476986371 765130332 869527786 422063788 380782356 392860770 792736594 154940579 242719297 662218208 881282266 941115110 560374619 381224629 890482007 87740540 943002476 617008284 33136242 841153989 803856183 838250574 518687754 305572070 861939059 420803203 313559702 183152744 150718145 544053321 792224369 405180793 230397637 726801071 447198393 502065522 901360065 37396898 627508647 848534064 10882320 290123103 498891114 914079184 402968490 169083543 286950710 521760421 710366623 496270231 548598075 778370677 588751579 323936193 768068241 362025969 625748954 998529671 224144778 891430192 481164145 689306601 260342815 28775281 215772456 22844545 428183231 259491212 12428114 91293401 40989881 486273784 663802037 237695932 450202540 379643925 977834513 54419655 907298837 12433178 267103735 5240663 712899621 853857429 480344873 224569237 694852520 433916601 558661494 378198142 271567107 444054465 946446171 176366406 489043852 601318549 942717643 250833856 854773284 922237259 830759204 274255201 274582843 513900479 807767728 930533967 81614356 627276473 265377787 228970466 815818010 478553633 852343933 537098934 809765381 746779270 723681386 678290746 686215381 77632563 881318162 532489130 842897785 471042535 504542432 720562882 266850905 743793064 8614442 516747777 68850714 411264699 885267507 134894778 952259051 349668663 175269768 402316401 422717510 390016640 544678748 939614340 226856477 867605215 525412797 282688155 187902463 815345235 91337113 51976134 634989957 237665890 207796733 218143431 809762662 60294017 857366030 319115515 477782575 524350131 547309346 742468282 632935867 433406478 149724532 90965143 103811034 781916049 954080681 816111452 645204864 511963630 339871326 318514895 163796495 334223408 210279543 211974125 483045765 794090968 96249524 188014669 747007930 242983282 935660230 125301970 729565236 39517141 376482383 880585086 122893481 431702319 561633678 840268575 45358340 461772531 671524074 391327667 375552731 169612143 303982731 272943601 542739710 892228724 318523774 168477584 75991465 306457372 47653367 848569767 274928294 878515849 935976198 487348676 350057851 269834792 305339372 948414394 302108860 720013045 147018424 957170701 294830776 399142499 900433853 239907911 432743528 723484743 911230944 212162223 835671035 234918571 687102729 320097161 734570695 631081800 967140109 731310826 632565136 796324182 549679391 855711121 501753778 139273632 735756424 458964771 623822465 466850334 317109629 315022478 843815007 848202149 209806107 118570899 769143403 335940174 588701015 297886101 509590301 843070771 769219515 228068175 499909638 261741977 829968204 801276106 76614604 96644516 752599788 279612203 422841402 24725682 789483168 510881670 50890263 575448066 586326149 279485519 911188484 445360304 495886131 23894305 931264083 815664244 769857874 165968995 438069478 895069559 407787846 634560947 397943576 387676809 920199047 408469261 879259668 940197507 449954584 134361055 650183681 990677217 767452391 479386269 683005875 815358290 786013714 547669969 871538383 516936478 643556691 866934034 243678234 968063839 498740160 686724952 21881681 457871415 432686925 411656305 711612686 192208784 809297244 159841064 867506682 860110669 825010679 150887993 687259477 950128240 760716738 77847877 697479291 722735456 149801744 796468999 517487345 860753584 581904397 428024340 882970535 738757630 236737162 286386671 329684330 318213684 821779446 472385704 311056649 80697239 373413250 888407344 150392530 62434558 992101636 148483406 461988932 14036922 186194780 680728985 700369349 967561546 162746741 546549764 713538639 748618893 644763804 679525704 345987606 221878033 237014251 374380272 162739486 277270773 67756652 452634188 672978900 706655914 639488080 595544680 875755029 808529735 915549062 184332143 103891585 245854394 635809930 717446138 940552165 598798414 467227644 847591945 323466686 959677033 503888603 164038741 880572221 330875004 4835254 979042382 842654836 488610976 652309099 822404156 495869315 371007146 572841325 870145037 643066019 90729005 159948379 913976584 653697336 371630992 23509816 285182299 520283494 29318071 67482230 42650612 772462865 728884778 535230768 444714170 545859068 263811422 955457515 65640517 976083655 867283251 784651390 225012945 48242481 477533471 294153374 343328603 572282672 701924358 335415227 70736349 257023282 125283874 475140519 262029237 212667544 139747569 941756424 298063308 795011986 406535821 866172778 436758111 467662268 947890212 171975098 151327192 885212331 917627136 819888249 14436658 279533509 200446385 488946900 810741845 20628709 889785684 954172982 956024997 132705531 377546487 611835279 863923780 617468791 957245179 847347300 34618681 67527691 393946314 177275448 838102936 722115368 426398622 917037012 642712486 276812116 786373106 143135919 674024016 374352943 195949712 825645941 134398500 656258484 767387551 742847156 876561870 289556933 309913804 568264629 521135319 123277220 959018224 932286523 824350815 144805261 562561519 536058962 203039669 83912368 86142918 935513595 324234967 602602845 954576520 206373790 490335121 783795578 541015026 816524397 978230763 781275161 109865900 873935970 728442545 225327832 244747938 97742925 10158930 799941453 196479991 496818559 867323996 68459169 82363602 164495536 364364195 796819162 428906301 999660434 971547500 858690446 847278519 514138721 572670922 678863884 386696437 798624798 891059875 751708095 316906184 754146020 193553666 545516866 913201007 162492409 810231922 680621632 497038648 338791438 457855806 403631216 950252738 996277754 490721521 594178276 721560354 924549428 592047657 341275214 501230487 637580381 101783908 66867331 705310725 918095751 83527895 549731338 450727445 377355459 453412278 686100060 327386090 212322964 356979393 456473700 242092758 647685288 683571868 426793188 174672633 990621221 451073927 774653723 943164742 289903571 724103144 179456199 463309004 13311772 123324867 573635506 853401938 950176825 227867190 124414734 522311605 803803482 853443142 26959298 461386600 669902292 544881479 324611530 147032048 878532746 429526010 371325353 121580780 173200875 802922085 321613622 419543365 178556216 454920286 997864015 24834898 380919575 674633473 705068582 664822657 197084906 381382599 74373282 221341217 803111893 307423963 440066278 798294420 507478928 760636468 583911475 542162746 119286077 43169415 603339815 172278880 318398901 562045113 497211807 911457121 345805086 498729663 567766415 501645355 318083630 217401455 707918786 43801384 78224581 286696064 53349274 692964305 520175678 838552338 643112499 772104240 634507342 958157868 769861521 91935271 362542455 927442824 760610362 615383141 262405375 659163019 97387717 623950183 909857128 700830578 26360040 748123685 634079461 156661089 802561326 950652286 16413838 345858670 537935584 471391273 851692159 640135945 127848932 725552655 716153560 532703172 677406208 590101942 341057060 782398811 605479711 395580211 753443232 829705537 637960727 21374813 737245428 669059849 12567656 878348610 746978236 276524275 544363389 471929810 125728008 132618744 968917665 274061163 707974798 278427354 485869716 34456840 636334218 327627142 485859603 492247841 859258329 387914097 542800956 327215706 49331697 591497349 619204333 152450221 898293171 632698639 652652845 338193538 437160327 328101430 867412471 407114215 541211478 923075429 239142977 371611865 901807257 508851785 301970498 499377120 865369954 807632935 86975351 722918672 886014253 286065407 71570983 95660911 231870554 901641554 912864693 962853823 328580583 685737216 110031901 299875969 427826873 893424319 864001215 221048836 56607605 399231673 43497961 304859707 408745528 867857873 511886068 319584877 818071523 324302149 970877295 416717234 402701814 119925348 833523531 388792480 561727083 266293374 86712981 353109768 806209261 392333598 388993677 797798526 316898078 650189650 956374286 757583774 412504073 268860457 380797492 911282746 2614264 911984437 349180573 451329402 972030910 958366843 378886610 307321067 55264028 674823846 47743047 426687899 278234797 178997255 463158099 353118871 661101621 598422600 235901345 900423092 114034803 366540668 55192789 937544651 669699672 914809308 936847685 510926780 492364228 835305736 683279951 961552456 664083525 647613721 806780482 934305351 91417897 387951929 547616232 716639438 563191784 262281907 829019 199720085 512045535 701349970 10920680 682477704 964306395 809728539 211159571 823427243 102888982 778999883 943361819 259973626 336781794 260410784 446191257 926016083 259444769 292011227 930546680 777995455 525476327 555855640 127723471 608773576 923197653 191498289 650582939 605250678 576092355 490754252 449418392 713819913 983952022 371039501 471687907 972085941 231890618 20859873 4712982 480309932 924530018 774958618 232977206 690640236 538422112 912325252 553331100 999589363 830320685 116722071 312377501 520572802 675225309 707287749 504299219 882864984 614985284 20198940 930315889 838857196 754757523 293456044 474015959 572108518 403960245 964196669 329281753 129162461 286760808 983082088 517116179 168667598 774788558 129908468 526099982 234095801 776512254 279187146 314589503 594293508 250800888 455856353 146487654 824213398 954357972 11427012 772686135 268883945 969119096 518176375 957174711 820747097 356766008 401854590 624209278 535758726 361088047 388356893 456939592 47074956 568505314 272582112 393423187 177597294 718318796 530348594 644168558 217249215 722027341 909313801 66867038 230664787 616038907 905630434 795354038 3807800 57426642 858813013 837518442 191682673 382200050 520854199 893514500 587104260 874323243 751041497 540695975 621455444 753176551 774901801 125490710 522645212 841867079 389501188 240760008 943213199 383987218 689763277 671723390 241362437 720923676 771831041 604112871 163917025 191166937 423465707 787701956 998974922 599623574 705777502 818625745 821413148 694958754 454975153 565822262 254530029 721758564 536933261 783497321 833720769 421999466 170542411 411883397 971531127 598022202 320520805 317822162 631097254 76916730 226928904 141415654 222332980 128408290 791328730 418461681 825585074 408813185 836712692 381935106 796211194 531345635 975684089 245089858 656341812 112193787 451325316 412209931 117522561 870775378 270728035 435183037 229106423 634833660 161259470 664721834 636806506 973988095 945949434 980635798 318251877 918102168 397074165 335008107 510677743 204747924 747220477 533737090 755539019 621325078 371090250 260987048 527177910 209602335 492338284 803731993 765592635 877929912 401386595 466482166 995995786 687837993 152323591 169601750 678068725 1600335 489468611 785596469 706082842 792210904 791517392 643010821 376229179 596547318 654664131 242875711 453372181 762372728 73354271 678432575 650165788 365899638 518760183 452321806 768688027 970189483 667924675 267896315 978938319 647773732 261470562 911811865 133955287 799758622 142383155 97898662 707858916 924084463 616127965 760934619 258235341 223947050 399527671 39401475 960332143 133736414 781683593 186265708 718785708 674872981 949684054 73374925 899200684 813927887 403693338 618226479 892373258 483613009 639921935 719967039 54759022 46494243 830120778 228634521 574480702 544320257 645701014 165883717 688415024 963431317 909684892 311897477 481342030 601667241 611727013 722602042 225152954 464251241 594258749 416344333 772123805 317536251 491305657 442856692 731792398 223845837 65400527 139628562 380586679 524142941 317556153 26369865 871755181 481283177 652790311 653929830 718625111 602887397 812231604 420375616 988655968 273157404 22197340 582004722 215789515 86688816 702486848 434385692 59881379 150802222 781243523 154572339 897270612 526890935 584298864 638233304 578679151 950523072 167446080 394565512 499386284 556278075 790653903 908557020 70323541 159577557 336878631 931599547 273656503 746791683 204680273 110643653 459452580 493695514 925125146 541818712 24992982 717819522 256403231 485296078 631247652 964351801 948578034 726765703 938160723 317578853 348455897 37524923 687082417 177769310 357594557 62878110 34009462 668879416 494255347 437218977 358796027 69704137 889198267 254093086 679586188 194395333 77716283 615814804 648017928 743142470 258773312 738668778 851756543 377464750 822710464 829881007 512798897 385836076 678236171 852830556 575891054 356415670 146880143 76381026 317994891 950536427 916175330 367273398 890032595 298813836 922830456 937446739 7495884 785615761 229674251 563915165 632028793 476152291 348707992 20880555 187785606 817206007 420867868 101768976 773055130 704407724 449627548 84290553 163985575 482505360 651036303 8377963 389575673 757641836 936551058 533844986 477943557 264711636 434592288 196132383 776619004 892509909 483487259 373683142 848160651 158010257 167827588 865388808 212208161 302612693 110194617 544263795 253520705 283953143 998266003 404699951 403154619 598266363 185119934 162678466 552646025 37307517 732324004 942407057 139609686 133495890 769209167 832905023 781444485 893679527 613628759 504953280 734742805 106382115 396990255 465343512 581943785 317684006 103827729 83007044 722244455 768719344 714683199 998615265 55253763 538047696 75054774 162479229 753569960 199812185 850473950 125813416 823035428 769711519 628294956 502712407 172400451 733486975 349377963 740627209 330955015 825124842 818770014 397551554 631568591 449476317 99821875 600655109 946343481 714870953 417644313 524879782 194114193 312810720 298403586 961361503 628664060 302349873 830010012 990286940 697974406 703768366 329694009 500602872 352411577 315653180 426555416 258479519 355427048 303003895 344166221 476071600 276321597 181311941 556645585 694311189 695333204 743015904 566951396 96577859 769021126 447199113 534059674 730880799 122513048 377813693 633471354 820896733 416931086 415029592 876033816 307223515 478566689 955333531 482288198 924205147 843162706 265837805 193653224 748112098 152770452 10681162 997291360 248890857 488907840 406373069 622786661 49253898 73534328 670362979 177908807 906178238 503524764 209450672 464212432 351785772 254038539 827265196 87748644 274797770 135011699 647802159 807117858 814896395 102718322 228235046 794764431 870130287 200720953 163252849 55796858 790803143 190580324 770092217 51977332 180310639 714158536 770347900 607692421 394876125 125252406 3491545 432543959 161734094 380342824 867289117 686299533 761024027 13418444 889452495 47540930 247232810 123474887 552415510 604523673 565047848 203598911 495831124 863528107 523676256 518595991 207385695 492655658 856228547 675769611 501781619 418606324 284838343 103843822 127509980 938081686 780934562 209300673 825221074 376337068 434847415 555761856 882092776 190303413 263215460 189008035 922463511 772674689 652008325 211821185 8365718 254473608 360849181 324153934 628450661 250486554 638164717 547199218 277865908 716192783 815700928 15316454 12011153 981044857 468561903 685558111 568578136 728495054 113526547 563080720 392952442 374703280 797446537 516341932 154578835 160805227 622279474 462693220 73666264 813253343 618742904 290036015 217103901 427034266 453969897 404258246 229930235 886289436 935585146 735130073 270521405 287541646 229922986 976667751 995951016 261911826 482738955 539938617 305697445 730781303 707029159 283078676 45273381 658507284 979788391 293926051 484142643 644305072 311751310 597364176 229195926 915043549 299052244 751998211 376114874 229072783 432312675 377947314 27255976 424094186 494570359 20251111 292491159 20219310 812618389 627455370 430020593 732717887 610555168 701740248 520004342 130612065 223261017 512621306 250823522 669635962 449253370 991988828 142512223 199526234 478023250 984375568 232095012 137300005 550169035 330194282 49843836 299025670 577991926 168665610 164093380 8608584 127419142 955589158 592636614 31604708 379312211 307098719 850807294 356046287 800678121 208543182 595943039 251689772 475092503 544377883 976797769 216193912 525907935 848668474 399432114 149745995 972314721 476998040 747352433 191188622 843856986 458529297 487941143 203528994 367766243 495736247 649232964 470743983 569911291 541833702 862535952 998980543 750726365 196948717 211172049 494563079 301402166 283181175 731762056 718714544 403684685 163930459 778288700 88333900 135007791 343517482 890452580 278758775 223855226 664891049 335551685 531517374 110266811 894598199 98779931 599046410 470815188 754431973 351040049 300336221 636299658 139318278 616086702 667133705 765832026 259616809 109281478 867821474 35350313 955223230 78651275 816375414 747109344 212751749 575513639 499202578 190679125 740398438 7970652 526922482 645300147 513481510 32167722 39342237 469735752 965256343 738065367 599021148 871116817 771278565 692439984 88009072 708127545 675026931 29987962 778489067 412217881 909334125 836958340 881127634 47501047 715266071 567467681 119359322 430428998 413768723 833081801 483235472 934223657 9090141 734246259 309685205 927667150 561599381 439934495 892562277 824274226 687197011 808774839 983737776 810398808 809373678 633756859 441050551 221879011 295214799 225635111 584071978 144996738 965231618 574407352 874365561 6761664 598880653 370645069 949001277 154732205 795529230 435157821 713920467 217697649 502349434 733100385 451407835 634260494 694920853 770411060 791110679 920933333 396886179 623404241 377955390 36027168 11966964 625895389 129643208 160465741 204325333 795293041 397627584 448188286 782675344 545467508 170745809 334399928 298572803 8209433 696875937 317556856 324737759 93948860 381137351 947558789 730379356 479606593 943839764 273139097 579592363 80382024 860354456 693878472 695629348 760812930 101173860 983652097 120142454 979199783 990050314 112895496 390042269 586839979 309078552 984785137 702426878 316337192 851138394 674509802 718754130 347892704 762574164 373896811 730707509 64146603 345265036 163303100 631160493 519251658 821678055 947408895 731009708 524544386 430915771 920514624 658766857 271667685 130025880 819769902 298734131 16648682 641192937 911341388 625096591 791451291 250403358 935382144 617380264 806644802 105495811 261903726 587239400 993401576 757652913 809238125 877977295 30712031 740607234 946833431 285574052 978266835 281076906 875993641 178907671 669597744 929347778 260125252 285452442 362027815 109539393 133715112 74553781 285739953 780272736 820484273 195430653 858203120 385945179 174150299 693022504 537623338 837019579 40435893 769853970 678566364 315228606 473028617 914971959 969539359 68606228 650995723 491406274 931049385 292532477 176519275 908394872 586339473 749666375 22537609 38743156 601670227 41082525 331680053 914759672 396937063 371230224 701081462 329911812 19174912 271660955 606662300 735026136 303555283 455528819 271922444 738591235 13960042 412465251 196722750 540465997 115126889 689957506 573023047 501295285 970796591 720575890 199676711 33830167 329058359 438370496 399744691 950386660 72189277 77538390 862345460 164283564 989945730 44905627 907382281 435551025 210840840 335394940 67538244 436775253 578349917 6111700 771054172 859546796 403633220 559464952 329255262 724115311 548512359 695980524 503251828 867646088 854165765 267166797 719863774 948918263 13519370 519034024 199949611 640069968 981724598 734027568 236803562 411633335 28791561 972024007 298148031 386395418 295488819 625995069 740361561 336606585 120992027 814406844 617475974 642451799 640883919 848224683 576649985 614088942 138897327 40592278 384528743 172213956 290635119 390403079 180509071 82854204 423608464 308127722 407953356 411853673 152393948 209087825 469249853 856760818 426140464 722111965 223141274 754156408 968287978 819034033 721007240 33182080 11761138 564206103 600781337 340927140 488378584 895917195 455155544 400241075 853727915 687008404 818556774 493501563 715289899 853111319 512832783 680596710 670260731 153730999 155520275 277781383 757042010 456324680 894855074 867730739 743334715 817360076 325575393 450785889 802129488 577676248 32536624 54396065 183562693 585211168 117499185 855419885 731053430 359990581 268648593 938312254 170933356 884264227 511774052 235391866 394367127 601593681 18212372 388879551 73886246 171385421 822965601 960693746 35749001 653662969 645317780 180650511 447871162 159779017 445712608 695376798 567860438 128146894 165076219 723262232 488780603 188550100 736453201 657894155 848928710 394098716 468015913 180573297 608650265 97095429 714751832 880155884 267557824 439082660 229204025 642104440 931796311 561207339 441403679 123092686 854717032 723306344 581924467 859954565 287534753 181161992 612639994 475530848 802164953 575302984 324470563 807411969 501807844 418334198 488252402 345273000 539385851 93607981 13867157 879186432 410867712 464934927 698986273 549160837 972649941 257319543 183358298 916430925 381368072 766285613 173778007 763422772 740589779 790344089 918608103 826402222 601698177 137522786 960189396 799941742 233493656 185060953 53585880 630573005 138169677 579679943 768537073 645964214 274983724 727054584 961909229 254842587 95588881 157966198 688773741 3514201 63270526 365627094 376914652 566049790 523628399 86334944 662774846 826885564 145923162 616572476 752763053 510454764 53900345 460223635 618593118 404455002 790915119 271547300 617347809 555008867 198383640 150182352 128125054 341103312 565692173 54192713 910426579 506026745 394217217 992229077 10440980 516397579 714073413 761352432 117273824 179986675 633224875 822232747 178933736 375943867 421190425 238148854 598389405 254238086 361509693 826209607 903525283 163258321 363955893 865369891 242874828 627033382 401301866 417002818 465958675 599786773 787093692 162002223 505775293 565311079 389261069 5698308 193768767 985973673 116271561 647866434 707900401 417642584 216997396 31936235 551577563 778748773 536912541 519442786 573234662 801986662 531350819 222139925 769299400 507509700 778851109 876254830 10881471 364930924 855485270 315167287 636192247 505961499 877237245 913412531 944966051 273459513 926233895 183514778 552480975 539102684 392373339 942310503 545119123 527543479 232003885 375553861 210882427 724917925 323243999 588189589 133672039 204670805 761771866 732797977 368762269 760845538 74516721 428830206 223802362 831688586 464716183 557509280 363586509 483350750 655598668 400112749 112671192 942959128 449573960 540736424 294839194 954760871 73022085 417466578 320347192 566134681 281963305 234237000 89308478 8282766 277512982 595657514 519082320 501671982 137395606 524746154 213860363 250538943 747202436 100864619 862744744 893567405 42029651 293763149 51988847 819696471 304278379 244136911 808136312 751029757 673441270 640574814 553510875 754959342 533833691 80226230 792870301 575893615 824264008 500267196 657059648 441175392 392216308 315119239 990598119 968604162 731353483 888612847 608584273 28666588 887686213 431256561 882965830 587948482 133273981 546630467 7276634 132965629 679085364 909644637 969317771 716694685 239160104 476371664 497584228 256001721 976977373 596186826 700178608 701024311 95987948 758862166 223148453 7417490 857681434 274294670 241707487 296791718 65319369 493101760 197249546 905888582 21061109 512091819 778985655 15790909 577881383 323548910 910950209 100268421 929842416 474682827 734435844 699648703 647704011 775734920 687052714 927775892 896638545 673879866 587737718 228062600 477525711 473231104 701868611 868377209 750863337 169669712 44283528 713960399 819076531 726373901 510061744 736647755 470771733 862504716 446536215 420268430 747463608 927152348 61060712 659235300 264811475 993163724 615990310 790427723 629559579 256691888 324215213 737064461 476392379 757402622 502129140 903264906 429722647 451436858 697939126 658491804 660538886 793485359 88794981 692744760 216841871 203775627 221185208 206493097 123779864 947962890 96411632 808119823 901559454 960349552 358998876 767028924 23231788 954551906 285692736 65633443 617298942 157816953 630998124 506831398 637211590 733229112 918005576 46958651 895827992 132794436 811290317 619827041 866826238 911910259 370553569 958953831 979747237 804336368 54663854 994060147 563299433 809170959 731316560 829669198 758509084 725020599 1357135 793408416 65953204 249531669 9660792 579380751 74660968 903119416 350584919 831706078 691636002 856737077 898342196 105192579 359557383 95543800 947528140 347047039 329221243 839733123 663965120 11283984 130327281 199845971 69530013 21443495 816881868 336666759 357148511 416807318 8689274 100511494 438645822 312661096 988919051 719891002 167793478 673937922 530208446 822300447 463083372 976046792 527332987 755632787 119148033 575573370 49584338 543387214 873881593 856320212 839605387 866211805 358616489 157427074 646698496 87525106 819029393 966128913 518142783 832993043 982408266 15709969 479233276 352513922 839822489 149928807 897267389 906080172 529989905 451135073 882164932 69466093 378071778 953603159 259745117 227578492 451886496 354689205 258799132 892964180 347944951 904589217 45646423 52285294 191152842 821557649 470177227 940382047 78516607 649906779 703876852 841281407 946064501 225755504 152732708 112443686 320499075 230726628 633444931 399974337 666742145 426737739 826870194 368470367 161546478 888013163 182877833 844343980 453913587 709006381 816605680 797657059 110140762 182689741 505293261 34751364 41941602 996574014 404202303 219227123 650125875 416556932 961655343 127637034 968854474 23225937 744023622 850811527 696826050 189233893 893992615 151420282 676262268 478893081 103317926 661387011 325295063 690587746 517309722 674842949 359866027 731804303 960859973 902694217 362682859 839117081 261284320 964264635 357160134 693493770 37870003 665061275 344378347 348729513 523184303 944776744 928032052 141704687 852798572 271200695 732034537 46032380 872946406 758233835 186913164 269003514 88737750 296608149 853338154 294259105 717271947 722265931 467192630 542854362 968085413 462405223 340384970 210215978 519972863 599415349 593150131 942467815 390706152 537642886 271600896 248214601 922564310 972202964 51497493 187941264 443321707 334009306 979689463 46743258 660272126 895116971 658983495 182954825 166168954 33808126 236559750 198764984 433094721 622490483 642762596 549571497 963835518 40891553 869594532 440088122 984849648 817941207 566604949 266277986 893045605 589465565 763027345 545470612 348286976 914315544 786804956 124833324 48235783 807505068 161205971 285673430 323224646 972715692 830059213 341607060 909880875 323786005 565392062 6033289 130804364 623404252 709594217 64251165 803446041 645605277 598610128 242172593 962545256 656365811 686231069 673747503 644619538 994896258 526192525 75057037 902298458 239696586 279970320 116586169 489528224 822442609 402034984 3236238 829330155 21380827 766100914 843365564 99312044 319643935 906081627 37470362 624652380 32601625 416971952 515906551 187930473 135289542 55766329 927706928 588406962 688856428 563514068 681101942 83613593 975098549 364405821 328762349 730229933 381470592 387291985 712548110 723788519 547866098 28413045 926903525 861799267 516509980 751686160 349365288 299411669 67554042 240054900 603127101 177387737 372451667 271496370 420541510 246437938 897786301 759293772 326028455 572338129 608492833 663884098 231632908 670957031 13887964 709305139 594823815 691110824 250106421 335755254 927107728 323732443 277308156 727422904 823759580 236708812 663859247 135279276 114540982 568975392 298314175 956569598 947174459 432985640 979713844 688771854 757089388 971188263 144769918 362352217 347662567 385669119 304343789 159936165 719075068 57828242 610129077 81358939 750307227 937132450 832759223 776203623 477959928 675522624 906467684 789711426 533648289 714042604 954561417 961352745 167915472 18581029 826815451 515921140 444881539 973208136 298567268 789700346 420985638 931613804 438031507 631567024 276414981 810397302 996911245 922258472 721979957 253413187 654266244 35083505 49146267 135547711 586385421 708180978 37157363 928848356 874755623 324114501 371165128 427769598 305816264 102183327 183983513 250367265 397161822 273134046 722848246 763111352 212475856 825875595 554880654 735435368 4445083 289042116 935581179 75625751 686471107 132486091 642138499 177222021 704309876 910213373 448837544 57146332 426848650 357680436 663447184 199590042 107752720 593049013 967493311 772278801 520848563 993155852 518118297 811169034 363177092 233152393 820948208 927350613 367296867 173950973 928489926 958669524 262571415 446429405 539002274 148209894 185411570 786710924 352690820 483206361 728234541 84279021 265624367 634950393 452157090 508616762 155529282 77552907 635669438 692631101 924391092 995414541 819039083 689128728 489321871 54173596 224468680 246646315 14642348 526968109 359251247 73301641 946734410 553622205 569263809 722195208 7255344 761296071 60510590 870479451 414887165 437528938 615933824 626902112 148747578 504661438 628318230 386238616 873305791 831765973 291344397 594748700 702635377 944493077 350395786 49624310 574435035 430392644 692702346 463580111 310889861 222443664 301664675 283946931 944843816 564047306 241976058 263665731 623278179 454623841 28194257 711705899 874725531 249745062 333719997 322476710 876458808 947709826 442632367 466930611 221966145 253946641 940740143 93130329 692116153 87114820 79708558 878759003 228395360 237838701 504781946 780880733 132685085 518607477 345673503 659861458 959102838 293639280 81774526 764496409 910993427 65129706 990191278 940348889 289068144 360630130 345119616 974522714 710748336 825084962 632389099 2808498 918339062 391905717 705623893 262975000 292304617 364135612 339535694 369312545 42036831 792373601 355620670 587182449 199625787 82905131 681947382 974722995 606452856 748819957 33790928 245756807 401564842 460681509 383311971 200581841 136417304 557569151 561327793 837411713 429159000 787326328 658051277 483100946 497300837 730077258 598232927 606759430 452527713 427423042 444366493 825326114 654031092 412819349 561549978 504713401 256581404 274096945 70957849 967906037 717153485 261251600 291014181 457773311 899400652 489508082 724089920 926003848 621450060 825966057 156475790 606595306 549242956 286750256 124731328 273038614 437014562 784575303 914133860 352965280 957115989 229033711 165842316 962230309 220743598 224009212 665412888 693474873 2980790 960614191 319666046 989530694 399379687 753179741 676590884 505941790 10541216 517347922 63734570 234648479 911185315 907036931 623365633 565127981 334679608 720338326 642240083 269624053 70907418 705196754 25673232 10187069 623839455 121983370 175595607 229418239 578541054 465094235 354093381 485028723 629505832 248051540 724960910 341373652 172886244 944750396 619279194 664521424 898971570 289989286 736648987 818379467 75887953 363724971 949952247 983027458 137763899 222857201 478411738 533529129 671963671 467826929 148739933 341731436 67388105 316365138 906834777 363581824 729540234 815574450 743608739 602336185 245326012 75849356 256487469 635597818 676361500 220753091 921066274 27165267 351689829 260083487 976957285 394654863 313550412 834586195 948345481 945806746 910777984 537983259 456515402 269800358 668046232 665987522 511112848 823191383 386815292 997959289 563480392 322571001 153331226 48133897 348886961 175821916 305015495 360351903 329904266 331993623 217135489 502775202 269403431 543105951 285105998 648182726 97279195 808437683 738545556 683743717 636906759 382860525 573290647 28114592 66311761 599430271 146175792 789535723 701848826 123327594 403165513 833056326 442587516 389328016 49214882 709165732 889339955 677098650 711083888 276406944 499416292 738272350 691564419 743409087 414567768 235132250 783852463 338732290 243083534 790533571 130973991 509613702 921152753 256188490 338705234 368266649 940620703 986286555 184908040 930951488 442041706 365514233 850900455 426992520 982449350 683399841 15185535 310037398 683733565 97043979 252165777 346021474 662480315 722802695 730282025 859165671 799323400 298808109 830093538 126566998 314965130 471928935 680453982 629334691 131190512 670776458 601910158 821529401 502871853 319376697 350726929 776166424 620016247 388801850 543126734 91279910 179704846 735663126 39208153 165830334 934794146 962891916 210211922 236118862 573350855 353070828 896679657 970675481 181382220 214362082 762782109 72567318 723024618 230293146 681758821 885820454 280277649 956296837 134349096 496198428 920562337 834539752 999243936 34973259 277845955 745445186 286956226 948671671 916396857 856024723 964232976 106745402 229046947 471797896 331670173 920803109 333686985 758951559 487856982 488622596 91377625 70124917 861220107 49042308 375964182 738039411 793118377 676303462 123228963 516603482 510624895 853330188 492641477 2724390 884607535 360071438 777648654 175819259 155865118 766422308 444932263 963678325 599361919 266471557 594250591 464567369 400637754 113707211 946675384 256163151 390256394 262325430 57530815 420165627 924863863 60202971 955535827 174648237 601966553 39307870 84573364 714285797 156350610 204737756 291172267 297974918 802636134 705577411 966255960 476871040 349621194 168276736 242238196 868489506 504216966 402003258 796314202 899265603 940202319 893025033 940756321 665369936 973187440 550147134 439598562 412766902 53583487 249851142 905455748 353806538 380056000 282668355 937903831 792034126 598592321 350995905 711903215 993618044 562561584 608883295 501527250 86786662 704175854 358862434 154193881 19992863 535255014 59529357 359288722 250190678 665981166 297436993 777976900 696207134 846940850 738228299 687145491 931114120 475214781 342943811 665208406 549373720 96418192 763628491 822743755 126283008 366369027 381295774 190864296 278363303 809862046 551961375 780525384 327347011 244602588 768271673 540126759 287771509 807011080 598212576 827227991 965757758 879006197 219750204 37624965 697332794 2253947 616909889 415477955 760403791 133855405 467134156 197263779 190081938 192364307 44613348 787103167 238313502 977904043 359761586 306956698 314706546 346860685 231006591 227934249 949200038 471982802 84868098 349255612 876756604 78966518 941788572 876134198 450347597 788870228 673340067 511811315 587197478 490910698 925968419 674132911 868675665 783888991 841654010 772323724 937315403 268291811 66181856 702646354 979842625 538818839 61261933 697872315 473529834 929408571 999655968 583718932 78745480 5676523 942870945 233919922 321743354 858066898 493575378 810774062 925596839 593209424 482249453 594359830 538916606 847458311 723622769 834054778 202650988 619742236 764471225 711478724 473323346 309579908 622136332 656231547 850787738 102190283 495181084 675319712 217816023 18398441 624963755 58097450 701107141 734707158 360257162 741279497 293930440 851511794 819626501 487210413 33642802 649991160 803121600 902022855 11449683 795749733 955069290 436942641 191168003 617014516 897536757 709869591 748925444 974536319 468880248 804321056 322539326 159468148 522449231 906250525 86930202 911849878 34245359 313324453 707767874 171919762 792127756 339844463 597924634 563257338 413828018 829088571 683621367 28732770 702352323 347589319 702159832 122844399 625460362 482254468 802050737 884932600 442755491 388427091 911293168 606794687 750452931 682363070 563343387 585385570 838988131 843558110 381124773 972313119 116652808 423384005 99944601 553591089 330684765 149796393 546791748 979134683 530852365 84011055 342689721 586832870 720217046 422538109 383439588 653005718 462720846 114420961 622883090 370796883 675581761 409284507 328686198 72829541 685763733 282590727 853450020 308861508 123344024 28471407 757235760 882604811 553575602 900059568 557081699 524094063 999107953 241463846 172042565 783833550 452741831 602133369 68516961 81731669 597504944 789760919 233904080 224813429 608096901 520706715 138783482 275765502 208311510 18464923 900362971 150230774 875250699 494107115 442839985 339818009 739877498 652535996 447295881 228330066 329161653 581856546 457128873 865266926 901556308 786910290 48360088 637256054 846646353 680571115 509124897 519231130 418524031 12702522 524636856 622940791 186540923 815135972 732124103 640172210 393468670 714423429 326311171 460579843 349842832 930183197 690636859 160158676 938405677 67009454 999824177 125289474 164237621 694153061 66418741 980796793 92428862 535470208 37610442 904354573 469464835 706572498 936444545 58044015 197190052 98590422 300974996 978237152 47591200 597444079 298488620 915796958 329505131 805735050 424268542 31789382 369040594 101442902 156713174 517857194 827385302 397267667 876086614 108957542 419790083 308849034 897079186 657358728 198419290 683446979 731956163 230946448 167944205 235626541 216618947 156801821 789464925 840825770 454940656 724468012 882586066 655376981 350713997 499549945 936124804 968523570 950467309 901200751 374443916 711154961 631178927 115743464 182607507 275635008 375835992 630804564 39914727 463921169 33511272 206479894 136130709 738632296 101010238 169497404 415812131 320568636 875479980 29268459 204274895 618673958 786500545 376680445 637336190 834019803 465943434 448920940 694101216 969962145 139728346 32133988 417019403 643024419 964919947 901187628 526675831 44640427 373651001 822693441 758954245 69698493 998278871 383914644 654364138 786628533 821352473 241158417 241851759 433353045 940813197 284129847 307669935 94898958 547030214 990709518 525209479 394729403 194833461 294204742 692301885 840578301 104056492 47753049 92543534 966242961 798459223 496560581 68009167 870860044 191464373 473170291 128591285 770270494 71910294 262126044 77828618 654040621 927730328 679408034 553030167 702368903 673130128 213197097 41290811 245212785 162035293 443040886 917484489 280824923 52285430 364772586 773284278 470047545 622296266 383453465 286913179 18500189 662205906 857184748 711823369 671642106 652005221 79974282 735776967 448721469 97153162 190440922 325801430 236558391 473742956 397663939 268350247 251214273 981360127 127455178 224190120 359148544 142692143 507073656 645408977 749697778 772590413 593297254 223061973 15134846 180734638 729059841 987789806 885250542 481297959 387933834 483972184 745406567 610960211 439057241 359562896 792282794 615335402 924440636 122671039 452334916 794669329 520163245 623580555 635660481 510956420 860873516 6341675 565467564 635298369 741528866 294629494 127784235 945343001 99063823 557863439 240857583 907778615 853882036 290208210 349856848 814731057 526962494 553966348 125200652 151250984 642581200 138915215 182936868 935937753 446616784 196233959 505756509 942173072 785514504 638157450 534440686 839970599 948637120 727141396 180780838 488611669 689145796 165126568 884278782 999036051 8576754 308354427 484322923 291697243 995009173 370260125 362459140 751841541 286996717 100309044 355570262 950968972 846754911 63922531 629080848 960397043 29478770 983099934 703586724 909204913 311419623 495443547 254200052 446219726 895802262 586415289 454626214 379228520 175508551 414737818 539646425 99013293 928507011 702546487 622129825 660687247 469876535 337761457 698785814 49635241 713834203 371605600 196037692 952541048 272056926 862463411 423018116 500713906 236388170 836037394 484709335 941086487 520525922 57569334 674592240 367640103 127685527 714815171 975461183 730599498 314302275 417773645 94266226 907690001 91337128 363856230 529861257 303289231 930822300 39532334 607634285 779607282 562683638 107301047 550801264 583269366 573563957 519343363 751188461 663083726 210082656 831600249 549017601 764141185 451519467 590367029 705773362 886700546 210334322 500276165 574964193 221130265 144921121 957716732 544938253 602327118 630243319 608215075 929545425 484735183 785995898 404890145 598806063 135501499 118424310 919578663 45428036 999356031 791050815 89890863 258560094 922417983 691699949 901705622 988210706 138306530 688012145 1024523 821009799 471181529 853441622 323944923 583987550 253981242 489464619 264409242 117651867 821493543 934135144 463533592 3266425 792285628 92048553 990112141 891012401 729373700 758864229 277027483 918742698 144369356 834775384 577067432 373283676 385161334 354364357 534547037 749707618 77336435 392762358 551408343 450924911 80571091 624174710 564958676 965075603 183558468 608562829 554875282 189291446 702057038 190483298 621053942 581589565 530754956 10578756 68060774 260395187 658223941 409627011 27909959 532468828 683231016 701296893 444934247 14451690 260843062 808879072 811212236 418807726 667424919 463010063 971411521 190086117 329563619 814644718 293993396 373412194 14200349 807561486 186899395 638465507 610607429 414682915 841553998 8796566 533532681 946035795 985430488 238054580 193668610 678329919 13497303 170698473 714391929 823054552 883807023 241221732 877654183 83551276 336742256 965938689 871615214 995910062 236514917 329614685 701319333 655047617 906645570 617720794 880635702 531718213 35555860 944593131 799062869 496027837 345849630 96383932 461062266 815133270 136936195 346862407 601572869 679654141 801786029 422719465 381470952 563585383 770048164 253512448 90262819 249215940 15506710 850476725 232217569 816760086 275845440 934940461 207744945 845533523 251116758 102618563 791080717 626035667 326043394 435796334 838185981 877795221 480980422 91837706 441356773 498438826 889577903 177201267 429246779 938705900 904678295 264339447 741379929 526917671 886484600 287364058 583792127 543138504 252328759 407300645 706516107 475847522 850617161 770198364 978264028 895013077 913718558 499599823 298832784 8184099 805143999 913014555 42297783 491786391 874519365 119823484 370513147 346200615 983862360 538406395 119517712 265407878 850277167 214535454 236340008 609668033 869072873 18054251 318836196 139091218 853587883 114796684 316611576 893620907 709964514 376566029 714907393 204795024 378298957 503174510 523133386 335604757 550085768 633391338 608650356 207389739 629901589 448507238 72426262 602851923 639758390 355910112 156271123 954509624 849041705 548493061 92993275 865066024 494869632 675157191 619261282 352205235 542107176 645466864 561869896 160066091 558576276 356268321 654776697 784122692 648822498 140166873 511613679 364583199 365995848 476795627 44223517 696690750 967242600 417118395 94027536 516091809 778322178 639764858 58172722 61542043 102421485 177308904 584171565 302674253 529780426 192414881 145607939 5866578 930839442 984286974 308755709 560430122 756415669 645268672 354758892 274634133 517985814 561911069 395779215 701774550 212334867 939565360 307514694 802519602 273716494 699915354 764329931 762814150 863278074 785298646 717526583 188824883 829823277 118343648 940965599 470637060 661095114 567593483 416323492 418565043 157452456 417613942 768931971 222181014 72793915 933777156 853958300 481302115 50274651 493879854 303348156 867089930 863531609 314713991 913923763 301292106 903159785 661609635 302323572 135453419 524985948 494644484 621662225 622055547 807817904 507980948 769891811 623833208 916937732 111908060 109442247 301822384 663642797 912245446 889055540 208127384 723368779 206588502 514403272 721789742 92042854 524238441 518212708 920784367 613361521 471267895 645829466 136390448 472427489 831001044 228487623 829924661 528533415 743786464 49254115 808895716 139773700 75781026 310721677 409028423 872478048 719186697 930782956 955828779 838591657 328066299 23915038 714476724 732670909 86084709 791494504 303029785 870718272 544701204 191832290 931077322 870898197 792786893 101235166 997764039 751119580 124953122 854414538 79963404 204958295 404201771 289978870 426975460 687962159 43393378 347455376 69226771 201478872 687358480 686544355 803914781 468031109 956987059 557792495 164635176 587857301 114539402 993677545 32591064 566317162 931703517 894046024 785018784 582986951 364967029 832771977 649293996 331748904 120710709 738998964 778999808 421452510 240688505 525767044 276753876 203653875 812348543 250249815 485764245 222621630 756474064 42943040 115123898 613128110 591859881 795605209 116591345 803083845 246140199 665728817 84299103 752166734 910144236 330582497 461163825 861859349 412330104 546300616 259414827 822602006 943735602 492725904 26073335 624572569 806579512 634922596 969083134 909392377 133479792 660122430 448703409 283444451 414103239 514710259 595187503 782512698 899313375 581623008 356565302 997814238 167224047 213197804 224086001 189584986 514824289 3855898 639400998 722213046 648298454 47687151 527931048 590040641 740129550 438332774 682696794 217553569 542454893 674715394 992975278 620373833 823817892 883369958 692004774 962711396 145029115 460010737 317923407 877739167 8121064 409967833 693507477 242578551 61864799 457610150 758075310 832881808 112641653 203033608 956273350 792125479 346680943 615972297 508783246 196949494 796818302 195485159 469092618 918087114 806694121 487906848 690624669 233650111 650664807 206579661 550936322 253125855 237242836 915214945 612574914 341259069 974054003 172100518 689835016 558812651 128923863 533672107 492355267 563039427 732438806 332846613 223825408 89173007 695457794 310032738 786272699 277641822 870759276 161896383 747777180 587502697 296945739 336575771 639083759 327329424 568436380 428983372 456154250 587426982 287557591 322279238 320072531 618644294 760520095 11219273 596256923 485626624 967961880 198759140 937790571 358843242 564156563 849249012 796149774 476779283 61610957 639144214 478056418 239829269 610402029 846003915 894806238 463533984 131638276 249529229 746714444 300637570 941834353 732269915 832772515 92069740 734256113 915741815 741949329 349532971 804475768 387293477 207048197 85193231 32319143 931132891 826242973 933110416 875479513 57011505 864904538 581293287 803991206 7941891 779971160 845509844 725377798 548354682 60337392 765908343 318639619 627540647 622580222 521262857 517271991 604937572 990075802 233017643 347392948 138283703 23028310 698267428 764094307 590615425 361237100 84940518 248737508 127585683 422288289 269796542 675828366 922257897 371905018 38422758 124155295 938429793 240176628 196797302 778085336 450818422 313864449 568068917 998993644 949621924 537529559 175928692 220462564 333849643 710031706 378634813 544221292 138376852 504358801 472348271 474505414 281659367 706783190 555789041 242733986 395796607 274922705 493485308 416248905 948201662 322669802 182180188 114380524 484458286 722364286 926640238 699343289 667385453 167847383 940797214 970631974 949518584 368858937 35584985 139942927 646533457 290254932 58084177 450678903 719698691 720544989 323335633 514204186 171756661 150483170 216064752 632767128 733481239 805130735 672899634 133465173 838053027 325973474 482146150 404557049 633045376 339516071 182559760 901883423 90571110 494597331 847465375 586806300 688490453 562307583 389165926 50382323 902325644 422692212 782757884 961831598 680440316 312194979 725864464 556706638 430031543 468691092 186169408 702522224 33649626 514428739 98134372 432232253 54992905 970330395 1039866 897604090 745261174 693772827 47452104 707341472 999114296 590968153 780941946 680427319 657768068 166192187 483536854 642292185 295162919 488732381 778060595 131393046 587125243 140786542 451719463 579305365 940588499 250543433 129315240 942288257 512662284 600267123 688862046 770500469 666817551 368916127 989467646 718366516 921043713 949610310 455482304 178335009 495602843 801326802 597001468 638493889 792266523 175279378 80270509 947579814 981542905 190112236 792258013 521332346 848332748 774627511 753305285 617782679 235802004 600154771 861376498 290533976 349947793 225652873 322373688 465077023 118774581 509794160 406633214 875415925 784853631 894106264 867023886 46735132 354872811 569326463 392464576 263027475 97726275 415010239 835877921 692201864 99160280 513757046 531834952 239822859 7379618 282625851 154474473 914112911 863160123 680486967 912832839 636198512 323531098 65302955 543048156 241348058 35168152 928487527 216353923 526886966 760855369 677325652 976345796 570031220 582629589 695657310 87864950 868631527 538169202 643059738 839079005 152553130 719035143 948412575 217953746 380865073 511202483 570029069 38944210 591283416 311490893 59752955 613688528 191304206 994342185 548667279 103295334 982958239 880777311 541149054 501150317 357215635 143552944 893941379 867005603 828360964 70743817 449485473 814529867 758509238 688748949 65803215 639574383 251475314 722582291 123958943 936440802 798394633 541617039 552560892 854534953 539593016 471702781 333374229 429020296 369327494 739739113 59099226 732593922 981337419 281705449 548842855 794334922 132059729 587001416 413852860 241841730 768784069 356730286 681446563 856774694 378499271 699552380 20687940 335685831 432918313 650955471 835178332 463585878 645787083 402052411 759253862 128408300 848276728 127153067 549516905 629412387 202616541 486408522 392836713 685949040 464721064 360513500 207873299 824741406 279655836 920718650 478484218 69997618 59683489 712293440 4646539 840419342 560709859 75266867 350835687 683941559 837914880 407737909 717399737 86395254 353903951 382503805 598472290 788937503 895998811 912114538 180858970 907926236 158918584 681394526 523742537 77166781 790702221 457327052 873040324 445629275 293780086 146609818 308832711 831940157 556790015 561438750 152783968 859278926 518124883 219063983 889453294 24510933 822362712 921905465 840004568 403274702 429979034 693402575 76842947 930692590 635373954 337092469 101978448 142319055 499367926 629108461 617254886 725053245 783566504 253956847 341332031 356290519 168769821 392054694 286476170 208180511 242846632 905835214 624556235 642458186 236461448 285262813 832973686 885258534 365353317 974543846 383885792 179656516 760218638 459346998 773997462 771604002 553102931 865183854 762038587 387432896 735185555 45092933 194991969 293229567 911659470 893930882 293878876 900085350 133239174 679050390 32276371 786745882 466800248 568079819 749520001 596348598 160448449 227779718 655998002 192401138 759371294 323841502 826085787 696627918 267289749 401402175 262253163 27310973 685236990 831154352 710219785 347917415 288374963 499716915 429131455 835269902 563361223 899902592 967139882 174819475 638527275 162125383 382079637 614732440 824362612 313913411 961089442 955228460 973332208 311099182 45388512 927215672 5764714 987818646 543206126 435237213 543778515 822961464 521404515 9470836 894031176 217144408 826857057 482883140 26506635 592476250 294291579 348494511 708384465 810494196 102901712 557801734 761264315 606079623 739567832 662225940 492261627 506144268 908449358 802123931 385871771 367443826 558013533 62287656 937314101 812746484 209139793 414911466 975173351 340351411 235230632 264224485 610812209 252656667 624594981 325918381 777056273 169167592 215208778 883693452 109912017 340377994 692409791 763420825 143440177 4145886 493584051 644588497 932467666 107892913 264360441 28113231 820432707 931226812 140499551 14706473 847684195 353706820 345444648 238470223 245129763 265617005 386508424 328828224 908266021 552005294 784938749 931012630 218816192 657004038 481150141 765266863 383500182 628281330 525931465 518002522 163374976 546013196 837182634 523324969 188860193 27851787 864613818 674468940 796685205 650695817 958372056 496465773 530516413 888025532 384345814 928476279 857325477 100031856 28071894 662331903 339610593 58341379 208590375 484313950 927757798 481064763 495036937 950275041 624619407 740585188 619609106 122002423 132489840 322116315 398660324 25592622 617701198 75706388 339618134 512386715 479035388 146690040 441842828 881922250 389049367 750275716 20667817 317937318 881377471 959065180 727229808 929492412 366082094 671369392 410165320 138390663 31724632 750666030 558929865 851177281 490013069 6727358 134225003 295284393 703516474 111858361 386583291 5022254 480178187 461485452 679947569 411255674 809086959 817545065 471128223 315476124 900956555 846869882 757637080 111933377 64005645 973408515 975711222 178366905 895402279 797991850 107921745 74639290 976974947 313147079 405748833 104735930 173237111 348351378 338712344 271500443 343706553 169134242 532105273 919198678 402737596 238853806 416141039 343759257 112450397 606701062 673857074 197774578 911413208 152793071 31424749 649341771 884141276 83313467 976869198 63526088 200231904 908847518 478271119 927205509 995049561 99136899 833416850 984369261 182842314 59685467 3200332 22435551 661330662 670861042 571848525 442029519 643643375 972712267 356754623 325961602 786062376 39789077 650095230 525116926 135487471 74054498 211302894 337197672 761339288 977113654 441469546 687101740 557386430 882953585 385144587 149478751 559048619 918424952 966867645 273367885 729456738 68066470 528879332 503076236 669123813 668230365 12129746 557076825 481270278 541590125 693537958 188516763 997799501 360740959 558213862 381225044 347608426 503788782 170748512 846979260 79764822 870092840 964261834 245413500 149084753 774110865 534956156 776265535 619149792 235905604 541489811 239535674 65394431 256424649 506772125 134658258 42660317 628178187 856846152 250628392 570315040 352383197 429061679 275178819 267625536 372893856 822493593 364188757 433257220 935006322 504138212 317964943 441827033 945241901 385757830 500566584 950477414 197254035 415679030 482397555 585581670 831625877 716626614 632579611 135066283 238122094 820524789 706279225 730052881 529610507 141301559 327111187 455873518 955765964 876587876 811716072 941537773 692895676 874902680 584350984 916551380 961294923 975053462 253548363 242703047 745520122 490477019 503493668 941219411 393126782 877082783 931732721 923885373 718593013 495979319 934633115 657279411 69232085 49139441 840088820 814966445 400222477 124273940 602641404 179247612 219691524 516718346 579652377 778327683 507205727 234329655 676924512 208515047 388189862 221234732 954627840 852241352 115276402 291966717 709654814 381514646 142588591 878569422 517535476 93352019 737222970 681821632 987546699 609264091 539974895 194118957 481503317 405351728 271276840 973893119 110412076 36517111 798913260 91076847 212109940 682907672 201142572 546526019 115602223 404223526 207563556 89751666 617139180 203096400 392063339 140670846 261152035 35080071 965241922 844795697 669377640 421512767 193097996 785413945 215628177 477484458 22532211 49758789 678602136 848947195 875818929 150858312 647732900 498653026 187801405 963137916 664402811 65581227 360195161 168965079 431379794 819930872 908486018 662585325 784650215 959881564 89012500 547748390 674632428 411567778 805385643 979521545 98608708 813768334 351066930 503727513 982069189 650135791 363846746 714405607 544427892 206123505 764116675 980653038 253560541 482357500 529579803 776114981 573208007 236923849 474392927 63747807 999260899 406327289 608484219 380168876 736813628 633148164 506547124 217479676 873027321 514017871 552651 222689246 551052244 229456535 846380568 644492479 628496370 141256543 175305490 60044960 826883876 174301433 387835183 331589533 760721845 58391684 146155571 539169462 413509881 806005745 416416448 76403793 925837999 426679049 312612843 172784454 508931354 227824251 732911395 367148167 400528693 500253727 801299995 21761583 79493613 4503052 841655094 79385987 135223475 631402812 605911129 594532700 93016909 782437577 749327672 267387623 483818473 384392184 938398638 860580239 164753017 90848380 493963056 944646743 173964663 7258627 672914322 865714224 161960304 109474129 83244799 7147245 466699048 632259337 498800653 745597316 759690927 479807437 740663165 733220201 698279832 715045934 573140003 229663213 677701600 416199108 649568308 18722978 970634833 44436987 575668901 189702536 246618050 426676701 268205215 175333365 646080559 910439740 361779472 796370730 986839340 791184806 802295802 868012675 907089740 31488356 108095290 620066756 913840460 271382013 692159907 712175160 465688283 760651339 76127595 31420440 668170818 837281409 689986091 854377403 33908601 280687235 64593611 21986073 388530083 803167388 678294555 513295081 277271046 912916582 722336712 978576728 30034342 961343583 398623190 33183035 864232652 690627770 935600924 168211572 909566862 438251853 468374600 914703661 528478623 888897519 741560885 578431842 145968364 298857094 352207405 710224164 682809339 46190081 525049174 565479992 885511205 153558003 878616027 950002152 930856434 51214839 93075509 578445279 861262914 323753318 103500514 264330864 41340008 267660675 12792194 448020861 580631242 322017090 245021576 297599257 214663966 631671330 900775316 696718024 182314733 120133890 370111074 457258191 668192161 822722679 698406324 856462964 378923493 217616009 988733337 309760158 573685196 824362673 986080799 576652842 628612774 462580023 885959879 260537318 366328672 302295257 334605363 548755119 696843049 611149344 888283768 731029219 38305861 788150896 516988898 306822946 128297068 383410933 524896344 739498003 163939805 302134643 892749442 507134467 660700880 560479036 480304604 839006173 599739572 921093072 808048333 71364005 939534212 109826313 986382151 381986144 586329473 763705361 549890986 255955480 432520177 210557095 981839778 125750006 461852531 523994218 532635833 849610344 945621985 773468524 271672763 258331876 463305743 979142516 968018365 718108950 167203239 401726829 961461729 379478475 493318020 937639343 556661989 91298401 50894058 949363618 303154713 396957505 109441805 56672339 202593965 376296334 487697004 237877553 947198117 45259654 722744202 723137118 586850596 269605845 107763456 472901933 173840787 69137581 48956310 437221024 82181536 525906688 764614405 410529327 788657017 293252518 693703188 919867260 313032160 5084163 548013236 783561019 238393927 878732106 119585894 94631163 851114837 682516972 985476929 854762000 579462397 107235154 781819715 232410973 901880551 601063548 85702325 958946735 720111072 812875874 378980812 497461147 291961282 101552855 930254518 484862301 325209473 523814853 499755257 80456795 890646575 556529403 183359452 962381947 28758740 809158390 371385253 466708148 195021767 929505091 318899181 463782062 891139495 386137054 863317311 788071649 143868283 278880999 576528076 191712804 290691431 846290259 948764718 137256615 337048677 322687513 875720092 427843296 899801466 421776099 747965994 154090683 806471757 571045467 468299528 385357538 377229351 32592990 520287441 71242205 567497872 71929776 40521571 804241012 857326769 518937021 517229467 72300501 250314251 836912002 377837980 133639833 703357770 878093324 406222280 66121572 476937383 367826074 933867312 134193436 72042431 775365672 77350274 397348401 931734365 223058108 310971811 187649739 754632728 581236037 302744832 740633251 776702789 501638960 891796052 723769947 788576600 173153156 952365615 710602964 705688774 365168656 375711775 869564624 117087357 925298788 397298413 69754014 307978553 404781509 476686348 590555461 454973385 323264576 269831783 19764969 733968896 331429199 718052314 206536878 7060872 747394047 229749777 633483153 628619131 172358455 883715812 505471930 926373482 100728291 381224727 979811378 343377376 344176956 960408361 250826777 563745084 575926705 24565226 335370241 843415073 352957783 985224339 911114519 874222375 495669070 738371750 903468621 595177989 228542317 843193813 960574033 415624257 429941335 10828513 746833918 325582622 375376176 769211743 168902506 243100597 597638338 585135066 270355165 469167240 753448837 216570895 635728992 329565169 83359748 100262117 550556541 579007163 859765056 26235346 623739046 645176794 105496071 445327522 452476261 300584464 239558246 6684226 154029411 930757182 827664657 62369494 914862712 192294414 272831668 335675129 927051354 598305375 956891272 452062355 294344737 638354286 572308378 178809344 450786450 685257108 188742110 657195822 955371408 35590375 705240846 661387723 706467107 713461956 965443634 185869109 230168435 516422715 586150701 401797299 239014264 687066515 697767164 458601885 886285430 410034645 156089024 66867012 193289910 177529039 443580924 497794241 586094861 495211477 444465845 349557963 512437990 866526052 830543713 46902254 773869692 176793584 308537371 955142441 633187576 512349608 889605634 842542761 304340318 306874592 571173266 506118136 601939321 26836664 966338705 682827491 97172593 236848069 410083344 125520417 825191087 6769415 641457096 605783880 978670592 843219248 777723890 526393623 970085384 425170892 501840499 383746792 942769540 137851627 81045504 524718589 504248882 809144931 400684173 708836110 228941699 250830558 85813545 751910212 113884018 965684792 511757170 292311389 7442511 928741259 785230283 202192991 780892344 828399527 169442218 352819259 640506824 340001474 900061981 866095586 926581767 630471139 389699400 493069653 276788706 352396603 997942625 522862436 296288336 50313757 612632849 925984850 45191846 501727881 656740673 191515420 116162986 806921535 598309934 703071288 974138502 629072088 682992671 459109944 927417392 986478985 660094882 556252274 860636184 45123801 810661222 245039968 756195188 896499012 158940492 341652075 314657920 696061463 768496969 324792529 60703002 630021759 595865013 368870259 673669757 400873845 237519535 422749909 182441197 588575812 13206550 82123298 526998028 42055406 43820405 741986983 8583758 148973916 296343525 407045012 562944472 281488382 833802144 472260718 3731848 630327978 687821417 236786289 195629470 715344268 726139082 133528299 459218571 741571350 559906780 505211533 246101777 395751252 288817401 695126231 449211187 309148098 876498771 773522914 5938270 952918806 775980056 968651368 100186883 526944394 435016861 758364616 363249875 806778461 628197982 699518791 743687114 449293976 903333944 212211860 51734377 773820685 576632321 66113211 354207759 256043115 327420872 270609201 739291454 395153963 404720891 775479211 400366421 27522104 480474112 685143813 218864598 641482767 666482563 751505523 903888029 399755489 800553324 852920294 766932938 986439179 398304695 782739623 761661278 192736895 366451905 676066252 287528148 148772447 826157010 568181129 631932210 255284866 242725942 544045978 389279047 123075933 40411252 177431823 899041805 983109573 699806203 584699154 227732641 141443619 46009611 486794074 214585173 648892121 221950549 432779744 777179733 776381922 266159095 827819672 696528008 871406873 473026837 215562838 541927135 280090474 52015241 336368494 158200010 172184360 264157234 813576652 919137476 255934413 979396662 856198866 730445797 246951564 196949566 796844135 638842977 542854566 408571426 505326736 105950134 636895776 337215590 845790956 167448120 53589866 973912418 495293198 457714161 538614263 322848853 567867796 459058459 239797997 810601692 746807751 19498400 213599495 529740188 84393731 919192063 234503696 744675703 440909650 327329070 537976068 471756375 18536637 585002688 463163825 35500580 878857928 22681826 677239186 246547632 990190754 810657325 279435852 929902821 335436673 23885217 776601196 816230126 143543581 925211399 302217770 421928102 279796653 486436186 63831687 99990322 792180882 118364019 909417540 630463124 585375496 248703399 856655917 831844319 931705650 654180448 29890191 133853293 386034757 77374532 555652767 256007494 836213377 972297706 488007503 526407178 570227847 340960565 745558596 424702249 263561569 340118936 190076089 794167326 681625129 205456030 685885021 276267652 208424556 165937553 267769451 716286467 631836407 361427887 862414656 175149983 446246997 929489642 997580554 503974453 660528899 720169951 586255123 352980705 192874712 254121714 982994654 69957834 40700531 829495729 855164272 140315552 51286721 997582153 475062405 797268894 193505521 53335657 96869950 74225695 279493763 595877984 557678939 746446786 413540310 916645066 572255102 738224079 569399415 350183596 561761193 829018235 148184612 50439774 385746862 753939911 766049596 254397769 697319039 655236952 316318364 149199355 158229509 91953812 428016213 129915232 875129744 744309408 635253130 281055433 755998247 919524865 628732098 728924068 44447553 928693196 790330974 320049120 369100968 532232920 580484374 227990850 869210538 58186477 879717160 676483624 961973369 311441814 864355887 585299333 460920895 712181655 339294952 774552747 794821318 214408290 622960165 221525997 559735402 642359911 355618162 649123186 334228533 479868774 104311886 12975530 571435228 598013093 693838681 524089334 207164572 110584270 609627138 493459525 601191173 581001366 269728743 251293703 183296252 946938688 325029756 664771829 215449372 913188194 923618408 291319971 395629209 14556035 86390261 583483941 640699883 991483338 765299155 53583304 461073757 820875786 134830583 66470735 209719106 869794418 89446995 709296465 214603416 873902620 802367933 383253322 293501217 112319577 95972600 244180306 979548506 574898232 519255572 961671619 953493330 797312203 253169207 951376750 320771790 745811014 719186022 52544189 166708533 174546844 589013869 814589351 478371588 741838669 310589279 363772183 85155421 797607964 483290788 180631682 68073528 96140030 965957096 741957485 196295033 652625631 288608465 608980955 200123213 650165963 268025577 26151016 408874180 243791386 106743966 340275973 871654862 60017399 95504269 43942635 551628254 338378983 488613325 9993893 893325096 16519339 87385195 595242514 249274733 103640320 18588449 634189625 150735223 73421438 310455640 719012735 507748561 965245212 841321691 230186735 560135172 307789427 945028507 883827992 824769653 940075414 200375309 594546991 14452693 319668489 250069662 624394462 954541494 536272406 906901085 520803456 552013176 523833275 780335279 448964780 102603141 695870721 976550210 230527118 772840870 481862049 428253918 928866040 859074723 375060584 554241215 159864809 325776477 450988584 282562113 129767450 375668755 387475295 133857612 753862345 544772652 642331824 32905283 501631376 697741684 566917547 792494630 100032206 653632340 793590251 694348058 874636243 637875022 648589413 447502606 262514614 582320309 64461030 684911241 873330250 560285922 632923984 592514669 925846764 110664671 723205911 265634612 796765102 420625742 394012801 427463882 407132585 776380810 304562323 606729083 490479077 958823896 517028476 491166440 439269246 436151395 531520744 956209570 228520517 800440656 137936535 359637465 698915143 187899428 390745239 694248814 624584708 241899786 295178831 688227722 37477188 450645736 139976484 921306514 349467148 690939888 801614147 754510019 581327773 89043783 10252510 107616520 791547998 444261729 728539879 390916408 135655470 360090612 253043267 719131923 840441805 95877684 707414901 720641579 621427443 305403681 159956823 543884046 993913395 42448054 417681986 952644863 375947593 612470312 931715260 554429296 601956623 496985499 421311705 427582332 800591982 55263558 385020555 176797262 601601071 970616417 185061878 254683763 54986574 436490845 988297412 14348782 121530831 157097738 522218563 295682101 705815473 940608766 157313703 683520588 398509967 30949929 505904478 616232492 866616431 246749416 691755795 176018588 17585995 100121161 962788227 254088941 537427338 312245191 262630341 512307106 134978177 164712787 930845590 875233247 931705126 487534440 316653832 965348293 305941846 264728360 413927596 393701090 28715334 244380230 104084976 71068388 54547175 737280792 405254677 128113756 430618584 292560030 495011257 873634851 253129836 368990256 148147915 901577236 18784070 833811666 860785205 169409639 891391755 52716529 906188187 307720185 132394477 151585820 564858497 551595949 418620362 827076271 563587449 882301814 601840312 855529502 246433144 611997473 855828784 84635320 239658407 496342049 196406478 204405588 852105793 537219632 649722964 457294751 124383824 148647457 331953695 50249687 127566084 402853443 206185892 815837756 437232061 448039087 368390302 119703671 118625452 928804833 793586549 864516151 295617800 772597522 264460477 75169539 456759784 776646209 843116149 87345162 434382853 704121397 336908923 797511320 322665717 294677998 71233473 762332908 130187380 224603748 840451914 458240074 215407999 551225325 893536571 72261988 270799320 153388974 647894368 772492434 951749000 598029906 314103588 584225684 636950336 560598503 580876604 489199708 415304185 81589613 937665547 199237709 379945871 443502361 636195872 590273069 144173080 198820522 80634702 815272865 47431255 941926080 167738521 338087828 109816506 62007934 918736924 139654517 26915752 44541279 24200866 882132903 513710649 949196014 226501 639364137 929001291 121405967 764815210 948411970 547411971 674167065 34562921 651735911 834984617 648873471 625778645 82000341 472739678 420740574 973783234 551512377 935301498 66905437 983302697 383637996 433767748 311144045 8333262 749130910 578420348 489596007 937558062 436408913 236457519 637253174 327505787 847756693 71012474 504552334 586801122 25864191 776143427 565066489 398493664 432708037 243970933 783933800 176171546 212930843 523644930 507938490 57793366 879527578 905148108 296401276 368622384 571238911 460737369 211356331 435943170 452609364 783076513 210299537 643342448 483963108 787408363 870435802 712625339 642819261 546600307 524155165 455866016 777843375 569778476 420912528 284842517 445976223 312516127 320502517 717090523 103338252 831219969 162071643 174173226 72176276 864758759 673645360 234817803 302820347 603052721 417342958 117945753 3889442 970223161 81389399 227962748 807247544 989302956 855074836 833484172 55021310 94678398 220559068 495182872 289488544 899667812 152547374 778909673 644150945 347546772 684825928 767125976 942090517 799491375 896493094 986567071 737267007 89216303 258955942 935636914 758322417 282237577 589450612 577127068 689254210 750386670 820446935 93761478 595400333 534801648 14438807 176220081 750708388 959595670 808196740 750973150 608850349 348148105 320716222 238518687 227483350 212928872 689552699 545024568 872989335 912166705 37938 224815217 522128811 55188221 974140655 938342931 869330552 815488101 725918584 368979054 828677099 745924463 782863270 747833134 636230219 516084952 66786031 688559002 315259579 865233109 747243583 596131200 575084877 940052608 445569653 93883939 412669317 585269429 489668843 645082766 840030578 485201916 840990350 276716936 539058446 189992963 638000167 345005011 236580223 748011102 681688614 355693327 695177007 431665672 796864100 642405532 327710216 374507489 700747900 975870252 302164049 154318199 400122866 577234270 125312985 691998873 318413828 568555601 392042003 134601194 405310461 342435803 402865896 515267703 881058564 985370360 751047160 49994181 903774079 692915440 378922369 786694353 738838162 75913664 910408392 11648105 764143642 248138034 24143475 585316581 785224782 70592482 397413373 889535525 727482880 420339636 222921802 440586644 862473639 210859399 220337366 985411321 104484715 377197857 82748577 284916650 87227642 831841099 993742580 506809250 762148618 268319273 936239803 417229580 717454925 932996866 458109489 870013630 831960585 975012782 662225544 949081888 874725475 937572610 213302866 191151925 830741689 214718623 34508911 179807519 81893171 662774036 678843292 102703524 947261163 647570060 446630623 519356754 265077152 35502887 20778935 747682659 735128890 365201008 882987467 483057744 167525624 269949529 431949308 260582569 998733883 535843827 437777591 306607388 236175966 416836790 942261718 682985363 392512672 206543302 403389481 141709384 587714114 506542980 723848252 752510646 829585730 848592133 626050201 502610315 118405311 852645731 433038795 179624101 311211824 586753840 699978177 39843566 602583869 563838478 291742671 681125327 39517221 74656789 955877703 81001911 486802279 337768351 89760205 484649367 433483258 495421306 89329257 983170317 771634263 562245830 230326750 980988707 403612551 328133288 78518300 685624630 293870761 178234047 783964479 640925235 393951784 520813306 329364381 454282675 818899940 882741469 341172410 702670893 151455369 592855327 699167806 84598526 599004555 660175004 996520879 611273611 326610973 24064839 615963742 833392766 16709812 795649046 561991503 867410410 75691125 21976166 705650780 871979923 329316594 880473557 670728759 557570789 752281902 794549977 312742778 831044397 341835360 72728999 668189579 278412496 450974328 125162104 898092492 945210847 162488677 512707317 516003642 869200945 135261847 753988882 806040833 873522806 924113877 671195413 512253531 889024603 553400810 184216883 59039398 445414628 418809577 690505185 801883635 492361224 944155882 463973320 799652117 521759748 746313488 423446055 280504723 731800978 705420780 848100103 63453696 400654329 564391502 931911859 80232312 885016102 244784007 633380450 722179871 954194023 626307239 114773091 828799837 978138611 441062466 206740621 241732663 249018933 720215570 984862704 623780911 517226119 654371413 932189050 119453470 253729981 764998430 91206436 167580300 825446633 837453689 808403092 810296688 286736051 138996048 450603946 825426975 43760916 38510867 492443913 86437489 389011532 7211382 614317016 655125351 670477611 603749104 471020104 291800109 11772017 282384635 926233427 25426505 36766946 233268400 187725195 660845024 388731018 116548971 725368737 44278160 102904661 334813540 163435040 349158275 885783623 99259205 967666818 359723913 32550442 696598873 357186798 501762773 844895236 331321250 728218254 884715021 147077583 780461350 741176301 503962235 86562909 292944098 848095284 344922911 477358719 124813390 507528496 872603093 906082814 228800676 217724851 775139267 392049015 672793881 816132328 113020227 725556736 129536250 269566474 976261612 18628263 821017743 360265699 808224378 650606603 613686771 277861696 50993577 992694764 540257183 499018602 696342169 491600660 578087490 336020686 521627748 10084719 425039957 897867611 60981041 511966278 702089647 316491972 148696537 441437117 565972683 47921896 474907278 874113580 640026837 110958605 301304973 440013632 308783105 934310936 760287686 468767689 58981584 762101548 381313124 643035903 136987612 487812340 72503784 98191523 186613463 145698455 907930885 934605715 118471925 688612913 936534819 630623732 592522783 99486649 644378178 109237220 936706289 534066647 135060614 1496858 71595577 998796156 93227268 304581941 241561413 418094165 683422891 341758173 340281219 829010810 441258389 586618026 235608304 473218230 122086781 321568114 180587952 994815791 472796797 949599102 949802966 137492882 205311555 15327476 320067024 280699756 205162801 838742868 650498883 313567367 373076364 260808435 988924218 427929379 375749302 757395075 33595000 399607202 895180649 283502967 305719311 130553778 384943279 185512849 561810561 111312898 483769033 636892717 506470741 311620492 45380325 264920408 832910561 687673799 893143637 555308379 836368144 422074998 546870088 302969036 698546989 112501610 768129638 503443812 738857006 286902239 346488324 394356167 857225720 338889078 546431021 595855135 617632401 72138054 688704772 471850508 9147910 923726360 365908072 421927287 157428682 170882427 367861502 358633619 953115063 846114361 543386956 90837477 181169194 755193049 146728997 975097310 413367824 959109779 896639706 722394352 90655554 693211614 757292055 793175838 256429603 48755743 663526181 127471867 122607637 399875252 890505654 903656122 510967002 718359211 514257053 811587401 829532519 533100577 875472181 448986571 909399384 431181510 737056075 761404984 547500778 865548869 694096132 181017825 791533971 163705955 666618191 165554532 958442597 882105745 804448491 552027201 231017314 765963332 633944663 226838680 208085113 915396725 411620464 325851556 190876188 340816005 905132505 413903976 575307495 546083625 625192699 332547198 643775872 84678965 732027669 780569108 738511014 27197088 621958117 532369776 82536025 830820221 220791859 796689956 481995206 979165723 860975199 403523493 808876026 206679945 89500323 549921711 849361012 955775451 676350305 661805874 843630521 719202449 461588725 328026264 943887104 393191532 359702894 818047076 136384919 451512363 412824007 41037338 37461416 642614755 5024102 419261731 316606607 653765895 668358307 473795811 690771935 676831269 724675950 155942058 545772880 391312098 520818309 396414314 925405351 836322400 262612811 682424743 204176164 61028859 522382838 280684351 510704597 342930976 414757607 848911762 725650252 830792069 695895732 639954510 982290294 106622323 903307693 795462052 619445068 912966 251637038 488144502 678855854 382653052 811493466 56974211 684994044 679378285 373976830 590221054 424967336 545421611 956483442 584325658 790429363 483560995 387136268 226076751 943356052 648889733 599478787 946129266 101242136 908481433 452257492 488078387 850884262 218615333 451201978 408842710 980667517 44222927 357914810 321756776 989318100 520968306 844465286 308083515 876024167 855554186 698030232 865454339 875180873 350590527 209901821 297915374 738946810 42268553 948281327 116830785 182447047 99708777 260803945 706866386 116815273 816770045 181991908 707531785 320348086 787995839 439050350 321576528 86139855 671358747 680635935 49000113 660968947 660916273 216154522 699361522 229212005 942923385 215951838 432363622 788923744 455691205 248385145 242005703 567355042 517729743 383642455 81711567 649663701 984684098 355694332 719183108 179841984 537148185 240920797 615556531 232286771 300629680 540125694 823342467 629733845 737007692 9715839 35277439 253241677 673653431 489355203 453004353 933574539 544641647 544653918 721120634 725235816 344009358 605981117 749730918 548610301 50161927 963913937 484216818 558522168 614556150 261529634 589912045 166371593 415568314 853384906 839199953 248826420 313415475 164397154 794128081 24882050 324168773 607790636 131995015 238289250 99950310 327438357 550870845 919462214 512310462 793924900 37867869 509858684 897739387 940120280 312030549 71785643 254764830 813340895 694071430 131922594 354265766 39441223 753903476 218503964 996755848 550898628 605496886 466102764 65783323 483716187 208522141 429354762 18188388 29203924 770111941 16648624 537948275 798356265 597036673 827679422 419292807 707646624 775971224 916788782 657485759 980255172 842242633 799449371 608637749 33544426 470172429 368256432 595993698 614806046 147507312 118790554 965179375 102560992 813759527 227444188 653432859 347477526 570698279 703425123 316568707 137817315 366786134 762958211 63231243 754513776 980082569 480115149 290428339 584440673 65277440 534496220 550252343 902629360 185434854 826095538 435850037 37336478 901853592 739925521 647558911 766876655 508122065 641977830 790464094 439810701 55404312 68130236 223176449 834229261 98652279 221026319 710868658 288871023 518951258 539132962 49199303 940114157 669871844 239866849 670181675 777218128 228649365 861892617 470153342 816694679 152954032 500161550 143929498 748132250 205892809 672544335 888251678 903192390 148673638 323342166 854550611 880233640 575959820 287316310 881160325 168455126 879555583 253459220 979463043 280251038 159440191 189494977 244062717 683943575 709635541 27555292 817116975 486772836 749136446 156015542 54669444 101216070 557737011 36081009 625368910 642561745 885632605 523993171 708814906 101656676 667069326 454574792 297639294 938621082 805072592 874732371 706603185 561879072 190016271 891873414 635130137 479366118 162367301 90843030 678981076 365460098 35539703 801631689 532880007 192043650 667143193 864154807 832770074 165218703 555303484 675662905 683706494 639796027 397068600 435421353 753152848 782097411 780231642 165078748 772344692 592074418 334068649 492571243 497975593 549469875 236258150 726752228 849810439 248098714 122238150 874867081 240540551 90798227 953245718 366599733 355480814 749594282 124206997 108664561 608221402 110933290 882894235 691695115 83672662 197673765 285189381 912411011 31237417 48049073 753309228 629343414 170132390 539065381 30099818 320858257 160176441 681143441 284839321 191850580 813271167 743266914 785116466 562434670 781994193 16424908 690352677 558884777 921334812 589276183 697617904 730152268 828948751 568840871 977424009 405582931 325457292 114009230 34257179 613043807 408344972 517031459 143471825 933975207 636945281 379646169 81193930 686719428 114803800 367008061 946575373 172447277 209511455 369284089 995763099 922391593 628486332 814890615 719271308 53148724 729038554 767179980 957680042 164487655 336779057 609193558 930967598 407945000 617051627 426729635 616537956 151009392 124806847 311932295 363036475 357148519 157810690 300270478 332484301 309995709 487085835 996484230 717051088 750048889 906860268 697557688 665354601 502078405 641698461 987845619 730738111 705892420 811607504 830610945 97965311 145894842 401670720 908910925 578602071 553507926 140188469 304706946 326343171 847090434 196874332 340390179 995190428 266957217 666256838 57060255 302162734 593057106 553151485 131813929 789998086 265264258 634856506 975160004 293146742 106481267 820118094 884659549 488839446 529899552 224117085 842505626 196759221 749459770 637877448 844952223 794082547 526356942 303758194 380224435 958702553 916234442 285557128 83618332 445079736 807144742 280184744 534984625 636613583 317858195 534471900 322705403 899504551 429864124 590455164 862022112 415176489 670808189 444645831 881887158 622192175 496122383 486351138 116523621 471712102 865400987 224679879 456424031 587535998 272238693 69995843 651901408 570379403 879138186 284644843 796395536 752357067 632423544 260573655 782959449 598754924 132786024 106588128 616644216 614451809 658395932 613071366 424664686 384892014 864476508 317146811 763529671 613118301 11598425 345804906 382487775 825075580 543967846 514689419 48045259 651457927 595148302 761416971 140895017 24509812 769271298 532706350 496140380 203375543 464241637 314087227 257547069 266126736 518872100 1002795 280122051 406881755 373084812 497652754 338366571 312492997 720250135 194086701 902212044 673981317 740356002 9415212 645296205 595558463 954019363 616909373 372516212 605974096 138697378 795787889 315971930 897007534 25094967 97245145 739645496 81115802 976212300 804050868 212468973 85248720 530289579 625757370 372494483 302311289 409164957 797063240 690623500 914164916 998956943 956424808 327407605 401034497 557882647 436783457 771710354 849826017 211535359 664680257 184938228 855416025 557553981 15601535 819446979 642950488 733246805 859976899 286270515 367916094 356187579 302413861 590631554 248851034 868885080 572494206 828159033 482186643 428223725 374960426 445955675 735013162 245219203 446992132 309221724 978955544 140409323 394227341 669850615 410323346 399591704 836349376 227030731 455257831 821081619 791434879 780331024 891942010 114331376 974309947 472292953 554190949 889387863 269039695 840694087 673503005 376257941 788691990 167030624 452821918 646596410 653581086 826922899 876945309 64510640 864791101 450819815 506306565 636743453 133965420 330251469 424198113 643320934 579577759 360677100 925152694 275516667 255374516 628545922 298232336 955627827 384524932 854025006 575950899 373917744 478769309 56274925 491500388 655715614 479407550 115862607 198367940 504634769 61801981 334667965 738370880 840459064 770220422 29977374 726695070 53152163 380335485 678025318 165130322 413916126 766528668 119964482 917517994 114970223 493178819 307088547 602082793 154791161 976187114 83072090 553974877 535687941 419285854 410201005 360324643 293284386 897970536 899546688 111692868 200289423 862436123 854145871 132030078 85420082 472199570 866612812 204985394 892553313 193325281 826522832 52694328 594809601 379786083 65352308 269772636 185512130 932787483 897729808 260436607 300467821 812583783 705908984 336937250 309061954 598360974 264849800 912090560 325502464 245343541 501025295 648636241 232892018 136176411 56478705 269695324 463073830 701137612 835937147 737813757 565630020 397115188 696324543 690403059 970348642 233585152 294594156 778224717 596811108 483587766 425042460 63266839 871818954 127049065 897023251 746166632 678140596 22159744 311036188 120194674 161355626 188992595 147055927 383597863 554711012 390132510 808453620 218652931 665698684 751588427 596464910 108501334 264199034 126873572 1960732 206185009 672445373 997150752 783360145 432169947 403377813 698724318 233068905 65467249 545435815 190476127 132857728 242816920 615032059 820669641 507206629 125783568 763151871 824954416 80875274 901859198 511915462 884809993 804574231 326301955 729017970 767708450 17910453 104007451 730697671 554342881 390510134 311579262 696900476 568869376 783902677 472988865 110028574 499153330 358812759 982666613 897345053 159073425 38647260 597150971 91297752 22487334 563446775 877991249 980217960 39507810 242473707 24431284 673762470 319479854 256117771 836039246 321843853 706530508 658335637 704773915 145471360 245271706 796734244 667995161 450103959 745700584 228572524 67514081 118852404 587607441 782376683 472768552 266426769 501366268 881324311 115825707 638266229 903382776 725130905 683712642 638146200 986327238 490044400 307324998 390566933 263601209 433515774 771014011 14204565 93483267 958529039 968389734 23181235 949028914 209946983 264134002 114326662 572816546 705910396 23805029 651366948 721981783 58941435 266356814 866448565 338668492 848729283 912601081 224424948 772420552 213858202 138335990 239040277 363530853 764677176 902410915 92870517 201264900 720814103 648454663 615963628 634567395 731206696 941122746 387974602 549220652 211733693 372733110 252471443 226187929 138998405 509517720 400277090 588203797 147049542 145112758 405999580 649425868 272979174 609653370 104509451 406572876 293073028 329641223 279378223 590986220 940592324 924228033 16420720 136241141 237924921 578501732 552006289 20057352 509028037 985707186 613756057 886734152 828792586 321981110 605050472 790107401 332529437 277871345 289462545 71855844 196293380 621965161 851513676 226715189 371643755 579591242 335169291 443965898 812955404 708317097 839247953 497497397 92973672 632213145 267838437 331866011 476091527 160985113 427030613 378519699 404511963 411102961 256050789 565070551 758737913 454094725 668730951 903721723 706161137 670075436 254153240 530510921 177474882 220919418 459839054 185370913 369384121 617539305 612380467 533476692 480310991 972411905 498839847 331651263 923607738 318519482 83434159 280845269 415014563 482700607 366528645 901555651 876868104 730079274 848642675 316879102 984401104 765322817 783198857 742234713 482397329 868700108 277514276 871177695 123635090 609169501 329110340 290195493 148413147 779192262 671768970 922148071 981349517 140053150 905283100 422042105 705955938 939164315 704581190 910001818 212076483 428925273 608770563 245105846 358217009 204488181 314866338 199675837 780613165 423401522 907423940 400964846 169107948 901322204 572831525 174413852 726000769 960418523 639646474 641737744 94487637 225588790 742464522 689387492 492799378 15484688 463473982 733226070 407393212 218056549 98319305 882312651 981781478 822666664 659459372 347765503 770084880 429670281 216218545 162201087 376863630 635282191 195753288 999815541 998729472 654021080 603419998 53444804 574373476 388782045 514400183 555383655 242726243 994149244 872572320 104428437 955996524 223114723 516402627 323332442 177681721 314315949 448891968 580686231 565457696 616041099 331814409 848642054 936200180 624070587 661953713 986313638 294792560 118087779 176911748 950716550 297077513 133288745 559953749 718001615 807924747 519498496 716729213 64997744 366570562 881269863 759585015 447363346 843355922 937765956 51527933 216236952 111840706 174637550 648342103 640278312 701469779 13446633 470730871 871502927 926639629 900336661 383851456 706640105 331803412 944278572 60966024 725240043 726172538 111754194 947059385 686250090 884791677 338959881 210586522 492490643 623106587 285048294 140041133 848018276 650805465 907867218 430575852 922762509 177603771 248344564 193693463 46080255 810627417 163974984 940062504 82999962 857173174 286042641 588009616 739031507 750683231 932673185 41321104 481644299 34295220 103019092 945642409 556275769 685610047 533892500 65068187 201955252 385118419 437935147 340079675 56773622 783491350 484475445 837558322 886718988 188883231 939797590 717833112 574246238 756585930 354174036 109614159 724181399 749662328 922617527 385937383 359071625 490226244 849087249 708158392 825464785 810192762 676702365 263505815 843008053 166325709 697189137 12352649 93868375 531879060 523176402 549544914 872492710 459192323 391062508 383431754 535604828 137810859 193506608 641728601 215967035 169180664 864679545 483178304 750303868 937432573 649549100 83198378 357324297 619643008 771173301 849351836 461029796 874141647 460009125 970895004 606325429 174769595 683116458 620183868 447895033 495931698 980253243 430486111 647633525 737619393 297341899 886874309 662315243 134220180 26423278 597460484 828966245 433323636 733073265 128914704 361708029 907262134 880295833 279116205 211474242 565535904 276448704 75195723 822572601 478919226 592311581 430346643 287156706 967173394 63299118 725224479 116975074 308129054 631341793 493676369 330827824 75406677 409761378 416161405 476735490 117105864 475451849 225806642 545364926 308074545 15742632 165236408 684237 598701325 401316367 349014991 724702691 196019308 972265218 880678780 679301715 985930145 651436347 291163668 65171003 70580539 530067930 679315504 311865723 828320648 513877666 179260248 47660108 169291031 903796878 669238751 88381657 83753252 649350541 376453915 406943515 339727238 625568539 93939221 949678237 522173045 243771736 132365012 8952158 353181886 623885356 745181989 503381270 332874139 765954850 952839716 617375574 975004815 97532453 389505230 907973772 956251974 664034374 460210231 932243072 246354427 743632940 184999971 63180651 149673251 800152455 262118860 213561872 965209582 474803624 632810410 561959987 354857442 835974807 19202209 213974227 684718872 366395664 56203592 877090217 716943773 174924238 870394842 971362552 601415299 93142087 540831552 380094012 332892845 432718521 47074010 207167747 542814740 165457533 968329098 305245853 605318696 53189290 217632426 733594752 861544875 339509140 911357720 447151938 933613246 470046860 389575860 576483893 896322221 401545822 526947897 181764314 590913189 962675878 93131641 290742499 394807766 330380762 169521912 144578884 830518115 973760264 651321225 689642387 560348000 948867704 899304447 107802460 387440357 460492644 542539069 451827489 524625225 667567515 423657923 494938864 344327032 486287783 841513526 570131546 810486880 967362412 446056309 880723272 383590799 553885382 193588769 566934408 723356054 710904272 924089042 680125172 49611810 217622859 208434303 509131566 391664432 35073540 316357600 874059763 598780165 471508568 30471060 925893039 483059724 894706925 104011107 614536488 442585586 913907220 69611548 950527573 55489084 435124195 677560202 135725782 97466719 770140917 843292404 429573365 13667575 871588745 369378083 833113450 298326537 994584792 190667159 987533798 149234529 402802762 789177222 889277525 171082127 656219309 7807660 210441135 785264857 716400094 115763527 882403113 573258350 300068411 294093031 836293092 270327777 778388994 933052226 949097011 24894764 716343046 116395731 320192236 288093789 711672837 926386151 546767676 90194462 842871359 112388901 963459086 749796960 676123784 970216706 143682982 512702547 840597549 325935728 448887108 732923599 428264053 736427779 500017888 484204116 293954997 823227123 882626134 659229705 101275586 458920194 898480134 244490657 235435359 3140725 861667610 78408989 681128629 348820524 524207026 610931647 870735144 291104234 556356632 220192061 813135657 695281822 86879434 410898088 861175398 561216590 656644479 368905427 890805594 317748158 606144722 421757416 972146958 32785316 472920290 285389468 413392019 769268613 459939457 251799043 959230436 419037168 673931059 247659377 465070798 168412187 199303383 549105452 69865647 900806153 126877574 654961546 444981372 415754419 795621466 664782592 108625812 654307758 96612828 635463628 824511440 614896095 969261287 622586533 449867124 405226794 212118394 247351260 206757409 312725503 244422034 539709016 465650213 885669032 451734493 595495323 460687444 845647344 525109562 701482608 285280186 539364899 659122505 822610042 754709074 818211038 783958978 808204183 634177757 330822716 382202004 64068292 894390109 442750732 82472347 953499032 101638062 505056143 229015080 506907216 788989726 520559925 311365557 482911095 373286101 276160837 973213585 657904348 949516009 264760374 884785841 26242662 143435590 495258701 912307985 207114404 681920564 297398596 303333094 95509738 491682469 501554013 569508422 212196315 713257030 384492324 984274732 87906806 198338898 85769930 557260279 770201425 985334986 154176272 612794317 291991658 358857357 216141087 8511974 609381316 589492089 951770837 439770882 419328013 405135146 817037629 936362331 357732999 506815855 451932592 423715138 869095111 830537841 350867981 30376747 733164867 367412833 268494742 236221605 78186475 176858147 627774590 167782668 546516926 993459224 583759887 759538637 143759559 730258129 608765772 756617126 843458096 511576538 827071795 588616134 422879154 702621880 993548343 747441672 234370890 406218056 264634885 741070987 918939298 371064485 719945576 287212138 808766108 180052170 754406111 554026686 123389096 301463255 356392724 138851295 293410979 902740751 14716135 406757888 982333089 444814895 246432568 194138185 281293064 582957019 450290415 293466364 40129302 881991130 694921892 856335226 646635552 699037798 735353582 644816370 592220863 503366247 5764886 138065498 835845598 716333523 728360893 731626704 979182123 98593203 9349209 916410789 952020296 426325998 895942595 348696686 358513520 178378202 898978909 767657386 798582523 960055058 897487504 432360023 521789515 349342303 155886027 833183468 971035431 766425523 18326410 992399158 972437636 624015664 774023298 930885548 808364650 141404801 141816076 361127646 552511477 327456420 708729324 105271089 297638051 654139568 806175911 404009595 470138830 295997089 847520184 746285563 72484924 554217036 255486311 946269330 7909232 95800639 163177842 839475823 401338765 566570884 435322857 146307276 697438986 13655995 940341586 819533039 341589650 285532626 447271064 745291228 732932174 460400816 779832898 230701571 636121869 475087739 248956114 380668027 783888321 432531382 168683950 954115887 914989483 661501195 679062412 531069366 943844455 655904371 916457684 841121791 612453863 68788342 243085150 347529930 344502404 979385122 317177696 134484395 792832883 910199553 248670281 536542067 867896016 175651129 545282360 836361818 542455589 322613726 531038211 611889106 714591925 505524447 415374572 856021840 554279745 428979896 959484608 85297523 179974647 688873032 822201897 871739198 843950095 271068634 196074000 173832642 633559410 772484540 379104190 122179235 72319017 273257997 291544887 890372693 968509292 158966605 266814403 806071410 755484011 129732929 685760551 405227702 556239653 185636286 437927514 334593368 949431500 628813495 260663837 891997479 374943159 844444085 991167271 894525253 607425525 375841164 346776348 494280810 234385710 482812022 685894924 204763128 414189099 761456627 806416895 477934749 352202691 317428219 951411966 636572961 830362263 655359971 759035069 364823789 883451477 908009238 280839015 383277182 993911903 567846964 374194333 246053635 498744036 672026862 352951669 419808775 124855407 653138492 906549983 437631284 202633664 72018866 761861850 156498979 187253468 379531791 329016813 182459422 207244232 18076200 884835816 645344173 971267774 237121794 313589925 665624992 487031910 922007247 903408412 27201248 451219905 111712730 981572730 345343817 504112736 816533924 739278535 712063863 297315787 393434640 992955422 716403250 382625465 40872724 847535138 778626792 21125467 374742908 220756919 507384926 891046279 876000807 309887011 351456361 376768465 203819419 901820535 787265541 263312087 851194745 76230345 601449833 930517248 856956421 347763329 554855431 384780717 873684496 240117378 133089489 133253211 617413091 770135172 359247392 808336256 636397790 742109764 173277756 357911418 656409629 266088955 292278357 539809370 574790583 533597401 766955424 759363247 418951913 197564394 782695556 620629570 457729429 256297807 141848811 721044411 999141080 31164619 176854003 175965268 428428500 217368610 40888655 162573976 342344814 491518861 515037390 664796550 897548456 988223913 145201338 989468753 18101593 943741940 639599888 514241176 993786977 314965248 836309212 721884700 933165064 477329341 597009888 472226622 890909886 393092580 514633510 153991133 715856150 453216832 311384356 924888214 947662415 39117925 620897818 271464655 611090684 689823736 192525052 364982456 952572109 941550796 162220322 879695379 637640278 940692158 820613578 237208589 619415021 865144617 165162275 775252497 728028981 24773241 913599451 746283490 220681994 568691882 243226684 663696314 421268498 191437633 557999611 491460378 677624478 977274981 485513166 583194073 412249425 58193358 378896470 303524652 644107478 847896140 825979202 26040604 969682729 988091635 203743361 219012748 875675495 375139048 841773157 722568556 614926836 412434834 61892956 487957259 643962 687839454 496927665 273564385 214328263 222522305 670634830 399993141 395386721 321031154 422518943 65900286 240871256 926326440 211549700 163955450 396350143 403516649 25068469 523435515 984450527 832931921 79565447 20057034 288468880 339175538 210230508 230147625 382257457 317984197 398418780 838508562 311004219 127214968 157838394 946526859 535844035 791988191 920893782 567886072 288548830 408888602 588057632 370756310 481989221 273616625 789282808 962596970 534976671 122612165 675120139 192125984 96212500 301102396 324711870 543346218 828334600 78474500 920435695 512897283 434069015 255679504 730730755 319142732 42269741 204642110 804898093 173063057 862635262 448532452 302777012 874176180 814759319 906361351 102268153 666347743 789610368 285053370 701731470 718191930 719391725 120181492 424059964 838007288 650534744 356435170 536702843 299184368 940398314 652877363 41472500 344520398 802199971 392992955 507612464 465743075 263900469 757353155 378976627 250666049 660119599 378689794 479566120 713631980 155711637 330759294 337300532 437136136 399140968 929490165 164278392 298310723 803840011 130603713 60419745 865673924 129429253 873416451 365338923 635494415 358667665 63854274 213926128 650815911 566405905 964231533 556667562 969251956 868708128 99455025 412162170 433998760 354147703 819931713 723244719 827109139 399406915 310706660 280932152 814583324 307779841 584736516 706990926 171708867 622890848 457470213 103865100 580305467 33630774 488874067 908573167 646168873 89980954 742965018 763672752 771230755 271288228 557040350 528942622 505503933 417973380 469380418 379815803 67018879 41254710 714690546 406947796 783349479 482300002 781629599 595187476 134176501 662205970 896262643 850142493 55874115 35953547 194893574 153737956 366309873 647464331 232977622 747020863 82773732 91662627 45455691 823607225 52422851 612723954 705636426 619045253 382440275 831395487 369733266 281251290 961560298 109751028 899277495 932232361 433396242 694514360 672099749 174041532 195686329 60579611 538946711 652135080 614103085 465297024 463455961 111611467 370575655 488204365 639913022 1719087 335636615 921825471 281795616 34693321 767622722 721828264 444964291 134981369 302492795 483335602 793861251 196695408 98991050 494866027 200056154 133896929 585198083 862531864 594573615 988635452 508614420 524654518 898143039 732144608 457132431 636682613 715289023 814206678 455387662 739989937 98444786 627329130 361966422 426659262 461999193 406392955 496015772 554895055 79098494 388787388 453898272 433105300 705017726 51672596 864800875 693452875 363710411 274251353 778708006 652109924 277778461 860528323 624952032 246075950 299762999 792748793 302638928 265182462 804753296 818916431 561955860 256257311 636828364 519306984 890936053 681773940 962917299 192000255 55083492 305269801 771873350 924739165 541992888 628098275 749266557 273318178 762767036 795745756 654704455 754575652 736114181 203766884 554223258 881547605 410573344 670763893 428724638 88740863 209327800 433905951 941415170 683113805 736821682 376892421 850473486 249991306 152215582 977074532 980527113 100647212 366766965 629359016 591705415 891617452 92062636 905734477 73449215 721288853 323205965 335547566 31024081 669897165 121799302 705207676 473960291 147864433 548603960 655925499 656795208 575088380 171574702 14621680 638335470 389718325 367116077 41259025 277877117 223229472 957192095 775164525 20023763 525556171 432024033 198044000 767078042 156307566 688747442 76395980 770235802 432861114 661682430 838004133 219389190 354733435 946962951 815126997 4115825 134459876 217224391 245397397 335279291 889559514 83731115 547736177 312966021 439079908 279750066 743656073 950411332 932003766 479736245 422514519 513661933 899054730 371927893 344900938 501589623 700667099 110866968 200037622 705595728 610788437 457637914 580183650 346518216 275133422 712074501 629232223 794495862 928882246 823059286 920719024 402308307 924110525 548725128 26025145 291274310 138693206 848863648 129305716 897268021 176952699 565520783 717599568 900316852 81311091 638567757 782840483 609514870 278677764 242956179 244945519 53449509 605813908 147842563 473598918 32951717 594668664 97959824 810596555 658123357 846900191 158620705 794556016 150367571 900573221 187060102 24263223 86788702 464179902 387316416 805954221 666136624 822161560 472367228 57731228 963738690 811015166 740440104 159510688 637464573 451613430 49154373 956359041 941651824 624932492 460390772 807649374 141447731 106964636 858028428 142295929 741045482 760312219 349255912 783526939 679599175 420014266 494905327 752726868 301088002 206478144 964676122 483722741 298821601 985416336 408359855 538012852 106360303 303633225 969323961 448899351 254790114 340761792 155792087 47128931 493985634 486645391 368878809 914147745 692888460 417275020 690868798 720577474 398507514 216478972 775197532 415902931 483268258 573702820 443827860 278309310 691947884 591588829 936296543 101203552 787958525 262708203 288680147 873637804 12173128 612115689 898870077 837788434 760467028 94754896 929107972 908314271 602336433 915675907 581941077 819010926 531456867 406805794 402988632 392857361 352991016 344085603 37820116 203282127 981235236 656318295 760036456 573239925 181663289 476863537 884289669 676228361 414604499 187143641 765819779 175484780 95173101 465223522 472227559 125285403 987664864 304487414 442601954 936054973 399276322 823644791 648949384 4826449 939277688 429930344 202425463 814997841 712149131 657737402 132144179 693695421 565340729 285849579 777668261 445787111 942510391 876637842 950273280 980173057 959733382 259723585 340465691 303382346 845586965 548524434 617675896 900294577 761022981 123459826 323054242 748944903 218409820 753660754 535622014 17962751 8685218 8464824 164302533 963524449 469042774 935638457 56250163 339851563 258082079 528159899 928627798 186909356 345122691 866981582 999140743 788161443 352451427 81915851 376085629 115052752 360780994 690706749 878480906 524750721 638995813 823210957 248227673 64812665 704197758 98558884 579990441 764754962 74705146 567649606 697672475 606986451 901445979 559017215 786797396 253287606 216729635 400885599 973912083 699002261 449001571 246421000 608720083 221626326 22084117 645278091 330607335 766629022 662250664 275307419 977791049 535471365 621570817 275911522 157632248 556053547 553050584 21898537 588173377 118729306 862735635 547878273 636512600 312491065 729389587 189730420 195434023 45749156 679787216 807480770 542502741 821673195 949619034 791449378 935432923 51963855 272725795 81114768 450629236 973002084 219127326 673019877 689391753 849918968 446719265 968406001 797313458 430545486 207024167 600434569 86083925 465115338 323563532 332454934 444741566 418524584 689657236 13070456 405809312 190129063 937479034 711312349 249535433 775031351 232335695 881424574 482424603 516161488 396675115 178443940 719408184 355256218 385846915 920181000 473961459 382146706 571650032 270211254 289388429 840389861 319355797 367321573 795516842 238570804 602141109 521405913 199898752 993218615 467824807 198444075 377650610 744069439 168840735 75780280 530769592 160620567 412489263 797430459 786958277 949715083 930478485 450125280 354315651 431732944 909982653 467804845 966525345 374674009 567631091 113584452 301970445 221525988 718216335 389403201 436925092 947596249 942778721 830710846 789997234 886178877 158743064 643869589 781006151 603515667 642103646 847445240 313262798 930435434 137936897 388207937 223583550 694040341 124387778 823497600 819160471 954594996 500706620 330901936 984653290 425151827 816439278 476966397 642048420 677760236 826984743 532826910 398181575 997442809 358876897 849159445 432893437 989315102 410354811 928336421 788928300 268736786 881136089 33421068 362364 49516623 537210892 494510163 330523949 130831175 326299748 448119251 651988298 36428160 657309249 865476119 934135398 117484073 87176048 938104965 516418553 441805439 272611931 779038159 359340860 813258322 940383064 424099766 711199448 187329083 881766598 271870280 17943867 420894566 88155474 766036694 539638541 192144170 326630637 886744638 565277658 376707439 75233945 120729021 626412319 820893501 686479377 190638873 953404500 313893024 691116698 609451842 780536451 330790064 313268662 468104048 496283438 187783163 645137525 541724285 712578371 253567227 522133368 105923156 723340081 802037249 422277628 223886172 796362797 867871497 85096879 374513159 314651180 221277155 696319561 747829286 970448121 351690156 246727039 701878429 268824078 140498190 170161992 750210572 658385276 42683605 101581397 119072780 730394897 935218700 63700236 969498773 394307224 310775489 364836906 237086436 879011377 906849644 158670812 126956076 409202038 985369233 93563611 746808439 163564025 398566303 865633360 744710556 851172865 897194658 542412546 295413119 286799316 392043943 318738124 723070234 493012137 48577289 479260845 471631598 401543333 392597432 743173632 758686906 280251678 676506484 138438525 636410762 624331273 890241134 78476818 926474833 516841378 311034959 80583533 366641124 671699759 440334905 846918676 7019436 44104497 362698343 416422858 277889879 800236166 933701796 699004724 236593950 701344559 183625566 726279177 699912638 183476945 458341116 665115201 881190998 11663679 640608594 321540958 830182119 880010940 896519314 470749000 502961811 465395012 73909566 100912878 976532842 700164724 485890138 85122800 137003481 779878234 565837695 887971297 771788518 950856162 454303276 81083509 995773409 223102878 135594211 562762795 119146762 346221057 764081559 70210125 614213470 893472496 16659340 429468604 581192874 40976434 555707021 539614320 842350629 754282352 697699048 771382874 870950494 254910610 313814246 521263701 542854735 749357049 970381428 614220320 165733721 695789411 445463257 48158753 539727874 683192427 594245679 467239540 905102352 808062595 706839989 306191560 702515092 433201257 232490603 529316004 910222869 387430884 923333202 238116571 490602925 497012911 675283472 314817216 458874973 893139658 878855106 244416055 621420549 464223016 931814656 14853211 290733706 916503534 276337382 580038967 734715229 310532139 193800287 311539650 532030424 434357629 545335827 501203200 688232803 876784054 89454930 905017605 106781582 163820743 341077931 891768391 570852124 113747142 224781271 922496925 615914610 257694209 463678404 882771997 259845677 748614164 670713640 732097051 77867554 871790426 415841546 110967639 521380543 388250921 346545745 709142679 160836848 850246618 528089247 571420848 47648993 623180157 615410103 563978743 672107572 237641754 416297057 539588100 698884405 601976648 143447306 221615523 560482875 446477095 648624842 803632303 765887273 519539948 537184577 61971316 458561363 980950920 570130273 903823881 814087177 643519706 1645026 538848129 906924476 46084957 722969299 473949787 160906119 198394183 903939269 576557636 122598407 113955395 658732147 177710583 815103124 352186226 609803860 539649297 790420712 694859150 713613997 531840726 199676825 861824621 369286394 149405043 274284207 64615457 351005505 972469053 758617808 375017041 538884348 706412319 940223959 834683799 667714645 594172248 764289279 571968217 962559409 228655477 366750547 741029201 46996550 663391737 556197483 391122867 498037731 680756202 527088492 132524986 501593710 497567595 563695705 559955007 1480788 915112150 745400360 845249394 263696743 680863717 194441411 9255130 657472880 529762323 582668869 464618495 545591007 193881292 730067948 943961027 344094128 140800049 970566981 429480883 565989643 490709534 50920175 424285604 513648405 650183141 908964168 96097991 559487755 190765400 201270011 159073835 422507779 378965595 994962690 206204575 883341475 5897158 665100740 404296032 427884320 508205740 771226073 214710703 637600846 944751267 370457236 651869434 156187343 698913520 410544472 789334913 297902124 749880226 912378252 122502121 473032545 630414837 540233741 660086997 121329056 172707935 534319978 552846167 231351138 131167018 403920778 693403207 775604072 561273417 495155131 917513438 47508591 335187130 447982216 529338748 414038344 288395481 248319541 249592198 690815416 133674094 310086810 305864805 563084229 519113156 965484065 442163353 305243675 710842100 354420225 962200286 641216647 660549768 607109171 312348651 50412180 683813774 329249998 807895763 570024346 677281956 647643160 237472060 920784853 217726052 839558299 390677475 987895527 957797513 34839269 574742167 731561826 271882441 73456850 65364827 253671988 315272144 831275492 355399467 904196047 198561155 166547652 651495338 402045512 35395170 672665073 483565489 288709727 463222161 761479416 262076023 31820250 306518665 63067281 324991937 916117763 488251220 330630785 914106729 760613040 964901357 953847947 162161808 520544075 448337441 857930627 719093982 427042358 66942807 975423927 208828299 93222266 536286973 833084867 559419920 334198861 706020462 787966315 892584490 142278401 499204771 371689639 8036517 354814315 595203935 797296403 146606348 771697114 886405183 738710847 794866972 452876685 505125279 836372055 423896650 183911807 41654109 666400783 411017866 97384814 893897896 698937540 500986036 779675549 169888550 18046585 857208190 423348561 550058962 413697138 28533540 811547236 125377928 950153184 771329135 755214053 400402638 530828902 885574104 159859329 259572051 236799727 623973512 127810730 11449301 849825091 912719901 199372012 525746896 550340149 698455290 551985440 900020241 476778955 333025524 860386249 364207952 177610935 212247389 384494496 856101820 107790743 679894765 241142631 943631647 490136366 674557144 867302986 14273443 58058361 140187208 212939583 999155874 49830224 134292007 647769410 340205957 605397624 119056022 434184341 570595310 876475548 900586220 679878187 593071075 620178043 234227256 107241040 239640738 688000728 421938833 792098964 104540006 53694090 822983461 443353923 841423934 663511610 652058563 590215833 895982252 288168574 250070209 306836787 703013085 63708987 130672233 185213273 553384350 745014452 267824772 616309835 663218409 122666311 368654708 490016341 203337750 31019692 126105966 198367355 900093806 685568027 748415088 995746695 527289534 298170012 516969707 161301554 350091269 191958376 460587114 545862242 169616536 400643711 972750727 907620860 983590646 882336444 862466223 352427544 802336218 961807955 828935758 650375190 765069838 447842554 156508298 760147178 15235108 430397155 105158393 976347287 856311279 422521589 636624900 240948563 370273010 275678568 123282727 963976116 154800504 515649942 488597290 55484693 442551761 674103336 208675049 191683770 489516893 998637388 122696607 919453690 937656841 735779729 711315060 755268930 707934424 315153094 144497204 775589428 969795440 907139386 720028598 661504456 913066783 482984518 513849357 478189476 225394506 989761700 703429145 144522331 338962250 518038303 504569626 711248666 180144992 194360586 962032782 310488473 769087979 294156782 432892197 500383938 115044176 752855184 770578531 631277551 855029263 313168150 229387276 903526581 71405536 559905955 756046872 997219039 230794126 442086369 608634154 192455408 391015116 517110277 56971219 582669407 464228790 318658979 810846876 67390862 951400382 531137128 670819287 331198650 197133669 391230063 882652862 649751370 473805429 761365782 660126533 228598904 112483445 806233386 234901861 338844217 474385395 74298421 646720290 144774381 576183518 482135888 22062577 691272696 199325600 618301574 615601031 105018915 146611377 394471273 731925381 726387139 779581500 52846365 107210423 420085903 922751133 124696550 251259617 389089812 107279670 866890833 818832523 787242041 395524110 128445259 183220520 587783872 417011013 516920628 183691274 560989389 112666568 337675632 914426468 831953065 789783282 441175776 791904936 360073355 917543687 965435814 14753257 164996637 410977699 124764418 788143985 650648365 972188287 107892410 620204481 62626330 609690653 431927467 921285558 171536892 260123981 490480346 438346099 543748760 794580301 878861354 701643538 580283780 914086229 684598449 660829629 538201409 338393569 382809666 242217310 347028319 924864666 196445595 917075208 202427794 162407997 807381638 819467328 990278014 715278265 496095627 697744698 252026786 759876600 445814604 579378883 250877022 561308340 203269795 679310806 370065793 146118348 395598948 132632934 138586924 973493322 998405066 852233026 633658564 36673023 59110514 197891519 808694384 604540432 509358 423841397 206976341 196353600 224192473 925076232 485527472 651963644 425432320 423921398 921987212 896551349 735303785 816040989 906382835 516827034 973470525 415630701 168208212 910094313 494912729 385552036 526976878 317713817 65610939 975520214 628440441 710418921 829341887 769533461 678808928 700421059 71642894 421307020 9197565 775582457 238870795 696608512 285359772 931124283 837229490 738187852 777404018 904572172 447387351 917210096 604233247 644252867 927818335 700883083 356219815 993687433 255233214 998423987 662138359 355327482 670545384 422770042 680029247 865070394 563102962 562191774 899431497 473737999 322503421 852297108 382863385 706503648 74961987 803299331 431474709 414733949 309641605 393910971 244145676 547781485 350213593 410243025 317375843 196134293 896075591 435486694 737444716 321986218 554755858 799552589 294448014 464224634 595343427 477674438 895219247 383341374 639608322 492907437 250838405 631666840 962459818 177725213 835621193 817334738 430894827 154937324 88717843 19535864 70979970 531091551 444373146 196981367 999248236 353079047 318290395 7673364 134638687 955752368 616146650 309999134 618652127 24916776 607676641 473116429 544132201 578034207 523998100 281241221 998188753 693367917 711707318 148681158 293522812 538635212 916534797 797134583 300066591 622674721 485662105 161059891 839915507 790028430 115930715 437031337 141632141 24389638 35638546 793564555 748726760 916921996 926503739 756112768 193713884 354299313 545216174 381720167 908007753 883854297 176516195 946743083 289540236 3285171 677985535 791950153 720005987 79122216 289844331 624294073 471780455 988519945 865906019 167085522 312070812 425757288 429093405 230960094 763004061 118495052 865194310 811167018 168054218 815470476 120636219 732143244 979364114 10374415 638859269 458430011 129012324 225966605 731538902 434101044 594955802 805869242 200374660 497598820 310680943 425350 541370561 390711219 931765255 166604148 340031110 715180802 736378078 87992794 882333966 176331692 811951447 304179270 904265843 706437927 265240706 115217848 294594477 16052306 835304849 805690338 400179495 305407032 643586525 564790765 870031447 106432835 150313605 994683950 839618844 511304090 621133612 867447779 421645318 183627322 136965614 384738806 210584284 791035199 232016809 67995077 587966584 726981077 801150296 969598245 66570527 589517525 725771140 949296354 382784686 691032504 878444315 32832118 19750465 714766665 687489368 506516674 517168620 898725009 329778027 766287169 127217560 225899564 644543368 33121043 576669961 726966174 566017170 206814254 903157192 793998882 74858369 177047997 238353086 903985463 658219122 324990145 366386081 435430079 300071183 701620459 389218862 872145418 762395926 631636515 69099573 670070293 539482196 664662135 430156566 25459469 257114217 807346805 524438249 344719153 728822572 239868577 448922340 782292528 270334577 268148223 652619558 485059754 79364225 262855101 535980221 791252027 830892867 65236630 363365187 912031192 311119482 323164255 992954427 717542588 980846416 496472231 233614511 107860256 172629349 538773332 618358926 733332118 950895117 465157100 308256701 528915556 904418814 986994556 896160593 481063229 102608304 279487148 754767610 636767088 341835737 781723029 928080403 836618645 496294006 120176641 141377852 239914160 202152365 270359790 449654052 178403051 772678067 950813716 273099522 545266393 389845085 342573785 862611682 279896434 46010897 940615497 565411262 670932787 692154154 178389649 898055856 276104296 110472282 364321168 718479883 518947731 480354802 155450786 126049423 783426537 247221307 998932871 891766591 86100146 928978102 644674104 607765229 391546873 812412382 960328897 73864112 54762621 648954968 884976101 630030389 784583513 924582201 856838821 870131282 88790240 177994528 183357748 630285383 997603849 580317032 677457774 887983463 696675798 934991266 285286827 84111126 223346084 623645962 135134336 384051524 50739777 203096740 20066554 967454379 831521742 273915939 125075981 528869852 606066402 22612881 195056794 276765044 224084848 237911459 933124689 177031685 808003486 765222790 13086339 432994745 65259045 655966300 716277270 462601513 986109422 382518636 625984970 610737900 694978826 728976452 665383717 204776816 900867373 701720263 431462392 38421087 869128021 305848388 400418231 815365430 176673305 281291196 330345322 474507421 741134964 794828344 570990758 178941137 652990515 174820061 971488725 923323404 718403157 639928969 23908693 149887883 594151200 682286224 503495901 120757282 222199409 593751223 904382379 992022126 518325258 836510080 136907701 129040070 622626427 851801869 27069899 401344602 878222549 378210562 494640392 817662932 540584524 269606698 733625053 451312966 783446471 483788125 474404497 256732138 103526203 161951902 598067356 169051550 321582500 648726630 208369267 910530175 588279371 923172422 298053476 943906308 415703547 748892675 485408219 800393170 491679984 224007325 934251745 113319715 461095991 428101790 181168533 487123433 433129374 77961421 862452928 89376351 152508945 469541051 157380052 97860810 612771137 202170385 607283609 738884945 715293719 70776191 7669683 54736891 88855122 51142909 680490074 652292789 211686185 433523289 553968796 28142011 959154907 676399393 275772735 438070595 437782902 5885374 107291756 760140990 430289527 291120527 831329587 606097276 863478083 45696594 380096728 257004166 751481770 309011427 406186771 375930672 867421231 153295165 425158925 659863119 541333978 112171440 204734235 934236140 724254193 818015042 733592152 60458382 498946241 778336188 696123553 297862245 585122742 94164132 46879485 232349187 257719287 900105148 926643663 126080928 901038516 773061616 752414801 763565572 64175 847750968 223468810 748880060 481933448 675615290 518385076 724472695 729028845 242502239 697963322 504402807 699153120 653726936 26283205 2046657 12639872 197896493 440926893 948493459 238360628 355478944 447180297 207193507 987744148 684224854 552196386 271097308 26819283 847734492 497004207 442510507 784242491 130014413 87114325 262996477 157838225 335755170 519276513 309742789 52558765 766091640 929985933 308299669 345808755 867219888 831269740 880440233 635644319 165607176 525626700 564856492 611972561 82783939 836705046 672654750 521973307 332654114 352070893 547435418 548856021 116496360 84363682 879574889 205949290 511038131 953048109 214164721 254918699 213137109 252539353 909932167 705421847 285500444 123760426 539421083 993010836 883655259 357637710 534431005 106054945 165857106 484214860 780475178 193912755 400071178 526515878 888248498 773382263 378413852 643357999 830385417 782526508 898480734 500158852 76913630 806446683 248341884 642374472 390912446 476883180 389186237 8098366 15551104 26090370 967049596 127153888 34837561 886118902 446706403 773209995 753115000 832361829 296229313 134118938 365115444 151250522 5295345 507916436 415781400 366868999 158157654 338428733 617232998 689183465 161019002 435944000 861541653 792264982 518106952 624435981 57956094 14717639 387315562 497559211 826540229 477328251 480039405 349202280 966344561 612196678 561337637 665907082 397611302 268786042 173631827 539145348 916178142 311726775 704266726 282447517 22705968 292624624 900553032 935322504 69246494 336196203 454922920 774722821 595243076 894554730 651315800 434026162 333271764 691653526 799889748 621298393 847439947 250501155 166465514 164516713 758617530 563061102 204540017 359786590 782469781 201042750 850225881 982105450 698201693 650318095 565956114 296636379 893840701 779407314 45804434 720767772 668872747 364520580 268006866 826905166 94381506 342738972 888731348 126671372 304081380 186853406 581399784 442043084 398962078 393718496 989828244 586547359 638393689 36410267 118669273 321969919 112305737 132024086 312716092 466514243 712664398 167212390 413203902 787368292 829030096 173134435 644339938 853399412 46619741 892451115 748994941 563279661 866643684 459955828 492167989 442558693 14904856 606481814 250188283 57920212 414792604 698797927 314499984 131461700 161122350 57234723 257029446 24778755 683704370 607087680 73298713 777140946 86999960 795059822 857145870 59100653 714909034 28560657 390445170 380807974 408750784 555618931 126016832 585266170 676600487 184047176 220228144 802742929 138931813 50370234 964493785 383646287 710937391 930844279 72272227 255232486 166663125 985408470 128319361 237033633 407406636 709345583 274262780 495240982 375136797 980603857 169284624 523857141 946335557 797001786 608714847 50904165 596202850 623914217 388385243 349864793 422341293 759912400 233803639 701441767 281878292 366543070 239859960 267868028 367869602 910840732 435701212 257299097 703702765 364367186 520302137 142290691 308724271 195467721 528769813 128214077 113689430 403357166 559121692 959151202 197505633 314632012 745867258 935195607 285123394 799400432 801383347 925834849 767008513 669298747 685820067 845989718 837137587 392638167 620497721 728909354 912869779 101065252 342048910 574552015 160232173 794554600 953803435 230673202 764209268 5574295 449529323 221281290 287943522 586363332 386078997 552164662 723883087 368011704 981720351 939568659 509494822 344406810 744503566 826195652 10685605 661921519 660225529 801364853 502114083 511722084 989127936 993070038 919956913 884923900 256606723 201127238 977263212 396873083 598598285 165659841 255530366 195136219 6925232 358377340 684813075 456219335 206288483 152048243 271132221 475840413 353813695 962670939 753139937 430351559 447262785 934440773 20097869 598820512 893050477 916905528 281007155 993553728 577646232 622356187 142196965 53732949 76531984 315986095 615478432 98397030 475974723 707942894 425975191 690620114 532514210 59706204 847777003 711583257 236100610 783603509 401721995 114569083 533946249 145868422 645426487 816410040 91926500 195149489 420091299 182273794 693318816 409031825 374627198 841114295 210862199 311198809 587149576 341355371 617108192 367134082 457465514 378101481 622509627 636997309 464032624 597614578 856417710 508867038 997764246 284001247 928497477 572669147 541654918 44681575 265493991 14789764 937540326 643023682 302989861 371487808 823550556 199905336 175355014 25936349 592275744 325417703 674333515 655016161 480734486 649286970 975570990 814105386 438771949 184145256 271273617 630424522 147253200 285612991 663454374 466045999 777546445 872203581 139909600 645352351 540038284 50369358 340764066 352833079 287099572 895795053 680279227 958039893 721757323 629924179 290053690 316459896 544030202 998478912 102964842 783156094 291820307 653509247 903200511 806552100 154019333 598380957 240390018 565509827 724679215 341126022 575375716 564066319 286088713 585313918 868601352 2005838 852103648 975560178 953561965 223292709 618813090 128617762 365787069 350851198 793311708 707470277 665831416 494988411 905578260 538032200 743865992 53422164 169606368 349559663 944514485 726795324 549328765 767325390 456061598 713427197 36168660 633874647 362387189 115661479 693136442 661334802 757619305 114896208 194451214 260352955 995550585 527675328 852705101 889852243 852249615 294754849 14875158 15566740 49925249 685350563 343554817 350604171 98657418 58169727 379530948 607050429 984319558 475977930 674947699 8406657 836641803 760744985 581279848 606637288 518531498 555948152 751640299 719265693 195245305 793053005 249884527 850989839 5143326 431266785 772120467 335352581 887247713 983360204 266754292 188957031 362204 126042116 295202189 339091290 114057580 292233053 614137371 469883343 505505854 496166347 634482753 917791656 149718486 848665500 414262032 446364472 220682954 147997336 574743452 356611143 105128200 593586906 375846352 123888854 80796341 671012560 194666891 433717281 320945870 421892056 635187476 103293942 960096480 745315853 3051041 99735286 266658949 4189019 882224612 90651548 982758648 848884541 919364653 114440016 682713483 989364350 603176312 531169637 551099849 603311251 498079268 395709099 966405457 409032997 962467894 312465970 308300934 863043314 837078061 124977887 350236575 376712103 590888173 603367227 176898157 841960818 899236281 749051075 37983255 602359078 620743640 182705940 399122414 882276392 139836909 831094550 345708350 61824293 708562615 652379131 504319039 958083482 540563344 716725316 861889848 693127246 174870756 475015185 496782268 760957839 418682214 221133672 354730317 442700680 395048851 231942085 648815345 456962756 711819102 390375894 509200525 975011286 291312636 504385880 140309063 645706464 157895013 914710871 375917218 400612276 252214579 489542973 493547272 472789008 459724787 844077896 177467763 173629449 84270727 290490661 492101060 311420396 699204435 41058734 211923534 772271925 546690770 207713802 438974102 190355455 460735502 641486975 594299054 968323371 390140725 987879058 411719033 768428876 723279754 776820432 41468444 951654452 850690246 559472500 85675719 257079846 534975892 104343971 877210625 228698532 951460928 921364138 962514583 872000644 555130292 108513565 303277502 971133206 310854711 957247409 488433572 96631999 492129502 371498850 87537055 402297929 447681720 591813347 183181853 529067027 168703350 135928969 309942850 170392529 109073309 87390056 771244865 636761842 828663341 246988531 482244198 983851891 192850490 629256453 47386094 440685950 40722842 980335934 22328145 30966892 23715804 897637115 410227341 81784312 7104738 830282774 163593327 98596552 171165922 692117077 899077974 225445549 356779464 512822246 115660587 815481540 969675985 40959497 79394240 299438997 575316496 140943625 114533856 837502919 520547024 233494606 243558728 534156813 26526164 285256003 324568926 587699240 819004799 648030083 523355138 370228771 939308220 311278188 33235382 932620509 983789074 501120244 837444090 816417693 450307461 367086977 351322997 246877132 776052467 308737281 953033431 341910789 690209770 968930771 88497717 644307168 261280491 586076369 223614123 418847379 88264792 934653896 922200787 489837252 626640916 937979475 59823990 713200020 339378152 560426488 271452116 605847899 626858753 704186743 283786833 702922220 713649639 817728316 356383656 652049221 33217812 296953193 578277491 212924825 803912011 157295692 248080706 131244039 439332140 267543800 170899852 39013853 210820909 562331432 441757259 221135799 654063590 814250860 477221997 795940718 862418188 65197955 453076876 453395773 920712830 664315011 900373300 566801855 240087858 509980800 988662780 652199482 284416078 74135981 829029811 760549771 779238586 230363666 586434446 334356476 383196464 785383416 133018856 132381011 384103590 263093013 285503314 434990577 432766858 171330510 806566311 385039868 207259151 121271386 238878129 911524786 805610084 173667579 670197026 89341448 301484278 230671961 393547562 539100810 244530730 951885959 890280965 659229937 99845166 345331674 732471028 777580758 789390806 743790134 441289630 567789312 191599563 213719664 462995769 736119108 766293200 767960164 996322868 403904176 972794907 964802216 229291079 163894956 618475469 824546342 360946648 803890147 332196541 155853014 441260988 566734475 229560119 335762987 648736656 967454092 56959775 722820962 597253564 73907240 90198182 126427370 677328019 247989475 222134135 378177018 48465937 893754712 351802586 90263977 434650503 295442591 290122849 897448932 240106560 332027218 35213479 967330979 404610565 668209158 988877121 620574641 476276194 661054199 717732869 650147871 435931815 316270019 258494077 377685623 231910573 259482950 892901258 504418574 824648690 235254771 843265341 948369741 766062773 79122833 937558967 325881951 434048759 826314885 536963036 188395187 974302431 48636727 2955427 885173292 941571202 700152529 356856664 982802380 922042009 374945492 875761372 174112278 387647643 908848503 141419644 647198414 743124390 416567963 605665174 431305476 148463782 645867801 27523100 305581053 990106673 209628421 656997873 866570120 904506887 459476955 861240311 951270210 340055294 480754350 837821393 572518779 85987649 802713519 347105450 950981135 558040771 538293397 566792309 645132270 526973637 923627575 777138223 916280306 84869525 974380845 473883281 345583582 568420139 428327977 185006130 120291828 8079514 726360790 912451913 990428267 206592003 806813194 324274031 154408189 57254536 430511458 191612287 227500705 390789614 176285141 277633656 513725591 481007364 872506444 459798430 957430581 548297311 996559764 750437621 382321087 393311569 228084300 236898413 45545918 267741588 44630569 804650171 651107887 553473248 438924340 60322722 360833135 169135285 25303192 750243823 418218918 299222884 595141404 198896933 575427907 156765097 420136366 352532817 289310160 653017437 141213712 981459834 608086254 215839567 747540501 880039302 419844827 232401047 116376468 291902692 284374710 101282650 893256703 81672682 961902011 33213303 172046076 587227425 380104707 822343720 494113443 201382959 686750408 224260658 195383726 530260436 524457759 887341260 276466725 665284238 288762905 165467044 818761292 911852787 186678159 12290077 191842077 994521965 728281453 697081390 873594748 920160937 201576351 444307627 856452471 932227409 845465782 717562633 971088406 564956024 783303739 793299761 624181139 88307705 617831978 934607672 650633989 432166016 596908255 319888475 526877009 679818253 194858045 801353937 924854022 308226309 158207436 322018714 976382406 742366762 847191472 955231710 268702221 44270560 848061815 353467909 886181677 722676773 600421088 908471882 977696359 711885152 713045367 659617622 192597540 353978926 736666283 863091780 700554188 977490012 812515847 58299321 361591845 188013026 215524013 877679127 12266882 982627289 821947650 596279243 386666526 900390475 710636837 919247332 669862976 991658019 925851118 212364177 894416351 370870929 409044692 622756567 556874676 278061125 966961294 880830643 376818214 151609167 940310282 785157803 875579534 775507040 791649343 852142636 880519867 99622210 434050146 860237898 784498165 170071912 620771634 221824507 282605143 225173184 968735473 222359747 729112838 510408530 206327352 975059732 434080335 774403480 274960442 890092814 286601461 47107048 160732192 514098829 137878733 575740654 176133864 519231433 371966146 864156701 955564014 466998974 248389264 773034946 990275185 704878005 114409643 483206180 905814106 405695703 625088774 557691827 484176732 612986666 870908649 418176329 100777705 994252439 14278418 301249310 834112613 315372028 177344823 686778190 254940380 446761042 451848030 276374541 633632982 275378043 750109129 97095685 219606207 895760094 431862868 864624403 62760761 326720815 607485435 876835479 379382410 349132093 19326178 101612955 141821166 393113238 301110419 323660475 64671606 528518749 664893623 818067607 139595914 457371739 892104895 529267137 942430304 54367770 885841357 18313471 915165447 427073814 410068714 510437409 367581471 947069173 158448540 757183965 829804373 709911555 693308411 167457656 563896380 837736418 143455650 289959545 909925168 300417549 437340397 781135551 107467817 833835614 139726703 636743434 810321427 848735554 297762107 859889175 174258328 93696536 762483395 619856069 253364311 426619453 882260712 58860481 415626144 38387916 594791390 169562813 605250305 470548978 821166057 321685333 459815305 707558963 636314582 222325691 533059720 991157481 938811264 344132932 665700210 981159370 494345010 525882904 673951938 328184771 496093848 375235288 100173090 21605416 433028133 317880269 171402000 949283313 610857697 225977984 48921304 852744355 69964149 442219596 522022016 290408462 480638412 922744060 887529472 337704436 2249982 929040261 870244749 446439446 612156938 102516888 449990900 936941646 867140228 446090898 477464770 535646634 343049064 171862069 377178476 478620949 30185541 697195675 547362656 794521117 411686844 737377384 19555592 166248631 42340726 954051997 972547812 239092549 731933460 379063959 629914397 910640675 602507464 802289279 763640073 148033265 59679694 205432868 566756313 76295758 898509351 974673468 960042829 31824884 360674650 788475233 876375518 864536702 389632853 975012143 690236028 939672428 315490520 898583208 509709699 772999042 822444569 282913783 977082134 493497250 336445013 889607414 217000346 173214295 906500063 543358084 208182856 511409701 136936165 325188722 485378878 720822899 669931138 566474449 242194636 118030983 10512755 122536300 129590280 183057155 353374466 664714418 483223311 884108054 764166764 845558514 745510504 960623201 401193473 582622557 693448707 251850224 911770722 761893749 396017666 362928351 265341418 261226926 79436977 271946687 272792919 360656721 835478602 520785905 585668967 673742604 346826387 357589400 881864957 590907614 138474634 308901822 977201773 695726220 561036660 322523095 995720078 685352444 937991099 548579942 682745047 80528442 527392761 206026481 301929558 141105990 457872068 799885140 963264628 3974003 305484541 313095200 763732082 216364565 209581695 678803090 695447 871841454 216747074 12927607 281575761 602441313 203644125 455794497 919135848 96847588 933342038 511566065 957008511 109255320 764862601 734692529 708765621 822250460 978029105 609875504 848350062 34616174 912242753 474674279 708830992 568974231 798374043 918613683 31081162 493147493 366874532 495432030 619927264 973588642 458821935 836214913 601194945 90913747 242391633 884137917 533346881 903893256 570662831 812412422 40934759 812568905 631844591 141856348 875925275 43498287 267468380 861948133 969839530 171781945 889021271 523529261 444996284 978893888 568590461 948881976 785690642 40580924 35937826 72340301 582428421 749214312 622517120 268618708 980144947 383337750 132638275 713885548 970841185 413418655 33463485 848115928 94026380 978070302 821217697 468768204 437310121 458762336 332777468 334752391 961520020 321911241 996553404 303207271 605775629 9384286 743677934 75528579 80733703 366610953 176775714 663757387 374526443 928411420 325746773 311027212 545592448 321736183 52506882 510174113 313769238 153261379 55013598 153158879 854852341 721879811 788822981 705961760 431307633 372211047 173920980 342526241 375778538 342313664 524989253 366630900 407201255 338988274 92952002 206277663 219155052 372757405 718293897 207486000 19596371 419384640 750217840 897934641 248189781 686553064 239812073 485660230 415367298 250218313 442451022 304893464 115875319 814433984 451789632 989056637 88006940 766458221 95263591 109646890 443700082 980821175 225977823 749810856 993620229 43016531 794915405 397021885 914542498 274144075 278594062 261188132 510727110 999797257 454009483 739012699 912686257 846247966 388291544 285261697 204568959 368136659 309712314 736557560 784050245 42227408 732687052 882807829 654709476 966574005 215509995 897615305 507914893 914540818 786229646 852326846 452951200 480750540 65684810 739058386 165923127 899342101 174270226 221112172 849320442 531995893 177596096 646333591 405693591 874171996 329588110 218918732 337290583 837069545 651255317 160727316 595645634 473000591 412526281 362869752 793543642 976180235 377549151 304006278 747831158 903300181 332631194 876926440 573569138 700073247 419085442 317515762 653709774 465228340 419273156 340372106 863541961 844778761 186614082 161703874 341256651 577621941 539799430 524928248 607138327 223116410 256415670 264895797 400859249 619685217 908762279 486243040 294752345 49969209 306256566 90793931 219061909 154096862 572807598 160968651 773608731 597291324 301710335 493784123 757630659 507991464 581874552 27417740 645453585 492622370 829410017 863542829 786311086 946455697 315974350 596815824 908957108 334237021 424576683 366938348 357938646 317655718 329823178 480646575 356481185 284824347 621198987 707611996 942062422 318226257 871847991 513950390 149609904 728034637 609053517 194541997 134652207 761371306 711728817 276055009 527307213 139756094 720415525 932698158 562953557 689054773 815816893 693478095 155614166 396440331 497162336 669834509 682117826 321132578 5025428 586229001 238642610 308362572 524200790 205068775 369278276 561282933 318741041 400139491 255254070 399774538 212612107 922844800 370552969 228740984 904125436 4226582 416466810 681259061 105254393 909690778 243512388 47226591 572237671 855614756 775045028 255690755 777144227 756541254 75160456 190771724 869972956 439642625 922076410 767433583 481525151 360024459 687318618 611901243 854184869 609496623 941129604 548256624 732143425 803539842 697036087 339135010 812217700 310996238 121197119 70255206 544302566 764870001 199195529 776714170 539436505 120139660 579378022 228818202 682249933 988003463 817232066 352893414 216969699 809071209 812835907 821143832 917091606 347908745 849643062 590466724 46303457 422134804 829899866 28526570 321093011 565799612 733489037 241307093 121992988 654496799 580723056 951529519 303798673 370876594 642798942 162350712 749350039 476715508 998315626 354665799 992711096 583241864 950588193 66969625 961722903 95976126 527371175 555713683 995482706 249876542 307687614 748480909 633951172 949531473 38554804 938269801 102913101 249616632 843239375 708502161 184096684 558864101 695844907 447934732 159420914 613655430 96336799 886475112 595690323 896130488 295416060 655278634 777486009 664288871 370583498 576045883 936255025 345582115 478600865 84894089 749402892 263950167 64980332 609020163 400871138 398965212 432950862 9124003 299740465 892842939 632614152 138682010 232175234 545179318 499837160 524432172 446779809 824741317 443269704 87768236 361630433 18532380 506813839 883936372 100604878 817560715 441518457 100056930 785839929 875919170 353559659 116822418 223449286 528312574 657288987 276449101 809438755 325435234 464655806 670451612 30695175 938756625 752848427 778152539 170966578 572023541 960523465 934166394 297525631 518931804 263771125 814007886 641956073 678990850 564002246 270693756 430138448 424152848 272708709 425756662 837218370 579230374 531536094 891731663 843405053 744944455 966420929 423557137 862634361 426600291 994990290 562367587 690947455 767354224 735506923 525612166 65947676 82743222 561555701 871220295 345776771 756703291 947578088 921100774 298702931 67901250 272572791 537620350 259763615 667526664 771801233 597850448 653183506 517977402 970031092 303523596 650086936 43621761 378099663 295179963 707089258 357032972 492670083 559182417 555151946 863076374 779833724 800075046 480937229 894008782 329404569 53882167 940720320 879773874 637013078 590885716 780635673 90512855 764584412 61247903 315180262 324243164 678622130 426069967 306130198 634429296 871195380 385484362 961458582 225412146 358773030 625407455 70550108 212772111 554248153 229432011 623897711 357211681 442387051 831445205 196390613 652967251 99164919 572609446 761527185 206963931 68158392 653866644 973004380 692661207 213229831 790980960 29422913 772696120 134515643 642937146 773290593 956420476 359483311 74118075 367908959 35471778 78986846 477312175 378746725 391330481 983067322 785623972 539064044 200358703 499633972 745490069 725728454 179476672 779962054 393102647 832035478 250016937 658315919 963147616 156567131 911028936 644468210 313441694 702037582 11819747 57079739 145484793 482744597 547747420 271065696 114095426 745591839 330463152 285454242 697146373 564448148 582785005 183570986 389295671 972714139 216917590 492446458 151178716 704607876 61759418 845727439 47571824 733450277 800209449 861940600 529000411 809835113 630614042 863478987 442373814 358692332 1535744 69958988 399023616 697457358 742858078 755002914 412484510 790895672 192212231 305271998 201814507 731653333 671758628 778003567 456333065 825603718 670840510 91752728 134671106 343338311 360686365 450549837 541772675 121208652 944569902 582037465 38867625 708437596 923718994 963021378 380730111 875094478 873599087 212557959 465728379 491655244 272963557 386774528 631940614 394379205 719619682 204848160 943106435 179788094 317561691 749434278 480157071 790080884 317395393 144250832 376950456 151271742 161902517 682210476 484713835 165229499 654357022 890560819 896762303 928960318 646170820 997524808 811081726 457444839 431962396 7003677 127493429 888650532 782441280 827680094 448048702 660609828 195473987 976706647 844162604 132655449 694146413 503858952 497787997 646974014 142309498 766023740 937957135 580005176 574981385 16568466 394416278 73703659 525702042 89362863 899313357 867922911 125342795 722435585 655441248 296305655 804085402 398286093 181702752 561068755 255478806 853694303 911470870 681472573 351775186 463202816 289048870 243061086 645540229 354947032 287375062 626950199 188347380 406331355 284361089 417396524 318537088 952905670 283444829 354755410 332102186 281217734 342935595 283063482 450754956 628583918 68282802 990694240 920711105 151941977 229606506 958784880 383757068 260072350 297879379 672610514 92562498 293233426 240481785 868610292 375618945 797204060 138508013 862199181 332645867 338059810 796618824 967793596 241013951 938157656 676241062 818049685 1066624 48518429 455909054 110361807 143423002 420035183 551953972 212514500 538314332 75260463 799740672 571231603 606601563 420163911 683986760 370170664 793198914 763649129 730616765 77439563 877834852 389605281 233344526 839704730 657592254 255758790 891513073 163164578 444091645 716170165 545667877 68905153 259130067 89082779 194302089 739323034 640243045 946530485 241981730 522201053 623004005 912182283 53547505 695216379 145428563 776389629 398907291 612064073 902989521 820479988 531365392 736226063 228710451 903230312 630038395 134510525 562383452 173375760 543294658 458216246 287797789 970571066 509335229 866973087 31872349 674593072 984165504 606169805 282825757 896422929 789942721 723537933 365164768 332000152 595173647 783571665 327569913 288953485 755314026 556741263 198008437 790094416 141753096 793633475 553912611 554389172 753763041 751612962 427939779 510492394 34098475 703532298 534995220 13537066 779266846 18928909 768900680 593137255 371816696 446254465 809156320 289863526 893102046 874917544 933267250 585480743 311465295 232345204 358469329 593936437 890157169 258185857 754581173 626358248 49269294 865208929 910414796 895527218 588349828 323320391 371511083 475240624 171159549 577286454 320270569 676772001 910096808 24033789 707026812 239362319 294108097 185963258 697197093 273190749 697554551 628637525 239357937 804784190 927689231 814212800 42262875 363337504 906891056 628755675 729683416 452089 609394869 598602187 258236916 621335914 121898702 945297794 154054393 880345603 904145164 229141668 814330389 279003558 224863936 946509352 379775159 383495083 330726021 555081900 570864770 975456187 661755554 771515761 103120566 714375044 514680461 591007334 691651015 12630798 765740845 839860556 89856418 44058963 202335298 710172108 543801400 718061793 199322631 303194532 707092393 539646313 78169305 643040613 678621238 390944262 591970231 923464753 497558736 855885941 60087818 657875856 103541543 187908233 695386704 249199928 443931412 449976263 2253075 543644224 870151062 869317697 208907472 312462444 771492356 984449686 52629384 454212930 918773912 703273269 306353397 409649662 72266748 767337114 274454939 907917434 428876646 164508861 225852975 988332786 987939865 191973093 374527987 523721188 725737957 968385846 623433341 308040096 614647429 239363865 729071834 191809283 227501108 37354686 471422178 619204327 747063197 591439754 181631452 941774585 960921189 396034346 825865027 545783624 636805968 367281216 873094366 504422375 944207784 477680884 591941779 557964967 218110106 291238785 669390926 854702103 949246915 971034629 845962566 853212049 299395052 380881780 362985650 15872377 138355532 452710090 496349763 772297020 470018262 138097051 548580030 718356032 540607594 940943069 747463596 595814156 154147620 984914986 408965389 912018454 346514750 266101569 518450111 628172043 332597930 52316190 944741293 841154735 965228846 392910203 594077474 797611800 402455897 980638685 780183813 862586454 713032326 301581459 95128444 947479751 445065790 59364069 669312885 504848506 836559603 478023055 776739232 161869613 521900770 510022484 300246777 68484112 679302434 408661084 102067783 782207335 519348086 791057637 499407868 173329726 341286928 589755078 80058655 303317878 544073980 240041835 140692047 122034673 344686138 890701762 571905485 431464255 682771272 273432970 244366304 500490388 840356579 83831914 154245392 439534133 688794943 239981900 442190336 553672402 828560412 587852188 583001523 623899583 755368171 435701405 571366176 529835685 764552120 339075018 196101087 168706302 806266525 866790242 76947734 306457357 153728792 533385967 606291388 529636507 624207275 689716637 203506542 396715576 206242566 763076560 647843833 324365611 320221265 877860315 973932920 276744268 817856678 584333483 443013566 892493751 233615750 943806221 696892309 645574622 114486357 661792352 362456600 256116991 872670885 884328335 809186676 551989000 231679474 181192952 759269283 949566657 337296948 250011298 966736807 386283638 256298404 376994716 932467533 840832726 74184868 733233189 332181482 948891719 869550625 496001019 429834641 35347098 299829560 803374137 241990673 306875971 711682330 915122229 167395567 229373664 767087782 177849013 938093666 627887918 172383863 511680513 66220376 813423472 456035516 646789188 377682662 445909658 307461633 632013607 461636910 887651458 750805922 890216987 836268535 518201254 273582301 69455578 10958153 120711030 112017256 681430492 350293255 800316303 319888485 938099524 522576893 460138361 496324665 868181278 359923032 595755358 165964505 833882304 664474043 52445388 715284524 34097787 151765884 926098118 544617844 259708050 348327086 640932381 910556902 343765383 841028236 222939063 862721742 846360229 178106582 562890193 117640960 322980998 768208618 794692595 748244693 985624453 52794742 198225735 572603376 170590973 984075928 661994458 269071618 114686648 175637182 615899610 707375474 804007116 175710572 260635742 279654295 228697543 398793650 374494457 757663422 23653529 981518279 230190903 909728917 140436806 193841839 786818212 991142084 668708048 661930088 443067181 420937303 238737853 357176865 167711367 675810272 592541228 288913378 922752444 335518498 540802501 458156448 805458859 216307914 997487420 798708417 128318512 977418924 834580936 51614389 929125549 58349363 914206531 998518279 586487551 2106583 700661073 14341608 136921375 690586141 35578135 201542949 784593223 773345906 267448077 311085751 593928403 813991340 482366807 220527666 979798170 208809648 175504843 142873345 999145947 726162799 726300988 148185510 165396935 479755515 147723972 488468106 916404167 868938872 335303250 442846178 108083865 791668128 189963041 922148726 761814016 377556206 602772885 319521956 142117333 620111776 879772385 218952643 783116134 934303004 908408069 244331395 665422587 467310239 74105981 306831818 745051845 219062777 744036147 354310419 674385121 135981302 873791842 715695423 959368378 28023122 393979159 698531120 323250642 261897958 27183230 893603963 758474477 268860177 550339915 156214170 435511199 920397900 893012163 804833773 585257306 486244813 577202656 161665542 765005773 635088291 769621547 156382893 740944436 647073225 117212133 160722212 734883518 557932752 101920896 408907583 359837509 811957714 655770682 995543441 881731534 979920422 69889318 69144349 533470754 711398378 672115171 306804255 156920060 775318157 814895311 277034570 483204368 256307427 172012080 211877614 680151753 980391635 579492481 351654185 582560265 180878005 751183691 133319077 440201519 55337130 499019562 124158410 736381576 873588476 522596377 541886934 282238944 22393542 760665071 863641451 257987391 619433247 399029563 569449441 917989151 58067286 776397979 726846120 853551626 85986790 128460077 253227340 950600411 831818985 343058149 882424189 289995153 172944133 651815168 168258191 838981901 765146474 714481318 954247025 123911015 24214801 676598833 843450038 759907542 336830691 514381939 167416348 892200461 570539966 530273297 316120598 446986748 224833824 3310600 539974917 522343688 868171001 907974975 375729703 255988605 753141815 868705622 910104039 385643494 219861827 636761606 999359944 219284713 460104124 406383355 313364185 291360531 457784096 198502107 943679464 984308012 941296365 721067965 783440488 450104613 338433507 325871226 171112975 329463606 599113298 63830194 392671235 880149525 603223233 588721294 155961173 809195238 28394143 314658970 51868965 931396022 642376268 428096880 790627963 354353021 566461821 625297106 67047620 987192109 833057703 373802793 768638590 791042618 962035534 232022762 363703936 660614496 227449026 228865653 715016492 454292761 246776046 773361070 220668844 485123985 891069155 767035854 90589559 550217566 516029964 433086923 425552767 162825994 657114341 314335292 344047210 211931248 13617442 920929468 402344185 530266684 407142969 516333948 514181462 418799316 742848423 10612269 328377588 976972334 582334335 866796224 216717177 261995936 547637771 101560724 999609316 793329502 211684986 690230719 584832926 395109332 187210313 307658510 541397622 684409141 174063065 9801392 10152473 309827611 296568494 509554541 495740081 586498520 251554303 968532117 375926080 573011642 488104456 871533401 786182210 942625181 653211571 438200203 947413014 251378457 544963254 915408149 820350596 730823290 928629777 980557882 702461301 415015465 13293176 237274243 420569684 5521672 279488786 302401883 190095568 593907073 842972452 779551578 286569880 347255508 574401735 390691854 238557016 430599431 547562680 220574192 277618601 351345389 668862284 334440542 588492590 577285557 67617724 245409188 372335266 88463946 773314005 769610621 769057294 731482662 670338350 323113570 101229381 344128934 792272934 816574789 459087379 120911684 882832832 414835078 745556664 737388429 301660439 628775275 23650442 4566533 443671835 506796420 360350528 987842970 610090158 996318564 668891551 172779616 42637311 925641940 829189578 125662053 954022479 742898670 76512972 204173202 735781241 323825236 538199970 828440445 516989176 56688491 772282540 72770806 359295682 807610704 425736719 771597841 999009934 237972095 608298522 394573640 961721214 555193847 622910163 870614870 321705935 207670007 386601495 396135654 805704347 499923288 125239191 632082786 476771103 791212939 942253252 992290847 326307658 839540015 67662120 270468547 360283883 263118289 295999665 821537788 785182105 178736337 531811099 963126325 509002941 805063841 685189232 353605595 146343704 676328706 214977160 359234284 703444514 434519249 748509144 540587011 39084824 84194096 513469850 50767428 786498474 469874317 952605213 727774489 138343593 985931289 446588532 40633901 725200125 257494933 130696947 982084129 695665170 258228953 299933858 518084484 237251123 880106594 224164940 693333885 554174893 176509684 375924383 384945576 367957802 273743571 165004811 622393432 920773713 822126308 654576200 295034298 431375724 736240264 771290195 85367687 640412596 762113313 87317406 116675055 417323662 441358871 719422034 827022920 894338538 694638297 116361124 197654791 433787313 322837728 501352544 975179115 784728441 619019787 717804946 598724942 863199189 974384010 737280524 60956750 326108054 424661316 323601443 794607635 437191614 878801607 234267396 186943708 927476673 252383335 580537895 320234774 634352548 281964353 364410704 948009629 567575299 35821305 752908155 197217384 777218359 934919842 380187430 991029416 205156021 83209545 89495232 334407629 522377012 87747704 682314244 112621843 487727331 916368168 42849497 404426768 205959386 448609022 29701912 36133005 352203728 857335622 137820567 815399648 899217499 109774756 781479298 607780942 143555529 35589353 435002881 203891383 285642051 622723637 246901595 648549661 304786755 816551281 639915147 113872593 25118256 694782446 866781084 428779556 459301693 131772355 227601121 428441868 124952702 234681158 298167295 428746393 509971400 263827046 869118434 207124291 240104093 541092014 228621725 94019569 871632340 321855685 783287682 359940469 650975311 831156977 25440933 486000815 613252 339368959 626221116 56460072 711032700 905247835 726672018 623280164 849034322 4993034 967698611 303089715 517777197 882410392 488616760 152295657 710843257 525933373 15605022 676122168 292968459 929404143 336092692 741234569 86324692 136482317 710964847 662842795 174704170 66079541 41807547 110323170 926630720 650757531 631878742 938018786 599055090 497601546 306479312 252969082 337951997 711788081 633703882 542002324 650408151 587316786 845327867 802740766 764185162 562938312 636851833 265631176 394977902 122386265 946118136 100746136 458469783 930876359 480425882 244747559 139363852 549097757 389765773 421788882 44680449 272622689 129842237 267002556 762335833 253302021 371321083 747346049 485003645 446555262 624658275 171485318 759195560 365187555 217090224 764568600 164539834 548749105 947217816 331862683 626874180 806137187 506085246 380347016 956531880 43432812 734390793 808873230 445167642 500093154 838392391 118405814 66233309 275261340 953667631 463645224 785539191 747745143 378100086 544308401 944844400 180160716 350107387 224932239 644577166 2751081 946233987 585763601 302117162 750409612 640387757 843278498 241848450 523936469 905669172 422919061 582398499 706176283 884181355 975323293 527676691 65907419 983840385 154536332 18616930 493674303 435988232 171386570 362836429 262553672 90602444 143584347 215027114 470066183 760148726 292146343 994876454 620649925 786436147 105808371 145373497 155412561 33024017 303724995 851300391 712001167 461848487 906332777 205114187 785858498 265855089 132913647 358401018 637469771 694129422 39952155 726009327 24232677 557012422 752630056 668683793 72883113 91837801 319148470 58464428 309749174 33281435 363578455 932157120 41890546 424860662 970518194 288115676 637367485 258956646 851221992 566288008 611747408 489020078 249934630 939851472 445536360 624731776 963440488 890937381 753201361 518313059 648810304 445177702 435570855 825839 818658286 295907070 75307379 821162080 88488634 911503178 201295690 144436877 476960796 425965048 802118293 132912256 919146672 699792826 825974354 65533426 385599342 715599774 489026072 359162061 898262016 112211070 425329980 699878876 379156245 883199417 143555325 615404878 455861712 574389713 998646404 262879590 661684079 689764124 865982354 878907402 762505943 967068907 150931633 892859204 11757379 747234200 845483538 464692515 732306784 157241473 635670128 43780710 645921533 616109115 462255168 716388933 820517102 975630249 210648029 375408035 782378284 257045776 115638630 920869530 419456443 386991360 464760654 320846929 852886101 848991275 130307277 612811606 593861995 208635532 433363399 857495489 802507295 63667243 440101399 72115909 655376041 489456431 109290495 53009116 456135246 974536064 36007415 132079362 759192414 336527787 139518893 621230231 475593537 62135443 108757227 49357466 324284375 87527902 364190677 961656150 158021002 149206621 132749366 931150883 797729401 368377735 219318611 587608286 402978402 419285037 805716606 540981857 235750491 22058852 594941340 565919325 685937300 33552358 136213921 714384631 283668882 398651682 344754701 1974748 522568022 402698575 146466021 515601499 537687578 507317035 333541644 171929284 514458027 768012177 332839260 477696910 384746997 61672284 543399201 592636884 905847076 523785085 866243828 764169675 268251209 859976532 481114137 338408088 187599368 339212318 318242971 80017127 390037983 810443232 870146972 84784103 992095757 629738137 113017438 711560994 563013099 23316020 48910535 596748680 222734751 30333361 186144319 517776335 863435706 513973739 345485254 53588479 69257935 264460094 973520432 439653134 124774412 922719325 528171046 779138390 368404485 285927182 787281962 51058875 444703890 768838269 436366641 44699106 865502850 69279941 432791896 859801037 905359789 215732060 400985107 50263106 226027466 272897890 38964890 169490005 220406496 480614692 624573981 688862982 545896389 193948023 924035747 127557352 138755610 306298507 883819571 2269023 822902244 223995196 275366309 956073184 348919464 612488290 171545506 174155873 524978244 679491229 89467237 377089416 343235755 157293594 830490840 653702985 547629589 764703229 927102369 388158827 812748445 184457836 157120404 707380329 299351219 831520558 969441313 131736958 974161071 441315313 876077523 407827398 649648372 525924467 970790708 203944377 904530543 425421915 847951923 472348437 589254645 545158204 406498057 444311403 673930888 52797220 645237648 111502005 572851591 222429881 362015294 236401873 146115198 650841116 314372674 357383193 277259952 57132985 289137331 735963929 266320414 665181377 75087339 505477416 336354014 215984845 435254509 481678210 2304937 470228777 759070388 392591483 820642553 711034491 231659838 91795161 244815198 899749134 494371002 123288813 77648299 803417105 815684818 510015496 842741970 910517874 64758566 956393714 176691341 392732791 33510488 655850351 696742048 561157014 628127521 999762466 338058665 706660625 168165723 177745054 187149879 988696113 367957637 759811508 319076925 101645642 659124617 123316438 899726447 24108786 214313809 544645013 277913225 101309497 12598510 442823615 327728522 376982397 928466993 577419243 760543929 759725906 833149018 639954593 645067550 915863757 519317300 839334249 362685510 594442024 719226524 35921568 439438885 716385250 123133802 602208802 248142549 944534377 411630301 35724603 796114812 725712277 105544105 152768330 389649449 638028254 953901982 888981472 449818083 422932229 428543689 384173301 529470634 101056404 385653019 911402400 221026722 222715601 522833775 904568844 6386115 775282152 317084088 176070454 997941300 415109563 11562842 461633549 65411271 176474845 796233266 725741480 460462321 13234294 165234456 74999445 227212515 546752362 159587886 678476759 632023549 264228794 699344451 412760290 413053473 244325289 239751074 368577609 127512128 939289378 928810878 325851069 637875569 912445802 923660182 238511936 829451241 29093839 126357663 309501829 656610236 774991700 191985293 692435843 324833756 604003561 848611209 384065271 85245227 428457792 24786767 71435133 739011306 765894392 949191474 727402769 336159437 792442999 906440263 199630811 564413063 858751869 347534142 558128070 728409762 658628179 509682444 926396072 784649591 114114764 85331359 990316344 777070311 290273966 273688209 281642747 421392969 690252728 614238258 65054440 823266501 157340831 271782818 689210941 976968211 182045354 326768982 910365184 382522735 300411943 237253794 18546662 564195577 158698347 771126672 192555938 694862362 347835106 442720171 216414158 628158373 118071903 642220855 193033779 647897275 705251203 751872833 751285438 451827938 266238965 343808239 538320743 582471139 890302909 665896672 474730829 587582182 950658889 383629508 775681571 183547497 863853412 392508757 142493360 301089940 793728922 495149960 716595665 685503706 326036832 191509302 211218090 848211419 160799295 167091267 4780450 514265263 228792409 526369993 909095567 770181222 592611560 366375531 207346920 642914932 444107070 564336292 904557741 951020415 696675717 57959002 644447117 402822890 717322073 72309091 793579014 238411594 614123611 421804686 129337789 754770018 872233157 48447729 754913839 311925122 647119932 473113448 994607312 380774387 558515297 463810338 59406144 132001720 990069499 509086999 117115195 689010395 190989784 6620839 530835791 627622880 35533982 881179088 604955618 26660624 989918351 118246439 925681634 158878934 496887412 127475270 250191314 870089693 205526054 894092588 349608854 206445873 509169592 502819649 850276211 801130249 9978551 989757581 702043295 18312618 930475918 811042469 477606038 44401534 559558804 438017285 285541985 631747304 567098000 561403421 381382270 80926037 933037860 490288011 681797663 295238379 148655435 433152069 137549721 607559487 867427455 850969158 947373852 911153925 279289522 364536436 833403563 630317676 710926552 201079828 173963320 425621339 61535666 341880258 4977076 935126474 836851055 642077857 515202276 478246965 551239619 101389603 894050876 128584416 670885255 665888164 887070753 793272198 145585402 269150714 513238794 658748027 694830461 210634509 532723833 385935799 917659202 529231172 843858929 36227145 228270538 965142401 225192076 661385351 926340876 824113727 351988737 49371967 651954062 912117856 365759873 335573622 881284765 323335414 405444392 439398619 703648482 435751982 65327503 994633656 571279963 927811669 599326862 584408046 44418265 264199269 789864512 33437497 538571331 204506255 848902745 211983229 141231134 220416945 673725932 57440583 489648162 127228991 65933697 331517844 927859241 84941934 80909044 379866305 159944722 378660811 253531421 914797134 608052968 909743662 232340871 462927854 70316604 462411165 670780657 110757321 286359596 82169541 32795455 948787082 850689414 39705356 585913450 467916928 512992988 44929132 906515527 779668892 30795511 509589502 423448042 33388747 800792323 202723962 565831730 536802531 377364873 438355033 299831248 165986780 105844593 571308593 247499674 580739636 720110960 242501943 39676712 458346294 764501991 805154236 129079174 646232798 867111241 167529968 635115882 676369558 938464609 596322479 744994840 263120995 50299825 947937698 315273029 904618839 963005482 217256246 486826605 747533736 373986118 686952054 858927634 830768588 190344561 340757662 48304748 846364141 686700259 120520007 265788535 897829950 690647039 529320017 446776580 887447134 141607610 938829419 293213045 113487802 457943696 330443667 649693016 704332923 684604601 461339704 180364550 208052884 126461259 926699872 82935197 925893376 115654053 47661626 755959086 717704355 112332123 363592605 93350099 207619152 944115951 802627049 209593835 820741031 27066719 509233954 676624917 904032686 29955255 622463664 70734806 185165961 673521520 78119061 98963189 30052103 525260466 41227601 828061186 475232435 716174980 175480856 942569255 861443078 119383750 340855913 169518396 271415786 285638461 17858325 573818670 814779394 593149358 921601579 626220454 115983051 211288176 882123488 411166324 401664828 90259633 351409300 962630364 198950204 624218010 300458207 694982793 322986683 692685438 92696738 503119360 378296623 821124443 122920110 471036406 507806471 30989336 304723383 417248742 337555424 591848373 408461731 530266500 363030864 361674160 912542720 419541015 65598268 839802424 418162983 237903702 373554981 682875601 490041740 763721966 819252485 700436040 956053460 898132428 736014325 988365270 897732542 125297427 457783419 880793982 721207915 945854458 669457602 705478951 908916557 382878103 210475916 859631090 768642912 418428767 319772643 882161459 127992972 793128684 519428051 823823333 201286029 635598440 498447137 38271766 34889263 305401423 686246892 712015128 564044825 834457852 712163121 883229568 12649328 737371262 777830808 797594652 145706840 246771667 421221916 728536078 416575813 414134951 256602888 347916844 727374145 949392758 647737779 171833911 389682728 678371192 900975165 679818956 200370151 287581137 26643292 594465639 24776077 291364008 898075924 9216118 137169938 839548163 940769577 748555954 257985528 117274774 338400019 887019450 641485548 633991969 857232832 245074244 350718223 72571143 276552713 885085417 514567738 657184673 265851865 612959811 131894328 943798771 951999411 457941661 220731793 736711392 838407673 801133814 469309864 908599396 490333008 114765004 914235180 484166631 165401063 995199162 320633229 966864006 766886442 329294402 809712989 946941324 481245715 512145783 186147266 496498047 665186571 988359310 235564631 446786513 451216357 436218517 633778350 272263907 932251832 189199838 464629099 571866941 732897949 924182649 472139342 589691020 660855753 880238942 534390113 641037369 984465542 729124340 864603189 528742364 622467237 49557928 974083220 480559142 580521767 168019094 378925930 441679025 612562721 930013337 189288042 216362558 446199057 971454762 391188559 881681599 490857757 674596738 991530142 266172517 520884073 155113947 956549866 235739248 502736015 625432131 877559175 119237466 953510645 518766306 730259426 65148521 126412949 213003515 979996066 341260847 322730975 755545278 84202211 866735224 615177895 616148780 473997052 356742965 402947867 463570845 761662221 803157689 627656825 971022298 739534538 842947260 506670108 35706039 568381884 668491084 815065688 191566407 371715032 770624892 283518564 384300885 299233887 495317232 583361287 261491401 981504271 973601615 190933619 507862361 588017371 704341562 479221774 104049736 970175134 272121044 410154728 870142525 930129577 466407588 653832335 656976921 992112876 411131987 687913909 950334279 692601586 622821041 877347403 376793090 792034199 883834953 716408380 214291206 666352433 532531111 488867149 259121857 575456700 352460230 677983474 89840180 314537386 992904252 689227335 467027486 566776411 583207493 588563345 606512567 141469228 431703559 13927210 536653889 383573583 619298295 535738122 322512895 653819220 36405905 876097484 111177487 233096475 977773960 303092472 116237598 507361656 460577912 939698565 17114567 821485052 866644690 652180084 347146856 572917707 680197128 648755679 13749235 301800008 924641767 959556936 775687497 841378089 965539504 283477848 661863155 567419595 896413325 809249280 94628305 611867722 355177537 768301139 869046086 655993060 328022827 381130627 971773730 40656678 195250365 568578219 655310287 212299821 56011982 454041182 383748705 270334260 315099535 776432538 998089520 147784985 907734744 360477047 620019283 630094255 920189536 195239736 491569437 342426893 502994446 66574315 896613634 489750056 28409753 315712121 512117452 772635355 821482181 309661671 333361611 456021533 723226497 696887897 651146744 326914146 373704670 608830017 81251432 531669597 749337359 77902693 465759959 460079857 317244652 614276441 801886805 382070224 29350470 679428545 15472692 389519912 356697946 974251528 508256089 929098989 179736650 617280710 893950080 362772536 112651409 88725268 99160543 699164643 755585385 324178213 619819812 171209704 981259981 398024867 890728288 369540660 125991962 646322514 426151214 933951265 743179721 790280626 281778311 788903514 171414809 267509489 69281528 810824233 220543915 315731468 708657781 957549245 494318343 999336468 740808531 722954416 633095107 870810835 171195385 888519494 55665591 40713552 14696062 493504189 105560866 404261079 910510482 929761825 981043260 85760140 496450574 833840838 428342686 358047808 622772948 89753547 386710734 878252805 487854510 615163993 203670245 397543861 502835806 804348295 304346285 866745562 881962560 300098110 265402298 811533142 706051234 269608060 959408396 792389591 183757732 199521901 423303909 607758728 576117492 190253119 385623136 949616004 209097856 345650265 499932235 334676377 705656776 318967828 867695503 939819845 935477100 558731529 173911212 765511748 433122195 640735986 665870927 745234677 746905759 899750936 699429203 415624887 876649424 110698926 820745821 529899068 726860104 747916820 437839940 464145287 97857363 266450900 308067518 35441993 171714069 431210507 467698576 703302333 403221052 140304343 870792455 814533533 505253155 436126759 659923017 317374398 890643369 590144408 404676287 546104244 409893077 87588032 617198386 102490919 514361341 434115067 197606577 977184817 215437339 846379852 939374494 553682880 474923267 446362002 42425824 228248253 238973380 927690860 281770336 633883944 659832859 873021550 754366064 869812058 456019486 969702837 379905376 64323639 644350634 736953208 734094672 533583473 980775568 987859998 425047942 96075889 782815456 663408284 891834398 611266210 897146424 860449531 858501124 183934810 438079724 584942629 641805518 888579656 306571778 369951774 205720395 860941087 307835556 547224134 184165886 678814048 786339843 977328388 754939058 912609509 959776800 926615928 854709577 331452322 668907417 886507541 996297633 367484280 467079122 351065274 334503055 611455896 375229443 33968589 367481891 174151372 786970467 609567470 616547379 162922060 920122455 707977592 438952672 628296769 556225775 468616187 632541513 994133124 639874976 745197660 45476678 156939088 372214302 635257294 171477718 811941426 233879457 881926506 953715771 891638554 448476667 639826464 274678587 259733648 335934689 756159680 463824356 762241825 637373885 231606272 464267805 60612112 10306336 536093186 614164977 100309051 352007845 985802700 833103663 927157300 91096605 927228148 740608716 132381981 978702452 956123669 46006375 188274977 147249175 240101911 178045824 917718760 853551113 870576726 698805203 213246967 573757700 618139026 162073643 598268343 536060820 173674584 717617070 476939579 88241703 794264625 344979669 159789972 77151662 637471182 262233141 236755026 496783672 415709680 966797788 703739579 236028056 4667184 519006073 752104724 225708561 489319994 648163794 323475613 110979950 357776559 278438870 379544829 113981158 134638947 32983700 699212367 636550816 173127189 968517959 208072953 515631015 276126612 306567287 509620631 106396078 811102252 309692563 280416263 307686942 577315315 591226667 298949227 859067910 845896353 33130813 242079777 378956720 595058758 315173842 799170745 297684993 183401544 912702101 191617351 705883965 590110423 340920056 384939621 199723609 172281588 733920494 436914699 577664778 557391334 394633369 278643131 7994445 325055144 580365727 788265892 764587495 860584815 68468208 426198549 325101002 77961769 420799955 66085129 997798221 352461996 289067674 699896793 146519072 42630304 579415480 790956462 87615046 123954919 810575422 333918076 654768290 78335513 740740146 221395514 843959040 876485942 602178256 854755715 877339533 269460642 100189952 155150862 640629742 350789400 457291963 680172105 718803196 971504408 379790914 144119796 60715905 875401325 981978250 823675878 60534963 158572927 960825092 308018400 560414301 896824276 932921377 966737415 120985496 632910104 198150122 169158974 436658462 178821618 49731181 967659260 296792489 5855834 548160379 919815451 388994381 357856628 363126903 32413758 151790502 436685624 422853953 948824544 840828673 877032515 758107283 140704467 659557203 340320546 349806755 752765365 964102382 48414669 702173369 693238692 513427057 648397735 882994933 981278114 68430770 427213172 766204043 297831386 497442962 419250051 160503149 251356282 944282816 828982310 59449239 460850216 257136945 67438719 954874336 218117538 784164866 626557030 453693867 949745679 947158581 316336997 240830090 185325851 41871 762965853 561549720 780220675 579932056 729773627 503881383 864179800 264545606 482798462 390158726 248532361 649925988 571496408 908771962 778314251 632650102 884035204 131224278 217113235 329597998 57455183 542729640 737097965 422832399 970874202 586833899 190193279 960843886 261726178 691260661 892827137 312035721 238270142 12680569 950673362 306895799 323495036 686005514 810997228 10948626 552434950 885861781 53184807 869470261 184869737 583577450 309149711 530483269 116065891 508182713 203439190 267496495 299251832 511159696 482462548 915320013 621754827 18215777 450486384 865171945 782265602 167799229 283686430 943880802 775036781 668193377 259681627 33344241 525108201 317226236 344431226 39917137 550342673 425379500 422055379 592373385 711105193 184914975 190619414 708726985 756655495 356639409 507589666 746548260 773461974 325765763 39144984 371999336 662216879 265315229 277897790 614395712 704457524 219824992 47144030 57186733 279868907 154238310 926430316 389361330 218426657 158539013 221535936 464278478 30634388 755095769 555997470 943822598 703900883 208116696 508336999 649913467 414249384 411558538 195927289 596768084 366963140 68893498 862767597 666899460 438031179 953958335 51721571 240920784 803045901 130574609 581631190 205940109 915377364 897880922 29026214 999524281 450384575 683132509 162799350 541324238 73682576 752069399 457650189 544727866 728445815 804071618 815202251 136022096 114023617 865280327 612729254 295236911 506620719 19948905 382321464 407515859 113524735 707559497 386927006 437946381 568526230 52792932 427713150 23138849 309467297 706283364 451408321 276129351 890631312 862446211 297358541 572685939 385461690 841455833 735139413 303736505 746806464 105622750 906981057 705550190 388623556 971714135 686739092 99122334 265814200 111695159 977366925 206331078 302802576 640983094 83999449 416748223 821369164 650245463 631217617 373835553 244599083 203456846 942093173 944922428 454040997 398078640 906302995 970668390 2079055 203321296 219635632 179148096 420001126 385630233 704231067 304440511 631571344 700405492 453237637 260867669 859677460 991846423 202269936 626232851 878286882 4434137 20926613 675256625 134091437 271193564 367283845 536177951 758839943 542581108 582420694 789779422 622487963 525343806 228692913 719877994 818589436 226651258 961036075 825388481 226457592 198669353 99612492 37323860 385827041 36671290 120328859 884005207 63696610 757249613 935761720 604542388 324486380 935194087 151266042 864245141 182390717 292579160 103037688 865600383 528270502 808465222 902561201 985522659 916164549 142436010 741668234 51088234 829397293 245277994 831888453 766181320 123976866 255238108 788199063 452728235 923202987 762456562 126337351 441160171 595534784 310434570 252197188 642563049 223091085 614770401 145426946 673863958 496694013 622545257 560534999 359526218 153023607 523303685 613645315 941170992 439214416 262874745 767492504 952558915 813926981 69493135 192884290 266367511 974714423 520009961 582816020 517734312 599183034 774607573 48154643 370457203 303962408 370535069 543916234 779226394 173884398 209389367 485495185 700012007 882536909 451685478 71918496 126076809 571777691 327408543 773724673 985062474 908272795 356357211 763643547 492555764 846743664 750630594 765318569 337906677 536666541 143916621 688404828 234320000 951056758 99469344 988630410 555699067 222071140 469809471 147138395 332862109 222180369 248483372 524857901 753900047 159216838 551356524 38342539 923535399 956466303 80350676 254545658 746273596 246078023 729356728 663326122 484946155 141101110 500664769 431165746 336278161 707247928 508749602 398454068 261392823 956155393 965188795 762542493 726235142 66137616 435095253 661689601 256818970 940883484 35484687 730007211 81360352 318479066 853524614 952473296 935054386 625075162 465198325 995206366 173361730 422525700 646017223 792122445 876628957 249643727 693815011 500341888 149183911 81764629 199113676 912811097 331613995 204244243 968155931 755761627 502208011 134700901 404709586 248481649 540119784 857359968 219138307 616721688 113449039 804835934 689044463 839776102 386987778 51082549 197108957 72453105 919682043 278906897 907793156 369990056 966760027 648641850 563608607 458564270 391841136 171307382 59932094 463826455 250623318 329925984 59479903 901581657 635860944 895547129 657637905 610031919 59050651 419671115 444973349 835540134 388704795 705319829 768210317 896515342 102336959 948899203 361272590 58782088 256481503 242081046 313267163 567563875 598700271 361600892 276796598 481408796 105333489 275107824 570220052 309561968 747625595 356854430 632197787 669417568 217288462 984814418 91261031 614768067 345232506 401598478 458912039 482850808 610126296 823532074 891777407 793597026 578816905 261347604 861428795 384413765 997027109 271566189 58208301 409975015 437431498 621767498 116122073 847439575 973700378 329674911 498603991 823949965 262344167 205680606 464913971 84788661 945133925 779707972 870461822 820826019 244571872 792889987 244385973 308195370 563996862 413669131 865464332 7458872 778190723 296741641 123837651 948909152 950319404 338217775 757068776 71845193 884208572 375860818 541117781 700009480 122564072 774524986 634406048 225197276 832503593 648992002 900367242 699004360 389998495 773920121 378618317 911149722 39889590 429626459 336566218 854638563 571915410 20609651 392675006 834115733 265462274 700783425 349710950 174737676 585622298 836542486 581052850 573410453 297390351 549996972 860706180 827185986 970945446 256877304 218704237 56525978 267817398 194374973 58226752 107546115 61322784 56407675 315602276 236034081 724513728 579446924 135921908 968902721 433252630 288350405 77259087 950212665 72847083 570409140 736308112 697186712 746607810 252361556 881737503 796305089 977332571 978703454 638812410 80589973 297035805 267841497 23633891 94679451 716904214 959520418 824521106 633508287 265726461 905019121 110279512 334881407 485630916 251179003 681170067 748919268 805856827 261997377 19542932 824195974 684270674 592680578 321704012 189108971 810716457 773218792 621720571 967712929 857723948 873134245 898765670 366700345 730549715 121116061 887365576 726936996 434881554 939056378 36531696 716436897 288316353 59951488 154001546 6628049 36699073 738774505 753927949 900865598 499724648 601482097 462480816 398960929 927156315 668293148 649217663 959611593 155506684 292205924 587902203 357867801 498757586 830055117 846048726 473687068 738758609 480781016 289976213 583741469 352964330 159349598 925848817 972705089 635832448 934478576 414966627 229782644 544544498 827989965 842687379 819332528 560641477 956378633 851735856 497578393 169426482 832690425 767726387 495756308 606925931 453451742 740343799 491550342 374533944 777030600 236599211 428170892 931665573 720944098 562782685 884917279 209128638 933502493 464406214 113471500 398473780 888478029 149071641 278885998 246621171 812386496 33437993 948515210 83321413 746401012 745877193 795389477 635653224 765161727 457531297 970440422 676216260 73506077 19293660 191734461 68260818 160994508 408627225 343801355 328409256 767073830 889677942 814024871 254990824 124335646 291347061 728767067 334138907 448818945 832666328 423063983 672424832 946766552 583717901 40716656 596898570 720715908 308048403 404731783 75832550 874178204 47591740 6051446 722971307 706655584 180478563 455411675 660190229 55063344 760210863 816437674 3146994 380210252 232908449 130124892 240003805 313455299 15729500 344467219 82590547 768737600 324606657 602178472 513449479 391006978 814459256 625825505 208212862 814824113 82275129 436996012 200239849 459490706 611179949 430141057 956372105 849685606 489715177 890137919 113172627 579103931 412377240 350401158 460540573 396820856 13649540 573771457 814376526 596734886 700060761 748693175 440874675 877547268 923193548 144511638 773239680 26055157 354644438 557374338 997347190 802024884 877350503 347335271 938264043 221477398 339012697 859127644 748803909 980022091 785111021 637261557 308526507 599785348 631250892 257385569 528302456 526730945 134659340 618849058 662319262 460844637 415575486 297410692 79141686 471586287 677386789 662380379 265051154 130660597 672994660 566309600 427863259 665836325 831225610 495296290 630554604 440514961 236347491 778612143 907450824 815070229 999210398 665794285 972935612 626828574 191790407 203155565 870913399 260177041 550882154 565619788 679214424 907962661 424686354 153534910 499836743 511239623 604608870 854350272 559697019 226473042 275510880 920695078 303775125 292826875 646216180 107211815 946637863 893873887 183451375 175436760 81030425 468204753 719560579 902297951 309577648 302431572 123444996 364423887 594956480 226749833 671389115 545054199 22867819 453843995 888708466 438301927 99666871 42881745 674250445 457348010 191303481 320235823 2636518 343284156 464707902 787906023 491249534 668805097 564221032 824301656 210396930 29853746 759007761 696516628 991443209 304343559 437774570 974261605 983614131 446938427 268599623 487493346 822703745 934153608 65886058 599595992 103063201 305888835 457183697 902248551 259380521 354872190 963127951 822336808 528256245 310921117 298878786 801758194 791486994 162437316 224259399 229034286 642300349 748690081 450571402 791340398 378889685 681952345 172348850 606109065 366731419 171911101 28926544 152808018 645533877 14994870 68240886 323906475 800644918 365845245 40549920 298614433 687133315 701146462 407273958 717205464 113551024 792087610 288346151 137859128 162679199 851177997 240468991 53060849 399067148 342256227 178502867 375929225 824844276 111675404 37498716 701319466 783304676 521383146 910769561 275001645 609852221 877921580 20627760 474916241 339639667 801193178 938495992 851381313 632099668 925567597 534932661 696396263 537264769 122725584 167300380 211235019 372775202 229152976 899003336 380062389 242201832 780748144 704747081 104336844 614547287 301593146 761866426 717235115 687574702 837909251 36138072 906080315 504606147 997748809 205217300 439697974 591846568 531935916 349382668 259349139 107341436 356940512 661062970 170751332 35969659 114651148 139261814 688019118 661932127 857591700 115568629 406503360 380405336 316987901 722690247 153047982 600699940 690762724 952860957 531699713 977752884 102374247 956595242 865746611 777316478 387609937 301261497 371802382 189155073 752403148 497833162 391255723 399456567 366220272 989137241 493477853 315968336 336917355 765472833 688391590 592084508 346141581 27399433 157427324 673694412 512939769 701409425 409729773 676425747 399193210 204757009 175740760 986456177 664283202 197106812 113341829 763140648 80676708 939488043 250171632 540570342 67567426 178846387 758683481 268319623 377680392 731691407 656753625 978290212 937950805 390094510 437334971 390236051 268675060 427932076 471791138 512503414 286963602 446808506 474690886 687809265 836088303 230010872 605033243 121452029 327877887 292032626 120031376 20648494 433674284 85360967 794703107 160001077 553642681 825595605 699352843 185366799 42749415 549342569 946407057 492097275 204445077 670414379 155681567 493102367 222626848 393441926 365921682 779491502 207823932 724275085 458588370 188105911 925389738 411395073 182249626 916535085 232746641 864952679 83177769 720117368 991090411 72712776 350926612 509635320 67007184 5906632 474615455 604635877 195629350 195051736 478183442 966838928 142377770 277163495 822474296 509851398 157028029 773093207 401322024 377119365 754223264 547537325 806085682 112637122 677943391 447374415 217562335 965852620 308318506 898547514 453841684 789835790 49032686 568028544 930870435 325999561 919583725 799848558 827331891 277785936 885462307 56054651 84905304 42149096 42054115 114714361 782654786 545196589 452801293 350904721 92230587 551007724 625119595 190186953 497717649 865322865 883660916 990388007 830716147 132057229 882187574 570851108 175640604 605744715 454126696 479868594 414134128 941439683 377712424 920584153 519491297 244731772 579931307 749117029 736854054 335475409 168945557 678910164 470246570 384834928 674941080 54467879 970784467 907427457 280275852 863027945 726954282 18476452 337651862 314329321 337631984 548671625 274659311 818158852 659615462 628786963 271929409 106385818 813238358 640720974 222120866 607109553 22784933 296911131 915801069 743222738 563433064 943111786 42945847 157949678 817022247 614222690 240823533 404197026 240376222 612343943 994906985 407527180 228677679 77055203 392700703 241759340 63992743 816564846 453891059 221299002 234462012 764854998 445988495 688951045 891436404 282083456 836934626 620411478 995095044 585104395 504895079 155862277 369191309 164085047 220144135 958382663 249837543 270046072 776941560 668965125 272034488 261029231 66795342 431375247 546019331 222671805 417469158 341247949 813208928 748163294 402928776 477220517 227030323 233793100 127577760 537658139 409263635 726494569 848011060 487312460 362113307 934420338 631500326 853791890 979515561 805844704 137144629 466913743 764600480 930332639 260496620 11782299 548774740 386161884 691023943 41514720 839687744 727626877 604427171 798552056 694649287 2060163 582812308 466382924 593035387 222819781 990508758 705157270 253066652 856937895 474496129 699972013 241066961 649303301 349444288 328656981 60467491 819642521 912154433 996524652 554459399 231918945 621732619 142376409 175844905 333914892 36437223 431900664 831726340 769970699 460216845 638997165 746845264 382054581 538614613 116376497 488662977 473523610 871875852 755151011 677139340 58374866 367693061 828016733 800838379 182230647 354324222 612348663 562490107 907823834 248205561 465773814 722897190 825758209 28857570 634295136 109614599 11993130 467249292 477154367 600619409 911171349 965190126 147238709 814457288 539479865 569605358 84000038 712692466 109494731 228738949 925713766 545399758 626597386 985303579 445841186 660445741 482237881 918195001 545362799 200342602 844563468 448800470 498849137 143289972 268389809 761697989 40185550 449314983 678282982 385423812 210419563 651144821 120373787 67030056 782466558 47032778 144589377 968030650 202632425 975313618 245471880 60633668 326712477 149146984 268112830 565204878 256375229 85201628 449054712 392550257 348459351 689627228 499711421 639472271 911674659 744189864 203315311 377966836 327364103 636686760 397025890 955480759 324010773 613778357 153174634 786076250 981950693 934593284 781741654 331681482 875460507 600573055 105066950 247848806 72398759 748145720 77629853 214838610 950724856 522219720 693631367 458689030 269754558 255397842 883833543 338199266 463405157 302257863 241597524 120730306 218757962 210079489 544384100 94603446 344661276 780859097 308948639 102380022 759455752 791077704 758900287 100491985 272211897 556040928 802749121 356381762 805985523 343125127 56907545 504033121 517053399 904844285 280030460 275423599 120022628 404554416 207192198 747570375 716677546 614566510 302961139 714845477 894311397 141012749 724732947 748860951 968791447 760379403 863551941 647494987 756598047 334267371 416784758 794081914 333713331 31834199 445670162 855034173 712329603 313993691 959934207 289579050 742511860 282155432 576846757 770251665 385300014 593568089 308421432 258716486 657357118 517191321 158883830 73586513 675950387 676780047 888936454 981708736 198206400 649175373 926513517 205415198 109836872 612010971 184057656 666792179 998543246 379703273 850278189 663993377 578959981 409474763 383092893 495039810 46167679 706758151 172151620 726261967 444842648 202400807 135848211 735155896 503422333 752995659 561113037 100922300 870039448 814801112 60532507 88330513 126683742 149602320 356412677 940863614 721191468 632370343 267643617 976989923 600182601 723751686 969681384 423066730 226801455 816036921 537087367 114256522 24259069 980052095 99853753 764332840 819199036 744460495 669266556 538200200 776542748 966535657 613315976 841613972 947647640 603204256 460243072 492942811 8691211 695362443 527031941 61443612 948645792 709323896 692625768 447168895 19704123 661722004 516796178 9299919 36162687 195207770 479690752 271401040 50226656 815044160 509682989 748786591 321202195 848366928 627489532 221571954 464968757 110981579 383917253 269121991 41467789 417073545 969646165 242523482 284843948 636717937 391607950 472893849 728980241 736641659 35408667 151346648 598282297 333381138 965386527 975080174 850450338 308294592 936088567 829804659 253965912 13477445 532371832 738591930 818711151 504898400 202947084 246512099 956089138 238994130 707587290 934384255 260627050 959542855 268803203 6485030 867516060 875175133 166512344 996243118 830819640 408655236 231867337 734766923 399614471 13270642 882881143 56570444 770014940 222787713 647500582 242120501 934102184 933241830 428955536 294839024 883427661 672868970 327960176 614754167 188502886 188416589 986088820 729683834 699597728 183361713 697528387 712805147 627386537 128553207 670676356 659223075 70223985 633728865 970634186 654236303 784095189 871822392 534895404 239065538 11871445 117457880 540518905 340972190 302935065 807951217 391906460 807788440 814513547 56738486 32134990 587347018 282196475 400676426 211607351 501414095 616546891 164291686 838917390 915475911 281158387 134022223 403825636 919880181 901319287 271433191 779459541 889733586 208199413 438530394 838307704 706413990 36680000 388810185 152674359 559751608 727258605 848574352 293988303 937211755 645760037 341804174 434260549 482098900 246968820 79129884 351716134 769782817 49029726 384186397 919993521 911138548 974930055 494626992 662840915 966767370 674578220 661905100 953275776 289115569 8923077 448628981 397508649 132602035 871166541 752756981 417661753 998077079 722049924 483412305 983900332 527347761 443791433 414988114 148544100 683353008 73755845 224774608 387900442 628087257 615229339 696581624 165908750 382805809 203402458 623177499 919316604 982000829 735113988 740098840 793003016 172700753 169591306 329520583 400472072 819707746 885875107 542754412 963004491 873929302 935663729 952488987 415326042 924057903 422030865 526478971 728722077 396567113 771276541 914962055 571510130 788327548 810080772 212521287 464225226 147516934 525650660 271334163 310716234 607040127 146883327 25442225 254722367 757144427 874385952 529223482 149729952 399457161 926732615 403952409 310898996 755003914 843973429 94370414 623232461 203632328 549177588 236224725 168284197 708013090 731343854 515280372 327443605 47632879 686737753 18303480 244294251 506955378 382391125 471358415 365122699 343104237 50133775 853202428 764806923 517100628 545221516 922683960 356202439 903457217 152842883 871135406 949457799 560070758 475163613 203247163 533626266 967888367 535843620 500200616 859835094 422185614 949519112 198891921 783400253 656903704 441290452 441946330 121259000 832166664 753034987 296984996 431167965 348299032 54761668 882531894 599724585 642589893 160175007 811780349 684149125 528101525 587895946 204666863 353742412 523576432 581286148 541934492 753165536 22358288 330185360 919916811 909090866 974131949 960320608 300744309 473306379 45621721 690951645 62959750 505148463 196825870 152052145 168157945 755554824 389681613 259385709 750453102 861484389 321278902 452060455 383482850 505954119 880705603 397526032 354767798 966014552 775641959 553115774 808762264 643818608 507554184 992206106 627231800 371105880 730281929 706834184 978568446 716304821 38838433 534350675 283130362 864303720 960315717 388672907 786371915 451399293 19400502 566311996 90756752 266532480 590571313 89253004 812072880 13313775 177789316 561493054 60456623 263194615 984454879 546477845 324080738 639213063 752549291 56674312 674790879 619771894 822661424 623765422 832018255 850764166 42225399 586904567 304551667 182085143 333263947 532187969 545347688 62345382 444885528 283682780 795701480 524047444 578546935 424217591 532100004 71272929 692886979 488350248 554521055 196250764 662613616 196702970 618244176 147116408 362332596 555295750 404971186 993471026 409067142 232072549 149258694 219446633 483053314 576879275 709669232 961210290 452292810 815781682 251396909 540040311 181611438 883480927 315768207 876845854 939691848 667513181 882113940 995672000 398241936 257770201 946031161 394659965 46731611 767949811 399872360 939172736 947971733 190775453 855453548 868298285 622614618 118963596 765130822 181627452 30115941 100420520 496360906 787732220 911693851 933684070 800596427 615372675 524591353 971389953 888145478 810505961 687694451 83566668 345831461 179453559 774927784 138031038 463096751 412242844 804922017 176640169 856589111 14355334 748903009 945288577 716845280 8825992 296206110 508177378 654215098 229204241 527799589 35718687 631777826 501154114 317275562 442884487 979493669 269584229 433591738 86327231 867251932 210565402 795550967 811004578 937856569 586485310 879036709 925450184 323958534 288359389 171049111 312101862 562277552 184466622 457748684 774849787 402319586 364602412 111606218 108645366 107854476 542735989 64334930 817898972 183452292 467404353 685158764 421979138 73581074 13187202 623746992 228997239 731094140 659706528 247327134 706805211 298022003 580431068 678151831 163341391 210816202 561828226 671340173 211601124 87111264 546988441 931177716 650265525 309729280 659692839 111177295 214153029 127331385 823620929 384727148 590893938 669471291 162211321 451113250 948025372 509957310 260276066 456527211 25989154 858456662 622192186 450100578 124585064 543577274 328096919 785770331 4775945 99828613 171575960 254005545 18007504 159821127 971513618 898621547 715765588 814339268 825581940 814664375 95950749 659919851 298572574 234789491 799884083 469632334 430360611 200212785 541714905 880915058 322768236 457997337 166757671 146106354 898096259 22662605 56313570 313652989 828397206 332725233 514241263 877065807 540340765 340502639 385555823 674845645 143815278 75634341 518882541 324436151 657041900 293109988 920697573 856882343 873838596 22434842 312745202 429958776 713422243 870473345 410266123 122573317 844729857 734461493 486953372 387479253 710076595 741529601 442198485 776785640 468537198 563374429 11062335 296286994 843000332 342111877 525312381 544216703 331586181 398972949 507812018 632683869 394527972 721760703 118113241 685384498 751357951 701818140 144434770 979402844 112824 903430244 70527049 560043751 933094176 63602824 198187637 935373319 482602678 20186443 909931637 593251743 258079613 250624516 195558779 357860007 275151039 550118641 819649616 511387637 371566281 42507699 901183652 944324173 591974764 376694636 140075360 607894720 147474471 6498872 786517935 854511957 748377700 282399939 562308101 94029503 820659750 813379447 976469141 683281909 550448463 647238602 997139524 423459936 507020137 346927320 562716870 773690644 108059431 841596061 131729009 864933042 664158888 981665252 540281078 571581576 658113274 702123530 708412850 271606895 537538520 60901435 141977461 958898849 432262485 747662467 360357601 675327522 217940182 810081279 721246598 409405689 139452234 750689022 450382741 564645027 797536797 274944249 523910278 604979274 385240931 129214013 258088978 337351329 275291885 724805812 977982221 694771077 766731158 422904935 818039835 608099051 419720608 758622509 658186254 402293756 631300267 551771726 273963451 204719977 751083166 494494457 78781227 921397888 787173036 306066072 675415354 805359132 935152979 682513566 514013242 64104909 411804084 319262656 472840330 30977653 542136147 737000546 956211167 42140876 459627413 536695693 749088939 998766170 848036567 36352862 17416993 994678737 436427137 916071350 705108260 911213060 967472538 555015815 205490785 554319016 265137836 140301470 499327978 503567 777848633 46914709 248489044 357630533 229591497 504925752 801296567 694497362 591405785 244131538 676409743 554160336 611976488 146888550 793627112 591665810 99315761 564206972 661381840 194693637 346441400 680011944 787811764 733313400 334931424 304212656 918799235 430574447 154085537 172250111 788566120 304753935 187583321 763336421 302385781 257271476 842390648 995740539 786918082 168714449 41779893 285731719 617687087 309194561 657332194 48289902 849518848 419173901 970217738 278587284 506001931 45837740 177912087 190951064 579503516 225452873 653444967 436340453 271254967 418223462 835048371 407014680 111527893 46324563 718159338 339406711 497949013 552502534 324969854 958083884 251734868 603292047 937962214 26637180 602303311 572050734 521451424 483144768 757431827 873145884 239821444 650465708 778333784 949414436 722291734 17447317 670390965 345818446 51866854 230502482 324751955 753094270 195542126 395360151 266484029 759732089 795039447 434911494 694815639 12201603 423246135 139113794 656350616 277465016 157327228 624209096 448716374 969656715 712050563 685688772 86786564 108633398 286281823 824426384 89675620 901883390 21756189 729575948 793237030 637421147 423966134 538299951 726414446 215661656 784052959 811678871 573503475 450789391 120334142 540209767 905767388 470012849 199148931 713138734 769202207 314323374 729471114 237794173 506907127 711833297 340842468 672748016 563149420 973885668 900533598 627318050 514793637 415743925 110050952 487259393 421755824 656330439 638471933 119328299 118366244 878655680 198758092 795458859 197429423 767111973 751763613 729065339 570762038 970796174 815315746 833769099 995330883 672437035 760929155 148640167 922710655 900568673 60095351 925401996 776088924 827568340 896293849 459127267 188747266 540511162 764462527 720356003 38177142 219541359 312698441 425598808 68386296 541272179 478290461 606491144 137922478 284985954 381670434 136875840 122945465 507499708 617699109 644440167 926544311 334234645 259048700 706311041 396214540 647624776 67574875 998374249 609750315 824856813 956080873 919505587 373191941 534484267 479424541 830340203 279713068 178181935 786099070 615331184 112755539 990883987 713909921 802950497 600884148 560240630 736363718 591907886 461387232 412905569 775756496 813670384 638731684 88564904 184723799 759726257 385495644 437777754 648699047 63536697 518256379 912450896 895830996 634037096 466371449 160016361 637815004 524195757 875209965 913272420 797151775 374428796 306879861 202388250 603798764 649347833 589269854 974495709 86468574 642719144 978767701 324516312 736369589 781973472 384977293 346524999 379577983 223442240 217138531 705023938 65970943 632423611 637254040 828829833 106236376 701721932 20681979 170974286 413730332 175372295 390623061 826242367 755753993 609899516 500430618 388756210 599531300 394557813 551286427 403625148 302106712 887062991 875830552 535053645 214812999 487297234 451723939 64351447 152558266 441144519 558455475 257687961 152460180 337501163 401197319 291417764 233630781 324876461 365317375 718143047 524263849 228023624 241583135 995180672 857995474 953765746 852488482 783495449 89041194 161077912 643900378 688107364 198829367 64879210 269990661 595260150 629751254 382469707 680905783 730408458 500339614 793001527 804754946 115461427 765806362 953765739 62705500 911064451 795554259 643961971 897329901 994293667 772274105 586061956 504142651 150601015 685355810 713517179 766607191 301073199 850681681 545383840 534601480 483814040 730362833 930427592 948306013 1649584 819555274 473174756 833880614 877360082 962000299 324283136 61089404 871571886 703461354 889861295 311032650 418057802 423034682 507670678 156681421 892996543 600242081 596127921 578162 717283598 275382248 871399953 586467837 919803865 308155748 963560476 720592273 905122181 742053055 272412066 508065539 354560956 627658448 669857245 824065999 350791908 147293641 418075232 711924141 762794074 38481429 821232298 917979913 642398429 867493483 645497613 197956729 625706213 843456857 893945386 24347832 105700437 294532263 63803579 984190806 559719843 763531700 496461327 690145453 597625259 621620792 31260216 425277114 488830642 615977120 391747794 821722172 232256982 265566127 67188072 810407096 652850760 744566587 114867543 370935516 362964340 164571207 951422254 183856274 757946644 314056505 89437295 202189457 356416877 99705677 963013841 419294814 292766311 651739024 955653226 708388092 409451825 261010224 140525131 237015472 411227813 137339133 638599554 397192829 852504414 525073898 111570926 757946267 844613744 275431524 700783438 16326590 290654720 698098384 601435818 555931425 650034621 802686122 453260867 478601802 499009686 80721339 33082219 321326099 442406199 248304583 701960690 42762259 139244796 313650923 388895129 309313655 900229802 557329577 759637378 269778837 395951083 83282793 956106071 733254767 733303746 654710070 394586407 793287967 160755048 470879012 987238024 706596401 923646845 149106788 663226447 304133727 991238026 950468038 419783328 805050707 503203734 731515304 165584026 584356797 591384533 692983709 294652458 63833674 523732204 851083462 248980276 80439573 92358721 614998397 266151289 296915763 957388870 831841847 251960438 696633291 628181080 333689141 998272477 336595869 290917551 396324888 756727814 684936765 33295235 782780268 506609199 43811072 65542921 946705473 697750978 706211809 465117745 782377394 572776877 245669769 553796633 734784840 761748724 212410945 226990251 60986937 949319151 441149498 229378651 804951017 141904673 309127243 292859914 204592628 141140764 20007422 493853213 542263945 530594410 525615708 812012834 401329428 876955109 666636761 590399995 122219626 674484357 331358810 129013749 505530375 308107269 723794220 773320975 316265880 202982336 254997150 869938822 357610395 468634226 282978799 710242242 255047683 788194990 774127199 358889260 628133351 973304259 197296207 525553196 898166469 473908969 222240900 807299547 191943028 696944416 760833924 448408567 808294528 778770639 564593927 573509026 433940923 789120496 613546434 419163331 318810620 827392184 441847929 342191014 867478630 330185457 305821136 527274261 391152375 414610462 240328484 295727218 581825985 142525039 32548772 402127505 351179287 749822114 176092713 897723874 39875591 248023705 517178909 855551644 685584723 108118674 950713545 102495964 261392089 791568998 847685799 922763642 820178983 346003176 811757428 205168925 277097598 864308951 180819167 155841729 519787413 743806786 820910324 702609421 262907703 908726244 190159895 694578879 687815317 560659105 515249861 876470570 5492625 126922427 329498444 530866692 735952358 147170243 459356006 959613339 796031585 165706554 896410682 504796017 72077344 719740695 732003636 870665967 281617606 793301117 54068126 941604868 521255462 305535469 605453922 631319427 824565593 388028177 814729843 521973282 493592937 812703318 679125398 784319821 614456935 694238033 379030923 764331305 371884874 188667556 282266427 280474285 181277641 232281274 161989346 742758450 640360900 391431396 859182865 623040846 969048794 140969976 431277175 690164828 80066545 610676021 945748831 681286395 960211949 943779793 745471619 713146872 388294970 78653505 117529903 755893957 763002898 222544789 939785836 737953732 394014632 108618854 773379545 890919258 256699913 165865352 611007019 197349337 144861373 870874785 720759945 73749978 969567898 134131814 30329177 876154869 513241233 635581682 99879621 11255179 226508886 261700198 505476303 441497413 984080405 964171431 528758753 678580316 333897304 12694164 354918555 732825907 878127075 518929626 138665913 854304336 123609012 31681172 431081817 963394084 979152204 541207573 946419353 586144684 631885789 512760135 197174428 15828144 803315862 413551841 731935916 637759830 646483829 374730480 223522851 429370668 722916415 451086628 574075273 801954705 77418489 779889208 743862674 732963874 108473963 452032651 41014333 889855557 841103434 858795405 5384164 490727688 771636824 908573924 640866042 920449359 579853934 206642241 362735677 302094926 772380191 798841260 891622746 288018703 971007076 619352313 123877525 235093370 358519032 396928112 960922081 824050029 846539892 19192552 924918247 340355860 640295079 149124716 152606843 487716978 341087944 56566279 366482650 757824295 50112428 101194327 832336445 613299816 79539972 713027780 91966322 506088395 297741974 839205478 648985502 573920401 852706785 794732553 909306555 20898083 947029092 835684832 527288804 798027248 145465377 382170130 691538987 364457461 233246805 582375229 371528707 805153316 582902676 318523539 867122574 10874963 388585489 633755699 883771563 268984645 597746270 866969557 688336191 195447949 908126056 975781387 133092151 55210778 361142985 729531384 649748932 284581533 471518595 611345616 373605315 804124894 145450628 55024390 497507065 116975465 504975474 147052492 348354818 837353439 213912579 716070470 705695149 781046030 748356405 566175338 340442064 281284882 284260711 320431836 337788612 318444150 219697030 398492863 616333556 503835680 689695426 481302269 34331182 854667711 247847273 197667771 877694182 870063158 816629842 509069041 114681036 776023567 450024165 603227920 59911019 416803698 350399518 327212126 468511771 320343442 748993399 510210491 862596601 844118096 77400625 710002097 339596000 926238165 382305167 580500294 777848152 457132530 788523239 37769512 911691003 878937554 986431641 721856614 903977902 931110079 825500518 420125223 504924173 852845719 626353165 545696176 659532776 765316502 850311811 663404419 459965352 864503062 254799854 160043240 202447575 70287946 126227387 970756580 441523079 549646819 299497539 634376971 830472728 612560614 913100917 85319415 260200492 911899041 655120886 664995194 512452695 10820414 491231200 192962070 731438623 457525723 996118250 581853656 192129522 455563464 934775694 142591705 826482812 527470849 315001034 155301089 951253938 110339004 108651906 851066213 834483971 702624462 316868201 364285410 942327767 35975243 63769170 247086145 812782622 530328642 352765641 623735582 917811234 390661922 278731267 345105190 870344792 701389335 76260810 766572643 544540286 271504815 461729686 681102995 665217387 209838512 413626014 908920108 510829187 918724847 274449425 279771719 690558106 595895110 114050679 977165684 782326537 621431901 264468074 206457493 433689534 435742613 371613208 765386479 2294114 381193105 375441029 20432856 303990136 482264810 467139308 898923740 439431097 612025015 907879251 477285435 18512688 907910288 793410627 191722422 343481695 83487536 912128862 788471163 3000699 642874817 303259708 696868626 254179334 914854728 951480017 650830022 891440463 946941733 702979085 750037181 716782336 12298123 68225431 293143632 675334932 327474975 600136313 288890896 314916114 620655773 461108040 297603704 848477797 507470214 200848756 94558605 848614922 595099717 901026857 537783294 41637390 668787605 808338828 465098631 570157482 47469001 103307636 33521305 363510686 503253838 418410014 74822654 317984186 125379914 124253326 653778908 607230635 217171515 600334131 329767629 525163791 920920191 669521237 274984342 745395364 594999128 979396029 277552536 369390312 381188059 150202718 131518922 71045291 604334119 920398376 36539552 785052642 133596836 343631778 535600699 646480851 654779210 58556720 265331506 301065146 804459033 319504293 418384637 655409219 469570302 986772544 617794682 703823650 937474045 919314373 867292080 441641562 867289916 708161708 860559998 427616667 191294487 722928521 641783964 256610851 273058510 242942022 729223921 23213115 608905954 402511439 969217926 828588601 380588181 255831561 119343624 176574243 334640937 420486236 843812220 414875013 667342944 396667613 716797523 915264547 407498208 668898000 236620356 195065475 563553190 211235109 439578515 673176880 307817739 77106105 768848193 166188381 720881892 60680197 703862282 41033178 873917574 825994963 752523678 326246947 720098728 711033578 926329326 392815980 855543939 137946994 348328486 233120940 898744764 977078274 933623162 598140373 135338490 41126045 18636301 760187753 386603729 517569161 472031605 646954246 702719099 685721583 232257863 317565962 767485772 916519038 621454646 146925332 287082401 500966522 692362176 641359802 554019514 561754001 451894857 335654472 88952239 790597986 168426485 968854793 496261935 848098548 334663052 574842525 563211878 945854477 37322998 352164061 530896439 605407241 473839878 502975604 456689630 248538626 736391220 95566304 74952835 509563929 923633127 285639058 577354118 812257859 124430780 389857642 514894607 531092955 983530149 973642746 561823801 290888746 651468162 445772953 978384464 817658168 358040627 853308440 769169312 221131864 153601998 756090793 543533378 169711419 235083102 665724318 301727627 431379772 909388476 944330112 813531419 982948539 668214857 865535688 700331744 168885766 393453930 184445711 788097008 805796233 223579 865822706 511565406 765360425 903910543 780549822 479040524 952080020 923725877 677379868 222862033 523212110 304716720 323109890 550900823 197014687 546948247 428533390 863945299 173380360 535624557 312898715 10184302 830830880 118906486 254249830 39814929 248419264 223617689 116019112 38049736 320116542 158147721 752675625 770260717 49071970 676862064 580072492 805272968 784053513 143299867 653845472 978001173 370804100 97011471 823212555 68808385 834556098 447508432 842741962 920949009 745193397 214146178 902181005 885768865 485100903 377924522 305296688 457941051 321912208 624525772 174619938 834732751 165026687 804738769 733377984 589875633 518899676 487083444 472267624 709275193 138200555 687015998 643339218 193064454 407945715 497142803 795571233 316019763 959196919 64356549 710004850 20673782 816185194 34545874 263140284 58110428 570734059 856110343 759691480 943007800 349665835 453172015 758904214 299196090 770402569 111947018 162463721 74566837 366595539 518391956 704418022 937647522 989539083 45487439 731064934 471094562 607438673 925528993 130194963 71953617 518425078 894976965 306595905 402599473 711013450 505024311 627343054 466677229 608975979 65097100 759248716 182783358 9369014 61523996 2439358 924691970 797785938 273137581 683173887 666552003 611374724 5905104 182744605 750774708 915434263 955297627 942548128 467494938 224369475 162336785 120661177 488209077 851536535 947943356 945659169 511937784 242570183 163141704 451503597 792013025 590060049 692189263 918921602 49925983 141320133 735005875 980696236 978530951 972874740 94913236 124168251 635865462 246159468 629635953 371478921 279988925 220864829 457419257 906244741 927566648 919890823 565869744 974004129 558267623 205390303 579795291 799621141 787470480 811269957 541544697 413538202 132333312 597842841 29606387 285456255 974295531 895519144 597867977 399710306 616171323 739942434 70789707 511390831 198398733 743826130 217654231 557039362 639387222 913790755 652224687 926725850 760666196 834987550 450040732 352582616 113288756 357006903 104526935 320163380 596751225 91681908 526611895 999602577 510304910 229114502 595659657 889315865 794234879 672597437 928991774 524369920 333532097 551962807 982741811 680720709 425502074 898365966 337335546 260042653 637962508 752100760 307068074 335867301 225265710 158307577 340315638 117655539 116190040 513994217 393431668 885179097 893069371 594263252 454171228 225853434 358978771 787199813 540263723 556024566 141266774 719037679 518726170 666269317 927451092 572271510 628560593 543114057 921663102 513273112 140066083 907366268 749977996 878133005 819156260 569589663 161465160 395909833 672806248 843763737 873459918 801315316 403489914 146631904 571666656 242787441 924260071 657908131 503749231 594228657 913634896 652282903 246005450 360182443 125059655 950362348 225074688 846122726 611855443 259506246 198450358 297209317 539880144 893058999 431302457 282919160 596421738 514183204 1442648 890456259 552312633 64677514 162632120 310414964 138292940 652582220 217374322 978184548 859820556 587107141 553492444 687758286 198362507 861603259 515020664 436483631 380155626 186766749 139489750 398378294 162448154 491324674 123751387 606213135 671801722 44838054 766349662 172263881 408166539 528821035 426500948 69634605 25894305 291453144 814454333 760044168 899925122 877944696 931600172 133818529 952085863 776020794 101706009 420179559 266069027 905280182 925003485 162236511 755584587 494870935 313823885 930018036 554347388 130056663 480826805 925658128 308943254 362508692 943633800 103260689 89865803 491731897 463736700 850395152 905889062 432663005 73957045 672844349 775857594 726731062 453452999 600737685 75771257 52123972 273035380 417916725 573150243 176160613 636867455 214322138 823798403 74151202 781424018 768347827 883054641 866171969 592136641 851325385 402906830 240962662 168647111 175976964 314195371 782955719 80548000 628383476 326105563 671239556 484767882 61608651 435123063 958117622 116643335 115965263 3356607 859260722 414920144 816981758 198773295 682443765 206326885 598146990 628719452 967637628 813927297 571135128 310431248 737312652 952416609 954485924 950448155 161482103 773570478 287744190 398990384 247985852 122579482 703121708 33766297 37376847 209872508 39635098 719058771 406890024 588797684 665788343 190214941 391499751 646243051 644254801 330432333 157552053 226325746 493524938 438799848 215267090 305952920 680650787 464497906 477723434 909549754 897948418 261692803 679347077 192542262 278026745 434450131 199660109 834292121 594884970 533872609 888727178 975306376 660544562 746214629 946314397 489943076 60933323 986386155 523104218 974688777 909701794 653816450 286502316 186800133 997947405 478765236 879108475 124601868 556047788 985763793 6738322 956929617 868816659 253930205 926551211 988930969 680138494 642794805 233497707 345984051 249356985 634398277 405786239 272983168 54380449 119942628 808950151 53211164 953567552 96864877 804928365 844794725 245412640 439943235 658907648 641361468 602984621 517967624 175711339 467808808 981714571 5540165 571798978 991650864 460517393 747697777 594577910 876760024 777450077 342647382 697608557 920155137 244156499 387767452 211970985 411100861 985639506 593798513 630386450 423083554 197588335 657434199 342411244 609588766 623420291 837359274 996543190 933223980 185713661 358966760 842783948 810216401 311174549 46197040 881145457 692879526 506125435 294424866 970909098 217431785 352349737 749560446 969340682 840130750 469092298 352057217 89800892 432495253 685182671 501264006 442787163 955398078 983105106 522425458 732288290 690760229 537828436 645135369 525482929 409187681 983909958 234382092 754869316 988744077 94266933 779320835 726081689 281582061 731104898 726944394 988105791 194821807 392212144 984495530 480268388 749650558 211123746 753944307 495578951 317515906 903242140 101955051 23917757 495547131 628828655 139735351 526991850 421302541 951567670 85217536 120886799 923234598 984829851 507982648 536074544 697304071 252172647 352431412 103374627 200074101 240504728 71412615 757049084 648614196 880103658 128638811 769322454 515732583 180858300 509192975 189406554 435801953 382211145 161597309 174236552 284201370 117031822 389400106 830061695 271430517 455676035 62359709 50538994 272475828 622741227 111966207 858327367 979402803 99590128 455997092 17563312 193269786 774865762 168237300 747308761 568938019 36456419 863109772 406514655 19902877 112784304 218120269 198746660 663224561 520826168 31619482 356380703 595423336 805150690 595899200 634091784 522308301 940369641 240348018 188631439 630404532 54467802 162285011 426679162 627698080 703992107 296153913 244183016 536439020 762094281 255750091 607883539 513666205 479361634 609074355 594891945 159007763 404354880 194307478 756888843 121834585 359511374 670787543 461244933 130533437 371706801 826907692 530920653 484757867 563595041 356136964 778309186 668657933 27406437 23343364 24640158 825475475 931810134 724809288 1586164 619812424 909968847 178728756 748593389 433281028 495483315 399393101 42788998 78816439 53829450 747562614 969115351 953570244 814686037 54917249 62072308 669113149 650769401 522327260 836361745 974081194 242387712 779168982 141075168 378691117 686727045 407097253 544256283 649001420 544827188 33170725 637870462 889746345 64763170 996206274 388778936 396846100 786088225 204394311 454005302 3291384 64432569 369366032 744640157 541482872 96601109 874792869 520601368 877701776 166341655 181611154 809323922 309801809 218671141 318638056 655662859 782435557 827544422 277149902 152287061 112132325 742470903 238663759 839075560 524337613 799831433 24949147 22027310 385318773 274716362 976400814 273740674 535919183 958849230 397460069 378218733 595066962 608837708 872161605 913388776 216827387 58137093 422999837 628708641 312939424 617644489 302467330 27079280 277014845 525724493 330797178 438603314 990257683 445857077 682785374 599887267 70786913 77461290 776178290 582967955 985513943 749234959 430748183 60199483 4511838 552770186 537532459 507014415 158672857 861580638 147142877 378509992 602462469 565237602 587341614 732826535 58800810 473378431 148782624 130878983 441907711 555822036 610362273 139163395 877906974 189712843 127695250 546670462 944121102 407887797 730006169 70899854 992531508 427510015 341869449 125259949 125658216 357945362 186198115 88908051 775532737 608017633 287944876 729124249 44898242 35720383 81725512 967630914 388187939 996589867 10548551 386637022 822285339 674831983 684713184 368576613 653680710 892823953 513636452 831732078 999307935 109738821 53445513 404357843 813147349 788056587 718593490 186685615 814227536 96600748 475551400 404377046 620099675 96335274 244850284 766488784 546232239 180773046 961081853 983283252 528824972 712449649 77973037 264947890 681505401 717932507 978131661 997435901 814526092 455290401 174593907 314415756 363558743 355004990 339640887 250586032 245862890 670960113 895033227 564006790 417455493 837162573 590965732 142317029 758705634 136449994 215967886 242182386 878967014 58422425 644286247 954592472 411128418 917905623 520289525 700973287 727199013 259533054 138397063 584185 735044953 497731406 24355846 661670729 624767126 184935055 764967564 207802684 26413108 72422554 121847889 214279629 267429649 697121905 919173542 373875464 419235887 625245980 932576135 837417868 742668612 774607823 837254748 132439846 814435896 52243174 623763829 32801773 666184974 776798607 208885241 642397610 263442028 839285325 17431540 38672045 476855263 193144614 403266690 977476942 895106045 729338671 860206088 58147419 124753845 708691218 661098762 835711179 619331147 638652419 967103508 317087235 739808285 625216287 364654176 376396749 920111635 754798318 115117414 671180354 65322717 99942274 325148899 27811641 613669456 234323237 23745773 674156513 587906576 261025790 515803058 93560056 507156557 731316280 206108734 385212857 373899884 990808360 478513703 962062072 692483918 151900146 988842606 147892234 133937627 722766447 309501097 386147429 554343639 878614663 458503210 359222857 721743003 548894815 403122475 314751184 807841154 418605833 45832507 672542817 752669418 569726273 485571552 740187389 452250196 858063667 271360127 404877888 111938285 962504994 708304833 747542770 497577350 926347401 84805870 219398299 61680030 479411597 711238753 587014983 847523550 122802112 505706905 32312398 676692381 597185596 982125637 95740691 987256442 95240625 559167744 866640961 160628194 81364219 162943028 630462903 831782389 574605576 789195417 380333120 783204111 389967053 967080317 673865795 459326893 309436726 545661867 814235771 578664399 666653101 1981842 897866438 496137338 385033213 643093218 736112603 150147270 346909748 42776924 184267842 469403381 525660868 8950563 547456211 977159838 916306648 471959333 260135929 339174406 163168156 939591600 105986769 745453350 624782053 884985019 475962229 252473440 758700271 753569894 741135146 46527660 835576717 862658250 969267036 181206103 818414651 404735484 429338841 683795049 360464578 854374622 705872420 913162358 24510979 622981026 592930721 393411489 50681392 271191952 339465341 713442529 238374630 758995982 328469337 146662228 274748819 926801084 757562914 177758511 515291550 823230555 850246259 613010426 759728387 468596974 26236018 60646236 583454160 744668376 954052778 357026058 991622882 392075445 712108083 756341510 702707344 54932094 677689069 835727757 666290832 458586048 707497075 195647720 553964138 165882619 698404495 150094285 894839050 874663888 684196426 908381641 224476262 926105615 839871725 154231112 772521788 606184575 636980351 753030930 252340235 190206109 718915109 864105289 837875661 652953829 435382440 566756452 22082790 998586693 118597213 204186856 416227055 926927065 393672707 748214309 102588970 703608152 594275842 247697879 546853762 5788292 107002556 668797703 778226945 711369261 839084039 501050985 448533728 973136299 280857627 863105805 237772861 284823279 755035058 633335317 779688776 812552533 205313602 372139433 715463312 667388783 725189693 132989811 947341907 150212548 623305562 762902157 682788114 445212207 973005217 446074410 348694391 478925365 724977298 715550664 986237351 834601889 414079451 636951290 307176881 935088323 719618142 387453539 859500628 565075698 662106509 687983139 102656105 42146285 568699871 307584230 284540261 528701110 56076398 511939165 116735158 795606274 915733959 848813774 923970236 612938906 530146399 667575542 918729494 745107658 99746255 581576223 769088584 578988570 899609427 23468669 159725183 183952562 341365340 155997283 107331669 48879058 983566485 44872110 153026503 359655011 560305647 957566224 845822000 700221809 164706588 230909352 531195732 881172571 298802706 453319842 575136737 674772504 814740418 844154637 330431608 541897449 344245653 760600851 320483131 270690402 543573227 983626678 428053701 711543462 629928983 831802428 547308855 630402509 824375464 132183403 890581686 187347835 624694741 641855756 673801467 280749050 835088276 703276933 972050745 915185790 531994293 285624863 38988040 89292354 964013785 223503380 141182311 739997305 393191430 369832777 10297541 504330427 726711517 769964716 622263793 428537900 168894076 921342854 811597468 416487359 378088655 34516038 564876939 64617203 577389447 410268338 731605622 343210331 500631612 729468161 636194472 543689973 134029279 127832300 373293707 350569399 142116266 395953739 581116510 345189930 473102801 101379442 499268936 959442279 908004188 897564062 586412406 731401180 869582659 373675132 161697266 908987767 527339707 637454085 932520199 50666130 901811777 273611539 974835771 843304584 718205652 583513258 127932511 597827974 639207775 243572302 744393412 572671624 783209338 314143559 666114110 551036492 856206428 514702842 701964408 439585952 376285425 434276658 743832580 127532095 576799498 397226293 62279942 511377219 554687637 471803977 196605584 232848810 778633182 746749539 671754986 255123300 430757863 176268008 594582857 36346690 817846684 895675872 296754920 967533950 723263341 533642089 583550835 839587762 481549800 63836631 663493238 707124077 494464546 338151182 68814728 148731044 450190515 243291105 853323329 305035229 92436854 586986713 245362019 499938716 3900508 706006706 244736735 16479554 610510262 446681226 620811011 412962853 114110587 644346291 188393398 632009501 402651001 581619280 134435544 170687481 142587452 111572755 714696889 779337794 756256763 694056304 191142431 237746792 996046984 799489984 76070460 143885621 732161264 532409138 91607002 765106988 247671305 800947377 146513627 425754754 41767252 20388395 575616796 934191959 812515050 290330696 9072886 614234865 616042951 666151002 161719825 859381771 592157943 825907022 414070036 22894639 581070330 724727684 508700943 780110926 590172144 881193240 833559720 947439905 676236632 452889216 738062965 443628887 806224784 648075676 904111719 297912466 970983512 228534137 223091773 26190981 356975178 183080449 549637572 943458691 347858410 387902740 63139507 268679053 826128988 666424808 823633289 607342521 914031088 451146978 48454902 668081580 854773150 108823507 280684442 339180257 618283318 199337503 239358915 788547957 145049534 470051237 207369303 751481380 104463938 204993335 406867042 835338022 889745165 542180147 169204553 483417261 354819797 872859965 114590888 223029046 15002466 516152204 494580495 187402418 556778132 250989921 483956172 987777223 304269992 727198658 656381810 751085882 971877430 664005667 64633220 26162027 324741557 514500672 152369520 656237953 786420467 116682888 379984952 393349960 28759072 422260521 359060924 894096735 346008187 205822289 112725828 713252394 598252696 28331378 165140384 725032107 213046717 127259014 572667279 299343201 886091431 596126957 54180587 425776134 986550913 121467705 914489484 414141422 830339073 967820178 432908538 765525685 697740563 628002609 734661170 411315155 909974280 784211888 206487276 254620021 71842686 421662276 196820610 836775609 118605676 956230042 812687501 770182511 518774542 235483077 296588560 256353039 585874221 61005141 305857603 656784683 394743334 793306775 549353767 290236586 595239054 230113684 762447271 616467607 801843278 960951257 231323170 152417959 431035016 363307893 606023698 578760041 103031861 271525127 78460646 564296470 461897709 588839039 220335362 63633182 369615960 960100638 975053241 43783452 454181155 115138673 472177025 594703023 209768647 816577798 319253731 630512214 901509752 501516846 517665703 423170697 857251521 725367030 682300003 784444053 743895452 97453074 878795489 528140818 877274886 436344279 802999886 3125176 409080682 257343664 271309665 592055219 269585488 495299353 498944583 436866366 407820332 430185142 416623549 278751561 680109913 191733257 139506183 701103651 117431656 691128989 927000031 793826602 819569018 456165472 979049604 158865818 288270846 360526837 163825601 438727322 606742459 619299966 260838635 61759869 352170579 418041990 573032122 990569579 164019021 382021614 928471088 722038225 295132431 563823589 913129825 365212456 395722492 484649759 168648474 724803387 800384831 679824169 527834844 577887280 770636571 742872005 590227715 601104528 274389456 760553313 777654511 412955932 74506902 751825891 425472480 265816493 396548212 240302331 84911317 672904510 506664235 98264099 567629749 84341686 929177802 435022527 689573571 878089462 725251337 412517979 606880963 390380283 252480972 986106942 896627652 329802416 363685363 107012174 302993608 933628544 151087869 809099767 343862992 352761076 651348318 672055728 144906109 109638121 577493196 35805749 558127200 495634648 401196333 215449100 116332043 843600432 536769204 950128482 220341635 269251916 418645422 176416537 852774129 231646242 417946613 815065943 942943652 449389733 33359026 629245385 714287309 204754596 827608580 160268087 67633393 240658500 332341584 553861173 417158948 74854001 344679477 7078251 229408959 85729861 539779920 987746660 10434688 809119325 948937089 269034340 617199936 597448231 167507830 206927907 215795827 376052419 987641613 130251194 157267442 170677391 641341637 163721108 189933402 679978466 371534710 564025867 259730880 727042539 659612895 344157666 375288896 3194481 477855671 203591574 504390124 227214182 109077574 962034598 438937957 67895732 277942722 911658387 993186336 840101319 409894637 954816993 234271301 260314046 874141046 916834568 110776512 369140736 660069639 526031770 34011478 677883768 693641227 386751157 974156815 577435620 238014945 8893283 612508100 249128808 591667915 577445463 226214412 410202255 99187989 763760665 645494032 563702683 936027836 581258544 441833024 490433133 49432643 754151509 590871074 981365572 343614584 96201836 508299923 161286763 51711285 491668789 388447207 316287910 133729943 716953321 965994365 659039473 510149912 249935247 203450707 656442967 928168958 391244450 571354170 211048908 140927967 533708473 536994297 470844087 546981687 883919272 670202842 935836936 385237643 501938762 178338452 134864839 905578339 256929460 601800650 696940063 571058074 770260489 601696772 603061508 991678963 694902341 581785423 431470810 446188328 789475990 989529608 654778712 604956907 331353199 48488891 464332216 12843930 243095048 176986772 68016734 605060605 618205641 37053922 801015253 365547866 128606341 943281633 215457022 52864550 646950486 161346251 694879926 616908375 385330057 946855812 836677725 901487534 616753196 683376350 93802403 744727614 206738355 55425019 360296958 707338443 890516663 99434930 64843993 623530448 920855038 257184587 169094216 251277349 223059948 95173087 583920046 882650217 717129886 990230174 545309126 124941238 759850601 678373943 366610571 833173859 971005547 203503519 542449265 646964010 480130586 76210241 547806504 159674806 650668090 186813279 915715375 521152923 269900560 954728213 516429452 704769575 388274375 966613022 206770458 816349139 599961233 298576994 26218244 684892643 471381073 50498936 993698323 751570592 533500416 358316019 936956346 18131938 701829971 165970413 790826208 618277797 740865590 586755481 945216342 410595540 444772099 41337735 345577799 926704972 23492335 882987148 796854438 311883290 81590040 483413426 54693687 876309757 219897131 407900555 607298103 446278259 87908844 245571366 721144179 182492233 599250721 998003438 516705112 710922698 294691000 603270633 140067466 997586866 64811056 821580308 466662113 993124633 289696802 162188168 57185643 42194101 130836052 664909116 704525880 891760677 210298231 268036063 411705042 257206571 968489285 126525731 278925486 752253031 464920534 905885991 485893226 255455621 204568544 308003881 410511787 990453808 502752605 195134730 274943555 401277496 197544522 232655661 684897289 945232230 969733726 766841930 80099897 855851787 905153832 186730544 124742597 227802708 127412559 452302785 78481612 722409030 126875637 179486697 821534733 780271809 570613955 978384492 564087806 699000307 175798318 314687512 74399595 956035962 523263189 918269042 916711623 432235449 94329525 376312210 18527608 95014538 189799730 26451280 721401411 315440880 10598940 55853984 513170852 219137743 921543102 520330599 905468408 822986199 542683507 170420476 138621030 85141491 43421407 371822890 189388509 947601982 825452428 256602529 118884042 91418848 331435952 329410186 808200203 198302643 388101831 622132404 274646506 104027395 813346286 326393322 736734086 645588816 947542527 91206368 692047301 737693803 220450831 670086141 91709113 165057175 573657693 171151645 529313770 40757089 187893952 480450082 950343299 836235281 590455750 960438558 432899910 19593124 885087060 968936128 264284723 863756458 689438503 144705825 206147584 160939357 474875449 875220436 933206148 204699140 615957863 905491065 159360894 523235074 118161854 486023877 26651337 682213450 390080793 526214857 963389688 822515247 785759173 323101722 295934560 834558918 294659170 737306308 868758973 420480541 567066818 767127942 74568628 26519848 462169471 770136428 317584796 950842801 644684863 898958330 883338721 195033795 71420217 93358030 842139294 552170702 997916327 828839698 161506235 667847757 178112068 703127845 447650831 223395460 454224704 970254958 81264515 753221992 225286654 932144701 984297710 147656047 817184208 818799637 622165755 819025458 598528555 25692373 930298763 740725337 226548166 71803750 95621007 180563967 858002581 544925600 56648303 564265421 742115304 708497297 233369819 24018698 559255561 686956839 682645362 926972156 136175720 538124944 236497989 766792577 453699598 307485306 666002726 2149031 802446532 335226683 379102628 218228546 864278452 508625397 601648299 449484402 354972736 632585086 562297136 309257689 125305924 673425111 986640483 619113205 334416323 25242376 858752875 71164552 22965884 246363620 834612332 334760314 586311550 955118026 8831694 618660934 912613212 814992425 809720440 930200520 603761297 965160621 180616897 269279503 237950561 564073467 532125856 435826588 896615136 483825038 75587793 505628349 382721202 114806452 386431464 600804994 643258681 153506205 995576496 981958865 208346055 48230202 843167730 716007653 15840683 278758900 551048658 755384775 253515684 510288857 389648590 632503596 462032700 576949580 587187625 11010113 33392811 230383064 945565549 385995922 165039057 403545052 161492202 492105596 696849620 755553380 394847718 970900528 843829904 931838332 413784932 177327155 935260845 854975902 16933011 955418363 309675862 354653311 553720877 959462413 168903657 189399725 586453762 657099691 511505717 856098990 890137530 160904738 891262032 335824219 87164397 446647820 107723091 384374110 141384006 540501454 291602528 821499162 916007515 474271784 553229948 720296230 961842413 410439415 344105960 748483565 134933433 640050239 253268060 783418076 487443673 601455572 495757242 446102844 379333796 227829838 426445246 271994729 326198995 461062504 727747755 909105907 38921973 916999266 809953952 325344795 755153976 67931113 156635276 317180522 931738797 575156928 108890092 741629568 924495753 717444768 283109949 239417881 378730870 381094577 402454654 955120337 263051570 4745346 578406042 267970097 9026674 953904388 79603384 130220318 413168040 985137738 567059814 585279779 208168458 617196281 420627997 302640094 451954632 643441256 501534611 755922669 800309007 287773946 248278114 748224567 832284295 67456551 864804188 900679126 276837614 851721121 226727791 17616623 807324211 777240312 886733845 788406340 535740430 722854077 998682200 875119954 391787867 236807144 971740014 797002161 689202226 998124170 481675662 333015681 230422658 782526553 607356503 305537871 855462813 810334311 755119905 518888910 45778682 396875333 382039813 684812997 54791780 186909196 754910362 65449767 321789980 493049753 265879133 964669911 123326627 899517204 661854925 635144219 571811639 951103691 776736263 177547944 50006776 682623652 688409200 407721780 685138252 808505101 343866252 952319158 508966309 877143465 474974138 299261224 940807550 71995294 232103217 646586657 607988520 519576332 289346657 325106168 770746419 631880741 258572252 68176923 624813315 830939200 192264575 560272987 29934287 745196948 203337468 16863832 883335303 150611892 356304732 583647402 56607014 385226335 446162481 345494955 355637874 838877989 680431298 953663592 709516453 559512300 335530230 93770286 779954972 99944372 743248864 322002134 236797826 455405210 194545732 386134161 86561551 469443655 808664525 301748043 788039657 404843821 674195055 330140764 100702537 408006641 962243162 39207134 207324653 755400798 727656483 365733992 969914077 233322599 487466190 92213864 755011811 259528486 959259248 18628178 149717483 735768608 534490432 212643930 130140362 458749427 258130219 485577085 369382652 865520751 738757298 434179318 996390348 854243790 727474380 869293256 136479448 897168370 946486782 864649459 754526988 652812311 429351568 278501361 327207940 489401804 669729143 719625753 64486381 719743597 767548590 458172283 867827112 642033284 947705077 793932434 117437027 471426552 25340178 693514884 275022283 33438102 437760173 958608000 387796488 460812749 522188134 658218238 851589899 608549794 58507079 725295932 99398345 830489294 385337844 415378437 240279840 865701549 464332561 444941578 629703047 770263793 384164732 472805486 998375347 358248985 861492169 712136037 531165026 672669956 39913494 663482850 983124437 211261961 466499726 435051479 647816241 687458791 276988463 6571811 970681695 945825642 792804207 587798268 44653928 611126780 614357190 858127541 535251645 222158011 368470500 863174753 307573302 350629865 592826138 596533009 574092858 277102644 153775087 466032441 633203978 387806426 191441265 67722565 878527816 826439885 657772043 90685135 320954372 521729714 471012800 414657098 254277116 997581295 52798018 53412866 785433214 985039458 994379514 545839285 766306371 602192015 563382371 811223638 699363089 997493832 351168658 464610646 453996247 683201157 582991109 12725172 94778272 254854448 303841293 650853766 265166905 194765164 487229981 345073481 85251631 836712890 58012882 486262824 611977711 917494187 65168828 935498710 575922852 421107107 231013762 1849794 565493326 298824855 128661628 110745111 455311647 492508659 53885441 548273703 414397673 586735054 230338521 788487968 128037260 344727776 263597901 78823197 291059474 707110650 636659423 141068568 100824684 346500564 555258662 889277393 636520643 320721150 274548624 780284045 883835204 648174387 2581310 547378308 89160589 397694020 617052550 497803949 328423409 923643526 605360202 173255319 734117551 400711156 832881673 143534430 144321963 793131878 730909083 609912907 899602209 835123265 177248021 651798166 741798248 294517848 802511518 592197738 843053789 565960646 371895980 348109313 701446428 731318282 120498132 483675242 899266788 260611952 690174756 569675689 693309086 742746163 758121255 991863709 398363398 418996489 898085642 194868481 616897390 268346380 906662745 468139155 36706881 400839614 971376939 950747975 817194043 302044420 702192596 840611027 21531135 907574901 125320042 9600589 897452557 710440355 298731127 940665769 77185063 644416908 297649271 683605557 308049389 151518472 442345992 764105974 914619844 300061664 936314704 205638279 785723783 614515213 516254220 413131454 448422906 944695353 826027255 947945056 394773571 463078579 503511699 704931714 613964337 320564552 609182676 288883955 446697556 746061534 265234700 575931864 397498813 233742533 837357532 24096695 934639551 154014274 980351877 774282623 469049864 91306955 601500686 991678222 470978462 629440552 155427156 247991219 306889307 594199844 276016340 272653193 336841610 668466467 484499992 542387723 548528723 198838321 373421872 573074837 884587975 141049059 828454384 235929519 577383637 280277643 474911199 204994399 55496689 377802635 738155095 794005106 938926921 615533693 428298603 482748541 452206650 454070797 783828214 593144798 789860096 394206597 777621604 630664139 122974841 223705307 981896937 94336455 752509039 592590634 659025194 46229893 729759819 477466907 696879247 748770899 603722008 751727643 200754300 582418386 83996566 29918761 91039857 47811848 558526925 671975337 330087013 291085413 135780308 115931939 692539942 761819110 541767833 173162232 818747548 457259918 738141760 557614377 926679362 230442593 223805047 758414698 201718674 697138947 253579065 147140769 299749997 748125174 891976538 186990977 723176185 748498705 391284403 87141250 79372693 516733578 291811534 265271771 290624449 764728497 438834847 496494368 820012257 443363830 133079265 359073042 862037204 787747113 687781195 868446266 500111132 771217733 476959 778821766 706781047 248530053 436154531 380151537 936229195 747056073 401942423 664872805 598708887 576368083 721539297 976236878 189127386 803243293 464278792 959432585 999981837 207669103 266726826 894116405 481888607 884883910 343146138 307724573 319814786 445154409 935091553 807840460 380207022 663728365 20342769 243771949 155237501 188585511 239457961 278257231 772550321 322844263 954720915 714571186 2425219 259862778 192397574 535261309 759131028 315317297 857658524 394917429 675536064 683041620 350789705 29976771 819627580 217733548 153786909 832907017 343914861 678696710 183735422 207144110 206236891 720053354 823519746 564633627 912488403 85503626 999211752 398982346 762578901 938293132 473852864 566677165 954905906 32749223 733987653 570956743 921726094 513262698 990565819 721110699 300572808 125187711 113464663 111463810 368764155 776206041 448206077 828834780 581631959 789667793 701285130 841292992 388786497 272776722 790871605 270093364 646438520 907460463 627457174 907195668 617432078 149581778 982275204 671699314 724589690 896674475 153122362 352571278 47154071 961406855 507395338 390575279 458622776 690528254 68215491 523661090 819633511 926690073 242397434 305752320 796209602 96389115 813427974 427219909 229841112 105866092 400276617 391263581 89510493 472885920 511506273 622260282 430322805 4876984 455340980 256012914 199530829 515617441 620484426 654772431 238790119 264364839 844614387 358487575 574879218 545490374 823396658 701986686 704840709 610739478 460511812 815183758 13081549 970874196 112598916 399072895 314727829 323635105 170940958 994327110 786101774 807828955 152027141 459907450 10516002 709457954 526169552 396309832 492834117 727072227 331182135 726363346 381660379 3576612 622456477 213562882 342774111 797962048 953952046 270242171 715810072 91167691 80399389 611184793 724715963 835614463 997393517 343272970 244394089 861697708 684508966 101956549 325406611 325763843 464248496 483745780 497236591 27755205 793660994 395650233 776194236 77102543 761040416 669205224 563051991 911165766 412750772 819221842 33329525 899208793 152601343 834226077 110960516 316244760 59646789 225321799 793780619 218163822 491398318 332007666 473010353 626944098 384100369 688060999 749724867 689591501 332339890 572419218 689934566 152882718 26739147 929143956 349908793 235987173 403073160 383733415 114847505 347253468 977218836 601627354 483504972 880107519 20355627 192177847 412116096 761245165 16048675 758180994 288873291 522596435 536993288 858298831 632053260 851169162 954191160 536226001 230493459 241419487 674021322 433279522 811019457 654386018 309624651 405739285 462903533 835418001 90405339 577394448 106506290 422644032 489417972 749122955 645917624 902908314 877571156 29083372 19264497 884163267 630860904 237688597 506393816 229773668 346138589 34545764 289963668 565163937 660500765 810776389 971956372 365252589 158126560 858621280 15295785 502694970 618323453 138509653 234461164 93711486 162852258 452536741 14644758 516823315 656178096 910527985 342174013 411314231 901081478 422625145 811830226 628140481 907133921 821309537 360013116 193628502 131201409 403302329 8450138 819832364 935896231 513439061 109146151 89104998 221273201 88620975 621330504 208430806 301995826 372390001 662657499 482187495 929515449 707660746 679682283 527386636 123525777 818462843 964810087 24077816 881771094 791457262 281049262 311712292 202305029 131633192 540674197 638896301 70847638 987532948 243602709 966119704 874837608 528068929 58223537 216295388 477237950 623077944 903499350 258187459 901524163 191160812 243961874 850082058 462418336 273280700 688453526 700533910 99367152 175507732 401983662 699641684 227218359 317658734 463459231 347456507 514537970 145026098 240858652 252131254 657794771 382071757 782914370 426646373 167008967 156317956 647865161 850374754 571148302 283005163 710859949 399862358 723755929 731958156 286148838 496795096 774733687 999374676 84483126 252543396 313005657 616170159 788817389 529897695 264158548 440484190 23411143 353086956 453902831 20851910 609067861 154951276 710426940 802359690 442008680 192960144 297591062 552060273 525721944 863638255 162098280 61688327 110148205 740246608 990059778 302167322 220992304 313912051 42672217 608016113 198418627 971726767 318893447 302520935 37314834 551226704 471206633 638480353 789092398 147256022 490487902 136068797 534975725 748239618 924736737 757320422 872233273 344811813 700407888 401082698 473220788 985783321 569880130 990725910 204391095 672909414 489890577 370541148 857540664 490998686 542532001 745353306 160222802 762624639 743202768 184645350 199399233 149885234 163215533 87108137 610499944 782280371 711211541 978404606 865674296 934761313 729195381 810609700 756349450 292510522 165689498 494502428 630732823 680581367 969860199 489350190 290911684 494536942 580409026 331163342 768131623 858931734 964224243 803183474 30306897 745121984 500508561 122120079 993599902 894067427 764507310 249182281 136887285 40815969 205515918 505133743 990498330 297535326 85645564 709520200 648420886 13098233 294242189 952668101 474795653 211738590 544806662 79263736 859560720 757946837 881227042 10984110 230541260 438372117 845603811 578004027 897432131 382870353 189989448 386570091 333094358 667814300 448150672 235786686 559828259 249846738 641085822 7403360 255442828 393599248 442176477 160892831 468412918 295819057 404341775 640644304 934626630 400273198 545860628 212257051 111836356 121150671 193214643 631105859 60407255 225632635 459781230 680983814 247957568 239309246 605228604 406595065 909236164 380713473 525610340 104882905 875584248 647281004 876038743 747468962 733836022 242112071 708681616 406131655 551818550 474683423 552063256 476220181 362810414 124109474 278546109 219793225 739609149 370011727 899662199 73008050 86387343 963990330 349902969 937634349 764900084 622813128 616045653 275189230 132535550 646175874 90786654 419293733 492228858 956854903 366179447 324537734 830534220 770286465 682991031 948117877 234995011 804285221 857634629 821755536 539796771 464149050 549072403 19572043 300008972 361171484 262676125 948909856 670865647 897878574 999623541 788459014 716846219 261828720 720213950 18832862 627723802 789459916 351052540 532922707 423329302 16655158 9955540 762917249 969036406 932136842 66375747 222417759 311805276 349159984 569419280 89994181 558084095 463358894 335459000 643438025 199235705 926212148 859535981 405761322 27561375 588315465 5893047 105898512 151380498 844446312 524961956 608900405 636652818 727542183 650001911 164562752 391210321 384644806 36005270 652394927 918661496 658162149 211137254 491682499 824833352 305215105 475490369 724432280 146102986 104411344 167764523 511576481 577131651 229388013 677822877 333168881 102744159 568287223 750833651 493981553 466604236 104426276 244412049 532018104 29182324 826168040 514501956 470179582 267604273 110481841 482197367 479275447 267172604 201266649 743015943 317588632 837138072 357991478 729091771 17240995 98600861 740954467 732068707 987272113 88670401 413215855 172023809 969678117 326351217 811576913 449281944 735840498 286364296 538129439 113269314 945739983 456103500 618309210 420042489 856037518 815426791 386972615 914843447 639401662 146307683 45027526 443203565 430033113 732908179 104236469 438796610 696894486 590893203 385003344 793348763 359075771 931194830 862795218 683224938 335898537 124310394 95403007 589035744 412288794 491501201 308095086 844058502 439661352 289951313 730975950 692949619 938746275 799072813 77970416 841468092 846921752 313448899 533087238 113803771 277490838 201303672 482208996 804310375 904256342 322041940 163242918 422326450 34367977 586218165 883056158 607409157 640452791 596374567 943371237 811747238 758064302 353204080 852074980 750489028 524186620 392281828 346975785 679144163 255574267 315372945 278203465 82921421 375308520 845593571 976231014 960962209 476417017 818398318 677909185 266588960 361960989 332625252 931061536 574134469 668471928 5239830 182055066 575205209 77622040 111195085 7550174 447856921 303749776 227219526 256410985 8742361 579875210 32935317 864804886 807280869 716297023 576307715 858918859 981275599 212799422 648220729 343000633 50001973 218602019 195704065 565182467 104054244 907927311 907556047 228967374 6576789 261666992 920972537 587493740 239127054 623649822 947861950 882629684 257565004 257328052 85419428 455872861 188805162 480131819 986476389 587459757 340715063 454198262 80781766 816960894 306474826 499232817 271378689 113064033 898333133 583594212 255447817 125124128 254191261 351906600 505211352 361616600 666991998 626334280 778271927 571889322 162014756 722240186 605795794 17365312 588303649 895343365 583349070 584307793 496842260 114136748 358568291 598135743 920877029 572229977 682457858 696000742 219891942 722202512 285018142 574537370 671497250 388518033 425610311 717201262 61971141 604618658 31068958 385810672 947475240 268714603 768141822 980031148 478230272 123133347 150785104 594739368 388295205 912997248 454790997 984347836 595382622 793093615 956561686 209752061 959898981 790819959 95321587 687469125 516123966 266764028 324519089 705464211 254176235 169957620 267197251 698109135 25661869 321161302 690030595 559145891 304865505 823249509 512609095 41118092 149369869 76847966 842177228 924079820 588153702 724626963 450236974 473739172 501837118 892775477 636225407 559027249 711350372 630293783 358756398 995798192 328489071 231151675 279674829 237994432 877665098 439446619 81751341 844224482 203633680 990406104 867999216 325178126 971154214 831405970 899055387 241248150 247051620 997749378 794233044 574709805 435997310 81471798 676886907 297524826 410670481 569370636 898555595 710434950 333308513 202847994 151065586 227278421 235215485 192625381 365526785 436708748 543327687 491522751 155218115 753541092 473466987 736716657 297321408 856865405 134602222 261641225 290345876 416737297 127003363 294544801 982665710 617980614 853087860 253186062 590378160 418177895 832072320 691324955 74811663 172107811 262985099 441157809 939869587 290024453 297441983 421548967 569699098 54256551 912123382 209516512 52406029 441509921 754703211 858841437 173648745 746957870 239710952 709265479 709633473 96959749 660402133 674694150 560201121 487670134 518134067 191117386 602900882 232878212 152473666 63311999 172090219 474250976 632540818 499495992 344010 568433275 510569628 117216154 998574496 99181900 490499654 22163745 479378805 104695991 763645362 782206070 9032966 120002663 796049248 122433520 764279129 991519254 592262905 146241139 690322204 473873499 868957348 270055693 26957297 100265962 967964326 899454671 870092147 564855530 762401061 325729764 343851408 267279909 981880627 304371732 722284676 503012631 837788225 119429116 565017545 789864831 303848836 121116744 809919898 931359005 602467880 430446476 218179277 779607057 352024239 295143118 780897548 875969749 49556702 546407056 537373291 825617257 402060425 894875346 348033223 8301104 553608329 455317933 875388171 143740087 754898455 556976510 76199682 619464455 600951686 927339331 566437133 169543320 943183122 544164942 263244235 883803943 859642595 82886277 801514013 361410492 272887877 143708277 432127638 116731249 487818008 173122986 985995069 284489695 708455432 713329444 776040822 758783456 617327973 374475477 369080587 256416828 961783156 405635307 2048930 483497915 74026883 277463190 265631011 191660224 31808324 163262242 923755054 874583581 246394330 32917196 920981989 197339823 50293066 770633724 346085224 578428559 659106557 460398359 286930633 571750369 518114634 455748196 62764544 655036449 712898336 761357099 223116578 9639364 476850520 249894206 473546350 695671780 607466303 519937002 610551446 142116266 603289137 172420809 535127708 553305579 731751117 159165924 933992506 260987754 892890528 280439262 356857078 317519773 903636890 364186018 301467363 52974974 115808630 619548663 124084288 897708610 504566722 210872795 444687754 671568331 781361226 580768485 568600755 607385115 607900027 587889936 535232769 818172283 381194131 890746300 710328606 724666918 96164919 803172149 370868372 218581823 15003947 826581194 597964830 800802291 228226913 188227860 92044163 139110376 836493687 364931300 899168081 975935208 741745510 786573243 176337745 5862570 116300909 556410832 164006464 176709413 487052332 437978963 565650578 838743938 475055721 691962631 567357773 562958652 182922479 575139975 635440611 470205282 590740806 71913237 881378422 588569629 913762925 771630891 478679016 32890257 817288626 60231248 849700372 687715616 815364143 763344773 139793357 390506646 374117542 565823494 923846490 819171832 483895032 926003451 656719382 469840752 117890510 569135051 881408705 767645061 587222041 261059731 778064339 251120848 625941767 861348333 620013203 100940880 695217824 239113145 957966604 26560003 103356564 920940362 847946215 688563416 395754196 630404391 893623689 840266884 718294914 402355351 55078917 951260329 534602672 372440540 763277256 543716363 818817848 54549366 987038991 3539562 560773457 704778601 964604156 80780365 771567400 460082353 79446055 222000117 624191116 388709029 699908247 427210763 690471194 914767117 77515777 706625810 637549483 337763273 62515261 373840152 561985122 86025269 795947673 614161667 528578812 710045200 466074411 888000480 713891453 458930627 937239993 836023465 88351290 616653649 70378945 989426994 548078828 616097797 444366612 67327886 229028614 99191289 251639530 537371857 928498334 390271402 816516475 917095445 223402683 499655687 63182856 97809575 123791268 770655373 308361495 197829786 994202131 894435283 455013707 977881798 997371773 496846572 444818006 472107452 738564370 622396352 166692435 379091659 373299107 815156261 613916592 430555407 927769274 495852514 154220961 52375465 156937759 378684307 427785387 675214460 357565700 535889551 304460588 838723194 910341699 942885696 642397299 235692989 618159955 868767029 449985919 345981750 510102177 658479824 965750447 901013686 919469133 366415074 521635617 148869234 262890213 791470211 666298914 950889163 757406426 743177331 521503150 429901887 189221542 709046643 800646710 390152546 908122731 637248718 31535817 693240420 256923661 256947525 321888536 147166240 892083828 813706095 545316884 469197469 370520852 168191723 557652428 418602372 966793998 125447918 947632990 764267467 791644100 304109346 965021879 318289290 217959338 414273576 95686612 277757877 231281438 76387438 780125730 284169094 761069610 631694316 656468820 29238798 767384905 273870721 313709237 684857922 611279797 425076963 492223552 431128544 573375028 910684717 198576230 944426781 254264461 586546503 902702854 293832108 476479816 862261546 933803563 121098035 907557828 106341531 282013080 127800787 845421691 271220905 289441218 798991246 827022415 363605356 451938391 466427626 912354054 405584305 996106779 808593260 832072835 952270170 909056978 92782984 299915946 894267363 870033823 898129995 417254559 134712866 50172526 84005934 466859671 222161246 68974383 787772278 331084855 272771874 256114855 668425796 291243686 407395952 125455301 783993701 430076740 829399717 415596265 733189292 355139269 336793415 345675349 948749106 810219540 997800915 444665665 158243920 620270202 932855829 461724514 367264654 191620451 523400134 792344788 28489983 186268678 763284726 540796994 885483117 946313593 673918122 580421929 977134918 536396560 523864922 427079167 79809093 815573884 180561862 359423331 433773008 925533188 128807048 696855340 422539918 222000617 87254384 197096175 353232127 659114287 214485034 650301540 792237115 412171123 512908648 429080251 347081604 34571976 460370747 467875780 657496498 208985152 628259901 674809145 529297482 192018028 263546212 984653704 298844613 872523909 311695340 995486107 712457240 657218965 316627006 914023880 272842153 253369235 611797305 803976201 275157180 688284140 593993922 698019356 259768116 403289981 39437215 186217241 467054807 839767069 44001064 714222770 424623320 76589850 22863214 909423627 354798831 815142961 827336983 596108167 268961167 315319037 847341961 707108436 563083686 248458741 749214249 546475019 776832763 954659950 828282095 146096149 344707089 846739731 411196350 964763251 117444906 927482619 678083749 375119632 814959614 573020250 480751746 476870437 97310403 435315580 618752208 758645248 187028717 487933347 743634212 377820640 999823998 388136653 307415384 974565330 689966300 880485619 146322369 135967175 306967018 699581014 17439176 400410626 599082840 624044783 537478854 899560532 500529572 579615656 419845110 115231372 867493828 771785582 654815255 653811368 237702753 805323270 490021631 119483101 708781853 981077315 225026357 817279434 958315422 813727161 986692284 806413101 827072681 384888942 952556864 720307747 248766351 566754664 596457641 916237941 216668639 794659756 169331767 700503561 759045899 487030729 878994242 642053110 948696047 814161908 898443810 278834074 593151861 237787802 401830204 260479417 798010856 548454081 819236721 421763597 484080087 680343784 876792003 850519791 609388438 580469859 586413672 643001291 822597030 805954231 616488837 272681385 879786405 756704656 783261142 840048759 937777524 43926442 272603605 67222610 842791581 196299041 659994115 851865035 346641990 794285192 690124072 551389864 326379344 184783707 924934952 215785305 294338755 647143287 565018452 668816759 729127395 546170790 98473728 143777676 971164157 49301468 971157994 931004667 561547092 435969982 261632760 805277391 561411859 195447487 664706544 133245271 59012773 265790381 931051715 225438626 587267427 114487427 83325068 900350405 880162500 913149458 322013990 999890371 661569814 840806392 554187929 429080880 214064487 74914962 856475370 590362143 259379017 241589232 392520076 928864540 615669763 26210822 332174409 433525340 265773239 448466953 326075442 639062669 333044807 423485282 372967931 466975995 947482296 831051288 622059943 290131244 559969630 652326101 443307469 112480169 791420531 791889 204957641 275394384 477703905 196780479 740086962 349186878 548340256 222790409 859772031 549086425 173389253 131397902 326414096 249635205 749557738 164983847 453760618 563260331 973218851 637305994 8406077 738206595 446525474 21153254 765160989 677798037 545602540 640531728 785282858 480244212 123227598 529517761 322703821 410690739 775753375 731342209 257866782 782129292 423517211 297264369 853908725 734406759 322061575 262140665 355798390 256450181 645401107 440721164 399260581 332768815 238686873 820359527 581821074 270125806 895895729 25779849 27799865 819498643 96845937 379327124 880588370 87406315 701723398 473072743 527744310 896620285 175216863 241492359 739476293 386777535 714763880 984694316 478391237 519091556 744577766 318463113 923672753 14439435 871670768 963870828 252718868 274830051 130538470 670132581 985708296 150594612 553040990 771130233 610520481 254183055 610033497 830056828 132693094 914189420 643108708 673478305 356051693 150114556 543163094 490540930 243118143 395520741 356671536 51880989 8218762 245828342 256231201 877333685 741523921 464555534 167566453 260775692 948052352 425648931 335805008 27179366 875001356 134631024 696248654 146312705 688734975 596383646 791470550 905522660 121043138 350551414 912851820 293901101 334645003 903004733 22005406 70436363 124500261 357871143 510169198 919345953 423231379 513744894 79650326 147898347 664612047 322145729 420683808 105673282 545086720 364964379 424487548 543559035 878781000 788839410 746784049 540415932 53080914 760513447 891917316 771859976 445369513 405053805 740217483 778448925 528200673 383603352 940151107 175500038 890641299 782782476 599179838 705645851 601494872 848202323 758634158 523155737 201759618 464741308 191538796 680984493 401624126 387920021 56350843 776599058 486282684 631259727 347448881 122772166 362699939 414844822 532873310 906122449 627295146 995358871 975148941 953306994 798551917 616891292 199320781 659246089 271757992 188969994 541625607 445080200 744654045 832797696 958174750 85127801 770028000 7558769 152915540 171540100 76317606 991487628 594631649 202915860 824542156 856943970 624839661 304348326 908858052 46579427 966769167 305384427 664046547 52899929 624194480 927228693 15123284 887262284 911473211 230740229 153077217 808403426 994328210 759170003 565923624 298635073 76915096 458939694 515173422 558633004 846694240 812446814 503033510 111025126 323585520 943594801 928831764 127502407 653898459 998476271 586222601 444495224 918026512 212857891 883825315 493729736 820711727 25634921 129782166 619493471 668972213 303619297 340991240 255215691 846514928 12117427 213260964 599415845 1290054 945587915 475745307 119129625 180891026 706734594 400800396 378625309 194338250 572373306 545410021 555340517 99890460 307237657 529814917 868193647 669248912 712153534 148713194 174811584 954601681 849574310 750865559 159553904 722541325 682666119 88388872 383480371 283465556 613032476 141268100 352199571 598271955 123522484 963499183 268296346 174889246 600656533 503071383 633058365 865229959 982477552 846755473 628223514 65518891 622215194 733210151 710728502 696062771 525298821 885075675 197108945 138318855 392585778 559833070 215953239 893327140 441485577 827514310 98679904 552081231 609083935 775491048 579848793 592922746 153354625 473387836 437511221 640437187 112418404 496613897 39443342 395498674 392708177 19359000 871170485 843020959 411268871 816008807 358696086 739537978 200765399 412166432 892704251 241412821 477434719 986542726 388844582 328801058 934741439 41592651 520267558 1955145 357399630 649072554 227806182 804267857 888967390 643804755 123528014 883934200 372142232 187819377 399802093 394416658 232387258 801041403 521989057 368538089 450865849 460888228 131802505 750291490 581160990 562418061 250185799 374947964 860135308 442155706 122704290 77067509 754055382 230430022 514066721 724488197 171578826 105210778 492385886 543391074 775334964 560981446 444106634 729149387 349401065 855206987 773246914 605337900 322436745 841772654 747240770 947869478 944756627 509287321 905742786 888807763 107209118 652647764 933066532 434254724 460074082 958852124 167437035 569997664 9754352 511451074 779589239 437372594 306335962 463314188 201519722 115657116 561834100 440358424 347870243 44015113 111346110 293054855 195932799 944078622 563514025 93748009 812619255 263534809 910765944 853878979 586039552 23583529 133049031 367485254 632221343 934984868 678428145 374627668 449194413 311062191 51672229 510671883 553884507 612301018 274966615 99812060 342424484 451526530 605273638 775207967 932244109 220642355 996066929 105329675 879254029 474118127 434741714 619735433 796321125 366015552 484803148 452239030 846590514 391895803 73087379 69843614 205045132 631339947 103188777 929083181 313903522 205761380 163697916 4307871 93400908 695568423 975899435 81621831 241221335 616178082 982726685 998681509 858841634 960551857 442263849 968965557 911425293 811175150 171557767 253264840 69847216 883316306 788966070 442453378 291593755 519853961 47420428 349452750 770906923 775859115 443902732 165082699 994168056 924719427 467179416 434953325 116825168 733612986 927295734 614970121 331150145 438299817 517961760 847414254 716194149 557186065 838823550 1429850 9910967 793906962 81232927 44294716 207108041 942196911 391635504 50935357 299492302 754630460 849546590 600389454 543829089 720651481 930421078 793594770 962424066 597533000 416571831 888710532 90581621 808094090 71439538 923003280 123363809 431859956 979227667 409050260 438074866 952858452 585932164 609501678 462732214 441866628 925767184 789747521 290321424 904596696 396804999 509311424 687128464 88832699 17771206 510084203 877756943 747365076 376043922 171353356 712247375 18233616 845464736 877878706 25596339 384259721 230236437 156007864 90668398 330114547 235668474 771251548 985272987 59671905 509166973 364972763 277446601 173055145 194057486 200236416 999364524 593099 5625133 924937888 414368908 322445301 511688563 868273650 832122615 405599738 612758331 144997163 920538711 258346381 24836642 199231857 143483467 860584141 398226513 328102733 9799505 643276444 64374759 586800174 425441959 715510800 937424804 438517133 291039124 916341153 988148384 745061914 419566371 611040131 372740979 100681363 666962394 710989986 146152142 818445096 307537284 37441612 278201289 165914412 550515232 235559525 199967846 275533610 490521683 278750690 868129053 794710113 666989212 552413151 230926449 717701632 473051517 773083798 554073943 90250942 470887395 612125962 352069145 832186533 69722724 499475748 500517789 493965240 239378278 574714520 594200422 791814387 716024042 223652210 258106311 464431175 772244437 937427407 109404965 895849559 604292946 887490915 911208898 961474968 762128677 195044835 363124044 486497164 605322672 927373824 970569337 635917419 888585876 87003418 635494055 472501241 961890818 379270824 262326630 647138346 619125605 423219656 362586271 936935905 684405987 172447475 233825797 456781079 594667075 967303565 391498372 822423159 2374500 856475652 513077179 218386394 761827767 744157317 925802882 610542765 991866234 164978921 617229523 1239032 455379606 355186154 20301710 457560373 654153712 288403855 626080734 234797927 682465285 490152693 513205276 266643189 961330817 525135886 917413649 228823967 372696458 558960979 320365119 897753903 797262325 525221627 314696208 685617628 221465300 313014902 621291660 736539833 746323042 958934674 140078775 424752663 448780637 304234858 143698224 464028993 547921917 78434931 727941226 828844429 458396783 659246948 939639576 630549063 864415041 46435527 470747913 165509486 594533630 965249430 718340429 697062230 626672327 340221401 65538768 277852992 937374038 863129021 995975595 143245016 701278796 422641931 171235332 182774962 950583363 597805368 988180063 688618806 277709333 224963619 24713138 404219514 789061258 775206197 979081797 660960657 167161986 187415274 583519556 912949896 255536261 770963138 124516084 412542514 232470947 715236707 899044305 992652613 695471965 970465506 936833217 984508178 127881088 12294608 195288737 54500639 842712525 95222371 555417360 322911912 818274403 439147209 236006398 500985992 730100623 548977474 868968825 830778824 183459380 740434319 644445259 996355076 184173684 643970557 639735328 410636429 71121951 587769089 559800243 578853904 500221360 879794674 337795425 997972274 329104786 387909509 51512815 335397139 959817217 942603253 398277630 696131940 212417329 980561967 941983800 682731250 341680129 780380883 690010843 654575560 285158603 181376177 142948623 985667559 568494286 369055261 277698215 684368558 597736868 609382738 638224730 302958699 939512498 685510674 752752822 43864239 575988364 531088681 888417127 578851358 669195438 125478375 576801956 982231869 617452112 299564207 82068510 911345480 689652137 434012938 905293086 10110722 272331398 443859911 109606400 853970649 168124764 959702778 863797920 447014187 245238411 421517382 615907777 746428593 581926776 504391168 131954326 735208114 754272873 817054612 852044522 791040911 345092490 180666430 195951207 776337296 38481425 106023042 439780557 859214509 480586410 633742291 308172241 728770511 559054952 11585265 776205089 56606527 552911304 245695912 297752985 60985767 414257293 705108880 418918117 566925355 463097324 364692838 249942578 584190579 936816368 211938050 446558433 636268625 504562044 900548123 852797507 431107231 373913164 570141355 858521694 610652596 561108185 546474094 832792910 688488980 924843305 24891902 905391233 336359691 890897740 93737049 629376263 936058505 158808141 891456796 957239722 813413589 349840550 538930338 548476864 216644166 237858900 94391205 697963816 494582908 8012564 855868732 286092975 788199597 55206822 55749667 319637365 270866512 25647043 509005531 223840575 100902205 776435532 243217419 94317909 176937401 586247618 349808273 451760127 294173744 306413537 182986721 66139041 981187392 595807201 475075165 216427787 386571300 74921107 585805971 932072560 756129485 413075017 791595504 127006738 810316207 496161811 35140740 736670471 408940774 478473477 528271875 152397335 213989589 129461519 79677154 507282599 677792414 46424627 189791198 834339686 291883017 990530490 387037744 851852650 49821168 304132529 140911108 987655819 772199353 954600066 373885171 534471600 732191762 181956964 729063094 400735940 593160758 407524810 719662089 576031356 894290008 413373485 628325402 144031724 991593264 443712558 159163051 339555971 553966933 93611099 228044787 659830480 80334779 288254336 949049207 139787340 826784184 997097108 248730967 672572024 194003792 682927239 275997788 149966162 497081950 201698225 691449918 178239948 140038782 51546312 199278864 619502659 607534035 258925638 769439456 523973677 934506549 521942097 781554232 662080267 831106762 304590326 708781509 627862385 23943894 489287773 851996456 168700001 340980036 436618228 716157611 532324835 186701863 789428497 338397713 651057500 892203408 400735618 122414933 936598449 779017706 458882551 525790547 729158020 503965566 873145533 280449882 512733410 280154962 875117632 893978832 895255126 422563463 542338234 633092591 418218914 496692902 986780676 258574937 740855867 228901249 29995273 452788416 463701354 582752339 802184677 386226065 480287326 61069640 171193159 864943537 749084807 614977302 249728981 851546566 109318855 604126538 550385070 330564173 8181904 931619077 604523379 142412297 399665869 412864213 347609730 945616481 348203854 943520377 522390732 347211019 91200034 40861259 272076633 727730978 159636581 370908061 138120708 882944058 694927731 591253726 952195332 732069416 446016766 104189753 11110052 100851600 961531649 155159499 368555562 848568669 680406697 177168898 945267578 715626103 503372726 555762144 800110586 22342691 965732657 575346048 168503268 884124872 7923255 223656590 459287758 316852017 612907198 573862774 542330130 668967988 178149897 746062887 125678473 706639067 581345124 213290619 690461538 193307413 8452098 422204587 936137649 137269790 986431349 800533608 728935009 787473483 255609075 325708711 241595176 609029092 7214056 742951294 234492142 662946085 141156747 497974129 449402525 240727416 398918838 65630706 860811736 960581213 192839454 446299717 225408662 382052452 820805309 719515849 173054641 87080866 449745527 661230691 284531849 326287952 138925558 547142936 637263150 610995669 526995054 236958768 230894520 404654617 54429472 253515070 33887406 764494057 405858293 892935360 912446396 208702254 475802151 249006657 177409785 114903162 170175259 908613427 287925560 342263236 130633219 841311482 984431137 283025249 938846445 637068048 887806477 673436676 378767196 601847508 377083526 872784398 451350254 408375566 558407244 953707688 489611512 173651285 19759443 77970349 339113484 413491882 336791320 465046688 531844017 301549842 653456001 13564080 224741408 942976514 999918147 706048053 10785051 387244698 516417723 172923530 829539289 589583933 872562661 146764941 8199697 323820643 594289074 714827941 894002396 862599597 752938344 999911069 150798008 673912212 700831794 466087506 363162937 951515520 177527518 419275415 931608465 463634239 225256382 762996119 882665254 49975864 839274346 605176019 289459486 509401639 421579287 293989234 618277849 755963511 659190563 300621309 467144473 269315145 911337424 783240328 29247258 131808039 170745470 508783064 391535441 87643625 49817336 260944590 714686742 378580775 380902598 859274700 498346114 235088514 785232412 797182177 970859253 50126135 122928474 285198882 84277992 937591667 213936232 986443385 615115058 421880233 368571265 241021142 719727519 677959871 636143985 636633785 746569126 955473228 979976550 309745978 921774184 212110791 792956260 560006427 197114973 566122516 931968688 245881496 806515073 642449701 593848858 417708374 585307507 360478949 923915551 705711424 284595610 190476282 647047891 660932063 843691042 539292098 559907035 974893262 330828585 906822200 139333712 227490553 605927615 957332923 253226229 727068564 895671689 466116751 309608671 706883284 620147834 598494165 821247765 232801728 561621695 418402389 431310077 39962497 546380456 426486847 379633342 275696950 725580926 732588833 822738853 421736493 78351489 131616400 57411218 109005871 78356913 933178237 583046057 474621124 845354242 941255044 303558451 207027209 212577565 778771235 384195769 780310416 662324378 611997317 722877197 874071097 743471223 790048127 358361608 590333445 420171442 203089877 28964801 32234556 720980530 908802705 133755464 943499682 808827407 852708664 835201740 365640487 216170478 837884498 921917386 938455505 640532937 786902353 784505107 919957620 906612069 702486299 893368674 144691408 966859744 689133568 166594055 414041991 349468791 458898381 599744714 305009591 780147642 687804871 945504324 764090580 118242279 451503671 11087325 450226108 154514347 219900362 15121926 835754649 37898225 72470343 689429339 796669381 271120980 308901238 313213005 219889070 232229590 475259113 637706851 315559918 676754209 639083250 296910846 462320102 434209892 430906374 459785199 591920554 367423175 853486572 205816308 544376574 85799894 407401740 4729819 984633852 76184300 717674915 631669268 815264535 614191560 299892763 501315782 818876406 460186147 180520032 527357592 463643868 729656457 916059350 866244868 222524362 296851501 246504023 882943114 707172222 679629916 936762185 57173763 960718237 667766717 863591032 555040717 484635003 307983730 928651458 103441830 212190648 861607737 206954239 760451434 508403386 417317158 968616837 674847762 677493958 645000123 56320139 854443171 892958559 679028384 882715613 603773059 825759028 808565300 258688187 701352096 553095259 187038401 641239422 572354115 720532806 171678497 713524161 805653928 888759164 222375655 499962714 235910935 5612954 479773596 975955448 336598975 388713340 920594038 656025774 178758067 835773672 904198362 190746369 354839698 555679447 849839710 485125276 581116776 708652326 382528600 397881019 60997670 759295889 978286266 844882285 363388212 855147121 642257127 181341295 571877263 733067845 10389635 361808137 356403820 566212567 972872587 737114142 219655418 426162181 432364026 30508583 423686055 440898224 50705260 106809660 796841691 636685316 106565743 166685762 198986556 692892469 98096852 316492524 284392587 665645720 412193359 513412574 247939489 491653449 205223282 372888865 464384446 197306930 487142149 406692787 104073869 371337566 229195411 117071058 290222431 959844471 102301925 512869577 57592637 746210197 88830731 323581533 533996407 119585020 621335686 596003324 78491079 163007994 971805099 14217737 414276573 852340845 126484202 771285658 300880779 227203875 969989603 716671709 43168139 201604752 853413942 996373432 937191319 390177795 2058493 457296240 799044453 797005056 803008358 104006127 850351849 452196883 469310012 282726901 561432907 45092948 815063360 543263406 457184192 258879584 997037288 141371373 111945626 947093924 771698317 194634920 134042133 861663284 441497446 598343969 879382091 640291951 528742799 484900599 123545851 963871153 226040477 670578664 837942538 970748461 659974154 265589696 302512722 292277931 504493574 819034632 236052253 522862961 64029886 408703738 459234479 416278002 605656547 876677971 401475976 235147742 903030594 815865159 363780242 416160841 136227824 15873243 118592625 600506115 841264193 957737548 294686476 158194694 240936309 25429111 406690789 280082310 316359525 701652228 906793321 497944130 17000069 967783536 858932941 459404720 630636218 573793536 746231637 832455687 721519594 722341297 656969682 127509727 207561364 280986414 225491251 708170030 96036914 279324339 326493871 542070444 395662853 795731039 81571082 637591662 310946084 868760256 238719224 192686534 12835212 572630764 672668723 275184285 446017350 397170528 985305174 959664105 754759083 499086631 948946848 21299646 217904366 744973756 650052600 215514193 789202962 544517274 145718153 568592662 912543238 718059143 418574164 861063309 215129140 202778608 3506799 90306345 415034859 989634445 804922597 863963157 363426984 522763572 83923455 264122084 742814636 556547706 324540325 98500583 299813335 599230010 822790301 922195580 655350157 406868452 786712745 271072919 683498014 310811654 899867760 203418966 848061004 191536082 819152642 281127431 553993317 670450876 601618189 780819866 130083770 735013248 568694773 741913615 388601616 55021165 55749700 180737453 968960368 135784268 63855920 576218440 95551705 47753054 527027616 18808499 855651309 40999950 909083962 548010266 729119598 397154356 599081910 424269339 923378678 757763974 187355095 148317253 135086471 924996575 822759053 921335654 881305253 806075300 208857083 80109805 103282731 84209889 409660828 338844582 16249579 995167075 727886724 276843690 876543103 590591288 208073888 979486468 13488209 878960311 443068884 47762503 2787676 816723832 665135473 746946410 119315745 388524583 726392575 192222892 487960142 653517316 572102869 394807774 313738083 38598470 794188523 568634458 18910712 656280210 846837050 252721848 95913814 717489923 755953847 222354350 822369936 479812238 404117728 228080267 397156386 906267539 860373021 706957002 986327409 578468153 960658668 125386085 737543596 100434201 485962789 473430581 740994375 875984495 261559284 161423344 646810005 152881725 477424157 609556502 570867172 993834039 182682232 36109447 34018965 529530165 762064591 229088803 537435111 288053038 4348092 546795769 798018891 390074753 903543204 645266484 674216130 796266000 365558894 223561817 645589638 99770703 619728755 532094650 396799213 949662042 73697382 420977902 855261323 566151805 921201267 486256125 298847341 632663374 776666619 802579736 340072198 295715003 985376469 105796658 309861060 154574470 254095130 168559588 616298939 346354775 611645033 501963473 807859487 344929440 969076093 46417202 661102632 474843273 940286916 905216914 983871015 197843263 405475134 900862021 130960068 56981214 965351273 258935194 552844235 890068452 91091023 915421503 625619106 136848967 455302779 559687986 224993364 741441726 546238413 956744386 420047995 755231991 608650027 610023402 347100462 514651481 674419580 570237925 173736265 599923230 589323808 698356635 298751934 470363888 750200961 482187346 562875375 435088939 51252210 50202796 991430919 347183380 522215046 946419587 892256926 781905001 525212321 191531269 232659263 115766391 614770705 190382438 229616634 337230311 108713006 889434618 778123320 341592650 342131365 585116932 717362587 947860348 158026439 701484836 348728660 563038268 490075146 856426245 20279903 607790399 678091021 442889484 28194852 461463515 463131317 29074320 676693182 403695261 360397072 592605212 33165006 112369280 18027213 548790939 83118878 677820607 545633006 554983573 945805064 411805299 613996600 422626467 151801223 246203158 321206672 809462759 465466117 937707690 964548217 288863943 597014109 417130219 525681245 785014479 681173759 311348411 614527475 387539364 810889615 896255713 967377474 776469618 12177824 933709186 350094086 509637571 479789669 701781259 952992665 599165954 922337809 811912588 197340464 62664174 292162062 563827074 521535406 852203342 354245677 589918467 287434509 918048924 881019158 447302515 42804484 918953262 328953687 980187228 796716233 789817644 843348245 409801365 214715496 625427982 142627624 726477886 820102748 734000983 956125100 882476071 201702063 844499297 457810814 531946782 590079296 124604393 64058756 255225242 292843031 468496423 383850378 861696396 7476562 799652986 933357742 508852441 664755712 620139207 834286808 375080255 599914513 62652024 390854731 295912572 428082283 285343606 245534035 668525806 805543194 962805128 90057059 840223729 585272065 73512822 981401117 123447921 366775637 412055948 784788569 654550105 358014136 331272638 444417120 266584845 897281621 183384513 429696484 541736047 788339046 534509925 200226896 126658529 388071304 355140739 1893370 923095307 244660590 986702866 832405838 507559339 435651971 595003676 940273117 487809075 256997837 92778011 864250043 990227345 176545439 702744398 891944197 652802956 50107199 429907560 618109619 480690381 4505942 129008869 693468022 349871192 582326365 15751302 672061431 619369327 604385077 91762511 176021226 207508830 300505631 420880577 678684153 413515805 574218553 16092456 441458463 832604248 103511831 541199749 211447756 519463795 974535047 248600235 505928964 121974273 69073188 109941752 679303317 861750597 44172770 605982570 949849528 496676381 495776139 463108673 369632386 407491941 741537783 268287660 426972385 953617909 588198779 260423850 135623922 56542641 574111141 704118121 516758556 484885016 877226899 663647902 7551792 287380640 915891200 241405704 91490605 884162752 755761397 57621959 55441083 322862167 927499382 558712112 554480300 822199967 818022519 759788901 249019254 312720161 620708253 220401406 214630359 108771399 111243039 602551620 341163834 885626085 826284778 423664129 566644606 221042415 720919878 296864449 879320409 906455008 664314262 150624501 155187944 510857795 619077358 258480566 434520362 304024424 882464208 36488485 388695920 567554984 67897154 414718811 650605200 9823295 814796641 384140709 750364488 86003919 892440662 788810404 973967906 432474165 474674389 485691112 812171933 780457446 327229901 236798979 14806366 576208814 877953282 332697044 43613519 673124544 27283885 209475264 368935116 109909058 647839155 328792146 192647445 576529407 635055361 100649672 602288609 607756616 475278974 63892424 246794951 298442803 623739435 216766465 184150108 220029005 931716515 473823688 619423854 677528574 333804105 956103896 620553980 23275494 149619903 745515775 769750359 147030499 886454772 801305122 202843081 466747090 544070166 918062881 888616123 262847428 80574970 742994972 60628625 751309544 388862930 900519834 849835260 87225045 887616958 840278753 302726127 606364517 225932642 56938115 96195548 92670081 315607475 358150657 477903619 906497711 685938589 249492398 495119975 432953843 630838281 682274240 315444619 306235311 693343205 795517090 507491342 432460087 897944877 802628950 60346607 337938965 569229228 577948264 395634171 245620727 218970855 829089280 773873735 122653872 630443731 657968048 795624744 270404328 472887687 135530500 874612397 70677058 332194654 517015635 119690583 734600454 959267771 301432188 858739472 749106273 469731615 85742545 214155551 83148468 698006713 714905034 625166565 828704237 589458055 953467655 850338970 336540473 418767015 634077490 823133703 123470045 104700487 947694865 466641675 813619525 419932407 75029444 767185112 950791656 189487121 894065311 914969263 746626498 751295699 370124536 360560881 65183655 80580304 125213032 453061672 761818082 932849293 129894536 464129362 626269668 34766299 549033529 34580959 618026053 802020997 573976841 760203712 454017534 887724081 577357676 374176808 177938583 594246411 712385540 664045595 434779356 18792167 214250042 516302239 342488325 497536588 619554213 140399467 646732001 516362349 705455367 738601293 736585047 765350233 484745206 938395719 264054416 356135928 145846660 922425226 344113559 721353480 388564519 641625377 125306619 77208795 775292453 75588336 741921243 839176131 866954781 371356185 322169084 898359940 87094748 690101449 238167927 173864553 139365257 51965910 761398553 64980324 473973356 329099465 729879134 291768584 439270960 345246390 159441326 272689449 467120760 754084449 640235649 364283313 62754940 73742990 30480296 105972888 468074054 625219282 800455811 397500998 430788980 274210148 150615351 414309599 141889337 946075147 935482268 426693038 48120519 797494868 86144657 674158224 419509484 171825261 553935694 721371305 663072092 886153916 84944450 747090214 863291596 310537148 736667612 276338901 841349276 902517834 124934324 474684573 159766444 706732010 702374505 585208164 376559418 817842519 968896478 666490192 47299011 346349847 215522511 770224682 310275688 551322433 24353482 304568477 289592831 305446494 78928546 151733450 725028699 103548372 831796327 172709809 246443841 826990236 188350805 177425951 38180951 464001764 882953996 313569955 256615776 893444928 500446731 351654431 82569806 131387792 466520854 146799521 715779990 646730625 9090361 983344615 767113110 991043545 76776490 689290706 805463815 564324958 588060729 116388307 763696575 267437270 70343737 854147121 138827445 582906231 196880544 739399353 360231560 747126647 380556292 35114400 749646647 272279408 202004581 57173005 875224864 85997566 808446252 505183811 628899988 199920357 688539899 690580273 277568645 163814579 353993096 2899391 229796074 499991454 283251086 730630799 49175194 177459686 954891142 372404770 760347874 590931747 780071683 861979206 394177307 746013739 583750517 135508869 409913044 422947619 976398419 858495828 849953144 867584505 77013068 819240270 454028550 232825760 527585281 764697740 354408490 938078156 58695528 22831835 335454673 354916329 662006357 125698202 128950919 357371355 869697265 524699754 140067206 695305539 405716992 381511082 36596604 585242818 873515058 958209655 193362535 815542713 869012949 494442124 986252034 85335521 925776174 804977471 233674799 258527544 271186896 285305447 398811227 977644600 499537069 926858134 288374150 692772468 860624009 688648936 305491741 163867519 415397823 497342296 160168322 372227720 201333713 1723173 316759230 532000897 725566959 439945308 170024747 145883971 430583605 1256912 960230710 843333320 619120621 464913472 712327729 548694242 324750401 173635276 794893154 946934716 925943578 859689318 846440583 258005249 415989444 804926594 781917264 930517099 231172281 450175926 656186675 231882492 386056876 992721284 301283939 265753322 712225090 552407644 768611254 487363165 758619648 672039440 953060676 996333869 924347840 167440067 270706345 891313166 157962330 851545854 447390825 172412247 548511940 179150035 128193179 157542196 559145225 106814973 889175435 533698076 943272522 230992497 950046282 305367579 255543855 807420914 549985608 826325059 450256659 163597137 207500449 771338533 619452274 370801685 640047521 981499602 853832948 227868445 858616671 117714832 493127557 979007038 379282437 185258792 817219730 547803193 158891728 234314187 92506734 881851949 955979901 427053706 102329392 729978679 702555553 587059086 848523882 1614074 971302219 812128577 992210406 409630685 675964764 749042840 227781749 154622239 114681671 551875232 630745162 803506584 671410316 487696814 863078241 563724377 58499993 332611085 349221913 541369983 579349222 776755181 337206206 58129334 386207245 415770474 806107746 38039351 432887694 297810818 605495413 160653931 999303802 174036986 818994080 432332515 670225250 245727356 907953968 260392759 393212182 901722127 768876469 771831562 130474735 58782814 56907241 652952332 932715622 389021288 141253887 114807263 133354454 496037575 50044715 166002679 11452566 297425665 594011014 201115990 49462251 160544444 96927317 909417913 905657786 887364090 572035797 14317219 918032295 815031987 268060705 739883874 711818251 872803882 851208216 14744620 981558643 350347110 536417703 371947036 385968445 596020583 682455846 872865246 702113228 299821136 136356158 601418689 471587807 804981424 953332225 423792527 960439203 605845866 99851203 534167053 845540540 296336744 442511626 527530924 218022592 979058507 196949719 577740924 760296894 128060498 713842591 430758575 629814483 192724809 472341323 879834781 772283049 961818861 609408962 321994839 502772623 255202613 222344681 643124493 467147954 728940949 576140958 390590447 759418097 5577717 719997474 77841134 493096317 699945247 17862395 317940561 961530148 14253028 335591769 954225525 330763611 851062356 573669795 921962292 490643297 85620551 639620680 714942870 288717652 894462936 787067177 694160198 714916040 179938779 219970572 899404698 168118867 134234166 721170787 252086276 350625353 985780327 51730012 249278656 80558142 292458796 515161240 390586922 996770976 348697435 328273436 891001798 767070336 22562760 580792016 398236485 774027444 529861542 739622738 547023399 206435390 251263876 50082147 285149596 834950885 696510839 858179105 438570432 323703811 765299786 338387050 619283070 563627846 836232961 171633884 615264271 360284285 894654906 689291915 662652513 397326745 304404446 219882726 471374781 60783731 907575273 701737162 904673292 8454708 827310442 47912656 16812236 419352714 245999551 685828907 773775073 57801337 363257540 822218449 788382630 97422835 959342459 969276431 751423827 233509007 75456000 385155854 426482159 492425082 296161967 535011157 81796738 710242506 778567327 371100680 623774624 413809496 326610776 338002536 157490673 262342057 912436163 916129059 650409783 344305209 620539171 361945309 67077424 442967122 873316704 505930317 771165891 758438368 154057227 852379201 678653986 204333189 887049364 424177687 487956623 682009517 140494415 682444456 875812028 394028071 921531613 368282326 991998083 966587754 981717430 845028308 102305826 192358698 377041318 495121653 54939370 473752428 611471896 982378361 48689846 135999178 735574148 370272719 337627644 340004622 740623168 52976091 29803912 134024497 437106240 292341586 171371172 259838118 382086189 447606581 391537080 266531021 494282056 31763321 801737442 74058830 188989952 47270424 949227556 573148707 57194092 943930284 805701053 79148601 80475846 486815903 940218981 984446339 499272298 897483748 269786843 663707543 365214441 467365954 771587967 842601568 440418553 553206619 150745760 212492128 456970717 608499093 106651477 835278309 470222421 897263018 808118093 169466133 95730988 938485586 786992314 664297476 453543164 211569233 172033666 456382364 97371415 140470586 286827934 303432084 723127616 725719813 434152558 22142840 557285869 303528946 827596979 334081084 67930021 284829856 464786681 569690473 111492794 665422319 351110488 626121886 884283862 13821545 964376418 947012364 359587820 193285535 828337311 471446583 515344541 144807926 268144953 493265693 139207973 117670482 849900213 410323854 319528881 553245435 388639848 997819146 59794904 680854262 377693148 174228354 847311098 999525840 542640345 856043823 165002385 51684206 524530260 215215112 697201344 898523528 579809690 5605612 287828893 294322200 467403138 197385735 487162945 676986354 629502778 640437775 928806567 613463327 973619005 552150554 345527029 819022661 476305031 902398995 608285128 162096727 455523866 819129495 339705951 145420102 579709008 508257040 525861120 887692515 926337941 470413765 836324487 773416135 308837834 508667025 842367599 424161211 169464443 687551309 504920806 57943295 197494650 819914244 168064611 285841289 539685658 661781529 902026093 843257046 891401168 74019020 877596112 653445871 839917764 111857985 234765354 612236395 925904874 471434761 600115686 340177126 51632478 693103402 752367662 860388453 866513321 325644636 412670587 965929725 91380475 746722485 473321099 161204189 735707167 497891773 170095607 256093529 5908695 150464828 975308502 49505242 217845749 961562005 219711443 879678467 230616133 103315134 29140150 166117958 218038987 196304899 195024106 90931173 939977798 859989931 660984862 667535104 669499163 685615187 781996952 812984434 428589796 246921981 303652542 150287771 846118012 323428139 690813621 310877684 280468870 240151651 624415857 219246083 487862553 21355041 905111370 802813414 113614107 347237404 455249669 433748628 157292631 122630828 419049340 495918505 822630213 849632067 467808264 76878805 579787761 890541434 695313231 564079094 653275335 128519692 730643339 413196457 423543342 969973477 764072144 579926384 731120469 51561972 446637308 54489867 853227395 885055805 675469218 479908891 796564889 513223462 482183891 161054849 786207944 499279897 765020210 150236709 576438957 921541815 378960287 960572393 904950761 552678892 123709168 481832537 577870815 740296115 954585315 365331850 567537921 325000032 592978124 296665513 437307145 817247161 891586057 100044645 588583772 316123001 543220545 251172490 774426739 814962536 589568583 657320320 218084981 38049130 352089333 855403281 625533222 367628105 760806494 138457399 789786098 32816915 713084149 502509593 288448117 933080475 930535132 667893726 282837490 404463078 601430582 283893194 796082346 519545536 82778847 731547724 33061988 383081692 476484832 9644387 102552739 7478463 727271779 764975117 333622705 623078311 862673793 813244021 364334808 188849806 987677864 816989281 644445134 452711451 332042494 157226337 725946977 638543452 422378421 412635215 165827840 800694390 824372418 611603410 420288118 155847275 258765639 207473368 155529431 815381658 885364290 873613572 24541435 837129048 381255938 554025668 311237573 242155118 397488715 77992296 915640828 846044132 747832200 955970765 597266694 181491329 466927325 114897323 492602258 982282856 22976884 155622782 36604236 615841711 244341193 345926737 723730430 622388930 757010768 51104546 242627185 962554011 544051365 626999544 732115727 330544296 295361037 278065334 104032658 170535407 693277483 404352611 346191577 928469521 889970755 370023754 703939589 627160188 866602472 156039566 276787780 704426069 831943659 963080268 830974113 972292439 87861121 269923251 836992472 174162009 810835684 802996503 565445662 341342483 254275146 606536985 421636930 298895067 961822673 625757780 996979469 74735920 678867968 259073799 363433202 110424243 713703439 265032363 125994556 253732760 123411985 307577360 456371963 863006586 386522455 655319127 223045081 300042477 289306879 144620015 411111327 742101254 300684389 702364249 691442850 38994301 554403129 367604356 163056649 571873607 399643166 353101094 312416705 57727669 864027289 502121562 694491997 713604311 605133039 1592755 702953366 119370716 209640864 265691415 733130085 500190265 368930701 305635722 274240284 556064858 808565681 17571690 427987371 206564360 637461602 317234273 458113534 300691072 371755919 833295602 218254101 852768019 85835427 981252361 265231369 356849677 333645698 881583799 14385420 394475971 528861410 616471982 43212859 342206311 572787099 50391968 904999622 936219916 250958307 928990780 786897768 70775924 561463748 943571825 171283487 320711780 283920461 316726464 421344990 999766792 309305756 176107795 600197926 57144744 282902353 708226408 57132309 249333037 450269873 797967250 23782016 254423707 71070391 109467278 33377509 834389915 145103862 790557236 695883593 587345353 534466625 625420603 677453718 737497985 800537600 487944946 264493147 768563616 165355269 556029223 861318944 254315029 44131573 384344492 933111747 29695862 379209217 62044866 588544251 591411795 812965952 249004466 87314525 325804559 769550027 922557998 367542579 344115298 260357976 792927107 106837328 403076389 173304921 980189995 344755042 908067088 610883890 792147353 516048657 313704576 815221827 597205206 821384636 963131710 394326252 92660861 369861389 957241376 133004676 245531799 354814917 272585154 19746067 490507734 146915810 729141214 451253537 337060177 788580161 10299265 806783692 162559753 694399681 206302859 915585185 632846036 784262895 764096947 982686494 226126558 840799895 35370075 347856561 771951277 77295871 114663038 770337793 614532177 451606411 307045437 211053321 629071339 284490364 585666678 607916976 708097967 601423117 298488723 346699536 842708287 391046624 656908360 939467706 519182869 735335672 754867949 807611054 315430795 656801410 24489465 26963942 171528400 722604416 33595824 833640744 815452866 705514546 799774007 396735048 239367594 161451439 716684242 691284694 858108055 838895201 835757692 608738136 515587588 753268467 756337579 162286377 147559630 158563104 163911873 283538077 875056993 745066999 420133750 422269758 624079471 937532650 470580364 466221040 122227269 401646271 297200067 322254185 756575078 435748204 6998211 194350771 127962408 643814354 651284823 313939081 232122184 952246922 962877181 931530192 208360753 574853858 468401439 960525272 608800072 165157606 208178824 952082430 698548331 762714701 739293108 884324001 197107429 669112097 558134294 70678235 776327755 578596409 892719905 958614387 724326830 781860236 372982345 631088844 73852715 360839259 730609746 48282627 196116239 294322055 819475833 440640875 994922718 91358689 116562414 254291772 660079317 248893186 949835728 251815985 545238166 516767251 297947980 270633140 282521054 790011625 143021866 781237021 836499145 419642597 215068050 481579200 364079429 338442900 782259014 263918332 397302383 964556025 791440013 373867600 460830477 923583607 476243437 870421931 993729879 52345281 791104935 326390853 251529373 819052805 192720050 947899339 894251981 74540179 103694583 639809138 500895123 953900298 120567082 849470318 487181189 17598728 573517283 71230481 891110694 183498946 425773066 870961372 360707522 368456018 938414656 490277983 580084177 17475295 921041651 47037097 381189741 847069961 502245355 582051419 987710339 212644864 132679029 717550981 395268230 22461817 165237440 910636250 532067465 197073590 986255677 915474276 36103947 969091237 518040531 38439423 677247482 621681237 8830680 751055842 548405929 472009778 555066943 816956925 530909571 908710039 524678785 571966278 268926046 570739093 795940854 314816790 116475848 333891276 486399287 637709007 621195542 526305625 222866433 848277028 159021528 386863425 948099147 98121128 306981757 725120299 340278130 347266824 702509787 795835122 552320221 899742742 202941573 569689832 659296586 862723652 429192704 915146132 948605420 726260395 704055446 183139584 852351883 767219821 745270196 776586667 40326982 615715035 117642624 428213577 220128815 299016503 442964446 696866583 671458255 560009000 485672640 746082710 901029319 947751422 137636806 602908656 967604772 199180775 860231230 303918756 812863331 655820824 364135302 920014495 40301742 792338951 902522961 246641788 973976384 454848047 969969511 194178906 99676669 20715389 94841550 882096304 991459989 614704429 436753758 169393550 422017440 613593532 644947472 306297818 551823928 413592829 231999122 231869854 498193614 280500648 429000507 965305496 872145950 450242460 588856328 927009119 572880831 187092983 982348475 535768275 863963444 343991540 404165692 659102741 369504435 129253722 664510207 913895228 669703892 993937451 627930076 141115334 997597107 266631469 752236712 738874162 103949742 838035804 384969355 458480840 804766442 6451519 202424938 824281712 697524826 7255268 687061959 717021563 712595354 512972429 21611109 496335897 209271280 19363001 756005900 946528474 139410111 713273576 640724079 663961472 920771194 905242448 125905803 526671320 807983374 829264351 962292058 859713657 104372552 410191699 766512593 621632064 96623471 69037778 179969792 766093138 135775496 319135948 527491199 592653146 814427960 597701650 455115287 912212887 810205392 837578182 410845533 470393960 133970373 524274593 562481864 109819063 678713132 155676148 913413477 382881750 171700494 553361116 883081777 238120701 476609147 911290473 238065724 419416968 209560244 886997410 214124848 700874975 688166230 707664092 682613742 838601274 971489500 650423406 303494649 425253682 711671254 248866489 778650571 640562449 102104444 908344119 208372139 733573362 678758251 65813149 354674276 700327498 513513196 672879862 809249552 628645290 914883019 851167102 954475026 275909349 36537812 777455016 160998114 832572590 374021922 60090433 821916506 798678879 798987194 586336818 403140397 882122010 569945290 619659486 162922374 666038451 734236093 289796296 885823127 111702469 619475489 901179229 487294313 831932547 19246303 351910476 875077396 210575266 426429555 712707614 937507341 831951912 27128895 410109359 6764013 453722872 383591658 417876333 611041526 811346732 931727536 24931820 123518402 606549832 489967932 968220242 393067019 742752476 783807129 761018477 669084804 167336816 713325971 143653316 508512891 187682869 192298225 913674564 772099060 731015835 955115950 130973075 458758584 111826651 758499497 787202017 682507768 187984825 298726629 396079929 43155100 631313617 993529 874241005 627993385 363294234 707731949 280354883 939340491 773320010 576989620 887829400 494112182 393243125 93101955 35328375 266740561 662424567 433489060 330532088 891238044 321592170 488575549 347584630 922208713 519034132 675879571 544669698 31778859 397848479 992024204 947058756 109805594 177070399 186748859 197769842 398165284 857804428 431666917 586781161 447844904 560683640 496464934 799420065 25656514 89852079 362120527 673624311 689580205 50702899 151033559 794848650 56735912 466542500 2562246 790377198 334543464 254862246 260673749 383488784 676642102 811201482 383974659 49771379 868920056 783277835 637112587 343132901 354402901 822558729 116354218 459792250 862792322 24498252 980867609 658497672 9116428 867184888 329903823 437134277 292045196 442524783 44143098 10582213 706126801 281964393 661273258 539146796 380687098 6789380 300499377 219734262 2851615 554367340 463238183 91804174 843522834 923784126 811478542 104615562 912720463 945094686 497317909 41045439 453420573 283371071 581586375 975322913 644534260 330634774 764445267 316957410 403150745 920859733 183256091 989539739 239664250 697454926 99270549 917904853 614777983 78721805 244976988 46063121 21495329 758100746 750959753 46410435 524943378 744355078 884547910 430740717 958652835 563784049 933422550 41562915 69152897 466673410 447179174 358109928 134796510 978557899 483987735 564324898 421057774 493857567 696813310 997579145 204572915 350445253 823291058 323743945 992976391 127758509 510771710 140942495 332349290 633361106 539616497 474210343 564370218 422134372 95672656 569429747 172575544 171550599 800826654 574785517 368548321 394334269 174348318 743606980 928964629 754901055 982646864 547214679 895292765 469534085 801369996 3523061 850274453 161678405 794462585 158309804 238993055 590929215 562482189 110628550 434188431 69995538 836983909 20129878 565529951 928157074 133161685 666027052 152960233 714370820 113910132 455921021 117620000 232094161 420234408 540547281 986886956 800912845 928321720 863580103 874521767 945063321 655140680 700995854 890513130 262500314 562050829 864535541 339723695 347312396 319092139 764893356 684729128 397529573 286501230 562263106 313183683 26187405 583893754 836925359 216181740 369190789 716110018 988350928 295562110 602906279 800521745 664763265 653305612 715007507 902978731 944540685 727128344 840976766 757192904 822245154 981426700 994134320 553725201 829152887 923180263 682817966 635025261 160764433 614369022 806266183 43133848 22268332 427923483 601146590 111606405 733566338 540927732 498690965 843009997 986048581 57085360 716457230 67900507 192270317 128077074 612322850 86544016 55867054 276805389 656357256 971890081 589672617 71409834 436821659 244820755 239751150 757286162 84064277 51247905 88676735 837820151 173095710 124653543 249393336 957357486 707475289 81122396 645585350 398497207 312965470 861185947 163963735 469932151 408724447 254175982 402952357 453670719 470527839 590544637 161387996 861367029 724014185 659531310 324384484 981310784 65410592 829430164 50517857 55688185 761293963 484109221 386617208 533068214 657693816 831867660 610721617 29349630 251459752 739969901 356952501 496914255 636509825 436000843 931711751 924249678 240337715 787200444 880595688 709276205 999708438 856532232 248192445 671036464 98828957 431417908 498709686 817357818 372231712 287323539 720748236 600903084 157935417 966029658 294182861 287570055 189591534 687077557 655667345 610970423 736539921 801368072 773376388 641679303 126688537 776447927 802619994 540972986 803861026 961868899 282795694 723963429 318366420 173992404 313793986 213268846 164506742 182427004 221311578 164650466 551400925 760518836 667603477 557007856 519440891 422324299 537242417 573803463 221455579 184477681 625304363 620150802 315367194 638157050 510400939 898809195 365925203 459208771 161395678 339480388 208393795 107201179 914622460 734775711 616990207 938810181 126828026 758116529 724631272 617379396 275944919 519906813 174994872 991974412 292377426 341022828 578487186 519859030 484666681 272009487 607283499 404588142 99067693 323510665 310944716 431316262 552381212 600442410 451171308 686844525 945638119 966560341 789077174 93448378 393308672 377732486 785029540 250135968 979714953 25742205 901295906 752364696 582372966 66022381 119209479 318659173 414050349 186874007 13247192 794421123 667979647 282458996 916712662 640766519 227279203 968801149 49638571 470993199 7121004 659683397 855752968 61597252 567391857 530650805 954387479 245914128 465021053 931860407 863660374 985479826 327730277 51375 825420089 180878102 393066045 347636907 9538266 383597105 388706283 415074026 924391414 798152336 122639295 671866334 777979501 262956968 349400838 621177367 223711173 791336295 763304401 705324055 482366203 877730533 843676403 568096714 658334929 947388669 925518949 639564142 400554413 528716425 556788568 298636694 555923364 568628853 43809709 828590166 507445690 713108864 689616241 799097223 200439503 721388765 369736087 604019084 664732469 4333690 215978784 336836140 815379147 264543500 298544586 244561362 911354157 191103305 1891643 719522553 678396748 7517522 757464881 856307931 315961931 997208838 500537101 637113254 97262660 683806434 369341734 920626543 302222184 931778182 480580130 597108749 848498501 218529145 922128834 116357688 323150474 409262525 688673492 487091729 397984002 232776618 82776468 17162768 19174075 893775499 467464873 606699284 323898608 711293380 265127085 187604181 498516715 682964205 698842524 3167214 554149192 627958844 762724014 68099573 381551150 575631054 219269730 426258794 349602992 247869788 232507159 863607972 249238194 354380612 224764338 76855289 436520397 577083693 584312444 572034599 320032879 112954110 387966817 542452720 127577695 307711652 194878236 792437074 796931571 520927188 510044996 291502809 80931682 841051236 33327478 356317258 552687568 551342262 919730906 378977952 891378538 467032566 766476352 388767045 486964773 516353369 881562909 90055077 576185650 503752041 878193604 161519872 397830529 837828521 842025853 236703919 117510245 251452047 55351796 483286111 323432623 526113423 632566363 489641572 116461725 411364844 681598260 112219150 675785589 672318829 962108883 425184973 540058117 267808022 510160169 770119907 507088857 668741833 741337875 281398573 652999939 459905118 384818599 933340433 534898403 939056968 597919291 422747318 749596835 196281432 180992718 853930085 160120138 161326703 264433070 476310018 932545664 648644722 12925337 729073427 739356407 956490150 729639497 200330404 465932250 388093947 810050328 205763593 24276709 904061056 751923552 802525577 539723772 980219527 234543243 45604727 12778021 990618499 175202381 344302594 601816953 123420046 257145847 655319150 911032923 236115777 866177342 139205180 373949908 631989465 312197550 379608286 950966049 248026068 671319364 670778143 376237230 159949988 731107976 615159896 658957720 254091193 898916884 418816849 127217813 209819914 947248275 292306832 281106761 638742355 71036815 669553159 906973477 422097741 847510777 3158311 51546518 515403964 254866459 747415984 219791199 37519017 918575848 721143049 315536056 328762775 827672958 836647757 918660591 239594424 134996559 502909205 990677918 298833907 857206078 681914802 943000685 841368350 251690871 242197786 84581300 975809167 822899015 89137759 330433996 313164023 822191823 976138435 585075897 275780010 748695288 128648401 386611219 110703198 320269136 957103456 416778824 918810970 443522973 779071068 999842137 318678537 642844828 991655295 166227227 244881653 607798901 677660191 906419686 78358681 504371207 339061418 378576745 853318672 445564719 47241548 343869034 295773380 217623707 508208833 763676680 921778800 253919637 987233022 563380507 210456635 23006973 278278011 834542253 413614158 250851568 583422411 673306945 460788368 790745878 229454314 34442337 722664451 827306691 76151740 399014362 455123957 754115952 767290032 536449124 533478680 516905389 643936887 308264058 876014983 793320376 205272488 274322369 526165926 266875654 529406344 866383042 281525383 279612356 935942902 678064144 554560274 83839437 723415507 394188384 190596717 372105973 705833968 635317466 128937569 52357167 622605711 182808912 384404173 692095778 51402538 529892725 734582628 451991617 714138777 963513155 67728131 576799650 11966680 804225916 700259395 207514491 638179025 260281755 989802574 843806295 749116488 489352269 711185599 945517955 618869636 503687700 74507225 509999452 989340820 68519061 582663199 211674040 142399649 333456322 302173032 994860659 907921212 239273097 149174451 679011780 419225409 87942793 683249332 360995626 929019178 793032727 125772042 180688091 884238724 947566860 868010007 653354172 772947275 204587971 786639756 88418351 433290583 894492015 662085002 97811803 226795354 168202258 220076249 229321149 750254740 681755950 281746934 417706687 649027919 579018968 717564184 7947323 639578634 478340711 871113362 632723641 196793682 414384348 903030328 177991953 184779518 354551558 729594168 175374080 988244764 499613876 518269196 136807105 810621298 156326252 37307775 867778831 895549739 733585005 965943148 199571519 361842820 557811490 647156790 158768345 192723058 677941712 204059536 315805871 946994065 300615163 357431030 859042570 866112029 145999184 416227336 602381134 846406285 200846731 721980243 55573210 200039058 207280224 544265437 792694074 287126562 619534137 111915200 943960801 694489584 995799901 295011283 630396549 955822691 47737015 216446897 958675971 766923055 823443148 116068496 541886730 192502062 518909741 719771703 229615545 251215312 578098875 46492922 123619360 783861433 294678432 363315149 685418645 690647352 891339267 697330234 789254802 145072114 544340751 126940698 63762037 725428558 146128263 208945823 105487075 895579680 235738590 865494563 640167666 732681938 143931915 86449367 212568150 586388344 264946924 267168879 846922356 286563518 809161904 591151825 10370156 484774318 192606226 565929341 36325767 936342753 808886433 996589802 449009231 577492517 525986735 231046879 169882691 28608479 171493939 988173461 576814198 688888796 255845382 127409888 623544901 518163795 637683274 927324882 957870002 630738184 309235080 316306092 799209995 865525614 260579164 937044935 226875210 349655854 18733517 937070649 694323215 143911072 559267664 816774887 789078647 425657101 471052206 368796151 296208393 579405704 713179665 982085901 932273786 837812414 766304181 318341195 154096796 147155646 782579125 774762020 312192005 590669802 199470870 583647082 689835813 217689222 283002887 498664218 857176626 74260521 867161621 873359943 500895548 122984513 413841952 139911835 588825643 121374949 508642836 292579228 545699454 919812085 339697803 223772049 60455907 729967272 681265841 181101596 234655178 629437761 413047137 415064421 271353783 338213760 528104408 434010710 438684888 984400746 768384949 679997104 294549086 291987563 948888041 88497716 432323014 921053636 961605465 189380554 131185787 599330450 939318052 97574783 369057269 134649702 155430985 42763496 32074520 896732948 725190406 686597164 687468544 674729473 22508375 627956860 88848624 29346982 675616980 218277719 361085664 74266922 872895751 906955633 163601092 328784745 516690252 324505882 717920788 163944969 974502772 547074160 77150980 801808401 926276586 956051817 928651347 363305423 306056725 507986100 833505925 971262949 393690193 502697576 363692061 517999925 737330722 964419528 149256943 975734218 778629758 267722426 331543227 955299755 643724514 164170483 575172292 829669548 170752795 185970827 163100876 153910961 866881321 725594199 655089565 196441854 593024708 356249755 872640248 14510127 911295461 415033659 96032253 843482268 886803971 768467382 936311181 218853117 44404839 981012919 221981311 676762022 496077396 941595328 448239013 874631727 849577447 517501738 368924796 29094812 328839270 380453640 846223347 362538895 236903655 111793202 23646483 404617502 705231805 449074717 889349908 539208377 261278548 237602705 605856290 587051375 120477044 754458287 804178398 268422638 669630698 87044015 653849868 631242571 765481567 147138976 442150849 220147259 348618353 956078496 661947367 979338555 739929527 70583033 993842227 350211072 181657017 468055279 452788505 989517771 314381562 17317068 992379010 410507553 937327847 723190518 75458047 966907112 541602839 441377803 670917954 291340593 49863359 788837069 22839344 463388044 601776632 513218702 422982303 544047305 820486858 447078259 188612886 613884880 258528200 30564651 292468466 249389771 562907700 618098571 684754031 36072642 262873570 331850102 862939513 982886727 356551077 670762518 573960316 324427180 66665544 283067503 993796416 803594788 856755816 993204222 411939177 70667050 328986192 263835495 673513556 299214758 577955552 851075517 142903130 706558293 94577835 11753989 375500714 621812730 693059285 515626171 119694531 317069330 589094690 399070507 360458068 461847524 52560388 844473601 831693152 47589684 762581344 788217084 584271632 737141836 635580474 592976775 812896577 4910224 86055754 215836855 192463971 854825573 293464929 472212425 249650762 617510160 610304390 549974320 149136190 75961614 411521718 589362508 312623234 762643483 589527031 783717228 667608824 844745313 110290856 885910005 242779476 305867348 599645371 295906638 274336385 16468658 547105243 940554866 369035322 794503423 547491949 70141301 922477914 240954456 918192657 396637987 422248860 586471480 533439055 528413774 839903304 276994679 666398477 258026711 78929313 814929141 362326101 608589927 458747835 222095405 937521827 769478665 794196267 854630166 164056874 787076158 690287754 549846852 517551459 895771978 953386200 797978658 380677760 650964255 773953577 625311809 152451322 827561647 871197010 886805794 737262521 739300158 600549259 411591921 94055380 95461793 532207718 187836852 229407569 406863486 63669479 637343688 215872090 553024959 819159441 460829289 652417713 526967621 547262390 905403475 384910470 590246853 121920732 634737773 479259684 599234862 747237302 783235274 372604734 722163182 306336353 498351431 65954664 558300441 472574240 799984191 475275554 742649691 651459482 673619513 142334195 638110970 638876513 626032428 567225100 296663074 173400730 940554913 150920475 839438116 605862280 983027824 506788508 751750845 578067437 933153032 131480744 416493985 592820243 349794876 163021030 736093736 441301689 15158385 300058253 65425501 657568342 667023314 954381832 212405960 719121641 875481911 146378466 732317982 969251789 994454585 235948373 869036639 738010601 250868449 687074350 292363671 922698238 916219723 238042832 826067484 854240932 68426715 643864770 173168190 810549961 809694744 653802937 281964389 869630068 569156643 855360547 264535427 115079180 374480762 245262675 99071615 995858168 329824437 1468480 353242335 619125018 710207866 488220717 171132548 96106390 579765660 376208648 898975631 659619354 238090331 368666969 319189339 202439854 404395276 899085885 552499528 674995285 740593233 615793063 821309238 872137439 638737177 851860987 748176869 327620191 462944186 72454169 922406276 606260147 273268473 241588968 745994949 484216203 880967284 93196115 516565200 127700608 6638142 629920552 177229305 346682600 433373384 97514132 421921017 830747290 493388294 78898182 572769182 44472417 637352876 300496833 795119791 675577730 505070794 909359338 658797057 427465146 389374409 606090223 95392822 364802103 961578060 595832685 715276542 8072081 324761835 321899168 698286064 402102105 760884962 898801626 792748947 220413679 889985565 974939659 940281241 806713097 672828733 824977455 124623606 269636325 363736357 373421754 925168913 372707884 225863069 109820401 961180653 800601930 692491508 746451391 847870628 446858628 192668697 239633664 628896022 81768536 736783287 7281161 854153068 590776250 872798353 151363493 259010522 824519395 129448307 278668768 137488749 731259637 328701604 739734052 683778169 46914971 754586431 725119249 265997975 522031454 471159970 667331825 224900498 346200266 918194523 886532719 58821817 659609155 465929134 664415983 48183657 555632303 88087202 243742846 437767032 494512996 619420545 564639252 578644307 539578610 446158559 958570815 519451683 582001225 519312457 539933380 386558785 852987065 639559411 591350069 806062521 844236626 770281906 455014940 150734458 217418110 825351918 278166010 400048105 431715961 612918919 992914242 731026591 409668071 647685229 221724744 985923987 584150751 936261788 607863855 571658861 117536666 250121866 365040301 164851865 314319305 425514182 614483097 367125760 147806436 405973668 659821074 195865545 580138095 146271623 378816900 334107386 559536982 947027628 878665060 909465599 433456765 886004609 454892524 471182249 590667596 255792944 903727446 10888501 566954383 290019073 924047202 275489761 676738530 631311142 868783946 224234159 941292357 919855107 98660605 969517820 414964616 497852338 944992739 937792213 612973752 549067635 240011709 623205809 473340144 266020893 719465150 529067784 662898535 832333562 807044931 168634209 986244475 74358974 701082431 772525362 251440898 141748180 743008579 846568987 423876309 319329004 294584160 546062845 428953353 535944234 991306368 437628934 267523088 308802470 837339679 509577950 46976153 721023934 829750966 759240880 335493181 126683081 785758940 182250194 53156522 816476336 243169113 945163449 776695483 279996526 817349752 938550306 657982722 874174031 581515323 420034957 695512703 508009927 917637051 342432863 31238075 842383808 860382957 51105064 904820049 901641444 41031468 616954888 66596851 785623138 131057106 561029635 834318603 126338144 139417861 200344693 363664301 247316055 520296593 399526106 326492532 893923973 966720 245366099 134414849 343748290 31853738 384589315 487611071 535833370 552717851 43358470 167137596 549860078 538210991 174249921 346281620 660123796 679329753 366565583 291432229 79438553 769953220 634856316 469608286 141695396 620307118 981976270 848924751 810329056 453167653 314098616 375717163 382574522 721059475 625080038 940750239 101069330 588986267 453304311 477368222 954744826 241859082 455302585 670222653 561715846 709796062 962721567 467744536 104759800 257411245 913945834 516774958 237068323 970161812 144005274 830766476 150165779 20075596 547349212 976865827 334608745 705390627 232410846 565596553 438778291 820001921 284271561 484670674 819721535 325470271 804613161 309637356 45678399 97500544 275939263 554548213 785895306 661556482 972710846 366620758 315691573 860402990 515953595 532316547 739330229 508596719 736681188 17453460 986203132 970959706 407963462 301964950 805441937 415341628 390831443 297837958 984309445 396490828 302541660 610507596 531983083 461045441 179989017 692099333 977568936 303195705 250996761 93240907 312244564 897864083 249614880 286916402 419574961 311609825 961891332 401241619 264078165 867348429 248189206 788116527 669395347 402200049 564029170 73882482 12362994 64969672 922559570 168077503 314722249 653347585 546576187 991754803 637858998 294631929 957300938 442841303 902173328 264167688 519675735 808480408 860565502 237461206 803145006 86814335 256072277 856308148 872450875 728145381 574193314 495267254 609194743 346616581 120483504 475724914 876250385 352142080 830905474 107275526 331564286 710075807 440958005 940615860 934622190 918080000 243002 421244428 210393286 788156503 436152625 677745844 796553226 733840351 110974197 926397440 32472220 149060143 128873223 239504837 859467082 686390691 91236228 633227617 286418293 601259772 62973049 742429356 42452197 487687592 977144384 895564874 727753989 143661167 598026335 745770612 929145806 723053696 206664831 891727723 254214511 179616279 734438655 47096262 485476015 73046148 288002406 437872294 354404494 635540678 882580920 763543289 456060770 920063675 888703265 378299880 715264199 193339790 716689729 266481226 116650359 77871462 413182623 936534224 77763557 623842483 398239382 586722399 383401393 429711679 650888220 659091452 727546229 401410678 315218001 485143562 92861197 793978969 498363901 501208882 551672803 829805696 114750363 323380443 632982644 359333385 850034832 883467558 850139888 982020518 686583668 309810888 661646701 837744221 839381501 229515777 620817352 117989819 962936394 33740791 133702472 35284059 284220145 158379919 452449483 281203626 335054840 530592296 207675190 425049894 147805388 422463219 516027940 227322175 479821176 924601770 734668641 285061227 842702277 332608322 93963699 697972451 642371921 877762141 194306156 552920307 525774022 869214024 546136479 892177651 622284493 910762733 530288043 265860243 224044108 919710787 975246187 412220487 931075021 73582933 56854445 832617914 450275969 975226190 87748657 431801812 843939965 984990504 802763401 447189323 108794541 978681443 956674813 583685654 579826107 633590742 346303740 441847441 147745376 908245075 988572521 583558534 856519034 708574575 129887532 907120402 627711450 99811391 24815769 903124585 478760136 807781134 231135052 585479994 389449976 730946881 695277184 799449035 772600781 641933969 625665068 634896474 204596058 585718167 6499383 759027077 448359711 913626623 96771215 338024658 124887764 997720280 669790944 300976367 525681653 599071297 650216996 516389961 601281924 503999044 450075481 24899436 518670373 676192100 570759769 602163705 609128649 477818867 827286953 254820437 593748850 770441695 659333489 504841739 601667138 640634122 771197470 694808654 353701795 876628294 675506992 133481882 500954132 21222795 714405319 706799262 959401172 812921503 689685951 407565233 532054652 88169922 249662167 727547189 699002545 311766929 642030981 8985331 896251172 379935674 387511106 809544075 188688657 650486039 339591439 798872416 480990125 508604933 402028610 216181618 241587412 790709852 738226392 345929383 265481274 194744816 389402939 783791136 498826912 598754257 611950661 72121325 582471255 907781173 457349869 978105390 341888754 319488843 453204613 724900283 887738147 946183045 341248618 546358784 198803275 194101203 140308899 317192828 173581901 729785568 546135353 910830356 270011584 593447539 966665650 454451942 953948341 917422700 337278130 210404437 85783529 936152535 736366565 491168110 530096716 413733401 805500018 970582464 690666553 718393600 58215575 472080362 480804545 331673721 998058417 198164437 471640221 568185815 946162616 708888353 592854039 42074789 257356218 376329738 283727630 726615150 522642212 351010635 186527104 255867347 814668613 494341622 762797347 211002922 445087150 615805037 117776827 722284111 904828984 645558711 643868916 535396998 715614718 22950231 829260268 570005956 965443370 809816540 495341668 838305985 522589467 60185477 356231345 374735545 218842169 794529095 447799939 969303305 945311586 201941395 90151416 40952717 384704764 939412223 175073992 920488267 45513927 439823054 479667124 473333298 306205268 997101531 180308546 7818622 875015111 834299996 727934514 26445527 205503255 92357872 844223897 17972840 516419976 869610477 906728462 485884842 57737266 447088362 634833723 797943216 587032879 9491019 490469657 311983126 720028183 659896133 498900462 243812844 787265638 252405307 336946674 602618098 910830025 865608418 736982441 628446503 587386992 233005155 378305880 800210059 471926454 168553736 458084984 405675913 968874529 234773858 257341785 849155928 911006503 947859592 578229294 290884760 580871903 782319345 114618986 20703717 188234395 847891991 296336010 575908603 318148778 591484177 863851682 592647054 202285331 106809563 115011748 688916404 527848783 453191205 863093748 354165365 698535124 500771779 653312925 332883926 646452947 268363896 726433851 449343969 795544655 834498202 337159566 923989622 876641913 863547475 487243887 834818069 856021377 236456866 9575515 979676223 788220408 112176324 268096176 734307048 69512518 2524500 732835790 620697130 871786139 832364345 936146367 684624366 810078527 735484453 420163755 394610660 986962016 329670083 479430444 209732875 598462927 597885171 193759638 413793807 801965309 942760672 864594918 927820382 564662852 227139310 934230549 723198892 677565296 187096605 345671964 339113239 772841144 780755510 131626074 937407310 109631219 69890092 465642005 525830195 910177163 923717915 451079385 953631704 675422328 478949222 189221722 879037022 144547812 538508579 425222231 921826416 323549060 202726301 364849875 332339866 880116265 557457566 480708510 242598449 719316260 58090633 698798395 574250260 612244027 93302111 810203412 75678800 810985004 599222370 679603174 5156311 640954917 488010925 238665293 380218681 998402349 612175983 520900373 225434047 737604780 696401576 441795783 322223689 888079274 859300545 276286209 592978649 195739686 157531343 725334240 538833332 404726716 363540153 35794926 916327869 769379452 88208467 747159157 377133263 195610317 986406346 133629359 836231648 647215097 892222555 129822230 315816960 428411283 539236953 534843109 993165694 232384363 624909786 788636147 498835045 159415418 351867005 379614673 71508 607656817 285181042 641899919 860848685 4040624 282379328 190302510 24556517 407633155 536493108 814261728 806098022 895494301 121800411 283110384 780810697 731932835 597715181 295221678 785878645 639541983 407357713 132571630 793227380 821402700 534876416 437839914 437566574 117993846 271483985 120269977 523010649 487160597 620589344 896081012 799088107 395584156 609358831 483947382 112776961 734905787 72126780 18938990 27044692 534344729 134050667 927663025 35988642 752376240 570987692 669621443 425266561 232276106 965123146 277697167 312540709 237120931 968011485 456141345 369261445 828170863 284318100 8337554 321249181 530248499 274230439 428909944 149988384 812574948 798781011 232928732 848531236 29507090 793017088 197826279 505000238 359859112 922658745 457252279 176991859 181286060 685442772 923125958 276223558 488863715 335207067 512163367 413996926 558602967 908473651 14516589 672097329 474283190 741242756 474045600 16262585 337941562 131914939 418854400 861825496 737858157 900049429 427257121 746630938 132109211 151764387 795734933 164582567 964464063 443534783 436546234 898457258 224998629 868126198 223307423 371677243 988544075 779988450 385593395 962965470 549598503 424259891 806192917 704387731 478724481 802073016 507099863 868278787 219866015 414225928 196244436 58159736 95790551 822884061 115662691 577835198 838993037 263350859 900901276 823230201 376308875 618814226 943608262 148309351 615362981 104490550 730923608 312640918 543059429 885107415 934959761 686877265 903584774 201706000 607007763 172674332 740614290 429972020 388307901 700312095 371923159 44250327 897587758 585817299 223266194 155529413 986963087 605701036 146723074 290861691 477366221 290150015 506744426 194803952 767232572 65752403 364507844 754236921 333570157 912749872 305189003 849517181 301870386 460471621 177268503 53655854 711830317 397942745 830558861 80187943 991533219 238894402 697222589 787421563 926797298 755127718 457980518 579468632 585062463 781105406 276267632 571181515 475254287 478516238 304575831 823463090 838319139 863247128 562454420 947551541 891102539 137894117 443602920 521692113 379201151 57566219 436195709 469105005 140899952 897234957 101015097 203373293 882421059 242126890 83899930 366910992 161847769 827202136 802594359 420851583 21536183 178777474 344795451 435443113 727887578 889350373 926922706 294231822 317801623 108506090 94376432 123999665 987900694 493572432 262753665 128112362 732671720 354373126 612142879 598718564 824788744 719136155 364179924 687869755 326857757 446553257 862689579 792887057 527013693 200545622 422085498 90569555 117642387 943617452 840416461 718567905 378622576 500259345 139724279 712327417 23476928 268501116 280693042 222867415 3038106 194651083 498639346 620805109 226395201 174436774 700108796 335687276 759651243 567746325 679168401 655598439 538399158 638382631 842643447 53082679 164525695 31316635 741483578 983901456 190925924 740760368 46806264 31913793 679907193 241372312 490347446 637814941 949607497 321618425 221564286 694350050 3377172 422070638 637763307 845288987 890979725 301607080 202978372 805553751 488546780 223546242 292917973 356403188 952277829 424445306 412164152 120712361 174629397 314702747 925023632 741885055 832002250 763561695 888789635 225223060 402840647 839114085 903058511 468059118 354847406 56620119 82936927 236634241 650941091 158802786 998992812 976289283 360156104 555593669 294414173 770806842 754902019 664269634 177797780 944512911 151514360 686074633 538793443 77400601 781465995 63257090 949011022 35380390 327072294 907905555 409232757 909773550 5955880 406317765 193081664 39071215 310869631 687359616 543520120 135341045 876188548 764114567 769618935 160032045 192493361 125239976 903075360 301199506 334558216 122083000 878086081 917934730 484795002 635624691 295775055 705564394 585874405 879921536 583265308 241484877 254771933 635846988 450301222 241951682 369704456 697105826 448440264 719204948 60887187 532220066 523391405 365563072 425485154 940419022 9942577 635393547 423729816 108868229 686624990 653430533 40974648 287614345 894201096 240058897 657661337 91510122 260555666 868927871 964166758 644893098 465959156 291360710 140999037 892204209 670241300 821349879 191303544 238395092 287885874 820029341 467459514 273639664 523861142 420441302 970414957 719570462 142558861 963044330 735723076 138190053 530264668 969576590 869602406 458847369 114246980 142230152 465098123 858128656 950020185 211495319 425888489 897231365 192617468 616416694 104757697 911980707 634636062 337941973 750671681 792785807 592080359 643105086 640465482 587209357 692182561 967414183 913123965 482727713 239444808 435673990 917852498 696558787 655909360 867878767 203399967 735289089 981284970 437364503 142045641 605713067 107894853 263546170 110095063 348534044 107953213 709865304 805239100 252222745 341239160 198641736 129539346 242615233 48161650 137930019 835865241 249418522 82508946 994470038 47846711 567669721 194197757 333871643 890582437 124708626 367518507 539965745 729593197 993940467 100188185 19029700 208561279 270585749 496224336 298372144 500866104 391291746 973365904 955320675 137565780 893295534 616074698 611572058 726545641 95264682 842673009 381692031 786070853 738973908 533510453 532034473 741923404 32733357 206703347 382556889 898278106 27349690 345910029 725603197 78151248 622367886 697753677 57526025 253938194 240290179 946582479 677857384 739356243 156348624 597235095 962128851 269021382 943187642 233845420 482503128 772437936 665423685 596789324 25969184 528081951 831100847 102831999 364646694 538267181 179067608 629943412 229196386 150412618 480134261 12973449 797400994 143506060 406775794 69304964 745106188 462455691 649488384 862750542 765570651 795495124 385827558 709911249 320940881 853295986 46250846 213585357 696393977 474751151 121907943 485862749 557519476 607900320 207733314 333699520 431680790 366910672 242243578 497420853 797713566 261348717 359361373 909248824 269633942 224454609 796534898 118161728 44439478 902453702 540869363 773449573 694042375 429758752 523829331 784607577 961433260 75249638 241302860 254196659 363565288 902360428 874365944 361421487 793222688 631667177 502344838 627942485 642495232 864848753 709044688 546998533 89688874 996550421 551862435 184544069 642329287 704372642 865621039 644908231 94212905 504248323 987135984 113155197 664639114 52345743 384946662 147905580 86644833 964749037 589698145 859603533 462399011 528005550 131008118 712701873 290101909 261486612 759901839 845721209 610802027 369945538 818132437 749619788 480066263 753672766 631333257 885972238 190877547 394370646 450842832 485728054 401664984 458840316 638342039 608492716 9278368 325667643 434886636 977241292 882979740 181481522 941910808 583240287 434725877 17633527 721460418 182688203 916670182 388668626 685818595 812707212 828471845 258753640 538870433 349551947 509010233 476122104 829708907 196111582 740554664 547926771 701796553 454695415 838128780 305681489 636612413 942666946 995676029 887891100 753882073 628159960 79128520 66514753 500247831 114061764 724558885 908445521 972093903 345627394 738344393 543598801 404264278 802144539 754001768 59869035 413846201 287755269 116166291 737199499 449891271 543414224 108617349 780179679 112548613 34534273 668829432 671193216 849681387 227851630 899301576 493553675 235486389 666867147 357927220 86775146 307599204 991561271 869523233 249466510 402261319 270918668 994112649 668340705 364539394 33047470 864413272 414064716 663715269 315797470 41759697 997217722 818393514 952216906 263778464 397143177 3907342 585049117 930811663 542763474 920011492 707952747 579233014 43472577 236159575 779192481 526010085 703373946 290181827 612538888 950256896 160342286 555111679 940085316 333445297 499915147 876013897 711887505 202215039 259965021 77351100 400223133 901486257 427161880 367226517 229156003 297945557 586583388 691096948 380556525 672978702 185015155 786685660 422719050 191514652 999370741 756388032 280632485 220073162 196111364 436807458 613354762 575050475 762061370 948030765 895488035 32182738 641434622 924436614 463275032 492206837 371150130 42185446 529226224 81231692 755803245 882485311 228684134 693030674 13499579 905759522 219181960 242939172 968048933 727008233 191445720 532906794 817626878 315250463 471687961 900416057 677469813 735851078 932719650 792733197 64960196 65932245 880005614 664662354 526088189 337283997 553569139 973089826 161300289 939599164 333993693 917394326 526592056 601430067 393126042 604190208 484291066 739263112 347131148 961619982 5299488 571686786 471584997 366666123 61625432 345689013 568959873 624936953 11061571 536367145 364957460 931908371 260581605 29461259 973952047 448949308 18524984 180433582 797960995 585514049 652157283 708618134 240831990 749915040 564312694 978696792 959479667 18777323 332917268 893097514 568381974 515078879 681833598 962706871 6345460 243137833 279502133 98441709 402165593 944368872 952186012 621737050 433651533 848532342 620740242 210944693 936813999 32827894 308697240 726617805 336181129 515862173 276965224 39645402 336858819 626998641 762941092 882757229 307046735 958834735 916655677 364663915 857454786 707388098 775921098 805296504 984619300 17884310 804392789 994057290 88805971 683465164 701694172 971778126 70688323 507255647 565368559 688197515 272885039 319793877 500398315 209807964 288680624 299392711 603989396 330163675 741625119 911357863 689809252 339210327 145441166 403564836 709110661 110330735 10721038 1715586 205537306 947696753 137239249 105613808 468541668 668501372 358945800 637118339 840889821 297088488 7956448 487420473 290178664 999900991 328124432 11942521 519828730 951619087 455503323 83908883 691386119 130839883 23254715 343361879 228108375 615675905 363261876 197669000 104836224 737072719 502067985 395910852 19183398 849935138 105547496 89767068 718440003 250383507 786545065 560843675 797499821 204134489 858165195 818213928 145360034 421534003 108769209 410444495 339968384 78251391 60375900 346872163 941659833 459438021 260131328 88087097 2221555 642976639 615584055 677036942 694123490 675459497 84013621 742067682 625415995 544331841 344060153 926634061 889060107 862241745 808044008 538892727 742808041 951406987 798441565 627939334 67019871 30281890 868083598 427117606 68303927 453915051 854279043 625093233 572081780 185964509 762963424 142872275 403472233 907325908 605106493 569428452 254822279 686137421 639455438 485637642 360343309 62776078 861228029 739952959 179364078 251570312 978951090 539741324 206339574 75143841 555092166 802121998 903427466 924855080 327817785 503423016 715739189 543083046 258143370 138433148 775674229 167940445 558883210 184596491 240662377 551720678 861570866 987329176 284737313 270533061 401754837 854848546 518298248 380962424 862778538 890851631 548008547 339472449 586911825 670182933 633086363 588716768 441357588 966525314 962235167 157674793 133753638 877846652 960111795 468691996 356945081 56340691 295937610 919587576 609217503 619624139 944171090 733474409 735305578 509621700 885863675 512561205 462041320 64414272 300464636 623748052 707740366 308242819 31242278 764376122 840943895 140352831 152599519 816458120 102953372 371628190 430494614 787577503 533934525 265169102 780467769 151606012 865592302 453661423 499400193 978567942 408690519 357404399 892846890 787767433 909507654 964842057 978871637 888196306 257331380 291957995 992890278 161208851 999549374 562918585 542188716 682437826 907663177 432710843 470862146 277340263 27739139 879442114 246035581 784177761 721411567 415730092 576279548 272166722 115595325 380296053 404086540 853795621 553893592 23272534 458790848 456021552 645776402 92693262 463287496 431430301 114490054 486664795 151636719 873220962 494180405 893865413 676707328 443696773 797581360 983059622 532991133 841987466 448196725 784136469 320533719 594900517 755211477 816975989 553046215 446422873 226464261 314577019 865797115 17955097 263863143 783943560 596187425 723301188 291581064 950913737 360977960 383193003 326630775 432356238 908415289 56464174 39830965 734540424 556840544 336287922 203417220 978051191 594741384 172568696 265226155 176389722 717462195 64574301 860675083 200035169 894654038 138510959 143082454 243570727 796256807 28228622 737995561 143788967 401132752 217616795 628416268 199675554 992778271 350312089 229254635 953556108 139513090 745230821 879014462 361178872 715707397 434758569 470867833 808846058 83207403 742160731 811193213 448680754 278647910 667461042 382515773 393673914 650964724 433271919 602638539 549309387 330408168 144999914 601959238 249310388 432637223 865382264 633780907 537250675 659598291 491591819 406489850 497081460 994770357 96633718 701463180 121714836 780968278 282848400 549738768 449455932 732120091 834444342 615590864 938211084 787781477 191800296 371747919 535057674 956560105 872975530 100717774 399995120 569525461 425558900 952133169 624463065 740916676 788342634 637843611 893282396 643799419 754265438 571837419 955102948 646451147 163682154 2552550 350057820 268708493 280394407 487168298 949935213 347419221 251047295 454434916 248003644 743904591 930351960 386145745 142995068 277245190 216374325 133420892 312107248 728644015 27486820 277742155 751470807 704480105 218599435 243594844 524918308 33247003 164005795 966011124 6752691 583261463 12333007 402155978 648251691 599949608 957231 899873553 371725532 164756421 305187988 923206644 864260013 90500138 951184925 416972007 709226433 251449691 338047462 221272437 276903613 287875344 811293227 822770056 42304893 55644821 620962332 671417914 717324163 924715365 832206514 865812562 333822568 782069080 693323940 684286096 130864054 213902840 854278830 439831174 411587571 361879918 604863099 375143525 92376690 475399454 898329174 945725339 293910467 75339675 174143319 537468854 926102156 73167483 58977496 647959458 521667826 141461966 268646109 577780920 799096415 162064271 277434791 902203240 800589510 352249054 673114120 75419191 857168539 98932953 917723281 233831601 733285316 716484320 482279608 118031073 143627596 427879017 203418184 579952033 696669941 170309656 215352334 993895003 322191451 24998764 937243370 244823167 492350608 144681973 289812416 976477559 912118966 261805532 450722818 201792320 111980917 929380628 36377303 594163305 338157019 231481498 397857202 764479373 360169783 993177624 719650145 301009630 350362896 95579411 42088626 724962894 409602518 359838940 93010389 762030558 65987252 946369120 498110932 348980887 897510498 734445647 671293929 762767629 592015264 983568182 181673669 118373510 635904222 486530455 449548986 188777180 558848116 548440445 799430944 650477345 670021479 124875127 16294545 334985633 453817638 258743408 212286314 949239671 411940158 793316373 310708763 729337767 866385951 82063710 415440070 496305596 130524683 58920636 738335652 407505896 458459809 876784243 359188236 183611344 142942349 120741605 730892225 39968682 755423372 901236776 70028988 165167849 608204716 89889152 669414859 201247637 215289840 709966385 798034981 984040035 86578373 647169254 737413648 316347204 606878335 911825709 480996193 413059385 819929642 211809521 858154882 852942662 970285496 494678618 771329336 184877121 486190649 674977953 397356527 210161778 60886162 876889816 489865227 696037399 410062820 966308382 975562970 259229032 236692494 831892200 640746192 804456867 158381114 153393755 924532747 349233386 839472828 783251685 815241668 315736050 762187806 969681104 442499413 207879423 754689553 79708553 362208821 321271420 412935685 159857377 467297666 809509039 884662826 132304916 825167956 504844640 478460664 72665196 938260503 952070326 358614095 568121742 33831943 906075951 613197889 329047711 209884530 530323318 882922203 334218512 984271906 553154527 527329926 521346361 703001154 162856409 696075502 878449758 22446002 736076149 757733437 669328966 494989421 703199678 966688318 75379987 537449513 37899730 660864554 793657330 47556236 173696577 604608388 259633856 152188262 645935626 889166891 973731564 325662474 283438537 275984521 243477538 483542505 422101791 977068246 944767676 601698288 911048648 381258661 5247529 463482046 59169437 550610931 452035386 527459240 443051140 438542555 487969829 424861660 276126215 793802250 415733571 590753467 326118459 176655747 73039663 668793328 865267952 489083700 198359060 445088758 971053882 954554670 832990743 843604453 64399469 510116738 192382423 569493611 323521147 925604776 837358462 970997046 980484783 438817351 618559174 152795304 886703253 576975741 392309603 397326309 150276411 637812615 196149945 863733832 699629395 650885824 629205616 829090131 607500907 872328684 772786254 443837078 347082073 358184185 733988604 948015255 125482785 221577181 70404142 314588583 858387995 248260346 620968087 709003627 376450094 981968426 101443215 567011988 878094546 334794311 107343463 224393899 177485752 508609267 538759614 610194674 566299419 659135492 366228517 405303822 473840453 829930602 804576423 675238184 366948027 442361120 744091723 622632235 20964829 476563109 795671554 361702351 862958935 805889998 241107990 110028413 29517178 342154700 297408463 315284490 427287438 444544168 224339336 844934765 422146805 889014220 303285061 670844321 395887843 167120966 961356072 282142201 646670697 972713901 22018764 237667168 563260590 568983796 93836006 146608621 640264288 914662402 86516556 732621413 380037350 100244103 627461849 440916449 746933918 85190727 253683752 675693458 920717957 896424896 439615357 353023683 360134615 883262899 751652423 388916274 996133051 190928271 541173817 166473044 925973885 772322661 194635485 670949709 136774197 490783940 154365409 897418787 192006948 261628737 101359873 373380043 3678040 124773939 373887728 591910787 923947513 627762729 886835056 672826729 369150944 327747168 852849078 175530419 565476394 468113504 183609585 875203091 524690390 204242617 768370936 902954721 253017236 912857807 719482807 740047716 114676494 558046455 825661526 119906863 340641125 269723075 648135019 862159416 418414000 277901686 322956157 376877632 940875013 487113556 698120481 879848926 405836250 956844961 462113634 998868570 863176393 178993791 862027223 476237061 178545103 344868421 510517348 932482567 846588535 610269500 666878059 675511994 280702867 892774468 714439260 34364146 185212967 21275017 435084142 824551825 500249467 750111168 357874939 631598278 911885776 240703158 637484765 499909998 491801429 425971891 730306116 890589374 191006458 392800735 148510537 626361230 122513978 557294421 651465816 229498314 662519799 357024353 922290503 189682536 385614238 65064127 795434284 839232962 598007773 114639355 699134202 956941206 279770465 124895232 991041666 903302960 277746775 837876128 278790753 869771783 406813083 586330509 487183361 332980587 740656242 690117528 731210079 753544179 761181458 628478081 910436273 571399464 894882319 240359041 578330199 293948656 832662508 955256385 702475118 179521826 977100778 325166502 123625249 39451701 89767754 793075133 14250527 332547298 979258272 990542953 205857481 610405332 910721467 84730595 327758931 885664552 670213776 923919626 618724927 556030638 303371503 340360883 77682168 766996025 128348926 372922961 751995228 793502857 968928331 265762010 567838209 186773770 782824770 809492884 179277250 967717890 980611266 881402408 787428662 920500973 676852717 855828972 701726692 120177162 188237744 346126170 840622705 976790069 624772834 493549039 859735842 182481181 707298793 234017160 688103810 37200971 172243631 43001680 405495190 659890196 152793350 489609885 782664371 996137539 797953864 940140034 706073293 822139698 954515767 748836417 286745176 218212113 928394659 629914587 230537201 798991427 797754567 364225230 771929315 733885699 665834095 978112757 21255531 936198620 727599880 58057485 802637202 255900758 879604059 745823315 282474818 492139116 156703467 443338097 402179300 512475197 770776615 584572733 604260421 762437226 881575152 378579213 469417234 440654412 545812637 413476206 797537136 135480450 398968936 548037315 814179178 270585345 649141294 269417820 649729048 429173772 739762906 214827296 14509824 751184043 216432886 191350499 850443311 680653189 499850154 824607979 504599190 952585165 926139844 494168251 669987063 266503226 35972118 89365089 608986980 741777170 325471454 683524255 175353045 651792573 146099129 15218369 830402366 127107258 402313936 898402351 505268727 68622940 362657184 304439433 964118668 696631881 579045464 480917376 479551943 477925692 796362455 68551562 212627976 626924421 917606936 639168959 238031810 940981090 482275145 626280749 951157707 746493999 472368285 532222440 377796778 961464285 772390907 861716936 275645563 508761621 939336249 6858095 816847342 798343712 410636715 360997225 382099247 388822752 777549228 29506777 239424055 644680441 455501131 994590685 735957191 672352017 47153091 880496652 805495570 956936089 388376615 170317596 715825033 582262040 951936906 559718417 65696734 596590042 13219765 278471755 769943535 320849475 746059602 737202481 150787576 872209910 67093803 664887439 165475241 664557927 635600137 304414800 252513110 59733323 327356942 477969103 960163263 450718165 96196983 673528061 541333370 859958463 532243607 920359458 295523202 105004380 752884485 25542896 87425644 522744012 40787000 131011700 308714158 842046108 382317096 524699767 701733998 179715797 875207055 437550572 255537729 158771740 46330634 455563317 87634803 450266077 239224483 897339833 852701896 414690673 635283742 442503589 152014961 8457972 758812218 984736167 233749475 518358121 475342260 511767914 657686675 404691474 859571605 435174122 740045142 487622135 437101814 607357493 372944273 543215732 801713076 187450507 255980208 216220801 151526136 930543871 118232266 664492587 96158231 995409204 59650801 691799225 996553796 213960317 570609637 694751607 112067949 222875031 826644917 436143875 791696411 519762571 977998176 896132012 752720498 629913069 7406646 213865407 873707489 667746879 452489595 40802751 563792474 194607084 360785180 983529782 151771125 972948234 644826762 74573274 631319338 141322105 352911562 158143798 986232574 674461418 627503534 844007106 156687035 445998048 112984687 624886390 935403685 920478103 415550667 900693383 358610831 775465960 504777570 465399037 948167924 635547816 106093374 170675989 126398219 833215338 66442984 364770498 299456672 287786752 226262096 479700066 369743943 761035502 622605494 201256738 113218088 81376119 847907164 796725458 41137822 925857062 687855466 229964108 621156632 797690060 896660779 241663749 374770701 716828121 50204142 917253492 617567449 803548876 308849687 235238104 920238489 952113424 916065499 191395246 420225492 686059084 938361836 421326122 754729798 183750073 826065733 66131146 396078509 456054027 869216338 583559187 743261550 513785843 92571512 182652329 576880545 707322835 969068289 357602073 590914625 866745505 823210852 247280855 370291109 320170815 784075455 859666007 258638198 977294720 482900148 753663394 886219114 521024617 503346994 231887795 457403226 818691515 89332725 320527202 672950459 268666854 32452982 409864836 389890354 81107131 7879505 509455678 147149853 952104518 745666234 97297715 998940882 870706089 244935104 469802860 510600571 358654899 556243083 290069223 555499628 373223867 988220313 137114577 480085814 329462077 841427765 603284516 485080370 774315331 290434139 18191234 880376631 708937552 958368711 89265666 105461176 928860100 592131424 259764535 24783904 253061567 198554266 525535349 556424030 592943897 410297050 477886844 428542998 835401582 716145029 866210704 775628543 885238278 643514569 984725780 693220456 662998048 946066893 569732345 747761898 939544454 279208741 393423894 189478461 447750490 242306939 324182272 271917961 836624745 306787010 275026161 376848286 262772899 482395737 23149866 691029442 304530283 922996745 662683410 359960724 725291062 955398803 808917581 924140522 126289441 906503977 677846995 406360146 605619235 355272624 938299277 574836570 289660141 908746825 790993090 192431655 825263375 927759339 658712253 458430313 878872821 539631274 595431432 750255035 300475163 707246390 165727527 399540754 665177038 325610658 962812615 228405234 664445060 780695773 255556443 461776555 638219556 288759773 44942906 26119145 30628213 404940936 676570451 670362822 715241108 504018450 241222937 244067888 878487642 734540243 660490647 718335848 256347207 888454363 157480539 730612271 105628326 937143659 736550285 912601904 70428820 182229947 665385480 308239328 730267762 157797912 145204251 897111345 98652321 862996766 169364674 652925775 10492568 326728322 903472373 198016877 57434855 269001386 809261807 861085037 19369119 552589697 74837939 569966861 743953420 460611904 87976114 685252217 311672404 896753784 928983339 22589556 964642541 632656298 71041961 642302538 829534867 888071296 983687903 477657152 985040577 52611494 265663383 768854468 972368934 465855893 214568513 800707102 894709697 375596205 44931366 597652851 177768582 854635637 305174369 974455939 707551593 901338193 660462547 164248207 151127248 19386510 436741069 849771196 651000026 593932750 566384095 673348258 1336757 380690048 691416045 718575588 937447953 154525465 499920774 762111199 78472948 67370418 1594845 809317862 115776766 434682448 792307618 46666603 126013848 902086769 939368729 270868971 100380402 817651037 717066675 346084476 949866165 455317182 290349357 130191187 17768867 258140805 273505532 115729847 836404030 1564009 879779004 985460897 994977311 63888471 561048883 103448586 436164320 395211560 219807520 833682509 176472346 406020361 52152074 879104987 219295679 188740240 994495141 467752711 311606974 338557767 26685289 869825930 710197490 708725458 694798907 767614462 579381266 702794100 467971566 656082900 612399029 206101660 936679989 731286268 588067201 294728289 679224101 16791008 859187482 69964396 525743315 158814231 946891009 509133158 182454952 673914143 374080620 261425288 301000717 670834231 177009764 976792966 48586656 190755592 651121441 891027562 882162030 423994246 761647337 86134258 355904722 33165444 872073803 974219144 93043824 151974597 916993353 315483534 182531556 953890335 386315521 241922187 871258855 284400333 194630834 418402879 621578605 912547601 958911145 351993428 894691383 33473625 811445406 395772389 507407273 104526412 569914090 529335592 570013877 275335830 988758431 127675846 913467147 490179140 617583563 541221300 117377260 374519014 824794589 753596108 159172403 334730105 578149087 87857080 116746352 334630583 327731385 107931341 654539242 840024434 140428711 698111651 242167084 943586599 166343658 291473123 744841801 219265864 761898521 479027190 939231408 279101742 443505660 548243446 579647881 760925317 973457927 417810379 223536700 84993394 907496988 645945530 476691799 321535471 894408838 88971133 493682522 125802612 142124044 51118370 662418144 728980114 676766199 660707498 528849108 554940554 961159898 915599091 73674789 16424528 588691726 453685021 358738809 390352687 864704705 351885732 315031127 697461733 992814059 236866203 781245810 941795673 888412764 483276374 556148735 971419275 241013789 410796084 756521045 257338940 619692030 54916750 134806599 98608241 507864572 433385550 218701563 567045878 949631367 114342490 297000377 140726171 763420381 873614482 454925646 278624275 540963373 979992058 892028101 929242968 600017187 324730596 81937432 292772785 713460790 579101784 211099854 605835208 198614059 839531157 280247163 838877726 771026876 163061653 463008262 595249728 128540821 203951457 512314698 488788770 407995750 869901133 349811802 28116353 985045792 712653990 341227101 836851232 791168148 802409245 252031375 945760210 391743651 495696959 996601216 371302507 735376940 780103271 291923222 165103547 329447453 80492889 181194386 177473984 151377174 551628758 609483352 69130762 574634131 157060991 678109710 298873488 221076526 681115329 358034331 134106966 22006581 268000200 769315697 751926186 723426621 433498222 778749088 100585594 96519411 136481677 6301644 745460171 195545387 249728930 32562595 286810977 231996473 672242431 347373834 594225419 396375827 823824937 562049887 245578117 551515090 898864462 435975468 256114588 21679760 490382792 864926352 898807465 865112836 142064058 374415621 611847881 844637024 158266321 604709738 206509855 946871150 899773471 728968829 865779481 133132936 8933711 992960341 390324261 689769278 89595517 182562599 32226984 973468410 995469744 351999486 13378725 568609170 346574039 842884472 691382299 491353619 911665493 229846810 11604492 897187480 690820017 141912243 660720150 883984739 375124794 270976475 774679646 13727884 493457108 140246173 390340572 745621468 792292194 603586621 704350896 374551247 341794302 619177978 919334587 957992931 826754587 781679796 383879 185966124 550743856 214192580 584197981 439327150 175490911 819724466 184671157 607731226 348462046 582005206 341363325 914026805 692259293 946173014 95960445 492049946 349801737 755401805 456345012 525364489 297137861 532582438 95581250 818903640 209037623 300730623 767625197 415242075 304074861 724435218 884959378 415300527 239779177 836780188 966827261 921876074 744064699 131305535 143296489 279624299 586885330 311065353 782485329 234982055 869760659 49237496 817782903 427094873 419430869 329700709 903518946 337358723 731895200 637329863 950713549 836857164 495407681 889831854 732089053 726465575 676076010 236609544 616439227 23677813 983990441 121635334 715515588 20411029 733639450 297874318 44139384 255022451 717942431 486611700 974806509 949873356 359513486 323513333 536511813 704496261 393327015 769392094 721355995 306700313 98231411 603841439 485371784 831294254 361348854 299846127 487924000 743429963 142178040 185203708 755381876 427939545 309521418 188048207 837009627 34864411 189387546 967083866 669643105 260689671 118680442 512279237 131207115 650861351 211812551 672502634 59540387 737361164 837165159 861629168 914212767 543587215 482329177 169077252 752864008 31545062 228094031 580045939 76326883 835960442 782897725 365437256 33855382 553615356 910605866 990342218 312195712 283416678 766568480 656549559 180415571 15666959 115410218 655440855 939531140 930597444 20919679 144249673 103445671 415220447 760293091 167769327 917098828 297863890 622905671 672168093 964381927 483853043 860029711 975190782 180971790 642932522 903145191 971307993 499794182 376997259 180056112 258061945 513890521 369328250 732228572 962898699 379863137 584676044 805020084 787622206 268917363 175765060 368226943 202856536 293391720 983085661 416654835 360118312 844150215 848777778 647839999 725655942 510717233 656693622 368512734 703685842 498205941 761406299 258934753 218437960 97811240 498432569 172801388 970720241 944272473 191885999 493051540 796815817 564705373 696414847 110848477 962958724 277370903 750107034 420194161 113707815 22709029 282900030 770240444 342985597 159378789 929266436 612012940 780590233 740479413 121522181 275217202 458500868 777044329 413263184 949889817 238593690 276875845 258590489 840273123 550927768 852878221 746134199 540762535 157244863 224267807 136233334 518270622 859871976 609305322 987305429 43259157 861856355 642627783 160956583 533996347 916413411 139584319 355260122 935540713 912573049 304380464 988544444 999342695 326298128 775128651 54834101 324984533 346390817 791237540 265840784 69157249 156406047 85504059 207206014 698895683 900500221 984996992 394923603 952466026 639842180 231577044 565283067 721613380 399469994 3157110 324107042 399545723 509067478 948552138 267117611 808526288 89364611 523113199 907421689 32311132 942672431 730171626 701624205 335871758 329105833 192993624 195943447 670493708 278046981 129087358 120301727 505705116 943351523 835482376 176696930 913450586 422238289 918148591 831714571 976368633 372439877 816746809 419703545 59807541 559253942 992115902 872640166 800990776 512114777 44424340 986506129 465522940 575221483 169826071 478670887 539124162 513424015 941584811 274007825 419397078 557744774 746606006 723954360 839941746 68211776 145172641 452446892 762128883 916104029 389206328 98764117 564912963 415766836 646133324 229473185 202258107 282126864 167653303 458617379 65485498 266556075 353793402 885062569 536619282 925272367 143653103 423185461 576004809 613575150 385961533 548336119 204919939 97442708 481308036 880723579 65335569 219033659 834168125 801991371 392500239 614353343 80287997 801407354 459496663 49555836 838125907 169791837 616728196 843339065 686770669 988311645 324855503 755567989 117673844 912150580 683306801 894486555 931115165 218247584 11824217 102057545 386657805 399171914 585391869 304823847 799951852 416647575 699037776 600155318 87355335 319591374 903461466 951455652 663091312 429593540 619869595 153372627 596753759 139641517 548998606 919689399 265227562 953057448 123561128 458612764 765064390 772891641 577436472 573043769 390719436 970876270 562166674 212893115 348545751 524096343 524509430 532906435 956140287 180488901 817122811 675177002 270637556 616256963 222684431 919000335 111493105 896409886 547469738 452574220 37432384 504504353 883367891 641361556 321568904 567786505 353423443 119871068 982012579 959915117 290699966 482551595 980357284 206892831 706030352 554235486 523433731 212316970 849041175 667438636 254316773 76605502 485439811 946676185 893225065 997406463 711013515 47341556 242239074 464100049 586860679 871120516 317414483 948944200 771119658 421819819 648295369 552647486 474585219 209348185 533360756 710349267 972291367 751792459 919370479 853486901 263849324 189112595 824331096 883234758 677299448 699871950 702141458 166827068 63695370 674514870 427744655 884862188 286346518 624171697 306956152 928792847 431064333 331389796 989505966 638869698 828983277 155172480 834578400 53435433 472265990 577303021 824887014 602358179 887010233 965313824 993630207 956996560 351277875 728919485 3870179 641754099 270568963 282067199 854242194 110877066 816299332 220460964 613142083 610239665 974424906 15073727 761168572 632269639 990103393 969785 800199233 692082474 989519311 677693629 379969880 355372013 880069685 845890085 565916957 181411535 137645786 258713806 439569995 286410649 168862106 645296414 5711754 588836180 542333706 564853739 713129188 292098811 736507384 804987510 47662898 443734300 441441504 100396176 249977997 129819717 84222486 857467275 890676257 373796860 997269267 239545670 190212831 789033760 261357721 767967408 869730543 755422926 29740679 85915482 534636784 97807326 9821495 254431070 958494717 98552850 505634525 297516946 951572017 227345979 740041751 366901705 817561865 305387982 823498563 113702479 349086173 897436758 895966719 750126857 451502679 400215809 995925007 248913800 680812916 163939832 955990004 839821546 497675992 897480946 53955712 721720169 236387008 618969251 906217508 87051032 580487692 794862006 473778575 915139715 903646800 908114165 979715142 132043310 157476963 452432338 84535605 661420797 443392221 861797060 22633778 287667775 207924674 41640011 405607770 745467471 552800757 97793444 526960161 374554590 528056479 873197430 290183215 919796774 465865959 550301580 597928334 424764401 686128926 412706506 700652546 718940747 55320873 639311597 133094374 9169111 484847095 964850436 206577306 131085313 136096789 564028557 472836471 674295329 667220236 710954713 946341663 539556984 647763702 505170523 880943497 149370847 325391419 863576475 49553165 640474975 52531337 925463788 17832640 436681734 110912571 996025437 337896740 29962323 125277089 851903161 464653915 659602393 107282331 500715620 519697098 870672403 806941202 777407812 707499287 146322741 512086512 49478425 939048850 141875824 819090023 97623033 61677978 783730252 913057866 251477971 909689948 617599734 969820405 890191040 731065969 991985861 375163398 888763876 618026464 367732406 425645458 912402288 313709197 499522605 906691972 297360267 977391123 896984912 780466144 803269798 981832672 411504316 566714860 682081514 1874006 341965303 244181641 335024011 40914321 408899885 720175608 179580988 354151647 982289682 472787838 522002557 63232921 429064381 56586154 134407967 706724278 705060542 352005108 51509671 149632846 857405397 974733595 350046529 643778393 271657273 732045693 504581922 819947973 757188940 224370102 397625988 341441897 528893816 296540470 379027832 87409410 513846410 44323161 496266411 572891138 449434625 194267219 65517565 804055086 464849003 838571150 294967618 382281175 846860919 504764182 968015111 652127429 290464448 405852056 36649892 750191353 828358035 316148880 180572442 948342400 77162555 625749603 989542734 7120858 780610152 114901618 246693452 507033888 745599503 581304481 700447985 143143314 504086358 712468175 345922259 755868098 94033528 802764885 799403292 202511059 825818259 31092279 207384432 190337424 630077163 28044407 842025824 740650387 265546589 740827009 708153910 385398842 689803205 683422117 758692712 595169726 611271581 642958428 593284621 213246016 819116810 466294708 288975886 643690271 440834151 458416351 809277412 933623663 545869582 991506244 261463451 915719944 598819941 919275413 689038693 570024172 795604978 757390545 314340367 900783713 848927079 547086554 937757813 308173041 926087040 608959620 33572129 842674677 331491207 361863711 838227080 753065254 521048328 679601614 347618451 923393564 596749267 857676419 559919435 569265783 575246432 286676468 82860485 360902575 717724672 124438972 926591058 315376135 87425735 593921802 266820321 352547711 342938383 861213374 697963031 498681598 410212794 557314588 273716246 852991922 112069514 183715329 489621598 346840315 641767151 828410292 197784404 101356256 805341248 24214888 939072913 928504645 288823209 533892979 197447498 336398762 342233100 209794384 966134441 352875749 858445735 846883390 621077344 787906256 285328947 578897271 602349187 649207607 179555367 204448073 515037017 17646003 887824803 417038636 307139929 242365172 664678318 493631997 332020998 358731098 339202897 204796231 829876768 714550164 237850437 783306517 662516632 689786594 935514123 669641017 312546600 707227947 425529986 605799518 887318809 558885241 449509181 367317482 766904491 724196304 951551255 132079420 116409676 943916256 731969510 851631102 720939776 398704719 60712170 314328862 281720974 767949303 408325200 780922209 787820616 106831191 229309257 420992917 656793377 893677242 328490420 211780547 609942520 944651060 254368990 768033466 565612620 776568369 919053760 256092867 903973175 3796434 551860821 753125847 815614142 579492855 177519896 748087004 256006427 129113876 633331417 678517173 170375309 728412906 306394380 619892577 150843902 760163156 429825555 510829859 842796493 880595415 414897703 366701033 219293540 50167749 82229320 818017859 60185364 482255857 575161386 73405135 177124570 195818423 628833581 883148470 955089337 851560267 837397569 488383705 523445470 531546934 195963851 729033257 523459003 983290773 877681534 957768214 837883579 331048752 266218701 81916764 238074715 826538481 674760614 337233013 838234131 486878524 907302839 827079812 25341285 205018962 701941310 290386222 168294496 670243356 865827225 833392930 102882837 597655846 356706392 907195252 438797055 494772241 282613524 831353933 9792879 917310450 680657408 404339287 904789459 717353320 165860400 382130104 687857841 89555849 706610401 365632665 303071808 973973593 961291469 895142337 604490938 721132718 23254063 479599987 305173798 719178707 742376556 558917132 756272706 146150644 456731066 423159136 797886751 856631555 278223846 590031135 691663798 217860448 271927194 8461605 29875406 750672504 127766966 843541124 20067495 452200376 132681973 283272633 182808248 936493844 469724428 917988584 208751467 994533750 593753862 869098484 490094065 238479184 5897962 80505284 885673369 435072108 672858562 688834554 815627286 424858249 559972841 613510551 558519730 906118349 769050470 5239872 952255960 124497293 28211588 897078373 876020963 927077398 619174106 95636450 212155196 18454878 580980386 169849525 654659347 23696429 557038153 542172347 279998217 66317663 428467128 913183279 17782540 359564900 281897841 900806323 346965638 394594185 24645849 994238752 50791718 858128479 370929044 89118190 324675327 143452152 712205879 80817930 335406434 454616372 554267609 732377762 185242785 260657369 454251128 823621270 727880566 651244571 531574782 486815842 653611479 136932689 652845547 767325522 69267748 604878008 70362318 755199630 374412960 485519807 275140664 93634938 291652280 121043079 682905069 140573196 509756684 829095824 437635737 264254259 327031209 97168074 134667897 224498392 925508862 730605588 406645356 400181652 157112608 34348084 320494852 13083163 110999780 117949472 326128155 386916957 202394071 21096144 240753193 273970760 580856123 181424519 844643995 196106088 514632501 692501033 178909589 771045102 241431168 838252838 939656696 285630869 465531054 417135340 648908015 97129586 292990096 98343370 54659816 653648241 324188781 424544473 208103132 687576971 726440217 449972320 26212285 392108913 441393073 483227472 887510676 484474425 657083157 773622755 440101929 330054573 494935018 718678086 690996842 593706623 885279868 134598805 93877708 182293281 529254267 922905131 885751915 505818767 143433216 812489165 448367150 557021832 633059702 203235652 318903002 697594745 542522383 770115564 6953616 450735295 239513631 280434425 779359416 231267591 513174800 999464995 499105411 640749302 555891990 719368021 474864956 312628098 272561626 682464598 529233814 958661422 848227266 859372096 803147720 734289120 470679678 107095852 672147206 706179437 23517715 648949889 262749413 808092870 457529027 548571096 957424432 450671773 265723722 441428416 288730666 204366388 234073037 764698690 393378911 383034828 611096400 666455830 229538300 668422119 958799943 231362163 538551058 116045740 53992084 23712898 103962763 30541967 150778360 82772085 744646767 724873452 736893045 542683188 72804757 221338074 534277207 360803336 908246628 674530432 375666949 244514785 567252866 765021609 60701126 100900303 92467081 109739551 270794611 58254103 28226759 524321719 436010194 288153842 72132773 516331148 870633762 740075515 188218202 555870170 495672814 331479018 96099192 683150574 953384971 673842789 767753297 620842995 66011033 628164565 607185149 680878117 977874781 519439105 284728210 294708865 239831816 246717447 425082422 997648932 637186657 79446670 411455905 12078968 757368975 383912975 462886596 502820058 573870965 908705548 323853519 845840111 981175163 903613834 976978593 81166811 843567657 890944042 327791969 410794933 474871092 400384812 209493726 73838584 510137512 394802375 533768342 344116847 357425550 876913484 762978817 688424701 441221969 255526048 722983705 122377712 540476961 804286631 988679344 400204535 876646540 827339867 491861914 845269830 688001525 396177921 226153180 932702227 19063746 229769486 771388655 282620359 898880798 75069910 273277925 288595849 756487287 309733914 651172030 165492020 683494891 634367039 169434892 110394072 87776242 95398711 943421479 745214430 6008635 279879854 629212219 842131367 793225334 743507732 917358641 219088758 30319145 582632461 580792007 804234396 554234911 579738281 290528797 166834805 486534428 600809634 136428960 979003088 209189359 776134995 563129602 151018578 76546417 491691616 741150233 465971639 443456109 182679450 895489436 916440431 680349689 950854611 596937521 414776051 470227857 33321606 47706777 96355076 116534542 756559544 806650876 385906895 861435615 942528396 141082760 148339597 772092629 646163560 442492225 880615166 487140467 66324414 614873746 79274890 632848943 160354677 699994465 159845439 997166209 38027476 549098431 843752935 518181710 533483154 564550845 845061843 266440960 960176693 843786647 53602717 36089109 129771449 600658141 989010466 918762921 77442080 301094512 261578707 38222511 903689346 905721650 438566647 757708695 240662295 258937998 114092802 354501013 648643907 292587212 214998705 866392248 208287006 430684976 313903771 452938579 18734665 844362615 819289122 880848688 924673549 112848365 213531445 127385352 944538586 189720185 956281201 85014273 169124679 481288304 105273555 179736267 268317359 18335565 719716659 191330964 904845493 400002155 405028206 866172844 413596822 137561254 410424073 616117444 529693382 452661160 469316432 801887364 503593652 492482787 671091772 227868266 78137324 620472596 723983332 543141914 81369045 450331990 657541471 47559223 131123351 428785130 527623121 189608732 293422358 603455718 263675690 336575792 769149770 134894414 961231938 179138707 682019915 903537533 473885166 899650593 749535826 303919326 144363302 795591666 780655577 653265464 842628678 4747216 960179082 704739194 441791367 640093789 874284098 752794233 592978762 172751211 199175611 547047487 377932227 742928759 9000289 802862575 595391725 872728777 449941470 226825212 830792453 729193719 666941825 856758097 53439732 34541243 594944974 31248896 391086454 582844716 324899706 365304480 702137189 433056523 313242880 754351303 894807183 484597904 423083375 750927531 508201828 486357130 487021694 621973918 404629847 746315122 843500817 524869232 512824067 711984720 808549758 394876826 557617555 713236218 27919709 772478868 168602929 945485317 176937475 423128001 748784736 682187420 606832940 53014383 232964882 922896278 325840446 839739258 139105129 284658775 527118305 376311355 199925217 331837579 662425043 651649808 127855663 677509036 727455752 253366501 441231977 417017126 379707783 46232305 105662443 435566983 894411387 592769409 396673795 922103439 588157404 802645073 83181314 240079610 199101737 819924248 698033092 492793718 96056824 835986164 915319759 153969803 859476964 642774594 652184732 162155345 119120478 286516745 231774415 152868779 595711519 570184484 238530370 956821798 82790533 788563606 632126454 285207417 31983598 934701459 897367764 328623238 355801353 275811972 15676932 988469653 481875143 632743431 167962964 990026892 615944046 735184235 809408627 964107686 130679223 780881016 142274429 278686432 797663808 266681693 254642924 203780516 296586001 32598045 571403086 323936428 434323490 793169179 408763578 190288926 911343072 181525458 530203317 209172809 855114815 807049339 7267358 387394293 684984995 889351325 759006090 307964210 296327676 186396183 991167478 632681025 127677718 492365874 947517027 227439893 500468250 448377330 748531164 58346329 721140214 48964458 780265181 237308682 381897135 503622917 452579794 578942749 174225288 148468136 697798952 78130610 68627012 366990289 94822979 840070644 122833111 478355584 857299306 385787615 7171894 904814731 851084525 56315067 490981093 693580601 172611710 332208733 38153357 210155832 220071975 519010486 650194085 73854875 553622807 45530584 263624050 520587061 168313095 557440526 499894368 201959337 598187967 136910567 959137297 457215317 744508956 105592971 761305819 842213217 28205883 581405303 260365484 147118849 602706742 71931776 958582313 432667354 7359158 871833920 267369804 403551830 980068959 88250147 912277496 464840032 504860692 464772862 464756643 9137449 692901590 657400384 871654895 519946188 312424513 40473365 536594319 45780731 335543286 35347369 373802134 955673987 184318795 852365369 654896226 902270482 649370541 391066815 672928911 520625353 929178824 754177801 593511316 870238180 111549604 311607151 6898177 297892786 454894329 26545286 110886398 423170408 218176128 213207601 57521465 202657152 326056542 420371903 683500028 725509005 973294740 240468374 70230212 605120340 684244017 43895355 945716218 146608805 409517064 381501866 793165265 720254204 53505888 642576222 88080273 853591847 767016603 552455612 679397739 216972823 188704621 798052432 875635076 477255075 279499707 76871370 774238472 834224597 325033993 837653895 770745330 96845627 621820074 139675069 976720668 124177977 329757650 154214924 243173540 173894426 955663816 345835341 530921940 45443996 871445143 579468844 583161867 312820108 516602535 712063263 624773718 534945377 999559328 846842613 721996506 675117124 861468491 298039313 62846405 591526305 770080799 788975682 909720632 441218818 41267510 369441620 816464916 737065951 195872922 146829084 400288669 498281144 467614755 540564845 547596765 469101626 913746275 313356792 889477404 592156576 478365437 979088907 219201974 781895622 611295368 196707139 430971560 110023808 434141883 459837794 278035004 627728562 206479686 505970962 161947471 517041884 9269909 889677438 389432518 522702817 61962362 932110203 527608106 609609140 317653367 566395852 559017279 222337140 274220305 661731744 896951770 840574561 918990922 465238344 964996844 185490966 489526891 605453504 540977827 454985943 368991935 274958924 955155899 375624146 80793595 84150285 117248775 138197333 42619369 917734618 899634899 902663001 660818322 513947430 154617753 910997354 172234461 814997799 639152339 920385237 723696912 459582247 487155014 205495494 784323370 1778268 433000743 89111393 622889195 987161817 319106730 3611446 879588199 439863714 495605602 658056451 875347112 313609923 428048280 413172559 691962602 805612451 42242827 322645811 596350461 447733335 193035198 789752334 404382632 494260100 346282736 659522867 446398025 600056034 708246119 159840416 627124739 393600024 79744126 912905970 314532157 940832868 131140872 674764136 763399996 790069386 718763699 25261519 141890696 903677377 578584604 471823146 234283937 874142804 587967265 624180657 887358486 354249851 387965596 990844337 334822194 215268325 268040453 868168869 408301059 346098508 234275789 893792636 626257705 982734579 846621938 802473834 424642706 282629548 972448114 762055673 701573425 48087932 16151879 294517578 106026941 660542919 258667348 927903052 90372193 277772607 538161021 206129706 50457003 473344226 912362354 385964971 853358059 682720772 997676269 759350157 814476520 501079034 586518655 461231065 596314375 677962274 608544325 110884429 358852685 243521684 751578566 504397506 816950625 95553104 420778126 461632439 583337099 28725993 771498791 778895396 991704319 663913173 899947746 135337332 309407243 780836816 929208348 839519243 645820540 364478326 693847665 687643341 579840661 428422811 878848352 573185434 194269941 765058477 197584254 679921258 488339366 963612886 181079137 577151699 851222992 306058242 159908933 439651264 535764093 675344957 895372840 970803664 285623575 538352537 363270620 741784412 913338095 118566812 937267229 214689646 810771013 645290493 485649281 572460362 835292269 292246688 956306037 396467995 151213593 158673450 249470516 613912364 487137322 352191981 665443979 330991623 549561734 448264537 838696449 495946610 212623549 657010413 189971832 348971907 564182750 506243995 472260855 537320176 994930987 768950693 622038037 601775651 865810774 234760324 7945376 252034086 573960233 755123249 406886012 236660769 326985948 492727356 273073454 192023219 475019422 375730964 577195235 46725109 184115107 76975626 185759080 27541505 891028507 327508387 748295426 528551286 598547607 861536250 659823960 487906816 654839755 722845164 588351438 143531133 840504731 194876668 835068766 862446551 615007751 466969582 495248505 985453875 455188652 414727947 90403467 719702463 414326985 420082904 697380143 208452654 172052605 492743005 875609463 611751515 791590521 986973806 63980100 595173804 317013881 472965502 866019047 650382447 551864300 314444323 797882573 690979486 478670568 66975079 797246320 440715768 439167430 836895190 379031898 422321225 608141823 471681975 489509237 582177034 184029631 301049339 692308162 202939343 334836806 732492603 247903961 528835852 44000986 258282660 289652778 899522948 430103800 549948557 147812827 416245061 369425129 299123460 435837841 839602023 833328694 893723708 746287049 746442941 456770325 732273020 61376866 587825420 941065737 193944583 217016242 650588572 54698842 456550581 323117849 570423501 24494749 66032276 656886020 278845737 807494960 547841085 98898536 192383647 282820831 21021890 300830525 464790541 513941109 106810616 323084588 682690241 335452597 511529713 680056740 933452757 830015541 104439469 336870023 469644598 208328264 527102988 427332851 414939339 966588990 914275756 833094767 241550341 28206582 705047538 269051105 905852682 487465041 185747790 705971934 772170689 240933975 652876804 599700201 475287832 530743151 627355034 904728138 133345121 377015818 125439108 369947170 680197783 932620594 87751128 408547850 758174574 320403642 944595885 157214870 669768989 160084513 53773261 983521507 829434268 765945887 688673702 828581111 225928944 515472168 884770967 585310063 850419925 585207173 318659236 78578988 638024528 836132347 358692726 666215613 143538615 465071036 264765941 667134538 551021675 653947231 438480921 807404429 255446360 154234295 849098545 547744095 458718594 197176214 40901114 191225605 279152480 530808859 723099715 794661143 105219157 878174689 552802179 979516898 825735447 400651239 290172278 591929883 359080184 702782671 207121096 340201203 884554195 830835997 205253515 132568378 530222230 403054560 597530143 267333146 749022146 92710205 284533861 773701263 500959371 363216603 724989911 3778808 545349851 988433757 453580130 955192220 623691063 603013831 545197842 923570628 978027578 434845474 914769882 407538935 339092183 344091221 416573621 59660333 173618859 290159569 851467855 982317488 810405118 823985654 769775863 443036498 266795484 256610901 557556919 445045575 575391364 263527664 403854301 647019988 676745150 730075828 109551889 836403734 94294597 543101912 828395838 909180588 872440936 135860864 474485549 896345655 591375189 623108571 589633494 770359739 443469297 71417172 273589262 451767117 220687264 587203567 672418759 716742889 991201470 999416528 355610293 870072269 690577401 86534956 41789394 95375644 691768439 382574844 226288655 598051330 389623391 82910803 248001915 68666578 262141470 128666327 943898478 504504325 509405592 153249249 550355090 995641516 986080030 489810392 498629992 446933047 136891170 63438930 203192813 601252027 21167641 207895964 516643017 335232317 248368896 561606403 18662432 281384646 527803316 661973792 747163014 50339822 177608878 301741508 629883926 382423933 590846008 306780785 353012203 398003316 615364491 254782216 202950021 420298445 707933507 183094761 480856275 902732007 261922084 948440649 848550857 290225801 5930243 271122963 983270796 502387129 161141490 897718579 314811023 921613497 258147962 373133980 858215963 679334730 334238203 675536422 92213873 308063508 385704697 557507986 426823463 188923093 178727144 34222285 940692218 278531658 892925732 542939881 122995446 722305744 862275352 111713906 548620655 299573184 693243040 813415824 682060551 303521203 71996217 27545390 283612267 640528976 285805197 12503172 991920093 412905431 469637861 150457716 467206680 652127007 896630950 59331484 657138751 104409078 666744109 598689102 301883867 340109541 11428672 247264173 752782248 261876089 629878154 264541662 115938763 26128067 242308791 407733181 283424864 432924371 479567338 907531445 614428164 262521097 795766479 718291085 14706233 903851883 565272355 17641394 324456996 75283650 76158322 501870684 15696736 554069901 168433295 230468561 685259733 326867727 425947317 301409731 440652816 868865774 111910754 66779893 159240229 600606194 958503082 294556427 95755197 212484515 886199773 685248688 928749098 39678246 37996886 860829636 192337003 853990860 207293632 608722231 183008067 726689881 292811075 51254423 556817869 180505488 220338369 73343054 84994129 393630628 912152257 89875735 980218543 972380157 276329810 59751857 417286417 413684182 630460288 339836731 802111467 192300583 81091832 975557832 95515391 344746855 128657751 88970457 51072120 323984718 153683576 443850675 237814839 848851848 328161161 926200708 667802666 87185680 835345283 135061421 344775180 638553599 397934157 66119409 590472054 522789042 694727667 659825972 889172168 716385226 264152289 517532419 109544194 366812544 60116539 752047674 29425265 96799476 547550872 26954743 387567822 279935259 221992052 7171662 814159179 113086361 960908293 312745080 89916210 926479408 321124668 920451162 881878273 41794908 829235295 333338140 981685833 335030335 300035398 68496838 207811767 467625244 994446232 748752628 60541018 947744809 748926858 248748689 979507206 254098422 931140729 39697667 111092709 52932539 502074391 745993782 663290034 613833381 488573239 46643843 305283349 912406409 499615283 586049410 619743949 841476199 402696082 333939291 844027267 621803098 241849586 866566480 620432578 968052576 686958864 486801256 116809006 534437437 73727982 568771138 635234249 209737519 317763880 942159402 21513198 83657811 595545627 220474633 903016585 310397611 126722958 766556031 23956483 706541172 944584729 977438105 161131923 382396104 541424145 391839461 91387713 992029294 142396412 83252769 963185169 653265045 30175353 337502859 954479156 631950428 761198485 395104947 986476330 72587268 538582281 587508219 407545198 444035113 292920254 772753368 326820221 404221370 224727156 397669882 67793456 563510321 792388344 98970479 410068228 652577909 629819859 451003502 270812805 5361592 410218658 875870637 704677723 534297029 979699861 266037058 589005743 226251031 179789417 556929998 96288900 589787861 550137177 168162709 345045067 246129044 351357301 98950873 25287989 516203098 631161460 740129936 820002803 65911747 957278711 131110090 512427988 770826942 107511005 24449592 779083907 287450632 650846341 770919696 870678708 437917796 931126083 789238268 997087594 577896028 878537360 233558790 165269846 501282367 622679462 319970280 758653787 629275192 147710689 671520287 704275384 320628195 574646550 355019477 390013742 569390951 871708962 758427128 337617844 666613531 498643505 540833080 218629834 670525057 864509297 266589014 572683280 220726704 848104973 55526487 453977571 961214014 318318431 266779205 543074473 761981036 575011649 852889154 530421706 521092696 49164232 416715184 749872620 527187444 135389571 185402541 254077635 776793267 737771875 991569645 625311023 431697665 605720603 986332595 621995620 589538066 363442328 263406703 684077722 397954387 353267502 700000613 661603419 948973566 322294365 738968204 879044801 976478995 533683837 187873624 992665109 716504399 197045661 674317186 975350823 97270398 586054947 651179441 423209034 92708994 376339682 586850072 563332505 238708196 679015860 99026079 384834366 466010676 949927434 68143174 362190520 281994606 20336789 99635965 275650980 871240829 810910834 180909858 797079500 497612487 154999668 150798782 789254528 600386407 554009481 108219817 234182296 651060598 521752325 780575332 705909661 993447617 481961253 978168460 988518990 141327412 696658303 942830279 685483661 324603739 653279319 165192056 186295698 187212861 142272368 782344595 436883478 34819273 204876525 71394891 863624530 211457216 624003755 924379687 87285214 505189527 1538619 735689482 136261988 606496143 471523495 988828196 182729394 144682735 510743877 102972042 433318101 816668539 226665320 801108813 559670378 915639675 393967717 307119378 906578767 316245597 302722771 671948090 212571704 187644254 63748653 861092555 487926174 878624781 882306663 890681108 467292150 980643870 622397823 1661690 393639573 98855191 264013795 754899841 681993893 347379513 866072911 90947903 743817914 491766002 697252106 694964033 540054544 231230387 692204297 157212863 996192649 606599319 94570681 362632973 16316383 540717480 460385394 43769064 671472337 391632083 490247579 748324390 413640117 594607097 931849414 627814110 700388368 685765445 733084254 776883278 615904997 151566214 495782667 760876152 115313474 151937625 552400624 992016193 658749878 340860489 705259110 595899171 415019230 359367165 662140160 53537962 861198762 563601651 260723951 6375326 937864063 578769781 379763106 760500771 798476465 540631234 213438819 75039061 138341562 836198368 716766967 699683035 230092725 206189828 352403370 657728342 375540770 7401316 427810241 733428105 618503331 571333341 566848427 864600388 255126973 764396792 524726470 28104300 93117093 892932843 31250524 686327640 265429029 221307641 768749842 487461822 231073537 243863869 626572550 538209239 535562390 511878432 972944773 604780854 459845046 458293592 651397218 184112967 223250595 227005107 558097699 363574988 199917710 817484310 115272816 721524791 624358490 55091563 84214084 381462885 900375203 892086100 80724671 409918814 880808767 943036775 840508697 670509194 762888802 840307340 416864650 976133472 588251319 249325208 458538822 100963694 913735550 809237015 581282547 91224187 282526759 821022072 397152350 42654738 798468939 859641744 358109838 103447490 478028618 492867760 937971937 229071056 733719775 401460331 735849555 752965845 69998275 185166302 380248844 456238938 315755182 283424328 275478572 535017292 367108968 971701318 809829327 570047243 292129285 993291086 813696989 402183146 75788619 243372294 176030653 694558137 821281267 132189004 202735074 950327111 213073181 224448696 515877996 186581543 286825202 714054001 268858910 466178919 264412187 289754835 852409197 856479214 619911842 783160887 464860081 271598621 26875559 305429443 977326450 981145366 455737671 919924119 29175626 140462425 764628712 57282521 29853419 652818642 809149952 258647225 844681082 994762896 523947285 308463593 963240521 236610097 431858532 4618873 534785166 467183246 122362505 571358249 728596952 335526641 710050059 439463043 449089814 352016732 465403495 401917245 766300645 872166209 184973940 898929405 438810454 172015530 151340442 398365067 26639407 802500436 137944307 579283767 848128728 194930721 602694672 955581718 240639362 825689503 383782096 534525248 60496301 534475239 296629173 864898878 901413306 125648555 314717471 347971472 393019900 127409955 206617303 804683442 431566468 975086709 612039499 298800409 100097998 297284850 847955802 679236558 41337889 549653885 105465746 561245151 881016526 793921660 781830290 375879472 989341539 923331783 594301594 167298610 703205473 118867916 284225996 519535795 271965592 368147282 804665380 977559456 241985587 710630395 874034516 861702004 406549306 790293722 408193366 500012278 196601380 935499015 878249162 879704081 962846723 871006473 108497637 383170996 234017248 154745213 292467165 946219633 923801267 1325854 359572647 367676268 585033340 88553403 128774888 29151300 953203275 504235094 452378243 530641750 318425732 142626867 427685313 708447955 822431096 621862796 228709310 467949023 93239119 434214243 398029972 203346727 951447230 598345151 762622203 31577150 554656835 334732384 77811243 997892659 676710547 68895288 987615637 178023021 610889234 123640222 606113189 754850678 523415742 775563726 723580362 816473771 29175061 923385148 51854883 105713995 591598790 680281766 777920036 580290286 322954522 521818050 207223282 596406183 857772897 33178271 364559485 995053752 62121039 226462900 466620239 721281523 119356245 677830950 237684414 516237641 203189620 950419532 24260863 458569837 462388364 143173375 552860149 467297934 985225894 972105309 622385001 192638283 800627476 955528290 9050539 430485454 860754638 639143336 869140249 498586560 330518166 389366022 20010700 112040761 556777948 692456650 984238712 493368655 668938074 625101417 242950935 217210532 279135045 685889669 538995751 429566972 589072832 99914881 597674446 540548237 349456031 479964830 25420497 461062322 403246056 269905876 845937532 403449034 841954766 987819811 721982940 658919957 82633647 72495676 207734488 968472172 688555382 652944239 808226256 700624872 500975465 390767493 941998793 487491931 50958767 667050484 21302635 666845545 200689609 807702411 222708417 165005191 389946268 713605250 98680798 545500914 153500659 895941433 95203590 165186240 80462085 905788569 787869721 949192666 411830226 364762303 763304772 313737801 836816818 949351758 473176021 679851962 92988773 914537771 954090233 614506000 653949618 29782187 514329729 962301385 75513964 482931913 418115028 949877513 980831698 142617976 175512547 611260075 702644046 775717214 342270854 984214391 811808774 242107112 40570181 342821503 222046247 444840822 113973789 119473533 34654289 779399514 62613919 123883888 31354376 220740458 37534798 707966435 794855450 426271747 286815059 437714781 322853172 215671778 912720342 934638732 563223176 532935934 736121621 645085695 466803845 617424405 636458002 158183716 503284851 521159016 329213789 765554168 800393507 319221074 98381623 179191572 4048531 995139199 314797617 996503352 199987075 214477618 734215794 277337371 409894347 904187210 297335850 52349807 941529467 371525556 406332961 845808368 663154209 384192637 787331545 34403659 87216365 154682686 490360562 621958650 250755116 503762680 3664530 387375547 491060286 951494900 753884583 451537481 450689510 745744103 784108616 209638511 818488251 669822780 420783294 16792135 373899360 325059694 368110011 692287224 744058882 760470164 138392070 895218478 240513225 730589062 497576280 411106227 326077836 458776476 748272549 572600067 572618194 197405761 877248387 137016550 934466821 389591603 929418538 438566368 454098998 752714028 682288312 968860569 257109828 645623212 777774098 886891741 274024473 814957675 986636926 101677112 130511780 143676201 807889358 950367589 309404216 15730784 129756691 697863604 398192044 440348112 89376155 680914525 936317859 384208349 491264114 678057568 278667484 943797019 94233623 885818632 550250131 113301952 188126154 237329220 216003390 874530046 81974080 245282789 973039229 131811223 55933316 321204192 434544134 149329669 937848297 238525265 173812402 145370848 608977740 482151209 802573457 255362921 87636865 588310105 126737431 589809683 362020444 368077527 166969623 508042924 148657718 632319144 520672765 409743388 439414068 266384113 319918229 702297002 233508619 48248648 412056790 314536495 896761743 870609461 631202803 679245438 359843421 39109334 376519820 783710381 214371516 413143937 973936685 606218425 179926531 686121125 641855277 948143932 22511753 635085970 347067779 572468760 142676119 388112999 699668635 731701247 482174885 888354808 562777120 497074368 593780280 678010949 693081315 556534319 318784296 551487986 242968562 834639608 369690570 682931103 75869470 454061158 540003378 305170937 593477494 525511341 46637150 877279948 686832334 687344604 924093466 771354020 318863769 761793132 15865181 705941992 370805060 126920165 114818322 375225365 563413392 932138118 545676014 831182406 213196950 814598698 618963258 699216452 569265893 947928006 218477182 665376577 73125166 95361435 977477316 689901627 990785633 234564226 307498300 15309925 843815948 968886125 926537208 315247933 649585688 286919675 662224649 982507014 318816008 826051737 425487728 672531756 745687469 293789058 407085891 48372626 510305159 974202722 679013881 12825702 271865181 843062715 70887293 688144260 863781184 465595485 444032452 500198994 766816481 261874243 891774643 623915948 783638177 388434799 425688508 146064232 7515012 726503643 201429026 868507932 405061429 540564890 985661237 98552316 901722353 12438126 147743816 462806926 738679671 665008618 142289186 404094205 223626570 841376760 690481628 294683300 893878104 168433373 65426622 322326411 740253506 195724048 964901919 87244050 606107274 785494130 612100706 348519639 626194024 295342455 889079133 547840017 899506138 587036968 499474812 913634773 448405746 523169029 59274297 332058111 217778847 889655427 779190128 94715212 124155277 165617464 384168842 688170882 115364478 532827636 749004105 692400101 592741479 743460505 966119016 170687009 956144180 952734640 283899581 381926743 584205327 42199385 8355605 862654929 183678766 338650323 544741156 5282338 154117121 771181844 319083032 562540331 615076432 557914718 742358994 73730156 267475719 862612068 545442978 787522381 350615519 369728153 853927714 964008341 945429884 594432692 604833983 329856384 235523352 31141753 981417422 374308723 522879585 932686279 34537055 471577916 632197467 727363471 419866723 877966200 427732171 532931007 366241450 610951165 901214065 684834913 374711039 576602659 932690375 593637153 158658030 766776534 777255407 478816863 917366829 151776113 320288971 226167924 778684372 57726171 378865481 336675685 479736326 770018636 360317607 524668395 469043628 324486051 777629969 241128277 605805188 600761926 664927532 778610011 844265327 710623214 847051566 102880750 656294902 490498223 342309779 292298880 883187295 263536127 735313421 763150600 341014707 771528864 28111913 171158255 390719449 890006269 872616156 791212698 888830133 752627708 441292232 591383705 263412280 560461141 379167438 315096604 346741570 11907079 589075223 880706376 739966650 20822344 112747060 842449058 100919896 780737648 986364008 710532980 309104649 341766287 181591648 711692266 175946620 98989816 615432466 902431699 142409973 572798969 30870278 130724086 702547904 627449156 980266727 978029203 593280395 276407442 997707260 567379936 931557981 687530313 177710178 878023763 18779398 983527793 909550062 521819765 152811820 945772260 798040420 497583942 56663412 603178882 842443981 778023275 925024741 764237015 484191608 496380170 18624830 525346635 968010375 620998754 675570444 553887734 202044825 742396016 15087417 414214061 67355438 477977831 38013216 585153846 758067322 35237728 364111788 795838759 369422394 789342399 188796914 74237381 440777734 997323684 536460020 641385722 957217358 414955506 784479069 937673960 873572174 511187137 36765570 458948113 283686947 884101869 105887228 423727935 874106689 771526044 978739740 896332368 211389899 476818731 72388394 512505290 262515046 410602239 872630463 699912731 798669713 997806579 418916420 410453489 597587579 371477585 101274150 739548923 57120017 648416789 949235656 865321484 49593096 659817010 346949611 647932618 50175653 255636488 686713659 803160361 242297522 557219221 559920665 591483498 362267207 111992326 868511659 704799239 766449477 526464527 675570450 3778955 360125412 12155449 647331092 539792061 836828587 175470091 847806059 290080384 951981639 121191251 384920636 55321611 535855796 900833256 944439707 16635773 529434323 299543558 769403057 530618710 555767159 635254603 865390947 583630248 586297861 17711972 589610988 205076406 818698002 980394042 78627910 428300 786988943 903969701 434998733 312997443 148627247 43444617 502589984 301722534 347532403 150626505 815271076 818040550 431801649 483951228 924719197 807158067 334551661 13391398 403972349 316135411 739135792 97004273 542921274 535809961 119559309 772856067 199891107 596141690 42345598 326265781 776989480 874556111 296076505 919508771 911882415 482657487 865272893 415427791 339996543 709721013 782934119 75537884 552780246 71253859 547173445 836337221 392590891 43671449 314584488 36817641 874131733 65433268 165395713 438892689 808226864 152554928 991832299 635062645 858177396 394594196 877860930 896186941 744147741 75625420 879180728 768825678 93707390 619612582 396446162 893153065 919966467 439025022 800185783 837985803 647103072 767497962 301905728 484727532 111005853 593871477 39095620 181223631 48168029 263659344 585244281 750687982 935532966 285402472 321262420 446714857 880165446 263575720 618010503 246394792 582373796 565224662 988779360 524180441 62636504 86179252 558641966 840190057 842069572 789692091 201548819 123230011 361565566 696644746 178035233 413511107 165973068 895880458 69771216 135793897 102162186 193505824 291499013 35899234 701218008 714609913 223826840 60252501 178527764 59077812 882986446 802769917 204129207 878647006 90858550 788986157 594745404 628331634 120309023 56231895 804449929 724704998 511334052 492503616 840799303 47514149 484430457 809954276 623728203 76713631 407480036 163054139 969297479 114972686 485132823 351058149 216716981 775010160 792935875 620108443 480275456 768053631 699368657 691890724 535814181 846668916 638916773 468178119 114911272 755342394 680491783 794439764 599529975 342858477 33228482 741953670 218765287 785196168 567938194 999305058 338290366 228470024 779090670 895667292 235135193 383682875 182221312 287124329 956697953 783142027 820554955 466087708 906072747 814943898 326912220 212189339 216241772 792645656 514795389 439509343 736502751 302923827 472690744 673293521 306233481 236323980 679895519 931690210 294586320 867458669 69312628 54614203 387918399 591733693 661543464 212129238 161270750 155187493 221118125 194356339 136142884 593687567 165497717 161207278 379124883 418118413 491153716 483567237 36163952 807725583 617072044 630924936 925114901 990776423 338388791 132224205 603572336 493526438 53197163 374770723 405101085 362072561 886731989 591038826 568014286 614844928 452052189 455418927 307420650 85496798 177430049 867480852 819234598 330484069 135134402 325804457 242690274 164397054 254516854 263674453 105523883 427396444 355121539 254522539 359818444 788650449 285517282 133506768 282770209 632152139 327371111 284521290 850658439 201523646 149755812 204763242 166576140 278286296 173619949 175219288 848349914 547691960 363725161 392623650 265331118 618944732 772105920 9665408 394761706 20423247 357876123 391721910 298772670 504572976 932723980 338591938 308589210 885288432 969527755 924054388 824157174 535233417 423050562 89105761 763703636 863766309 733467930 767829789 769336209 828777596 548828015 786372272 203130757 382825692 422197558 304074766 442912094 413280374 431054231 354988280 792717138 412781836 318549178 476833882 563542437 764187282 498426444 511318706 807787307 506940636 557215739 961008979 399761950 391210774 947582291 655456846 853529778 387981207 555231156 493072587 248035019 92278199 228128883 843210549 811562995 645790819 329780591 725430155 360173887 8145148 769720899 229933207 338482702 341839195 664734184 417111204 216575455 515741020 558385143 601523118 524990183 169517662 680107502 558701455 697529983 844859758 763466238 68269293 710527942 531875522 345998161 141476690 724034106 604643801 842540942 121753597 415215715 942347005 168723543 565988647 192762574 798246338 821826531 853450782 536612404 117364404 785404934 774669454 88838458 617747533 701272350 210635322 505761273 480128298 131974242 348452650 763276200 83369763 942780438 514509687 909419433 152451095 392300799 594717682 999172222 8776694 968673388 325800080 294452000 902750254 874384271 610594103 575705221 180462245 604650251 524311957 767927836 441121241 753255513 243996126 251503618 870380854 491147214 572147913 921416379 22704079 281344604 20282977 900101310 42160146 403119688 239093633 445487816 266722171 521356459 417492689 109309063 992888614 451747261 869780479 691282606 436270767 336640324 572402766 358463274 864310855 944938519 212324772 373229705 894750883 384101789 264273770 227485804 531838517 909310192 644089290 742424326 568679165 359261978 960521544 666830127 430259459 726927061 738288019 488711008 377175345 459596462 3556720 510185555 397768356 321393193 156128366 211481273 857088290 450817334 678331175 888100200 4386238 949879858 275586109 809852350 327828254 936109565 905631045 149999561 866501758 497585689 658372626 18001527 801133987 543863117 873414108 408835754 729989780 587265875 267993299 202593433 750852954 161719612 270005494 61004308 254512935 269534713 88135294 278576436 573651716 477046820 219067023 183114867 465072067 386310487 5904532 818135388 311788510 456085238 76519758 612947078 300329130 144963982 864690385 679981661 356327634 136314864 985474525 164246179 524295043 768911433 323033037 856070564 154740193 753589734 240887537 65557551 17586255 314917087 295053833 703245027 241039931 861328762 718428539 699920618 578513711 442448266 249948391 396081464 304320492 71140083 115520465 103934254 946748993 310058418 935220479 451123651 881035251 790674110 372206589 661172436 960744532 357851636 274691241 745073704 409010498 161624923 509212900 966549659 759796248 696134094 317335611 174612507 354278690 429937781 761569284 335706556 33469519 681463165 55063495 534517785 579528094 370809713 555581639 533823174 396201766 548794151 683341857 781485615 819006498 447101329 71410362 754386931 774998622 827831189 857186330 451607138 3173691 214238428 134495238 762117408 555826014 159536080 621773784 684239689 437625235 354141153 592442508 712058602 851180703 786067831 368973569 289550025 46373933 931060779 320918894 576140932 853339255 54771842 381095477 912563574 553774871 528205812 961968038 714648094 44168415 838130946 698894999 738021035 248738913 776634812 577495127 477900330 230191158 643983495 797291161 25346105 788950249 123155258 827124565 972998403 35490793 866538567 879982169 407410996 393652966 881733171 114839542 478364129 320494021 314908258 87120122 344565456 222310089 743168647 666413013 313553658 984051379 378290022 185243755 494609929 649444542 325978922 880947637 558683919 882998706 75798529 99345470 276994519 599486417 691530097 828951842 834525212 540701537 178256265 851560554 941387958 310885454 230859271 985069798 945251397 721783636 893317936 396129471 448872626 86936455 959058456 453779403 854587406 384633999 531995332 613712666 862279880 338238263 528413894 680843006 739508837 80995826 672920374 102770586 84432111 605422729 65789514 199919929 348913076 962106243 163351496 71802268 892946992 75585478 783152457 337413372 790634096 397593101 262532333 765725124 475427810 90200192 112373044 298361563 12337531 230714696 190376925 853186371 544783803 466372714 450800724 74864066 942891230 224510150 255413932 236497255 112165868 499768040 333807603 689269159 67923685 874001463 827780988 374574791 361497990 48687967 555168508 903605612 554897467 295407227 624550912 956853897 778454355 46980237 64593381 735817702 920019218 790959631 689960686 503815973 441505498 821561473 18415019 71595336 612675302 393342611 640945137 70705955 857956057 843998924 277089973 183179783 872169379 964015022 578647853 558527410 450411809 693413654 367559318 941102701 965560685 272987955 721859200 744418873 956426081 820017955 528163466 233462595 131134806 186399795 748804244 46350040 361935532 700697802 323207763 397888940 833415992 352503908 140022350 319260188 546686109 122174782 388023992 573411415 76407403 83128098 715987522 298797426 911044521 375799610 32798299 795987998 839266601 20326491 714846867 265189597 423088080 561702758 818555508 193996261 433707876 638245020 846973337 880502952 556982262 701513820 839679936 26630123 246193578 13940094 638191272 918705143 832416678 20546989 288351109 25718451 565625515 527257900 929273036 302129505 361780820 36092178 280419392 119408462 702640703 223161125 568924129 712694849 27708652 624461395 556141319 889402838 838575466 134009850 481297116 377378833 703807884 272649399 20165545 773400446 814684160 438430187 667334707 664805854 871739145 194334975 757812781 101827741 89875131 8547678 579123965 32304030 880366623 235881365 903472836 696803127 697932536 738922720 343080745 968311369 744276840 195317427 105135932 104860984 52055405 880212624 236620514 547283815 616703479 222781662 615624513 4982765 348734334 415817783 532496334 739271837 599627430 253489155 614381267 110631662 588222405 290596642 850562501 49112198 184771428 510635936 835440539 196886214 870264320 53887787 574638059 77428371 920460422 928611389 583349268 607734566 164423773 179941065 752326392 389929124 502479571 998600681 560643533 336201179 858282364 353742088 528466282 495178856 39617229 902352418 80632143 388049694 68087543 224034542 151185944 230594936 676728075 489605924 854796115 519640311 690421771 691257876 165603008 305847781 900613962 317090308 705371984 547492128 872423677 964452106 712390364 494938798 613294188 61389298 82911961 236707229 216254180 220256056 97686985 414244696 760030443 978116278 697201690 250852255 23894746 310133421 984312050 933845041 473935603 942844590 444004746 486804688 780543491 453465788 212034138 590469398 824186485 496162772 238128150 93046139 693522350 629842552 861997483 627712906 72776106 921051000 176114211 431636251 960751692 195716343 114718145 10120195 477523460 882706022 955807824 874061512 402581726 351059545 664182998 64848064 464745437 618635625 265111003 122886718 735485779 529120464 183266670 49571097 366068390 660303326 522574434 596796155 384088351 27472471 89990251 995941224 888534896 601436025 650973210 39579566 697952851 827929577 565890427 445129947 907252457 962783672 596762564 190422670 308550460 664947434 536019380 829440580 284104438 700956798 539863040 282391739 802928501 621657950 376087898 63155223 46790975 588305865 437256073 946415713 838666921 679259132 860076294 467682168 193274280 881231801 441761934 773914615 930789997 35612444 882307903 443569183 194880188 734728345 821243474 124978351 516616232 653631678 703996745 81054549 166097821 399276294 701775026 749613298 301958979 110846139 466802934 854329132 960014616 923351464 813476681 152052424 698701574 382740844 359108653 265491830 602028559 911435817 252771709 837920855 197330030 185532667 26667555 448687469 534409775 143053834 891052633 729704577 170505383 862799155 183388742 220638377 684104503 541692464 915446265 244478005 960390341 647487165 992739953 54886407 987738578 144135839 793974647 10766866 870787830 126034460 476832034 513733791 179758164 103395396 478323413 437146765 808946417 96628971 404134182 534030436 142150839 417321177 211973067 932528165 328568164 432380330 539428039 415792545 594294976 796332984 410708917 709298553 160313291 540797248 781779432 884546875 368317202 501303219 342461073 817103107 256056966 409690429 457739024 235810188 633048 872943984 416718888 391812507 779296600 496336838 168683249 277419993 161679929 142003492 683981096 252866571 7782766 699465368 17881799 719763274 822604534 476946375 960951799 548631079 771657373 619321358 181766402 466327687 285022267 979440700 467697150 665962087 358140902 653635524 969697109 558270529 221285362 709364012 792639021 427481892 396117507 940315917 293469196 735327006 307041682 966955255 69147944 130816100 965252977 118289287 337445196 597198942 677025140 543859933 421202817 30273526 831448512 977798202 351009476 693072037 237058343 704882374 593957835 512116660 877735464 954798806 177183698 402693328 830174160 934334194 293208403 925095108 113776394 454907038 143538108 206385566 973036033 651186468 293708047 590132215 136343144 312415261 526535294 917619845 577356017 20719663 183028344 673046297 765232484 243014843 426466619 198991713 173600716 145028979 261687298 543106406 884416216 937940848 569827617 666028372 258651847 910634101 461179813 388341368 205069817 738960176 694180604 815936967 139217809 873402779 394062023 403318254 102935618 157852647 781888048 365206909 535420887 378239194 959128478 448116256 934578810 346933117 959972652 689493730 267403634 754541586 151775303 38415194 405928836 407353975 192816383 479671228 385210819 642063758 716952692 696768753 126745602 612168916 47041559 833697332 52410054 130681954 654373901 355780799 527406960 408971465 748057608 858555193 536493280 47407921 270606921 331193211 679313285 184165934 382553463 96853473 493973426 591394278 764643859 336022697 484266465 420498075 686375884 608610732 778734253 941588282 555605066 628475785 942766857 15751028 987452101 838499903 407419507 475742387 279190437 292892584 88823025 292601913 480666826 682874700 528318699 385541346 536680802 339393728 549908153 511374803 226522548 526410320 884598716 121828518 731118209 908114779 751036463 66724713 477863004 469271717 492360646 622429448 619428395 122142747 837892122 527054128 214543500 845446664 510955657 805810556 127974174 858419566 744718638 438203591 836617760 952971877 374977290 471361764 947872661 192392407 668650284 563049425 487205697 659790308 357944119 534950114 810328409 738921013 801489727 277268973 911909392 120248503 738403910 779570460 636378873 857925745 761294217 914607642 367234772 36765953 595074832 631885514 243820673 246344101 464637732 842778431 80114086 475319061 115462885 776337303 278655821 885170389 130731327 2539158 613305329 640964421 925486768 689801572 809226894 117094988 127651666 393019675 966023728 36760545 771939397 450356113 159711235 156516662 81113221 353265048 417313164 61251703 896783352 236387819 761685051 610037248 724608380 65901964 714306451 675956387 635544713 730394251 874117816 33407961 223923897 551403479 880997191 15964469 822810917 239465423 173961578 648500136 27220970 940198556 78894426 339685089 251966079 763924514 194648679 440919425 774456576 582876437 692576835 404885194 188057670 4295335 206092498 566081672 239343896 454645386 704661887 924765855 184301882 959281869 31635834 733189224 283660873 708758876 876219971 856757271 455175235 209455404 678630123 249015869 580469460 138884539 86523283 245043562 600423342 401836052 910099901 935236360 677800436 909055439 159558522 393917029 462253941 377490960 554885474 759982912 946073231 196366160 494922465 739608218 372388601 429224673 740294753 834892807 594651999 38301 86600857 56345913 261515555 578058700 698937790 41734616 389418597 225780931 545736677 921433116 184349824 183208712 905948434 513122839 180057274 846917498 116642854 431114928 1292232 299272375 839927565 881097886 151260968 616840806 255949066 17456070 510087418 777582104 778187621 470336026 120884931 90248260 17276830 570571880 462577494 57425743 897918715 620540823 550597077 807979647 560504327 734232938 168553077 705731904 329298043 706925070 496946644 611633710 732907555 750982579 97905997 875068188 857485558 633512690 754329933 700462788 55397610 72665146 833965434 378832053 803655784 943358289 160436068 192566245 924592401 208038408 682479568 361517772 475769139 990239268 448992656 508015276 766996655 30908321 517081418 833886835 764301246 719966019 134089905 851420405 790225646 846415679 269803175 456290598 218214017 438946695 852010673 648450878 968275568 854261387 503352399 284242305 563765565 383034329 122116994 347482102 184145284 671063254 341488485 898161686 851995384 581511565 218951226 884099420 101841379 892799181 25207948 560742114 78458240 107960005 110787683 94237406 529193437 678659575 893497908 715971487 94269605 43341079 356077831 126866722 727831904 535618500 81163502 229477017 894800698 51444046 678927856 139765588 959428832 903908995 681083543 497048063 528000561 123252525 696299276 470761934 919571717 768071746 275166625 712424203 510262802 29945100 852699344 808652110 412140634 890939614 442420867 602267008 474671899 815694880 561414175 585106220 71560315 58185968 583266329 320185011 993320603 709381514 851525579 556635346 774671177 408387621 165465470 99075496 638420448 667055185 765082764 113793101 538847537 885880704 606034316 659032218 293557610 729857575 676950372 501611719 643547936 82759234 235500090 275416156 564179276 814237768 619758208 458740890 737287607 781889032 965920275 789437312 810882273 633365640 734043775 340907585 71166834 632986614 211037663 570594809 624868358 428515188 398794125 759024373 219119847 395344455 802499740 440578938 296342455 569508370 120985952 714203273 859192923 848992285 385279332 671600454 574040580 521552410 783973015 399918370 198361577 234978344 416751503 616412060 310201285 994596336 695257117 579484794 548601958 78988256 506508868 504773243 523322730 480057263 98266525 330425719 583846648 587418204 238162900 161237089 448597943 72700716 681565901 166753580 557937619 174093023 266463083 38684463 559046128 427775844 800353795 978177923 824174990 993043571 303039938 748274928 825555635 959530493 863805875 33772802 613152573 981756486 33039962 451294924 694936256 595198456 314684897 291478782 547119644 186433143 933839419 231848128 333382833 81576113 530063114 490562842 663838452 447269533 615092854 643132322 566047851 862678292 767667013 783143912 831557657 963810085 13836107 564639468 185048284 882012632 848118199 809584266 107196227 114646290 147531313 231249772 143926616 739945390 266344940 186622657 10102996 771054450 686467823 963028891 595245186 335649420 898164752 349252011 925562500 402548745 574686793 578166487 76339306 693698677 379136400 445074999 916661488 121027042 912079420 142781898 103183430 379323161 428031183 207684731 346172813 83909992 598807006 794644667 30131979 689625668 646650493 904456982 318415230 275256545 54747436 198167536 594668059 432796849 427391132 819798345 648762862 331603590 694176782 938878633 655566805 529401700 589571949 948798289 708874499 469156266 231694488 410069704 360308986 703707489 305178214 900063471 524493994 183511158 23568822 923335410 131544989 433752848 877692855 206118922 662881895 265503771 474668034 452310775 803489045 146242522 832471512 956093334 457517221 953928084 870570159 90532234 996855587 789163830 247499681 900231337 738025586 679005158 635868597 321775997 43809279 179529245 107212175 160784066 188318839 517195399 375230873 803238219 122324189 481037629 947871948 224903903 718704352 610159191 93957675 784644595 471107870 973174969 951766013 214507973 595488215 196745970 91172329 372560662 931868949 966576221 689681581 128102945 90292867 173515542 717215746 204836338 992961612 106548965 71579113 737356359 338862054 466643831 532597620 297711476 874677905 698978031 498576183 652844006 741799698 417593018 171867838 670914044 938682269 198443666 952059033 681516720 734639871 252742855 100376176 545001534 428337908 56016450 402543447 725750914 969313477 835715924 245135926 529224902 672649967 999991366 448636552 665364671 307907082 612191228 878116656 174657726 837721667 364367736 948236370 365843697 324155828 929945573 248389944 603099206 529473163 371470949 345497775 876244287 561187311 738633727 130260712 513387537 947203819 317780153 875832699 835868348 803147243 755569737 260856629 889196101 62280994 361742098 425742764 366707910 204713994 50163159 423902557 856110814 695752096 722232013 814131602 347698720 17638007 894421397 280764997 830473447 572393219 921576362 349707728 562294187 379756350 961212010 744935982 364897065 344242770 798690085 613296403 286668661 764540497 775961086 924555402 804941123 80340492 542352757 574752995 380394399 587226329 62787452 454643617 178493855 295532504 375928569 773236501 23126845 167471891 443264322 631329048 312464690 814275827 924092469 185531467 215232196 914138991 110497251 391973124 236056067 534368192 791394234 461829628 556930611 630584105 333343557 243079135 517249123 817130401 274696866 737367011 53463057 964204168 985021566 672942173 423967013 753983777 768480915 553182127 334562581 994299886 715841541 932606997 996787194 870267115 116035751 437654907 779429222 961568336 13959344 251914285 398286090 585704373 166116454 265080101 228303169 478092170 746724176 720248856 267351559 508742273 152147454 303956327 793056464 320095901 656073150 252616635 757003378 132282454 281172889 899288880 441988590 441672343 663418938 970544515 321069937 648106481 397405037 797869171 258302420 234012448 969803872 546318290 650147970 86865801 87341510 777655687 615777174 982776457 207770565 148694820 403447481 962319886 442310778 37042756 90663459 906538739 496291580 102347989 413235843 366553169 891208726 995745088 589208460 291065809 103008855 85806617 110515427 155173166 834315541 918247600 685256278 958804616 825994336 768287411 768382609 524806731 425076868 526432733 400542246 933183996 676912987 681545722 255347638 388826472 412977681 490171428 918311671 570631866 289198530 404194670 287131378 244346464 543780678 165780429 136205720 800808143 201528234 251502125 965560011 270315222 211257980 133380889 191343363 617670935 251790616 531715471 870766852 559340568 830896051 357901871 82739267 188230117 894340628 170485196 900099981 263149921 838838676 226622234 454116063 990203075 266645028 474142991 236812320 788866372 462210185 300005428 504299698 875125030 36008899 80127433 675113503 121024143 608389126 95899164 722948923 558085406 464251694 50557523 809263465 453777700 183742079 776974561 492611164 784822412 678584134 514509293 450457816 86923762 405050102 116857517 590723503 751008867 841836777 243479796 651994915 134227102 80674592 882238728 655621863 592094473 22777778 207156886 118521995 988242578 111392817 811826661 264485590 191169467 407830865 202216769 74571722 685340899 585948722 31154429 234765001 757440931 301189481 804556516 561826320 768539644 58603853 632642904 338655945 557194744 730493566 303215858 293415127 909625633 618049690 765817232 21437001 876274093 814336276 544040831 574264208 316006120 269843368 396118361 987075811 746614352 897060163 340436669 338100106 958763143 232156268 750614562 789477950 205066558 59675509 207205091 942385997 70155510 231111485 74308294 227081916 613586291 736154386 189115588 767160312 397175976 135683392 940204352 692998565 854437217 442456802 312772897 218176948 133702511 657185560 249247198 899965031 127527115 290392421 998657583 808453514 468857524 540447605 317332581 755667274 544294215 530634634 760650538 20186050 952295801 126365138 178124160 415466759 274025935 340020387 513983755 22472834 40223965 539379261 743556143 823486663 807400374 970573775 912548882 896305198 345341728 62796871 836484055 659333156 952323425 22906435 301307600 542860027 2383059 381232969 865216608 477737703 775157286 950132887 483516773 950366980 223412259 319149139 48443697 308884837 417675259 680879597 743206100 8307133 476000117 707414623 708469444 919960953 242919749 393721685 867821848 950181566 532859501 358397199 591686349 949166370 335261646 709976146 396024655 738212128 21362475 826395854 461974940 120150515 202848699 840611616 657922750 245519433 198249594 797549228 59216686 36309169 534221678 67229466 188706443 939157577 909465335 147602085 352402760 529783621 831108714 752517454 390487325 826366904 120578382 752149232 249101655 719776070 590069581 684313384 488693701 110328999 521048186 464527990 266328949 738233267 334102698 204239835 54653150 629125435 834258491 729270656 407010705 456977290 785265370 954785200 784631384 695947554 698544297 578649131 552027860 979883528 183091904 84757186 935957400 393042577 207774344 794148821 223520244 522634089 693295825 445608437 207686910 474576937 323636024 456175702 595144904 220688464 265665902 63301261 724801566 48806128 844134860 522140946 424478795 458056146 649238550 502607164 598172151 643871077 843613244 312277895 383846675 277077271 125918580 772269009 555891176 700410370 25897978 843066955 121510649 850104740 796677889 65369265 373420478 429680854 811230483 646989883 741129682 682285884 729086552 132151382 890435504 599987694 989387045 831832502 933406822 961622085 294549427 639118492 62644175 215211751 457923947 311196513 706105756 613803379 626114534 477725678 278589377 606560038 680345467 223338603 399833219 909042829 857764227 55401974 349994052 884640646 730601236 231519308 170260501 227692512 375176095 622109983 687378009 212698867 944842629 141988728 279494202 346220820 687586491 595054260 248084827 64405692 434662920 223949539 294845335 747984400 553771505 144917246 694927443 114859187 592582848 191618266 683042226 670448078 925681984 797408431 470335581 37726033 703596772 768373823 399170870 35383606 311894142 214839625 443869091 485602712 360160887 357697689 771479064 410035064 44510919 247169892 497988604 34355111 333176712 845213866 192099318 942455992 642376818 660501071 7961298 853313527 334473592 825685705 51994129 144520139 900528874 82491560 606926569 972021159 512595683 846569629 149182266 549617379 201851364 661113905 955572592 901481948 906015030 475980594 33393740 68446613 51747937 370020195 514678960 207366588 836120813 591519509 199822669 112150689 68811993 668090855 544751891 28591174 219228388 371076706 508912073 78928501 735100755 713181561 513450486 880261297 242534317 893143476 79560320 795330272 845399280 240678259 522953455 455560476 917093272 753773506 651553377 437220700 949038928 96112742 868880199 626910216 837377395 825185291 683353082 874372432 342170525 478251840 50315568 59871695 730021421 459586358 250907922 556267916 980312840 766141341 435105280 513705489 807820353 174270834 540620437 883107789 624105092 805253721 538499122 111544010 213517364 174149650 623675573 122875552 342570130 906943409 304123674 275245314 844275841 832672911 650299737 479430747 627144345 532598306 629785623 681535465 230116901 466064279 811566997 829293702 283060351 53855455 790431739 420691326 177708272 417326099 911213452 818470564 232769023 944758192 9231794 579347588 590046398 90694626 674484704 67125528 24117583 222712260 977485998 307345991 306709386 316093324 440218054 859134819 294931100 342403920 731908430 613850243 316244541 600565043 898651155 507450332 858607601 281192715 264955531 628476911 949934543 167532368 110208162 882281362 508382496 811967614 559700612 575187208 878591860 203465777 478217366 737408166 483495036 86823032 177787786 254134818 261566706 978630235 549349095 529887122 69007626 409929689 262871906 551605374 728474384 747995555 517754788 468204178 495871826 466815457 582871518 812366073 435051759 291076432 690965472 595350567 90223716 979473584 878486427 911623343 843051783 958954049 496668981 317069227 372945260 956862760 7870998 228033445 24093084 587490830 269514633 53743251 574959267 342377106 152752465 420559517 56869890 275419221 937746959 878141404 252599095 573138359 301193027 141068762 80736499 58863958 33531551 590896676 239670947 403864347 532305232 653797889 175957132 790550266 162398771 436133783 870006767 253084010 463397787 275359246 676933573 269083340 493285392 591266963 476179180 419655724 580621091 544556968 274830320 519231294 433263929 148956615 110781391 679451003 210879572 638425616 841852100 913659987 171259274 678705020 956755068 910615782 481165339 25235403 385321062 396431373 58562899 242184605 177642888 709214841 683504789 652483458 647990166 810415703 299357060 780521927 150969143 751413113 745885327 282593568 68761136 806930862 108112033 144571703 244190785 757785621 288164742 245235874 698577316 695670122 863997386 653885703 218668582 987510401 501905324 619144232 200518011 486265740 25931040 679212190 624822257 333633244 737304349 817985616 26155529 521579817 789031120 346175418 615686922 237014101 661220746 635947982 167650039 870874722 150824361 948812190 605776485 103486495 740560476 412799632 182018309 729808493 151139150 312453198 721899613 91840321 464422814 228831011 818957842 130924598 733744387 671031569 207052221 267434248 994499457 58072210 717723858 579587055 312163000 71002136 580016193 485430305 810073930 258103636 659656592 846014599 508471277 769711724 504024174 243832832 26253964 475637386 678118491 287945465 84405462 163746340 676628057 516564140 403846160 924524069 360822629 768804621 540672006 897113334 282556783 356372183 331401648 651061249 57445024 676527124 493314891 629134258 790732622 144246758 288827356 429386638 735499491 886928281 783438158 218731003 300225575 669634779 791671755 996396795 469523774 884641058 825606035 953888812 18892459 515744722 496332114 693043645 901964836 347630527 347456164 703305426 8041583 938104155 994942484 721925062 222767892 88131274 624492869 23993654 987506354 434837362 247299071 516952058 921420007 866436454 850040941 142611042 588618236 841602219 674467706 870174722 988659260 367787039 104519186 605958430 521490596 57785707 930537821 795709578 222228723 433013633 478746014 39652667 780678853 409024181 489008223 535008112 978590964 770343009 923581199 252044480 943044787 195318242 834405414 607928767 661295375 847480576 546547192 28906665 86165253 838889939 54650451 146094323 234026410 823396488 874592032 206040840 703332363 600780199 985134743 674238786 430640034 704366631 219680064 438474056 513761828 478730858 798214808 164403687 709227498 739355268 170461629 923057833 276730425 643568486 19850463 16456822 380629182 427898232 410282974 323592475 729834471 461754488 212930179 401798143 601662992 353413806 122368701 61899783 5365946 621230326 630306084 761628397 147923156 144713029 844545770 815087415 35557864 47568834 278095135 842708608 366842753 826596237 370313369 423788151 220219211 23385378 626465179 969266980 383123770 459270805 634030387 362251658 130779994 963050284 608045098 111846045 427631792 685455243 767057675 408432579 663245120 142914093 678118029 286097000 611019792 747546603 991898592 678844818 790306836 508372074 248942118 818529679 721514212 672009923 549156702 843753151 715470207 334136800 491563517 308931056 817729463 531465921 69001213 979831700 15251953 974452717 817979065 425078622 624863174 391033904 744748724 895678979 568272234 473164467 232148349 775831443 814458215 187830298 988121880 937555993 449130642 100057851 864597278 304719017 84106087 978536286 240610603 318344798 192700524 231003609 289529120 539729583 487915596 79512299 960942681 334053534 506058979 792254324 975401453 712746420 545250990 185235645 768330477 478945049 698130548 125807535 608499878 120186712 889711966 328032849 85091283 6802412 187874459 190087155 261758085 720712373 244117996 13231314 749136780 938420568 782213269 329816043 593678034 259467353 123164511 560010865 775202379 547637548 574522419 443757566 929540093 770246839 172177389 279054265 593098531 15472059 29881155 670339998 11273669 942280895 910747547 388638755 232710797 67039714 378553918 345753246 724103443 532441285 997430167 497371028 360104690 867588201 851180607 89919974 763447110 775884975 725898882 227070674 572128609 521036677 897007361 658522252 743419077 407037137 522186481 741170928 28428647 801623850 804904092 467494714 929917327 69837796 809101482 900033825 152127665 397101684 340109706 898199630 143481677 133605526 922023954 611111152 65998504 752183045 680530029 125679213 560076270 410150125 337643125 391546343 902458253 332444648 173194447 188273756 48671613 543631882 299381964 630494868 691803084 169743355 51721349 638648013 702673562 342780194 562523862 717058091 838545324 704141142 926019632 424180002 486166697 583960297 295094567 89691291 22386554 938981546 144535221 359353771 872851583 985992613 189441076 262191115 481772392 648250844 862874963 609465418 314185518 919090997 967122071 794850555 916208717 35220571 820539415 196277167 675467004 619134304 522097160 792263983 778951854 688249114 269870069 275386519 164854183 930060082 284807964 401400716 949789832 891237928 968252964 319291574 63950854 667630537 145345507 615125531 120602990 632488931 79227327 356145606 416138448 995425928 75294061 932838664 47090777 191057585 910089650 376294524 86619154 522929935 916332673 235671387 15887276 745341669 157527236 229944404 788591633 888579909 204250377 183337488 76739218 967826772 895975002 490219778 573301360 828782238 470652870 157482710 896492261 465287292 445719013 334368622 394607738 538330160 632117712 276265315 9494378 806398335 850384828 277449656 10556541 414121093 872672666 932244142 420163996 341613729 183506087 549669251 338719567 326081446 174133765 402488881 944407436 474375995 40102691 765761507 719768094 687038020 436614168 591278931 625215807 57711753 436031458 320034944 671599061 164133381 996471432 868119380 353650948 450473893 256032634 232734518 415153693 674553941 591295044 576621926 495399890 762781115 666722681 640188433 240200467 125690423 408568853 127151034 132367955 596383054 84841521 472215496 169418766 200053511 886109286 222689489 441843892 513455556 89943095 874948285 19068525 88016507 154993117 145541566 78041161 600863670 594701203 334375469 249781625 719276522 478290639 767662698 242299653 618567669 693665369 233060951 475010700 317990295 421215862 108402408 399450082 792842338 441656244 554192791 597241149 813527872 863376864 691227620 552890997 792650992 213125739 577407051 755137926 761125769 429382259 509099124 845715282 128133868 175291808 595485951 416224934 945531914 982862492 471473496 631971684 942244166 416079696 910204997 940322318 992303682 743772727 622968463 741331446 922903312 399448810 574110466 121398043 260139810 581014114 410092 713102485 568716932 33482594 783486225 339373264 384824812 703355966 250456837 341539164 81126806 584195702 994939343 219273980 792296562 612767887 648844944 973142478 745712368 849485182 908551878 40800135 692601963 840355024 634087353 964680711 183335028 571337211 750834280 874797047 474593793 363423590 983794647 5604697 956404879 370391406 299880996 136163327 283356045 15522534 128825080 428325602 613954513 138623712 126603287 346155392 252082239 203235811 932446731 771054393 972779824 33391415 113016160 775250133 448455221 6068600 525149380 807179931 262485322 517903365 54659879 817695631 348970643 118166412 379540021 808826107 356864147 653128253 835298351 320729977 108651222 400629136 484543125 702617194 631795208 673023818 217475603 874632817 437015850 529698937 262331133 164154936 219524699 913725403 236308929 126416675 456137524 947180783 357018670 805881632 863085670 968674201 70220997 300989248 60357188 454360547 550814929 849161287 403118402 868733968 516030609 22985334 111583114 702554961 129602603 438664559 888625887 554988084 378954635 737007903 445636415 803503818 658042889 889906769 66596879 281530571 813514096 524255644 592094082 430443683 129892221 805158119 195702862 325799589 267340131 567676802 524302731 742407069 463885573 230680190 638835990 600520829 641542505 780246103 970451377 363392163 902443918 792821447 934710511 55198304 539091756 824663164 825025088 494156810 605596293 34915850 312771673 390247006 368291021 929120388 267144373 109902122 123007476 921345085 93923814 181483904 705089255 328594327 47093253 519903920 194119168 617973980 919155407 595522469 284945159 222484155 174634059 909830358 508485625 331462649 878348664 738715202 205333686 77779125 38538640 653022747 511549267 888026955 870188441 775971953 754798223 194419885 687000404 13617798 53289181 636673176 490277259 435862825 910336516 592408783 482214573 560317024 878214225 8396453 687000949 611018909 717817953 719858709 513069592 74341353 753465512 486176889 517203604 971641248 656594169 497079274 324945932 93711161 466242801 312255427 14441300 950060004 791277616 159181206 956664432 196036275 385126647 186785802 829470084 10144124 463273104 66502595 335489642 719345749 78646348 667990527 385526328 264462905 440120550 514559620 131148536 883401494 845369327 465146378 743596242 86845952 653297756 784535663 719433369 271104311 419658443 799168261 35353646 304156444 965444598 958169680 98628934 555711955 269236318 568067878 750835859 220725658 153665346 969428407 197994450 473065573 742542452 829183368 587288888 447721959 424407074 38148369 812661899 733731088 34361904 419788948 328780646 279863216 656794123 824009423 95406837 376200308 52732740 661547268 765344439 128362011 338870257 265268926 425436800 424995763 359642244 728740682 436773411 89343972 875281970 522168047 310261934 103128657 678527776 465180092 166703818 99346286 314876953 832948973 404233819 360873378 334425014 53905463 231054856 65213916 58983601 958130136 929456349 773497906 430746058 257603111 893903923 312643074 1462043 546928002 561074265 772695739 518270953 845593784 341449129 68914063 524718163 493261589 908616661 977148482 904996991 15414808 184358262 707077897 86440067 333174349 19213019 956691131 164788107 9783226 4053025 184552045 453617831 183466279 287786052 70656059 394095761 605078190 621811182 71691820 838817997 301018638 307931134 631909070 255538116 126569825 533943461 53271151 595521313 965679279 953125023 884302468 224995658 894749478 339616753 147212002 905579069 639626141 247007541 582884974 617775358 615325870 309637590 890873046 406455528 132232998 281919343 661735617 652683911 840293687 123961740 431537065 40357405 576514182 317005635 153543767 297990442 550915277 620454795 848470237 71505151 768804928 742551465 872161977 7613093 179757511 293767888 839987709 721315545 595269621 51723502 290450182 642278841 461348154 30132201 878064886 991045313 300217765 962542230 595434694 365443280 150323511 363520199 636938507 575152358 338951657 874884229 834065062 483792008 830999752 794262242 412408675 41918081 854704618 302850120 587773144 785241153 792781870 982085299 307293950 900232436 572273543 559816888 472549806 796503164 215334403 142536429 550402377 271836745 406736866 36802011 212752107 768137951 537088252 394156137 21490133 328253838 469077419 720837680 626985526 317502226 709346876 438969374 802295757 709926783 13634969 417504419 289839078 540809394 627839447 89463351 409043113 364693345 209528220 840020269 442514107 316017178 922634203 128656724 661852767 911989427 756651045 724626547 674940288 517189842 436321148 127456074 265575889 961121539 923552466 578014872 576725000 147814955 44219458 155688152 257055449 651416895 574706836 186299843 33565087 819344216 649431160 47256460 408335047 286279718 388634763 478236961 886244944 748496960 871639002 370580908 617543521 558974190 627148813 625655307 897065768 669677652 849939361 243846769 651830904 825253146 951181422 268540909 819917526 663887043 730747810 960779813 668642925 448643983 171958083 412739318 207762888 731305637 863286622 499968723 549143274 125577357 69893830 405292247 122620560 356222997 338693547 348553462 669362571 384505160 453510232 324100941 434894518 435668623 301562053 150177461 619837705 640634804 509069235 944441167 560735734 644678101 150157852 390127472 96377493 682368366 279203825 583536546 219507107 658833061 984244801 423866551 49066051 565570586 898450959 589797810 420814872 448142747 210741197 603967668 506819042 772066837 580403330 504192001 626259287 974767159 199776516 110554633 926363915 253231511 833162157 736390974 780072710 495234426 799009446 433379221 541652665 216711111 30981353 649562933 789243504 955699737 265588299 851524135 347435499 5159716 423824145 180558213 961353690 266268155 204978753 88530862 998916107 924693430 11366468 700244685 740186847 57552586 671467310 795780591 984232720 43509591 371904430 38931805 345323461 82349639 674413502 685011415 50172269 277982408 892918234 30003139 415661503 675742363 829656622 596737511 519634991 296770622 556567010 538006093 47143903 353328211 284440334 873150453 601909023 13194086 445315119 896341003 715535059 283123195 309637980 760777019 674374417 598963426 326313912 398837765 319522298 290261648 109874705 763286105 838353108 987452405 858792555 947342709 156845717 850134452 708026864 84899533 915457688 155752977 489103042 355310815 742964537 385151699 619830624 562349853 884145152 659691624 717907794 713827530 864666231 92459541 773262380 917328097 887329829 868809619 682497258 166585746 10743526 926328257 292231407 620309216 621497451 407332849 91691787 654794956 834094681 609352635 736199631 484015552 122859579 693609908 20953522 724452254 140244645 235309007 364308622 522788061 949941436 859102932 947158954 466066306 613037894 531020776 795929639 848357772 124642565 451877965 878992311 303958634 497477002 908095463 552781612 945202926 820809292 187829843 820570368 244893838 383851843 87751668 335413858 661780487 211330311 963579843 808404106 474678632 834132380 926074055 707142553 769199371 144707920 145110153 129606757 178513312 997082967 265998872 727824139 602641903 104397483 172464281 145631181 215703117 816193711 730430310 371895152 604083403 933845929 387968899 783055254 971895586 718802132 178893401 69447797 743396368 249574052 733055714 925045966 590165702 267333664 318502192 137002333 709449502 135428527 248853863 734424884 812462761 334413950 538996163 708342127 782816166 224898781 251448257 293765782 739880698 887221340 377557930 845553255 346882370 178029479 585993882 709860124 995866857 862506979 669139930 25316918 553962489 2931080 499595194 320929983 432979214 364459789 854759592 496875190 29262363 491953601 46871901 149748145 886970837 146382317 890874502 814097743 939375224 208579736 149148147 490143816 96360063 153465650 475707731 593353307 251101460 672104507 255394219 127971112 170395324 983346594 819795975 88601185 339066909 488488263 328504639 555658936 80433737 12996238 126104788 323421812 794385582 444414110 984751646 80618002 409403186 836363414 623570424 632171702 688911746 150138673 26302663 936541167 569200191 625286360 757055651 775925947 9886082 994585405 121657558 149037554 247906350 931014672 110964136 77248100 308635524 61982985 170175355 641322172 998963309 252925039 676336144 863470419 814510306 408224531 348392296 419820408 113948459 327018693 673472234 466376628 324904308 804013386 72927480 809846267 282296311 581892798 991351533 295309047 403729766 386737236 835088991 781476529 680515329 626198656 955334730 984390064 323212924 212302838 575471891 376918948 892360588 555238286 887222115 754392612 245469930 417498837 990259371 713353904 800454648 125965118 816499208 217089746 496255945 252328142 409599888 365352116 443139833 233701363 152169715 392866859 917865638 831747709 560131283 441489738 510461544 123984806 47838434 954128112 731583094 534967714 372062198 970695213 334079772 519565837 747233190 858219477 966606748 488990841 861292783 646773532 259065082 950883674 367698164 688454293 590815187 866276580 641888941 88976017 254439789 574798846 370957493 730843235 715755148 575156004 210079553 342647134 908015666 383562117 335858287 576772400 141188063 717572944 983021628 759295611 904104931 212409738 386294717 531963572 415897027 250442416 108537438 67947431 485607537 793782191 425449430 722090311 215029021 825436527 207130159 70530125 780755441 113852193 553880131 533911111 88210263 970557909 17571454 569192763 315037823 990069749 604323257 816328563 220696624 805560621 499016566 690110862 317393252 411758503 491748136 243704390 624677381 126406768 639625336 608167375 860020873 262687718 903014334 50762414 951052673 704330551 576937959 720502455 344923977 463039746 749901080 419613387 273020882 579951005 835214930 480829854 40071376 528659462 818651869 559113873 215808936 778902093 738724007 795768600 715794628 787585012 267994414 332315524 115937222 637556282 908186041 725932336 965693753 178741794 332741767 613230820 511627989 558599947 444267098 902930304 530298099 693438838 320208426 800903200 990427197 109513433 623061497 736739000 735029047 257336262 261544585 497445188 883217276 955117981 639159962 932446656 112188336 188482078 773598174 756675333 166661418 578981008 347684496 73380992 971612596 835265455 488364362 771963426 825348378 239312475 563890598 706709243 265764020 910719684 33597274 129741055 150116476 855511841 573530487 426690112 109816773 166530786 967005345 313387720 917666646 553096593 627544148 6448767 657389662 411667292 342647122 611033190 395133895 881655938 522972877 134138360 566143440 542187283 170003398 319645211 176699891 545423116 153119452 605596685 841609163 344842486 35278066 263219980 879864365 614556229 15326595 152803014 80027958 977736380 866870810 254334844 801668925 668930276 764368305 517122193 120440111 863894284 578803769 478559270 887444977 61414014 291544426 227847726 356044534 955531331 129837481 759443534 665108082 65278731 528550530 798985791 400355024 742409232 57729334 267949144 703390838 136588662 913147915 951250981 22849042 248160691 926136856 187858538 546246241 179946600 838036600 565449324 20376080 352937994 403504758 983144976 411604741 32240447 424044713 29116217 787781375 485710373 132267124 406858775 799898227 347390992 869082105 264279635 443421528 639371557 275790188 835976481 558526972 640859579 601257809 533705010 595074240 568930882 634774735 328594124 79585726 939601921 62985887 882068102 640055227 158528098 818168156 105838819 205481784 843304278 110758219 887576213 130275326 194020794 313916204 959209060 112363606 661524018 669664230 608223698 949984117 914083972 674209662 147492451 854271270 871738062 798100629 250095176 181080581 27334216 503617240 914645930 625784889 119388539 503016685 247742979 805715820 344173347 747454320 248427989 348678076 823540515 382554004 782718811 997972132 520742316 768121345 404995711 555925758 801304863 598158428 992743298 176936591 801336846 186095122 263586412 115325307 518340141 787939265 328537519 652852791 822145520 808804797 150564312 820222728 596059844 354909813 918046966 600297669 970377983 82490802 463794734 473136255 868210482 692285664 552696951 431952107 777154411 750394341 524893244 93730200 750821111 837675431 547045244 526608347 901631662 569643704 121219780 182555416 356563002 561206623 809571652 27664119 598701444 274852478 561647915 57106102 275542300 875048574 117597745 527391604 535350242 785126006 753740258 502887027 486370218 364171836 302134972 939268463 182312068 245622145 454141123 731863153 241142426 852082396 488084105 964855925 81256115 389484671 53775902 706863840 923023129 992472673 142997157 696855285 706232709 832585033 580691180 961318003 386488069 743698885 944421045 890017846 671248052 249974289 61906213 25208007 591755765 628922126 467897686 99066746 404473267 736319389 696344044 212198104 134502444 589575122 67850915 463024427 517754525 689613853 770309565 794038849 234836041 882323171 50568843 580396693 892571399 356984563 775945645 560857764 726856457 345177277 240824627 188907473 379015789 761758545 988001191 349990968 837091188 707129346 726147455 490117860 987588881 514558619 298005007 42072408 867589352 449861355 826234194 432425907 582235249 734028130 957220613 986130512 931943637 488221564 514089752 281830373 685319453 169633387 181271744 784555784 712453503 389573302 246261720 622862053 713137040 463806356 259671077 361043257 817229580 140672598 678348368 412963377 718763771 374216970 645501096 429739156 930888075 525556658 910084581 856458995 876940196 291470301 637257297 834050277 538294941 569654780 858795382 853573573 834423948 111563654 154545250 418066857 970151462 557391360 455320217 980179330 220527125 991679403 71824782 646189497 947040798 608380237 920959938 374241529 857855350 126251702 201282586 590137632 78202988 752427113 434977182 30135334 828538259 210820945 242933433 917775255 857301918 180011182 989070063 764961003 662983589 950522833 739758419 154238642 479080660 627173506 549997002 707204584 30295941 867554995 21250881 648855645 500648661 110138282 913872835 756838960 337725402 361804379 904115805 875444738 162275292 741348677 493563896 266849735 240417246 376475828 900071883 745734602 941482616 700672710 278158666 311183743 178107680 94731742 474751336 689296063 142363552 257192801 303513482 988830284 842886897 550092609 350565639 705954569 513739095 520532439 367299230 488630750 306618453 194522500 102038797 909337808 344013499 971285220 729560375 877785914 113408954 616493840 389689447 91510898 949875091 640919170 506687244 81734256 538884230 450771002 448341767 11467940 245610030 604198822 466429744 212847336 24802644 194719310 7636662 852384165 299398928 702177515 29601390 597062431 101970887 654392716 211585334 727538694 891284229 767209843 347603817 93421818 73448966 75816045 589255605 856504626 372370742 935307756 98071285 770441304 100228239 795938066 845511939 952539534 773037922 94347003 941294412 635513945 301462006 663931878 666758161 95319273 476311719 148650887 514565151 991693379 678055730 364250198 517347213 287840471 505874706 869114754 893954409 753626039 330289063 918105059 548164207 399503943 79572319 156822014 696269188 666236751 607686673 222807629 590312697 748870201 593406976 932355695 455264520 412874277 671144231 182569151 191747728 514364912 775393532 364446622 291809878 538649477 780432352 380981140 179297814 758125414 483711367 940867462 352480813 414770942 793215683 819638158 594032524 334509114 186633402 243369702 984570679 860240737 161852742 735605439 472521961 413633353 999933884 558509129 618558605 195034140 206589543 487095621 82477116 467001530 948478723 494743505 616410733 495561474 994809279 574735145 622594844 688914061 493461415 420888524 326884749 718591604 696416140 979593773 766315078 633595749 824797667 748018452 612554939 735039089 80054634 486267533 308564035 719349134 102909327 530895442 507858207 959494310 519704673 869682525 385107582 334826946 483432640 184529077 88919822 96088577 823330160 785962328 291490613 192917140 580014243 694848331 571362139 881871361 394631407 435340955 223075304 418568814 592036100 737152693 388742891 137815109 448270338 667222111 374654786 973835372 665080145 529938348 61355222 361738900 163941978 370902798 726367807 251659270 2825318 261016345 24742233 533009159 686590228 831422655 866277553 510497104 949309040 882405158 576874834 330094253 644712171 590810708 482103794 954921068 717565959 746394415 154963221 473803603 333981735 122438992 241234201 593205518 36194415 778260152 649946426 68563193 128373770 895091768 50863533 379731024 192026100 905064555 968608271 777091879 190942374 930550147 135005325 343731361 374728677 923792584 932788712 145410677 110073988 188067598 609199408 395729644 445837352 618809235 165288165 67711149 338718048 453520663 230840892 468980491 857771086 491294441 157295853 738201319 2344847 412666835 721090575 213330229 75355352 72877510 637856376 784212876 993965158 877234940 26972191 79878261 106431716 326812544 439071864 202137280 360743167 587908311 780715431 395689660 73763502 850196190 298513780 790182596 116808131 766943568 589388898 868922172 786152551 103356078 975721915 967776993 320435245 610383532 904393221 659052082 994305866 161322710 211212075 530487471 221056797 10095085 520967933 215060501 25368334 600324179 581264940 532265555 974267308 931839409 516557969 427443573 508947305 164126700 925827379 925448784 570031048 233555774 78727410 742247029 860233799 791812468 259378402 462487952 984905368 673435007 64013457 876687089 215050094 837414618 253384505 299740900 249475121 515237758 829172238 998997140 634082305 750809875 336671579 907284373 107377629 196495004 700601353 644758343 299026085 708311902 616815010 753676903 72253220 274391949 538538427 838805360 249465978 57777012 612924787 625196827 353171953 694488085 325511748 104149910 590817091 944491759 711099794 974118464 656046381 573688705 788527167 564969902 454905433 259837728 219708416 168435085 937754430 952571683 64204861 175059024 566802776 632649098 764413341 928077189 207845229 251833454 651197990 891040925 690907321 331620708 986346969 161450396 190717572 542486217 133418996 244948989 140632813 18654935 222764769 970311086 293876354 319085536 944275415 119737354 758885968 132668937 250341820 119952291 558911957 129262577 409134898 438923992 307184375 575762148 10116073 630148360 446370330 152029338 879756399 657178979 207676307 767225298 962774480 489214714 492439951 935907761 891830085 577356422 137073366 275082360 385530909 706347609 273691529 843850283 208314120 794864697 663101247 606563256 239949054 301927414 862512674 635595090 291775577 716217350 766046259 5331934 459289361 19847753 256728505 664993948 601944447 176918847 466084359 355598843 650216992 615903652 584533990 583821770 630714027 604510791 726350322 659932704 736303598 370009859 81550349 406481022 890258804 217220303 669283346 648906722 642737635 319243044 665156761 575822039 896361524 989445029 833994622 25484953 166679653 624230991 811034478 889715674 404980250 854888586 398064513 394023718 733302518 123648961 791735742 403461323 709138740 633030805 503855364 917128950 749083279 308693749 411085829 143383194 420268218 842414706 655125477 795190455 239207 18265084 102886519 519150480 239394222 944338251 861948059 34788965 649678577 499805436 907351015 706223355 306395905 631394272 150614269 838011076 982471590 708706911 355689545 720969116 278216123 83313729 255737113 862438751 28217129 43664068 177249223 378262601 615226324 819422435 486118133 657933644 255816900 951047336 189176392 698816610 309320263 713730591 920167819 418377630 143814983 838656332 182045782 401609832 423754371 182059617 994517064 213359682 237659964 761377687 767449507 909513238 952807826 235629149 904960627 554550339 753341196 662554558 847157021 279585495 471080235 234775578 883009130 775034288 138280286 810809352 854540844 460925777 892000465 244730436 272420824 741260027 963397696 246835400 419802518 863868505 788320625 801622995 966585981 343094136 932716849 653218060 280086150 992969427 935663486 218569427 878173046 19401960 639652795 777266780 222519243 787988742 642858738 527905591 913457766 745438237 432252680 221006326 712037172 852536370 220334510 913378953 521539999 911825604 713997782 73578405 133642960 512030764 358962622 320417296 919385534 49930100 941295913 872632572 900133975 721433569 250597784 21509614 11435847 90038387 90657899 683457032 286580862 603863834 907157194 134693396 13623291 173466147 50661972 359681297 294521305 954046916 471837734 736532169 719587867 311159997 858028473 575736936 913319040 280483545 927499612 139144199 297983299 271178465 205490383 110013681 393334096 825257158 410804204 224621363 401978304 22806304 186027170 583924233 633504232 784101213 633379742 310096168 11128142 422938039 749900715 103875275 992806797 196736529 848975317 419168045 853690719 454669348 201312373 314257106 821806582 10948292 836514341 397836223 379930481 226825791 780154306 749476081 384360574 960688713 108562685 927889043 315613989 46527544 871521260 718008853 774077014 935175047 696721932 863204176 986765415 585717799 753508457 454420887 164629375 680307373 977405041 299377046 951023665 341578176 569613332 275805153 264603005 207643440 732001671 267687569 854379686 835171929 273135554 42815829 702363574 610644350 260053029 77384209 914540809 407908829 936596909 323854905 990607235 809014215 102329990 345491524 630190379 352969558 147078257 294940175 203226022 107713001 905764448 864240371 660743982 652365814 456221981 86244879 436659204 94971734 777570457 750269074 142835084 129875221 174833527 112528687 305688595 958752932 250210053 163031481 668257473 951548155 713098750 179227788 196263158 700191547 890290242 115150992 868224639 91141753 171529196 549732057 129704350 854201094 119640215 499551204 866888564 323044639 387006073 572638118 130028577 612064047 596401970 143827647 757187629 120660049 514083198 769677574 330092831 957122003 221315525 644634276 54778908 9281318 68691053 155867832 798829308 579457045 15021312 73989823 839384162 335045471 158428640 647831447 258281389 130240513 298798697 304667736 235086416 898077268 314284991 491135025 829991683 731848685 246424392 898621477 538313496 522067031 402282327 975970333 454505976 661634931 126449977 464370178 847218661 576852936 244405527 62510921 638646953 629648839 928915367 633124418 5867 937824920 741040767 87943307 342381161 186064255 676114066 146949791 86613622 244911287 419419769 394274653 373443594 58431110 164223396 645328747 899809114 765824100 704305081 970808513 793892032 286039439 960711994 219764884 657626826 836140086 633612113 639315990 228347820 587211625 562828869 348411691 884952678 764911438 845239885 151440050 558626438 532544772 530688825 432892959 11867062 870520704 582913874 273938829 550931895 794372274 863788952 195490723 138482252 21036328 298442120 296254452 852647701 86042742 21091392 685659448 233044587 361709553 265465975 765031523 565987331 205855040 817091011 425109851 192414517 250965436 40842393 116798748 484666719 653059112 69694693 187610609 292689123 25063801 423859777 509971248 778151187 622151486 491568898 503432916 492556724 806501881 432931769 431004969 900839784 13397511 891901530 847933720 132507240 317718721 691135633 252304704 799505356 967893306 938195696 395863641 703198445 82269790 6227004 426282752 441236855 120992068 425879660 237951215 39035046 303776781 956672518 246595516 151753523 350450913 436517725 127047362 355545060 665788033 198381446 139230303 995034962 970798463 943015793 846700916 830771175 212818121 200918767 182324464 41671133 781698244 311778884 157139223 850179630 235590819 875594739 91565296 883375303 827588306 714755573 839910371 266230597 463213680 370980299 17568879 299449474 332110340 934390036 46666233 343684170 887230548 460367462 646469973 96049823 900323748 667198068 349830713 417837394 229362296 48253647 350170204 965159092 5383822 631920291 137629025 103779291 165051293 846317218 886559140 789524668 758534356 653092006 848140416 778923647 642828822 843092792 638658989 177140176 344569128 609459933 683248826 998294594 666282851 393135459 712412837 107340528 669086216 831600756 484003033 635528998 39677098 333168977 166623421 384408501 359831590 607119696 513168034 798701106 478424998 891939003 578973503 616193605 11862571 112586570 879454003 330020629 957507574 412445570 623981226 246858560 905051040 476834630 311046616 499786555 985732962 328342470 762919552 901321321 659892111 9880539 374073142 108136429 939709021 391951801 797019191 721883996 867711548 43316900 734935316 28615943 699870645 153718152 575282236 102511136 798788864 375667040 130002944 608208942 424974998 438864299 918626595 702644530 350202887 353516692 930182750 395980372 181703696 775671834 929791393 223746479 436550474 436978075 99806267 834669220 898604767 737655591 865874216 964573773 265100642 227042554 278378824 948840463 111287312 636737552 571891958 66326590 347627265 860905628 271351483 875716662 387532591 831707073 872332482 728570040 678531849 477721334 793362345 453464875 796033535 779730356 347498227 7272878 723633229 35377287 564729877 349240782 592107143 772187355 210853167 109021383 393537848 483223199 186834341 840887718 869057045 154447232 991958946 348315750 634199881 487591656 61850155 10705348 959940234 230323142 484562403 875803651 624613148 941457724 465082434 594810929 178461716 452155056 936549760 876163065 917038604 599073197 831454515 691737824 755277380 469598021 468999207 280004472 306740197 690803119 480551048 429624520 649845545 897942568 462139992 422637199 324460366 987671332 631238839 208651070 80675421 905277677 599091123 395186438 268445222 380465284 485884377 167402004 565035527 830303188 386793441 464043067 624541967 560213453 459254665 647506611 116321985 320552625 436326132 751545252 21359239 888121363 127746522 77486316 307557446 785742415 624875706 411405586 360547823 942823186 138888689 637427677 82134976 106603965 387233631 329846664 307316147 881845176 4199273 756017121 834046161 543493620 578168227 659483747 385443094 926054870 124380354 612977825 218432319 258963964 833956689 275225135 890797760 598217944 842217671 480228387 819988965 353045986 683470403 34322881 209016420 759089871 745024270 627197204 419476290 469957034 253205634 268329783 412701004 494826679 762921138 221324884 384610879 497506648 440512715 149247201 38415156 535409 471759260 484629376 223510911 124670306 947657097 914574205 63412604 246911269 662822025 190212391 645808495 644875344 859862417 297386424 679570076 719674010 598814877 318800291 89741196 928650821 933165766 554131626 308730367 452603598 434762373 443960998 460009445 427542308 175676157 861676706 807628939 979376965 701522044 793651631 615017045 153824019 120977130 21224023 397409311 220872481 32281489 818841466 922189892 35298066 106381060 734844151 977490139 190203297 249952477 832515308 181884173 795400666 235615985 246456761 732171951 519486874 551829862 880893280 497999531 484519158 133012070 572226848 517610237 820015280 760026020 820775194 801665128 732246770 803477350 340888786 715069734 62074142 844624759 985467844 223088136 904298011 662257008 202938724 314998338 386282982 114278539 540753072 934935749 68323725 448965457 11868228 487283170 957140723 444239330 611553110 456808526 764008204 215644581 830423432 632859422 161428077 296612778 74425827 103819073 36655424 455616174 812164288 76513818 279810306 774509454 937558983 618944901 411068950 633899173 116940720 755952341 712174858 28620086 140240739 721377693 598587278 373451330 708661003 138157313 25882830 397402569 810020743 500904155 607062967 877203944 901454614 968267625 61217470 585716684 539937297 778598813 895881334 509403355 355387712 164126049 695438261 514478733 323488696 972211285 85769285 591525418 231651434 546944029 884616485 980894513 763710756 742867876 534535995 15051337 96451153 724525958 309926286 461340661 920780684 984007507 794269646 184917900 422802705 65465115 968719755 602189652 217853462 777853506 268582431 785028757 811172727 814818218 832663295 796081668 249865094 865228928 222251576 228293922 313034509 142224830 683886414 58016482 101735508 527745361 830594303 998418706 120092407 576779647 961757788 237765257 838569304 610436391 810102570 296522524 513330384 597577289 131817560 884142297 266645500 928612070 443589553 791800828 399649027 505658585 907459124 346210288 232857575 943103449 29571262 706901754 923187748 769936116 315251596 950178948 481464540 883962047 778596963 819713858 773170418 193248875 269433069 938084995 100501840 124562412 328468335 884988018 38400944 686575783 358110946 996538457 879311838 989639840 54926433 23495447 354080167 839771614 897085113 762824140 687210498 522802443 31575553 541847936 427909513 266732204 757702100 527450600 993433249 761145847 88787964 134958960 92303802 914227734 698919120 155604981 297535844 232875371 957920219 874200628 197632224 681734173 336103513 240354905 517439809 497759174 297482320 709173266 116708504 55091781 928926800 781886671 433000098 825835811 692986238 245922901 634884647 968434056 968093046 235963146 593214385 243569630 425988148 754978646 29020660 133540152 85996083 525950859 595022624 620770679 500680224 963419688 988983977 797867948 138014057 627277988 996180988 655029323 757689565 346248661 932926404 792073962 453884103 665176341 36175870 247574364 817101022 805329527 257706391 415687684 818052378 770749620 627273867 767127609 302509536 572658611 685911034 824901425 610542947 290824129 37390876 802410543 28164168 739722512 192026037 218849211 921136271 803822643 982899958 475279339 346667146 237367912 11838487 462990706 628590056 835669708 539036299 25148976 722831031 623594763 524025226 374442709 383908986 713809629 785492043 444545443 114985449 94451130 16937553 723211497 568653205 953082048 271850140 211166748 393244204 327259198 29883884 122862242 447689429 814996317 725031200 62213731 54388122 27311687 954532609 209742066 459339028 144364477 362788928 165165446 874019942 342315361 200563638 15455620 676657534 527253535 251835400 586704219 327248199 618638667 182981791 128278922 698930810 501175303 286015377 123795113 953018034 908479508 218070292 325895393 321393144 210517283 683440672 349289659 558871174 3545768 671829268 219889452 773097962 401008743 745073654 352488049 127825907 149638534 104958373 98471738 597588022 818768462 841045244 862922508 101676576 694024184 570272450 522585026 69406434 102083514 170412695 922518317 943885118 945634257 159597434 42789133 268081318 992632836 812199563 799808549 10269658 817071865 881224134 479879625 571753615 708259576 379872333 147385871 318539988 775822793 7582152 531037842 322940648 924259051 886419279 177987804 280293446 897443255 966510532 823438340 463804097 571391410 995463160 417436223 852811771 225763596 75754930 436310590 717368681 5117578 303574013 442267754 647058855 639338651 560226775 623759802 480082513 319852211 118406122 617568888 967715273 237793064 751840828 682631653 237314760 942650354 197961869 162190193 955392886 846432159 679785160 39507433 910306900 889596995 33536481 14211990 671299533 123186334 457418899 350881792 985692755 252390097 545182845 172797711 996229574 18766735 92189095 10592349 487557271 357221284 177368114 278920444 399828371 458223262 467365211 392665761 809129559 479896883 419389863 699099132 992005156 440809365 205860134 595817701 66857385 525805630 314540431 894486065 927355217 669242457 971218537 518999950 71347658 224102411 948477301 842905085 367583925 864437342 466134801 407147749 214668235 281410431 822657348 578398157 673073214 533064226 560740642 701954283 808834298 940706813 991101783 368268797 273374878 481846809 198219719 54925959 279306976 481468136 35658875 660744724 324627987 731453234 687970567 918351765 143877180 785734395 518498031 955639820 260352929 789678427 753158749 670477225 356122737 622555403 339281617 222422378 62996270 595625719 585347406 860160966 936219181 961937284 167911339 322318870 822072383 222293097 880527216 748966981 260611593 956555738 81927376 52480493 423021412 766254810 151993253 751172743 238425560 748118745 896314902 838572290 412954358 898273269 130724097 676475882 770487548 83159249 459401611 268043998 534601120 977937059 59789886 278730256 267438295 133872802 537212114 757706013 105413036 602918487 272740540 131082546 704970533 466448350 386278022 371736814 185785407 132391832 742013424 963259021 239577038 410874394 736135727 274067205 855944544 503358445 28711431 498073798 565009076 399454359 526476290 206875606 272842682 358482784 909732733 667740756 47790275 80954132 306992516 211343871 743908305 736643231 297700189 582601499 809303258 821860516 231522013 332280657 384713337 710463383 853445432 532166282 341564565 279467878 100746471 118242761 732224961 487976091 845944393 670778752 929256285 763319651 928329859 141748806 684595346 269667633 592733161 38017260 331594668 351606358 166457541 924777795 936287510 43661700 226730843 480210708 590450863 622770236 756500497 448041676 49537359 146719253 262967755 915013748 201557430 481834804 413668231 820252895 170631360 181380893 128006081 71332977 74605690 154291587 227486698 992057837 815861121 352365003 824591933 520662937 197073196 651547459 84782230 109274452 769597322 648678233 413768848 641318977 139016884 909334357 324520258 239433132 958591564 727792764 918078708 717116927 106688081 442130746 705010098 67313442 862898284 930166738 234220810 713623150 464195720 445526460 971496858 748710524 977061075 768241087 257474930 279438848 440062736 948706466 941290549 543541155 294156997 554916786 311423514 139768715 438800888 214641295 922698949 518132462 144611635 662344378 594770127 798951335 222507974 369127859 965644216 155004513 972185536 12262915 520662155 779759134 182580861 792904711 649382472 734017614 354088036 205789734 38989198 244283399 41167905 557368939 604690454 878250588 403701111 507793002 260672714 500212460 673725080 261796477 915290336 407551263 791696136 623090370 85320288 963182652 708852725 280925833 510641996 205010239 740174880 538811462 623716727 875389103 733314203 500493731 77006808 24942003 947533748 802651698 83414193 348210081 417684385 707548015 570390585 363023985 706107773 769218551 72455764 569939712 708412558 855150603 594858052 399204520 273656540 671502811 414820164 898831874 515198880 229358378 944094719 223984348 740792346 904157953 824978778 729684915 527227083 137745071 984314520 58643170 816294926 406192671 826405366 780688073 260222910 340816747 414217795 441521247 124858856 931131234 862715309 458835191 267819442 604732055 580393669 203774902 883637103 192659443 717745596 407832650 592061249 593655008 117871481 782980146 661345041 542091212 609861732 515309995 211391981 562732879 461801938 986029396 938088759 273253464 956974850 339234690 123259608 641961677 134839806 250299629 305194505 816113613 991072945 351993723 227020110 727990130 218103745 77284387 270103202 959701643 693007489 542826351 843817719 932576256 597705703 711279399 90615687 609255044 343318792 185313084 628489251 704966992 58572059 623437546 490046452 122899198 415292717 101124191 878168171 896853409 401483398 942598280 302534283 336565310 168601036 319967756 877657784 728761362 503184965 774793269 188134913 47905893 946456757 150545117 395738433 454548963 90577390 104701116 753754203 2325191 362996427 971964896 281090277 364275792 314468382 686584786 90159846 202793759 727190151 292469147 823345851 636144570 547185830 939322587 421454226 12287440 811983418 175657293 81574759 338495163 87781463 873411924 522389006 856477972 724448602 965431899 910095425 39099433 311783934 600083703 457245778 854599590 139552072 127119621 984079660 647760139 142814169 503448410 911312475 923615790 304961484 356270232 38416948 546335134 364904415 809883377 209557380 998210913 936613208 814552568 241715282 254340 947196758 186490741 217145117 979443530 219430174 993390312 37095431 77651394 698111107 359147083 419892241 447036765 474550091 337056966 68170822 879679866 265586673 803760612 829676236 974047423 673867337 406174135 394233364 892014846 759579066 734901950 144796470 245174000 369396598 591016607 305497257 338711110 39135779 569397208 948028558 299985839 346180637 860766936 694874212 380295009 523771173 193204963 384858450 595348342 483635021 316677988 64481065 530608834 579788296 243244045 390315612 180659959 714138498 268500595 784268792 657875406 229473756 887732491 303783488 639666015 369823539 262588918 720146776 272384290 117168013 432841551 794521087 325861665 373932814 13858725 526374845 934381015 257929091 798403541 455858368 79172220 995432204 53408040 920913733 50579125 147087606 651211593 263332894 76120454 476700376 677888432 863529783 101962939 835274992 376427043 301439361 223409568 433914876 467827957 779091975 977780660 209443151 704440446 719486785 396342714 686965509 196426156 46497766 754904444 904288959 232296687 614193394 255330752 836799856 476750696 423799121 786631088 508792676 402067960 562223816 960200511 907109521 225455805 823106592 29832095 5023667 640422806 327073859 25656403 287833885 189083691 152143842 1632972 346829510 215620997 291604208 220653860 960795045 103650623 841798977 219991093 25908657 808155222 658152 396845947 883803067 421843996 194459571 491354443 893553932 904381107 408299113 987100758 796898261 933429658 229410641 896248082 280263368 994516655 349073154 67485612 145511487 963063800 726866718 849210595 640446426 545022449 671840443 62422891 955409051 224422634 426645836 36580432 664642228 150947773 636637023 283076252 275072599 255862667 439392382 268853079 393768667 151486079 636282700 788786630 278377585 634373782 612117667 777443854 145733902 813339411 899037036 684822358 316038499 437759513 440059042 233082376 738236514 754402911 815966415 269382576 85481872 262250263 808085138 831992654 305216786 658095580 254671481 915867903 485964619 106596068 204278087 603844796 986455049 356314717 354071441 146255052 727437711 236185338 261199755 374336933 373708959 956430337 471988085 618226302 760026428 504004971 148630800 341348200 814459423 891293269 143697148 577934029 919343342 241476253 630118368 669271208 996627731 858656906 202107110 409994831 910723453 386473997 184549911 283060467 469248862 985903427 859450438 934533560 511147242 342240617 608661250 904167203 14689450 466059726 889988772 965224137 492399062 841412242 585611642 707297252 782850190 559607396 5216435 487381112 869367239 105822003 135324807 70828647 961477767 597175995 479653158 253801705 781686075 292857970 995694069 501010236 363288656 145939244 395746697 508486463 514816622 265370090 529897279 527855584 436497420 862518138 862494570 679691386 885677635 374498347 531840439 355461929 846485878 342876126 544762554 88898072 331381989 620043286 265810456 14571024 764064311 496366260 609360102 426877527 644651620 159816286 325034865 323955372 233714757 392163289 486103636 148175799 653127500 251249420 19186673 974477379 700245804 648103990 925400883 516019688 820666968 664946298 643799605 751839928 344374743 263813027 859412236 16804373 628895349 845238630 254801193 618204265 738617939 926376908 491393365 431887602 926904296 355090854 440823846 403186643 531962802 11507795 434066671 967863037 420592302 146504882 190289040 485094169 400677344 959790429 777742441 610665511 640707865 765530806 245186127 832304467 85153149 263167985 528100969 578728996 297564551 250388021 39624784 898413682 231613592 538427670 607251960 25924641 314593839 602412611 750998630 51144606 951419020 611487676 398243067 95248211 958436952 760879391 197582114 327139712 68039868 478620300 600920273 212020793 93250783 672555063 599891388 569537614 960861242 984966464 149675417 909978733 929333684 526742546 502448533 261016601 848729575 2210225 669868558 436358898 788658690 909949443 151609199 670200680 169609164 789583425 187654326 771623269 169844356 736306711 406168113 521316660 981485095 575159820 874020646 385825709 796251312 238683107 143834160 55290700 982640172 604626689 818519519 632325657 434383724 2645415 712185645 806056007 728141724 563353234 286204560 163478892 540113080 284847891 496607179 207143419 129092908 198075765 13913765 184599688 780562145 456975966 506971014 182968109 238216263 353752792 471302202 486476231 432261043 203012854 562190499 404512298 230426494 641372941 515272027 897633074 102947046 852172511 524382389 951063007 849931440 981917706 170280439 637006533 79118702 797781881 158718029 961726176 871667258 529761310 590256417 36896817 436841506 747380156 463627903 680195355 110158466 184945555 415305725 67952386 495340594 146126786 14297793 9490145 968400898 434668347 100269841 587230064 945892620 581637983 401897866 696449481 61449689 746469112 259906400 355940071 533084076 73752003 423537064 513660814 836264943 658968209 381823796 416329860 991331163 441267999 972979922 339925826 831850626 900273117 404240420 874161777 165409233 459035410 989910519 521188167 354308892 475242644 815997234 185374656 151092432 838002332 2916030 556985487 270491255 642243140 303237387 453241035 300740025 717439828 989056692 67150933 211706052 961138947 69777330 916504331 499802383 647453616 336598797 983206707 65782393 358468904 522094649 512857688 264187003 916346201 216902164 784078284 378113767 750582641 862094633 797812988 539046082 853659753 915435318 689380338 853772398 532057031 576033126 448366501 967156121 449943192 975267330 331689118 658786589 283070289 969664933 201203901 115208242 421837702 919422405 904168709 266912566 879253921 254531076 631378969 860607915 550045016 169249041 426795764 306057693 482399339 444204847 501047435 925412498 456978344 940245868 984242247 507840796 353610249 442355507 108212587 989976824 134547983 291881353 249839348 607027244 394819634 178557507 678157293 823993315 9673808 672633462 101960590 281940628 658624498 312004231 842840719 193465637 208325643 777028259 266556266 531036020 551944714 175501427 381553334 592037447 422095663 851618283 600601320 124579862 786396139 87293140 787901756 670775472 500865781 600895452 770720687 613724634 348371546 124049727 622601556 990462682 673258764 932994385 929151004 904424781 686040136 908881712 124735897 619153606 645590979 930023976 795432687 994706827 439366737 850598349 145161340 864460729 836376802 807291485 927606743 251834441 959636793 58229119 920444419 350700348 553335365 62221859 62273512 706623039 614961643 565184310 659425137 631996536 900134299 174960110 734562302 3556951 530552407 780609270 280722541 318592277 571274766 187458844 368373283 533456151 113210279 428245997 504786110 664336675 773530561 863361719 641428740 814201306 580784008 930130251 353209830 422480276 341541450 565301766 453477591 938731145 797245174 346592557 497190500 646857120 555749141 920034581 368949327 81810517 507881482 650384141 569704498 31854993 484063721 501038044 168097159 725975860 869537151 13401109 433712965 436070050 104362315 196188923 828820351 650002302 973053384 237851532 453029817 166911345 63538339 587102145 655487683 444853206 709686291 826671258 60325438 529540937 998893839 63053097 300116675 403748597 790241886 908126646 357836921 735628796 824909704 24111230 129246717 899732836 795172675 26410921 836397295 558774487 884279428 704783957 899886670 427576471 309740091 604043881 158098415 544767983 99406019 696677023 997655253 840288716 617038938 473951444 367885966 735755179 921988507 187821196 648587324 162487316 817409595 237484578 701976945 441006644 758123308 120007764 7188796 616639804 997732864 486139105 985471702 374681870 750622311 206970369 349233165 680067127 126004942 900793636 302170009 450720314 140917038 821818082 270581321 317915499 109818971 758391477 401116845 943394801 57451699 794667134 294312588 909455212 731662143 453904861 134131085 680977745 342173178 431446683 443969192 491610632 38051438 769894063 440473911 882176015 766350795 447723508 680777810 454080882 834123570 929954997 655748251 467669386 962733592 558245486 774276205 260001115 488102463 552968473 725929803 673651071 369416554 767148212 801661929 747891383 535531486 703373077 186080431 88929160 542502634 682608771 670395726 470764985 582368849 450540692 110359819 763369724 674683770 693299207 128678487 288082147 769121367 768957877 323165228 128374465 406703385 913871676 520963902 256535883 215160853 791321543 115542090 482709812 104883077 64239237 111783708 135051406 835822025 860063125 699454229 55487049 932366710 709560063 376287203 860371781 625265800 1944850 922640403 545352885 540818070 388009959 454476249 270001269 293778601 956198503 902572653 196719296 708101971 705337500 768339576 751955654 414524246 419689602 935794092 728499684 190730744 529305616 627704339 868589240 869355113 330971711 447440527 264095227 744371148 577032614 724052980 373566713 320465681 691048291 281172502 945674664 30655329 487684936 871765590 898205956 257585725 55456878 990155608 684248011 671135405 358155256 959025308 873746430 323938983 982723238 194233662 820540181 809344575 465986523 188246358 676065247 591348055 562777876 88403779 333386676 282293611 822019283 193859358 469870008 533193595 528570803 30945661 408572151 912317416 926493705 218854537 993348073 672389356 102657240 546271108 597453224 605992016 470045790 466500240 313399983 314465279 71914186 980689671 152147019 9575401 174367209 718231489 593640712 943346782 75816289 357395746 389550812 534212496 169012005 97530994 303340506 962168425 923565090 789973600 15910360 816828476 875153640 198934742 269288022 449909202 577290902 815285762 669356153 505372633 765514329 681085847 153703941 739351712 695704087 717924450 567804911 752447898 810429164 841437312 159275231 813217045 543159304 484703343 423102606 621434297 304170401 862556574 594551516 405974192 672103238 510460854 403418050 325099493 359063073 347311264 681536711 77813963 678110834 460573690 610893014 586043253 548371636 865789055 388208743 125549515 611030533 364815270 750906749 991464884 677275824 684665584 197574698 388817083 411530952 415983839 558874953 291026444 613220216 663992199 901604076 726662930 346035510 181612178 767472726 928832233 198691275 216434819 977982968 496940570 121147129 686412202 323272000 207212001 154876252 946600541 43793442 541925122 539900897 505444697 585708552 211641637 142077136 868108914 272690899 326984754 317537367 863138261 261728190 874143209 660947650 490836278 679740362 684397101 513687454 462897900 506503393 310687673 248550437 459959522 82676568 203340166 403375666 632914367 724409784 908878075 591600269 185418134 906251743 865717295 644050051 158118078 651146915 368082684 706802738 661029100 593771631 2272795 467557948 686967674 595679246 937420672 909336712 400669115 699851432 10026382 488858246 783920652 360434824 50342218 629835731 485011787 167927149 620903947 127504872 771663501 714115260 776687757 837159554 20104511 897739524 304650417 516782282 307229896 749817058 120356070 605464999 505132462 234878466 132786837 421145572 481748519 502802091 220102030 427477545 334153062 716325502 889927961 243794560 413620762 750082230 211291125 13062012 496865065 352608525 593552388 935090156 946389472 828549243 728950267 845819986 959666473 315686761 995444923 794383432 594626087 963719415 442885259 305234702 685121511 410062152 560408046 531540735 513191476 9123731 561762579 283259602 719082856 5714019 433318734 537256554 82018488 286035559 42600118 546152790 227722585 61723412 983031820 900890566 637972840 445846144 589388020 363738507 71302441 637738517 451801204 310619776 25962952 885077812 23561567 598671773 769424184 645246257 106602328 608362484 432783784 440110782 540672710 825142260 710818493 97786087 245490600 570001195 449857197 27561692 258990430 220495375 719265725 275354076 894920320 382681307 750612363 835430301 316887677 386857199 244783832 835457965 972042123 310557998 892729875 920478121 317581886 140211626 899216091 54881418 750237801 404309509 299509487 498049321 483030352 584283092 968188481 920744331 427845011 405823819 915839741 90423085 507870826 33508365 874417331 283693579 389624504 196340924 644031550 458327587 805495427 304424433 203617744 625982401 822587671 191041827 48075793 494114358 343305048 440730176 486291842 68738151 67898430 375607564 100740201 189613265 727822789 837639266 905541348 234532172 25540886 682692193 475174010 837490199 592150364 736011243 644791958 667979296 937772520 844083694 962806297 323237483 310026199 524569740 558251189 111453772 128804644 177532908 860734917 135573264 101268644 258082578 43267152 362406567 873849956 458186473 883013338 259233245 231380343 749249585 721272095 330459343 773909824 194077706 458210778 85582098 294618653 623578518 754825776 776223533 910586822 785620585 486802558 71346651 213577330 708118559 204013816 614744842 775664928 935009485 205724497 956176764 900697869 678567342 283859616 356666465 660685593 578410419 995924280 456577128 691131474 654093044 549881502 780270695 747344353 393208214 512441599 180841658 241468552 8460581 934909425 650538332 903702321 107145146 237561541 953459747 157749972 564218867 840184657 459644911 449866153 184561500 468946110 68103313 815725015 978934078 947690036 247419255 640897635 428441917 565584274 545268476 325924766 625146691 404703950 729638524 218568825 23156183 48939320 546301925 760314919 828714418 843316489 762713255 133458097 574235 950633528 705480764 266006433 918755147 837496982 455345246 324715552 298994648 90602175 181581849 443050257 103197105 980022159 391638540 124204124 394952766 241871358 953201501 747725954 288233199 581649895 905493607 548461634 87731605 441979336 993631904 237600083 99161159 601839142 60873400 99995267 300873361 755936767 793451475 858939561 677623343 75358609 12683368 333710457 531433567 945109821 568900988 813202765 669196859 374933280 878408419 515948528 202818665 253459143 831877016 785121171 305551529 476952875 183222077 971914675 260681679 965419905 101295909 131301017 891193601 232748512 503611556 613691688 844766536 839078561 414394180 383992089 826033803 60509041 100025139 476853609 118700073 161979788 498280726 119230382 298416623 517801191 97800575 453108435 795262742 654467735 422925411 478504561 108099969 318615985 817736277 604037294 555714846 228548383 363544323 842503719 786009319 138384289 141750546 274878160 209288064 463972913 560883079 292166474 409591041 524363254 605567880 223022069 651290041 383063731 319722842 923557407 467710564 749739550 729543580 152069820 728778781 922496645 712654626 933023073 219871679 668350710 23669814 851506659 278651973 6948723 820710395 139142548 382925492 15172576 69564455 667039716 811615864 834930561 25696194 547135702 631217411 711635628 44263811 735988938 133781060 989647774 365596782 703501711 174018726 871067867 870033060 683423945 67803979 609968532 326777715 416247851 405140199 213817820 245514264 175182514 21029844 856327538 321523278 836100961 600619094 449040435 195018046 739917558 725802195 848719198 887236635 444138623 840971412 92731650 48885374 736817510 492142655 822439677 972889380 478773862 321153289 994487994 66421957 226544583 525786269 546087516 443343890 537998265 529452512 468058230 689126342 273351584 470095371 916581401 610920746 252890079 443082321 170887695 565899142 933298880 461924819 430031977 335566189 217526088 310925447 94937559 606023817 467443125 53545490 709269845 294305599 406866101 176248205 607478565 742751226 252454257 836403748 702561135 444074561 444966646 843614486 902457671 385494332 903387860 644463167 525178319 918490280 876661261 581466617 685976195 716113857 298450729 312078112 607589289 485821166 701434502 363203316 978988195 221181947 226132563 874547800 844217244 293392368 824615485 281466297 298210349 508883771 492480606 588688346 35615469 286833540 107237136 930812210 57943545 153693261 32216759 55155087 675828173 34492252 710166046 86901475 520136635 520613926 881783303 1609153 743859937 608489616 442548845 901485214 797132087 384527229 979634675 131304416 359380433 390501242 683249560 696239071 512167482 898808414 567793563 342642586 650781971 679342975 837534086 52441180 71487999 426796503 610054670 190315666 211073405 4539459 806789585 847131124 412206919 689074850 978226152 829789217 897329816 155969904 827648856 277737406 80932685 227898414 153917124 905945590 414223998 862823587 785913551 993353224 356152376 473718342 245948566 947214520 207067054 908114012 70165613 432340232 654632917 737361629 751406149 158508223 235929309 597248594 890441398 414951208 226016516 280108864 169641467 19335014 365051176 162626981 919785914 321313595 393922807 739650800 996930826 195610364 456254835 367448654 611974652 255038023 477960749 210424169 402312223 733615847 456679227 997219432 172775123 248465120 880883640 255691703 45831671 913747785 303631186 108177 227936 134938454 670767434 200122839 575127157 166450283 630864199 319991336 645672755 693865428 607736781 344819908 169533211 877056548 146817176 304676512 595115558 79599807 133311116 39319889 852140848 122698626 892349282 959848177 892984757 59574108 955776189 193866676 808293958 166982498 392036017 391494503 798708399 812198881 383388585 479467695 829394504 419921450 338074790 825214497 637085153 895075597 401173595 594866362 680619765 417468779 74514462 499129012 663291014 80839367 578417819 952882389 675226489 215560004 115016981 585593339 616915228 881242098 732193523 73450891 401664191 719430245 894450230 279788553 901198576 191872176 348567856 550650139 413751646 368303249 187967828 346189718 100905862 758280525 443301968 728603265 846475840 292033907 97851868 458816642 373064742 185669954 518114473 920813077 768324118 864678494 306052637 825721349 469356132 523953244 307801825 814740708 918529584 67100745 707827881 15876167 675544488 131149792 816672294 974050260 639853188 687812322 752182516 476905621 760267490 469804223 635078395 363381807 181376046 599943239 831972459 539887878 66603320 280688985 749619936 25237482 329314151 31489304 918325371 755187225 375708854 773762058 509745433 612148651 519716837 741556830 86458240 850529363 844768418 810760098 763304994 101639245 274814906 408196788 127108567 192381158 561031954 641334382 751356192 13924849 319636581 971727662 3441381 604955713 807055813 823830156 22203797 168483184 620053833 649884833 745125976 961521995 546773705 359096606 247318188 536066950 905421932 545941849 23017753 191718679 115145029 386467304 814145884 415734652 166650380 681056378 617312707 754443824 894924462 127436849 322488083 37074862 703618995 328938359 546701124 496622676 280996949 252953042 435773574 42235397 527124772 114358116 45263358 743103668 107758195 827749068 589884892 343177391 743817070 314137731 85114848 840354560 951647025 709204580 102478487 243638075 291614997 88612711 802798141 452254306 646837526 43300758 18424868 878057934 581412364 558221835 15135164 8642793 282359960 982442993 473300405 355058175 825921210 692686725 92734919 522508823 263270199 922810205 212239788 680205208 183117971 789121110 535714992 598585607 859305421 646905828 833531138 275250547 634414110 58781776 709060857 133601523 618598539 253400893 909597615 470028240 555223646 703998975 751792646 417478551 119916317 215775804 522520170 931617582 251850665 575135092 12420879 710466456 855868525 825400284 20361772 991010057 365437706 853017748 1401303 828500816 304970675 94958399 19788699 413367165 627610926 838594540 518347068 264045281 695603368 479989205 817563330 868510291 886486218 773433663 552699810 116506790 206162770 568728763 329319056 319752738 267600869 399307028 629939440 300681294 897445270 702984294 814978451 657921418 455435064 550947883 869180985 257363675 445626298 363679070 442371563 456931828 424729771 982099740 57034952 489401891 333317866 303218171 25399544 129091272 804879325 691451565 37818609 556292598 474255650 33099901 143500967 787236614 568664234 678779748 371917837 902600040 24809183 318165524 754026775 439613445 834666150 493723631 482401784 483989022 719668172 300655784 622200354 565168412 704336831 915153396 803552064 813531540 977488036 351654637 769506717 598940306 637487641 884750231 173071095 877227265 836393890 440486059 424375551 442423281 701508574 130341323 207164761 195481831 302124982 314362705 66321100 59982668 146000847 352525533 507731909 693509580 250002040 941179824 953149515 822542881 853652616 489535580 618944660 455620727 103464238 778494602 95556457 803189156 800811737 43775586 264914542 170183177 196364952 976345792 815023672 551067792 783996947 701184629 707985225 563800167 504981324 142380776 789511140 465291094 65379827 781748681 892376188 527817361 298193690 923847883 800067482 295892177 911736486 273854953 431814028 386783021 844102454 683870101 51386914 129068620 640889735 897561383 438732511 736394632 181247654 744111934 295503052 480545784 370421135 955590686 368853838 941902905 434087639 759611294 207885975 990712792 710404891 13849830 510697816 468756305 10953063 575616402 42026761 526455431 108094825 253936035 806280501 592311412 403956998 697026809 307036877 367039813 781317656 384710953 389408288 183204946 222307532 755582281 206396462 317112320 295299275 14363763 648372225 187477093 163436814 969636517 974947266 365961636 633363681 789495342 282332646 595164471 684903868 513314697 746038534 830824752 133981823 562356050 385467786 928024025 412322120 224746546 921627568 151256275 638288435 731230663 531639773 548513572 474135944 83855799 555643839 463400570 658808866 748859826 43741282 54603955 339343854 211124461 830356789 39773272 960370870 472320931 955131950 495985530 263896180 301691092 433352350 197563323 778482344 101042513 250045697 114817874 14694257 469431693 297465908 991493562 278620919 735602423 359733349 204204138 326894788 302423611 224297498 608959603 969278172 903220976 847728670 543104027 625363692 386916509 37481711 73336788 95141212 792065473 84545343 447310632 453147183 773657037 371651830 920343880 649105727 75823613 166312119 500769144 553799490 345947586 224884667 359344314 87178539 44777681 417697664 583470548 246835569 204967821 616840789 955909310 351604355 344830892 178157516 256773566 729510262 976563776 825253381 72436585 671349061 50110942 944644799 147085091 778155513 332646842 446840652 593219432 816441564 938469236 390751371 80200074 87558862 405150292 94056335 797488659 343784672 887313314 76906079 107400562 528303068 988386955 646332069 562872712 913686529 719787113 12381846 386885405 914675515 765495360 202374835 891981435 135624926 459144178 116301748 292648237 258600462 580122830 299860879 977178755 236618854 953294996 713601385 160095634 365293480 579508818 539196793 484505569 655683114 129648810 673680028 771592609 993403943 970616771 96479249 268808620 609419500 508947095 827169183 344669389 923418010 917246713 775428201 186687615 918520489 910159755 204779542 343256737 835684207 10853972 943797432 742157624 728044738 368941812 687405503 26692247 108064892 319750954 704014233 685476494 282646820 896390795 933344548 953034023 401161726 822739424 394629982 493424996 588105062 67282604 842023983 772660719 433041726 953741267 260952449 42411064 648482265 171300667 178171623 941792051 355213260 473835025 243690490 715136710 221973677 119505072 463648874 194769850 97948413 866798300 552428793 906361833 199027180 771281127 99764576 165351194 709184874 874830661 929367054 431903267 448786589 678043889 94832389 41523549 243485383 820907892 763189833 899754418 268293187 158501986 131505199 333076948 841579491 733207724 689220747 759887101 305168352 154452459 447040417 936952504 840916379 333098119 951781084 591296609 896221411 9054811 206539047 488050854 45040530 494993614 143284127 464809463 514917196 943719756 894357769 941746398 186982202 340199587 474721366 956544359 576387561 536987450 274981267 715291039 36871252 300554390 502966500 553041449 219594621 488254469 702247855 585423393 350767989 175055154 774556358 633924551 126052218 846741791 524464086 851340589 131738743 893915814 139993774 709032817 409886745 577397761 964549947 824723221 857464790 682233663 796018367 64895463 338103320 355000721 931117732 971591559 261664408 472302320 338299222 99485138 432533173 882818007 959234500 210236276 210033865 828612922 279078162 412540495 788997719 202027693 320494103 408452826 379242584 517986359 904586578 333863554 359641427 421701944 66654569 944312869 251200946 516432664 132132906 845005895 979558907 725584522 995878639 390813934 471775237 636810206 920749388 438318793 647897250 812887856 286272855 268813561 816066508 295142795 23176565 633599705 157042103 656369549 453867843 805779897 103546699 555376134 376305883 289660059 681161834 385578840 707219424 434541731 884526886 255479694 437071047 42793602 546980034 659706187 926543708 82095872 61438852 803635229 368958928 598766039 576225493 143488595 847737450 644832058 752787537 554598099 853465364 524466733 377913608 716116631 686133303 144469115 823337277 818030342 748610082 795956754 544727562 51206902 72951142 791832406 144570176 591792993 245323202 444938243 724664226 889244790 316182864 224157641 523448353 437042033 893556668 31834334 441610168 324567544 17954785 977660597 663318746 524194011 23376289 377100778 168374572 336167778 674861134 713059548 850455778 32872908 852217079 14460539 525225116 122222935 188097881 552169504 370406369 216888039 348796516 496538907 95403755 94385134 837507570 203676403 17132699 720243451 355079054 384798573 223738163 338710982 935492040 418685927 73093818 621911048 963315573 249411585 262543431 47764678 3059642 124022137 406619433 633730616 663227540 123439820 883890589 187621553 317748939 931191910 62915220 947083904 63313413 340915288 866510011 359531535 441372742 936176454 742918986 460586907 74926997 519681931 457559906 475970532 794226288 701485969 382341177 32590713 688380225 353578267 539376589 816360305 463044311 599875811 372200520 924523457 484806725 301763900 417612660 446823818 783056205 344652695 907970008 400016451 71809748 65459554 764862961 692904342 493484081 802762849 677810592 44549009 152250647 540410763 174472381 673391675 722859301 502336682 849442086 848571783 409206512 508136375 539461234 463363810 897279136 107440718 321271066 756826055 562613485 146884959 517788176 532002479 666413610 307767091 420518155 758123001 509062074 364124214 305880709 156776581 546538168 785876882 88152060 31108518 255152867 565397949 320991935 608952711 178859128 653203848 73230626 363118265 409207927 227551869 110705540 717293910 545309612 542955014 260327083 245220540 675599794 907460848 77282715 700057450 948797782 224009527 603246446 379842048 538560018 618667280 813320582 32846004 902708618 347446815 879806523 671450670 440628001 453663256 733631264 187139244 128926682 693010710 721572456 464527555 297856668 647094938 592954066 894555803 939908440 368226484 685383498 982731628 978327756 791731307 409043595 649365425 825223450 171747833 336459997 486141671 809141056 678674677 237316256 353314006 694987956 170905200 725113208 764504280 359512997 633586072 100701244 75523841 640218404 359421886 58306232 429112072 741577866 406354191 840133551 752256073 701675 75576603 672398830 690480926 655294662 679305675 187072022 658857765 922467451 889955703 804810105 325294645 620558435 667386261 209316391 947667269 513670465 556609580 271107649 82409417 584158325 92044658 285892352 794919915 979832215 349859001 527771760 304609552 640770485 359426411 93377516 155551452 401379631 127877481 159293271 845819459 650978466 954925117 639507266 790457706 360974215 790278570 90421926 767242423 137459952 715494883 740365694 673665418 422174041 268528692 961714166 985536744 732830938 352017549 924661632 997866291 329448105 582475729 442387145 429125864 312199959 882121664 984515066 303007042 491855101 803704691 624891832 753470005 720222043 34124117 716254909 286133489 885498472 327688774 122054620 166842585 77356945 854024309 660498500 63210064 932722297 963518301 603279557 505639279 22748037 330799607 849986642 383387393 321317677 712954952 122735993 504019441 515205151 231580219 890846959 861255967 587447476 897997466 168206563 587909414 452008825 149530115 361295246 404750590 832799228 976500565 128375825 54572503 727710422 794459363 805052665 573328601 638358579 81910753 184230617 40183485 429642761 562843531 738318310 898877193 278707894 747447023 408087786 92492593 991142086 984585563 193943305 261811651 11699868 70275477 277362426 218464359 982594199 349934016 429332355 359619840 940601261 161703248 636615623 369335697 875718365 189291130 509342431 399098574 842114542 625471322 184206906 347052378 426836361 533653150 744498205 325936463 583571900 58083028 250252667 512447697 895324110 817588868 221059829 155870938 880993522 545535053 318312567 158950629 728002298 942996258 969214517 50896151 127251443 140062648 543013930 791515412 644453523 912327419 363826940 431222466 680197663 744775875 308434951 566426134 684409901 30959942 609487095 437250176 459811466 452099355 996929717 977655506 162073466 520461134 68932170 938945816 42322715 903506005 122835385 13735021 915135430 309875242 177218310 333297374 901983493 898858141 441418419 134711500 896246492 904229282 688846961 649943402 159309518 26760131 644392407 626112266 604525702 859009583 844333094 566757201 599383707 878842306 24385707 427267374 514008538 588208052 84689334 714237136 67620832 852284481 607496337 514539157 253557359 187380095 148733941 778817274 942305494 774201791 944566376 344797044 663187611 801498547 121901348 891564468 145540196 532023326 587448349 396240602 786461453 751960185 626773732 722029033 918390049 230908593 299023809 376151711 180288195 343637749 111397359 565821081 489424628 911356116 827359005 726830233 691829233 736494957 793147313 484792030 932471431 711751565 732198762 713949824 2850368 90109043 77558416 705994096 947512828 159380775 553667247 488291782 107824150 466297583 840839079 78281117 172699094 618124225 524842520 171566238 642309682 617104893 566801777 175456300 312091214 1024108 352573105 123762771 325875051 896189664 908942501 412894246 928240465 735529342 914647620 84949954 158100548 847746649 655977417 525707969 286011456 360683090 425930424 552186575 252606590 565527139 979701477 482748251 581045067 73401384 721276422 707891422 707783269 665591719 135327969 259155177 144072526 510999736 989035567 796619333 48635189 218816213 477023493 486796511 273351622 475265476 749888824 937133682 706570061 97221836 31314246 447415777 697831366 468706328 23339921 601893011 893140606 891333608 131730994 79649161 736946051 211186393 411421132 999642917 337655095 510366007 265599564 838487184 526191660 618573419 497434085 912034119 297788316 909356451 802047545 195182297 40066181 973728561 804769106 868974434 427172908 844784481 134695586 414579849 373897856 614079217 303389415 821172486 682383281 130274482 595404385 206769295 742563831 693433859 675717115 230365849 710399263 85877258 994324661 100668211 802749607 882659648 467995116 693485531 88466873 903734555 272710601 749176814 124809347 577978189 721476159 432493204 878916706 69003070 930868121 55030208 672383513 987344734 987086373 325934028 485064161 11972967 722683483 434909957 903133264 585206863 527123990 715889419 150770785 576412525 861622904 784473432 533167905 859268415 49564165 669223899 421944378 699736586 688673789 873453402 724163188 936345916 177508001 73439254 116266011 227396182 106116337 744746120 681031768 336545264 994361395 131444326 540278945 756417701 635526237 42467283 620733469 512596902 440142462 93617337 868070212 895234449 710235362 141875086 689941639 681912237 327814473 196741784 240289465 709676082 677437620 424828485 570904979 848501273 50030947 831771621 600339620 579722910 686766411 460651813 820005809 529635722 407897014 515885389 935810908 989986824 840133496 683448004 240558582 173368751 169463872 678944731 507247340 896493660 745568222 912893678 414864412 465582460 165454686 261020414 683368831 239358589 120094129 672106352 212044476 2943190 334771325 30545542 820933393 938065263 514456768 209193437 133509119 536095057 396206823 714328610 111663735 903432297 97255837 348920906 515064816 316646259 463493009 16969608 882963332 378496786 590553085 693383247 765133350 123082073 717099570 380030417 245740325 376640743 970710455 452545133 178073765 334713187 874087298 597950562 399057910 918360793 688970929 681698772 750302506 519199149 966171626 853623129 261994256 335843618 381966037 105628939 318480477 243150883 456586759 571281063 540087770 770521688 842465082 133358289 252743238 151306097 994404003 15084575 740644231 421974097 440832372 458970550 773231797 697180282 519073184 392219809 628067931 97100733 198105956 605576949 434328602 284179037 712946339 496137943 665608480 783049924 4275321 102033254 88810806 915138499 113238369 305418668 301384909 41483550 745900557 323973572 902100177 764541148 851416566 997817131 291552539 915639894 572881352 633802508 401452720 371655037 66404401 192358390 12741911 201920657 304460395 16569759 477422328 341301679 217736454 628187185 767659509 251016715 188385345 375661850 75107393 171415459 347827159 666258145 263973797 871742867 621005566 565662595 597909701 545663593 81626208 231697436 245423923 68643614 504502127 544815234 2264086 516447257 667080951 16663940 705767822 67385825 37243264 913321559 951549671 720204719 843241355 330463396 669674449 723459287 926984166 732833047 287008793 149874632 770749059 79497532 516211320 721231211 81330344 881502911 827962347 711523758 74380112 115723802 193697629 219606077 952704392 621318083 955704309 832869386 666781820 309043938 931248268 592354384 135064143 560149950 878686378 685417551 326014139 198543176 766289835 424021941 863053253 767766098 423393064 829820797 848403811 576202169 693437306 348984287 558267362 738834891 200308696 894172161 268271944 236659481 983123084 209433247 983376832 336386570 395895518 726895961 267187034 682569903 336516369 390986879 228830539 363369727 818157759 644937080 254752510 519941204 395446884 36096811 58817697 882891506 309722221 815892625 912519658 281459868 500001057 747649194 672973700 663850679 101167943 104065132 55684266 928620445 616731194 647308659 789421592 174375753 6886016 58401195 459977511 113267053 690729966 922574380 323295806 921636461 509375019 372610384 959875398 988950949 899477021 824137458 134993739 832103891 82294261 731572238 606685329 665830368 100932923 159311873 264130514 657519191 55082124 513093544 423414655 321982252 975920388 379970025 839712215 495567140 576883229 870375321 490697809 810418722 900622710 194812423 351405046 401656212 547109967 552439868 441706911 651484541 789514252 642987348 194428409 104723764 354750067 548435751 454733823 951098022 458689342 993176873 895453390 652969269 442214389 774049795 531031767 792502637 982027206 956663464 363991148 913366721 116383932 678899366 959679315 459112610 479952397 728809068 372950336 395333921 974999872 476037247 950486442 215285281 77814425 247484598 903637357 347378573 656416580 272460844 152796415 153458513 332373133 172221016 203155227 417960838 113462595 845175662 390225748 250479419 721358242 2241313 7915696 326611687 308271742 340949146 99248531 775881769 616447665 801397699 473186150 923815066 594779104 379071551 745650172 57999469 168603390 844613075 612095798 37735885 784027889 408130486 994009430 143285776 754816127 396227662 598191173 765634820 742205470 714466449 400492365 199895526 487887605 544873705 56693533 62690641 506256520 864449735 509722925 238719874 312697250 699835750 228907818 778244506 447659182 572194864 703643236 161149231 170214001 736934329 20064018 771611296 670455795 814902313 163026512 572810353 237806874 859690099 366262516 203732754 782159219 657301651 636040594 489757314 631560365 492258824 405674603 926457510 573383755 718351715 507172777 488754999 164488510 220529790 633290102 967089006 208744812 105951685 275096962 197985347 763460552 401425369 397310430 95764542 950242992 36229326 573992098 466811033 776166467 110679889 982153232 197205098 592944265 899500548 404726574 750959877 676836803 924988381 637505204 686466190 323073040 617174553 677869239 557248237 256833638 889679613 445713160 90288270 565770317 333570413 794532751 936353855 33596223 195104930 964531702 578388714 305192790 138405924 630574520 935749387 364290961 230284599 872267975 267207143 643328604 856914626 558126098 840804347 81515183 749494702 786810035 86964391 707347390 279845379 784167308 192251360 222447573 982582486 998401814 258629911 847427781 487945805 589461927 882214452 128198905 331941265 38706357 683256406 695454360 931979388 659219992 91331603 437589756 28107731 662260003 540003863 939571597 516366150 604776571 718780450 135925672 985160423 182626356 980059622 798109419 223494986 947552586 267542758 280466811 295202269 518394392 572891387 234832739 305622462 467722131 756542364 278351429 362006916 106941989 539415609 362032251 655762955 448432824 263359193 930218018 241509812 78933953 331110678 859373940 54901211 310508733 775543740 908787538 206540291 860362588 633165129 680658482 251093939 446456980 960082077 140871932 675560518 490368098 228603869 800099589 713733026 709215416 972917708 579074428 534218177 467406141 86075157 694419493 534152385 666054936 770878028 591944646 674301896 99434945 629432336 44727475 522447024 754862940 408566874 632111870 373913274 939444863 940588517 810943026 409313695 17759652 71960028 861178657 401813452 42080761 7877063 133573546 942629575 679172606 148582149 945270341 735976216 173753292 811189823 863037927 194632665 677295840 227125596 963695642 881614971 222496821 822479768 665915158 817310651 601066484 75436570 712201876 528890459 459965614 959431586 88794797 625674377 96055691 717356214 225940911 618598284 666933078 930875032 437746149 309108803 982553531 867536944 9403730 618420425 186578397 463576272 172555521 162753204 660863493 932946286 920166865 437764962 248660550 815064802 384176811 659624188 461473882 839381778 521373666 686949051 525000491 637753803 349612979 568450201 719957996 393152802 254449546 396909440 203332920 452373674 64950075 429525850 779071202 641822301 17007759 302937311 576082007 770581549 676181908 707396065 540116416 228985251 493296488 677685812 44454193 837289317 825992774 385152450 666894852 10491184 679410429 757482467 245707016 748317270 953237218 520313840 44641474 4280711 14050505 929101302 793087760 727012038 647227290 296219519 939099798 260241505 954857061 310679200 987322059 543921508 219930435 27567471 783510417 42381780 297814334 650229159 922159562 482797444 325268451 136770213 621716345 38343501 60411434 336421288 679467347 890923756 436663041 768310661 502215451 623172312 954858458 583963090 433844664 812270740 438286701 495950184 877559307 840403555 726572226 356698224 990722656 964457672 830323847 544090852 440825391 409995245 971292414 777739390 782673122 133931074 251512446 997863049 321346914 183930233 350956220 219361814 208994386 992990450 309195132 152493061 196850159 926923983 511484547 833327544 337734414 314443243 408847512 86814863 838311242 687828548 330111572 884296330 611311781 349140995 940826363 464433077 450831575 307566890 209138152 795175596 57917945 620059741 760461598 201577583 36765199 240035765 629449214 667104143 403775101 136627062 549808161 276534475 157585985 701187155 908592299 231276590 171260527 711015580 848702606 540944551 199131669 336635880 976445629 299218213 369160572 533112691 477098102 940115738 684252714 81632688 746461463 689050443 875334955 225007855 49095236 40131315 793829465 815210497 138711601 472023015 598813451 370825778 538443148 975338766 624954009 477808525 655747981 266284376 158047965 978406080 289074058 646701412 763763078 448572411 527667687 515226673 281688 265741539 262918166 189036494 980240749 746176357 23784740 148337446 716977910 758917674 432374653 764096121 806856291 708988770 575127251 219121537 600750407 595520143 112565747 660915064 809202484 580601612 319167257 317701881 608623571 92445629 398222149 279306374 866207699 27440910 119045576 138935214 812930452 17416732 918224145 569925218 504347137 366178264 842670387 408667431 541026800 476613296 193802539 602503685 949716485 995186730 888339191 72511272 413724703 75599880 527446385 14460976 377847387 437806307 945035596 255519380 973764316 168465190 949417122 694321540 289557793 494335075 564131850 358124084 617519350 182458225 141397442 972988581 260495476 415297653 141865008 629231475 479577900 223837439 737820332 749202366 798540078 943722378 853026202 123857293 358287613 140582473 328330125 38259419 978398810 484520115 817952509 737057807 540189489 358236019 971951958 929804947 904591454 6655271 464102440 599268134 91246039 108970684 471535014 831283923 900164338 639208388 469285288 44931040 275971614 85100281 904325365 163763409 632407967 58425064 128814053 782088314 274177425 91300678 804351958 424382598 641128605 926419592 272827701 167183888 275849109 32888978 22248041 849946115 432985766 373682988 442335655 870924576 785316215 108515532 404535908 805178346 210445928 138932214 589371985 662523748 80251861 767058184 369460466 847651593 834880163 500358992 147356044 720865309 962005613 838984926 433234356 920818002 490522219 18454185 916495486 363394728 430677342 879764349 319829149 636154937 254848177 678866216 963178057 10144011 509651258 307829469 29292874 152183890 285499927 169678414 972632365 944013313 169494400 742561855 497944609 313203997 812109020 559111983 299757994 897926173 555154551 698318208 844835602 706620332 765936079 525566475 131755607 339867560 454430258 338399134 517680576 471198949 117216811 164167443 954362981 4847656 253068656 288046356 837156179 256512590 189078911 742586083 164371687 504601096 328733086 204934141 107319941 596275202 470102162 484750856 533150212 51711652 268980308 337091645 568234210 835054031 149506571 206098702 415598081 184779254 415744790 92636311 502563403 588717377 286827852 973136879 54078197 478086411 749167482 820715862 122959059 999625129 308053546 316648497 145069916 396824985 530362730 28589708 458739780 20177561 938862274 489318040 982289738 769615534 568950365 495509799 582583893 238751790 797929734 135696161 680753695 386901458 512306382 268751400 690161566 372420552 657086959 455421064 146842334 208038061 892815720 781312410 616369564 615317176 177910802 720741150 104695425 421243861 72395177 117370291 390731659 513414714 728268465 847880456 481088665 604990368 204761216 963447603 287483487 551757123 335308237 2316232 268509231 605445554 660106313 153572573 458838006 370853698 771579565 155088920 621845662 2724653 360886289 762123260 507874350 993149513 256388303 838302134 953305029 207353158 324001547 108799987 312445626 87351085 64852183 215131368 329669794 256306529 389626294 986139837 632727879 316062334 205467404 291505815 793780173 798807570 258501277 790013505 235112172 263358445 130923805 77661422 827894474 311972483 247368198 462415675 784958066 315127982 147518594 666775784 186462557 934901768 597195444 181938267 431391439 755588330 225861529 880488946 80832856 88714891 785044430 217101061 514565820 639841005 650381036 155665844 595371006 663050705 338281398 785206023 647340985 75615059 445583994 533465672 800563127 941821810 790573930 31414097 62132008 136340802 388501190 280025250 673511556 81357172 371741166 936233271 911930886 324840460 173142877 597029293 284101732 630660019 727633372 847721408 523253405 712556961 52354774 140388558 743583208 196826215 698409875 658363739 930077970 704066595 503728201 860702814 794432851 115502375 274299110 205893280 487851427 531241020 65345414 507001535 496750231 570713713 696337684 754359951 739026155 173147657 372713127 597164644 355508357 21382115 770180268 916821674 837286151 214370657 205308015 665764736 705839225 820741730 42757503 851204192 768796545 538454445 450964903 189709109 96134357 783848529 145374739 648765513 658198056 822001903 92610186 354162135 194789298 493328757 803554943 934799759 519038171 341144143 502178081 942467680 339439572 272665868 617570412 268946168 169497941 85936237 60509147 616423068 689701902 439292104 828518055 507813242 102771290 774005865 815681149 624698425 413817285 190459906 408831829 383116005 398224765 716370560 884089262 194782310 260932993 715933575 996327123 179901992 510583881 259844522 154912605 8467279 484306033 390109644 788161542 145542060 588217616 247230387 411340914 440290704 313608389 354778432 427890825 453979107 814836562 126489826 235034843 614754627 374314090 808027659 112141930 439508159 363662196 635148796 563803365 210047599 347535298 175825523 302327430 625144137 969825487 139073729 517221910 634837996 737636459 623732513 929809135 489998244 470012176 907550033 884182099 154229793 899258264 581199573 545157112 908582852 298219124 709486129 979875853 779289451 603671679 485212196 66744604 270352226 857650965 709728449 992831133 590621389 925505810 152980999 822443141 136699680 739127205 575756227 146135355 499643120 905567850 65302245 556661620 60868424 653348297 786332277 681187855 362386158 149498584 571279655 212310170 138190180 984664765 117303344 90769030 893214223 327044572 839380160 467487948 176696541 143510886 608612512 731483933 619840312 984929386 572466809 777015847 342555283 875432728 937524687 907996993 590909817 186699733 566854251 86058209 107588714 212689864 719277835 324851287 261492808 944802903 231194511 978688603 703809282 511133037 65747368 494579510 785173048 965213136 919273591 524711647 10566120 90398915 450577094 642008394 260233993 697594552 189999711 110155920 984715269 655802698 307093611 414190714 265227908 384565663 114872083 12288027 367334168 219690226 79614217 565242100 754602601 948134983 999663015 43958170 507996448 829660597 938405085 354930554 284578056 323966551 316514173 631629719 153425574 775471300 951205727 932088162 710916700 610977531 132366980 480732306 499357380 5812680 562787022 797527902 932897939 930994074 645281083 683312513 360217848 247539179 763332102 150052082 657027093 516715473 772826835 653130682 596754972 625151484 639130958 649028502 91335351 638061718 73601757 996841943 590255777 496632704 583460855 450319114 447493107 886355682 589070737 330436065 450384649 835039588 231430165 884702149 595825136 731076282 468172329 704142569 734773507 311515475 553173708 198919835 802961812 648620338 795236006 255195720 939614642 856400662 680580838 10668941 336646001 130653310 744649172 695253990 190762701 58347852 768629642 915664292 566189784 699575698 584026514 958870713 382923308 43077694 940769960 560911275 555915818 829284187 989120738 32725525 620128746 97392505 254855667 674679271 785014772 67214828 552285408 347752049 332785949 605504127 950279262 270268195 362377891 588356203 732253010 844643229 843318108 403866943 370072256 53993513 18612830 934333306 163203373 793721082 641551176 156835352 362972328 709014582 859860033 15687160 586827226 576963738 397709170 573504562 888352128 212098147 239923409 619659344 100443897 527618272 89571075 162367527 661296213 927319004 366380204 560605981 71742073 254038577 643671520 467354455 258512526 814804104 330508600 176623062 11519945 345162888 375985915 601187143 730974147 878395335 948255437 833919551 40899080 15096967 333161748 967785344 560655998 556235593 944912294 492027690 956694133 889109507 901186045 843260619 7642445 229567914 339691323 499503031 367355295 163030758 518671372 470957559 655860699 245838982 39455753 366403115 839869783 298605225 697873576 294324387 287867480 472486421 820803362 44345192 185669158 287793326 314968463 225616475 185078570 811919632 394709673 132522053 922302476 588677031 306175830 779522 998508435 279857458 155116569 847965316 822773193 452261367 603380107 66709491 966945436 636797655 591226632 62549220 795162889 685122319 212554031 247218552 772950804 840919262 564826393 88305313 183692382 169819369 936809927 932750849 903300095 137618941 596832352 342268677 759806666 9362360 929913062 342295723 426931168 550671688 315970133 898718926 801447000 108288964 865742784 805136029 588035202 784572900 968399963 820902216 979637309 887556227 651532023 648710268 246948917 281234666 110560627 357239596 2918295 462440005 160194957 305196753 350657200 637982027 312797037 34565358 864583280 511157162 33979846 270126505 967091168 582175024 62499360 397693015 33045106 59231483 295838850 416838763 900567343 749855800 954354372 955249021 377129789 23723580 351656199 170533866 171054447 927613531 189586665 538155888 58950067 916991472 662172254 74003778 133262984 413166182 364344220 875158947 420628751 431786234 455580867 84459744 13124140 314688742 412391207 772752691 67073576 135227354 723557082 784126868 163898043 465026266 750980326 78669699 513725307 281498209 782105845 295104972 946804818 775033139 389837639 108692471 151472118 732216361 450396350 580135636 352301771 48301506 495642505 878059530 390868026 591409424 623419807 293302066 692598406 786716660 502434850 960084146 443186910 689785296 206878517 297986143 177942568 565113979 537046191 413626422 681642108 995376940 834413719 647220313 398501477 936746063 736802603 744887897 675272049 161287122 514028619 975910040 120999568 426903086 534550911 51237638 636295404 558298021 364399165 137178275 311211102 665618106 329540313 372772233 491984752 235657017 363856489 177606916 527743782 802516859 283772987 865445530 709888328 118711612 776543825 16211719 385874533 325247639 372008919 229000526 969454009 866777199 505017947 201921808 911774992 123130757 716812548 684299537 885786929 243399412 992709921 335246490 739925643 714633507 29424323 372118461 104951035 137773973 933521314 61713871 585038767 773204782 746278711 601189357 224409609 242093839 58790909 342458542 924220490 137014425 658046165 569188788 857068950 791667274 966897551 414157314 459589761 863026285 77495888 693641862 31912777 346389317 313871760 119424587 672877157 990324956 165680652 800524807 287552643 825674995 222197475 198351225 273398498 871644228 656163320 952212867 69482362 689126476 691447578 810881254 63658773 75822756 105686839 893812211 451202643 111338718 973937462 693807351 386448033 277892180 851665341 761826166 380572075 783046661 668772696 31029663 145673514 292646900 454217482 631049139 36202121 164745715 687023644 311905214 484522813 421566439 136161815 163708837 890226518 946719661 29610723 673298030 377978814 19081120 903414654 189769024 479935263 803346170 859795532 547756113 910142989 399954187 376471832 872717332 203009635 811811261 37295233 329664657 202248970 195099877 829601613 637813906 737751145 340290854 411499696 996769581 802337569 489335563 797762804 556787514 100420700 420323162 765413921 355724885 918829962 957204289 951878211 328375857 159840147 589229979 997506818 586388770 467245123 495237124 876647240 990990058 423058275 734103510 238809351 15324608 899251213 237886203 177902145 913763484 438704885 705145810 138437530 213671940 849598401 576902731 972816867 728684510 451551582 994934454 946460809 254183190 599470900 206951956 41712570 851518290 218978454 364642758 328812643 802028927 89730382 958193206 76089515 777561243 521167109 355543489 706234376 936457948 508262237 373942561 686917052 655395318 37802789 302809986 168314026 459086456 137985368 189749494 314426909 999085657 861821905 626786456 716488102 929872937 202333164 424032662 761194141 74308807 687623122 232906607 626749741 571452713 988117435 43301166 65173817 986171979 918538202 253765374 509717709 197744585 109395364 91829809 618837009 53009106 634717925 921197041 412432502 260651022 567867525 810419379 347243126 669490181 280480285 84791139 641036849 230873656 874858759 524151609 251405794 202893386 928913713 432541592 649794198 946407293 498580080 860547360 409487514 370552298 429612903 22379582 372722138 331545452 177059457 866526153 298433411 238612004 365538491 261774228 463619919 161938402 486389289 143956748 914523204 470999920 812514752 124290217 670395527 920263707 912778972 610096987 69026139 208594644 826034675 338100728 228711401 794154757 513134099 786166761 478336616 557347934 223106202 625366314 793440136 25839907 152805427 660869531 605737045 953110657 552723440 865427912 474895709 489211510 463083815 92524680 178912517 840769057 791470903 355940271 374295256 350935629 295902749 668249995 873557899 574877038 939852972 879155573 411450643 164796774 121588150 255924664 231261595 774183218 328067577 701471148 398349251 772243616 539026094 367999305 528138894 838018677 242876632 3098582 213698971 413253676 226995669 50566532 487197097 90011503 416380355 978449449 199515989 905341940 384732779 575162759 407276627 609471480 785676501 516681229 914836517 287953045 482630537 925416001 491860942 121470022 870392333 621338310 367173504 786464924 586966650 304999012 664373883 847439595 364357161 850448863 530722240 292919994 816483640 265438820 989320132 348297048 391832562 506194203 585342483 931935357 605547353 39855189 145694542 97531168 703981886 95156027 987941722 99632655 947159935 707343078 817015009 545058842 818177995 388197221 51909935 383822481 908166106 419741850 902079099 352349788 780438425 49662945 561530687 984254928 913063126 747769509 902118334 9820899 647080452 467729841 230663913 897109185 11944906 347143789 209128019 139507152 213096888 952941322 947831506 592224788 713210151 508964156 318406381 699039107 244351280 739431527 416535433 346258714 983185872 937250327 717658310 412712538 805971335 520099049 50237007 738366823 863118664 243784874 320415945 547614524 184209948 484872749 572520270 140325016 706547874 228564427 756201819 776282218 884876410 456509418 916400645 898230769 893411492 741729717 60202275 947384806 934674713 356299552 812149620 800551608 70188801 457617737 98110825 792230083 148311963 846325111 17113755 73607636 893647594 106755646 9484268 167004455 751888989 273941627 876012852 410931956 164078508 460477521 232809037 923214779 513753610 223233839 859939067 922924764 375840876 422173822 399381151 359306733 383078274 97167322 533125436 421065013 472580783 979184521 297449698 246128256 710918430 944420794 160773278 806520573 772581997 547992623 824730443 982645549 678636404 300714490 142346410 772937874 653259835 633036187 48331560 575443435 716468327 638454875 129275130 205079792 57940613 638455032 729011861 535848452 972727059 610723598 297744264 111611056 375697031 11070813 586616241 228423329 639104181 643752774 720371148 995846904 474511406 125311300 751720685 132137573 517191545 462922285 303487798 275143344 667999510 249822498 848666323 41411762 993898793 80879915 38304746 906562216 235127621 887298638 982145660 47524478 358800163 856249510 237100023 277117370 342352173 842953562 172748489 271741409 589019731 614890631 779895681 90632091 873690258 720129451 760725204 918751502 779766999 965992158 678786364 177325062 164374476 913900073 216668466 752178739 158994766 698201382 690016505 644323717 332579562 688316964 4066010 77172204 873515949 118851392 299313215 168066265 430445718 889711233 376770115 229272881 522003569 361283550 548979233 208817220 984036777 601238475 833846623 950640872 523285131 922184696 351949307 569416428 943487340 981169722 157079496 217547478 379443158 341535176 550118435 454642424 697570123 755414141 613956652 138675756 760515453 851181201 520762186 881428354 349514171 427334650 180251151 224710964 25488820 335490632 620997803 880777196 677037786 298287107 255131163 392594504 984049613 111704051 963887065 698563624 24086035 237385632 964550255 484668839 819533208 688852942 203260939 770698161 964738718 231621893 167131973 138539709 625022738 320553516 998106377 484868903 172905240 639133669 602618749 45548252 156091122 382840432 57104474 618842867 107216106 361561653 683624705 698461033 915759102 947213340 422042912 602963538 533520636 56232509 358579214 497504076 513681897 227289866 439643733 763383254 913140395 850114521 955914178 879238936 163008053 702769282 477360100 954999451 4477185 52675940 277230507 329221544 201117903 263584377 35739660 780335814 981699327 357649241 27285018 479794 840641446 674467030 179283177 498942829 442421964 415472467 106944322 625893144 635581790 358748885 70293086 580340058 311121638 672926895 222701551 316318400 95597705 537854724 158156630 329093152 550677547 16005751 208356814 778954923 285682585 562317599 139370900 68433908 502965022 651676891 494156300 642728674 331261020 403813225 427337306 358083292 762402097 77025005 570356784 259006627 145036093 419173414 902704650 422565905 249051153 193667483 570023308 728688563 952040205 544684754 591089581 911670603 794227712 26836093 238468627 196774160 55387732 699669431 939120950 883035684 970124375 145066513 770396176 191930467 292325174 372352807 597964527 338720864 923074423 386493296 203583796 747461075 121660780 192266909 190420414 354892010 578562467 356917276 725365071 675972806 591344972 192005512 951177255 114924366 525267679 211231049 568949562 635930553 844888059 459945682 451073438 662027132 147021923 654094075 391803860 21476776 438398137 460197510 489379248 974288696 627114715 809323386 654149994 666702951 600092223 813666974 217246716 994198043 588288304 27460078 220517696 378848629 646139445 235455954 788360517 29516009 511205039 962507031 4658016 467298628 689112370 54778869 344123714 715150966 144761648 236765404 517306756 178641796 811776476 586219547 398046973 367091734 633836597 950867208 303585034 593879413 184877563 119642316 824218922 281789778 389663534 131750502 901232683 437486214 915042422 227189943 520435590 989093413 134253616 212041186 497372320 618672863 11101563 96850750 624388306 269115568 40769353 233534795 260164267 549448443 107197226 583331976 837502847 629486627 965999482 625868631 655582224 49062308 9667576 142718462 592953741 947563262 689542061 597586455 241052892 754905321 201094038 576609287 475495827 250935709 15327332 657605310 294581739 358899977 175254689 643124513 240662600 751132534 73602946 100101791 877423352 889579080 117569921 457317789 542193051 288271353 248105724 126567314 257495837 577746716 2185854 348225152 70404276 792458845 993518339 390082929 389756728 740776410 19054988 859933808 437866070 140957422 197113746 22680694 906018408 215753345 176391712 324761486 331299299 161691668 448726987 741957027 801848374 541628894 483482879 519148045 869303805 795443065 995686844 641181670 369870377 453676717 345911392 52390068 264968873 743691261 289744284 719143596 858453218 554566922 823481117 589380470 42554600 403241533 131796651 347747042 98018876 472647316 315079037 797720252 907444885 213359397 272676770 752946130 49946405 838523013 267448052 485397970 362491586 618469614 87914569 330340222 633126165 122199660 535287860 980040761 366620336 255321904 486189180 575752186 726820117 248693925 964707713 827592726 384452308 840941793 702760860 886047718 644100020 704434397 785147522 937304963 701045546 730769918 835008681 117334536 938243162 45778212 667453044 520000972 609168123 640923417 288404224 738655425 599905944 47264519 392743267 112270328 247423625 456899739 301666224 974559297 287782201 747336410 938929066 496772734 747501337 571425098 969019176 555681352 565637341 38851580 979591827 416360430 820324951 883701006 159473114 17957148 828985933 752754183 874760297 673092069 10313432 631038036 393735524 837225203 715905534 479104280 895963374 887134903 289750175 690522593 176912346 59400363 583733624 633838165 981975267 373445543 241067382 102440068 486672247 20847372 434785527 732467507 847622515 603305157 699129566 898267007 697115626 264790617 265465388 967479593 469894556 987780351 562094809 317360179 471998077 967953719 277208596 302953490 41004661 531948088 7659399 100726964 295843185 791648079 256492726 487818454 502940421 177071289 16338845 785960596 678551849 704376459 844812694 173415775 110869852 998887102 145159364 217593592 379534222 821590442 823024828 681731265 421504592 739996132 623079174 681430042 742202245 477854049 279671759 801828243 180101297 219284434 288268629 57340264 941950477 181830516 268323164 737732105 613292906 84965510 876584636 949977334 967072459 533681579 751822621 343948400 564151005 534866671 639297334 672462059 875897681 934355718 16748010 958603227 94464094 922191223 883548080 731044321 759959556 593581316 616848509 316171629 919313020 505921042 515064074 701238138 48994935 22208975 936388667 489329055 332496726 431374930 323376808 412926575 943066404 741293343 398927313 414171733 336658148 749389510 936768741 478607769 961388087 362649905 315047597 221699637 12181738 784317993 733915015 562686100 893129586 496644173 665428072 828469528 206154747 952369626 316576844 46027569 431756785 515100373 236154408 448308070 817219833 642031967 508624836 450202468 471256546 551330161 879642778 115778683 360207556 583349819 288620811 182516620 913227058 682856428 845880550 521557588 893077927 74355460 886134202 643002507 340550086 797432715 729881695 442544769 9922037 125401203 37264391 902559071 307104655 454472009 711068600 880405867 311778824 448462520 82615963 635099891 824544334 388358531 722161799 208309471 405302946 991407572 129103048 223924421 372570139 896091483 705288282 812758812 915488040 556980664 757946811 475504066 524705411 244975512 842795604 991642122 691024053 821805288 890434642 621013762 976527207 243687668 338987751 985817700 553762656 474160586 551959277 871800727 705380431 100551893 349753024 476601 200099528 533547343 835758434 416755798 205498423 352165057 982959215 257764182 627889540 890211478 168944938 67852047 975473850 550236433 802425097 986970108 818721797 590536311 636404698 114048657 397030368 490912425 865587699 84432242 918181063 920037263 423907615 208715549 870362966 253195951 349907406 261808147 162685943 361250389 281826554 548088727 73025679 780650034 245515393 780408263 883775979 137418610 453831031 286148483 142121933 45054466 706141501 686951428 204263704 960351727 499570784 506548157 894100567 286059145 786001637 621837463 552404277 616877922 988039308 663376811 912833355 924635959 988227795 684281443 592108241 527662653 335857940 936872092 954070310 541387619 179600992 110288786 659016084 113408985 178911561 584314781 21831398 780688752 736280859 721030831 543448762 113518579 414326777 832992350 792545525 312175994 351222694 57767721 937522815 227205929 420277544 338258348 716823821 846530872 748077041 447397903 545369588 823885732 928002266 982252723 264461258 389107057 101053971 977245896 525219447 573937397 189383111 850352631 414722079 821219747 890139984 15492015 360572507 749664250 404873647 359276479 915242337 338810201 202059179 36322588 34126729 515036706 933287793 801488762 957595618 285921997 821316065 707223707 87056577 522929224 61058770 859195766 433868645 512192264 886684063 935309917 101259405 185684518 873396450 57039173 388851093 974323244 901349027 880190786 373776218 709026747 61872872 735395027 552579800 930959345 172540454 347191448 54894136 271734668 310694742 749292489 29297594 20700177 718050869 403617229 564010559 552768784 438496994 501608836 896012936 525197098 980981117 332031606 229204330 13948341 955923602 480485339 411519207 520466606 685630481 138095998 485387186 514464527 116773707 740554513 952825131 198142960 479296929 384576416 726704803 661232737 486244204 284072357 449431137 108366331 376675037 227318053 67522253 924152756 824640470 370833105 337614828 770434435 25352130 272004953 868128710 308269630 867462971 460201435 635431398 343875793 120510963 691374070 200113245 760818062 664001237 30365446 564369942 512158296 197353698 982888018 507818541 549731210 681231261 711874014 409571640 169706548 660752720 409129874 846559886 143727806 762565573 797191897 757955461 319360578 89810940 977145414 297574489 261694935 69248701 7904565 748062538 186515374 290384535 166382283 472895819 547622800 730994734 736251305 863799832 930667349 794045421 684622976 172293819 492303291 500764724 327663940 725451713 478640470 390922860 243857816 492703941 180310081 485899384 753973325 288254435 733338290 356786220 699122410 220456902 564323257 933754494 243847471 943340905 188968002 598381277 473619891 661063062 853313484 519210340 264972457 303509143 279633380 392230007 344722501 590074715 759908302 26859390 231309697 611276381 971841502 954882577 631197482 463832320 309799507 438774326 706896908 267914736 18203745 356627356 992886700 919864598 924863963 705917266 535173409 959474048 890750733 726693411 919949952 629623440 534765956 719231604 33795645 817305964 819768252 916087083 992396483 123149492 647701251 562936823 502091306 817375455 7939322 852116786 604181895 577589652 506145283 335657854 909095380 678095333 91801771 797394619 834064294 343545586 983243174 190563935 236777692 426312526 831789718 39303516 946840704 138092572 294684874 473821288 991648991 532362600 236108935 409528985 278117392 420072389 753171216 397288012 491911198 42294804 635001579 735054189 685537708 638994743 355398332 791713736 865047709 918543081 792663995 807857909 224629313 9022004 782051059 267724770 337212827 216112275 323247823 309329443 791595125 386043742 715556998 285211014 213575920 422569218 219873573 361778228 786410928 323579296 818278040 508148202 757324837 652028264 674436322 484389867 158747 304677356 50120980 268261499 935123461 117533485 898331161 325355554 481143591 476535178 796530205 560192918 799928022 718730757 212392431 888350875 443887199 246896736 209232106 477411216 103820251 556541527 320932438 801870890 848136607 879814498 930285692 360353246 158531259 760091692 555091536 561155623 839119115 947693271 606878667 223311064 291420032 439511866 533745940 92970883 812148296 97598564 392644506 386307248 243495595 875694341 201014185 483551648 539937176 349121573 696542952 21065802 168754231 140529440 294744392 254672885 66598924 861127436 34122465 246200140 300167285 793722779 29696544 506413545 969353857 122372385 238060887 161248800 957205607 692228024 228490331 588239453 848098840 452191828 944701537 650584302 987545336 399862998 745530195 955646592 144028798 551439033 728392991 114097347 621877932 694535604 716226456 882110262 61988998 621653877 849149539 495160358 893083382 3404635 857095602 142139027 215346683 582455950 735685461 841624197 214235030 182149279 986301601 200999997 205967467 631995944 605362231 626933955 316110687 710755922 856019898 252085286 170048258 214434958 484161298 785165015 689491405 623758951 906697743 989567925 882668632 184753106 759433001 292354844 137075315 949087518 121921421 414600126 420179819 400591514 635349577 400476716 389851613 55138875 513943610 490466152 758803719 128917275 244604039 356757290 165806371 383022827 837321148 183108499 967933174 471548845 268764190 412613299 163459392 72528956 849188177 588355844 48803522 547682331 57768195 460427 38055181 380323462 274987611 634999518 273790020 144657144 98239056 310346885 972576527 836471913 670279698 921579927 14221724 236932227 277148410 304456995 482415667 481727780 581666310 618448822 81928246 199122245 126544451 372997600 562971677 35555284 233511233 511230749 487930473 791797172 374638618 612018091 590656981 180796792 797927099 137047991 385696099 256210722 660237043 698184949 279417975 388676855 460698735 502868926 639322876 43047820 367375420 429800207 266858258 951933791 592735718 893234184 325310463 589375139 971592740 822584977 603977227 356844657 504131175 95890254 438619916 54652034 710645926 436558254 502914195 512406606 413472667 390180884 765627242 29825810 154098214 810973371 359378507 638588902 78236360 370371926 656528172 868951967 614142411 74571169 308823956 965680203 42873155 273043857 624301292 712482040 922424477 522399805 354059971 710112450 67472479 135826258 985523002 444974085 607431824 239454065 481972303 803210059 802637095 444810760 948113529 895329536 521482246 452880007 911977926 796560074 509108017 947398779 102684183 198420828 123348548 396213152 493848413 950874447 985713729 224462367 668829475 469449182 14414116 187066446 707276950 930850376 919270228 804206745 975816315 683961041 880960694 917500538 296464769 337460857 748543446 1584588 928054843 574954351 186225416 454458311 380056672 685037529 935403795 887946242 336108304 728748915 1629905 33046988 694704133 150260028 694475137 474648292 517666195 332956740 877646118 831247021 845252427 992340270 393390417 901602137 854055683 34574789 469670497 459850480 354259158 156467223 992255677 913159174 405547196 603655936 888556024 837564819 623239128 701891629 785639170 696128179 155377468 10471735 414578524 894731090 251759857 742999272 444962915 772695218 497134752 857498602 993386121 662066066 282809996 409246947 78282857 149814602 727780492 467330826 839837775 627775779 438178684 431862529 794616618 244247285 273618328 350481799 124659699 36415365 816683304 754283069 599784329 756365561 957286758 325760886 940997674 972201054 191489800 473985718 905928286 191922725 733152094 432038516 43701780 301810592 210830605 191501277 227334432 415941562 615917093 246548457 931635281 530202937 481863072 595932700 330705553 523105329 785858139 572350545 32238312 895725012 857256034 580837871 743412768 839904359 542238100 509177357 25411964 184817988 439282413 234042165 726449169 864253900 741719251 886164935 418203827 377203435 560040921 905390532 364444726 15871595 142166110 351415869 997052633 293340826 548094805 335538541 27490905 653605779 108559490 231993097 960921681 368343315 168633400 652122429 938568238 705070439 400295528 674446569 986465093 426541078 332405291 502626000 614100234 143922823 257626334 736651461 771566531 93501302 864750698 817628162 869964535 100754537 875358766 95306826 617911320 258789999 650035984 133894799 884460718 424053040 30490281 591201000 672651832 524287884 146435189 689214695 420920120 357846962 440541883 319218988 205384168 804844616 715519679 940468705 645307426 54017654 244769447 393881679 667402697 634580259 759746043 717584828 26250550 256253825 290130508 226954188 159943580 104914180 845084691 569984279 683279323 334593743 504256708 557793018 546210867 837969606 771227827 216300376 289474749 439170769 13307261 584502735 533076774 824795127 988442029 394895870 971120115 805691315 195932725 884094332 787683428 99313849 151590707 491370026 164579014 488222229 324453396 109623132 592320131 762211330 336738045 197691278 348183187 202664221 432769145 60572462 484148726 203285179 164050119 99141044 141534578 896340502 2496600 231518688 42427551 406545759 520982117 988394044 854138893 495430133 697178061 498856334 444229664 531899837 743809441 764393804 417066190 559472294 925899572 327589430 403811383 547003330 961483685 923240993 611483957 402614979 163225503 136331144 32409590 983673581 48840983 679994824 758735849 400435990 66559847 559025172 376929961 927511651 624524924 584264147 105680711 529725070 831316825 445412333 211408165 192774054 187026420 718348135 847942174 442523136 501239328 464226304 821500791 247140632 448246648 324724073 64018807 915647554 41612900 219588827 163585149 337177006 729690980 285802369 301984573 132353530 203904086 844506961 196587243 830847904 771314693 972311141 135492859 259596198 957481805 240405169 391087282 914019391 281362346 167669042 543053891 265156213 861226984 987157691 767621890 615179685 227729165 722697988 166637365 612846821 802646675 632256909 945696944 136206933 816099084 500251802 835588078 42702669 546524838 761284451 171194643 104240456 508139934 522387353 266512309 949187636 115047320 905992796 725728704 754895058 935695808 101684170 933823748 895804059 601766254 121344582 157408473 934117871 948587049 141612247 128279784 624257737 181059271 35641308 58841701 601815624 699758531 654611863 783708282 574734571 189408086 181617824 703432543 566307168 39480549 812515092 923470695 133118970 220164217 239964440 334034759 278221301 526266550 80816959 666442667 833016500 837090082 456128861 545436919 834190699 557411320 74903885 474345457 606692212 833439037 151449960 519074186 295076734 628834893 297892690 3349953 545798656 539750420 425050021 718171157 286606361 210794745 465969934 708541519 776066438 416696311 846354739 609863541 667950995 508082213 852636043 626246476 674054635 391357933 435781988 683830667 788822028 856276242 128232315 413564794 321349678 433789272 716615768 476514438 54127502 371878567 257681372 643622909 220474005 940343429 431550944 308568673 89402778 383439990 882147195 160948803 998209507 482253233 706943146 656269110 992666499 582115128 906174327 252196314 690832517 425899003 245505082 461748133 746836266 435073429 126971548 87646304 649703390 773095208 652973858 496393282 594062527 208150168 718703687 728438532 797034388 487389200 425267887 552610145 420081175 21193385 297690258 227655928 13078168 68582967 942882675 664623983 335785613 424391581 915816815 302678584 36508051 715698780 618851075 975497689 820447165 633776580 982633409 592333959 349822653 892184263 773189293 268713248 577261580 400286922 446235764 586254997 326973049 398080247 316448125 806591066 887809744 775609367 174282378 767167902 546728910 751023603 98166377 82909792 848145914 675593946 981654571 351606694 340805048 952757603 29496995 987441168 63743836 40936717 177321445 39102344 692075051 850151957 705054941 430795241 911013515 558337099 177960487 153920270 918471752 155516236 238087754 37796897 391910039 149804334 200059712 795949217 182435067 381135541 283262672 628650112 28864566 11620370 146151209 280369504 287682748 870340775 940728040 861377137 994328545 987660681 83535082 346363759 381698144 623466964 784557947 37886043 901492655 964962247 547852362 319493803 801630708 794270972 556819423 429249714 504738102 247886639 883482345 756304447 479159456 768940839 733711407 83765098 229236721 225229382 65583868 698440398 727667482 836507418 420501200 881921113 965825502 404191606 574730451 28016293 276634699 856545728 655654262 65219735 26616257 852497731 232560671 558814576 448892750 535974209 65968093 140420293 275695492 61900603 721439681 423656370 226945026 756508561 978548940 36405838 575310454 798931526 718088647 5100050 648092594 136405318 49705112 397720673 519231684 473966706 140202869 828077628 739980300 61217847 869775506 182566030 273320292 939882745 331536226 214559250 304024123 495181532 477020574 86807979 118666405 908644074 721019076 750725111 204401821 884137626 642837262 765529117 539073849 675462389 831063515 606340169 530583516 851763294 613048016 459719183 877137409 247526833 538808544 493743288 266033271 558474246 878615063 466768972 948103670 591476433 147376270 963505071 972294097 972236470 120861509 797502828 64031509 39107733 488497888 383211444 53769489 138311723 835607623 36708917 384560433 951762051 108556699 977651068 242732807 110071030 670246294 402894339 294143602 963304410 326703348 881336787 291672435 406429848 471249709 572551020 389558210 955538721 254183488 852604807 754312899 137923832 147044247 583257833 808739048 170337122 159549275 168433234 581545812 268625517 429752884 823324810 1486802 818582742 822167796 203091467 916959976 36255648 811323669 164561870 74553089 418675823 944165400 120778446 245837450 684154358 359607183 993061181 770065162 177752323 35349388 716012114 137168549 524090393 818933311 811197228 983417110 352392862 767660340 750011213 122027274 377461882 812826890 278261446 438206131 159974583 615260224 495898843 359785665 929688774 957725682 374093023 174835213 413898721 579835580 607725518 52660912 957496237 60950476 636189356 677397521 485775032 957822101 823887393 816528692 437832009 404174877 909877617 239813004 120648195 397972305 775188862 476850499 799735293 1069886 181462192 878226487 512741020 726370597 640664439 973980087 329679813 757137487 704486202 679300566 230251670 690538889 486051266 348946781 536089274 858203573 200210227 571290425 312470110 47494949 849355772 532303969 754518466 479131336 689170606 70880422 594809985 283550718 247577031 919849495 689486361 548232641 372892869 141702739 893338332 338047979 681722329 304171399 268442820 594601262 893982733 85855318 271050218 807655677 931204886 565518368 993779745 513413472 309457388 764224897 205674832 176927921 524601618 818858359 648956926 30327330 898032352 966180530 806542657 701227928 649476517 427370848 666506286 498201066 488759416 21718307 417905028 432037314 354083233 295766650 108534423 75042087 846170050 625274615 735859841 603364002 119814618 223584089 427718502 746141257 463723697 226711207 188983486 565905169 120284699 125291848 918587286 105846545 338821936 948469060 725159842 132495143 199291419 711768108 926179504 347765811 622964753 608251210 960397777 576505726 929793997 784265254 833564608 178721623 273259457 28035447 656818829 796969215 265394153 155346736 14320186 419000826 87285316 76822594 156750797 966359287 799013938 912775948 351058376 647254081 960642727 248230759 768631586 213002290 122415012 764463059 786157711 782126821 888365887 48618265 989015203 156581563 446922693 539414914 917068190 526655610 316722915 863350949 99406568 680393662 649369998 561482096 643740569 100415075 897737646 367177210 990365379 810843792 102772934 259334459 55418805 618305333 860505692 630129392 304901010 703241835 563198896 608001456 257272436 802932584 305705252 319851632 374465986 687487905 467841844 427582116 586720937 332572217 64434101 76681398 970022290 677868403 710650593 712695196 396070539 488985932 763090891 602837075 924415326 805254846 737728482 708640255 842175619 824036650 644075973 233340250 808200817 286338042 964352664 850942750 712449231 735152058 162214556 359216578 956082717 717140736 217465501 31027893 942311454 101694450 56629021 212454109 409344292 483867347 337711662 629033910 110038428 234240690 633633150 727572552 901802423 376408818 493000321 511439876 529294712 826828452 18091125 793427738 821093801 459859856 974641116 182538408 869035806 469518326 604608551 911575882 199080111 362876647 889422566 465654959 906038536 959292382 339749634 154719447 534654115 524583381 338182632 83881199 301543396 241687133 85077118 397109222 211825505 4089676 520217762 102776988 13921783 696348791 818073855 371311086 503898828 451369179 883339975 581482531 858921740 7931804 440790139 658279277 212216347 700769361 53963748 109810177 223423490 744484397 29099497 901303971 512594067 271190008 945607351 157111995 33323295 821612248 854178632 850284295 367148857 487495972 646401773 536001584 689714261 842427902 49214537 209385369 574944122 990257938 760598602 59603719 553611273 30919451 577140146 468601528 6458299 734633075 483013850 349921295 281321222 920607406 813139610 339900776 322563896 873293423 449641112 649478378 230214486 269947458 72879014 740841193 453008738 81478291 248288813 980073600 326275469 20388157 664645351 16752482 134661707 708554215 659976791 16231930 731214392 32577979 174381579 601109327 448364421 136352890 401069914 727828598 184589808 662246143 175428676 521692104 301169028 559551248 971676946 55428943 419678459 74227870 80521553 655855542 170883410 130421396 195297887 216830468 753502533 263042338 389852101 469956832 921192197 747363159 17252369 893511509 126829434 378411087 498227045 617039942 42227120 410518883 529758416 943771583 600471563 511637022 173455514 213048993 626068677 507823713 834815227 278329254 557046748 251051164 798459025 939743755 816968425 242984719 639104723 319195469 884931996 903412728 746503101 776789435 428987353 191906692 74422640 964848350 441202214 914383301 362921000 712680730 378347128 28231846 489077714 489753757 568735829 884086306 706469352 301124596 48798980 297100279 43805850 84559553 302040825 263992414 803010447 345566055 228696155 775993151 575100369 617628553 666135819 915551732 39156268 517633287 667913655 861061875 133118471 177659639 369336612 238979669 419494406 81187642 957289507 185730856 759450519 31990553 759511551 147531206 118991738 768052923 369204217 410935737 869068411 642354083 288152544 643650162 854934112 895931014 13146416 636967767 516068959 515587836 476636 195242777 792425594 399595875 533988868 127227380 385617517 589605877 141369753 499555639 377708239 368537624 564546063 630578713 293407166 375185661 992534578 617079076 373977148 240826384 356118525 364158823 300412871 52949144 493306065 492153448 789635665 98919668 438230220 600368627 694612994 916670497 207150935 957082799 895454855 440039053 758176612 367809495 54615167 769081530 13640177 279986415 712619522 505188177 190462874 419616304 187136867 375912136 998752268 415456814 623086593 588878248 113619266 388009602 729285170 97416363 532188598 850835754 373661070 597892539 840079093 500632184 212026559 178740408 644095773 611388147 755205086 640225804 73452817 836570213 625275647 401842138 810293040 470651928 972012587 986551912 578541869 541262850 817726746 389823806 348032981 368914733 629042659 203966984 111261019 867805435 307903469 186367750 985306066 412449731 804835514 828779828 644224792 879673786 137811937 998334791 941850751 320010555 723124171 744413874 87016586 740585840 251548786 543359035 552977576 827273315 648983005 685097930 418088412 684835848 937907861 723857001 301000911 339276348 114197569 774874907 488109349 922071763 418005021 989985500 273504000 70254850 817184130 413789521 905440844 115823622 283946491 5265786 895893186 774132964 150563803 842872174 842231281 451787930 563975689 628866670 240562380 782119768 942543569 206239705 140919456 105035633 916211682 209598095 753956783 223617271 162033233 821847831 787029664 858270216 855076627 111678787 907761346 493294036 838415983 95910665 294170837 713710084 687775113 747344190 276353645 890874311 235589284 50794949 300122263 894639694 189035132 915055777 631563584 306470736 864410632 832943668 498278017 4051862 311584221 798007911 621107260 85914084 901224523 964748011 177038792 841054251 814331152 912684946 72334058 310058353 982257343 665065637 292717570 476826679 862524628 738823891 401373602 492619541 579472526 929594960 400138847 160043372 135732742 5576010 196515027 312175286 936860888 825692002 693600902 409752191 523555566 395187982 347719417 269918098 697852 347394500 797710044 545842953 599680700 600240041 298683881 907718800 75590768 321931323 361073705 556717087 205799556 253739301 575854386 933589956 454800864 479919719 129354696 664956262 76747727 67102377 375727322 232243187 615643437 604366827 167240183 723822956 916732517 302460763 370582736 631262416 6349003 506944499 815501478 735909473 30915679 670755061 66723067 318712662 757338909 483915041 138657432 179749133 318919866 524545651 146646317 492649351 585552584 935052677 186119326 394223929 436617374 223940100 855802852 85204523 742929879 96889911 804044208 412832726 47809820 104510963 102411489 748486097 150754100 664505782 375174297 563272875 564062798 488385841 699412728 792280962 537140117 244553795 515588232 212698824 575191924 255300871 615155477 956564205 997591638 219612937 368334050 51218242 743184684 666820529 976749419 724802279 829911493 150861014 925955223 999080249 200032463 535085710 640676574 965972080 25157562 15687423 986275460 811141414 813569171 455910421 508969615 879500834 964516558 436028473 908103627 304640607 392359513 938094466 18599765 466351896 103802897 384524472 502474699 966990977 199720191 912055586 606754295 247373291 864788518 825811903 192126968 274036511 615850439 794223670 87338843 337515989 325912851 543904195 592952419 892692154 139317774 807247194 31947400 968821164 605807895 520864724 733371746 280898354 795408595 25432762 575078721 151267826 933498799 336874259 745813965 273356255 304246314 191533174 600068390 651483271 621725168 80520478 569418877 427089356 287062750 997640954 586625004 574527019 849058835 920473985 621315296 225197415 634628006 113647494 387823760 362047869 175817147 336623983 216480284 564027168 761492773 963437144 839949648 445913396 368284769 506360377 683450984 245198570 9799789 300517705 211833802 352516489 521685118 828912949 159975738 694075264 466169740 129377561 141880477 661827384 772552729 560151745 284894938 671815257 195855492 726602472 261987111 875159493 498278329 771449187 305120798 730252519 704266911 299059034 479576069 128630221 781446408 180158888 739262386 745017173 944558387 449645458 326342297 130875947 193712564 464796999 715706822 446156733 637999543 620124824 76858401 509191877 429581741 996819406 270955050 151515588 306787848 420672306 244863120 759732443 450151568 829404493 359204585 567153582 882281024 23608786 204050383 865637357 974826081 627289987 671918984 669748623 57523271 395967405 325215890 730115857 550741042 126812404 795554907 570447669 600877690 114991750 803328330 542466880 113794033 421829065 473795863 160769525 292475339 142929110 666838619 978225297 196765596 529978659 427246211 427057496 897792787 374233028 446258865 637121595 652378170 510342310 493738254 438075576 821598996 644700802 988293239 667087569 55112817 902508358 593419886 92652827 694406520 4024721 492328898 81353802 552989204 91352521 804349564 86690113 641803238 278007065 826869179 571442824 970905072 636489225 833719781 796877038 596861454 290148056 1862109 794544352 931573160 268221365 635218089 185506207 936515892 212431250 102694607 143390178 557352515 44741777 914173607 81796575 487748097 733209209 927479503 340600517 241682304 347868689 516649940 814115921 334818557 515894660 198100415 355603242 88298289 541320455 547837578 959309777 119692523 931325573 561634801 712130946 829306558 133070428 405758479 655462213 208939298 853801840 997055227 728064043 23876399 701614112 229023133 907717835 639350550 665394603 798716539 714227852 977909325 736482924 554637519 490866575 880601503 738794720 524294272 658381541 709351262 982151495 930480082 676089491 927453991 713258147 218530071 347600578 333891263 847659319 798773315 976498027 334802650 310482590 360917670 606287994 984888752 189743367 978829677 81207461 426293001 765789239 198270141 845350148 6874817 621584214 517683200 571127572 402577632 950998052 257875688 288757815 32050918 911185405 952275231 424963850 441674025 747517898 282293246 486045360 899285400 712251205 965597957 36880467 276975140 131246275 775874131 285438265 533667620 793536358 300739669 147873212 296492510 487152350 658355376 218959385 925415975 459430400 626364080 104075320 229280299 520183940 705445223 125234434 569493456 509943035 340636650 518094045 524188372 49624605 406068330 81496424 649328431 341469745 573990325 751942641 556353691 671778433 520651774 284704836 168931255 260796431 990792899 684974528 883040283 31460606 559231348 874561555 873922082 122912206 631071494 147192974 175374883 613734022 80664525 989250530 216542815 569398059 621208658 957761166 722705816 311055072 985340867 826857046 107757407 430303850 422301993 467768817 395759697 424984717 634016981 662545885 834174230 419135282 442760444 118397310 93852875 263860362 210717349 834137840 644567264 729192923 976930999 346887575 507555588 676598795 419333823 507906149 828261471 674539054 807725212 419173077 117533952 172571954 567741108 999223759 474097833 393468410 226085411 321290385 831358556 418221045 395386003 429551159 129623474 610824232 991784812 44031534 735939467 520149978 972977494 486160889 833746175 223263295 234971123 32660941 530850765 837675371 293461776 625391484 451169709 931332517 800934795 437438625 459108023 701524870 763008236 327813837 617990553 807627845 232830522 239720883 117018351 289462075 665380364 607046623 959581708 177504895 781605521 979946623 11188761 410891108 253236283 320016825 871324050 872718577 776774154 435638838 50020048 200605442 27732485 380928365 251345142 536705151 554875629 435459081 479732194 745261589 72562838 327435387 673134874 322948367 337968690 568516195 982083517 405488726 697151105 688861117 494206856 947016954 333307084 499314936 474733355 197341089 216440007 854543540 645903270 708284935 903423754 656218498 510295546 967183951 499897818 276532104 156290298 954717281 817579565 676154634 364680399 170880641 388230323 349394785 103031688 23786210 305697745 742080800 421375171 990605560 633087865 981602311 700414605 397619378 321847130 546822 156722295 470992973 719579861 315339148 28192094 9540768 271874683 496645644 920072304 53316147 647713586 163802321 940970897 172109314 183595822 423768016 113622795 733692028 301380890 992212234 946804955 306650165 655376005 843649691 708398033 433161922 192322498 644026219 745359984 781054386 643476168 294631582 883116899 739964176 892445496 779951286 273291786 255735539 34187748 699163637 173492566 399054788 827329454 558712150 778017778 873371545 730692266 609582937 993677354 464372822 972780518 333424555 131693822 740919023 790670611 394816285 168408629 74375782 528274661 518273015 469721909 139858929 457424539 659071381 675255592 771766585 578637124 872828578 275469970 260208856 338250299 244502809 527332318 757956588 534197872 343790326 915810083 145817258 900563441 184498686 457864418 369649238 828107682 77996955 744046188 165190900 974150288 909032090 986174303 39657862 237718452 432691347 537706317 851674530 280159478 144948173 373883241 516181468 203750412 7677418 655763400 21094996 134264303 596855620 610996044 982154953 812960904 715571200 29560807 494419885 401774283 244915604 587704549 796448009 327773757 926949206 705079571 506850274 549606237 559586211 751160193 94457481 367700971 27843093 636610570 815382193 318252422 979721454 400072033 489443374 899427283 749851560 503201863 973365685 479474311 637023238 733438606 241369680 171357727 84096501 135042514 902088262 575142049 615191691 761988934 71239186 752479070 345064686 123822920 918290828 415412011 927865907 258432568 356610909 956339714 648767020 850072829 523648337 316578168 873846253 13902467 342696044 152394214 32894811 298606743 712193702 823509668 783299036 320123538 725382884 328628043 376082554 771871757 627829432 373649192 288655542 816307975 607843678 434722313 511391390 34651357 270239935 748466318 982532210 782264774 184236126 170502507 515159986 115344516 123045237 109742347 56283659 494142608 38100869 268534016 232783516 989288002 565046894 607311548 904061225 891244868 827092726 937087828 70757287 530823332 606983307 887234442 182383176 778258135 808426471 490236349 976955547 38195673 940269790 511188166 68982821 372230874 47606573 829708651 848029248 163724182 833480897 875744041 843138548 680811069 350578517 875543390 678840071 168932256 709563529 561339710 552857298 45684829 760719465 959054680 374506680 564649731 958968323 289286351 626142837 204422109 236355454 907138211 411961384 898322636 175154804 43199879 257651438 571438459 331959557 948932510 888554150 264874078 184271313 434030384 856030354 91358596 738207606 771928664 759121967 822417350 906460778 997934613 139690500 658877676 421419312 386376850 162723053 237296667 311508298 520894244 397713616 38239228 207377820 896238007 134172143 983544212 649745289 943949224 747105472 433161164 14698146 492929147 15626748 767476528 728063335 323612882 598557138 116757243 235933954 276040790 819943017 539275582 908825844 668592062 644749466 869716329 192879801 326806520 328243258 698938602 366794715 876130274 187711171 864696619 551511563 711725229 780838120 632737299 677275930 72117916 216932121 131801560 358411179 689262875 824750364 866307318 235127676 296968582 75110457 249439035 360426002 197891129 330952412 232446343 119338298 351813992 795833292 409126088 943010468 932291309 735277034 718035490 214926610 878516869 949225541 202246457 584457546 305053850 559329908 798283347 525100417 905114712 752542806 442659328 970330399 846934467 322531879 205758347 544145134 68928701 517155219 73454850 213562085 695749138 957624463 399882745 111845053 256883846 281272513 909940247 360733902 987540102 383287159 240149797 548062199 852936467 794326480 246243965 794332167 861107264 51102954 30874069 491147790 287169343 934806071 71701931 98401150 672147466 505675477 410070853 591962230 200127547 566822347 89016678 976257805 488859191 212890643 678291908 641492283 353148532 21644894 291848984 570885822 588276818 573664626 855216722 563221566 418990974 406425172 310433725 112636633 911680369 497112946 549275500 169366833 587568187 563647381 346886432 711710471 554324613 214783114 147545161 101308609 338944482 9337990 51766456 504873983 857865127 785157240 227443107 514323294 110728048 868026436 531997477 513775546 470230314 483424109 188690090 552106207 577130400 909458300 540558376 273001149 33221270 751174583 139594673 261336807 164021205 267515323 769624965 136729651 531845295 94513206 351383161 861226337 778838291 363332271 995047583 53468767 269052236 462058534 339501934 288664514 245913986 570805725 321227790 667668993 564719196 681408774 29707788 743538191 32833131 489110600 881342728 787396348 487042414 599061386 652508012 340929086 108448592 594448302 937696845 548927136 721899590 729924604 376003352 545351950 106256152 492801745 105155384 155217927 789135336 312103198 518724100 356436720 184930158 649350827 123124056 286791446 74889924 980122931 360777689 177662956 383594553 982020340 806762650 97804151 881331206 713073026 400503796 110043439 37779678 97195202 2224765 186280411 467519452 8865001 247002806 159188566 207990647 990719228 958356845 771675181 554761894 57695081 952920025 89378532 269196801 576064969 992826424 629678140 660895670 924355815 192831118 767665429 384927627 969225619 992500137 73877702 887533320 828136964 217594566 427439921 64973400 430069940 605791730 898530478 750081182 298368062 508132736 123195201 129285061 272349632 218639380 456571250 383242750 929990354 353355662 781279616 649590900 856391286 864973535 502239381 833226516 332533537 933971439 895754946 54554598 654391715 539527688 515433306 998930579 76897520 310992739 384686524 73024746 733897790 758461399 356983136 760974240 527004456 360017339 491274139 184000817 345583755 321187854 198526463 320221368 261227471 529972042 624316063 482983460 96463661 367161209 803928209 992257854 527484516 515523255 920266741 277185846 390744463 935919714 614060259 923212626 908880945 365449475 922297833 395073547 323914019 385191480 584501963 301710145 319392249 264052567 158073195 212781943 331296054 601148726 63712797 140518284 84932174 361211365 297397044 168973085 101868683 864910825 594804306 532461319 137307001 320232399 926626220 447970518 193928109 916393238 470187969 116923914 125474768 532583591 20581035 441619611 346576058 667334550 817022552 311240205 489761316 476224153 429408136 111973675 783646871 882831133 758760181 410755422 254280693 897174895 311853678 225642976 505750532 816044469 72244593 822152646 51033348 62795741 685498750 630638996 589640389 947461496 313826787 854989738 61888212 750218019 105432076 41725415 213808683 689037923 428438116 93942218 116720983 434709106 86259167 902978683 2232615 834048970 652608883 313749679 728227480 174840254 859991420 934312928 929281411 499192249 64586448 295465934 617960391 668375942 282615843 380296857 174431114 502788699 369241262 337583136 741861354 715247756 768519039 694107412 932951139 18727789 978812853 858071002 465949724 88269465 515855910 827661746 615089229 781534603 999704152 946376622 714739922 272265176 475700132 836626556 430276443 786610703 690902309 599176630 287596400 555156450 110253405 272524860 784556152 412586131 518493673 395150168 580612328 206104785 224483847 501185807 606477259 669292506 923645338 397839594 704617076 31954190 279812317 439094785 608898496 699566512 523394357 279519780 385061212 887013915 401458081 548899011 307909292 961226218 454575448 547728076 133500160 45290749 195232094 445086077 390026408 769214122 147166508 557701888 589202047 966160999 865519179 589867822 567940262 131075289 548695295 615688882 146734063 94068340 433972895 406939611 511218085 319519042 105992787 976864818 54020998 960784615 381809005 37958465 423100160 48900101 409701630 323793761 607462518 814140633 698219758 763175412 91707719 346361574 374901833 350922626 483280922 305388172 580826064 237758572 157286647 81223042 575796879 643785989 109607069 872452392 320985899 52736594 48080381 925016019 979885398 795921264 969807353 525407753 680676310 665725412 879985209 835098629 862946438 956969094 111075158 998250065 649966709 785271426 18486560 529707630 556027811 980094807 798187560 683314429 263333935 149150700 407711249 787477149 737255142 42194102 149145346 926655628 510110994 80013404 177275316 619723254 729793605 513983194 343479043 475776808 740261343 337523913 655658626 850899309 386427071 980947662 971541984 491363763 239214269 275875256 456464343 590406629 359930055 327314439 647645337 519133803 978422070 104914943 143787196 621801724 403381515 500319242 43559456 218616415 966383826 590276239 668880873 980742783 850948754 449962162 100456071 243244555 504801339 432053267 21040216 766221066 751505854 897806806 721642234 757878564 343726211 540748145 492149989 45190882 191404108 933981618 713343381 10509569 410261621 357869200 386260931 933418528 462937123 594881259 502954495 166502245 753648026 615848311 167917299 793849800 324374944 870048071 185182212 531018881 731929971 349536929 538110975 409947187 291643475 724735581 707703501 769570248 824958426 694147065 718692399 927017259 650053376 479859064 662143262 216105187 846444221 156223470 714831466 679491089 666764739 449952565 42779129 750819674 300141644 79696802 260045060 108151058 239775517 335087803 4286802 12245868 860378626 7952019 233770248 321855846 373877651 359653276 233710689 240661445 12591221 130156543 753378717 93999847 402401881 553957587 618982782 977539858 906314717 695381752 586679498 279376918 487517116 197224553 455781390 263008892 392466992 20307770 500730746 910835044 655697392 771740636 411141068 859682676 382181414 823690907 679528621 252317573 278346765 74202701 456481237 408314123 677354242 718635754 978443944 737060314 962961641 787595653 760716415 888401063 193837925 168580848 388832566 66147124 893936105 81420427 752525136 902821062 896107551 920749081 420793304 562163681 284243330 967192544 226025642 244686073 833258345 501446479 324413602 322051582 309072500 819289590 547506692 624897598 493358978 360890838 251969316 208649033 500648153 119096845 134132459 588308034 692778667 13094341 934022186 217813149 119271446 524186758 789136297 209899331 722149980 360712539 289344563 733559899 546233742 598176511 848484368 977279040 921608143 147619436 439079670 343866149 337884923 460429753 26780043 474321183 285194688 429554797 988523562 734719867 520155863 253221926 368536854 371031304 798059666 219588914 382055906 50652521 210222885 464702071 860072135 871078110 815778560 813412466 700823847 944713407 511337538 602430078 515311781 466311305 433818774 824905445 118343340 411850002 88724786 449660715 732463676 532229496 637472535 805428589 591648193 354723659 116820859 57545771 451602564 848425820 614431202 49448830 702689865 830034314 471759082 305009060 450685262 915002214 320173913 556118501 371054637 438489389 354912 236053410 741280152 450551705 935358797 363873475 497289603 525198400 706353404 142650484 156448699 294244473 121592743 798396073 651070345 527165895 446202267 527487174 326221419 412209896 184389814 643522677 768512662 328703721 479139116 859379850 643687900 93211472 529073831 254528666 486046754 325202483 421887562 16210708 572073129 947940234 307277066 558168639 369362144 257156892 658359741 480245158 485338018 92450945 148205054 23264482 537429219 148083236 830854557 213300468 637831099 66493974 611718751 769636753 442268243 538665865 815514255 626481316 321414196 815479391 779946126 77325305 816367647 499460620 918180295 833087540 213392851 903882608 128878773 428414458 394854216 420811457 640718651 963637702 474714009 830444600 572131188 735730515 616182671 942147725 538840877 339083538 524541153 405431142 764480155 955186711 895372124 996377647 854340684 567918250 932487554 956520344 761208599 460391001 831649425 869660073 182001208 684753024 482816132 210009727 755710368 834812174 153501610 839025667 210782749 526608832 942240560 328475412 353900382 714744349 153934207 98595574 911989426 341272614 872989744 215763813 996973177 901281430 482178287 678721113 630519895 126843691 425747265 494512407 652913732 930970090 140305169 663376287 687557050 425946852 663281402 759450360 867624833 437081071 37480959 509424889 284033172 705942350 627551151 447556715 911713891 245026183 210937568 219541193 364810325 810088028 529387341 266735259 782185601 936638790 687017296 392967459 307194105 736229655 162042093 512975898 852476176 368680925 530343762 575275313 328090881 222004429 690406811 250754652 303493517 259229188 34127062 502676224 661926275 449279094 570711940 307985157 384263717 873503050 673200968 227137822 927346099 662755187 121565236 510970531 884327663 948877842 357274002 65539853 319360389 900938144 904665918 373985959 532369791 597246716 677328891 187364909 867326232 199814814 944470162 845129935 241685149 685200909 878607883 934817507 228127210 71218748 62323917 380783172 136094535 846365702 350486935 345331822 746989003 114466818 729622447 714878141 256080585 534487915 223113268 624847617 389129422 408519462 793399819 206396811 280833957 372460676 30014761 313619390 919037976 237217697 18469429 10127797 533907733 883925627 8682300 429366875 511569489 897925470 829900595 572050960 77629622 658304433 267125843 206821607 965769738 577957199 242009120 184103996 658975201 73128445 741547131 331538146 638797570 532873856 454547569 738467298 689201050 810383588 684802707 564891622 80306891 193174986 149365772 785430527 769554094 326906992 998045828 142243687 702242330 386074035 834470787 472324014 552268282 1967804 860566524 137474612 402618997 924399108 196214269 214497396 893438711 424787004 68213536 517837938 378922542 108905213 79453947 394289313 684290464 754421063 757806069 988238328 789582284 247526955 693059481 573118002 746736123 893988712 687806499 140104654 425151300 365064239 291993099 193423927 741372150 398849282 847105122 309154798 808787382 513679967 712612927 434323714 265797358 98469386 940000903 61457412 216601524 449844541 690110765 945347801 838278902 468243634 588378826 852529389 214167912 852418471 589189887 994242736 345196381 180970073 433098342 988953985 789071895 957700570 849824767 80724917 603546768 18303708 783741214 318930241 394697192 17447721 125415961 760093446 106956197 161461212 545490187 262769394 698774324 487956664 753529033 983024895 333176055 852299865 283404873 456447213 131970519 861785990 617837858 790680455 937933245 756545181 470246887 71592062 418261881 903976110 858794590 209759067 212222667 60014651 114078604 363659581 438460550 238616050 500818101 592077500 66131495 774688554 579659349 824930139 162890635 491615242 116082416 228112367 299457282 516555977 244910636 301633329 971757538 970789114 510422598 631405683 808492169 785040891 189776683 733423303 272232307 387612484 835648925 950393494 75525830 45743562 495638465 312700191 68457311 934533542 745840949 445902200 977394434 475159882 988428185 655867676 344282659 858600010 305763488 715508188 183566503 723085912 875965195 135634558 782178471 629847319 290536237 711721260 372939147 599325854 940842361 480284639 731340595 768714992 142809193 403749290 387556261 225867169 624925878 356008260 914409602 118928407 859084538 929156282 30385455 927015955 780750521 623165403 75059839 907366043 312210116 296625505 924614166 458981696 332622855 670726074 783663554 295783442 628091719 77091626 23798045 5000022 407197063 825573290 192379766 745502831 527149756 34145123 215476867 354298814 734062425 486778205 427781725 909813634 868547565 898050152 379129060 929820983 776594444 511782465 178783054 209361323 499313874 62027457 424995411 424388854 162919599 609128263 42176844 896720471 884634526 416466648 958655065 969645942 139274260 214849430 386304838 298805838 414305359 867042400 26550709 700349613 754366436 286710436 526172467 338326149 585467125 872954233 749899271 798358368 715684889 561931608 70283025 598326644 736745800 332466112 92566684 907785547 749205195 790224543 555127044 798872854 836011525 118688253 324659662 683347784 923061609 547808432 611394278 354922556 927974685 930645303 730964910 35218933 385933660 324294026 7922590 886177748 806579249 955841208 694907892 253156786 483870474 43219196 586002620 571022076 742991722 415046855 831564571 149662080 531522091 692288290 368734851 231813211 509423848 343181447 105218262 313331226 460101035 962163455 256848740 630265644 61457602 290134274 66857436 887921235 610309170 946392854 832723195 209830124 959136326 947199389 703929115 855453447 6180250 195766433 723691565 713351683 301590775 510799895 332392486 411920975 309107801 731494226 988830390 483941545 654085783 425641429 607099562 217750255 154514763 213406601 373091792 323754067 598707664 999043877 821380208 678489786 6520764 276133961 374386724 17657910 724189764 595910823 84443070 893160634 130433182 259945666 27617013 995500312 770642115 417630456 374367996 634120936 459014324 173647161 135154608 788457605 229752649 562193013 227057971 659487352 327816832 36483070 686853820 915508801 80810837 122757447 519968287 505327792 271954029 279792276 915736929 971373453 194796857 150059346 696124322 269259036 921230189 58626912 699991574 391662271 333524554 474699848 685877783 726665721 591459819 553870002 635310790 597870851 266703079 746028872 215277064 953076485 284425227 175632213 69854905 448900164 776535894 62603195 416568849 294243765 806720319 393020535 688068798 616967049 866439001 506598365 916555033 895571901 864968084 151308622 609964216 729702855 763892780 979912063 179807862 413643879 754016458 155916080 836805545 33154316 504356204 522567463 100265694 887894413 963936247 185187446 343667803 684759102 120303203 927359872 879039428 80068675 10317583 966047168 513599082 218564726 827189687 432034589 146135482 635380318 109840444 80894013 127995126 483764806 886573608 306613298 121678868 448415 152835895 536024829 128015927 266439204 613794340 250180726 118310077 950695485 444711899 734313168 799868225 145269753 85188835 524609872 82746649 52688455 253496878 238552229 312581695 579698851 277749454 80314592 444009154 906937613 808950032 900182406 643529434 910644548 254965645 247574917 103684558 517937627 854884851 803876397 424297964 327086809 74710246 907615126 263170324 366034635 527151275 926436118 688288252 537391282 845037514 174018296 117515685 259769850 44459395 372077883 108252055 580012765 881475053 630997421 773163262 163192727 377661946 245482089 757679729 731021550 663572289 651335059 148749462 6817943 323415486 445547296 543940844 169687767 499778092 544194262 377364868 956198888 282245750 830020221 799777759 442044902 968569995 828765382 517092689 786389022 336732353 917607778 837131930 928750078 986274302 537450974 900511238 324882911 160326859 740264121 214632223 747150887 337410330 524132537 391292648 613524211 803568339 146538161 229814359 164102421 157770473 311074493 992440993 507995224 532459338 715126272 806139594 803619077 633745115 817924472 556863366 635624885 522829944 349768069 802730167 43875089 507138462 678533825 376110420 529390279 342914083 254976592 715797793 228178159 669127564 487147230 801810786 86887673 15544606 48563991 996856458 414370590 133591232 572787397 826392729 699076056 233805753 700440172 288761432 254791383 377812920 904775536 945834416 114949243 890983271 459726714 50533020 70647933 415328022 521926481 209774607 141680443 70249238 621592147 211537132 57564152 744307945 272106662 438246018 149164192 569002258 21808926 166746798 467018030 181378411 199130548 983035841 214975112 152325862 682828194 922198304 231642449 619075844 181576822 785500371 673526566 39270374 805164971 463415481 356943655 834022090 957820768 390424287 646361577 558031940 943055122 153453882 220713901 246340713 392793145 385832788 847038649 325505680 935657668 390649927 511939417 221889445 97447671 157401802 516346234 837428720 547124079 147931299 466909235 819446868 329814929 904872705 516149726 226850510 189744622 499304160 327365722 681486944 967581372 746299530 724332912 343805643 70359468 293373097 544543470 747206879 443535916 292317893 724220626 679361301 847178115 836339195 664472776 790162515 802014845 574045753 507557942 53025603 658072949 363157143 967091779 571973397 315734253 113407016 921477741 749170182 113934943 363446517 449488972 725835731 832734121 544214916 339126867 914979215 699640958 262364707 906977303 294506778 866392156 853647144 450274995 359995149 579985148 62049476 517914510 843461040 419785972 615525675 551885002 535714312 744339173 63814008 196541050 461721477 814541519 331433586 382680165 746575777 525079954 502472094 218328568 654877742 631531772 630949987 726240541 31308755 11950521 371835877 940938853 657666355 140443017 337351934 128055868 456664491 87369312 435738572 189757594 634789665 210910844 803612027 465968364 155174642 202266924 177366396 431865079 797708316 905358629 750453395 350324947 830668269 746947381 603451681 628684969 654896587 919454258 633616548 961791209 402536469 170405704 21938438 957421228 895496362 329519571 746264156 587854308 624308227 572025718 843259261 46261064 149699515 571850182 101020382 759824969 428911366 234168578 502175750 548234791 452808452 639118916 717157996 460590226 869096335 851720714 209090592 301802506 860405706 867727600 340675535 207851580 541510510 156393838 152147060 850198722 191706681 891846562 706665961 359941519 3123069 575558030 494951851 140696069 561271107 331757915 664841201 596762402 651727966 493119774 813971325 484704743 611292681 710280701 638308144 22137410 890777337 170251475 605969181 228262510 28315846 251016582 631979854 278020243 612545248 36157901 643234778 764307329 750181536 243578908 867608389 112273372 292028912 115424910 916505743 18549892 556132439 34121043 87779199 605180300 605164857 751779458 262697343 457742932 573755985 392276196 418108701 698333757 961658512 512096270 247291321 598554358 980661260 190014576 193804338 640996972 97755466 102360958 245770522 762768415 192507007 354915800 702120512 761294548 820459959 688595214 905366480 872989766 161186563 396558992 80100996 268462988 257963267 620055562 783142469 522695749 500277889 460305267 816976099 655331 568010742 439257163 909592895 420459123 802662540 185653353 966619076 362808471 169521174 830803608 638704135 313697538 921672139 365066411 334768608 118702716 628531089 661546046 991919958 55666589 364798034 235090545 450384552 377223811 183221116 183855906 832436513 933833020 56353620 78505408 787518710 698357442 16498772 784912353 302840565 762484375 428522432 516250571 555608965 771727085 242605061 366216856 635100642 146891615 520106182 114594 486117175 657971114 92256706 187531913 793087672 337330818 44402528 265678145 838346842 518094216 243111234 863287054 941824405 121790175 325749762 306787206 295626606 869556271 311863401 962912079 817631359 221736743 752107616 817663378 893413119 940244186 599965274 807802512 537796064 857617559 427166695 605975158 945401440 997881237 323080097 231812456 222652102 937454221 201990209 833039437 276648309 508880633 752553991 449490416 255204048 598144155 364491101 146903656 224337514 808966999 771213012 63378658 344594161 304976485 899049437 734311572 959531151 606741646 310300196 540590668 537649067 155455854 749195679 54393358 317401282 304732982 353584237 172263411 664723020 472395081 219633263 500647467 19355360 868886704 196543398 262063073 554860937 951566611 343283627 574074082 615642361 420368782 917990991 366949844 770406352 823482761 974992185 458711297 986033909 964103990 723727729 3243377 633310096 723109090 812247248 916578901 551985563 477558381 88020581 41440195 272558174 659186336 647372664 662200209 426685118 525388981 289297492 680013959 135233856 20669102 895567999 703902062 667099058 80060814 124791528 724147662 16461137 702311535 302784037 744676118 921368301 272463434 575557998 374855160 867563608 526858064 688985412 477279762 61122394 709992821 940579267 278493901 285727985 642693287 193042310 194361049 694546889 257675850 55849301 645597243 95946916 651441952 638529701 536317932 573821300 536374490 305017887 139814858 518292030 447081673 374796919 679964261 890847314 411909607 495326239 834882076 845738586 517562658 581254597 699144633 466755838 861852884 735621305 647915682 326863991 462364848 154847013 228412836 810526879 102551298 858358885 43170480 781080755 724378455 408571273 657252292 899295811 588715987 226582797 193112326 129917111 111551582 799483906 892832469 889537163 328155673 900835801 850154564 496363187 108357809 220546318 813256078 732406480 780729992 424125441 67204667 592899596 538969703 554420782 926391844 395045784 915945650 599088005 137002161 345162187 358309870 285634759 373761410 646186992 150820430 84216275 897452322 69314665 720329810 932666263 487551435 743926648 456063450 600783270 803261588 112050206 202503132 423258682 270419112 186865227 111397964 150069216 434014507 60584886 370038866 130481988 238596654 508956729 76092985 628225023 153209338 556816735 858965357 736146378 707117403 148240559 789938194 494500719 639753698 108287602 784507958 578242903 497348314 587467364 834300196 891761231 432158222 480588425 440276017 526119375 729339959 622851928 332884408 623770971 35213727 763590083 686976774 352707463 379436935 230808105 379056382 170475417 819444993 633479291 766302654 658583195 746740742 988465199 730667669 948189718 410184287 563672535 908795406 201738395 342135070 682743458 542683857 208247594 625674376 768451634 340059287 405172445 482447825 918478970 289379740 350784436 654144510 634290631 279681433 780025882 971696127 178549104 935473382 956628289 120220011 316449331 501577575 522156855 159368545 804247456 159793140 6006205 24761409 218954547 878636683 226691845 348724120 609978433 412490414 13299973 828282511 654564697 864030493 213178428 411000739 114434171 60718672 530729437 400671532 958748232 929664790 866599341 942376487 531236993 981259142 593581474 463921480 586192666 943508412 547475743 704969580 382641165 486349466 401023327 703873372 133858111 122194865 130702244 410278393 108946895 707866626 250296167 69182637 165272435 911597168 220625773 607090725 133818755 734364515 277613428 933289740 442022340 63030726 394941561 634314227 917054547 463181520 205197649 274171357 909097673 688432102 289695165 368987314 239156187 321766147 74467422 939089742 498945987 43556838 954501843 168708958 17280195 804215897 220472167 903272436 934027389 808992016 526397160 909390234 848927712 414671461 105837866 984843370 450360935 816980634 671808417 643555274 305888182 359371517 759031438 725150105 322591037 315465337 30200939 215165808 627718992 676010830 801160064 616042678 15460554 666507603 163998883 237208796 785382215 916445968 734437725 463648227 784438483 487127327 957189465 656129652 725156956 199039919 945917755 897000274 234360642 684377285 978812336 327420573 756174754 354910327 419943982 943649489 979969720 760788298 833060399 607477542 179324488 519382336 449539943 517619439 403745636 495296883 333107896 762323984 151378477 983486448 254254243 868441203 140073421 254357335 458349457 142275103 82671246 740737875 744931217 559459172 271928204 246312920 500118921 581109536 528713524 385876601 157386086 567887997 95469551 530943005 143586682 887424405 299159907 19552984 993769395 41136953 952062827 846040682 625307017 470242950 669991070 133872857 211495399 524942690 227377340 559330852 592813383 572139439 518475415 954105321 291808732 824264258 86572907 918130669 976980776 688312820 343794125 128080571 652278399 830501924 814060415 469391480 137379248 845071590 672538820 999753008 1892647 194095817 150551613 655391409 252522129 953104939 136202908 312756241 309016363 940890653 342022262 85725934 426640460 302178127 241603409 784041568 80518030 994228222 369527314 632576696 589236041 457216706 907433352 382625379 255026454 742414174 98647528 77032607 747498577 996768974 55726521 469169950 392811369 824919370 196651813 538369636 42858109 380618435 186573116 571424178 299365788 497627067 444449299 525314831 485132546 222870836 324489655 710058865 620620093 880569230 62089093 84424165 272617632 22273754 371013696 285164022 832700282 89502856 817312249 525182745 890495197 156275930 777455292 618660393 166505046 777577977 765084342 793763462 366164999 811793219 764027741 689371671 849961902 785473241 66799357 21534549 229442974 107015804 206063266 684887011 515608176 601032319 509831200 119645636 333138703 997517559 546211228 357893317 444329227 879143081 183427839 496676820 891748497 369691847 161705087 259030835 418223993 824520892 406679942 786194562 573456997 826196942 667776769 308286952 505050933 208546973 117321294 200520668 326258354 40532210 283290625 555417801 511648080 629809045 637135961 460313441 875852720 843929628 848972419 158492576 823351147 567466112 612443982 743249152 547030519 964000684 14695455 155864255 445330813 940187001 579427987 853468360 553078960 266867290 740795282 354658205 442220188 232694563 671633620 685606896 630828830 823232234 414729757 823443939 485581299 342126082 797700047 662932919 818066197 742968449 131127551 398228136 315202185 236440565 449521323 85539721 530236508 531338485 989390684 433143245 574232386 32964930 48020844 460894304 495002747 267249498 44108117 39053330 535374377 138145476 701833903 113137844 274216850 858092780 42209294 768028626 602896698 930852669 592802879 140470015 422015165 459978335 219454589 558663260 677841213 668793437 97059495 977546758 509022995 512476589 135275977 515990467 565961473 895453099 288211724 121225218 98492856 482747610 404623201 7046344 254737363 62210849 379532852 846682051 386696516 12096569 328268379 224555287 977337274 991760102 206291643 272131993 634163717 639264482 363433764 56268395 657851265 510642013 746765608 37815747 904756852 391563733 539252765 733571309 161689589 716245349 453403657 290059101 805667977 345043831 784039192 774102090 540118014 847107786 879213165 846832735 550996212 794904827 230369198 301928270 489547483 404920026 510721594 865554514 623886218 362523438 390173012 270643867 878867350 238304013 807479697 803271988 710379586 421384836 938932873 146607784 764132997 559143169 683582741 452373006 520496612 372805510 125986219 910963010 77518391 574092458 589397423 746812210 236116478 374890531 515622790 313867105 160368518 160619769 746098556 933388326 601710533 437245050 12553901 764236901 184389289 952112205 309292025 159434641 604778869 537943605 572361940 422421336 71301511 763023971 913300825 190546711 722738663 545588610 505380435 937648756 491542438 795179887 271030 630032941 340436087 381250600 362576114 499047565 582133438 114916982 321446670 860181003 610160593 560229943 468369112 214691395 503213020 808902106 900655225 707079547 852330149 828045891 827114680 394591076 844110740 899396183 281434994 578151867 543159573 539428873 208794858 629510247 921603951 396316096 141320852 954234427 90254727 49426515 881823676 608667727 619894126 1877543 160411671 484268510 932810088 7295138 744602485 146368709 629128496 45404903 851888102 800339765 897422366 820637812 113027049 764795939 77700439 53798066 294598154 407937787 121749235 664713981 170910281 186906431 756671643 136472153 201918582 847777839 700428152 124982051 113755803 388773366 47445321 335186085 943896055 857522412 212984654 648730129 543583423 651492869 952649471 52942447 331586561 466349548 912247846 499309375 467460603 733449340 676011843 545505062 859528199 157752814 781903419 709276250 258355819 37712756 278345667 598246744 360308178 838987363 843268801 789771121 485025951 436771160 573517038 741896369 250968583 962427377 274723529 737496721 986089950 677795104 456340697 947002067 77512835 999066025 205440702 365099015 990688789 436073958 231615118 903441927 707009576 61897793 863504809 779457534 573022266 767382410 999812054 672866553 273343703 358698115 92117910 858130754 608649395 962588378 982467176 245992930 159959993 287765093 332062699 315078740 661504906 749741382 867161340 557388373 793916825 310959612 924743468 895869710 241943650 919539273 175411604 871057975 979944513 38933096 780103995 149769826 913943085 498212175 510533775 118367314 26584453 189444334 628029556 875014676 79505336 4132856 571958834 145123114 527474840 366551641 134041904 855492940 678223309 824401816 45437061 24487790 319097898 97540031 756753471 914680982 712292783 728191784 182451179 236428018 139308109 385636216 751239922 881161889 781360180 85614582 823303817 803460939 32672197 59513713 579229449 391604054 390844417 788570674 902775235 673528403 967591754 856316305 428165317 987781337 86224571 932155222 595198170 671879451 138371608 777413286 630437849 960957277 809418140 201242993 767152918 950641372 626900411 660720003 473898259 7656024 584101548 355401054 56282755 927378502 817129738 604250 204127537 368646241 902609791 222829021 611003591 362216107 25672330 222698254 631272262 978032120 41116822 508040777 426306013 344719688 924902175 472403095 616186021 307681726 555114463 911360305 700944277 718483281 200206535 134835617 57450256 118983401 777459156 774879003 384369577 170883439 803317811 519138910 337837711 199784433 567414803 830800838 920178484 990984493 266210102 159843272 872121744 137102515 564163046 426407934 666132499 279972751 848429295 120884875 571964006 958232991 926552642 611894354 398439885 876195795 130626687 745362277 680584575 185615621 422103651 223402958 140211510 434388814 860547785 726758241 316253020 812656505 739316135 680970791 279402193 745513754 813746047 137696949 740501860 596265271 24705107 682434439 864210180 681506151 649553199 816500175 920393107 225405055 555056332 244384926 380190904 352042468 752117349 779003819 897340137 775392468 546876980 878364974 903260503 635670247 488060020 922927818 2518341 119353272 678554715 773137941 344311176 750490837 231411146 975150404 458565368 474046766 760356725 737041703 493131922 747618621 507442093 20119370 209481724 246741497 563250748 492901326 445915781 695257224 793496093 220472459 322213773 590347363 762447658 927143207 560793241 339836091 321845141 805341510 598313018 778002212 571207007 639845193 884886612 313438867 761522627 318244686 579803487 860546514 702025601 200566516 259683373 973647902 283140740 80765917 410582865 701111282 272631131 57007621 892794094 928567521 636508987 811925432 306523079 732924411 774023061 864633946 553446806 126004216 388422802 112835417 965750818 805222755 517513532 224074543 142763002 58711741 901771323 635054904 798212459 721630721 654309763 205922653 481720938 293448310 263797313 859092021 742298152 162969004 714320847 625355656 485994409 823684699 320245950 490537815 462430947 641545174 480439206 126430805 775491975 176711777 829125002 117474637 359426783 980777349 8527451 970859561 936364174 631826633 753202684 516864693 649682165 940144106 406850452 953514846 430206290 931578346 504643610 503929223 735358882 567493161 301242296 28028939 240472023 6061087 483417624 239388368 510387 562869593 571337710 505165242 436137177 605471370 208900817 53655433 533309075 251886813 253681856 516394933 181686703 532622473 904108000 848306515 911036962 878627469 306301741 224913088 299684850 788491764 725905799 290807983 628699673 753682174 105766099 955440653 130397439 525947299 381290634 67112393 997811045 135023477 626877934 832560794 254910675 310134417 992973188 658533930 520054119 846251170 374339964 686343119 715501383 293388266 237239029 938315385 27032338 221768757 728050260 208174538 677197287 315608474 647468699 719182259 663293306 520112541 58729864 591740965 284018632 382997069 46081806 539142788 315236671 445113191 253029133 574385929 917457100 238924274 118579005 241068390 793979767 42293626 785002607 311752973 260612108 410225069 992258753 565441268 470373436 297243167 770649305 211798990 228070224 691272608 779513135 805156426 994475047 105799803 953569101 251347960 739445104 983755563 683833998 870039624 204407809 951752410 195099952 845649100 753242926 883379114 604838207 499759397 243956127 278013424 983428524 35288884 810186347 611021539 628798776 725686295 168437421 88278821 322739940 331260801 220773944 151066573 153925114 53675352 495685378 945960283 373776786 602711532 66768215 794401439 5974793 483051437 516422746 90004083 821098527 913333420 893214585 53241795 872365574 235833552 902870441 388474252 540337825 77528310 292882477 502821676 65671163 411411327 234125097 273349355 982815063 414093057 579365266 636245520 479731850 811169852 627330630 99645298 448243209 848535232 622018215 116441767 785551511 383305189 976613994 752281828 889441226 875622740 167329695 659493566 195436161 81819526 366495425 164208892 442264994 146030249 551860516 984095227 867423116 396964762 100117090 340357205 965047571 467669955 676403497 120436059 813110440 272238709 635646783 138116079 571439774 521080871 922710981 18317536 546545076 66799113 840465868 663559757 33184921 450965144 243620984 515210532 737321763 7239626 473993766 554862235 442560731 537719414 826889689 665710 247942759 786447416 541672421 723293456 469046929 103755183 209299641 786175077 304346322 971768522 77704659 246099668 440871960 144053449 200628678 657048855 289692147 744061065 64226761 64176045 41188380 386655261 916029653 800872369 591765573 607433180 270196968 550924820 385328137 634640481 692585813 686907302 495004699 872722225 404559235 7107392 784715701 618010828 863941787 487180940 469902122 804590605 663616842 938726407 275678220 240192465 261994913 897729393 595000116 361522652 440281264 966345099 245765127 237775637 920445790 793456683 22992153 633508311 462302085 279182163 439393214 768121354 299970390 945807075 118489127 58147333 24392380 307547897 284291918 785547312 124956670 127151764 125913012 87808626 339215363 867396699 373898729 26844691 831518534 658204442 753464858 582059442 84916242 651976873 834169031 310606790 154383561 576669830 170822394 863449872 506749113 975672558 261415837 600840768 26032964 477899454 114263714 916804654 942342526 2526768 948361007 670697224 142961782 900020541 278023729 114146927 454999764 880460606 344649465 894716540 670913869 72856200 380066447 911695847 797467524 448415367 161064965 35319255 717255745 533434708 864345076 553760843 681931639 129192090 392193469 692016838 632927553 949234567 195216207 19306037 683445647 89187279 32601522 114057480 736831690 258588363 685615177 436996538 802306932 481300017 994762222 336833301 474282911 156222473 744595835 966266009 137557438 766216872 378837066 550245790 402307594 683274756 120899208 239865913 36517442 881501089 570608834 500943716 874752342 521244651 222939772 771999724 423259357 169262204 52036894 338441457 895934368 766976442 781625528 628763490 45339506 542109643 760404836 805798929 786011484 230791043 182115138 175235983 384828326 359977625 626639224 526288772 565904629 340364457 222780551 328121192 204859816 816136695 745554615 194847445 253008302 356663154 779658227 561831999 988550726 27945427 443749664 846277254 912159987 99495483 786519975 760134962 480443374 380497350 881059902 42521883 997403466 801491116 170512400 800615749 508449322 737878819 400319325 146344843 671780954 384808613 207720741 314761250 346280118 65443400 902620877 262267820 525582802 300028203 919768931 410825156 850659346 338239670 464593692 978970980 698500733 538930094 275182865 312636961 838309394 838845584 184797490 594522261 247446986 782812044 958610488 709752343 645981143 823527866 933084726 206096854 558352212 275632962 397891092 518324573 877299204 322973604 694257172 598261861 117618892 450251531 415208655 973530304 671879633 545648007 148140964 252041285 987112915 113667158 683745562 46437187 714033703 742615922 248902263 211193041 479991602 957716723 522168584 642954242 721007484 555813907 949633126 632295740 517500218 465519406 473523534 84306040 387674092 315275829 20654162 728094108 492592996 709157815 502367217 90021601 302235243 450343230 417814254 646800923 947115672 25695866 665794007 978511272 695395952 589155395 3410178 389503184 655160987 878256230 588846866 765023613 818373757 601296625 210238655 531332163 915616418 911874772 509113074 311860538 960035294 778218126 726867071 477628878 448354414 369230059 454228836 582842404 490162225 292163465 888011838 695403227 660978293 294464680 484689425 16756364 178644001 23859664 245743378 9238242 876143407 219867479 371512950 27767952 32292765 976906259 50654191 605714308 123929663 781269660 854870729 997153063 310543724 837606746 622626375 262065134 309611839 30441950 237156936 600601773 17571858 396025083 443974876 468495474 336740583 426861193 752278100 99505237 336836580 500386767 834409440 765940841 820811339 631797665 34530499 756723836 319046196 918826434 138951694 253709845 496712523 755252559 210322570 535410101 272518635 759210236 285616739 462013989 230002874 67422132 959486197 171231784 252857937 81633118 910914509 496575516 975678471 284724301 411105324 940985934 21959967 329898289 639089110 204576137 229291834 804435208 274141006 249797164 18906657 470261239 992830840 664234421 987479139 49871301 875888931 22184953 511179913 628962817 793409274 184094125 780685793 455171687 437552849 111855594 713409163 766301003 290224870 518332241 979574266 935710139 691174337 220921682 111276165 391406996 836922168 22429435 803242127 185077002 916182779 400416676 260074453 107444945 234985999 107992062 387420475 606954349 350118666 99565683 249824448 547858139 585636739 337848861 541630906 434460354 207720600 343024044 326868765 42713408 823121760 90500356 582283206 354032455 667728018 44324620 402989786 445201847 268861392 782687678 532036982 306239195 234713700 226598639 90228883 258459121 118757403 57319516 44893606 28414567 414136532 273490101 662467509 20120588 935527669 858354885 376317429 316114310 490273932 335903347 930642558 729034840 929397626 27112854 663121760 884607219 873147994 375816021 548530608 204967333 386806561 570435756 62370850 137102314 717460861 972597898 319512682 144687556 977890397 143155255 311445320 354993495 783562624 906491843 660520076 18059086 248717281 557717207 711579709 477325174 337164734 411603325 428325255 192632285 883485303 736677495 669693450 718066524 54201370 419895595 550062016 619407307 490030049 963432425 159206735 734424175 415189183 277343525 734346576 774350862 25073231 203669769 39917362 459367679 338443301 872301457 604872055 443576888 757891698 412654925 264540765 400437098 889242258 649248389 154801050 543846599 243978073 620908225 933912471 734402949 834385111 661088941 181322352 749524619 267738236 589401899 262612571 141103894 155838437 273072833 430925686 383118468 143721004 523910867 727925549 209300837 354630609 71328219 610599941 731012483 886312422 42964990 199453443 537884618 56857510 408428103 407356617 278179899 582737069 919831031 1357952 312236731 286174032 864361508 260117537 222873512 475768210 274418318 697973927 229045520 736797355 729970193 210901109 109022699 667528049 623221989 536820528 241339441 15925334 192995360 758931236 900035002 985958912 791586810 298914202 699450537 561793599 633115250 750110826 150855522 629245368 552519814 701791967 744133721 918578275 887733027 933541516 150069783 968804705 514252472 90630314 938202466 449712431 345682477 525117599 742917922 95162930 791374569 822203194 546441724 691325666 410155793 271373978 342495977 495412481 135789784 332393482 395367088 478217529 552332131 234552030 901276617 447896294 639486322 447203341 377772765 376192353 226227157 409270935 233038663 606637843 642744491 410943724 676761620 447086864 383727602 490906399 150584208 467626348 302908963 631441797 699261756 650832067 176363027 120557311 51039067 317948581 388300869 984765403 360680711 107365963 295232801 424488963 880042573 253557233 178628529 795787888 569035231 199090098 930775032 205029985 775330415 588029893 522185842 40687241 76033294 845137902 516061179 391896512 113769537 527394459 203874862 495515234 217039919 799140240 515104378 715874518 377651089 292247793 807521712 408173933 315965944 279335494 378304484 375669254 798784708 819062811 746824785 509555786 221037810 604138876 916816009 668668948 753706636 280385864 84793993 656827040 594807353 771183851 29930987 741743498 145499699 770933911 876902119 813601843 896319250 813086672 176130912 127207558 650991140 267141408 53732763 981556042 525001551 380804174 604750208 698461039 246534984 72324877 82981213 297531156 928317833 692955048 37342805 275700331 379487111 772910721 928312483 168303885 790204382 309383459 709426776 334724523 940297481 825598801 31503142 405904246 724732156 63411268 414102456 317156359 34468848 517390350 750184725 770619397 470521165 410561547 81297933 411110327 630125811 214708803 79820094 27092249 100590846 84472502 183938100 159988820 193435374 136864558 795060681 348510878 462669631 765154065 30789855 971152288 700468215 458221983 989265404 248034924 189730348 815970716 777748967 483170753 942095521 623722501 781048551 820249050 418267111 564794867 872968255 535837449 644279782 109827697 398896125 831556847 301765857 909446618 258675404 143946139 894405695 422991423 932806564 976313180 258791373 102480390 317876998 698121107 219990908 588091702 87546749 318268751 503718456 66236181 494078287 564642656 741729971 558795236 880677221 647272721 826062887 101118031 734833906 327699736 858168637 866956015 787559000 217228992 779548712 407322893 871200722 904662241 957163632 951929872 249106826 427194716 373242978 841738309 316172079 218093472 124278475 294090822 816713652 438913948 167870385 657351753 22930089 603793959 507000398 187121406 704595558 833680798 101334125 260084594 381815103 667947399 603690726 865051960 804849156 50737964 482974152 935261621 65075181 666326723 467956379 966120529 729353973 92415257 119089373 96107814 740303773 349859125 745935761 960532746 769234685 428539945 531439694 30661944 389555200 542750982 932276807 842057118 497657959 530561472 141629341 465011356 366098230 942101784 388018263 875600651 870197155 92742933 445180799 950780895 383801856 402466925 193488764 484373492 771190108 703743035 18092097 118715781 435392636 398378683 910917872 891197814 720046460 362618416 299740731 505248871 482876981 685010369 609394863 174170170 353356867 736343386 701041318 384498467 591193001 23717403 980129196 265907317 255291214 205337955 753182814 929553544 740185589 505925954 273888767 421610943 252925511 545943007 979309693 755921030 583107538 413493582 38798649 640219569 709040042 996386881 774084032 868026897 405013553 754730986 937140822 110064895 806972672 922008417 870034150 339636510 949564304 986450885 284367478 723073071 201567587 749061147 87993501 262121748 754668910 1442276 346363836 845947991 20466144 515891812 109197511 598709979 906636341 442899441 640104954 346203367 266226833 204135202 592820729 697034920 629416037 256510897 845750227 135783834 393551101 593079045 838235937 42687516 753670469 52576231 616311246 407002147 141645283 119843927 807057067 40754915 493665366 629047573 673194044 141591968 288123517 826603155 53669502 481393634 941094693 517952320 8004004 378628722 587411462 356764692 395433839 397165104 572684175 197624891 573249150 957050494 321339337 682311322 312777970 654862420 714250073 824759994 721382810 118001978 430161919 84364052 432433416 511374135 893888682 864658483 635900162 442012943 940609979 187362369 108987930 678127486 656607561 503447561 1716168 684224576 625061258 737465362 594798090 8854006 337929808 237218035 900511268 645421636 216211046 392385877 374624871 990504437 896794013 449846350 1186480 528406493 242050790 636079937 613677674 260201046 270417617 751690953 770119832 938028616 717756465 903618718 15962495 352099201 728435751 309523596 698067096 82040240 38057915 524213270 422360827 252997895 894733868 124030439 161194383 377812596 549846706 935313758 652926203 244631678 607480420 580130765 142749044 258564222 871368813 291491327 201763130 537559350 796072502 998383104 231539569 118987280 234591031 822808395 441977978 513899712 785692684 860002709 374957525 958119564 538935929 463145568 542490481 882676662 754693078 964004714 934155369 130254150 339118469 987985310 841128767 683807031 554272159 414722945 926360425 928264007 68384062 630275839 939600750 315853651 155814354 792371924 866223504 869485711 309067285 164857342 248955017 160666314 804616974 398559578 492736012 591785420 768783368 999543431 958794827 350132919 318743148 996432973 788091744 966844560 116424980 722986524 766825580 509580463 892323033 113810782 585362658 369583914 819097665 508616919 376444568 861592112 566462089 139513651 390351488 937097935 104044727 968857768 218963612 140074402 409424066 110273610 785656714 366030324 183081237 736826890 900191332 100738689 813500704 247680107 140732188 104715851 535659221 612728994 513104763 207803349 143911653 228682620 298539305 43424211 756886012 365686016 185408744 478610481 796016220 729490017 306570386 215875427 762512639 501316953 680711982 749088767 133618739 876543739 556553766 301272057 673029987 793701348 236650107 267983044 461531718 269721129 582982818 958664647 789397818 762163653 746593949 148889126 187398476 692234378 237728014 519645548 156416375 880314642 72847384 210156662 275772317 938341119 31317384 882732488 495909020 243249636 247883662 417702546 337614536 154830806 413404700 859144712 175900560 41280155 600259081 794127048 174914285 430811308 367190383 947035374 835418948 161039664 637641387 712366761 898048624 108316339 696365401 670858568 765170041 182920006 552145566 682472790 243401098 465602080 898518137 240765959 744241561 786854582 777669224 859279272 555285811 628413582 201572220 916947224 388846306 845107164 742847736 880257558 129947843 240895423 221540839 271027498 833477035 32060291 911791974 902612085 719716004 692447772 425496308 320746423 472554265 435030632 76558830 695139870 139325301 290408308 40711380 873136963 129167875 247456620 43074709 582605937 124500467 928164884 102364123 981478489 376260544 278465093 722116230 474872693 619343252 789785037 525906611 946122439 528041388 932408337 579275606 680715957 478468668 522686639 917009356 767866801 412419826 389905297 592821431 146797144 316115250 596603211 866760536 616062365 755355256 415400113 193594688 862466396 321489919 414133406 107249193 100181259 287027868 512837017 771854910 968445455 151077044 368859451 196378572 996627183 116366874 919856865 533952260 473118336 618745344 937464276 886215393 286041579 352705208 330169524 100820355 825543236 876481779 67101149 144534791 459287404 152956443 708380166 565779273 156801580 250017327 886033368 194644715 888077632 758541342 98787416 158571535 826665266 171925105 81687387 693598087 309721456 629178845 118820698 433970417 349253150 94073159 430707511 922455152 110659227 922821836 396494938 285372745 459544970 405338987 451807917 631662693 49157977 781997901 373481173 220107502 708624423 204808909 502758857 790189520 863682008 206307896 283551960 679220879 766605324 230551664 339619515 886140974 820750017 948463234 569153056 433634644 276061990 5330672 239786231 42027707 629393565 70253858 719156997 386198893 962547656 147713080 302387355 128370296 763197670 782674139 482076812 276849855 741295033 576093169 236636812 445149416 744875657 447158443 495753338 168491852 876298273 685449980 629642442 492904181 979499776 415423978 778292801 953836076 860932021 16693668 3852784 901826599 474112737 508893821 308354667 892018243 442458852 346903350 845052340 612988211 635809972 460916016 8161351 821808922 909575931 32080258 496365810 338030812 512411275 394398658 433957303 420358109 785147981 559950666 710495232 43600773 988755642 38635516 543593560 229225080 245815411 174220326 936840152 763656329 607264000 860304626 142323056 182425995 351307708 131805363 144510568 203332933 261705086 996428815 575253059 197863595 394832794 872622073 354992739 107524739 476405363 378491258 804417844 786816148 27713182 384493471 678363555 104462459 42025943 955825054 576039346 98656992 510318571 43899171 200769267 664235717 34202534 971663081 270247888 220592836 244364236 845889208 279917966 523702785 716667956 276393732 156145684 673316551 980377921 314291696 589475665 707976965 225168229 277220146 873190665 65297918 298815939 929479749 338514121 457468246 403275211 7523298 277236589 733965741 996020961 877858317 321804715 737581066 327358731 489627691 337809677 732301614 803472692 816771826 44451677 789358016 235896036 347829455 214584379 560102922 302762249 277108589 373604145 755685486 750641292 529280635 369211848 744449276 239887 65643152 903161597 241138702 412037132 679718948 423181787 699332573 916946149 801760372 423840802 746815515 226267011 937082260 710404736 394618900 782890631 724766861 691812210 355832314 261561735 239675673 297751547 274463304 854586890 513804513 185551368 202662516 330592104 771271157 291105448 444490612 983455742 999160010 39917042 97580642 790483808 325280944 799441769 731699015 576283487 571594781 6698024 195907229 883368006 245270049 141009086 825423800 77100427 16867436 814899517 547923911 815944635 167639300 425458535 413398173 725606949 718469093 28656381 705181143 652791129 860730148 820295133 921545047 329981721 166924033 937422105 475056332 831082689 429184126 76017634 689872248 792244238 889386728 587144720 416824831 110713222 360729869 540115795 948704376 286617724 707758259 8219936 923626342 932899354 786851110 778775583 879318195 872669427 759949645 241204257 320914242 305518791 613525782 63883483 215298175 94261161 807171047 225916558 386549632 649785279 152788994 174666701 892694856 782715201 950119408 974002923 94413769 773608374 925419324 153435478 990054241 374607370 635539382 194821948 541201367 644651722 2080149 702538986 345315502 318335146 632904048 454621848 805614365 587776113 139396370 172682648 289276964 477712587 785166787 270841892 945777493 131017619 625916466 135329645 560215213 581519894 241030324 622601286 764477720 713001623 235836775 999080006 859816446 482653161 660095970 421183034 73844046 523655129 562950742 28712413 383424299 214734735 442907719 420783923 211928387 399660784 116593781 18713528 24983660 337343489 835734526 666516196 89747494 39029015 545815372 971947600 410457952 371502164 101995516 424046088 963612119 165130982 289167263 599084625 675386048 641678736 861370760 810566816 298023980 804170345 943342701 629002229 256201512 940021559 454956454 329049696 550452994 97977611 755570405 4125178 47577019 178657464 138690512 150096785 387039379 427207047 654306330 242771686 151253321 444942981 638040603 730580386 991363899 38729270 370958975 824961303 552977897 981209372 138656233 902710665 431115450 160745169 35173773 212122620 890738010 356118072 361506442 371234381 986614211 348267516 320164675 696172844 68182070 580274480 394108627 504663112 80582000 127679900 215029837 229312991 141857973 861789840 782007276 261198051 118029542 44644238 591970987 410860527 837910826 712042371 861580257 459702305 335493732 962158874 284398158 553551474 117089415 660150343 963924087 176778643 656563722 524492325 322225937 254436113 662090711 554298971 617937539 621810836 139815584 844151754 798660291 982991833 923734496 30180208 751134149 23995736 701432035 715680595 638636271 562907744 794379156 412016700 75484430 667857306 961395469 481019127 647083028 226472651 546171697 272719318 954888783 237029347 59211150 768197468 486808618 635761830 404280557 496642588 277688517 278696994 436563820 611965869 682382857 965475334 431374645 238838929 185218633 673271076 858400955 412664304 25459408 871607302 697448414 620362568 701499344 938991447 397570562 161063609 492484792 423415500 68648294 403787112 224393747 974413073 531627244 670713383 807438283 651201341 846357421 42073582 737325480 910950130 519317454 833721736 560175027 856659529 794563752 932640065 842763057 714280449 393728042 403962395 418223125 435223512 436931471 580136064 48678216 289257587 228583180 469402318 965534147 880652579 254119509 192922456 949438128 597691350 973799715 283102230 788070942 596606479 986149968 858707039 946183765 317792523 237975249 454487335 471327846 854878798 95358966 316428550 426182826 814450513 789582624 686749405 729577260 813365650 751788043 365694360 991326864 756735722 680273056 807545247 759053775 145866169 882636529 988378190 468229480 891659204 273843123 526710878 168316405 947498738 940186616 581629085 858054732 15120735 483530519 726614218 421244461 220443517 10017785 275377488 294367220 665017904 114444199 636615106 445901223 202751091 502558696 687327360 758809687 590822165 907520380 340231959 385822096 182191427 819961483 624959571 925809538 186250895 9188106 403103085 464477704 212252567 830557624 814436233 810309341 816713169 151035208 513003092 379496932 263288682 693940551 516859049 850949235 356490923 498157791 4240947 253446384 572785185 103884347 258156246 830219633 930431112 557124947 365643989 730200371 600624776 187999083 913913729 286856045 60125566 253408063 61031450 813641353 572580858 548698657 65658884 362862632 448979470 533320405 115299583 915680849 889131277 747552037 18778788 851440313 181371141 944655762 916578500 532649831 258025412 182282739 742398161 210162342 719193840 690160129 366455801 293801215 195078743 197535119 416142632 314904427 319075648 933518695 918986646 383498705 847303560 577031775 801343635 17303474 60758447 782233756 688544601 849617721 254108457 572591737 492689680 714980304 424035268 599742862 37124163 794219756 121460420 92221203 43738005 782082137 770575145 353825650 127222662 439166236 97906179 201319959 528517660 837203097 81209757 688279738 854324477 928374433 428262114 156867623 651337470 330158553 128889425 888928700 443701443 792511658 515075116 868128856 166296024 776846909 809748319 547153756 33121284 208319856 381356659 904792285 692553702 944194686 678079401 395277626 772224452 703903834 224171963 945068614 645813626 345804690 500356230 839091799 286080555 908177982 541499360 543088006 741576911 449780123 698444929 275465919 667380940 134120306 818780504 932674531 714413847 195088518 174151538 742926900 470223913 807648256 656421840 390933119 376938395 73258178 203826000 885334065 169962710 868685248 916998328 398823746 88576602 799978159 97158724 966394611 646056098 697784189 568254968 774676708 154891169 990205919 197751359 695711941 297436009 233332360 907506687 993253078 541504109 444457514 756341721 317294664 931767969 160369268 633191620 331292741 656182265 789708471 853013438 565335825 644728018 563465876 367651145 577207886 718944232 903867217 373923461 952858467 700030071 927479491 689938737 177381643 364956685 91283291 614799173 869163362 947849022 578067302 328224995 784110916 787188544 301433857 873542211 390630071 576260700 509865375 153356441 804353430 643593448 378494416 246018605 286258299 146013358 33660573 831614264 789456646 21807262 588019417 931474979 738954251 910099660 540612687 515717738 263120042 123620266 990354982 502403771 277731023 716774987 83798977 133906928 356146758 850239164 454216920 273429677 780867106 515681979 751881516 787051544 904435376 503728491 988293338 405986092 295943766 151143854 237775341 137055393 39170102 532291490 303422209 142160271 517227337 702604541 292472880 582769794 479233139 749450152 653646995 925553238 678235243 829275401 348629063 11192274 59861476 120351632 145388600 180528031 123865741 119163336 545948233 105787501 305621895 851555410 753838651 693559515 300969995 667992 475909830 210285488 475375565 904942968 776901693 694392292 956172553 99077888 157077882 351192603 909933847 795492115 184127317 21365715 886766697 47984555 40357359 599496877 957548062 783533581 794352503 90030891 288945866 707972889 79981085 262797789 380418061 561516667 894101396 170833127 806273887 899677715 192482961 163223773 192160935 322380791 629278759 890343707 305159961 546512159 172276364 927915179 870342133 295610917 295235264 685387988 171605753 275223550 353047738 246888339 901712362 824595813 31792868 371454887 920973599 123877514 959213907 311624755 969645567 366196534 400995825 455175713 320510294 301697325 427670015 939671988 51763323 513760792 901442532 799971853 911229250 480673895 268398447 502008629 880179329 582517472 394311845 164084297 468441980 673806830 439652784 46696957 403558386 470091784 839038460 202641119 273756315 45074137 383372735 348838339 321435252 50551824 18609 321743130 423855137 713332065 867499303 899045495 844104452 846093432 710927217 83273204 892418023 201363566 489673061 116695635 425572021 393761183 298698813 474857184 244141020 723796591 695879278 775407530 338567122 467648634 833895250 131595219 16663573 343864392 80101001 428980192 208164012 682926813 437138064 256603355 985151348 735988690 135942239 634814033 615173234 903085877 756225604 270253213 56237235 869406454 14427182 615670350 216565866 191420623 289388807 763397234 897918675 185754668 152399671 308325479 159234572 345988893 825072248 989027638 721945399 748183735 607664581 576711599 516722140 147033947 216630571 306227628 951809181 383139324 91429764 808181643 430877064 778553 603484174 714183735 542459945 213172237 179473300 557012406 916464377 441173372 399748133 197444026 385086068 5846947 320975849 931733488 461349121 292310973 627473888 407949452 120027592 147398303 61579686 695694660 594793584 197357955 996909298 34623163 969834704 454461811 145885553 70734461 963236709 914884258 117805774 724314204 476052419 414715342 947170518 560250254 944647043 217328901 605689925 323041244 289076224 985004146 125932503 466178187 117097009 556575334 764846991 812949623 109159980 477353430 801527371 961499593 588371478 39831739 234616864 840724617 890177523 552596552 390776665 196467701 731934269 853807910 17551297 513546282 245992835 132394823 183604913 519465217 654227118 798799171 621130106 903694749 349554068 109563241 46306989 444577951 565924573 148060097 278269696 594110414 35043491 722806052 18698905 934696049 329736227 440645517 450221289 405064738 794054958 636641796 995534383 126345941 85189712 420147869 972736046 308219333 601844534 250726060 131207687 595376794 665593761 57853880 681188767 932765511 436337315 656998359 90690249 557843516 852913543 933979567 988732971 260101343 69322986 185236870 754427056 336377428 901493538 883028656 56429998 46317324 507403309 705428075 865115843 788074966 392160374 491130260 510305915 491249821 582798864 151837482 476900764 52298633 840079569 840995999 239352828 202101518 107607511 350207274 990146039 669991071 8828925 868443430 697618095 238421362 438636299 318011769 188617692 989339901 495493489 375248217 418285200 796651517 445991143 965686087 163573955 918664649 914200557 858456637 494469507 579426990 568709472 736261113 323712731 35943885 613614974 762499390 55852202 635153396 705330408 92065920 125618801 653515126 936390391 466547919 745120722 744259652 665459516 779653659 60165435 467024670 255122175 515123654 968482471 896510208 788167730 786150316 580213313 343131829 940437740 449418618 713074803 503289971 490839649 674527403 898741551 199815326 238340994 586600062 394389165 570069867 632248495 807618333 308490100 865337705 262548746 999877810 502848998 294362833 89685626 184756344 214046965 623410339 155036239 95216592 90996683 400891074 618071481 935102022 18617372 530484655 976377610 224413806 774768405 960580840 849116941 431345634 842698247 670737729 510418450 640148638 240565792 282954392 601055389 748123817 627766935 981821882 696097356 719902764 351975667 917295201 908484023 65551352 278808354 846155907 936783147 776787165 996421923 282652469 594548335 981214683 196587056 854511408 186869744 141762405 921933906 237662573 621591799 42164003 219210976 397009197 330039771 296511483 95187154 139971787 973939797 975417714 863038426 244215723 62003312 715318471 134188132 101310344 700110322 316702071 25462347 731416177 366231385 965199968 374797851 758278922 498533722 188222474 979003670 350451657 408958238 373931301 961496088 546069003 793534399 735070218 593844055 991456522 583083377 60824664 71677610 158110462 100431573 429807763 643511209 983130787 469898791 751896333 247944592 584522475 831615442 661559686 522916512 264373342 463436292 702920542 889557450 652693233 372171584 868546064 166471341 447923146 244122470 757336677 920161379 58415502 735771963 553222574 116123688 636118872 587453860 881527244 456209643 164180658 596184579 536316420 695226434 623949294 379443960 885805004 463221058 672490322 868290977 710381390 845387711 135763989 839889326 49322148 89319510 869275074 953206725 29795291 993317673 547953144 295817991 975076823 582361962 789243443 543512571 676411885 676539871 769921329 576899876 769751787 125190944 547545579 79532138 71241445 359773757 627806865 884650372 244732750 431229286 493329440 154777473 620308705 777804512 651175314 491622864 245643912 315959644 265333064 357446022 757578338 871924535 318660234 283258016 357347400 498749502 799513026 459912974 527555936 55883892 952596845 194263932 466221628 112022113 665809241 967611224 114430207 673026261 12983565 432208440 408473585 710614983 404274059 558493780 107598870 513945720 186198200 994859643 343314376 262941818 497893559 712786958 435931716 808085693 750497537 269723935 496891566 279882287 917080856 291479502 407183457 901312611 337526916 843645366 920009607 393514650 562420640 490405793 90176432 50208222 98271631 157840806 718136157 199700561 468935491 974365831 626951369 266802644 781949866 516936652 2195723 221838524 346381618 131762205 2330890 99664441 484200369 54662450 53299086 971032857 969431932 751437094 391885448 258029097 83424735 689829568 958742872 361050234 513656967 303837132 141951712 124752101 532623290 431788696 237080835 985379140 550892473 408942906 94086148 669621139 932428030 442614148 366824388 561406544 814026100 148223310 317332890 377388919 284418401 865057779 93004265 416216390 399057599 395395482 896798746 178743098 344118897 481180206 312307590 49538970 94329227 580759726 403882713 493936120 486951408 722882877 433981931 397313220 612324456 26465294 677337781 42924693 578186756 265827764 654656723 739155076 169178207 264727436 765774811 209224783 779787696 810633788 650781082 758960194 721896753 599191943 705070950 306788457 17311495 811444215 638727813 179453621 72815730 527496635 6858272 239659643 796235466 987517014 877755194 46305858 345868331 731362774 903081052 634446225 908265582 459886502 818364987 195391353 877933087 441104154 300833039 283640309 786600502 824254308 526411697 878926454 427472357 697401330 456580693 56212797 394600315 78432544 341297048 612314681 510212044 184629196 768795179 401199774 721658865 599418350 852118976 333954003 746219349 266940750 66056121 985185062 490527586 885221766 126574321 879006322 958930554 619228277 631845704 103503057 715255513 127648245 813797623 971696390 804415130 180030351 806082109 771729909 844457611 291937294 863573306 505428397 133670443 919107467 827324614 414278330 289724217 674734098 181051031 486566243 832266882 723045039 714441688 543185701 367806631 945456317 581614503 183498084 717351168 532095537 876761647 427003548 365566249 71460075 497027306 640742102 886960158 757007200 534687900 471545751 510678789 752334320 169965702 917599506 240456367 27253810 986434349 945211972 834440186 401577260 316339142 23610920 419657919 22665472 759847519 93984661 554370796 892811298 82630728 53977851 774142798 636231688 24072817 330823673 572375257 245533187 797012723 725461841 982676200 933603628 707881271 762260656 416325776 96869288 544275863 475395699 51013876 570632696 627443319 904835114 600080825 291708209 610947380 677996557 646120777 678937998 608523020 766331589 392305499 5462040 409493182 342785561 212371505 359883326 148214452 610424135 889920513 294828761 259005835 194169912 913895545 635294899 359888320 157626612 482827033 586770179 305556202 265410626 301355990 314525692 632680776 540682259 227010009 546616242 935602803 685681397 216957502 688963377 338932580 35236865 818672831 253160558 642041620 677207708 728072504 360059350 173924901 2656361 217415872 991832795 81075102 367917504 570134976 160436534 508071241 51500553 898605706 335174341 985840262 204277745 57924469 674186917 422917061 788863956 229532007 127517891 116136840 689135350 789223529 165444012 450092023 207633386 709936669 796817911 468783017 667621090 268899480 430453469 377241505 747063755 771009840 826411257 679821865 915002906 377215724 486615753 797519681 366549283 954224854 993979574 903941907 478348202 31929110 663266263 147217514 30944756 808858863 61070591 730671614 345150100 87419770 85114480 387848378 422868470 414124711 970239198 687317264 299302101 542966359 176693431 652543444 178412632 794079707 176039488 628226267 664236723 828011144 140260641 914928805 211638420 46623530 645658567 397591088 157786956 661019855 490563431 244019377 787987460 266869676 776751425 135775847 818359102 235945583 567384705 649047440 803467497 996093158 168958078 905638333 392107043 236025694 713087271 2251052 331437305 277495038 557203985 885208175 207751299 379742245 561618915 928968130 846942257 149614049 502714142 393842186 318556540 536077549 478518220 479692983 968114553 811116579 117942454 763821295 793405135 698256646 491841781 820972935 217862650 237835499 116791259 442325778 766909623 551957835 669983515 830940875 675601400 780290068 682149711 99888996 1575877 947024871 925642451 415713161 750012461 833160253 135017064 438223605 683413962 467707923 309571497 785385089 108704734 57714018 324100605 633214943 640295224 672829219 313882111 906623070 850812176 210134325 315377874 650211375 757211241 439142624 765376741 219843624 142699600 37173216 236293673 882918059 158323545 874880420 23335509 562556309 30499085 348029587 137702708 901275304 412622031 114918045 338181593 712763112 783904117 164319635 552346231 756652660 373201565 923623611 486058794 396160825 785534445 913610289 580877659 305355127 409281983 72437121 50263894 99881340 948619881 993072742 100067561 94649806 976317113 370688996 800105854 948864302 560862239 810914976 597132810 989771226 578407214 715557887 687630797 528794359 380498 684564159 714087175 796603333 752333422 434942406 674874656 125731623 773495217 608360478 526885733 564108846 382507429 867636360 812775252 479420190 149780064 89363405 859807248 450859882 989292174 357752177 733780595 288100793 142396991 42359999 764161039 714022249 998636498 895880889 272970248 329980774 183106255 91982283 393566863 331925036 469838759 592081594 656968470 340284478 822004758 303548710 722654805 109053399 679055538 29686753 517349098 671569987 823604640 58553118 576649905 378651845 616054144 370091874 52172783 257223598 7254543 264494202 431279478 258109714 297219698 598217080 941934233 584469764 315433494 155835396 805660717 408623494 753088812 813307964 218013001 111069105 944729898 728962448 199974355 592916852 451976650 93442723 690820585 168763562 556462277 428847151 482326412 115125749 177589738 339475121 200611583 875632742 46965831 905481739 20105996 56202702 564444730 372924470 476689860 702140270 442749962 351880430 162742821 717306501 137149068 875854496 89154264 274764474 380885489 663139973 516072076 554225519 937106170 306800098 657921553 429905022 791031963 523497504 265894232 120108126 648041924 493286029 276947649 239370162 225265779 999358404 748672701 942839060 36163940 202082478 674571418 65070502 535933575 771517056 859021098 207756832 454376503 121019295 843311507 479499016 401671144 890100309 851979760 585467138 855797263 534189521 120387163 91220512 719120625 802205429 41068293 431313210 954448632 634796439 591665413 101734232 522385697 27847916 187287768 905796949 700116933 504176412 427312318 223555043 338813854 4846886 670931149 892696006 695643891 906882330 470655268 38039083 406658753 286486392 255311514 601386784 593181079 785526346 100328409 606233884 4883905 91034043 682367392 322816870 611719158 870322740 700370755 889198107 671685804 284161416 929828026 682749298 718697385 903177322 139634532 137271411 904196643 169425962 73683967 205391349 410478833 999589219 720775944 680457111 112411182 579248010 818105109 371994104 703304412 605275791 136036132 213169050 467349822 617805162 438457773 402995788 229723092 231592061 451709929 955005791 167550147 638131439 148877792 516060905 503595211 247438423 270680018 986460783 517128342 890075390 113611745 504771063 994703282 740796214 30478722 850242458 28045988 175541219 270816474 468451959 601262986 848631338 940797646 189777362 494094060 254124539 179987247 741904279 281081926 287797542 585974711 681010970 976553386 371260567 393216591 952503742 641700434 852005292 7333230 776294220 202620510 169533540 42924304 166877700 660845394 384911503 107812420 964101424 979466901 669303997 945008083 758564932 980773414 6208712 754043028 604358608 467722783 515896423 213628471 636470588 464710942 59683584 392122878 97611534 936665763 996674939 490866856 922637773 151840826 726586115 380048857 511012657 583963635 20995446 188578999 922208219 252085080 652588234 56325553 631187583 690206402 473621800 108891493 740627444 78886695 225159915 608430722 851933053 418423043 799142571 362586049 677923160 354690071 493935908 265610634 287160276 762365649 309638839 641785204 580034425 518630507 244592285 825864144 829560726 25065643 547422930 788289133 815916868 836508710 180287935 312943308 471060100 215038833 575569927 641580180 336002808 133455313 39471713 205392408 533575639 694993868 5788607 540720587 31425 332505223 496276388 333899763 854442532 926465598 191823187 223697857 287465162 319390451 441507003 934077487 443563407 923346689 567596970 228094433 615965079 253298849 264919861 951034919 918365256 895041135 892724692 760163243 769140506 761123780 418873603 659682021 244445310 881229464 628402657 773313955 754956790 479578335 141763379 247454894 674082766 723441536 216613826 673964356 447769582 25781450 199388207 987374462 411904762 256188684 148017766 749325199 266939673 320297393 846491310 812915735 687423394 572244521 500787883 260876308 247272512 223246637 631528179 28054866 663825046 578678082 267319371 302497070 589727645 816678905 399270559 778844958 860299860 260401088 979811958 871712818 954565135 465800986 41235982 887571451 500169790 585707068 14029651 291796971 80979834 487634141 853468416 447442734 841302912 50086294 299145902 651153982 216428506 54204188 265687862 736740278 428322228 767309415 580202412 777947337 930013331 942260500 391531097 517305672 372733732 909141893 637942503 285775909 723840229 525265821 587982511 117248238 727592995 724119642 241207813 259942790 599713211 474819586 840716552 58357495 310401896 145072715 469647467 850579574 924258964 484836089 909491042 103673242 36104776 659753804 828421374 88270976 27178372 161154605 935503141 170899671 562730684 494651741 213968141 848345502 527424012 733373247 246598609 378741822 593471862 13420701 6438922 577807318 591816188 654492726 7090666 56865676 426730803 821120420 831716219 247970199 69884444 200694739 55885771 806213882 103920976 946940174 322655857 238198161 182521961 923153687 171348233 388719975 753307322 272023678 940960344 475405015 572684644 663952236 547258122 696117110 343213824 240449152 103662700 882804243 246145085 378943971 162892175 18936068 994432491 899622798 450612300 203649416 229956887 23891896 210831638 193871932 433463615 584172497 220718434 391373569 52644768 425808257 295010611 374466753 348104091 392061102 391778421 766471180 715963655 554664589 977314485 790752418 613218630 936687895 828503152 912195094 729027958 361809915 272778821 313751802 379225220 228379364 519476777 696876505 463163217 956648612 443908948 693968968 587344035 263704930 774009175 339315711 11831016 236135918 395254584 124102636 595117247 987276882 428137858 878783946 682374274 687240955 672113147 720968003 99629970 498625683 436899569 7629389 885657000 633505690 589058910 750119710 63834005 523660708 423173969 571594973 177870558 31804031 85877113 37453083 729408918 446118673 985116476 432799421 840389310 307242560 649355870 800372150 11884338 609602176 281695792 501935184 999430199 925730498 789986015 488733976 273706779 700629765 97333332 582225654 596964923 339155936 317317197 390719285 952838028 927219917 417932202 42181667 774686760 876966962 929872041 935924694 516151369 997258676 236361233 183385813 395573435 728867536 207398577 82997786 224510225 326970182 112143055 475123780 9796750 642807601 618262317 255973150 724058365 582898132 721576432 451723769 510390120 848564146 835298917 547782286 610912189 27523750 181021977 446120229 750119732 597817096 644033411 136370184 51629349 151342223 770602043 668716147 792261677 876816987 486314273 919894207 861761793 38941656 679729788 744715523 27492666 918140218 745939291 623787997 917364013 916827120 158713846 711612289 617073311 530798300 811349722 931106392 366145543 519362914 98899588 445011962 326248568 243880961 95680622 986652366 591996735 772835069 693029725 698539954 524565382 621778598 297728392 234659281 103389392 410616966 730310701 880411536 873229760 980976338 773800948 767724568 105648344 948195398 762698086 261083641 740713461 906956332 735768683 754937887 167243918 180183460 939100535 624491455 597615336 458524393 144464874 66441749 711965664 476201326 363295877 729499277 952521782 267005873 366183084 477273915 323563856 670894041 207261462 99428945 937101000 793532763 165475573 676827995 621337964 57645320 122146586 108340999 528423671 727612950 973174240 502208036 16241091 556542945 685643096 63626394 961854736 359414213 157333601 71563400 299006045 192668343 516588672 805243975 949439604 411914397 222573678 879920288 817025615 700582678 702999736 718500933 29860521 637371501 364417307 574406954 462534155 589706353 592944559 346817447 566721030 933323180 842592206 639348919 934881228 98255194 578526531 77027852 519372300 871595703 602947707 227250721 524277400 641723299 432015775 471130917 721467951 304116025 376412879 11083693 156353549 166586313 551124670 581551986 999338945 271874715 983385560 564380541 228932145 718865942 250517417 977756159 652810792 928990810 582214898 685617086 472813701 177402895 882617599 570868405 697128839 669317693 825237856 855373797 677780031 959932669 69623148 883738471 97982350 135837316 133849343 944380953 186913154 951333656 214060196 580518525 990532457 469497610 866719082 972833500 529885882 23035266 341114047 496318864 191720754 758768925 152127786 652923032 723023178 409246505 379015930 587169267 233790852 963705757 588159237 390064633 920254806 549039193 191873085 789535093 157517873 571534290 452178247 103659010 213043888 933975453 237309183 435869027 394233297 920701320 235966994 953225865 472481701 544277434 607887603 584698216 874087045 292436771 228011166 10216485 547151367 111989901 9368207 379547689 347310398 780599085 925826599 124840343 259287593 208960287 929657029 746848175 619059969 776158296 145989591 302440521 172123442 192357941 640045575 496547661 791281441 651907894 632193961 403444888 601204539 778530214 361443651 10303441 749820148 94650354 217399495 888431159 228949810 298833050 99397780 445453943 449406895 453125841 647945329 172736427 919461172 946968203 41635952 509007434 171505290 196622884 159161504 818964170 923220552 323806649 943694543 725403474 582413900 965740991 560308157 79588956 558014046 668247126 626926066 755280324 412162789 399164565 271598254 876037679 190349799 779748860 625623389 570605429 461480360 541099315 109374687 432007533 547674315 772233298 362737109 545242430 250002966 904724748 245692327 970439055 615719464 398119608 541220269 126565126 420848286 291261792 845869974 784953605 659374661 693516845 950493438 257534316 100479707 128672971 101069773 773634146 617275393 999513372 725697693 528118990 693821656 243982225 590818301 751639982 847882680 406811372 6136967 89878980 319596121 296594566 280883033 893780504 932229263 71644447 201009857 971916256 563913730 963058987 591485127 539193315 296318566 85215662 90968791 787778905 209259065 154589481 180067744 644462498 913896800 206865159 554793443 559438114 326323345 177370624 574045288 218998656 601176506 924133231 146348930 286738823 401495980 94155870 311479060 654132831 608981216 340121058 437187992 122009523 785225645 552673713 134886174 403383670 704221286 792716630 341100493 466129851 621485617 737838712 867996350 123829598 700240584 612475818 560045602 718454302 882200408 870659705 559496939 147230317 475300555 798216048 188420451 291545858 758613199 396298573 20780802 486195432 177387836 598470111 649157265 320502998 385045269 813155338 829536537 467110728 943974252 518640040 414923177 376800490 626320712 818993256 951558969 690650327 610010721 4651504 812165138 84393842 32327275 264048741 980730887 766417905 886639758 939539188 18797041 989894395 638757296 734974286 122055123 23758682 341581423 70575807 134542752 634149258 750856604 584200552 24765728 604845434 622247067 492743438 794396799 299886948 102469395 911290994 692094011 909625897 388730501 264857294 389515099 950509062 131736421 322922148 879594819 962263585 965160608 404859893 410558776 111536981 784499469 884970769 257803445 752643012 836639352 243656382 772068488 247026300 24931172 630201890 45486770 921671153 221771608 868986695 439519613 236673920 313671062 760311775 778099019 800516663 689766881 804837860 253329602 380726483 101235833 492557169 416175141 539634079 466238266 801668670 70087300 576723074 380957690 778598406 852465527 121452221 526098923 769109865 609477751 215549877 426833542 117081227 615107366 695630165 854866588 605617522 587539455 524179338 171446286 301808043 915330132 705673456 948528460 715747256 615726574 186024491 664578078 968287309 792166033 596471248 808662537 233898401 137547867 653937926 18461635 736759711 213346336 887519711 503653447 71078438 233256128 466597071 614670648 408417889 47407838 840415910 295011252 984606042 31340104 663980193 990195601 259262794 341169013 457455153 71671991 884948237 62226492 911752056 409580264 907966927 122478469 458457627 247534220 942530925 802311764 90552897 319024273 958363428 138320864 381129026 83888492 632828233 577483639 445182763 332311948 991351034 719776572 245603763 947403565 470073070 716631671 214904982 950057508 39399220 965046790 180823682 752516872 110497036 197483906 54305187 227719989 671378096 299017603 882330932 29047851 113867280 37006090 817438407 507545625 657353362 536431014 290507928 289984063 640494901 81375895 288408798 605743525 29472554 567095312 221087918 772320330 43939083 525010975 339102004 400475602 110919193 39336142 439240023 965658598 929801159 650768800 922302761 405138505 996236730 364330021 344771383 532265622 361264905 926265468 347626284 13529077 56377005 743515845 820108194 241165329 289263314 814547988 884747179 188180124 97343569 47383466 490443697 878156291 310109058 600132800 18982993 773253433 825585670 554795799 567637906 712838864 805064041 230125802 277604130 546061782 65121717 280709174 648827946 47993812 64446354 110011027 267137389 926388933 243261171 743006192 725153182 107722785 924803926 922259287 275913445 672918235 947848588 112823796 305245616 520394388 275623277 488148866 636691182 872856004 749669405 209848629 853137572 631054568 889521285 472939461 671337675 970622064 970592759 141733089 310096233 343240687 402813491 607402626 287597955 814500050 325097765 29955678 543874836 574757615 44439608 537177591 982597151 175639473 864644244 998886966 364613083 495628637 564855427 151839945 563282366 216158804 149459585 68382596 584350280 63521056 530304796 664010881 139156945 180786550 967596636 554277703 179068155 568561969 119313928 81235221 768376555 331956026 82770880 473436158 893645429 853794983 216882212 434849165 923135766 615090391 905479098 953856970 760106279 155244223 411985206 319611868 587802414 316480511 681273462 342458510 760433019 157338108 404652215 822595021 237558581 482262216 577465488 397356339 543543479 949426765 39303964 490958706 375786086 873280518 465674774 509468767 816489823 173349589 42201642 366785786 755108675 261182667 502730944 793787233 948006174 676321027 260769960 402605340 772689133 685291705 61487371 75002424 149581712 847809135 108978007 887413616 13207941 625636316 229589296 431854535 766800157 960544382 254135537 584703985 951428472 997790662 77040030 127824964 47781663 423125039 174466273 602745122 96368242 479773481 464957159 659560493 5290240 90082098 756686367 739960820 30135703 640439879 114174881 875516710 329418773 815640131 342575278 892658620 254050632 568807018 834563231 699508805 300643889 768536387 92273793 846736211 400738750 820740513 856379203 759231568 684294277 47135466 235316185 370456585 41836441 385411316 281885756 689866082 215885121 979527238 973728497 565072522 84828731 151144687 895989438 212416031 61919980 960438754 535999030 355476263 588316572 892528430 661421383 429295283 727515693 298155339 116545755 831500025 831277195 597238677 795804991 14962263 136993826 168979492 412600257 701944088 230342699 437506949 111810121 793969228 400938582 368889333 925849139 753676108 545921217 897353891 241524730 185416321 706095240 551733024 809161432 237618902 201776135 791790686 202522811 146953843 301487144 377761879 366879052 60054948 182270930 685622874 963909929 226336766 342763505 406999310 623120804 255110269 543415844 511021264 949689066 766201359 36491201 719947856 910924887 145803364 549878594 815496099 989870178 344439903 868887433 729073402 911221391 423721524 651882109 445425264 429216270 370574944 670991783 506896266 119383113 464676107 333701662 481381531 660472880 193717335 928070188 297383174 137429023 280012008 357479569 782942819 127745590 51901831 66394772 167514238 998153974 404886233 262233370 1962182 492581008 892661338 199283152 353169366 141966248 582403188 597571222 252512307 795851928 77041456 25328091 719697433 227703734 668460226 745581929 299477649 135094847 874788650 704420469 564509145 177159316 914575267 918015627 460233440 808848864 344586318 76343955 200515391 287638349 88501230 426985437 367188184 639472462 352655260 560907554 815925733 737241908 243863470 716884141 149321056 783765825 739577953 715960001 614700625 596377288 970890876 912129222 61372767 179824733 477316945 984243990 63759524 134092556 289373603 998085326 684960907 9067973 508675475 78742173 358418058 505282057 326328519 571481544 38683240 750633665 300135501 249962288 655389572 796640543 827685367 721221332 320410843 307074594 574719508 624728330 488098600 909154908 536652816 999852327 641078522 247796176 517469451 284272066 528868168 420192750 258860318 855854141 737689642 388073797 793790575 397031620 739540230 476515217 13368803 141180391 592955009 851074631 96478842 606377218 606910964 601218633 658320137 560058871 32121724 306607538 458546437 685835306 323864779 459461588 777898465 484278362 850194241 726784419 546655365 287526050 598731886 600207998 637966615 163058359 232509187 809939137 31069992 627497195 328882327 249985482 444942487 448940398 795888728 639154816 73940345 145753148 964809513 417051260 725926004 77219307 714775224 597811020 284949446 120896575 679374134 593138002 864343672 777209754 590896415 799097709 371006306 623047656 301201230 423034901 443171768 313433643 584779583 256886146 226547015 445025747 485875060 232068309 414418177 561086673 511897204 639426228 803415635 30287233 614422381 934106721 709908461 391597370 923601696 16703148 857783881 686987798 763625201 698275464 12045106 274525323 407403363 190419835 775317605 788700404 503549383 970248080 476533314 698576235 909583251 431359585 10655686 161415065 391019739 483666424 323083560 449119362 373079615 56468310 812581091 278899023 908117151 648525695 714546134 193046624 966956995 814043019 472074152 930644692 712018702 768902591 273953970 732915659 735145690 664844964 862657020 65651809 849144541 298013312 932165118 337021758 796784172 378413913 522116556 213123070 417862814 442951669 833541488 319637486 478283800 672433595 995724735 643452899 259082282 725036741 975354943 993040665 369578462 604218445 948089547 952898534 358278335 956021 48466322 878596892 251188491 156099575 656323208 502791111 582768816 894721972 719626825 208821035 230649499 634297245 994907968 804430609 433044661 738913812 353625092 733700259 57174243 392533900 60132508 467687054 463268512 968364234 315124691 769858736 892242878 511798974 184222107 464082055 729529485 670362500 569486799 499096894 130444719 903202936 113790821 916082806 738920514 451604253 800405320 769559022 636874432 503288975 72010384 225679891 239264624 291659052 241424389 7110015 630403725 438227565 27370101 418560585 91499486 73892836 303918780 239261569 645719602 472086749 763042754 965613679 875417292 976833723 498181265 744878956 191505887 975350930 367144171 637462090 532749406 737024594 30848340 453567801 708031845 351045243 303486400 843271387 474434396 998241667 453491427 299179452 941568740 131708881 839839460 316048876 700635795 882118082 921240026 217482629 35214611 434368483 885134378 637632644 263951378 369350439 74174249 176736634 970945703 64784665 806273808 99081383 784304070 60300312 830212443 783406165 611729737 748215794 949943991 32429703 709581612 807219165 829270696 400553873 843803598 735523271 400682114 53493953 670606095 178338182 371681706 33420781 80455253 161440981 520273020 645244963 800660920 338291428 236568390 295708139 918671396 576613049 993823248 736671094 23443529 232432340 136390273 575061701 781262491 948834269 181080067 834961579 695372080 687265586 955878372 459522437 846549885 950280138 913251787 461084601 603801686 496579598 371606154 123199554 667017290 844855388 160404801 165833793 115903177 962780493 791478527 579816151 420470245 359323032 591766768 803408302 933699179 911020141 969333624 567106262 777716548 159528210 251554608 94812403 496417630 710510402 393474770 749748060 818722435 619719766 453094186 906691415 52748230 814058586 544353191 870241452 284177473 745568140 355203813 534109843 840965018 241209004 675616203 28619304 111988333 793633476 779057101 500388714 749259901 648395857 843448045 984355789 888309059 660182678 413309884 994394179 220659435 880373386 451587765 27984922 863809826 859164654 503915097 456326738 592750301 393708445 576102789 356198418 254049994 213028587 440782812 446516885 771673722 182350521 308752057 311542907 214228237 465294393 230585711 717678808 558944318 504427757 490693811 883418283 566188869 551562853 140650067 191612287 936568393 426623619 886402649 445387574 238236140 766626574 484315020 524620019 476877627 674944901 255468444 297157476 251996267 778968244 458277323 556499954 519165450 606196941 840584657 317901759 580925365 843263357 363710706 922976893 278662916 256213922 259341217 40177081 516312579 543151854 769317672 266906248 821639971 47141509 282870275 211489807 372566861 62331069 575253321 47236717 633135842 24049995 92989567 286627366 751009227 279548155 961974887 914934101 692444045 411851875 198533885 490910151 382731494 596559922 922145415 50730128 793161301 867670092 693952837 292692694 582512685 611441909 859852355 877962871 862734674 720668 74148222 508345139 626713397 360136244 881795682 648043478 357275375 155025198 859393109 425913634 798457956 921668999 323066912 232968913 91657626 96709336 88523973 627341221 271063488 139944830 710072331 490909688 992322842 942035175 369639357 222625411 116029040 322760747 244214633 324609872 91016274 741515003 91418605 66816583 421117370 336155727 130976498 475473785 358039184 655387691 287519793 837763517 968427416 949118433 122297875 51567438 711092206 642432720 30860530 160524202 136911565 224964251 296659769 255432600 868281943 695313302 933788928 875596249 169051017 700805181 254693481 288376795 491942170 571983242 659632913 467527343 526586043 73966540 693633226 679259155 675634863 897990138 920878987 341781893 149139773 486915460 223548745 5831591 59119031 169573269 709758530 185527019 540346994 346139727 453175230 36235002 199998429 377949754 890739220 372124825 173008511 625616968 49303182 957549875 946129144 186386054 471943346 671830932 586512856 36504436 568307352 707445409 406788308 832571775 18214986 654471335 628775264 478177674 607846417 847665016 431938373 411730527 822063138 151994936 547963836 748082479 323639835 892929624 870784272 345023628 589772159 375475188 500718902 689109106 615458023 742686954 552030404 175498694 483182833 925630917 135821829 980546237 748047825 666718458 208865816 139073446 673529743 134230338 606889211 576855851 320332280 287629163 565792194 880548947 593348784 646316998 751507311 714569356 853814526 498305608 61782744 640442624 501237445 874663590 34181360 249335729 291704571 232341888 812465068 748246401 455458015 390121508 996375933 786213632 11179753 319447396 153786811 980743387 233884891 168248018 107269905 642027209 333730018 543012203 158396394 973620463 954149430 698796589 689713704 722723150 83465225 884666375 533380893 59073977 447870343 400613868 452563927 84566204 378570488 163242687 959049676 577514666 718862470 495156670 250970418 301081384 916596167 332067099 456137086 305818183 78762531 126109374 154993479 586520907 310516386 824229728 564580697 2324949 459593211 9704024 260085492 195714472 885305480 735385287 846177273 572024509 680441397 113484031 538792957 937088894 558263589 962648890 635249591 54191231 616511407 739394367 520502838 657536805 353765427 400399522 949507714 927632733 287121318 382127417 365890211 208516356 413628757 648983026 295319917 780730237 189451297 936079865 259739924 673520062 827502300 843123447 884245843 845679879 73736324 343431979 770537100 40747637 430591797 550100383 667732212 450203325 802749240 279527993 163270203 459047157 206261857 613543253 307147349 495610091 300626541 473117695 626498059 420824732 717499926 864564238 556443645 630218632 260120835 495321977 331732990 754130846 952941546 621923506 192856656 183966551 763123739 198597222 965642209 962203634 615746593 130259059 102656889 672260122 280477636 464686603 515035266 953898972 725478600 422765371 949887712 493072218 154757655 890220803 404039071 15117998 411479228 980722024 673931201 115873572 420834975 521285115 140269914 874246655 103381724 756345944 475638586 991712874 37054026 635229664 895804081 492738049 531823257 121828599 995088967 207258819 300341084 759175138 11403278 3542726 412246347 65439327 834817715 206590298 847986512 304722644 189292391 894349826 381815979 991611132 705784379 41433909 753711556 990570180 758582615 735057911 72164496 515885564 945728946 2370292 987269206 76562426 124585260 723056783 2608366 802556165 53605510 42073725 771666956 771534033 219868305 759133483 331886292 198942799 536273388 65228038 780652276 962857225 958993021 710917050 593584401 141103968 233328452 159441362 922174062 376660828 81613136 460245216 151746446 86891217 687924933 624088554 548732383 741888867 364279084 491290683 656148752 595064212 820555974 465162086 554038007 335597734 701422222 710688899 567615094 730197881 630906272 624006735 876770135 878948983 188752248 948588749 133272141 83385052 313042228 55949538 447852125 763032358 853231403 309270196 250338057 58122725 32686003 817065845 469314030 199375593 211252652 194551011 696262332 757594673 265927507 100723538 589469749 704617885 17597889 414758166 673850711 636306731 315077785 840536722 80310707 422787399 934850634 36986094 324464594 137710015 670474879 504789240 523327213 19528530 717764141 350372088 335316094 757029102 270415889 9620432 947169149 780838890 274666265 870113545 823354738 881915750 310820932 406279719 611453475 478882060 451954491 369726594 606717425 827721913 516356110 311607356 724511796 812311703 296251886 991647958 131514930 700994538 629842569 591355594 634682203 764489795 590743609 700293643 724295997 774556063 71528395 533668037 141309313 192631700 272349918 467787602 882306518 507943990 591577830 371484003 163880301 5327530 987923940 310082671 831493650 615830376 913488839 430661615 516607571 643714401 401045812 482272397 83164109 593399796 673808601 946137244 423651810 708311284 467218674 613663512 830511040 265201685 358954724 944753710 843873840 845533126 972239298 474861798 1062203 439855920 722782783 841861752 694795323 534501984 548875786 411154710 157502269 222055796 727859116 189666061 178542554 450432691 35359254 642524800 92280876 810596392 837387708 659543740 555096812 392071651 150959769 277774119 451573462 354621712 491158691 885895347 657395575 171332350 485234633 850282673 11787164 711875088 766516868 734162383 861754954 122494836 777174841 994843867 984540723 638387093 167659958 188816624 94043834 793936937 407966059 671435681 976279649 903182351 7058787 902755190 977460873 163478763 524884896 142571294 421844513 88960926 743326441 678811237 697840662 156316556 250286702 259034639 63816833 380111083 903122559 267522567 449951714 338725088 816349727 637986600 877418921 863831919 990157686 473634385 854822704 374683071 584596640 477077496 443203095 920081807 740082828 483624472 93889783 521696979 21033758 650650832 956946675 987652738 385637662 993457397 709444881 96356991 787930176 384485131 738828669 38425947 526064347 406095545 978478456 919502781 706665140 289835985 132054875 479760121 885894634 224542014 615111969 733351168 587356910 615175846 201389968 352154248 501582629 632326140 688319017 905678807 204541313 386498776 613319963 316174954 377012492 714856392 17101570 930640837 128442488 437586964 942615554 100569522 43052663 819232348 498010147 802302221 442549282 389694775 267842455 773516258 219546609 546598427 824029369 13211769 747050960 354916769 418528643 855597560 309412576 23308734 294192932 456225322 910316909 524422625 466817616 922699596 47705153 514573140 245974586 837205636 710325607 30241666 628756472 811426674 818245867 826621021 240010980 197462810 333355634 906864743 717402102 412764857 528031692 216614978 194036097 776587452 146665720 10035390 91630439 394404635 627087511 565635216 885809263 248242539 400681416 651068004 290068909 678481710 318527826 962745956 570562284 375919661 762869769 94268101 437531743 229410249 716058420 24172530 119020446 58493858 942101201 788990642 362747540 691469007 444051299 257981732 328957238 602693388 162554511 161123670 174948979 485445660 630909829 975124776 129786650 642210509 637343100 862384779 866168414 428057939 147185121 271739147 600852020 192304628 690842677 919654322 5016024 560006064 395225932 376399861 215142311 664836308 279703449 153688299 794161800 871899776 479250749 575162993 869596766 696967166 279872084 123161772 684702629 499114174 936256520 940713319 700513871 293297963 896876139 827097542 911023208 877106642 715001004 311568978 994674645 74940522 817452877 770752835 785960801 37651310 907262501 168601700 799531189 501815685 689723026 471371699 603423117 469893001 656640115 301230775 586383071 484747080 907032154 904782582 895206731 634803288 213391292 147207229 626161979 451185443 764471877 542411620 805570374 402400997 849932323 505686543 9750290 210260799 450290544 686750884 700784976 197861436 36645919 735079388 297255623 345449934 897211799 11743702 810907101 731319401 347282692 481455362 749453723 193789700 142487352 583202138 434882974 594698017 828647200 514592390 60541978 157097805 921601285 693409685 472650506 265699637 535642158 290061319 274595206 997470468 940669656 238166741 683731955 287112761 191663568 855113688 61372798 877672458 69626167 556285145 587517364 138535895 917694422 849375517 697098603 499966015 634912975 578409119 860453123 720588760 446955884 606517922 207245032 879436515 685861349 214424194 528823841 79897527 916544210 317989302 231911683 821504358 672971070 776815203 762446675 506626017 988001584 631604515 545930503 835088218 150824655 413441626 825749186 160543500 381910986 17620870 584828117 820412456 753941725 488053250 880758071 165696503 462684785 406725611 127774481 428994141 563604289 772032259 409158045 32340233 586761299 803212465 95835946 988116666 627835605 156128959 908892738 9278212 753980295 339591180 743408566 854057532 421349024 422413139 423124021 374630544 422052818 872028211 885532602 556604534 572448229 56516838 412943144 236595665 394667623 675275980 891463154 719581514 453198274 741120287 432991038 357898580 937785058 751687315 574540930 817197192 428796606 945896728 152279938 439091648 173148563 141482997 627476492 652604984 800862023 381115963 31554501 452578169 25728255 503805195 6940108 153951121 94513062 337857053 130343720 850510936 892079433 646234827 362854727 437936938 94169984 48310447 562040034 488629299 335421975 62004848 145032437 304544724 783013269 161496644 530599538 698910765 282928606 61389855 610049024 585289320 789630516 420649234 611481698 59885597 35274833 942022110 904461967 865973380 112460632 125254062 157706105 312370399 172731027 335994178 617509244 21875273 415493543 269076149 943616040 939576616 224447600 479619789 766736730 803067907 248381544 719438530 370879696 666415416 489626617 107768186 289581887 207839452 762276495 784520481 865199575 982653827 472357039 900082642 198259888 389155950 71992000 862369981 259924497 710262502 874953190 514547770 463215716 854171114 788496458 606838460 417921635 592908572 314924420 945937498 475819400 357362723 77213598 479241383 282345224 242314647 88677989 600877718 321765352 956525332 871738385 400510901 501082023 836132121 633367837 279484516 852224730 254476401 334686809 251626939 907017025 598217260 834557030 287062014 369899850 7009677 141897073 348448013 79279262 85598095 590162985 414463376 471636056 457975628 516218308 972895502 149569700 136783010 516903977 73789309 978160977 818511514 510608319 154666964 13219314 94417084 772785122 353167900 45372925 672375030 326487861 48086285 440796276 901443931 510868995 997846081 801672195 783096809 801587726 345217765 560926218 206713141 33971171 812561604 12931605 151874253 820236764 685966781 621198192 173955856 929889232 330550706 615511573 554144211 704245848 12958706 581609945 238947314 836655552 832435344 326988898 336322314 331293732 542944297 943485344 919021805 503430008 525937651 615967111 124172224 579934596 295691525 826000406 907579634 969342763 122627684 142935024 282195007 37234228 675694272 845392301 914173183 509608815 610552165 915692498 86195106 73149037 385002295 178698106 7069393 789202089 254900333 399145489 839317345 101494396 954853782 118382586 866001179 157261250 215499826 228469848 51047265 663432002 291202363 923247726 89325164 995036771 671986043 824222100 608891414 380234428 103953456 925831450 21389821 527641281 457842043 472336055 593975304 439007337 981471300 805281646 960918168 656630010 494536350 397742181 121963450 41509101 439165113 557455389 149528645 630978238 89381099 284770748 557718308 784892550 113622783 47758013 379020140 636868028 539489229 941080743 498521195 269985867 205086450 312634129 185954847 800657605 839328478 588405393 271130026 161803173 339622944 315939177 732507675 348100794 928271979 274891504 155074051 572158573 900515875 335405 48671743 87184652 989406482 687827229 751804259 796261617 441158229 905754918 568155079 726795891 108716481 268840493 653420436 514612019 988537584 547096494 792839120 76078026 756453076 581680267 737750688 334616475 388036491 404966201 914765303 401445550 426738230 21674176 994865480 583066885 906360540 648152011 762765740 572540457 968947884 336687836 754828198 132693373 496171084 998904497 685679950 488869524 886033570 643767737 784904616 960637415 208098443 501527169 821956872 906160245 207291201 261986450 379444622 673335595 492235458 664789570 648218604 725328057 737374918 108509377 246738562 960436452 991233470 157590969 155754 975938220 677887601 298871971 772786361 673922992 102113845 70490399 401606504 916578561 815854121 586131418 792326520 304081133 756097442 876028546 770511953 54070417 481886965 263529861 444684705 106499185 155418626 963782203 343615722 795240752 349998614 684907060 957695913 726250803 595864399 347562343 235151371 517675328 98871506 192058926 654601138 89604966 264834024 731545426 594483051 538962502 735097030 147411092 729042552 418146054 404712720 661223122 53833 3423840 516676268 879300498 27698654 560546690 983746055 711836383 815590403 28146853 816540937 239780532 685560755 793659372 383103062 598829551 55827055 742814841 546609040 323482443 619169759 268240925 793626746 953293221 527136572 970339634 129451390 546019851 121066952 142754758 629738887 616862946 16239923 421802548 766117836 602054206 6178664 272341055 158002688 805108930 913348483 841175793 179343035 420737373 762270760 910167208 264347883 408370611 186935620 530790858 612503928 175356804 814621624 730034124 725086219 792461529 578427299 851819509 382725298 301599931 431793397 467388884 506413054 657340175 690854572 675837546 881078451 804919342 851224270 328518277 636051599 987304132 781489901 362041782 607087003 342559379 123158918 446905802 263093703 766393183 150395245 34705148 190992044 889469479 363927373 979301918 940505582 819116474 429437062 839480416 437805574 86066756 678298996 828219854 49513837 248450985 35692108 830711518 449963886 10891778 146229682 579247751 309628812 882181245 927546205 887362431 636444268 19613971 101653980 146466272 124445895 538585064 60007426 764482018 730848161 685862551 266872095 10903571 908350768 776487507 460820685 692309214 758902627 351595256 987469930 53136131 398946338 479831241 126683215 443794639 737222359 628336579 866900085 111617989 213270735 709727725 806556655 159274417 401562524 987334597 163688724 65860081 459072045 268438621 751513467 746975596 273574660 486722467 334889789 811439544 34108935 550791757 569456017 617190240 728393332 121914920 373312081 456523635 434451767 979034335 993256573 846603111 437524306 332794439 226220884 483811622 158098610 711907332 205170268 318822835 59486508 824381317 150969071 826406758 881426038 374924628 70068615 724117152 635962701 498066797 424917587 614091015 849460826 981380857 809687129 409556520 347783073 384091346 27812598 912029030 252297011 116702017 855793015 837376200 906812823 691202728 301074578 163660852 126204496 465867892 217801407 24668402 820613315 960085255 792891081 984820056 551589779 695067117 813649153 921047261 46854087 727049725 822414093 78274611 491086130 878445228 981283615 512442804 810230123 9887703 968231436 241048447 436896105 955012734 910419945 654469424 114864473 529765326 255407671 744355713 766729729 200014707 782622830 847486710 554772174 544947008 751963152 18074681 235725086 23043273 591141629 754613297 47932317 794140733 271891490 403947060 714541167 801801531 279713046 645117725 709800191 332936073 377289989 761188777 223101099 891494508 297499607 176680446 473904387 314761537 972506993 771050039 276862070 959526201 135584034 603721473 900475673 391555627 368928275 581979434 146545272 135420636 745928756 946225577 611723261 640423456 654350675 365649343 812379116 797793175 206415791 964642915 860913220 801439457 289754035 64073592 818073096 55225920 450455153 106003013 156090807 165272071 573432892 644584665 213786688 453925423 526496561 959473362 608220579 554305130 675487847 637113000 502656967 56733474 397635410 597312208 513105444 953477350 266628866 81313793 256475224 371560128 713865103 305815620 266523531 618939268 323283779 346880828 186455252 651584217 156282203 639955075 553647281 869471104 992492070 18456976 641414163 457852983 34883718 387065035 995406435 901794635 851925709 969255574 761326159 192449597 322910777 748485155 184081 138161971 396881243 160047214 805374094 475322989 454756825 924548060 670319753 25402955 98083696 641651804 877321868 890279836 282933118 39247738 213828476 95311337 137165013 760469349 946439358 768705940 582220109 861906456 809306789 422827190 33209206 970114895 664369825 775989427 324311780 158499673 308959769 814745067 11532001 61017480 645889171 2802063 921158535 749173501 190317996 736850067 254951141 505316881 607363764 479615733 128162596 902640975 168614745 736912096 550285490 986941151 432579091 750579296 413038499 213505257 393973840 14259141 94005163 840170343 820089249 528854695 796424477 239991627 254523451 855555427 70525214 912661622 259037196 914366278 394556140 805952438 363485790 13529208 335022448 861625375 745579179 790675600 530555971 17822074 541796156 769562598 288072004 585012336 850117195 646553991 678223431 562578145 283266735 973222201 859417310 882146582 389695402 67852784 636158699 473167546 776920031 632230639 575446292 213606773 762802298 289706838 298211161 34637630 83572056 962740237 246929586 322267856 917145538 110901003 501042409 826692073 364185075 245095186 277110480 123794819 851327215 138896678 925496528 253771762 945299571 883167995 394774927 511542807 12915700 581879604 995607048 671667677 592678229 451782294 778923810 195219832 453787339 210627399 14872412 956570734 302171368 378445970 721451566 525277697 624833573 908491369 488645194 290929836 713768959 216718522 654697762 979075803 244733763 596130704 97241241 318675215 995700219 829892135 891514234 847604389 371677072 716541858 102773779 93200301 292621849 862945399 43962385 834012007 813828989 469658188 732090540 689629754 929765075 671192509 523595886 265589069 346051662 215268395 802843367 541042361 646697078 635163823 46701725 823817425 629260761 5650194 833938461 847505993 349901200 134431076 7798176 13792713 268011479 195675928 316284385 651205977 91800069 241986357 748342098 758103192 753627781 920588659 399900785 471905426 276663083 447468255 460783498 801498407 603617242 513295134 898825576 119915709 209051709 238783814 809268038 142055501 170030946 752590037 275451088 511039762 376336636 867527190 422930927 283219937 917570601 550195036 133626499 793731166 917372680 255914263 215477525 427486978 848171521 190099515 21995474 842850483 618840585 228083963 354038363 894491669 916770337 588394141 950564828 150526865 315540956 513868343 662194133 240770738 958181431 503427941 65943053 598347890 327977209 636007510 885904124 466070620 91632190 482347564 892076231 22051096 546040252 177660075 309253259 743252239 948490364 185509077 199403681 224348525 523538348 245977924 772312227 66365393 688605918 70349615 849638801 712115985 325136583 176316868 800082456 75580093 63077308 875423540 911018187 402716465 842999221 203161502 525627946 25479541 254658116 34104081 981975540 773049748 594774020 477669653 370322327 70569906 67570525 534788337 172512081 940829227 858465459 23067803 71166118 238611514 54305079 645384984 863051523 992887133 676772068 121061176 663462911 343338687 650671269 759000738 697839742 472759426 935565119 401457292 706338072 165797968 326310439 998338813 530925385 972343265 429943696 60273855 740048645 595575581 335751538 703881248 983948820 661967297 549563178 155591652 181246762 446119298 335669688 265072826 644386651 23546056 736715670 451337842 721540667 917610466 773975130 765488219 509392723 180576356 965863309 982663882 693865934 853373766 840269845 91050891 478048640 667105400 580389059 220611786 766370061 328445492 947225403 999300884 16199361 714155869 803232243 869578998 986978568 317890622 913631087 889665693 704647048 617788623 882455946 728841800 30304887 689315584 57774965 221824071 539976186 592866466 385559849 324187209 803219812 104900309 351850312 475874473 945539139 458857657 352552124 494666251 79856924 149034903 233298942 110938230 715075040 528910016 830068697 980008518 864323257 907312544 605792304 850956277 787313955 851412138 962591373 360441490 423705615 365023039 732975414 680228086 971928860 971165188 120431982 94153866 209128007 766033868 397783645 355818804 9326531 70286550 576530483 261139482 166674315 777127994 228546417 411670128 989952283 728234097 91989500 863304292 885943768 495080393 940012567 265907977 262145796 973295662 203871786 684666618 756497376 968287458 767941084 549654632 452671618 634504221 161778622 452916751 804935748 269869607 800394909 672828335 689160734 462829699 642334819 715774166 981082503 827984804 47704824 894148863 544975589 802797478 935337829 204974174 813978820 197044762 723978506 440845424 602514499 806333726 209640076 535121881 107781351 715587958 181969693 844432458 86210407 843140454 526447101 661499324 962145093 866999826 366093591 713420217 287958942 741662005 728062419 914465369 350300870 649318552 427725026 750311071 801718265 753341945 413773136 485389700 533581752 471097793 829899445 865683479 903623102 419112643 644519596 477849895 975242164 755253144 521197108 534132918 609454259 550742749 368814462 845762622 876716923 304161403 463430105 484873615 727989634 546001746 849722638 736221310 745630145 744098490 343383513 400594561 816028346 226210784 341945550 952590153 315765166 352900881 475742966 417886102 563118998 965345489 480026460 755642180 127487256 118341785 20958956 86914898 630724305 42842741 223472805 36030398 255830316 685389369 751296834 157322485 768555469 327932341 136088749 934940515 832797898 941928238 802956090 361133629 597938427 185815050 119272034 589372895 979347541 818775780 520587583 45164677 189640663 467736204 757808533 313717650 692003401 981916692 931743363 382134397 366442363 879128506 970176971 878556853 812819143 685539945 886054368 143312800 139022420 542507204 371637875 715724536 715697644 329011916 233038445 865760521 275837247 242058019 172330075 655200591 595741370 496320815 938641606 92202736 480031731 928311431 988505668 897040911 330835810 375216183 329162933 812932189 332973304 661316072 420876561 799786444 59304672 599223751 546956812 554193919 299329709 627028764 720552702 31169996 680723633 945041031 897544621 656042446 387359637 876211479 600661131 106319160 145822895 614779001 681574115 941602244 35778821 542107949 642406887 40144572 924660797 878576595 236746561 961526847 82653854 985616415 994548767 180979639 983584742 908158935 902085952 151596249 846557672 927154711 495126255 486411307 981639385 899337392 578213230 492873467 331981605 336660421 547205087 467345694 215887612 87518505 687844328 940538176 318478587 536444261 80322055 246198025 525009419 16097047 334313810 530168011 568629657 245759792 160107027 790312947 225436044 425211553 616029704 1236286 36648499 490264691 698473336 266210671 928430301 729736782 368599849 533785527 510624608 779125030 817967687 923556828 622098721 411608105 341251961 6472648 496787020 41326765 661687276 230306027 695301137 237644312 130774453 412545328 143665721 650695655 882746333 739118689 328845379 594419135 508316563 21420050 931702410 181292909 857107992 628037841 132862032 549991913 516762674 13973991 765815468 920522049 711918974 582650582 237455574 57359756 363690696 618542916 943555877 186545257 920078254 954953130 619358164 685462491 447028004 683068775 599464643 137566151 209601150 406241309 409845545 938489173 491827049 718109544 465193682 958749024 759278377 267592919 610319047 406016050 876916751 538407040 180583231 262502759 291749102 343758480 39643605 956524808 609670894 529675012 931750833 181359745 808416026 865726612 169602027 348352285 716658982 649588643 607089767 878312151 859594760 875514487 808823103 537840561 226586232 694271467 273357472 309209632 775592307 226836321 259097627 988470121 373742690 305362788 7535193 669909043 95666303 500664650 19050187 559477817 525420961 65942373 935729826 573085663 634620510 642750324 901044381 949696244 416519221 647214587 690864368 381419194 490679160 789444853 687910218 301360569 334739726 73297788 708326524 246317359 102145758 598674618 617089328 41160718 41830481 497773946 734796992 216096629 861895824 852768167 429945836 974478116 802012102 597228897 285635406 245368994 612128755 339449325 458186326 547766078 649812526 670970669 614482135 797330985 631205202 37667331 226621282 453063564 671368173 380420865 694812549 588016651 70162192 745424952 841558764 793059660 463563688 268270834 537273521 662434705 482058160 582707184 871034201 215041733 570842227 173098725 891149764 785591626 193671140 497190843 71343733 975380508 922591722 717705415 729432132 495503180 742913137 148694561 926959056 458549176 263790059 715868041 651509229 791729411 25452587 594019828 479876264 303725115 426186487 676738621 254932322 975102101 940147918 615142494 622138246 288988913 758683827 846200720 598946335 13273921 614124563 952008447 214027662 185075593 438563380 53904848 137640148 505585144 67995503 677209474 93319611 55709376 873340459 875631580 217108278 770175995 66412703 788762201 727770980 515011206 532950267 620020418 548386259 189703111 965312985 752597669 393247695 525632192 615526077 533771887 149305113 692079445 925181002 87712220 531671633 122091889 850234928 241343646 671587633 882995250 274264437 747615820 882582855 817634825 290553724 720972990 437709436 712049946 746009540 137587588 583394357 631988018 806262438 734945510 387330557 356604776 181781974 351104069 504294064 665300691 913795994 577238135 404158828 268429804 898353258 891084894 451653667 13404657 711313214 501775783 438973590 403075187 626052857 670002797 229870712 436101517 898622150 926893081 271423226 538531223 234108648 666293168 458408020 223897742 406281866 375632837 546135834 165720831 108661236 347313260 225803074 673847714 202433212 491563001 240178834 895068374 100362230 676936573 306064182 552421900 432482408 550712888 424322516 775107264 59051407 995719085 254015465 790405734 966972930 214019480 794515726 168927022 481707208 404300360 249191847 713564404 198300248 506724434 358877247 534406548 687570695 674122402 959596379 772451628 247343408 107576658 442763168 932708905 252742886 631670133 603482637 607665 671217105 114585310 881313405 475465329 481149041 181322401 800920324 312918783 940615579 343431143 842526743 655235842 726144615 299493287 450304246 627017123 427245196 685338005 433787074 38054173 259899965 548061352 714685371 555268506 693745041 870462547 696126348 859548449 518226593 470717140 482620560 920440414 991168300 894622214 854900179 941438480 393675762 58425943 490916008 433418502 136870996 861958616 981626000 783602429 660933631 854206941 173971334 184659421 265692032 880914941 423447929 916006760 434199783 940545210 199890434 220175050 707285366 431157945 421435953 514350244 760808569 380044133 104777103 586376127 589996295 380975073 988617040 354753847 128429623 722651780 716783316 70726733 816323024 511836820 389598227 98545111 216734331 991214475 455422899 854709592 516927656 733028082 206835152 705559391 155643125 686831456 314217241 142558093 858336277 946099869 385907665 558239510 742705183 758022251 410216062 340370969 247384442 286667834 437373459 111917968 108727702 36799745 814189706 811752883 327889114 631463130 719783798 576897276 282947723 448175610 374908302 111791478 145208915 824606964 116834353 2100063 702197960 130287156 343299494 320691920 600798940 526518542 198252835 810736964 183252426 273563844 209623228 964289011 1554709 798016914 884421611 878034496 967554531 966393310 24314696 249327083 739853386 962057466 944010377 496805077 581878206 211212060 802327465 193409828 897301200 852071318 191203819 565726861 992839189 348149197 646473113 927025604 309710215 74214940 913106231 777799140 623993695 818686539 548832917 811141665 803852143 4088871 528027936 603403462 425807550 23710396 275523215 811009612 126915578 220530149 540061542 988321509 891661129 393449507 40716967 51785979 397259952 280847880 833755215 533004481 128608886 309909316 410468253 835856471 187013545 192035355 140804797 523980057 436059667 730282478 218230615 163291879 53736821 958131785 288754914 832821680 489430288 104323014 276483751 36559959 206062386 1715665 584676291 98414614 838843123 397995137 48041328 621026341 222274961 678288763 79840271 149934583 783236880 44997493 995717766 45676860 267460960 483088993 436268536 818262322 318925701 798667786 301778300 442031738 385264767 559143850 543933552 52694956 551351051 313370981 444160145 523803489 551085781 292370729 764921131 671725531 858587812 733280385 878919080 439457589 102866592 766551818 975501056 101613657 652499090 751408119 659455651 939208773 335896561 563829119 29205090 441549014 370279195 666244519 377480316 332816053 176734530 440440691 311312474 279802924 930281392 938416401 817566785 25161049 234075083 734237730 542496443 5180909 614082597 714671498 287367117 716607303 827615051 762109678 562100517 644270311 566424940 100052637 378956842 72874558 577625089 397164544 812956591 20075591 516115990 237848432 384888597 259554081 882646718 763303429 604549427 268847328 998211281 432834100 733393681 629353015 390255357 267504197 691489400 507853445 67155139 275800445 546267316 836304698 370347609 513657097 402032547 883510565 317747606 788075510 244927965 490850247 784697497 654195208 547187069 54006258 427456019 904011680 938570337 136494572 987752388 864638866 410142066 126160184 648825882 586623515 871669244 432108574 841321367 761949488 927129409 341088911 785936075 235795960 214838856 739576711 246025176 731334312 623749498 849357622 24985330 897402910 835934585 823094628 917343676 893010930 812899117 342170515 994666945 139629080 994676141 790458199 553925113 958584118 190980508 989444158 815673959 441007092 661813502 178825649 824006643 72404584 700773540 213888813 11863677 851477404 665677491 548089017 990934655 244353092 903202711 646625665 409718652 416629525 615096051 907445314 918602266 991095906 236963566 202886173 383115135 34623038 649761176 212962106 417279684 779915910 721377347 208525883 962370698 655811273 458308113 672563189 65717633 658856233 794715160 430238615 780644724 127566313 125157352 635962982 312465273 385911587 104688426 704051336 925746002 172192935 996228258 743888035 359463929 909925806 428310871 107205813 545678127 731852134 198146274 905589051 668623305 196983792 443189398 868329293 902765655 257990496 981675040 451849119 313081773 379717829 79325891 273435297 135394250 554607109 410364687 879331360 947847419 982603251 459755335 11014856 410597958 456461291 490843811 798707157 762520622 742124976 827654376 299913276 560052116 128217867 445563728 473481549 568648401 866125817 657362215 670172190 754097728 871112014 907962058 498930694 783882683 6557910 556273217 940566851 907571889 269036948 905391606 983989781 788469859 615011990 681897873 427768404 825544061 632802787 822326237 459686633 352032324 938293537 604342485 596756659 104626884 269085022 760803655 391629210 26932928 396092252 535349559 359181759 150072377 841700423 81159844 200088892 956850749 897983822 425841302 105331329 824298695 140265772 519299635 890751715 303217042 197389319 764547086 53117639 74276963 106547784 285726782 412730147 189141260 129223193 474246024 534677714 800075983 789579706 990566058 446540777 734428287 225627780 223712975 499452431 842103769 406734034 793329007 928280313 619786414 619102812 23186189 116192118 461863347 332286193 130241164 715174208 164727750 746480396 534804068 359007795 296716471 944646660 701040024 976593841 139978028 23192370 322091447 626401492 282278783 627784145 91228156 478482446 301308763 768340848 326211249 866936957 248803995 361161983 426047002 863086852 780369832 817829791 626314858 376095793 459057769 401065526 152023250 823408814 425440199 277985704 436084469 38940018 725649954 274375593 846358256 643927450 469514194 344491820 471838688 959692988 59455509 980801977 931790626 974275269 788935594 810023914 56998589 533335218 477279968 912151021 735057389 161320263 914589481 351446160 985509769 927060088 635882483 658594277 527268005 228687196 616314494 232327571 854634340 712355770 23954144 428934388 285373326 910205678 115905465 757111617 142303253 576991926 495290797 395290109 242035541 347645083 347914204 313394160 642271388 578774773 953135359 306440937 978804649 389247245 92330645 606488475 851962803 259483706 715623848 330448861 1425964 383492272 966249696 414180089 427737237 485152792 248896527 650293833 348720495 534755233 818204658 332554517 267576018 120688504 35614142 866357653 136008114 193024766 178034496 934404489 97264799 612921263 109486278 871555073 270941393 448196559 528272838 427806012 68546508 557889164 648787494 199321286 604139048 687522383 538700918 663553747 811057800 86343196 283242299 498152944 943114412 360819224 594992952 987768367 745159056 519906393 906839488 38109117 486297658 96164583 352351096 949160241 320183457 934369547 739962074 286515428 38298740 387799540 578651258 519681485 781045834 847121231 181681356 46920421 601158032 987767438 550882456 689798606 590852609 89843174 987925594 622992088 414072130 975775287 572300115 6464316 177409451 613816169 791243472 131012182 819622052 478564310 657615072 918266529 727636011 889724113 680810462 912148422 27984919 806892432 532048395 926608389 65005526 447839922 88420098 730772300 391296090 924754928 43394485 568935750 225735284 975913258 752300627 984735707 324728330 330730285 737791567 712203588 425301402 249084399 80534175 531058042 6199005 448838132 958046974 96905984 826544227 673119330 940924247 249633816 251629677 976291258 106870602 817187812 830084292 562035422 260991943 713879476 701423320 250711282 359770045 660095226 375793101 446230771 494688390 376113114 868597523 168358740 870366480 236211811 696141589 548530538 884116442 714041813 286175840 231555611 211330217 521465792 896871265 932174185 52761721 271944079 921695187 719377488 249914205 889222889 290472053 523722765 212998671 368665801 31609898 573237276 927476502 649555848 410566412 71565034 901061388 399562910 749808111 314237481 760445881 613332944 269217310 592630403 319205926 195526251 949787948 22190396 627292960 262264157 229941020 632062417 487970193 117363558 146384313 722835905 187561423 28142065 916694227 90691514 298184711 228754360 288984013 520536201 482653601 722052397 762798263 912493765 681507873 996441180 822239005 401476047 590142991 804898660 267814742 194433939 976464637 12666529 247406461 278646813 304265240 203721080 406980057 141516659 497338224 509496785 693891384 609122728 764112968 630888470 685183099 483161757 779531419 309086370 832670349 600233810 581191850 9716406 524355694 645356429 711274619 63667351 808665514 273732721 670782195 293632687 726233080 20445420 770043444 373310094 972462774 726772110 267641107 399639927 74665785 806975315 327274660 782461693 36679041 659200370 319418341 457442828 301476005 346460675 177205081 26183866 383565289 90990883 323959599 127115622 146716653 102876083 446065573 763500328 252370686 150015461 709369268 509123153 206502342 200112912 740107725 909948489 290854239 669143591 911983198 300813714 13581461 249381857 307273793 716727029 448183042 58980732 148769779 634704899 248550126 784736078 501264290 643944641 508927526 728045835 614532182 336144538 732333732 912480864 449131741 825894839 320141637 180507093 495666025 665746878 540299761 855910360 10400898 778999971 294148526 437002116 991752343 160618848 675987343 506252904 230918543 833225888 402904069 433902315 500124535 599876302 719626967 722600691 155364464 149624297 739555873 598120948 240126144 826744061 785040583 8240426 692822006 210746481 518762477 233808822 355752030 408306006 308359513 40353863 344302314 203284757 855611502 997209289 890520907 19300112 871115539 346516591 532503514 957457860 623510482 346215825 774984837 61120241 966293454 148995620 963171377 902353536 761296124 824957575 657669907 210872647 688167900 111374245 20577386 241415100 965595510 187905113 541687557 840196571 145623597 96077949 538256695 4713479 827306151 559328645 660402227 372285077 84442570 494290288 933988082 345560467 456015851 210672780 342827128 844774237 478318843 462265332 95481624 369497863 287685876 848328941 601209002 154739952 103460899 84651154 246203418 232328571 342214099 216321934 996609381 260159835 646496716 357519238 597786636 654698878 622049773 23134533 476957288 115259556 460750628 516962159 904212070 233629028 178596797 959345041 421225707 343049153 877054830 313806904 607251773 400164363 345770111 64721 620644289 262586268 228935230 520282887 260843663 701770778 566291025 67181415 639460397 660280177 216662555 182176620 342822581 327436813 247783321 717007539 75260551 203656176 235628438 62426042 351606350 633584102 547204983 101845935 858254131 939860004 733139848 82283200 620777042 91780865 523986941 151535694 314966357 713032333 819550263 512802547 895621573 190528173 773128511 655997117 937009137 652602418 467077578 257148647 15099595 866224644 982630395 738130528 10905011 541510928 429493005 90545125 893989404 411775764 113186793 791724282 36425097 287134013 485173048 666620843 795684714 759570835 258205186 914505627 78727506 380585509 932638832 135518821 55986226 674730288 41004943 803777692 289190430 639518033 386558410 17400891 288355232 852372112 390626047 592833923 316073995 972070279 943171275 884663177 184492334 629231860 172521339 504385519 647377898 978703323 642283299 409377297 175408118 876846971 895932360 916500247 350398671 220942407 526147887 423227728 340134289 687348356 186269126 529741183 933718198 763537978 455951298 157629573 968824444 561239073 736478112 722614633 486380596 490124156 491888484 176685268 832018030 376470341 199288223 478992249 434085612 513976340 724297620 918755251 19910097 129487816 127104604 51603665 632866503 720685368 280238149 5458104 542028100 233364460 97067825 463924978 5292741 48721836 268466476 71201814 515641082 349074627 91826042 905413073 460242650 347085372 887573413 899019497 63061881 944251241 166346152 589878227 402862657 219248813 168180217 197899434 258985284 4195291 16800447 160586979 240005454 205901428 290321592 776809498 545851237 864031976 281291868 353935285 987620136 147557344 655738236 50650981 524300595 174069331 866458170 372664687 377243463 765003247 311953072 822780931 809006642 497983664 345439502 17905235 356946870 448517994 467873518 747625607 797766267 744123786 95755892 468305824 248241748 486311930 581295942 895231993 562033740 302174078 381041628 910317567 297398598 242520403 660392791 245939161 413535396 892762356 477934324 770339874 698605292 719874318 114168229 239384931 65197511 483488719 342311082 492395712 675134912 29092294 884012424 735230174 926497420 248502034 573386366 57339993 849739491 53433435 280750137 590108535 122539480 622225981 287203400 42523925 564032772 339859815 123191932 587918299 316326792 562765294 122548593 595738147 216610348 522481774 981865076 675396433 395445127 162471260 100634008 466416326 800302028 340511178 973199177 847102592 96552017 85993653 250381527 505289704 486422035 114402166 653188421 832516226 461414945 141835220 391944044 561583882 352479481 791771985 679692331 284779334 885256430 710606985 27694863 653360710 686084740 842212116 783721257 24714791 164886191 312197644 630937108 658446833 254640688 262744575 256711334 36023421 164163621 470413375 930878864 951405707 377310824 475927601 12450303 300112673 226778584 259741973 476190879 259675101 490049429 774085452 841210634 589348176 249727598 334653379 96428769 193501171 867316710 378308035 398945726 883871067 216839166 241349903 518345428 643425106 2196218 770004800 188010997 209065359 9222495 845533411 283156040 45029816 182742708 84362806 169602984 220184669 664305630 792011413 589235781 986285784 235407637 820752884 300415699 171716415 187139001 255106768 437138753 712721191 386489778 195974098 664311891 499536482 815861302 228155714 958882983 28805667 212525121 398807723 277216532 399577292 963804450 283518931 828664890 997787156 310614963 70998309 16912665 487816611 786685223 695695692 623582734 48902508 980459618 525293758 100164202 886132919 921156854 355886182 402964566 788788313 576833922 685007852 615011620 942448380 304841861 319444 736822021 663439071 695956552 693904122 404193718 149539550 383219643 88988638 438626781 751380468 724107058 353170657 443480552 507330107 894562467 590321923 117074374 573898870 191294894 317415263 939097079 406511462 29211048 826836395 597019886 853049267 290129114 160512496 754366999 18482236 786211306 39247012 691421387 628840016 916089098 969764570 37200960 37839407 409954384 42158204 935819832 785956598 369263763 94252976 606129955 762810589 76433402 460498910 687878271 798610812 605755636 481934210 162997353 844057052 443019828 232239712 765016998 553706391 697962608 442188399 134151316 326428696 524671260 592804769 392949265 329914465 307147138 452449851 913441277 481011842 57142930 984123965 646780481 308324378 878554438 616061250 490611929 968365494 271965135 805011500 465625032 151845684 845661399 443318430 649671133 7775160 346115084 428109384 947772559 690125151 348383398 511419409 454458672 357754850 380093600 677836521 171469218 868699603 314593213 281040733 991298256 824617577 670161108 3299129 198100077 216529430 887349039 375220220 634097375 24757595 541703403 250687908 687185767 319352486 396313144 39428356 671692577 780626190 978762236 232765239 407370366 899179257 331566656 49528215 717293158 48822968 511486967 403331531 881677337 433744329 652380647 187861257 897618517 758841589 774156048 114644360 821029361 673210164 141393147 848926356 98095776 100148982 134292040 521093118 143956303 919232665 700637323 669448113 791757262 264158707 778990026 406146488 821606914 327120981 254209815 403882851 219177461 939202061 172215699 842282986 165425938 66681443 953039703 909546583 312192041 764413585 264302770 70367043 526001129 76965727 923390733 713566134 576655074 208680330 772875484 606952163 245525674 408362396 622234699 182368558 743607083 28703698 132486490 545854640 230673476 622865251 966690824 873694509 126782763 876178131 682294921 249902608 714679943 631189350 371226928 969700212 220716826 26047238 80062041 901669612 751614201 838768891 837540480 168176542 57237238 375048788 698836400 939835883 245435653 115146300 90172670 608283420 908997278 760615474 493868803 453237873 209722596 160701765 922955846 845414313 471072763 792919037 941646792 936318204 927588877 403167275 882787469 300951411 217571051 400475690 135815214 276635974 351486996 366634625 657312542 67593814 243050181 426861477 67842845 958684603 118811121 247182952 574341268 256086450 312489864 91222332 613467786 309942000 688453333 278625247 459630602 436271865 317966599 373090185 982240377 86266018 518660666 463870085 392567582 994007261 117949153 305502503 455461459 10354692 160855945 512412965 100895419 933956959 355387572 574285163 5851919 437465288 254767344 627558815 410404927 769175155 619891937 120128088 887914698 504755105 254078771 346407466 542188822 241449021 86767101 589287242 504941572 737048721 424891622 206081528 277176626 439809652 123519875 280009806 320941910 835036086 276281216 824496683 915695687 839946093 756111928 533070816 23399893 403824615 621572622 428808652 433461255 875106801 623540647 898798916 364376963 151033477 177846151 120016062 246953252 626039188 118406380 547168605 160814630 639838275 818504759 966594698 613960963 4421244 533048356 214327021 539209782 687057940 831442968 670321468 999661314 190687131 41787071 356569772 582116977 636999264 738758334 918816816 741397428 585211056 751004756 221385470 73993562 952424846 876924417 640974935 886189706 175920239 222527492 636147641 457668664 6487765 871440902 621475984 341592120 39365152 54879212 644804596 153423660 851763805 449385330 21174629 479898420 558131823 378073748 996813013 791295872 318833365 879777949 255922600 71032696 767504894 557058185 831226432 279818921 200354861 704713075 49421493 913398256 545180000 798635628 325531153 316117824 32597795 120506310 117055442 27480386 594555855 970196958 632811446 352797925 50995536 412179741 176366649 319064351 106749778 203966804 294861658 138410624 459115516 427628047 698600710 492900245 690272190 577117661 881545611 694075026 206930699 776655708 698986512 263217487 477102943 348833023 32010021 799154136 206074145 639078287 254271373 946406293 799876550 976719334 768629038 693114013 872843748 820505998 104664788 312313862 105437210 82028951 554942042 43493260 970212908 779633331 561851540 50499354 52390957 469517576 650393614 997058509 408331462 909358048 818514898 97308398 983259479 359424144 104677332 884894900 966108986 435111387 258408780 659074766 802803608 804422089 856501787 111369582 795350682 470896074 739940319 622812906 614500310 380157077 586430372 431495822 994616945 905692355 987765344 882959661 40394308 705522199 739517344 133453797 527207359 387616072 840395283 352001864 905425215 738630734 183725023 503647401 386707778 24435700 81835960 479791944 941637637 248089104 385589932 430874769 828067469 519414301 321906802 943496243 729491728 351484684 514019080 316562734 697187209 360406801 823680996 901951377 759376447 17806615 645857339 463033410 693464457 531031812 415051733 669153569 230828370 694394765 277130259 905104193 902439002 149994911 479190342 749435261 725789806 578597529 700460331 677764025 637786773 376374389 537962142 947036427 495877578 124110032 340917372 475829741 943858690 550910108 54323780 447741477 947277141 715391389 865474695 361531058 57650748 535695749 167423934 449214390 882145745 220471192 750281286 187738846 367715365 808461386 192049676 953452789 916319420 932000688 505824860 548227373 24870514 703891781 582386378 530450039 566578746 185500984 748510987 109558782 24331213 697463406 42002863 585601668 418015059 339950479 364156967 406986489 495772060 465433830 213137807 591629699 708155584 704906735 287331625 709915993 273618380 358667386 334413995 90397305 789872998 785001619 755979205 940560904 441899706 606510124 605422696 208360797 774902098 740312409 61416616 433703804 499697166 330175959 822971681 622943912 499174898 840406053 98427016 624962436 601911269 101207664 523768061 952155190 671719793 387148203 976870720 927138096 596934985 389741538 381590629 185416966 315975319 677085636 156714305 178458843 47070959 926919717 836832101 556289594 168534318 558442488 715286954 800516954 965193223 554430732 244705628 304816041 865629886 819171930 34967052 737992617 328338100 316286993 631929588 241465913 391464914 47364028 676536296 549843209 120087317 713727618 201958844 193221157 710629600 336384228 907007111 678630234 263890565 226014277 605706271 970090397 99334850 108853384 858773320 459880475 865967095 929204990 63532942 270135765 874074918 24530055 972636519 262747011 268313270 910469638 152673524 882440904 545627652 168920144 862001572 347647501 499904387 52926364 881162735 139179860 928225644 17527229 684727365 229618152 37934799 811398774 30612524 832811466 633952016 870177724 778893394 723719992 371353171 991497042 555253567 765239964 339384410 659976457 155449512 699461884 316941325 134649172 699837222 991221565 722992208 626585460 68260405 900033111 575522849 429486914 494045512 78053165 713088488 536502149 46369996 359388983 680931573 64000714 102236264 412365132 955689624 753312118 417706570 426741076 285719041 799428635 447102818 818079238 425736091 121441382 357167087 196798835 607722777 582587353 874433279 734280406 148626799 689267136 159816835 684024573 551448299 898824297 591927652 583006800 721744109 799913464 444549927 423996349 566554126 435463893 781946314 849953257 788239176 312047084 330858765 685298665 874961765 236211459 300980966 537170481 670300185 721620764 105761791 296407134 378269169 647413112 35902115 757969955 359337837 390036030 19731262 241671894 20821746 572573073 988803103 344077268 883828557 397566508 519313024 534707059 824435486 337342529 164795848 390872838 98295953 667359347 902863943 150025783 151253202 64768527 250873691 588325308 116836936 105533375 808710495 838512377 674468542 753177855 575596198 474025500 313811390 489396289 763821360 137978092 266071993 223788644 313826631 292026267 760534874 501021282 900353452 96872741 880829194 170004940 746702704 145055543 999173473 816439119 566121259 805578117 913192871 640713919 253113343 235353213 453816323 437655745 95862127 783630492 538183092 712353290 315063984 991052521 525794655 438179547 528408371 772252534 16559598 715474519 854809978 342317700 635184592 586600644 518209945 598701581 780566234 217786997 243727639 230359639 713987044 563479014 381864590 326266348 391622110 28704590 368411707 712645769 403809249 846325319 809544635 950539351 438286894 853811851 32232493 910578597 160817039 354370697 437611832 175172922 35070280 867721975 210875913 438062293 931604630 841183490 401040225 480981046 957516594 473035447 887522339 979669881 454915045 416721590 254313680 813045353 832720960 90380712 441886317 955537191 448632095 519259642 437011752 396911391 586402316 114679580 941565955 213621796 956967428 180378359 800392756 504660952 420551000 932914277 345271963 93425904 182832238 233068440 316057269 361053988 961080018 616371372 172231419 432732711 161833350 946588720 839048827 892842962 539885580 927112063 278160663 779472129 429675399 151568984 610968188 840918186 864394941 94733087 85824946 794173089 993048067 779439280 329713742 390068892 169563055 550571748 102136180 646458688 531430803 494097139 591894466 61690537 492020853 443578629 113960236 619980964 646542068 303071856 69327902 699089544 889351841 284559331 564414960 407155385 875907205 19138191 505357584 665601137 834473049 418459871 523788426 653985230 91032934 368358968 732993571 929862323 343015198 666340773 236952051 577424210 820083472 375072753 517607696 633030459 150699754 47408611 790438581 76358448 893521652 208681021 229333138 589560102 102960440 358442554 548552726 342833594 160985899 729735196 766224101 769822900 190627733 389809402 791738612 885928879 379057100 880590393 978256596 518885621 706217731 542214571 715942659 488597248 234135139 408495429 634693699 899767608 580567927 851177000 50380773 307130919 196863366 189863885 94686194 59527220 242909891 456963595 741501531 73621880 630083217 202986494 976470953 901837979 90094878 417386142 340524371 452616745 136954060 51621819 140794525 964803871 274577013 485598897 182418962 544025774 538251565 846756132 518826911 879282604 841225528 77109969 800277536 599937981 118082661 822386894 197310848 711372912 612418527 666529427 432415978 157465859 880823267 59322906 415648280 47891625 22198392 545657484 98203147 89706423 34814192 51311581 300292437 954977355 491687603 71563773 239853366 781787968 473209816 940069629 21924139 257055200 674854849 796119561 504666693 157196897 792830128 10183509 150322453 753825645 467827860 67517947 224126126 718327214 914604165 129409713 908367190 837556196 16406899 20765441 308323530 449179786 970402368 562593532 598545907 771768032 663921944 429772695 97356323 921044737 834173493 611707465 180231079 820766288 746157559 505499413 725300153 12984278 658023996 550554305 60268473 343887736 840985533 168378342 864738040 13845682 92296305 827074368 361091382 743302176 958784106 426319487 187512425 710181452 405413945 176167915 70698439 552262364 167763316 954105140 551260165 966252274 488609782 22570516 811749249 872906154 735446645 888557373 367451364 490050780 623258892 606312334 51443227 554746631 867794087 221274106 707161718 194811388 413297768 815032248 324570753 508337502 443753397 578440588 48647986 594793589 339601467 25329717 164018603 845264523 458980543 165111158 204495804 594189306 642072329 419861458 619791794 739208785 679445585 31207810 454188222 239659398 195372017 856666226 463832102 990203749 990070147 17027583 317035893 398124367 772207178 467665856 87774412 902331458 778257251 927026974 2444464 28006506 860626285 795200090 168230919 468904192 187600388 214335405 691756165 563678177 584297841 20013181 521716915 426992819 281568253 444519103 506089397 529210706 161876276 786642995 836642263 408967321 556655724 712680805 153795423 821209984 630095865 942811219 24926011 840839174 312437851 801887294 626408473 411642232 925423326 608089113 207166551 521179105 45406005 349298841 732410987 404279269 109087854 317523863 960498401 382927848 315750634 989051198 216513468 666814479 311150162 753693752 242019911 202896691 12173586 345558717 463842163 756383780 620440291 178600654 14106106 873752927 751975489 958812301 825529889 754134092 328796167 479540709 783424175 159033180 315274996 369458634 722187822 150171894 236490772 114112184 366531270 623164595 55091704 780404139 301461278 873834098 189552932 426924149 852393995 201158498 236747022 109654315 838156792 712195952 496359976 626853301 521819301 238399792 84127528 373931415 4498015 122140679 402048857 377422514 398266974 549516607 976492887 390561108 902453927 99156667 324453729 617141868 944188156 947711145 549556124 772836102 690495904 830035885 673736654 160990034 554575571 319095521 912385792 36942700 298014352 244733160 38520153 823530544 960065150 67128540 931324184 545960487 57062214 798537294 404246711 525422860 90505238 705717183 213807380 59451409 837694312 668493778 474971788 7660234 247754675 580467921 520648932 80491355 161232352 913047483 532102447 921766537 198722353 845508833 630790999 570619329 71449984 480861916 134271401 483825004 693512910 995442027 798340166 30176561 473031986 350648017 465454872 630974615 51357844 458287047 880012757 237021191 549166256 559063814 864941386 582679644 640915642 992778942 460012407 302855791 160578168 161079357 914166901 323049255 409391964 131847556 980294615 850587168 631964877 962713154 636730592 401922271 927965037 504844384 22688250 522917576 631030129 43295799 147640800 326355276 676959153 992622135 868499715 169600924 566122501 480147836 931319905 914005796 754867765 487785482 220052652 745887054 544329599 185700270 953996036 772341917 269563324 780532350 820538828 619993533 725436624 289271616 384500651 490109475 880441898 155712369 850118664 559101468 38132857 993181042 670394174 379451557 900318824 912721085 664538382 148177093 257838558 618215682 522764493 538805154 392913839 380989862 887123049 28095575 490067233 719260973 265440316 986105730 122725349 790654591 313404321 901448333 663938399 956690394 908536898 306316067 31202781 91566206 875847017 807815138 236450652 498954404 968102711 194414671 550630382 639241981 329764130 996439549 9680274 854219306 719703748 528306822 26194205 709602665 629868743 662825338 191269843 911190896 493182669 394862901 878935195 346934101 632690319 308089327 418118491 857581435 930798736 770939026 43109334 160476136 149348299 546152536 388723120 832785957 131129434 430280328 315850982 790596113 223357483 798734240 754264163 987841288 207703072 225055248 697918906 479168265 172814648 741256201 47703153 511224361 975862124 576406559 757545086 521836309 111212204 645393899 855570093 305229651 945636217 995209662 384843079 199167907 561950716 855826321 150660424 99699559 382154493 30093175 912762317 241536299 100093695 894355201 883494077 898543029 420469344 46213634 84654678 202659258 989521535 350154928 521956636 551356550 865800014 167688034 561616231 604985553 26396425 939253261 269217943 761641203 397533497 603488485 505044334 731025464 391062875 544667778 301537039 394517873 827581583 268286801 476050995 190456747 558701709 842202904 148234945 526577483 898904590 416301022 567358787 306699036 692557821 322675309 226726636 197782304 491975424 912101305 516353404 811588943 326716139 255910376 299538397 797247512 700303671 333687632 781405221 217524862 851271366 363631081 103173559 577191779 702094670 192123816 379429560 691924713 438386210 904656510 559424897 48516806 149211326 649076803 374075235 251389883 999432536 93719126 714872432 389100398 832244653 77651514 982596215 11620151 204766755 810952163 656001068 471942707 189998989 648712865 558982913 839382672 150953331 589874852 998352211 340346299 946628891 416912132 458933497 15323209 602427701 425520477 618848861 275301712 190106113 8497579 673653485 250312636 180024171 416362718 482902278 236156000 350703668 216965773 597708375 688611979 65038053 886908872 104176265 955469336 62283665 110592478 772566323 823562731 860424223 876517096 112046308 560981383 203921747 79316098 949290297 269059355 338441051 908577920 19134990 864830977 51064407 98935181 480297391 117710313 717494924 581073693 404959866 417960000 669189853 154691668 549438278 904064664 813471817 766652507 568649677 230806134 346800953 563345733 183184184 766998791 299009129 519986906 516836219 351086343 296906729 705683549 931081731 689783959 803332170 345574447 461513208 832891720 53753649 941156808 659052747 928129384 508530958 341025877 858926169 680984493 557056390 598730325 352305353 687844219 626948411 857568580 256848650 857582884 375597655 499896593 918486088 337246544 760729384 534064882 612463753 732852881 645990005 257572297 64753042 595368428 770284264 571502055 752038918 879989827 131662472 420921201 212898927 701724684 214700708 289890569 488494293 22791286 806392784 92708758 292041589 654167657 284508527 255079762 37881371 675486181 321104102 493619475 990495133 239290888 983034222 833352909 34834021 706476452 650450053 21413373 422993660 854170765 655804081 194383423 153957740 351059313 393961142 175284700 338583081 859155739 71116261 634202150 7759487 790606335 950159579 824267020 160043889 914790612 545655837 830248605 982058440 808412251 438394169 405410189 476527761 765952054 886412328 799278372 964912651 464048891 815096773 498007292 56427172 841880802 483369817 662072492 835357852 735430698 566869495 313843241 592771339 100158286 576447491 931530283 888021944 314007281 93783740 591016474 668341252 615305399 901593521 257738540 492054143 619320225 785066534 126135869 658998232 776793851 732506337 414585372 872094182 980994843 916704342 642875829 275569245 652140777 126080877 967946222 370317318 758609645 372128527 13298240 734676061 303465803 254136094 378964644 792755 295391226 215834623 115956344 817058395 13725198 415118386 932180978 768902961 347806522 782019984 495661682 808490002 931081040 213242521 288503629 105045885 842777691 856500535 350290803 473136848 138638405 89550121 939667418 785240999 894342778 632408086 810075115 556916347 872220656 451794613 876627578 584966272 670841438 642349034 732900168 970862622 348844738 951558727 179476381 176942020 785688034 579398116 915162934 390472596 174809162 145456838 433775371 337663752 23297649 774352304 738173274 357792694 829268231 435059339 20316809 878461927 793752899 594617730 975335334 430794173 963063372 684197982 12010516 321899576 582307366 95770539 875714247 928697891 900672689 807552561 876902685 588466156 677289684 554517655 295949392 634404660 285598195 906859927 885784837 356202073 892107540 5527543 404959416 619314814 594110622 47275351 109007387 452736352 512525178 393604480 70979267 918751632 191943923 923097424 796323554 403521991 762474960 735182702 692601229 244477569 595417573 241616934 803800326 907632256 570406060 285607055 224487182 534105407 531126765 925726969 82537609 506691914 2517625 581119224 716224398 13446371 755240050 224382007 331617029 392305060 488826336 547250159 398690995 307203320 135964103 727843966 906715342 35872919 738333669 951896908 325111441 27603631 128068533 511884544 419038875 889597237 429553606 686645124 965525267 275100972 194513536 430356895 825317395 269027465 892638652 276205899 571927918 765902097 338348439 597788180 375188055 332232896 651268204 806136541 919344588 304423230 419764671 421414183 183610188 879524279 338328474 490003978 997385421 139746301 944811757 291877728 123846398 622201228 878852957 136712879 804398210 635484819 219926313 575452175 509059193 304636780 884148626 540614042 375100754 452511880 196158845 568928232 22290740 877025751 510909775 729213701 978189948 569715132 752132470 133287893 488594927 483305376 907390736 985904102 255384071 422629763 156831657 709970053 143831104 999620728 406034263 772113756 741384890 110461934 537869854 896685341 851200276 874584852 261574140 475615245 851084462 676016229 124278059 946160365 514062416 817110068 616353123 163032826 11257581 693558043 863032813 660866660 831653510 855933009 424000994 406668318 427738388 769724535 321036905 315524242 137661804 467725311 957963954 708480470 16698739 301559623 986049107 797571625 372749910 636126408 587137661 540053797 171551637 758453922 866225077 406968984 829083742 855519141 716353490 679217351 533682185 906485141 717138421 324066693 127744941 266420928 460085428 843813119 411078149 825946225 361855310 425762560 424142337 73734899 96361001 93348085 226380906 797840548 824447747 697254780 74803840 496822016 332346765 3252985 532744215 959982502 490406213 580332994 916893946 77826955 212295921 179258504 125109793 421492555 67024003 117727884 745579323 858810338 632883275 75481167 848030060 448633499 220979972 518649063 127958058 330987082 787893048 286665280 657091498 318229489 181133550 42749903 52506487 957578409 465350642 183917341 630742098 685333401 312063180 959789374 578524135 915271979 290218427 146514105 495187359 70171056 935241739 363444908 98986186 955986719 284881543 380459684 190074067 288898902 856828984 559100592 206411178 125639640 297707308 31286961 681455981 345012363 916295316 769625900 251206131 95923734 906265041 370634173 356736647 442761803 858499855 82091907 327953091 17746381 208343476 616222979 814594124 86185390 450056967 971126245 195780965 956491155 667027547 451436677 322008138 318107922 976449129 46010030 234672414 396789640 333030075 670526207 50123485 957262492 629297611 23950351 856851314 445241847 31860248 83394281 509474709 706530030 239573288 654643190 421968430 822783038 268601935 177083171 955113715 268414016 919709843 357682137 139430656 883888050 924887959 926002365 997307314 385600335 225736968 400739540 749762526 893277607 686997392 565936347 872891794 959704875 513876689 153285433 275244328 888631171 365696089 923995982 885463243 401294094 184550185 608565799 597099634 93575751 763159404 885402817 83520154 638224034 111437713 25539558 137609970 418189490 723515118 385331260 900904032 385779993 875542237 105103159 982284039 142512358 870472340 95544901 901803218 191578988 652350684 447327292 609067884 917140138 386448484 592209390 52991513 129381965 302908920 181003852 152440385 11091065 320545539 289908558 96361517 492433005 477674308 592069078 990103743 501891025 673531969 331637654 711393478 17971532 444574578 544060600 869997976 988927746 842642272 785436876 111823401 787347691 836202754 979314940 889794861 939765921 898193401 377369258 239751292 172831823 846395804 316167387 702592340 497550228 155021631 350902734 254414058 89031675 146203667 445067253 761514803 488498554 144363610 776504658 90174259 441348963 293043063 721407874 787919001 511868823 730840155 325753064 574063618 534325177 60594617 220009567 835831249 879464965 809792062 963010318 650918199 978713324 22718964 510789721 477959149 716632483 442721113 449803590 410681017 123669818 175531207 952469683 671191554 709255062 466017500 714324315 333011542 813781639 414440343 978258731 498350941 878111879 760009833 268481156 132203898 852740045 91672815 645969072 327184104 389615275 414030477 884118328 483711197 507409559 89642521 546842990 941742901 56579349 837327255 664845382 422259512 991720542 446757166 698604211 82357172 227028430 437271555 246401382 313471375 478146301 74321912 907671337 925138096 424463980 234984811 750546404 684339736 872240309 937315216 22012998 316832640 556328829 289068980 352644688 148922974 86053152 472696852 259525510 936622199 903127601 417017177 764699691 564861038 468292112 962284290 784888060 898717123 813644895 8267513 544514900 350701371 401866513 177595488 136542667 112049850 946774152 256409708 595396508 729876289 215056859 993684107 599615007 687618235 360537206 201961996 181696486 29589448 996879417 837175880 930432226 552626941 240113620 115152989 62749695 852757339 591956872 973015746 900974002 315172406 843370023 517565 348961429 450413908 455139514 184019411 536762374 439563555 596252244 464762214 419354978 130552455 825553727 639591705 486374413 669802614 872126671 443301989 164387770 265020860 760839265 940536390 49271653 873629271 37773212 942382661 239163872 928233239 183822706 891233252 361825958 269075171 705923497 70843805 731960795 420416245 681776406 620351845 132615531 823360453 882017628 655238115 881023509 228674448 246895361 785719871 101552040 494147974 284538152 888667649 984647117 96739815 630735867 778975762 973698227 49017005 410692340 953998357 792480948 426053338 670370195 51038653 655808648 964556562 261354223 265617869 195853763 270618776 63324889 833557249 781295114 555528472 420491842 372922687 272173444 236315509 581286827 522661086 325735175 178174367 417332245 885340291 301157826 103643855 575768448 709863777 806244646 747891388 735686111 487133998 950922505 65407955 821966594 614530178 760763170 160609630 935583889 476509832 795818170 991366945 781484435 341848203 165449495 252060618 633554818 11918271 503507110 960409430 274096630 252541835 59410724 889520193 306823603 387248083 190083718 599216911 41615919 650446154 501717759 711324546 264278232 661814964 799935190 232334204 246683486 239673838 981085846 201297037 448231337 447198021 600381368 52664863 411133039 345360960 265835056 607379781 835813232 189167346 524764886 295605330 240259454 47357124 688393258 168322871 71005954 299493259 124026591 470854355 569302784 332139369 874530722 932234395 867937940 189647528 465656329 21933133 857117396 380876629 223425017 514747397 39003981 942969223 392356043 643770553 868110702 569963076 480929699 557492382 848601496 844841574 497603321 652634561 80451061 462129008 645482603 78094839 328871099 818232298 901820296 186730363 199777936 304621775 435563727 267544336 28531744 68697328 778815606 583438431 631446709 140897518 815981116 395341369 101922414 424060469 600481341 626699636 175671420 866102824 402300530 261935798 105778922 717367219 235838642 152575129 906552683 881300417 918070608 723768207 607314598 39060484 318844429 844570068 177558551 380193963 957538886 410490737 649372298 658522813 515537963 988449514 830104552 169007712 992178015 213344573 878119320 82594239 858784116 380642247 935693855 428003826 706211714 234734069 115665135 546213228 417596307 439422478 341477096 744276311 255044039 333068160 45107931 506369423 342841901 403830332 867469069 408881397 188205122 652612845 326086415 362672160 759991760 810630951 911254577 693790101 115460149 587180288 688251066 597035255 838697407 186024655 827029883 40552583 52764487 119784627 220905098 306903894 170988466 239532915 909027651 61368916 955376148 190963401 776626026 441667454 46020616 867867764 166458799 989410193 798870824 858012483 621540487 912714887 923574671 89685729 518980663 359037035 738568553 972832711 266053359 324463170 103698613 515809079 371035054 650530132 528488780 385493397 310702315 786566771 787022436 768834639 739783229 283715285 738492923 409932202 967586830 537800517 210097992 560262024 411425096 558858870 942433263 303407052 107115058 466014405 264496195 433214223 50196102 775162557 60926802 470421080 890554470 748547925 490899868 30530514 557432376 26812193 327063777 998415175 255908450 631560426 542741040 599972910 194133549 936738628 494779440 865915780 224294741 675653613 412258513 344600140 818675122 272515343 898495775 91786625 201163450 495701411 432578167 325882411 369737562 594036384 381241216 733717148 803890271 236026992 704263002 14272680 701940001 264631754 981946823 991196048 84725433 420406761 882163807 703310763 150187936 677242960 432566555 242027562 662681952 110699423 544121072 307225693 813310304 347145295 756655112 446249024 153949986 528019591 211302120 469718876 39774634 676789523 406104928 638548337 409711814 628987349 521856574 605814912 471861711 558082331 737107712 940090093 812506795 553781998 974122052 74616039 771350443 760161482 295746790 715115794 903735061 443258197 548139201 241486078 355068333 953801830 908369894 76051338 99096469 142119928 819187487 52041903 147690445 103855877 612978908 418580037 531505105 186253772 821479302 777678644 327999954 798027023 253153854 348625892 518454345 286115641 524092510 422553965 112958235 748713599 788851614 834388633 579569752 315185453 384699162 373201537 781020917 622604205 40852975 610267816 523368274 332730033 978257751 683649801 13031946 720181569 781751002 610942594 249650774 4046784 674505236 658765125 30313288 3355013 253477803 679182228 764376886 651282125 653714464 532594218 479798954 183587261 107050399 423226364 543609070 226352491 535928009 12770288 622594256 148515054 877636355 823828836 122227870 994421437 460252938 785873091 379859401 237919157 666618210 47960719 887739244 594039404 136775131 533544848 428775184 825655907 483724215 299576259 961087274 501434475 846055509 148770150 838377670 625380785 132791697 714618590 791827640 870282625 859129738 778203283 932604518 412904510 504904391 302620494 64166439 597445799 499257835 161270013 175692991 887429848 817028258 150316530 88517928 418034381 108066903 147339614 164687120 414092028 681899147 679839617 232368593 130990503 822068827 264497225 954258438 844106948 14723275 759231734 983029769 299552627 556373974 432062450 41878658 68328352 212690325 691401740 88504300 455475834 124004775 891820439 317359597 302208756 630339214 683028502 407801534 169026726 849046616 261430965 702925101 378901012 669797653 737509779 711655537 9169842 222832161 981155850 152383256 659052507 22889162 311564947 105222322 330972534 501343981 227221596 356170944 41701289 906165615 688531416 541552534 205002362 272959785 691199977 394757426 164656829 665864409 956980700 254944512 682357747 909375173 508441813 202023370 993971589 532320544 244607295 190272582 384233372 811126876 271601932 129597384 416864528 963097947 851547939 502745447 82180855 995644461 522117204 723332167 100547919 212572856 209299401 472187388 813174996 931887856 988430909 832817772 750509337 190631320 732655770 166999184 335847701 57206101 575442328 323194487 872989696 166346126 350707105 519100134 727564358 861625481 875169144 354859357 902676913 268129734 545338429 130869939 528361037 212251360 488372509 613010863 743914895 929886880 34014868 389969574 389653653 669061271 814569278 631889914 850937105 643856642 799769505 63643916 568646408 423096083 758859026 949548521 178079281 765545082 406695205 51967512 488382501 899899282 846997285 116176441 323816692 866202474 285528277 131447102 777846581 206141072 393964447 454762871 253171140 776014015 334195779 111641663 297399406 376127502 370872302 716038879 292669844 891360292 841513061 674453604 243525035 664633746 865092634 478021900 553384189 976639966 10625738 185911617 317229480 185910945 317243382 131958115 308657617 579928760 787766094 857554148 91287570 998681407 145051920 794727916 527474672 929004945 481800271 799386834 193855882 144945146 762536471 800859090 766013134 248688515 281215590 385470555 989657643 122565690 478552246 239147031 349514047 59953119 33368881 781472375 398229059 497776794 324344294 838123725 398860162 991773244 361163528 418234754 661367978 510152884 335678827 599900243 387969527 867520780 691731605 572284042 275228221 443889551 107366543 836133765 601917168 676890453 20888574 96074573 280295958 802267249 132245129 237295462 908451734 709164542 982492736 517645114 468543789 378429735 629016652 909241622 82409765 161972860 819954784 756648282 132935593 223598312 818949496 575719649 11705251 314281755 767030218 851620772 310385658 157876148 778636324 811936812 570942556 41528301 226151145 506557072 593610296 650410084 504911831 533937563 300678278 359372980 496269977 241714153 838714197 958286379 115459505 184234859 717598532 925880912 929833698 593265445 973784076 87303565 779328350 884799653 196945310 824977876 600929956 386133856 56170123 90635301 230104268 770209488 33038082 105663271 700488995 689021487 348846548 299749030 656280340 748886533 711887845 636837946 661755673 56322488 813992934 201079971 233625751 249025122 701506792 248133310 302998549 447802668 511450846 678079224 362559593 62218965 936355832 210223122 646290734 324986604 787629964 604835942 764472898 423635343 105607852 974317852 13753989 293298811 639682889 603776160 490798848 83049896 799654267 58374264 460935674 769709223 870167195 246933084 295487698 520641353 197164326 98010427 763731681 818481276 531257681 836114863 505246471 734762567 632539063 158620913 804308871 111075928 721350992 150361320 599929944 716910471 47084304 395514664 555283303 533757611 240707138 687525965 238850500 632890030 505842442 167048195 508796681 868173672 253023279 280842697 83007304 273277601 568284730 557439953 658811298 358006728 996696261 276272284 946388569 333059262 784304923 224701634 349724294 102106533 835612874 667848504 554470633 620331860 944912598 317176907 805789742 676517056 932754528 343642178 721105802 604398113 758422590 389476212 108774734 612924252 647595197 223550477 245775265 442297854 435464369 754153814 244641420 546829235 754858056 441587115 512090678 454362654 446043830 34015771 510951943 997642597 650108083 33657020 129620489 122907263 13023806 714712264 532487868 379800528 447421030 875861542 527142372 935796389 145005549 991277153 77373924 8895609 365900764 983621188 515038215 441706453 110085612 824334267 448242151 344306340 492710789 546933494 564475458 265188123 117002283 677541869 97738566 873433212 814455629 112440613 234404489 333954522 48564649 586400101 387355070 133282901 570534299 993505061 53442800 559349187 11266895 802645494 37610616 328251690 377145820 330395064 520946063 73168197 348749754 333044343 883461009 350750043 777381940 236431706 76209483 790420485 454231129 295470266 741417751 804063306 939271058 581525673 101758832 17755954 955074936 652211814 688953371 325236833 65222192 698210997 887635153 945036016 328511872 888352298 545282049 606775644 460146548 72025135 200901231 126046696 601839858 425312237 891555712 851857322 555001741 218914110 693640464 118851492 652157506 731484105 880853675 419697446 721749303 389830756 716034550 527249372 29842582 689492364 816410996 118722480 999472399 476326384 219378854 66428384 704072835 790697364 553192537 702791522 530224912 321998974 178891926 539290683 700894563 452594215 781379522 101147809 337129959 805942610 149456925 200389029 751515660 998774132 969022932 482147534 835753195 518435130 612778661 818032584 259625438 106374901 966717499 783763173 300815892 943148196 261771189 773976941 454482379 557059181 434530222 1256259 558461566 883219223 346053386 511015845 422979401 39657098 914021083 343806342 972853281 83238407 864190718 761232311 647038758 324714293 243693089 185358728 954077816 394518904 434342524 648015464 502263764 838901620 234348394 53981643 286291619 616343752 586241880 901542335 890641961 717816127 90323429 13066032 993778236 643998336 464644740 295447151 720594638 588807827 378334402 883726385 890186603 496011165 757745689 829687332 919235976 211820177 75124498 749012331 569949200 206299233 652820838 850681406 223024562 531001354 362526859 451811907 920646532 5474543 39046942 405811308 391167325 339888062 364922291 62305850 510328670 469467924 368177655 949547458 899769415 192910270 627815398 999805418 546030282 110657950 213772414 420486299 466632425 399853803 833093949 424685798 405941240 462561941 448451132 927065487 832507205 858739045 385930801 957654210 305995402 508424988 832633958 778631619 824789749 52520507 718101879 692141103 510355853 967961387 463430226 141023170 278906486 533762766 249134774 182946745 436303293 230717697 492592415 342889399 999412229 355510461 990514854 772248353 321011923 356517681 185925373 766664666 610347363 678392149 834950028 595876479 551612220 699133640 674036356 616422337 469423822 425642114 394314614 947631618 905952088 782341721 928227968 582399984 969562260 637344549 626217286 82894510 690524931 102423701 63946434 111581153 701294228 198172284 278158295 649232436 800574076 219189542 615728489 605507068 478273097 163028310 817995631 877359654 970891640 431423682 144533887 2552944 389669646 768436490 163972981 294859307 109168185 698332340 558433893 926311973 512441250 485623418 800297795 851632025 363710471 623338688 643748257 128869566 205479926 264456327 308764919 202496635 238772756 538235466 897140482 686183705 187088839 4229677 536064048 782499389 924626829 226660898 667820423 160496889 945401281 884962175 796151538 216604018 222542585 385097312 355771532 221035412 271598867 62987334 683962287 64606770 100561619 381673326 845794392 367449382 678715658 228762567 150615758 299699152 184474978 109401872 266900136 937007595 331917603 450962118 514411224 636462247 21344411 94284663 629015176 143714036 338840186 473844179 723953431 368252365 793880975 303831895 923247325 568183104 745378439 332814379 751495991 790838976 787228916 532523675 805496627 674574560 981840050 328873820 186918659 571628869 696302863 765231743 472049972 893832529 652323218 266865081 568377485 33992714 194610753 547070792 258358867 431037447 429612993 986514915 72678709 742476187 440255589 822702373 957242906 724128354 145111023 556022754 775869808 713835517 415016293 373494146 334324222 926606298 245452067 978615339 317806127 128063399 951138631 743305636 262130874 991541954 640049034 733987122 496804116 642137418 753980570 249748420 37260683 899741312 664834081 343653002 369313088 48251940 349241262 731512391 365294396 95166197 926493737 369389056 809409754 642151053 296653133 742433534 822658690 117844982 904899540 371201826 511383322 361721083 775625960 330747031 411234007 750028322 985715766 827550596 73734713 395996792 314840414 180763465 75679980 130859506 518334840 773099670 590456215 289933411 930822679 334255925 982211618 416672876 742663526 356329841 706805670 955228645 395167445 764067948 742800929 648622949 99735074 896208314 479280209 539798582 961022138 217233872 568392644 287848798 611771945 389936330 936055185 368464077 512266373 30960991 334805485 661356922 146355655 145959162 599545108 167350255 209538813 871441965 788045428 601564033 355864857 408475137 1201996 12566192 876904186 698406760 624248699 329258339 573507574 92067729 286498627 819513881 190838978 241542123 911660217 715363868 238991867 711048820 106446018 912502621 820587906 819628505 897466073 321540005 729373292 492465037 406512855 844474179 826892917 923728625 783804905 437528702 397228396 778296467 214535582 117790011 241922396 489648123 136755926 373705511 57000857 923508909 830287186 641883012 28379537 549162011 486677292 893295734 810366289 769655735 626145420 643610693 641554214 718946378 361530281 96978148 379895580 54916411 558568036 270866501 597140024 881519564 64887397 357673184 386822225 705966016 116647944 40488160 631083209 807666065 913350616 249258050 54097818 471852308 997410233 264602312 48854360 206686650 45545123 851320713 416998872 360002462 134417494 222457070 249006864 337446688 674008614 49143787 21070301 240755843 1158807 365616392 695289326 132702501 594153570 204015312 265126010 338253155 720078414 314449230 737089572 267341574 154067620 538108027 644673518 910223188 474077591 301227851 808047534 157559492 559693383 796713693 179149143 772879778 796303721 875217776 719879538 763947881 129157501 423132708 495677555 241777331 383998447 572229977 425525309 975217536 114259319 115165630 834560869 321059254 118051912 388782873 515933616 834234371 144392590 533645748 363319346 420717138 764901189 746303040 257968037 192997924 403539851 694336411 385363386 837787575 177229218 626198549 222160806 891161777 760883004 780684401 472095469 823917135 154811196 602175240 451641497 339053386 114453046 230104506 79128840 623403096 693914382 223897586 657177223 322854699 736264557 533858079 682626582 644959085 966961637 324785388 938264496 707322925 726309783 772311918 571111551 571941342 218058204 239131986 325590292 630945101 391849570 953554803 56799258 449567022 396287062 612622374 746751182 793251341 732091995 470245518 392301590 502807014 885629015 116009012 880423453 607834468 883047351 394022587 484166111 247248989 193376147 978078030 93119535 692929187 559832216 918186853 179033930 618399598 594094724 953175572 225839172 619382238 321071495 679167627 156117406 821274271 67745962 900766976 136460059 42051256 194479321 370697455 274154720 756248070 801552328 748311581 225884993 408621226 403110493 185659544 382078519 550542048 301434157 894648074 658676205 454093245 391702551 788794592 11236447 536385114 661095138 93422871 543255305 170480090 813629405 682924707 812990785 885912462 125777238 167456503 523527448 999119643 637807374 296001280 359744108 249209946 441812401 459259583 487787544 817387740 138282104 592618928 289463086 483146067 182574362 400535753 648950186 973909557 335655299 18077622 918325962 108131299 342554931 854170337 903892912 51961652 55536160 194349537 841289239 6594693 993169346 754226562 742777892 701799836 249372368 45648581 146494899 517226537 711615196 825758831 344629634 636155971 486042474 161311530 7942367 170739772 360737576 536308932 950440748 284082091 337799735 984581725 647804903 808713514 219662842 776351640 597173212 434774542 832153259 23016708 530460056 976496073 448648272 459124158 946098553 572423996 788617995 268026297 133454862 92118912 141999450 45139021 531809812 611907973 465416917 781367084 339614240 134916362 596045767 324020924 891655629 904622488 923851820 487779950 867774189 726411495 723434900 490940771 213976873 321701398 431871858 771924406 248718747 609552012 72057304 726850478 353921726 449941503 13964900 334335104 649225197 114707126 995891133 594509456 614264783 891203522 71930795 435030955 833758377 343266599 607973291 418424869 438977899 528447432 256593992 103951782 110309661 656571614 917602913 534815012 184792461 692834816 805516527 268831851 230986281 527444467 276357080 84958752 648669567 749506220 612419697 657607028 420365026 417565815 858412577 547590514 159250405 715335217 485940929 261319044 629102417 99191481 366728424 922521227 8134649 342533755 509180369 958215351 90499015 598987927 326555662 80985137 26450293 493791529 748267863 179214080 220524238 301388748 629199610 958067104 226694053 58873771 890650243 991318448 72517788 782172935 31110449 802990042 590108073 38702598 99790915 187346761 134004220 270213598 785080694 269683547 457810808 643999844 360899890 793242273 726901656 343211421 856894499 12435415 305666671 567930862 223841351 469038619 92285175 711423460 705636461 861695587 722780486 958488216 805193104 856591738 77974305 93195821 161997701 574031456 630949160 983638083 885750360 518905534 124940879 445833014 581312402 646884028 33216907 942467951 451395191 378196369 858222475 180275555 597840187 113047785 900593905 35854086 56034223 25107201 741403277 125383871 325641031 192519893 767211418 515315639 647077371 873165816 658835752 748030735 85566977 476950060 525374226 591692441 642604080 360734370 733900089 957870220 992653170 990029609 806833943 996391751 2224976 622641174 830315897 805921433 722056414 36913843 47899362 348961546 418643125 449797104 871199353 667030799 247106799 504436747 22130034 934825488 830458729 854714817 694603382 450585354 298808577 437994768 576673498 250991580 650101982 841227443 6439368 513641134 719905720 458731419 985249344 146457724 454476810 936535375 846621237 575364003 663235036 319278502 946758629 589546716 834816246 890877158 931609912 656783829 694225225 826290955 229274823 954419874 806273872 922075904 721848495 732918131 21683128 206327662 921389607 993241181 813588688 980412995 893315349 285645377 225974446 893570629 431546739 69667593 394085494 220484443 809225312 900320853 763890262 866433007 220511994 30393600 818003141 990777542 869405807 786678453 989739289 824078561 332809708 325359127 649976702 874706580 837485042 201327949 121197983 638401078 194377629 958134591 129817015 771274951 284306147 312952469 722356804 636348694 692970880 395349132 682241301 132425777 372174527 990708090 975617404 20568582 352898041 443457964 971697544 305494302 792097519 733263406 33587243 249869265 135955986 424835258 860880775 6335924 907762405 424350060 501599240 907367035 509375274 328618925 35703430 421939147 620157257 938671962 255110975 72963194 717030875 503421704 957427962 733289323 796612910 784342129 642581075 273161728 736534383 942252799 157684024 881743189 376873550 266756019 825571471 137548628 777189848 145810470 305676189 878086839 287323146 579839703 754193759 940675354 599385653 740930933 241201984 390424183 280687366 176421313 345559403 929872738 349128017 10115595 533891999 862726829 700810206 877971433 114726114 112876426 283984580 341951575 66087251 546189019 498424884 154812745 932516465 681171862 870010943 71486429 125447834 762699924 913454294 2809668 225521565 847427545 953362802 610032245 626719947 723948194 262614587 885508782 899086883 416082052 92814426 75923230 667683042 677286069 52269811 651778918 131843339 757145567 594149124 133609328 275462913 245938098 496347400 724973071 209567052 67125042 875936682 796213459 786822305 684502720 212793872 40001312 115276568 465593318 116133816 175452228 138424963 670406875 608459912 818646637 552426421 371675409 760195854 374997996 270650248 320755671 210187662 401163499 474125647 375224838 396341497 617791814 521464886 875581922 708402917 275982797 424414553 292179392 608446659 630061139 631020079 497106248 903769634 694642312 550706240 654133848 510405004 778114054 49513850 383985580 297932991 548316072 444961539 905050793 220149690 513600746 276039474 323531136 867995514 847593350 524535378 717380311 673526942 645016912 916173227 390810391 989698811 527575519 321388186 628341654 6389569 926035218 470295746 938565382 248521770 466366234 643470581 948837862 158732543 531395197 920526377 318766101 54144020 411025443 461728633 300025027 788440579 630061764 970757308 845942100 717013586 982210294 153446415 643187921 751000018 503589456 550087691 571713518 448298826 497782901 143853797 195928051 286936133 699948795 771959680 161409124 516838186 770649013 285649171 139066795 532745134 661723084 357207745 884416373 702731541 199628001 887292176 155713288 838373140 424010805 665838273 335406476 89717544 995687449 783236728 402312696 164056678 86810341 134099220 457196004 847845468 735815313 778250225 497115561 328808100 103913401 982649348 955551853 69252920 788486299 391769426 54484732 74487269 804060581 317966799 106401743 31183789 601166482 570576247 80092915 820464896 286315728 723142822 23975337 57772149 579621368 787296956 497848108 975840500 691720320 818357614 509746411 793502920 255159725 300209121 702112472 154306750 377475465 242429216 258528107 813372172 125800706 15891910 853817485 285357622 335051430 244002808 199283364 60325458 967812245 794940052 76482964 783077224 435588706 121533452 898109959 366256828 254651161 57071383 681517769 203294010 922355625 58902066 118003640 869577964 901960192 416459071 974606337 447320730 111225194 317399654 479334713 298205541 785672463 364309631 316024398 447164134 850933176 716917782 445281199 861511735 983813646 926898845 403195795 30195990 570970290 629736440 574391614 876256004 208493399 497458689 900563017 463066313 428226809 562002449 541415293 454829969 970337765 15190684 672761007 635078288 581374392 49537521 452056913 779816579 339141396 995566703 530699204 208069787 562512434 213408626 639937910 305268031 61221188 254386478 386514021 980675427 247484136 136431017 764268510 284615446 255980744 539447489 601104878 990181247 714624474 118582136 874189210 878998745 555699209 863456094 401669652 199199804 519661268 357418448 5200682 417576390 441545956 170750928 211245380 670607839 612599962 413069414 986050796 622111744 926012234 304877280 129130470 379108094 782183999 833409621 987664443 603357416 124062610 615858335 128052535 634331341 207553496 649079079 524767562 341479445 642304699 450388681 803777588 990867761 453187005 448345470 803269682 835304439 410969879 51356046 585284265 618528159 674535482 853461877 304475787 621648916 851554635 173444323 109504063 930263940 569164542 124639981 429697060 242158974 912860977 40167621 807158621 858707726 889695205 476295255 931076854 309299108 980324265 426312304 460323090 459958427 408006266 737312289 38832586 204839025 251997307 287974600 551893486 566056863 536917536 893006468 779241722 798474883 890680942 985011651 423089547 987235603 815110277 125774905 411185934 448236836 756570008 57666509 68868426 651823031 770268860 469551999 230608675 634434 316297241 39786873 710197776 52242941 173598360 545607691 811571687 278881275 221084539 99208970 521212777 190093597 781996909 136723869 473307447 290247221 611551630 40529465 927519277 110387074 884006412 317986463 183942133 913835686 297001811 776745802 380142583 830548336 183020894 951315135 880573441 108007218 421722031 769949518 887961746 274362974 927964092 120363583 42835109 776559320 359891396 644827294 679086170 364639153 189458687 347678509 233345889 252107075 829735708 984806699 149990897 753162196 528981806 744896222 591095465 439136971 785482946 710918509 137229758 74481376 910039373 269028528 599117559 536121801 885201693 314525080 726941179 824549361 483120624 28135268 134546960 234739570 258191468 7954259 701626934 423345009 600930719 377250036 195259543 936947947 388351665 817091726 918899250 883995497 847234723 206357823 196918016 440088813 390377730 898708804 557676420 813800576 554325786 435480175 530203497 305373442 351484854 270142088 923157768 589818098 800145578 252871740 780506509 706872887 35118756 150752598 30020531 141304099 192959792 123689108 285005064 243927421 525396688 414846619 737839004 852441914 984783579 448787163 414892734 893792013 20927649 482326390 779667288 374375214 450954153 212321847 104492837 428061039 932476057 505338902 806300739 301380351 148659097 364045122 554562252 200830839 372281572 454949706 215614089 887230903 460393867 726322382 51527508 63860214 806929006 311038745 280743409 528135148 62597484 695812842 478027396 85715803 598517493 540085287 619897978 116455574 728763177 451640744 681153579 348243479 675517958 620150529 792062054 61309726 126590125 148222822 848551055 917876440 998914241 504627665 780977075 246861542 500527789 774934057 438484829 875345419 484474423 694345211 499523140 595360408 875670395 700590386 726333167 593223205 934120877 687431180 161731631 905977224 825874796 946503960 724121973 505519943 756236392 921386961 634323306 387664325 676788757 122354932 393858005 373461786 914830057 726890582 991138286 82452380 153421090 747320842 124376922 802737932 315896787 828347405 377520644 628627109 452286179 536194106 629727004 378918352 853690628 963278344 886341345 526655092 413245192 434671384 935654370 874056116 438710637 164507547 26450905 895398172 591436631 228650806 881024530 739509807 122100961 581526916 904150646 287813445 571550771 677970179 84287979 200849282 262457889 40698458 285229911 305753386 99666215 822714938 508370573 757999095 504698051 259575294 138188847 77540993 6647196 889793339 404488629 443473580 178850616 374657538 102524864 870201249 903195284 365891840 432651955 516923558 304742981 207932679 967669710 375818096 134323672 122342021 666381686 360126760 907324430 950333875 525882032 464960859 525496830 176461968 55412347 684377251 369146039 586655950 838718495 329429662 322585978 365628285 25427890 650326509 813708424 774550401 877915622 32402909 35917679 988612894 721649636 224613776 971237866 237248339 908143669 110022996 822930142 667311154 264021075 813055800 564606126 615337854 821270283 990111912 437315444 895879487 480718706 771492769 632706554 251736064 955182714 618218818 286219683 980301702 174048121 264402780 170889209 159315743 131137357 166954298 427180904 103820998 504805960 806582628 418623506 696842534 44007003 222844178 431121262 371808393 117170976 188278628 759527460 509499957 145022771 762457182 778038717 100313789 741444521 293568795 482181992 682668789 309865789 473451343 37107151 148377805 96333607 785717608 91208248 408721716 475398314 776164864 382440188 701347298 776806740 376184299 331725068 345440504 456395437 70409557 717926112 913545881 21550030 499786188 60581606 736168788 763446534 291092115 636470808 849110297 396785286 762970851 395295622 51854925 440078198 558173620 695868851 283306624 427565218 562101949 944951801 513119012 789129606 24832648 95237235 450478058 381926049 96701412 94418656 211417459 256800035 40842990 54082392 821332814 31303722 884264645 136200687 972834894 127875006 18118388 560755388 114083577 442680443 564954607 991550042 636195699 180938181 366820018 207910739 99663924 876595804 125984502 940147761 3296738 898278996 251272278 196942249 992821982 542304301 630446336 87770681 98128268 910849188 105918373 354404340 293017149 324014968 124462865 505148301 312925684 852538322 236588038 569557614 709092745 939481688 352227122 887418390 385614353 665488552 604307623 26575913 952990743 594225526 7179186 300746094 907436002 766676452 971281974 565618341 246524958 47973539 780485204 32764703 160240111 148103705 861800102 532092839 765470412 485243892 39243921 251020134 15208316 119625610 190458917 610952234 608132669 167136746 142756860 30169415 495207177 832829443 24300292 831069326 98443581 582109579 956166484 358307575 144927031 868107850 297580001 245462983 393832929 373023300 889231693 29146990 322010021 974132008 775781477 574706371 187339147 456238184 213406598 635371450 325514138 627662081 510259403 95701375 648305894 84674191 367768347 323087046 529992460 257772276 830477335 705232465 944993033 142803327 979033032 80566887 231395108 928013436 741638027 173137653 348525604 141846333 1392420 93935087 854079304 405484996 797217582 742053147 781857258 211293099 425077375 282819670 286287923 70085739 868306132 75907334 334464157 326992269 529404660 480822531 710080149 955692203 184293984 305312448 212504676 272126666 768846506 656464167 38481384 622262588 59693618 202802368 674399419 16340698 585676414 488327562 712709391 725402193 783388150 926781179 258588732 220199564 950763790 806019076 973479939 77904861 369700532 278380110 782382182 401116398 975535118 700220432 239511951 673775779 183425236 933107357 55748267 203766737 642534614 602817412 282606934 273161933 541293638 384425170 896786210 675151354 540844698 457535544 235912236 690118650 289881958 506669059 836038217 144755790 652509931 318420380 546860295 427910940 732555579 230102159 244639505 143864302 666920959 581341647 937798055 695128295 939229425 636311159 35342722 570539196 261051532 353173238 85830542 832855152 792639542 756876072 9514004 274914550 768264096 744836155 876977263 490977118 406701748 80792805 940637547 524599972 761526308 563128098 5144724 730554544 888963678 949696165 289706649 16188768 821107443 816218098 657194890 823564971 431820058 670512103 87045071 203232392 815280520 652684613 235455161 241004246 689322155 769074143 648392219 779253764 704691540 269728717 238468457 126635641 80207208 701002783 419853022 815067874 498848862 298325543 48567819 895828339 388213407 325280198 821907835 267973140 198469590 799553936 242296812 246940720 737194646 100795663 390265210 994604883 941950960 921469517 147642061 704269811 946063595 563780282 7797209 457606171 866560877 179118072 921786673 276857330 660490483 936258774 23048744 439130848 541846060 348778200 627361915 330185044 16586976 110699873 553466339 558540275 10600946 166777185 491049093 431906613 609535205 903541349 288890092 964435163 462096551 753256165 80587141 110560357 410912037 682568178 241420853 124891250 200966047 447173958 886743209 637304208 130579803 349738404 753880557 20683691 405657654 735166296 773278215 796523073 100924930 616973914 30329913 770358503 119422997 706643941 876044875 425307667 580144888 61138188 406331544 382622487 975064113 165911415 267772924 698434159 759383815 328206811 809189358 381877311 970219895 572450103 532378572 512989038 824060512 157830185 228733087 951971207 179145576 10514885 621085865 312694002 171850846 754217356 508052783 664725233 625898352 852921773 873824376 20558191 786682981 381311011 255552517 865219339 595727019 614156039 760672845 680995687 59710282 330108323 295257521 695478848 354163318 428787059 315602549 766653605 629192420 202940208 796295913 307643142 260731784 361122320 603212933 232588932 531334824 838429800 453928187 496362166 502571746 917418435 387035131 194112316 526149766 559925489 606840683 763462308 830321372 922018437 252749761 771180030 59384470 539358511 196807329 4133906 258774124 199608046 238431091 76900538 631876527 808027170 839196389 706507828 810150132 652078984 831201211 586887232 524816586 528737684 377034146 642305082 211480475 264746511 154340250 47693137 13718241 225952300 645561331 366372277 794399010 31045058 220063122 81270825 726745786 591293502 521097557 211082973 334990868 913596097 835111503 975296990 399680939 146317469 648889609 42279441 268720507 556208973 465843835 326657671 190872762 567365361 781734196 462858037 970818860 171239563 787706015 236054122 45692185 816493639 556467275 385550722 614116845 391071405 743387938 674253432 403775412 848034392 862677026 67111571 621315940 594393403 918400507 217567831 91968021 395812401 342480211 653801905 219448281 386433067 330835363 851979704 209982047 281283457 824240120 649304903 480804842 702926974 43730056 711725170 38554499 570083999 596848350 712214760 409947907 625036174 40709545 27425791 120389281 414996485 865890386 610628794 886967728 23894531 837391756 712482735 336612380 15371799 411798304 876444339 45360007 217032545 811522302 562489690 460897597 384256679 40676082 52688162 573550816 408178996 908176940 203338685 110440651 679047690 492891814 352835397 662506158 63128934 174159596 710770152 697921139 444920295 429085833 747649331 200826116 168355959 690495729 338526795 688202612 469768854 141645096 696519303 24198315 858941500 311969326 474425045 719922493 455863921 830722718 912517009 943340567 794439513 440106592 588085960 629155744 863273761 111578647 280353951 590284260 689295974 612617776 200489468 698300805 434836927 157107137 666865788 969766909 32553005 63740373 880653728 585676852 902314066 21099549 745814329 576470340 44539688 26985491 377981494 822845124 289966360 192611079 752577099 485885515 199424318 669634818 160178037 453187565 228810558 19062217 705069777 184873240 999316242 946527047 769679058 554903135 159625822 528427586 167286541 261826460 536391307 360577453 956796037 982774571 510792857 324449330 967400784 764377792 677285517 295666573 584087374 769192868 507357925 242108737 614652027 522051324 961373955 288828342 648764593 703763111 831670281 975725416 622884302 389113952 641543214 874012226 600709589 367839514 930142743 93713535 931649198 168195215 742868253 302358289 640970673 306311721 483547909 245023129 496398771 132434622 370391105 5574338 307595785 275071313 900181263 630497964 737294704 825748006 184112423 408728691 994502285 222544483 548753638 705160080 2626100 880891624 69089988 868874951 647269909 187247020 316958921 695270500 927721874 284705947 205977110 858697375 617488906 833321203 59149980 559061290 801445245 23365457 293045949 125577566 394122035 471210903 95238017 958108092 39100094 905802604 61132461 754282940 676572900 642763677 701776253 550803103 936882428 492598111 872278412 105529577 433589983 768084721 29737441 928911839 996291940 829015740 760066470 23929734 971771609 643869379 410157461 28099400 672316936 353866736 800683693 253798842 920971628 9114902 971469846 92763625 67405741 34011535 487363563 405688191 466691891 258889153 267536393 868471196 276593051 799698026 622493459 131899180 33015944 687670356 742706874 50420634 30632882 33552866 868487507 117644211 375419995 251242787 40318082 611025785 2038296 334741327 394894191 730158272 229014328 412039758 20943065 436118049 599872928 589253938 252332201 715787045 42720050 160726768 365113602 359866631 102925296 144611944 280296830 697839621 644369665 243281183 123368682 929206979 414437487 999858636 948228309 540970068 793979884 25517160 586769842 718375203 334241028 144421796 516723170 469788179 548980552 594620015 441001764 923295535 350612119 951164939 217995654 758003160 563721721 705744478 360892101 661564213 435264687 343766078 586101136 777589944 774518808 855835031 358471160 411640719 83066297 174809102 603966880 857474422 209685694 952588725 261356268 555569381 588288997 621042547 22371640 508602963 747562240 639321468 414672296 575500481 684226223 448139913 935857084 507680434 160368936 744465598 800319478 265120684 412681064 77527858 981998901 341150583 680825910 288911722 692180826 251404082 30261729 74732875 621746143 122442379 147970321 47913310 146211953 182660736 873122418 140534741 937347546 599166137 522238973 412124601 41294213 954392855 170091901 730249787 833793650 772676066 197897483 160279069 930024461 947211879 266711787 10958745 463325148 812182566 198418256 332362586 77980891 964796316 457081013 595395455 803229787 655802249 452563298 200065833 539898514 717866611 634064716 119555025 484653292 671903252 343161585 279610910 999716967 410944224 207585619 884155174 150074050 57181200 684653295 96317598 353295666 773156386 473726247 875095540 525483546 90907793 593686516 836774578 696779088 38743985 723467078 2182351 729105418 255180399 182756579 199660260 786544436 516953125 719725524 576288003 229788593 944006784 584597617 393904945 751881592 889286787 411029127 175934000 787848381 639458588 2061510 651670542 500234723 610055068 57023994 7281680 353328131 130023609 251098595 638245029 68161958 640721619 90934520 584669082 908042373 115079274 18100186 36300210 588225831 8676239 403845557 758660171 810908208 773076074 749202413 441182499 250424983 63823855 528884473 628651379 149693916 182500678 38417894 453334601 436084878 702478899 572400453 161654228 2514357 598436963 514517958 751459086 698858073 310932781 78107630 751299864 52090324 495559072 916981368 453331400 127394422 333763963 613609452 169144038 568639991 88439153 347344983 662114462 319341689 873425860 732806967 834460626 646542979 917755181 162641126 588505989 235550287 858256805 154148149 647702658 697021560 116279879 745586816 674608940 247000148 73561011 25612295 687417068 343872883 944577513 416266835 56019179 59654894 382249819 904473607 893397987 919571117 723591693 475746316 257539586 297432950 398376750 201564800 609827614 826658813 993287035 726409612 416364483 196129 925540720 248009588 140516901 560947873 406541248 422288044 924715522 184707910 603081076 784741093 781245407 607023120 442997568 943693808 635453828 976042712 890816424 724693960 514484002 967138290 979155617 142967003 971332847 834597826 731936592 551347400 561915203 700063186 896684733 516922782 553390307 264288850 281566104 881075471 27241150 733967829 323804837 832975354 641549954 895975753 595992816 250907191 210427288 796578109 291964198 69410599 335376881 982830277 881453217 53161925 409372231 502244400 719773887 79158026 180747613 983888187 714072619 442704541 14399326 378005771 884236841 462998160 301984753 887354904 734290527 786559573 937155211 782921644 698266893 250129555 875106339 622991244 106449703 538641499 453631245 742015107 594374671 878585883 800275572 584431217 127793412 367527942 565845650 94543890 160665197 933548056 196764314 116648421 89800706 981164769 62895621 31600829 221658050 524950413 756845261 347589307 878199721 82786379 952262792 571843289 257476691 503697558 403486361 914142985 434717213 302211560 537994805 649472146 458151606 840726514 98437139 64100567 145783429 741609149 366900292 523967388 690135946 150089487 775542329 446513110 536485673 561582290 602954410 52247170 331221007 255408350 379222977 605573152 1081965 449705469 184690887 39456472 878626537 873310081 136172013 659694469 119088201 130455852 300078570 146105111 605539425 392364676 853374375 468821847 336328678 781259910 45321504 445650343 789619402 716577030 925624487 34408262 274287548 54237301 507977216 845098721 780912834 869574012 644738163 927037808 596538732 741227257 960518885 282123873 335243821 890368129 206339344 262163593 425679264 493765414 37025073 747866101 225973267 510424744 745126246 35847028 737081109 996819074 333746554 293862191 230579622 429173473 576884570 371305463 563169039 610277175 381194551 811914185 819421312 747297760 882823724 958077308 815187416 613396280 945779768 860936751 951550425 531112225 862849336 605062595 145917282 107603380 279750853 552145715 472859386 462828864 631773324 607205104 353724553 862729788 326625662 22625742 869503597 558503725 601235341 144623211 682792900 733164654 245548433 462439313 430997297 883234806 298676130 315742306 457543359 437207713 649716852 70761348 595397884 781257519 869421989 840903126 260619115 744481388 546733555 680636445 492220367 87775511 535927080 361526576 418595284 508210991 4934929 145235260 488242930 981253608 72022087 645013668 462198693 683104234 164244429 228076302 532699979 55026456 113820147 774461882 670977658 126099177 322879516 399949332 656873589 153700443 485020369 917135896 664391018 192279328 345342842 202753628 607158940 331391543 763952323 742367374 839732025 896974296 303212277 53528356 863046554 697790776 230779392 565133326 79902156 361948033 195309901 432942277 698080781 242280065 584438575 80503370 277254013 489532446 759446452 625882233 30755023 588311916 638719341 838845060 90514850 803941578 12821933 756053954 360151822 16385772 32718673 602572831 70607538 133221467 761669976 189638655 571087489 789176174 843987475 380711666 887361753 868434094 47804811 267816460 236277183 967138453 255924326 268998410 915422038 115294754 369222780 45104360 980805746 235429743 413546211 189133805 492051210 170377079 405835934 281768177 591271289 999708599 341012129 648747225 180508034 227861185 775001209 929423390 947672468 228234483 59333719 538508381 616556697 330890095 393410830 693870616 617567283 677765986 481930374 893520425 843657909 10956960 466192813 589267689 763169463 379354038 974345199 173258326 153766713 899489937 401233995 707579354 15106341 72980110 537296652 153496783 854678505 206063656 772452540 791603592 512636751 94819719 789290677 857512288 798548712 748584481 459515403 36925173 186204647 847958068 615834961 212736040 604821291 866220739 659131909 752570368 499154930 800785577 884045174 28994760 108105480 252043335 640789561 121774478 647009601 448840549 284005954 949382916 423736335 854879582 225507044 551805705 63667041 268580770 516290311 479062172 940875539 376051011 470107042 89085655 63782697 807914087 36836684 124823936 864480297 584662867 503377875 903209785 834853021 412777798 739885693 90394633 503087483 146324098 369884158 446069965 585901733 681071795 573020425 278800611 497224791 745078530 210751476 867162630 495845913 277795143 316558879 70100980 774094943 682063311 676623233 571130597 603236236 102065500 845849308 102273539 677519892 146181596 312832429 425745261 270365638 872630604 603360172 567946145 263885734 595901286 157103684 67910339 648032112 906672950 784936511 562277870 460957536 768645307 281530146 271365341 645384472 109371230 961762501 43219887 71260496 104153100 32844969 995409460 564727412 903572236 424974527 177177290 124762520 443570959 721636176 698487103 893767545 882179279 529631571 653521010 472916640 829003749 208711865 191794709 744690629 986279169 335415250 501981666 366133005 569914908 220853780 383336856 697247194 271596131 879039600 372068655 429903805 933544553 487834200 121954901 996064213 454383793 650204228 305249203 509303801 15170920 971432958 886613220 94802441 919579169 684570144 297557659 574224030 769813675 712570569 802251958 995026944 445362358 881210679 960778062 949186960 640427256 922160865 787548663 75746436 156830323 134566665 503117197 913578256 886692047 714394425 978008375 255545538 848874633 548607345 227141375 624349788 809412571 515817425 995428656 456886319 738191889 543051110 191700683 585467258 204308316 579086107 95788266 219213468 676938468 219483363 49578467 163666625 843265915 440484543 651906975 460921543 101688522 669871600 128893074 79028813 733545199 945704868 900438212 610064748 719454914 981319110 520901313 620558303 365716022 917747283 953578268 482775273 774064559 91640257 516764876 870479196 427956201 331364080 27489566 89899350 526731564 229157182 409987605 47805982 995252855 523149319 612000726 989738852 125929142 102073057 354374913 423392387 940027188 64877264 920287422 46229399 709050968 809453257 762798653 32195491 343480770 128235509 265963116 670481194 127023150 822355347 652787664 63392124 49257959 1609583 204820969 768480511 768147679 20512317 652631711 149729767 468686451 438194302 942322546 75209269 597280632 957047067 69940617 204026897 999533375 437197886 661917277 393785883 591948398 133021582 343781117 651425262 625834354 184540227 249663648 89738716 70850998 577642884 667968069 609837521 133950258 26820060 528841408 239740602 565302927 709199204 18839690 49094461 901375175 192658279 117435796 629335921 446695162 424101055 702108112 349565281 93521332 228840086 141248271 318601236 990534425 544512011 524081816 344233701 757037538 579787376 15512849 162660247 589017804 589986178 983219736 438262764 772796389 798287323 790908012 592767032 779100725 46478123 560611392 399737912 561173504 262087727 778638940 372236862 865361347 10677918 22538009 399039471 934571955 231109003 355248289 904229016 234542830 65480834 499529408 674578740 461119494 777999295 21104482 281544472 887520188 926398524 518728593 906573228 686903361 358496706 180792161 912704659 995351378 345096289 296967213 154301677 58267813 158906040 695123269 662861645 318955857 989057556 69661355 745333506 388899858 990363243 306889704 274583299 137537110 13810063 999028295 794248003 891120679 773196413 759062289 957637919 876268283 554386143 38064236 812966322 531035372 2386849 671982680 555130009 732367797 676057648 65853689 648527800 212490435 600428098 94554464 99695136 160142517 115921618 190181773 543641139 330651842 461925709 172656653 198851715 958975859 284947374 394057731 987894554 87741823 844277922 359911655 689798482 701386723 129721285 626075177 350644693 896871075 734847693 277567546 247382592 32136278 333183436 271311974 75079127 36123327 466632117 303975545 551143101 159418725 415180818 650099282 408963841 232081034 191340958 433907340 850023676 974253638 130414097 587332741 184314885 953088621 488368574 273690706 725109113 813478857 23778910 615953567 668008032 462095875 978033683 668509813 273972333 968759955 101917179 324967038 985041813 458268024 405503504 366033248 28185618 815808954 467246827 141911433 463204552 523396269 174581973 628627646 509832690 280213310 395036944 969423623 329549029 885047550 678061492 710122652 715539217 276928994 187159046 229712413 80404352 16921651 401235827 737107983 731668226 197174073 61807388 514261727 742882068 962936862 862361473 53357973 450268744 730513506 742475164 724028732 911633378 651956603 261386559 80830692 755893425 289745605 113292636 238013288 938206092 350789569 423829439 661405460 302392437 861885593 408835865 662707333 900336096 537892962 991595226 179580805 167702837 464493745 516434977 954024490 229283440 811692420 62371420 58097391 88046170 652983783 750524964 826032013 738805513 386911619 367071800 354866939 332264888 161032038 871230467 317145169 55717564 613161379 913417453 565562022 623394730 222019533 861602637 152422985 568485284 663163939 857380901 617643617 873997897 663441323 107662794 262532910 670452796 458772517 200444519 427093249 312047763 48359341 986166164 475795182 438268433 169672933 399245683 954480156 414288227 423512203 744502789 924455654 673176584 381908064 42464962 811964858 875348213 371062929 353216515 302357352 879371471 434919013 851470724 12744236 995954585 187370307 543078109 913482280 822973507 715448229 217567957 911949123 105652271 355088644 736020305 673658473 88927695 407356179 40993721 241410807 887559242 67145065 247425569 111733347 495598609 472605520 655645440 349243407 19005180 397341473 163657162 488906967 744879006 787442295 306332375 324363694 322302123 328287207 52601885 484879620 965226109 695140950 572289962 635831732 39609137 360887607 912659231 400770725 179392831 69269938 425196351 273793385 856709600 901484854 452763162 980898546 201427830 987209521 340266435 732304091 206716168 2823682 399509006 876847210 429387597 960240134 489153189 232098595 307986096 328220283 967632624 520619909 405000953 170069935 130711680 582453566 466982951 749550485 198842738 582269788 942048094 878206907 953267908 842717685 898080656 473021549 410785624 816103125 57498358 897193911 375148113 401440629 630153757 213691613 148707883 180076751 477834526 856316193 577082360 473838145 938588127 576089591 783243177 117208116 483096782 186600087 849174828 286144912 507459457 270010529 460731197 619331577 193362082 63105105 274007534 845711697 641300821 397236740 682495652 707234552 441405726 858900906 904666666 911711172 313872474 588229817 350026371 355174488 681191736 733486767 251346234 816308283 524642042 264741107 546316652 499923203 635888708 377826079 652491231 110519074 443951573 888676022 516048275 870762389 291401919 584030445 179335025 868506311 611926820 937644547 172248360 159197852 347778716 649917101 483084671 103359066 89512867 749407312 153119058 140700205 162745547 105073004 217466800 106749883 418727996 461431822 716422732 323362829 804484691 780091598 730525974 31235653 747730966 204414008 826740533 515784960 829745378 395352631 398964725 653861180 558515817 380056404 908348817 799227397 80283797 434108715 96879117 904490616 790651380 210322168 147823923 26183231 192086554 623862076 734711480 254661884 223114438 607892228 266570721 945544870 656572678 945573225 259538604 144492164 588582622 419290884 715009562 966121936 694955570 882003841 328973471 577094302 575477172 928017772 877872797 292415424 958451052 297320326 763263795 459031942 898275131 902027985 876691770 213893947 13230149 644123101 243436777 391904229 189658133 310148318 6564316 223230065 729278133 382651675 417320581 607806646 623014595 432289957 569833636 466721757 719720336 528168473 514976436 915754520 518188269 123108919 133816343 774142152 767412133 549868941 520543173 964152055 527706338 730803654 494531102 131749655 350000352 939197797 234049732 624901929 177617549 115135857 410568603 35039713 716764117 673998271 677063980 827970594 473695118 330281301 732016773 237294372 788322269 310943879 242383296 729209229 963876796 111704744 987837984 488978061 850326276 32720393 944345272 924989142 161051865 997882501 610021441 876104203 474370359 192840796 315705699 908316271 550637736 380948577 609259488 403534325 271452136 733310209 469959249 412773465 385386772 765050088 561648973 29564307 379242099 738859279 251103938 44961935 819244525 702883137 6864810 334060848 406989501 72420986 182778196 830270740 981519629 764527507 901923908 460923257 277594477 299876221 272916511 3727595 106803859 568301766 82666172 541958233 982803375 896597579 423909083 797583751 358523227 507942563 380488437 450201072 555538401 537060179 754811444 808197061 918234942 994570343 994408837 807477283 252336352 508423302 671449865 741272164 170857408 817512463 595073750 584621527 861440919 26431548 354439525 859076118 674516569 418794687 620237959 156043202 999279166 541167735 323062134 307762863 332218875 877667255 107760977 346332961 655278147 151396889 942663360 223439912 168278054 263035496 128006873 11895178 816006487 449238332 806368424 682601885 997185679 87240356 989906417 929954851 14049821 649101298 252608781 320343607 721752896 749069909 69827886 238383090 507139740 468324610 214470134 797060079 459030604 482500305 362311992 590035633 156361160 588515894 994487166 125715860 580977077 572836403 811653805 616433013 489473498 52162734 159140639 531271539 847214493 698550777 642465097 969763282 526464540 634679109 963674820 952866711 172873515 447377851 605427871 117994536 255918915 490336646 563174970 776108098 391693329 741765805 768455236 307649088 274694280 797543955 879547758 111070004 380724980 353355976 182096940 481386113 680200057 88682627 456876288 562843071 789765541 893079976 189593312 843034708 868794945 569120587 600489030 304418011 695267460 737056425 371214794 872819670 91528076 105027370 914553994 539651438 689986655 882863371 970695309 770401657 17492122 325095694 317998300 118045187 317149722 647605746 647190997 273296507 195463743 731106103 713941443 705625882 647306699 110479878 134780376 583350001 824390321 821201195 366791797 75250833 65446060 291549429 186315600 951104185 293929970 609549916 899560223 338434179 119660313 499249200 755188499 370700524 63850720 52475628 359965562 427382529 652307579 28726647 167886172 506412991 889810109 213690991 718332350 704838243 844133573 50583951 112527364 608045536 857331896 209567335 494526939 208585659 993177833 710606 519361459 988564761 528876506 54219528 200094385 958535001 302229343 926111395 114146804 675565647 153972027 246526878 576827801 648330680 487542341 484259706 767309175 696767436 857481599 868273845 560380056 19841976 193437847 277518595 205307992 908617314 132191198 378672445 435424786 945634578 974579735 579211681 431326635 193617296 699027638 474508661 935806671 311604299 861526299 387339702 636062062 494622224 231942016 415849614 263218471 440861875 21440941 432901514 186043479 459658088 639764884 253327592 267724210 926464132 508433785 974949605 903476880 318424070 406414802 110369605 485220207 928898176 938848139 378735395 445272505 669204642 976838660 92704705 322136093 983694617 705455745 695462674 703244901 130218996 370750096 240866973 977556603 124822288 575826323 580221363 869648086 369872875 100431401 502215269 524617722 152456046 998097595 21346585 21403084 708231003 296245910 687598753 99010237 966882475 416349803 977259787 298527490 815515007 542742046 944328893 420791915 416570260 108281303 691381391 867339638 646769194 811465457 718177209 47973188 15776434 36555641 430332683 850383040 318321807 475249879 201494027 866859269 905503257 614548946 150644499 508674411 660922060 741369245 503415347 951937953 599479092 633201638 270015265 533330334 254235317 159035441 24568685 367930116 591402575 201305890 942174101 970563190 316318602 407568886 478559131 579668946 339323561 823135338 450856329 189047082 853634991 377941595 978828236 27334741 827897822 481204327 34077062 557146774 149870549 571968262 144288597 348599908 674264488 6039360 285314486 216709084 946454986 487002484 708432469 240859463 287990608 243394496 406181698 713793707 933609777 493389224 155680160 665216068 213160128 185725721 865820591 918155948 985350290 167593719 532711702 614558975 238431825 179792918 298219351 924602257 229156608 357086035 162599956 932188292 710346669 327594577 334342018 240102408 507009964 978642396 581218284 608793737 201029624 605775504 2912744 350725622 309162109 274506605 583920611 912467021 830079510 864999476 719118430 422315034 76244550 206918416 585490265 680668106 333559226 916142103 896674183 429927946 696568473 229758763 253416079 205369314 300939786 142565121 571547197 593977285 628942247 290351593 82037490 206458568 244661422 926105801 768554920 596665466 241629233 391231962 272462278 45646275 669227266 779190110 779388544 535736739 442513900 238062097 255287816 240423393 578498259 201075444 800023519 10652595 606476747 283835119 375739588 656021614 705500593 240252403 212233929 917522188 409282621 443292160 903196120 819576719 592003723 140381142 102574936 169099108 705114403 961141180 452463475 894964675 878492980 829052191 765061124 241628325 83712336 674391657 156800804 488249205 878855593 164075943 58844428 420020946 743539221 771775073 204524000 176490151 697734775 294076064 773400398 655368973 209995876 984860422 492685955 960524599 167157575 306435506 784901902 302889988 803733541 481593843 364908941 804709370 163040956 96737859 179574414 715327933 129845201 909711996 136258619 938100218 821240461 401256479 841035755 488628731 711460566 821913462 368439982 207417952 38964513 810579851 683828198 879470281 663519953 175845929 26989933 385255484 228407290 402623794 566216606 23038432 177093551 441603756 100217722 454315648 169800884 377281665 588628083 374285477 165022116 121193467 181223171 337730705 92682527 526210031 22590125 457966766 408785863 867147979 898410746 710935482 146757339 707859078 689965244 161484671 274388090 633522196 736442556 96070596 499744012 184535042 106188487 719929113 181564675 6885222 718192521 475935121 555936874 989422216 993325138 708915479 153690486 668564005 509452404 401942031 382882360 744966622 480511461 996181920 942174942 7760742 875725354 459034800 89167456 107324327 401751591 107534666 263028921 845614705 131477496 769264884 140729331 398739654 725657696 303950469 168843694 878536531 54697509 135755109 424853293 267044063 849977409 194095775 441095539 96022696 768095167 774111905 197615508 602911064 83979531 173753033 231312516 280428223 812450007 640848022 796019006 377537585 507182119 567778522 312992090 782842727 521840392 827262701 648347858 240134726 276908361 601278550 395067116 208260486 977131599 392555141 897245277 126373152 865257134 24851051 53281174 551986040 543860561 322435839 510527957 332411286 873648946 571562083 415974232 262375551 676681437 938248636 654569099 623071354 227288681 661782569 814538673 689016634 382645738 569741269 92327041 337422951 177609277 281836597 364536704 983539416 453234815 593113049 719489946 441743531 698235854 899146586 930466806 670937662 496869056 997259730 92305835 678631791 8081970 756493830 915447466 60446090 777094906 834846662 33393820 99363720 744679992 488761649 221109830 820610760 676229670 217588761 845555169 639189982 495388318 478074800 643246613 914474954 213932699 663447914 159992887 310652069 498005293 675816477 635997827 94553076 225219053 453390072 594888719 896554515 170698525 10827650 151050860 420174744 606826719 68768692 805455804 902854094 444281168 672210159 257774264 219524607 272321936 283467341 180690388 886248284 888805152 566230947 464389957 885459018 781333710 856323905 494226397 505147697 499419147 482378928 322638420 67079776 446379769 573169453 457537798 72247592 811658965 379943902 442977436 977904800 432561395 983680714 938239582 232360344 258284772 100344126 389291425 680350997 677141362 658482737 927015932 696077857 702286149 714714850 969244668 806483261 628357366 494038853 227892167 511580449 169790771 714844635 842288909 508984046 710278830 932178802 724289548 15165496 475329444 760130497 88684077 138338794 305838808 421174914 213981187 882640133 546461708 940508852 69288585 781804089 150490626 16564326 489014122 90411806 95007184 88084691 527873814 902961378 544482211 238879797 795686023 658579285 464087832 260820942 50675049 393454945 962806569 334278799 217887437 844349562 886347549 336077322 178516489 796651746 417918960 968199266 575731342 69567062 946867520 860395302 98131001 637219638 333548489 641038639 243941553 840591013 794230753 150183830 65789881 65692050 342876847 627595286 555897394 333305863 978952830 608163453 561303942 479860862 801421366 419837323 693399488 817096896 727146380 142930508 450983372 126976151 727611087 885876093 24645361 594283050 223003365 2960435 283556910 475476789 87100072 698888278 660799059 929956157 623155546 606689217 178670875 983029423 791969459 397905567 299210387 934846010 533661321 849718673 857919918 590384483 702811669 470122630 94220059 246010354 10446246 179594040 148041088 334822974 221583256 707361430 807030940 257181148 589647501 409820736 341629782 740319806 371935142 418340927 705569038 994927374 564226109 490161412 498138945 226178288 70425242 514341430 492821537 449701322 378084433 204100067 644024061 247798802 892514415 20952037 166642505 99692885 818235783 155301227 315986980 328343750 89258175 213117241 646514163 965759523 597746284 203617577 581107855 934745545 961558320 555375993 833918825 47682462 201156529 324808054 657217899 731544701 279142125 211844174 911664170 348734646 93578810 566985422 510078023 350310595 235806547 524595819 182927960 525130753 52872807 817841625 622406628 922671230 62954381 958134785 674176078 733797225 524834177 239466123 219218843 592214406 298120559 75228545 601325549 451505464 655172802 768703779 836889891 925537054 981738887 738439072 511724085 838223857 646391766 323767124 190383539 284425669 820627604 512843792 273343793 386658336 44791257 602062801 530674498 780541127 684598428 486693063 22185978 246665785 439714529 781551947 371602769 18431408 615604404 114112251 913491528 489785301 452786871 585315442 444388299 373697246 572840096 478649790 89739382 978048118 60195773 576722287 363918476 690546226 535824140 855521652 27857027 153075035 27402231 459647485 83894174 607196588 133243943 859552402 691801055 139009586 328963020 687821689 587480983 796681894 623836976 759228229 107082361 955111924 588253394 569088813 648416838 555080907 157867195 901862804 161540630 837855250 110140620 736224343 493788564 293466946 865136331 266187345 769764092 393828701 732804799 45978645 802442402 14950565 345005926 525997733 673093785 338665849 710236884 943770185 695064147 781607966 560142111 119678066 653934944 507755495 211584605 552330067 813524667 363007569 642929934 845895680 133070152 872284969 514304435 767751719 68099878 51735702 360913139 210850668 117279077 974605555 737103296 766719611 791574126 4453745 722450135 262760232 588436136 304827483 957152105 325460658 718221709 545590156 376769461 578144396 202816249 832788813 432182403 819397835 445242593 259202600 402782759 119717730 303563900 983788541 418372802 989335393 773021599 608974487 776982114 29044591 242209872 769018493 467558389 204612163 439573623 616476965 834201785 428778387 525158509 536983143 308452186 678268410 872645006 756148216 749723573 225411552 925592504 609421182 53293167 432506069 646826243 34834002 788310838 253478072 811812092 203203010 891279251 465558405 390264258 924430942 64085529 717880095 431284315 749416408 612336411 29768547 558833400 352745375 71503606 301266812 490361807 194886290 968603014 665643249 683428897 585829926 556693135 877278920 868381833 790019148 9167510 661530095 26599321 467678091 709305330 503627910 188233709 246337793 610986256 522816165 519969217 379024541 950984581 11815276 376858849 362042980 397553470 325650511 880429729 441121922 70297026 52858797 129596353 4758969 924378531 300446821 234792589 277917595 511478035 444856244 150771016 613656285 847267418 704151719 109725309 666722951 74724877 130528763 966743702 413711776 164016959 311242528 54891419 63010741 275699533 622057962 81097646 45467492 420992673 86838086 643494387 781638982 605528614 657667180 92893642 287188880 206364098 435201720 283739388 885593915 929715341 357097515 76877037 742251007 443404217 223082198 807361102 865297680 996760474 873720421 829139872 809578954 6708596 722197927 967688643 428016371 460518421 528213214 342049577 562757783 879935116 61952849 809059295 394754073 961410017 764677220 687600149 30494966 507079140 470648584 28358739 342743979 393449270 78563438 868989413 548580829 877634571 720211345 741974174 990554777 374002160 695950093 737425449 557824714 187046153 500165854 183142569 729248622 16667468 769850167 107121813 778601360 619241129 297358901 516386062 758421376 619029504 184353901 206740566 323165671 63072536 965806264 744444677 791384512 619311954 527186993 225775324 399301812 179848291 137687740 721297554 882656045 826424888 109073319 349656410 206889585 498386242 77660621 13635531 210805752 970196387 12865519 441716112 374345733 203807406 983399116 38841545 836825162 240638424 814306922 61229555 199992388 597546666 225154200 546680464 214688193 504484365 771392156 433769532 342258449 695270923 253282949 535196445 439975 151033499 87247759 699064366 803445715 751986425 301821179 219873511 859548625 72374009 684578512 48592244 254135733 392072703 836476323 750013074 472143288 439661559 363754450 680058722 915748342 777656104 829234253 486726816 967318844 385961244 193634403 366478635 645364061 321366764 397149045 765919359 360954446 792654372 115362842 621067399 448700245 183641650 773783852 905226195 769598528 189275060 201932009 94225448 326289735 86247501 589853193 127022802 514812442 296072447 605339690 443399527 954908228 324893199 344240771 660581852 539074231 959401786 450636772 730539499 525955456 398610787 844194658 682069702 570104104 672780375 806635019 156942453 352576529 33015745 884614542 853792070 890254149 738885729 442550534 596665978 876458564 680395661 560369754 148725158 257644077 485195442 466643650 906247691 928007082 83364491 115320179 998036646 71318000 213556931 781661283 277926192 796978866 160672786 907556591 87408698 373354778 935304631 310068550 986154657 22876749 168966239 774441872 69411079 92184488 425241854 758850785 909177151 693969981 360558111 841123565 912611083 478365007 600707860 267120792 968274880 264252706 904837761 819735927 921121928 655292836 739044632 462662918 310674179 822560264 975607157 314827286 865747466 97923387 943469265 553877981 492138464 164219707 204586114 187434545 965158542 985772229 606625967 4914145 556181883 371353502 647153396 214532102 639662380 70669708 656565418 373402902 918439689 17781902 947924392 487814833 647371863 617790929 437348391 153439312 223792258 96767871 670046419 404687214 32055048 945032369 247531923 64414762 990246063 46522748 974235906 468440016 24119127 274404410 680837814 177796291 22249555 878117147 841864603 33661662 651780367 519782470 514393352 137161495 429960507 423478889 782382824 791725527 820727684 54987544 383703485 432012237 181205636 70498502 731923161 287121423 308063706 287879137 306731336 833018497 811238024 871102759 425936578 240672200 969542581 351245398 102266766 805522567 198806105 411902114 627121374 825005584 500484533 999197106 767878080 566738417 325877531 298383771 277387509 272997387 248177877 615884002 229074233 580185892 701713147 312910731 435842486 549386956 873720308 684467955 27004142 479190517 670636701 934209928 71161814 75201848 431948754 615623713 425037597 900973538 840138579 869727543 534565879 582174390 456673106 775037193 404075337 597090814 263183145 586065700 180901082 270495190 125200369 416438860 725240802 619200818 896157140 379091465 934582859 739366750 872027621 603318681 478000774 633301819 220207049 977160724 425158853 723963062 347034335 984680439 317622272 357509422 968549981 139805210 449741578 974863026 51239843 438093649 426993992 139993421 92587433 992343460 119257487 172144252 432824894 263333352 736317778 378189936 355380419 170795446 288164168 35495680 403038845 92051411 302819212 502773847 269909173 480810941 885171057 221954667 701896387 214001548 492391270 576229930 981650294 437955759 714152016 958481369 772209318 940459323 829041275 620162666 854257906 392001300 104868870 409075014 52926298 947797325 727368220 707268741 504098827 378553061 695454628 661487119 100024556 418673726 786050585 832870957 720398636 984359859 911521424 44098903 329716749 72935712 362920082 740682029 444762009 469722157 249750140 857542036 682619788 385069232 937660634 986101605 418108202 838603515 962353224 19468802 478688418 349718775 777356215 352326595 761194904 958286586 222549048 967453019 702876569 483688604 384777400 585118188 644640805 869017005 522695702 845752529 912144760 926524452 607757906 437215455 576172546 732412836 777598743 380329837 992360242 142301308 622345997 875365125 654868311 952044235 903603410 587514424 726567747 409887588 373555256 9734330 990528699 782413927 51544220 357210258 460667955 38757573 525656439 692570046 587085107 366915526 693273298 923797870 758183090 636145667 41368291 86639269 743260138 440263049 337596729 841387293 429662087 349253480 834150327 318225225 372918140 67998562 672169329 880450179 669216218 732084082 473449105 933063524 320712329 174750360 923990084 53678938 963655350 712472778 769896330 603836026 858153084 721520319 64218920 752359604 440833728 793242289 419521616 436347821 831409523 722313992 584681182 845141780 69372494 324066658 303316170 274622482 658664005 592752339 619937131 190528016 694223557 984554653 253144484 609367828 132260817 841163881 971380905 496101329 860130665 587679605 62146851 589018129 737625758 42844741 883020651 124438171 232546502 632883891 482770470 811284488 301632370 719102028 218948925 310010816 640362702 773632772 491532664 665825369 856728412 328416266 827331707 536191706 383108456 282612175 841230178 883517371 618354196 24097226 636713121 505106371 933173580 239473578 504706006 330039684 156836953 269976081 487789047 527617526 747302888 423377227 714437352 656235862 274480138 623579121 947161785 839690080 436628762 448521060 658180734 13836491 231534350 172328623 502814064 362405464 395022508 292987845 498347519 30162891 982520523 307017568 710540554 702810693 840857888 981880012 484350822 549348738 450399129 237253234 815783256 942750885 352257374 160984134 340683691 294618879 656194907 99879921 107503939 876407392 304341337 13325863 544202399 83816099 795436118 710871812 256010601 741712552 316795001 609625167 556967140 941940443 418562757 294596240 465222470 483071941 697043534 440555630 676002860 724949260 996587170 984419362 455995998 576805847 972141208 717944141 890693773 39682361 895261239 469285009 273137784 568703997 202903555 672166584 649546277 892402116 372422940 696828867 941894327 251253047 763193327 610263180 912000962 372841224 396458841 716603501 729603332 882035478 17810557 926063305 271869143 772659687 520596112 575460149 490116731 609922792 200132003 869983170 45194387 644591647 274788250 520375366 921514854 426562938 312146521 382036240 177586230 99394157 532338297 750253176 978677996 248924878 603238514 363025300 166757646 218396002 504821781 765579688 378067533 523170770 838856535 418487059 160790544 37192511 417987024 885576059 224358107 781169298 24568281 508542680 808217159 31792407 43739103 176095607 489286055 434255852 330929345 37916971 797977851 979412832 673493786 553929757 997407009 229370176 795631042 799816137 695615348 611052487 596674384 700340682 191906321 718409975 844669639 158964728 94210170 873518282 669500173 664177184 699332427 462016203 518787985 52140363 948116495 879902843 509066662 353527741 513216191 46545199 8392309 852581775 967927635 124586614 177427461 620339824 474333418 461221397 945672937 72015805 206923984 381823783 810053807 509317878 128757853 244018415 304990423 827511654 812865058 543000684 770287630 616742148 941164577 688910497 159171574 371578172 766434069 168482547 296240394 70718086 809352845 54906844 413855103 658821665 998675940 526710995 684180517 185926288 976631791 489953563 131190278 125485291 356039295 430286354 861379548 772266155 191767116 49411742 863348642 53743878 339960107 192129397 244534529 373087619 284052474 294141430 935079471 521877094 279954982 709997416 177145929 643194724 348494667 825901472 650078935 740111185 814535386 2102769 243001878 108472844 331177575 748349183 56128963 755979202 807458268 826797043 144301049 882066332 455850641 360132571 55790586 965054047 778071000 77695 465879471 508590444 623988751 471839054 784096699 41062726 581088298 89196910 221777245 630767859 635718622 112705110 472455368 663547405 501547399 865935984 97278549 826221195 17621883 324372094 407600541 79139582 559330247 615673062 269849730 797604004 67232295 581882856 377508542 21753370 738074178 898819878 20229400 368080299 996393588 464505733 295974794 551690847 227329125 59528729 897148699 35577845 18179689 948327014 938419442 842618936 230806477 966378093 265204188 508981497 620788473 169400092 987040836 186947455 126763529 414106465 818905440 304643535 659981070 555139447 362293342 820053312 755771390 263733236 218666875 12759231 653588923 715788903 875617809 185680531 590157706 280212555 978343392 237853036 269238858 943185596 103030258 219859471 320254781 815092553 616768979 100385752 886397999 258723722 26946331 53037005 331076675 648832896 155719077 547053176 938743738 786185838 799558216 636257009 630999061 973303729 332957888 304647658 827922537 237332413 622386535 399663985 789196347 981852845 359445127 28889659 511720448 693082438 356951777 885656938 4913266 641171518 143456698 685281528 33612818 353585527 385027480 899686900 746975803 685152662 511577815 103393845 329649112 373705758 843312433 771845869 766129318 441712959 220429521 116480773 120850828 790686408 509132178 709412602 52387604 853391726 949393707 767402945 809042637 23839594 936479511 955205986 937264050 862980800 655648972 875074099 653471355 394793707 760485143 823961605 413359581 373835821 920822038 32185793 850182930 799668321 889232116 366102599 565727450 285153312 782890271 994987034 228548166 168910135 946132148 27331703 34355093 435677709 682156329 159465360 29121776 911059574 242904689 773213463 876611814 715246923 448031667 586774830 327398064 914089325 446629421 430705322 696830595 325630120 73831573 925257800 561518440 754577201 782971111 915679733 163975024 554602039 978269296 741137579 132927176 494564729 740902491 271561591 323938577 588955868 304224222 462869251 249084100 222890253 828219265 856777974 591075730 549358746 92526146 838836015 7731306 91728219 903134866 414650144 614096786 135359329 572985997 620276247 736476836 736986692 838399008 405560249 497086711 568369771 248212344 871958938 21018749 113266151 919147542 530623527 370818718 817745345 80634168 892132079 199781091 10455253 689199260 531418247 476210387 28656752 802905858 553581165 637895814 948555444 52074619 763588703 991048872 534925049 161873159 133934405 752682310 896823812 947972145 403454134 869395660 748133234 647753970 327570467 729272088 449615102 877330299 159895335 289913195 630999976 623216629 171763110 536654126 597564122 70407654 891272666 940683558 672733254 118818320 492996012 842434915 626513490 378901373 304689020 662164361 899298135 992309712 253005324 622546621 853122707 472222419 614851873 598958342 29062 521502821 569326924 952030273 520468556 166503383 667996706 64651578 804604012 439432891 481457580 961010337 922284790 427402488 555875042 920536987 703081540 747070937 435932657 122181516 716625564 574509111 47756448 444393322 493422312 776503188 878714435 642482036 83316912 391384348 18780535 251982914 69884988 33910387 296749344 761441753 355540421 66183197 690294431 91161168 399618982 428306544 546570386 668523083 882085650 693274526 634398865 74867473 968744861 585840772 684321265 146768316 47811617 541356309 822082457 46609723 930251581 598915110 33457128 293090698 458005106 265390675 199533781 114595808 353652672 91695363 503738324 326730125 620198660 259065831 181981797 741615972 415246803 842675742 227844471 373547735 332992864 203291643 782822266 346440289 506226546 393734529 902428047 196589735 590340674 714837401 181136707 86852276 181911459 486103015 570018372 297781623 577494319 78312883 502878909 647103966 107203210 235489518 641826852 812572920 363760822 14944036 808809214 889639970 792480540 316720796 237305925 37813531 401344326 526426281 188550663 921815666 113516456 646115608 792858094 474112468 266814951 830925244 681376043 647316780 803318288 130380844 313728492 748209797 780609893 607896933 847688962 115183903 892549723 185299070 196749671 620753709 764114775 218984852 388158 971839934 399561049 533577400 987189177 120777010 300678651 375582472 902201304 915359643 298832039 645449804 391144223 835144459 221127422 520469184 286519198 756404724 910771208 623042312 398908853 972490113 453721024 618905102 360310670 237022080 636266316 7388696 503765153 35900273 488503192 99035456 108044842 459563587 43421388 339431926 751720612 637833414 33001197 366452191 944450152 341100512 647390037 771425052 392369684 838391086 264402240 258297153 753047010 932083965 53514403 1626239 785820523 955076198 361021748 456126263 925155068 123004455 453670560 184639312 739444779 796798620 31275737 71490342 20487659 694634717 188544502 861246007 350086518 41931245 930703800 401381806 885339124 544162641 676494700 773556149 984918240 791988403 394930730 112381099 890005674 24694011 834842084 637007450 591924259 351724532 223283959 247930185 794001068 120636010 414032700 753966859 815285867 186469195 562156946 599361943 909740760 538580808 742626458 640345748 686387910 859223547 817101416 665475618 378567744 209001384 9391151 807458260 983109448 940657206 77365329 248382442 404129165 985911395 308545761 260564855 369808873 935257209 866868043 226583435 212731119 986203829 917581938 96222966 617965783 103280148 678558787 519249867 33284349 714196679 239965437 535983421 739472706 537691753 562119488 997319766 385427692 778185808 930718056 810042615 615705499 208740430 813683132 516581626 922258036 882992576 582440822 302185316 714615901 678985660 428674306 789155687 567278749 468102330 746562594 821890350 835183810 141364845 185274946 235064774 764675762 893273928 945369585 421168308 804853911 235988838 219773591 906720602 777355260 62508730 531321621 861766292 227257866 553358769 455144635 476849038 92530393 988310685 69473238 411470649 65937595 926114736 937686106 226630672 471790466 627975603 606667395 207732620 972350456 758098081 14443457 156534158 554590826 104911993 199301992 620555437 460979301 403383646 811846349 521011270 989104837 881590805 673243404 131208977 310794084 309387946 83883979 225778569 351486169 409873284 283363464 873155839 108618617 40354679 567649213 101602393 836554223 27395282 490420802 136477548 315815957 20685460 94063952 238760614 796566629 330933755 711342429 632448426 462276465 387699676 279704428 773398083 502934385 402099455 134981178 952662560 529442369 108290198 273765372 706017724 569887101 308273960 383931834 889717557 116322406 482347112 749677395 616264607 353069802 584212154 133738889 135030404 527343044 796308787 182018908 786759989 2103792 725337084 985320879 513674322 973789266 140477201 557590617 195160273 820777354 234538606 838079287 647687059 60815263 893928654 997025845 968841826 624064312 710465714 555168619 509969822 678386565 147496399 643798225 146157768 496363022 866695675 741384419 200455939 360820117 327050753 300767643 211743624 984702732 213435522 425830369 105449768 87954135 945067988 384913887 828825899 586473032 639871775 432992992 146444049 168888800 719198902 640224898 19281159 192049432 110217860 714479714 529680851 334837951 772489999 840746569 893168764 722446949 62884202 568271454 205917975 40804865 777996704 264143890 74595917 579287169 322081333 670953487 109515793 828442283 948879232 474015539 591805582 171886730 606398811 715425263 449135086 152960494 520046605 134141237 865436308 413061646 288081097 587243046 798174869 463462483 503870774 993851965 635191084 389912012 14695119 583069198 457920939 847289905 186989600 524393303 987452161 640232803 877690414 455335373 631584430 293740260 787528079 71761811 821017875 309453342 294658939 551478956 314636837 846359626 554170168 14801889 408998679 557018044 480371260 271217789 453186592 322796199 211149891 939210960 292830647 959826428 642902911 587324556 732803008 931015757 539077889 467144313 620126013 165767915 89149693 939459776 259234917 274027912 443700949 860645025 781587418 369482398 737647198 317796883 876884822 906254120 684945510 596756278 556091703 550354419 48277172 935990924 518699615 633629982 576840680 14294325 725580099 498452261 731529675 458829627 518316998 528008255 399439885 349652758 347812895 939563198 924930863 550779595 204734884 731727225 851857276 604012941 99824347 643282353 405285535 14985399 448977135 340498878 517232065 62112683 565197345 892637346 934360301 683494194 623639105 648137694 692180649 147752486 741262193 744287047 853216323 464930589 989222837 44847334 898951690 150636213 941145954 805445164 501868808 786017080 561492170 496633461 490355703 172656606 620455045 312826122 556299424 9435442 157988475 733050950 618128088 411850635 752047127 97747724 809445642 150126632 492363639 558368291 637635206 361646316 392606953 551348478 327814186 909706500 423054873 308772498 920197966 670089826 968625092 151664703 483926573 986226276 753314561 28250581 675091750 45192088 364001106 582747491 863079791 1734789 555274807 158890470 435594853 69981832 189226359 275980144 636032470 120610709 12922834 54816499 912372634 381781138 175604750 771809687 970888331 982275179 867137209 554156631 480298880 793586778 406311195 978496708 75008050 471494978 461451995 706661557 186042066 553518349 679162370 526160061 401278701 375484513 955125686 616880056 572991436 726397924 384401004 604279078 786083817 593901979 249166149 315519742 209367905 962174516 927505274 147088647 800901303 435823197 498906026 111514901 272083248 243755754 66244952 424229545 404508500 521238190 786165043 565794914 452984448 816426378 458015722 573353800 919995762 832685317 752259002 620398537 20980925 350909743 667177607 94609438 293448285 151581015 97893052 777376144 290708515 72850362 749881617 762699657 225817464 711146448 999869144 30306471 336117314 242651956 534771214 30492123 696908665 277157401 444386526 289856427 672407240 773373027 837852616 26196703 416151234 548452420 806192215 700264541 403341766 532452669 499579709 690681874 35861406 573725527 409805797 317027116 653167238 687042252 962402848 926394287 223696178 438661380 114656779 532762822 626842317 669706645 169072364 136803126 527480929 298001791 558175737 5646537 639525049 136924174 422639890 168845864 826964969 799131672 839285223 853705677 40474325 252540753 765321059 32898216 913162765 860542310 557270259 332363321 377913409 527419450 530091155 42597914 981663957 224723506 218454556 115855007 439866845 359490362 701221687 323217142 494121211 59222054 987424267 257565430 734886103 96208293 557023266 716126195 298279662 26066435 888763349 334153387 253765518 965519185 472828871 478060887 662429758 229525404 52839244 539414416 277727817 528207362 468620468 882168305 750419710 882218372 440816297 118996783 2875768 181243756 230783595 928119703 189499057 898216383 827747711 687102107 163959602 584229956 484120138 835771592 875332718 65702966 899520207 370444917 437199521 562117634 288984451 616025373 874300493 915445201 90018836 158097493 941726278 535389472 783802977 945202303 313822046 607956886 962921660 819290818 214193913 238620728 190366801 203387697 949110867 258235979 353398878 526511374 883642892 385263168 900083359 756443258 669475437 873510050 897785049 446768110 752760652 809910727 274285942 484555803 652134280 486616063 729082209 859553478 474155687 464560853 607086329 800497422 909349072 615736449 327098035 250129154 420058083 509752068 877059871 339919137 6355829 709562332 922819966 663483117 201291990 973496630 582989550 257174993 533072774 129518966 61554650 956430851 674832686 415775847 417686697 957568734 453468733 245190428 228761009 135009951 355605901 584282663 856431231 453469144 916309023 469602224 24665088 277866816 589873684 762827845 776236336 322067175 588193555 115446799 991917909 69127295 656293101 691194555 571178422 541643505 842607884 528939144 894031533 200588937 713547637 119171519 859751816 194362516 963200126 63303926 477807483 592601642 26556101 836206772 100301670 72567490 69712083 66625308 376043189 721459040 835173391 591060091 981984765 330910068 213521907 487229633 963919715 593583380 918962624 622178421 534823582 864458351 241152419 576761454 205448499 371644037 640654223 866234167 269605128 976219392 440165110 452226287 22749808 763306325 935862105 258093636 984481891 548334222 216902524 354164584 473829929 866101906 765863949 368260671 143716284 209668087 916728798 62097349 947866485 873147380 324726670 189347888 663427292 242850174 365901459 613955989 22276195 572486130 947552961 682325924 869437227 384797989 278120450 111416801 982431293 530156475 681128014 150279086 304496146 895807600 909990813 406000079 671171006 536420468 580114967 903931031 377125629 826366093 323966126 824634811 106774691 612144562 132267156 209808058 283849380 650057593 15593305 401375902 248762700 811862987 454322986 581740730 107356109 736066724 838148631 682777891 964730623 692853469 171036668 793510269 837329258 826129399 264435285 187461268 905874598 835074094 522657903 156429178 240792843 882214104 35099096 402541490 198565646 760007422 390121768 388882148 339352620 316911005 813284512 48569558 106597797 981957055 114589233 232679539 211935464 157014415 476777652 910056176 592865741 651670180 281435690 621983975 127459841 935746047 806473053 278635776 579819936 961471679 929086670 836534333 359801077 160767354 773998479 477468472 640804227 867433521 65740078 657626300 105294321 99564662 756307878 74825250 817365685 975545336 443921199 115121334 128368001 241356240 25762537 861333207 844450538 922341737 591732715 145711269 844643223 54218783 910658654 65465916 177824231 139989633 688461272 794906747 447060948 883620363 212569659 779417937 650959052 989911345 218344640 178439054 683336865 696018942 566072387 895345912 677276421 670216014 997827302 697843094 563539465 647700406 584496794 361155210 954516123 831341948 995129244 55549630 71373610 260230709 266958389 391693938 518187913 210916809 606122644 256396015 14159401 775500509 747119835 513473225 402947189 503069060 251795329 969960171 770084088 191102575 65283433 71407674 111490391 822432543 205187833 302943584 288672766 890523842 651380021 341661887 451992267 50486971 895370113 384887718 799822704 506986793 40447416 597481379 296264946 363196853 541105275 108612995 165990321 956058735 423070265 117218720 883443496 465706917 964320279 721474957 190753752 860819520 38864380 56174565 552879003 894683409 604587438 225497519 493363757 663535904 632682396 277730988 268310337 738074953 157799031 542895889 333656580 883409173 350176275 563296949 278644916 685682457 138100323 735515682 830624726 949827517 340608109 115473329 354250562 833893340 607879798 815975518 147820947 387050857 225803435 476203148 656746018 387061593 564803058 685202523 579676774 336088102 734747662 841150674 782976751 302673410 489179880 322927800 21706009 52604640 607721012 987937112 440330770 412430591 593195098 998583387 927833258 345686195 673765259 684804002 678366156 576794134 239464243 531397526 887941225 450507026 109496768 380582535 148600872 38919049 528091924 160137764 504885221 500607074 948428441 598571791 565170245 219450517 363411988 573973808 539944194 16054511 616897659 970375591 557026264 303405082 629491115 424032096 899106396 10247412 394111445 763725218 112616192 340760413 52266395 552654183 554587062 739469432 772519063 656142991 875536094 691229945 598663529 335633987 37551335 303672138 287770680 80390217 780640561 900612283 388938828 720346798 916084916 610869272 542291270 905014068 569444911 154382259 693041730 972806648 918995493 650323495 151956737 847158184 79346867 277913743 898661170 85799250 529207068 914460861 126861157 32489045 48804122 176819564 880867743 227587576 159611683 340067786 539499359 761808210 10939292 441559020 416201751 386016241 340345357 395669041 64953780 128848733 103306241 44961719 640806105 875592310 836155648 715363511 287243504 60674822 286777633 341588406 787678911 355501133 699179959 768740648 33032941 420019731 33521458 913403148 340437747 931245470 990048225 635748269 788479240 611782078 798944769 267907628 440714982 141512926 343330404 943781546 933844938 944180696 18655844 50583824 649570744 216106252 875088575 32060768 238943016 289737651 315988271 928545052 216836462 698318532 277790096 43140198 565085673 957840623 743503906 29572569 416319374 48501851 467357214 906783704 174738106 933277319 118547983 631432677 99275012 458882383 59889325 836507251 396623555 849939796 412270617 319868174 438072517 272178008 191173540 240829775 518309410 67615207 374672303 822824626 764707783 587964128 666527799 19573521 414818498 483073810 870509919 404921438 118155218 867882981 658958701 623967871 16674681 717449268 521983988 26358989 951746327 327331619 108157848 442947563 706499176 155690321 146446799 283993651 139431010 282151852 416895928 921437307 916347516 402201692 171958932 339597643 892659573 765510205 881448553 302010545 113063283 862596746 636763177 989544726 435931307 315197526 827306462 346930600 43767076 205991530 832024966 624663219 163037233 898813598 410205141 439926184 435456807 963376409 278147485 72536706 769491404 287581134 398668926 605978465 503088820 387732824 305090633 213525782 375571347 133405200 276517976 1852086 461275429 904331433 878756017 687429025 181513311 572306194 86459531 161213236 55537045 603789695 90870982 645934084 898676631 286970802 443851373 397097655 342067492 886361280 932988279 328469694 876789411 202741003 196617303 832095697 431678961 442294787 925125190 594957204 272128518 201515013 871456734 795824755 499773236 5461482 137317221 263371846 322552371 429990876 105326432 794388393 267185468 82514707 29090596 625960053 530115679 595309555 379396062 762538107 918794504 273419548 630447312 130696176 776864805 867341609 554984344 740619664 309866628 741914099 806328282 395736332 92112790 435409852 318785567 173572035 13319874 956459121 76248773 552080125 105645617 144023542 57340002 864172419 23086371 446651711 423127132 565311946 227531831 687377570 208741196 846112232 862424600 600924467 261405253 640798207 760271725 817655436 641304816 584659572 284786598 478495057 841420605 94453861 721982462 324846143 628931407 184492487 491049326 404711088 118685494 821999350 658482672 287292138 157866990 68391869 648560807 963725025 774372246 623831903 630044425 158653020 664428022 127719027 14827192 400341461 115492062 9149931 114128450 535381202 954110442 813770825 368541279 953503955 797515147 760098432 874128437 135499947 718702463 234742427 901622664 350912522 155982309 908240234 825051797 993098139 10098427 490541166 171686919 686907547 512099556 437191831 714119964 676902179 491746412 980366424 979600937 176863590 857433267 252621334 799461412 506540593 246283623 849127979 586630795 315129902 661228361 931908033 681673020 746333172 956876102 353744286 142747508 738283009 39753887 6550282 908162656 125353897 555420031 932709390 529335811 879116996 325817540 127468215 417366058 723619554 103054912 277935236 263882049 874330936 683685545 657022417 512528414 835014490 624309483 978766585 277238244 570552833 47332234 765774320 156169468 842391130 585082595 575704766 651804981 507131943 809893502 523017635 344782725 981648250 258185762 982458217 755764256 324349308 960570137 441762466 372697997 400966086 472104555 134581296 729680097 560434183 406179861 107390447 688869494 685021952 155713392 551436424 897903685 642144391 282441637 798156528 248802818 86542864 250381096 667969128 213189361 40028218 818034558 577559320 30257424 874152643 540374241 334881710 910118829 85730662 918828149 887560104 183512322 342998589 249869273 181039399 252732452 947240457 508920252 961858956 669186521 328292993 41941242 567962853 825065694 456782468 712415513 629945455 885978081 812758853 604455436 815825849 164038468 757849510 176151812 125270928 658268734 146569602 7876112 410969312 663271575 121430981 987952774 531305327 452121619 607562574 498657420 655619891 825786417 937787967 305248565 336747682 790255642 743920060 398198087 751483852 133922080 18089578 304857275 779523862 852690969 658650864 388362259 902499125 915638255 767474995 858931665 822672471 423490801 498331246 772199019 436598638 245373705 680789733 829033452 18250120 562663845 209227659 651178065 618350607 972610918 750653440 936506990 355643052 544081922 438216569 221946094 915013416 600747739 88002787 744397323 515636708 592582814 969445696 705910967 765780476 934084378 247407999 154988640 148357324 582812754 223379135 332170764 665661857 511684781 286486052 463849306 920672991 622362584 750848270 838291041 891312447 237745621 467588868 326752775 833919994 139454731 453753958 227784231 622793719 19302834 928541967 893555952 993932258 345354914 382642696 86737075 60803145 660420206 308993298 88057008 450927135 319962337 536909400 290025574 888054413 60014666 381204194 264689260 141287132 422903527 841906664 529588777 514770048 6424117 812468697 255499397 869261711 759494985 473378353 809550657 514653872 627629557 835699335 471549358 294644590 786392259 790092989 594455246 622347556 483182 899205970 954544132 535212366 463021735 328245027 663705018 231685690 311194561 338728506 60465010 123180396 366794515 676184265 759107913 476297193 850712996 780843502 582262811 225174672 622032473 397540011 615233517 919957444 654503693 975315295 20392032 164523783 752220621 942284033 348068460 260282603 742320808 620902227 885867605 71910751 308038740 817114174 668452739 446309914 405906624 632961241 42015187 263731767 470246133 71653042 729047305 798511678 52512902 164100942 867135093 663537052 329162331 755665866 830343167 125476731 753174903 371831562 785974517 259948262 30660831 99414805 609021746 412857452 191744329 25221972 32392265 219932754 366508064 545883388 531518436 404876521 447980071 419368211 567091967 334344753 983844268 667489266 383274806 781995993 132636562 134417558 610817517 478690538 923839565 224382126 27908891 871946678 518584706 937360348 75303733 628342134 344436536 138223352 364865273 182229570 106961094 84780133 531644217 386062839 63165979 33696948 660644617 778508566 936876730 965084975 112617435 37266778 835223236 11813376 236868773 597349449 4701082 417876100 388020617 752197069 12887881 547028045 82229976 865096933 75374416 96092704 341251589 877960822 742115278 953731424 595096299 819835391 922760439 418776453 681895355 128518578 241870719 245863431 667638007 880334366 206764200 434925541 829832298 721240421 940213311 229868650 398409511 392833856 979759934 536669589 191480143 734462837 396317216 301626598 918038434 37165950 96783013 740463750 79139290 108175030 98437876 844776876 215464676 194161502 992888373 783910099 451947884 21594659 236070230 620003077 529270932 782141586 571997009 475643309 387593235 626558303 270847200 804151130 444435367 793799098 421085310 201490159 159894228 403323657 827226500 769957651 339961912 57260898 927358476 233921485 112344462 184704084 679858603 501419842 766716314 84602426 411536715 957779628 140946502 63463672 463433846 916115418 759554187 720409285 931407760 757358414 321191935 437505394 977888615 60729229 75639384 308081984 763549628 553625458 725367411 956221399 328937425 18613254 652078275 457610784 921042574 20587444 328214786 729471960 705323313 470764833 570086192 184668852 65331127 34793994 59259408 250750278 789684086 178108001 343917930 352044963 166095339 324059631 274209446 816483584 825474303 655186520 720832300 713446097 736134159 491189029 225713142 324427620 768485187 568271152 230615384 548507446 455193580 800672800 954647980 193087082 21490372 903046848 527941178 27221304 170611412 140676984 353330061 141750306 615967688 4846053 732157545 224824143 853687675 502052064 110369116 157399296 82681940 432552582 234613168 269471628 561019319 404628573 860653031 357046501 467484165 920814208 429465196 763105641 743717327 843506802 778009757 832293684 256142576 598104870 10466289 617638603 377774120 528250715 498349048 179300194 115707744 851164878 460237217 370724017 587894183 90570332 400000067 575927360 98916472 391665470 108299443 486079928 167731484 447420123 599007156 130801917 233607855 308047793 714900009 246538870 292724359 722192742 533579797 841735771 139615373 261696761 444905970 919394207 687132037 201069121 587458838 815407039 843390442 747389391 386381117 674305749 326858701 386706535 225196993 217329516 500990515 11625926 356073154 683711688 536541701 579109053 330239077 334349472 453769865 78162335 84398998 257459606 594915937 516026655 625398539 978390572 718272929 533446563 625645645 28272580 122723842 61930606 183398406 604221374 14256194 948794062 244075845 752521187 856328469 347384507 522873152 811456903 475817149 970707474 928794936 457358081 181121412 410989896 768844219 259592154 522898931 294767548 118937289 188974786 172679629 881974971 555355307 960920251 919434200 494215056 927284453 761009748 546150238 968261358 353922908 71222368 833848905 273134429 848971359 967269401 679076995 102421928 497869721 228655037 82606575 332726200 970437341 132824282 93869866 610355994 607497914 532787886 981847856 688136595 820342581 389713580 238489657 719368250 741612122 90307715 832357861 463428137 51771131 115959612 366075451 370329935 489045646 930054049 878452756 53311767 401916428 332821258 72089120 741071402 677979780 379280918 379594745 214829582 866383928 385683638 824290890 115947397 568554915 890794210 522396190 719478463 931897881 368555630 685201977 248744284 954306776 448485749 995561298 503181671 765194068 747651927 591660772 52496255 323727360 453108007 176794657 952578942 296237941 513020021 438742542 685427633 473811529 877907626 587474314 246288561 936834776 188851281 89373899 556373668 504690162 799018575 988662037 411501321 668072075 288474630 385656821 423129894 599774431 956240608 862196376 919899684 108697068 612191031 903662901 222390742 284301931 958019881 991130378 239435584 806117851 848590731 992785349 888041411 337099294 536854450 544718925 101949429 663954032 269876698 103730219 3533813 900087936 605492855 450230382 803924016 732071731 530330205 764798882 111912820 679280938 255666593 419795415 243198329 289819892 531230282 695861254 918919663 895078437 249755055 717281145 188511522 956918607 401450952 649427795 749702155 204205749 509318991 733328467 403162588 503639939 356575081 424807953 836943020 347051709 442412362 50957916 270861015 187109416 603826734 934597481 248830707 325016750 277338111 324696776 590117410 581854146 431151196 155558035 496971305 659469583 828437993 159724737 661599589 556766794 837075671 272382184 532366650 316560419 94446191 123250870 942791296 482444361 806178903 405745324 900673034 651904663 304214459 854253271 61608042 191471856 605533680 602027572 426986974 16010209 223836877 419338847 885593245 664313409 621496226 708969582 574311732 465817213 894522266 692522279 293881538 936470005 476069400 228292025 20632201 299588161 398943089 742414385 502656248 184935899 127579167 33207691 89205674 308487118 826561667 915944801 82280275 873410445 206660453 189822649 5566567 457077882 283915049 92871769 716936556 318859778 631411236 347832584 120689622 751346112 802095937 800650659 344830211 141696878 475935478 355860815 90669482 635657011 365925280 890097454 289606736 182706697 611515728 23628006 558379924 566401193 562092227 905419139 787507693 61660193 887161576 395768527 435070662 483430165 215973245 408932669 398705469 760649032 366116915 222457360 553517451 832934565 243099398 523806369 496115664 820454294 615940498 731558681 334049687 257484384 421724348 455090744 304645710 137302567 495769378 299583682 753944724 130112290 675683769 285577071 303217643 344250339 627731434 310813066 141364882 636559839 139082648 134417670 878958967 479747134 216869144 630025853 102139752 778178873 404429820 856837599 155992192 748104476 12409294 20848630 633506956 569188831 490543473 29323838 161646271 574728751 547979675 860346116 369505151 220395532 290383536 69425665 84126400 716589119 964099676 748748055 123081499 168116480 209449310 916935650 43350917 786949443 504762817 199693194 980294306 361490705 548913007 35393953 815525835 631319512 111820940 150708444 482938421 946638835 824943785 390032253 896404776 305446653 957790467 450366281 105387983 170925207 470889127 510086193 93487757 966482424 267972220 17696584 249251407 10334495 908591216 625423526 145725618 533400009 706057363 422217088 963231125 74897113 541417557 305943708 560179160 886204941 294236237 972118597 632825849 553355333 400171187 798483271 342890978 55466410 211607236 925695512 881024354 613377458 936477168 14517316 722710722 26655403 466404568 404976905 826998271 969880478 345735642 343407168 541863053 865473836 531875063 56631129 574250176 800193324 3886362 854463430 232039436 503246272 411286817 298436665 289032241 846963579 974645915 309408837 874956049 507026530 148712921 475556878 320360959 254304011 80414667 765050744 851217601 529803881 700290397 765878032 242685404 375338325 530886972 293965517 439458640 740795083 951951257 76114537 693068589 460719700 578933408 668806306 382193353 847631180 659328306 195350861 160554991 322128543 148027176 351004336 938496023 654542654 362587506 597279774 414921607 342351105 204479860 776731616 67331824 932397622 588793219 26491708 555590158 299002962 96535093 870712895 777923478 691917929 936895468 254257575 879339624 602517417 363755642 999486411 256659692 621592449 193803439 531067334 51597587 424103898 265539008 298573869 157042755 9399271 444341349 690714824 126770867 741029149 863153935 49554178 375814149 174701606 340821592 465975501 524647721 901622271 219866138 732349736 82948679 732906028 804843690 887186948 464170600 788508846 581160947 79109217 862085963 739982584 273072464 430803033 33526316 847272955 602222008 912730000 423841475 202457636 485108641 909004365 251538431 40159209 440935818 625115752 942686923 455629468 978297704 918740912 795557009 322761066 496860422 857127825 931402481 343236481 362297094 414292269 400518278 410591878 610600334 304703539 7975094 939533703 753064331 523200137 122386993 137883677 778049447 416493878 491165544 277025801 542038128 484077112 669284683 798688693 104718243 518484935 215805353 164638817 817472675 342455002 33262790 803594790 646850097 313833223 546859002 918809366 283685072 537668941 416415433 355775989 39555531 429818780 559820198 908198047 38773659 52317097 498069724 413550249 348384617 908858670 279578423 554595761 609184959 421667756 351125651 358561128 950524927 299381215 92411927 560149705 613825020 759886462 565029785 781722047 664748685 828126088 300300182 611521295 73391291 736604718 392806937 880296556 36383829 992739869 529697445 758651881 652458745 569104014 108106001 212669941 631045265 169012938 519857091 827661700 218101956 291943760 538152428 688444021 492002244 899951558 700784966 631181532 332814750 873220234 85579042 409855929 407455975 388127223 87408715 798185735 716996180 400547399 14286872 22183000 267645718 321255093 29684347 489117401 457953563 487803796 639498740 90344957 977054142 373649845 794294888 275037617 184660197 182089462 25995172 436382115 77771729 172785046 447567086 559049155 29147452 743056141 29073410 578556026 747845941 281094431 815983659 186524432 271899391 462117660 745137408 332095481 922151754 442901423 25798185 709653313 774536226 129562013 978057724 421840833 737488353 771544450 908157017 435114507 567775003 655006011 740349755 505565154 560303041 447518856 128090274 860805489 990114221 899735748 116160428 285580411 687800110 348373561 60611717 120640695 15667719 547589055 613380394 248253653 745971312 14257816 725229610 6924078 836678177 765412675 351250446 622663425 716779642 705193654 814046031 217367554 948473000 140997021 784727454 339718775 1114215 242224603 522159589 485059927 410917623 946712453 849443570 175851030 334529720 916594197 128531577 685292226 632658191 319968543 767496276 656394396 344109396 306983130 405602796 373378438 28744705 627411975 963043547 751045685 136532596 991099102 397234713 603030781 320077106 777540478 479611970 376802525 75702408 140561579 42130047 35303701 420782107 216958827 353603277 170750731 314659242 458235041 932482637 870888342 231807741 510855 600092692 546132842 67088595 492642012 344530718 279961122 443300300 711209026 425159204 328343273 399303864 470210910 913703788 348982734 822992307 662169414 178387845 831647142 254796889 670199664 618562388 796196629 257437143 187973910 140614873 369014973 554337426 139279980 56547047 253122954 331598384 282339775 679504893 520758397 615771064 627517983 32527442 767662661 86598360 787472372 777110118 357223186 459528105 174077217 97777923 589627680 442298908 810985229 642186920 439843959 339262815 749735180 758534462 65503224 842559908 838209188 378530637 987035673 565626598 979985714 683131201 325648060 314849830 560454001 868047744 399825603 405179855 939247774 668208466 450768803 73815011 23372839 512802439 378378666 500412242 88736277 258636291 142087129 621778786 685405086 269518069 249246434 67001458 19269751 110668795 113445874 610178434 257285555 123197783 281433521 767383743 386434954 219654415 335034153 724722255 951262300 141573396 646388980 580265988 992810269 159111033 856133895 797826168 859569844 795507567 616448552 117788441 312608213 173107031 176067723 31155340 84095751 977518537 8227349 223319243 291195864 473833726 848032853 254377005 655259255 391343899 693911802 950495190 760397605 158949524 483252160 419603783 193045709 133587332 899093712 14107003 819241779 26718216 538552723 223554182 332516683 529678176 80361152 650971282 506669244 353611774 863622502 563891327 667073345 829973232 957903157 198044921 891796324 610947683 59105349 998428858 23860257 225522775 898479374 364851343 499245493 902512622 720825336 251995693 872901916 885034093 304122395 384532679 698060838 357449460 969278496 443700824 171588898 163105540 918063062 967747852 447361281 408086006 333425925 823989675 980792110 900942128 821582408 276476729 48678343 614515725 899178444 686673348 440076589 228459469 632713712 756356840 264171653 564929981 626421906 462089831 443774108 111795991 989324853 188964772 964908966 527604890 103054041 380795254 175397217 412690633 145121757 710372483 305263185 586150150 307545094 402604793 787250095 411102136 364611634 581731452 276204177 151584337 724662927 507461463 978352349 446944416 595035545 623709203 432922598 721629928 842167302 698336301 488807006 337797439 713773742 640618739 950011716 251361318 460185274 861413195 163620412 525039045 739518648 853818839 204231997 720125757 487675011 212590222 310872849 562250325 165218123 611860646 786354685 174517185 286235317 597521120 210674839 391231233 544659603 324721105 155900266 198711668 692168969 792213556 58792868 30868591 845543861 81945300 365956593 860017635 861961741 565405479 932795640 493897469 535298008 490704752 433898063 236709587 715938124 653203375 59228202 552534817 390476572 871408065 929148818 696162795 933806620 472539646 482581484 68309819 214195739 623873777 239383791 252052153 10339761 799494340 335017109 274384885 940689426 288220233 827484023 278673543 95392157 538759745 703923200 269494155 319323372 45241413 654971248 876642552 266635195 659773899 11446542 998984108 951747250 688250799 89766432 256966921 230661861 997060068 502582643 467343698 108775515 305542019 919824278 171479939 799802490 272581867 4975851 505440227 951646217 466627770 862410999 275805203 714759655 606223698 45596768 472871561 236156177 420631609 392748343 282714064 879204640 449453685 138833629 13703054 892493081 386363408 952777782 577644930 624814506 834070919 117442312 2666510 659092026 909730106 494077122 423843436 271305932 187105015 487019871 863923127 18930866 646837066 669319301 817959401 799839721 728688425 650264715 849666644 760042721 513782666 817631562 161782914 664007564 243500059 946699044 217101081 70680057 892969336 828542545 942959164 710864715 671777122 198567177 189795986 789875183 360026115 48738391 387524854 259681048 515195695 239696066 31331825 700598889 133958105 979504029 337374131 391968311 627755005 595641343 216050422 776642025 76716379 508722988 628182690 653691733 367535060 228717582 350370358 464294675 764568898 354827640 976847427 677595483 639336467 314077409 329231709 758686401 322565524 722245974 446467645 135169383 202347111 96874434 792895808 633953650 447228588 247860172 252588823 232134281 456603406 533351612 977763302 411991236 20946151 143276042 539616183 796671482 487796140 416812241 300634895 629666426 798333223 435010168 912449902 151850100 920450814 406279871 768551945 690684409 303617672 189419793 59193305 917405117 858192214 581525805 120804275 877926562 210755002 501712179 173374142 548407997 272269597 708390853 963978125 520356066 998526723 29701410 967199528 513706568 587675457 843141534 667143721 735586379 398528228 200884881 865536668 850215381 677336086 396517145 113872282 459442508 625445982 791381428 812708355 677398630 311713436 494578958 606582550 153382153 501898730 70783240 411484246 224627250 742914612 58953860 548557718 538094127 978931194 493111623 121275901 689675238 46269922 537590692 371165155 81562602 331016751 319646861 167840888 356152815 239911708 494863126 204775767 62620283 21347798 177811646 359163615 124009417 995579065 582770675 724397955 869226544 27546095 545663128 448495485 968500615 320183093 79937317 419461088 370917224 611025998 891374403 778721038 429485362 257354478 759819979 879844264 331916080 615340409 768077110 243226460 602554459 689433847 112337940 187756013 820264653 724474970 661463207 910040669 524097998 660038508 988770726 347699207 107663365 492330588 541491744 746175819 624266884 485867370 703991089 610803601 324976425 944632317 918538600 29228555 722583976 590910163 972114843 122165422 464148545 736204303 528562809 579265749 757305776 867167655 77361357 96789451 35235157 995455303 876082588 811034804 80678794 843374980 4358097 57030888 314601633 639436054 610295491 833423153 184484934 105323507 811432973 536387477 656307999 872580848 649351998 243631833 88585759 279260015 290480199 220287746 376511898 370119531 505038384 193184565 372748957 167141697 787492943 896429687 496346211 351923096 112225770 203191541 345545476 390796544 933466474 488927283 340255505 535235551 929392914 326029046 506207567 155063656 288424602 942386097 101390091 431319576 684807276 874035900 367718427 607897985 734698548 891759967 947873294 499314766 873246738 582701947 327881462 393327755 491736832 238940849 283624053 146461620 385201434 693559598 202547912 397496869 66303970 357862531 118177339 405410356 576530694 589302103 407672495 144384938 974304709 216001155 712578251 630855361 971807552 672878234 329191361 828061340 527869028 680222665 893008354 148038173 826097783 561026116 930032644 94146213 75938141 115383310 823921212 517819997 723833254 743179861 786318403 181889487 870113370 578219638 261169873 204058283 799771094 17552883 42836773 832214504 909557501 34696660 48313869 408681684 908487797 727235039 144692405 748493220 77904317 19259318 697092679 864948614 128296952 185688317 777676401 978363691 883777191 369924387 872084763 323989819 93507754 277876142 791359009 881371791 9681086 944809698 306346323 476719361 754463534 14822874 989552808 549060060 794903477 895006083 312193707 855656314 275938311 274903171 21565501 652057151 308447734 218668212 384231560 990991315 333619208 120524062 15374244 716811550 726160239 987335206 289896492 6170723 606968045 210350666 692508697 166554924 776472306 160345365 384168710 613126603 794817671 575601888 202436944 984910557 380106774 759687332 231034565 598340707 78473501 701866938 741728090 560356235 849484621 103123371 718269181 292381012 648314001 678676727 251008092 760926642 379199638 21324442 594521568 655860969 906360444 273839783 976807415 593376161 386390388 841369516 735635059 492757839 679251459 294542763 766780413 981063714 955366331 436734689 833067035 639476076 457691612 597780871 471234792 404651051 489364603 609839009 310560699 306341374 709771702 770980853 444840072 154852336 465668461 961925485 562971952 749263783 425439094 112839402 667847146 270839050 949589276 84047892 664192260 7965599 591901685 900478124 419401032 3209522 997150708 703383758 410674345 588967825 539369393 793965909 591322946 572308217 913780427 838920101 622430344 454703766 664484294 554388608 139011994 382670738 933669839 50284740 878662246 297613853 511586491 637373506 341655 822331463 319073972 383724848 207889401 397392206 152147325 870396543 981523503 787496044 125554288 793867413 54073296 281573378 951271315 768585325 179467012 245668052 275778521 889558084 272052176 387120215 924054038 125533152 596101433 473230607 843724567 857212039 672827177 705817388 335543820 268919260 805323355 727394630 917460967 78706779 728786723 773641609 710413975 881454301 508847859 909791009 531841512 936576907 389434432 109470097 480326649 311044356 429664924 800539847 424017381 580869482 694533838 247238399 986606034 411999359 555875924 912939991 503794492 781087196 311437725 29558622 231880851 317002861 64493416 657902099 547799181 103921765 453852514 110983135 217942024 992561688 879580538 316538572 116351436 488816673 191838886 612916086 504990236 579942691 384430491 173457968 143580616 894718663 900374409 900385740 741255757 218093614 662329342 479631459 599013936 469911796 407914962 614906725 2061535 520310995 713752257 358221627 810822655 508075154 526705235 702467798 61321561 208666025 569629135 465563208 793067084 561446025 702291293 260993629 446485478 655989625 853711252 340237550 2591635 615202465 72984790 36997235 696705571 933867508 466958120 232673891 583375256 735211380 427943948 88011126 983475326 119514342 582055118 297063182 983342163 670080065 741668499 762359994 433076217 443223184 5047601 374157515 41628039 462823312 285020220 37830215 741617153 822537832 956400262 858342131 312637356 774903025 745591414 713463586 679568933 291649402 695189636 383967803 883804905 719313865 349291625 211395116 368211341 308310943 530307377 259481634 300307889 791344216 423945756 893444193 339728066 961435726 27894545 892092598 786083553 679251310 667020170 771927064 45757110 642041474 592776394 360847567 13821164 887611187 44642852 271085730 198442819 87494168 248135099 596552349 250162755 522918457 781525988 864705274 683957299 251246423 172202546 530127444 779897769 548547886 661846425 607053820 56346601 681651261 246635390 300188823 855587410 184678720 342469815 84979180 152628140 762227746 744400334 814687099 390069865 19193618 765657915 608288810 942790904 273482277 628280048 138348155 996884615 204375334 451730059 931954824 779978546 846289776 322819662 697647828 296151241 497298146 455922102 82096461 112564932 50813023 262650291 33624713 515433489 946502434 460177242 16023361 28063333 747217569 862922513 873746269 647322874 101744128 734028051 846187506 837862618 436209153 182368484 54450054 141750739 108509827 314883872 358072074 65617503 472259594 960917744 413319534 445843066 295678813 946916602 84762190 417866147 492274336 408817494 118362155 493208542 819328315 557380835 69078077 634422077 592945677 947609406 374743211 67418921 412730001 66451343 264408071 68991321 857435037 851792286 512256299 114331213 789953302 697821217 808693479 35523231 561565271 250513411 584220938 256934366 872156229 176401667 791124511 24227381 556686531 992408531 312877972 716756665 760276151 876860799 623444181 472505145 955569201 858962913 701905792 232855528 277035891 202406839 20567976 575877863 698247280 494931493 487520215 396368017 190663898 540657461 569065520 704923221 546094715 886873016 43453069 434942677 119081936 468833271 364618235 401393186 820507072 455411877 987272152 381676787 469192337 145667439 294846632 95659709 694242484 678430570 609264484 180606946 801862347 679412538 128208630 400039628 732170592 216905579 627656027 112578678 590314483 460391751 837558813 707854118 938847427 400195101 258805338 239970641 968150707 595259473 380062607 453388065 298041892 953677522 291604511 162164796 894533766 134697413 41627384 786959895 445325806 731966423 363380285 992741668 984401194 252384531 91652320 372150976 620924535 341580210 90357817 925822349 825613244 56708464 30316094 519530805 476888519 574345256 710258724 468854591 796239646 326346556 885825615 421203318 5730827 674694781 852543143 582991924 593113815 276257757 264363800 489842827 69222112 557221779 911386358 684237255 319075060 852470487 997070180 457546765 601862212 248610195 264067036 935987855 518542825 445602927 11235387 607604329 794890575 95953174 345934704 844146640 716300623 189291932 714256138 284054816 580389900 302712762 96610209 534143329 278309813 656891116 717843752 645935918 155642236 143390286 198406779 317977796 971084765 344395896 495770692 580456360 414882383 673589069 581287561 767374150 205414098 368101753 688154683 62506062 604462543 448470928 658720597 188393518 430369648 151700935 11713361 519853761 567413992 519155362 113612993 188082299 955598073 404251600 759047652 250686613 617919048 936492086 50617842 986083117 504390406 102882233 579448884 66616766 586763131 881898493 782955323 712634836 755860699 194927820 600410834 2254713 585276139 130895013 759320475 542199300 553772558 860128554 421235937 988999962 260090094 939967525 788015219 442984459 333153996 513777842 573380760 801863457 3427494 438306116 760488619 962280381 581094373 876494760 660346319 32199205 239949347 41336162 665188131 777727418 869846889 670199007 911199099 235791578 473318223 414605515 738899848 187288037 130471050 271206862 858476182 449728460 376726286 564101024 384068279 284832807 524332424 651266443 598911485 930213181 888691127 489857114 945873359 351144585 165596717 98994716 413063517 843792230 714461191 23617735 935665527 446357509 452330186 474934773 8953990 342843658 101950738 60071531 956610899 442601504 695213601 785290417 546308918 574779045 73244134 623975792 705486705 614129495 478448416 523584717 998981652 586833229 655701275 379486266 90963240 659865770 580495688 603151938 202256238 571244519 448466857 127763348 356481249 965476303 439658969 673412 657605239 938491746 236778543 522972296 42653179 274127524 386164012 658332549 449257374 941636380 31315971 535847274 916920075 950647076 512820642 70995195 888531605 638198499 230940736 142787742 573380658 226121241 745799533 803421000 304530263 332260886 704562903 948717636 178817645 728843620 758109566 583049838 341827879 684017761 58699776 681023684 174201442 233403721 503146031 259885497 502673100 298227563 222266651 404987381 753889331 503068542 616440999 441033897 885718350 306417857 356425527 396942224 485800576 747751920 858556727 160286167 477892062 128100389 198502672 31834818 670283351 462011251 570042164 568963351 623025913 62062763 375262298 751248582 562744514 640988550 197972826 348468700 246882324 101764742 28448347 599930936 606923369 590323634 403882445 583838496 812024153 527224923 636427604 756744349 793009915 805406322 460340405 627142725 78468526 880701273 792353445 285307407 629152000 476539175 953572311 969072540 776752125 682885031 646111256 105929792 252621068 712544587 115039071 485038986 610711459 309759305 880500310 226645577 571843402 972412206 391739635 407117416 141137869 268298385 167780454 624521629 295217826 771370633 928363352 582162087 251569395 482038767 891210280 349722073 257837712 730596013 523292417 194506584 57262347 394776081 53066472 593965019 889157950 593934156 846296247 164430103 847828463 410881168 192916855 849632367 137624688 741670354 14804141 398555997 397692357 886239392 729879010 130680975 540586782 913961419 208966936 119116935 406950222 543695758 97878007 173215139 340440781 481049870 774234348 650666470 248793361 379353090 343121038 731178452 179057993 584012253 52938588 520142249 28232435 107991442 7756936 809339812 266446224 936587102 162474326 758315147 252131098 212471111 728968449 208450471 983675310 181264477 302953816 668915479 221806870 871075283 846867357 475888025 878692465 340262639 563437220 439985641 410404360 886740530 157017180 538566386 621968306 545599257 155727312 559726007 826880941 374102571 232357667 722601170 180135456 986182702 447745753 992228034 365133394 109662737 518648314 61013978 652923396 967257720 308277331 848391000 937159068 427091521 446619221 887131675 75018799 310136777 852347223 346558240 941268162 330351905 267977298 373632357 61989659 288022694 965566586 626928036 406232860 547298493 718788878 441858113 306297701 839109803 810812809 757440901 443833029 585001461 414433540 556956782 819669469 702426823 724042402 136813190 711031054 958443021 4657738 88862757 306642468 189343745 922476766 443811548 687835488 847698921 189978519 66604574 564634123 285732601 231910886 853987138 827727949 761463334 322293074 828888216 821887141 495111402 304305768 706006014 231795927 53339333 653191363 563538519 43414654 576171118 175909280 689882602 871309984 579782970 837197389 579442246 393974459 768538552 285076704 364881366 883008203 907984737 400001464 669069207 845419559 944895115 26399859 794107279 150205585 78249307 490116702 784145727 926135616 403567731 73159393 205490770 89721206 646982029 226768809 746039034 947847517 545254871 413797511 842080115 754777421 661969813 28003992 335679552 131538993 430680504 610488394 469115579 970145811 538734146 737938304 727865992 649397136 791363624 962848078 524421497 763049335 527925668 165144195 959243825 982345630 759238544 367897865 182018581 117620777 660811594 277702414 877312150 167314733 316580444 966568205 475147471 156301666 20106982 57939102 924481721 875399666 977712758 642605541 311935317 784118346 168637627 909639383 991347807 521935621 99803585 469423377 494137585 306729103 364580449 108302798 755643993 687440452 185059163 181694220 243444292 66961825 793444413 928146055 448340738 751447481 877572322 186705572 2900461 344300815 264637170 580282682 159059414 811613369 136654068 501230660 954400414 866896615 231117729 382707117 632674151 397780054 982615710 891946477 426201991 641743428 741136023 575020266 605716568 831513201 915876140 325989060 137481170 909020560 131108231 111884514 420179160 691925297 926543640 154165160 52851530 240755521 654617740 733201519 317629424 864650989 29066508 699504538 797853229 644955611 137340423 957303428 987582013 694648201 339223022 873710603 620565948 619722045 33615542 8511033 576469262 618189054 112186600 190749714 38505484 356833075 747498256 138372586 385449681 381908912 541437080 517438338 509524501 879008140 545848755 269457356 762824197 785210049 85363842 207994354 356302109 865294020 399150834 889691541 349524135 729874173 164931738 41573821 582791883 779826672 506489935 452612975 276872066 409789452 638497467 446030262 865463631 653184105 399536794 147847302 96236956 626379621 391159086 210019699 116355812 546894178 139478280 998762924 161663986 828481846 490112183 409055547 542628166 733863727 118605964 765235176 54607299 587363018 928090495 947383090 581550495 735203880 624258490 535777115 717277737 950768877 480951995 821659842 487981108 135836557 234347759 186470696 513654918 804999129 321396521 334517911 199937586 879051409 924018516 808723750 776563106 301321204 462815241 246490034 417988720 359413234 579842999 779021778 818289236 111701287 417274073 51695852 76675555 5719109 39647533 157925073 976007897 593422169 474710236 955647288 76066966 534559334 208566036 899099717 950704752 961757330 224990271 995520120 151207435 720230216 951403751 870373960 476714042 62706800 265631730 82920985 36390448 362575257 248600456 389450604 270725978 273626684 86008533 770376648 491484634 719729134 313340207 642151777 985959572 90265089 206672138 860610436 560567805 48681784 26315715 333001046 154172205 928152266 282427037 242314975 820303365 568303556 358779698 796543245 607089501 840401662 731293640 983541447 317462257 156230935 822577417 885944228 666440630 383200804 38607613 554594727 818905368 796423104 54617201 797467905 838683682 390687690 698129010 381244796 200022566 102065653 94557129 95814576 622112897 414471204 466168385 265960666 218696617 124377911 68309476 991636571 729118490 898200675 857007740 237777778 637536892 172182566 673893119 687246953 313314441 545076582 833085259 30432295 905144566 699547219 373562886 423966283 45910146 242931988 967479498 838625429 421751695 854029904 4214449 719746484 894459003 220684285 252622494 530682224 397531126 449870370 943892273 942012342 974265454 718509327 375857207 105400840 549410229 531219727 677838311 909448585 920934427 599550485 921726455 706415722 454358846 997083529 880393053 918772846 621958972 929760473 756369376 410069055 49350968 725243050 524939005 552658366 164979710 899164993 823677146 159013657 568062567 479344898 466053864 78421124 525999226 795896576 909173362 281739632 666937968 106869021 879710698 91466406 181151591 348262470 958131804 923223924 750819289 918099566 890824110 180337809 750894009 783036680 862139817 979820141 856901336 259665571 139463161 277382720 969535323 233534120 325660162 634916195 754370316 726849531 321676802 533568126 513564822 762951940 963698371 442805177 495608602 924846740 787651444 436303000 793387581 517030827 113874109 126841956 315264284 674449997 894331567 128149931 301877211 231775778 330331484 260131705 48846721 832226760 77588656 3325974 450591504 93402183 102175489 343956918 895518898 61849299 715646842 601230672 446740864 770242195 442087473 976425609 168019943 591595686 68210471 683868702 704750070 96476217 760240591 548232766 839305406 280749159 48818526 167553201 970831653 756651261 2074136 626661933 956073113 367329470 84390447 654949159 896481868 150817148 196501774 858125873 2174466 645634211 584205209 405738121 407751049 986519519 854528642 822277846 9864892 694993105 998688255 939814997 211454935 125570803 750242779 260017 916994385 198799400 361328396 574227900 403706044 490994781 405654648 85563786 823974716 911486960 636832502 580782978 78048278 59571433 139363424 384297339 312098108 974203405 432398670 57661229 817539771 601106147 4499138 345316550 951295531 860267266 503797265 635378960 963878067 399205059 670792345 385507140 810493529 549022696 964797646 836118528 152072309 172091363 979291761 51964584 422588159 503225361 243407620 214274712 450182837 243271396 694211326 981919368 210754795 978712501 979174474 744213767 912487662 559563122 264197763 800267977 259937 665688728 841332741 579888948 892433727 223972870 275281940 889913105 874883945 836805502 658267178 624693144 358081106 221621107 120464289 115863364 528443426 95096198 410032402 329252752 41611538 288819475 388988403 608317827 178511882 59289005 557830431 144759579 351948540 779656473 492500577 789642413 606345976 470097378 52235824 101992332 410765451 596612232 664279482 218912775 494340391 186464632 470839999 613689909 271918312 699486122 836444575 421706823 456527195 871082646 843495332 60629231 729211263 532760291 954758304 916712214 683399952 987552670 815054097 835503842 164328306 518223357 105763737 164246368 68546908 159153249 40200716 396402038 591854395 936575839 805093229 409952819 402265410 555319737 28813904 366055080 220285655 983446925 818296881 938918557 217949412 233620082 456168074 962363209 411577200 182282622 962048762 688388509 154959769 745864924 593715800 229529674 422024771 175618342 202577138 522757073 520200689 223562570 66177142 925555450 420869223 194876357 877653877 781395678 974059718 383685097 431572489 929846581 623669931 560392941 780512153 45114925 962378584 714515437 308240233 979768225 661892501 476992640 807564630 37547364 292658591 700926434 580011183 883801437 33390940 431035949 406072594 327344078 731242671 916870152 925075113 805091511 451849268 546758075 762280322 973400897 768284715 735663838 198962952 233951708 120214485 9639204 627462640 514054938 35020759 496997917 737531709 780864393 151188088 355615979 679589207 446021382 451798512 472488192 227278727 384080661 574557480 643194555 869472554 312393979 640117650 437343845 577265845 99127597 281631250 298595798 666922072 199759443 484004463 579876207 3838889 791819968 15718298 968246236 46349081 463094835 809552747 247079646 93365892 87345193 368660917 796587279 646374928 539976001 246096251 691088640 645218202 244562445 782096594 907183597 74752857 563605565 209633614 16912570 32145739 876894039 518333470 324346257 37352096 782270199 889063012 141927302 468531374 189512367 323104406 762307971 75543269 428778538 22805517 82618256 600837177 548851009 794732359 870733216 150458346 336655436 532024543 246735895 758829338 750344538 61609304 915714072 114446472 763805997 727219510 738762432 883002419 421485306 606940447 697226417 283089658 411553281 698107136 977364287 968084732 397942704 980218160 890541495 367112985 653054127 496690149 567558762 992814078 38206216 219648351 474305856 74991650 918886607 473670527 22913920 424327703 520699305 66465084 738072307 555482991 504078108 609251330 888999203 217568551 562457375 774726376 125730938 971981180 272546898 379243035 789558639 216964103 750082294 211208548 275129185 392237212 724765993 403052515 25398641 288621748 257793581 263789748 612420269 667952796 974658503 235039126 837504235 45952199 280165946 396886387 123995407 485399628 861512159 251319172 486147821 612979476 609125402 550823986 197376776 768583839 988358586 648567223 58655547 173039305 216037034 398017393 433750623 752985300 277975808 326214170 876774782 732006313 249667297 507021243 573326817 372403748 829142838 646371384 814027019 218637731 427007740 246102570 251186681 852242424 338361306 218077040 312670712 410266440 146916463 125084367 452379201 204546236 753112354 875483887 50615481 615710458 901204196 107053577 452229422 564252561 423576650 790472026 240883434 195999774 513064510 140562878 700777801 703181986 149689560 855107048 567615371 999279305 686530389 751970136 362908060 708166806 958848510 258267294 251553678 444268434 548818045 46932283 941245082 738621209 407981843 188187002 389904465 97729493 564108510 492890064 594367400 35506068 277169955 716364902 218642592 696335406 542410338 718342174 33836352 449019335 342964006 938867207 654261446 172918285 454052902 720204616 572787268 928858009 216721163 799864375 877747308 198588903 895458940 999025465 149881011 25142959 735195268 240327070 4003465 271194792 814562147 648357160 876202389 126377804 546898983 470281898 536157818 724215438 137884394 618257699 80089699 14995300 60411601 442656274 643776517 118400394 945435122 253524498 780830584 690265396 204831532 941523312 571217301 259540106 588924535 543910566 499154916 410494344 468091136 608824526 229039769 31251616 95590676 427885873 28405688 935800855 642563216 492764694 243941378 245521902 797391417 616259915 492068120 94438440 212654095 346122151 365282387 981661201 961578942 725118649 802523927 408930130 301052132 130346509 845653285 142572251 879679440 358273189 948953204 267042417 482858828 452298161 635364867 132061610 850295449 689799557 167490083 666326339 271893893 112689375 355750732 224563577 3530458 519325526 948636391 756835015 905799046 836638045 590156259 133797862 70324996 938396372 839384744 962736380 31693335 317625708 971091577 141053270 972781249 989479375 240641545 259838825 760425659 185446307 199476331 945452702 396490827 21456403 531909718 411070061 255526232 347242385 483569594 658116410 98194180 15523713 886875069 2327470 12102703 95844739 538813146 247467977 85783743 437468393 970760507 478581812 938234312 69455977 292756104 610706420 986868364 450823929 147153231 435932672 633543338 271376997 552595532 332977293 549908673 878668080 642366373 148201934 693012498 173719307 75988604 938242298 8273662 416983162 948184644 476571791 916257388 864731397 30252280 758031685 263732817 687433425 370464504 511258084 689507689 16173590 51413911 315763174 203822094 77738208 882821464 37860249 506269739 721208489 12535902 726499320 574535256 55942247 213107542 671641823 652804162 496857134 866218043 87363334 999319495 181850526 117209621 619193418 235854612 75292070 870227454 563609955 264760311 358855309 613200268 449403002 93819474 397330865 689050095 479795394 120972051 616720824 465122711 214842554 207998228 644746272 483532736 117360921 983099447 513317295 108870585 435774703 991649889 223983780 232127708 950604459 589117731 847331716 785256631 816380951 764742903 392920313 464126852 15233690 109662985 354435459 480318288 414616745 910456033 679279943 76201444 597653252 970606997 659799845 835632382 613486637 661321268 932493845 990267951 625208684 123510821 651678058 534503575 839716481 32799779 230159015 293100813 399220709 355771092 494828294 285765035 477061332 309823530 947804016 829364971 404020636 208117435 258818171 385932638 686551379 90099907 200108179 245201697 477606594 925063076 599248800 954015294 285118925 198171501 584483773 551503952 610327315 69893495 874764264 745294259 223322322 755338675 369505313 976961232 11255635 793979111 831953369 102310537 753699404 378157523 940585115 675169199 533584664 145304153 398018653 898322335 722876170 505863151 433642718 418719231 487074711 31427511 351244668 803063830 808295259 508876606 43919360 398175439 23399520 75441124 235646074 330853225 947386209 425049818 120748823 639673044 853477313 316120910 204687293 633385680 918630259 171874975 98435313 280283333 360051639 513252761 605321423 855996793 712959728 663437414 788251764 877053418 579593369 510104500 744073832 963103268 514508035 86696496 483895572 426388997 127998727 161722797 186381874 997740691 631628608 332849857 265706388 697545345 933283389 290824303 912088066 82713531 254164918 814468562 831292773 46127516 542486066 549893368 205421036 525138279 64298449 207996777 330724733 15310254 12254395 672615968 588696214 815783290 30550056 527811657 132548987 137860596 560794220 473116785 876902685 883755348 266247842 636259908 568438065 215736681 24688739 672979390 60305349 319785775 78174740 640682711 455317198 126067494 966402879 458594330 444653610 681475763 794503851 945182615 906371286 131229496 489994547 665460713 138815448 732140961 223561467 927388878 74554172 546497756 258981725 739348968 953499118 396365588 152870026 377056082 848221724 824940320 205837153 951297518 770333018 626806341 310142944 374217158 337824564 23599022 376868390 144216578 940240128 763120343 878798526 224868346 130845019 708758039 530741403 112950279 408658734 482595858 322412667 82138206 296952057 823974720 425092115 597485769 571052942 768133780 609465952 181045809 565293358 477311896 285956651 655040083 412366492 61524441 955393437 712503475 971373078 772843483 810563269 178229265 46583506 516986031 323353697 273677391 478762048 184860819 94962682 781565541 424453895 951639812 166097359 130985198 809436643 94041128 106275646 900784593 524984810 757309641 52268444 397700562 120759622 45976783 265045913 561523103 836746495 911253250 61200369 209802708 99991905 391241280 274718356 510329693 304774887 121014428 911781137 17548114 850263595 153398014 442701174 840501604 921656178 43767847 673988714 152475630 961354209 548717757 176195567 879964912 254825662 21376935 782542284 895225963 104367900 342440508 913205114 639352611 159431506 837360259 958204139 520031344 953136092 123591414 908331616 649099073 65954577 431772575 25255551 896729729 940326991 376186612 803531247 567701898 445956471 785123380 980314490 122349670 219602171 200097492 407556555 889525137 897469608 623611435 226370122 362607486 396019519 537964587 431872639 941375088 254479992 790453758 725252790 199542871 491347611 392231520 586356100 446098906 706672470 579963159 778158052 960671214 811878667 225109022 860929115 341984036 309734703 403193430 945022541 646182831 311787445 195839706 266442341 786049179 215767706 458108119 35238816 145502838 839369222 275399667 163109252 328348731 130728528 645349676 331897172 33126887 561144869 527685839 770500787 411233096 739880569 874922730 732854358 108185356 372076844 862301683 307521810 935488809 624891156 732020788 538494520 470780198 962881208 488299682 725210856 651437793 590524852 465936837 557954616 172521308 189762404 162135696 863692749 273904649 124496601 716811224 220525642 2486824 29285118 723168423 667862473 108868195 306729873 678647258 72971877 38777398 196668526 994978746 660971594 848399787 520341310 650133715 611451050 195282325 850141457 642000900 668962722 308851733 923435125 301338830 698861499 678448253 709239618 897890698 640576250 393633000 612057894 799304664 930419215 259741283 26901109 942310865 975206167 55773935 513678069 860169755 234374889 488352500 529166105 522665714 203084646 321852320 560302857 746793799 870844625 788191780 509471516 204550102 904570787 134457026 147375479 224158634 718355536 411356466 998443362 377607933 470962439 266298741 620091735 72097080 407530610 703267812 352287395 966851811 683341864 259960655 183388538 694851337 156687246 478715721 651705747 294730560 5704633 963397848 414249363 32554540 396962508 168904322 636413413 638326640 39984641 528488681 158032536 131165311 575271088 122407251 199987332 198807903 673595942 395544907 36850489 19776458 493634531 395871458 490852985 756152167 937099002 8902131 830340942 549357671 223164528 255290718 511910722 499227992 830762747 717667673 804118819 454755777 917991552 343495571 954289160 841994890 945045820 770187763 655337660 890340835 685999482 608897963 862772303 157260763 302642 466743544 426043563 705029469 922060047 10457146 25822560 789004035 303975084 419234279 57445396 613812253 188232320 765580135 947156353 58053184 808666769 788678726 250628344 701422926 171801138 781231977 422247726 432133029 742890168 760545719 314676012 549858599 372507248 925370429 808172086 604893071 427910801 77041719 831787225 550762711 403566792 261299407 114784910 232865890 625101384 376555024 654331860 756798338 78860575 533289296 701172527 101928423 732438717 820759829 607023124 536301175 44283004 306266328 514813074 920778376 233191212 402927523 192435219 879346310 796496739 796014109 491101110 54276107 814833097 741505481 794940644 526132171 499357112 859475177 721037743 583485318 229855680 747056526 729293475 533628870 893262677 449604626 888119526 838323602 693532522 978912553 362766967 182225522 651660267 675212782 55458194 806386370 166556535 614284334 252225711 352400915 708245402 319661409 547998261 579428901 617390099 176153100 327818229 707924571 623767815 739510639 555547316 610297429 482946173 907952149 655018850 165317145 114374529 509828016 642178456 679726243 410975021 219569758 342740137 273556346 270960015 182752953 587447771 474971788 111202349 278697404 460568345 775654241 445719740 149672702 907338385 925013800 382305170 946694483 201914078 41553521 104165111 120895150 412669704 253158491 483360165 154918288 618219722 519851809 175376061 657560672 888368074 263835108 417366224 435416171 249718765 47701049 533764595 687536760 20094167 2084750 9145668 55975615 42026077 65083895 919693406 977892361 614085178 116987312 877879964 33797434 344255887 735979566 125124570 470928029 126634472 418233551 827535254 287697501 770164024 184194406 346901045 490594632 967323593 48161643 96507185 955308404 964962324 575675774 740572185 28612676 897723978 312026959 172600 644872172 310660767 134992593 495437439 707294121 542200749 458218267 631158328 432275126 287445684 828693426 789401025 825268119 133716471 7024120 834753738 67250146 760660960 70270606 9581743 65787843 792936361 90035673 882447298 614487578 94710191 943981366 825237967 402030282 166822069 864099479 541368336 381687107 966159889 658899056 523336615 435421863 123057600 875390976 445060544 667000949 774619200 55971917 981024907 722416298 518459567 162233322 434338688 518192738 916098198 178521103 583265107 578960379 791382147 289724678 656777769 370484540 36158945 383709814 659401271 884825251 931651705 833445386 697570880 455685212 743321669 318354845 340260323 204313240 139836239 500708410 379105524 135853481 963301642 336001220 508787776 220225852 413332278 711269196 703165650 97572787 986407205 586613482 135166179 86116605 580344793 756655279 466257985 222569926 387937305 977770398 973395399 825726611 778618721 988473622 634317444 694234429 600868264 628449813 101943310 474883656 300600825 166086402 38342600 483143390 150978105 198132836 565883666 193475524 14089193 493971954 779448681 322274159 802866918 480217009 543686547 705395566 491565709 866471876 612242450 450726641 338446107 269402221 828013214 237425010 569915311 957222239 226074811 585580326 967311821 828624448 927771725 948046034 406245802 305848444 372451691 833582185 374006791 337193796 297707865 332832312 61251373 179264193 345734837 131652025 427888843 638486993 371577771 49338019 129826477 114414418 877257521 861850625 711887402 400212747 543878103 248291306 765879048 235468076 144466597 391568571 647116444 627291996 978288767 687653447 83016980 658189233 955728031 369256900 667304723 566179948 188419166 752859828 300498705 686644792 337403904 784743772 526117358 761137346 823382051 646135179 326197389 908351220 755418533 643334785 960932240 119145919 192992672 646587200 817455335 343564314 430656716 644116267 583965968 392125729 248524694 137551757 833238511 233832084 921807949 909298039 777809975 748273105 635564758 342667636 887621276 878367814 4024487 370859544 115243094 435578540 89467252 160526942 383811446 437141308 215841448 816263750 454183217 852196962 979611825 750466636 776363330 122343313 532283556 973011459 181475412 696904807 748215843 894062284 916229613 410332258 9796520 401203401 488998830 773134249 106433129 976461021 94010534 68059804 503658575 956053127 348793895 603333736 217432298 823551849 612815399 814522584 141595153 938451781 636723754 211568491 318662215 427017393 493756637 482722062 633818890 751048580 292273565 510580319 264949844 902369529 318505934 244570814 42267824 599048704 174624463 675194422 197086744 924962881 183144420 756463998 487763006 295435790 865050883 772773079 366487427 563000867 691957700 155414831 18826169 334425107 561166657 688505093 195110928 176374556 583585498 368915875 131811615 351195344 940501638 30696063 353424132 607415443 844023814 639765372 459392201 864491951 787095291 219835326 482850681 132847577 731289499 869878131 146696891 429523647 971193451 92124360 978616201 503783268 380783632 403358987 630816029 99912555 215342906 184072357 415199173 601526533 637368904 290591372 67507103 72344119 474261927 553684926 34498347 50341357 227504498 195425395 183353341 160964376 251271205 195344156 97922464 76773677 39994201 865870401 197323766 765334898 295997295 94414845 184024227 523642403 484968091 99207120 417499553 268940140 408363273 359011548 181532479 468256564 973566419 221355308 505076150 831137803 181350361 408080500 893148630 276289131 172607250 599144816 914667513 925401511 122163678 791481558 701155804 709789323 140073206 32810932 486077097 187783869 14498750 720159059 799792249 897777044 339656177 317431238 833604006 647218788 785411141 821677576 570344390 570086094 792535789 719894956 714787147 498051832 232032235 779300208 626481017 394638529 571485522 418919092 294550648 339461085 142252030 793327941 579993409 373328701 876634809 776817595 884964214 784440728 332880592 521627441 180665101 597771507 517904934 764601487 658043777 252316071 931694911 742583323 871896280 710043104 956193519 768656450 519893578 862894853 749877057 82847118 493336099 850073815 214031146 676695739 699401662 887302424 188134954 768476726 735454233 650916780 70714099 728893175 626330720 705869328 891205820 828515418 512332415 424192509 244404356 272723849 995668890 898853041 5138771 393476339 506153464 145902214 942509627 351388059 459104987 665445628 87219952 132818024 777270102 374237328 291055429 882548006 29312008 872066449 36149337 999334323 126851140 152979999 851261323 958631674 21453732 45816580 650959475 748524441 617681337 826090935 218514170 441602744 340905465 857943883 146659203 464079875 403388658 928907962 601661333 651448465 207894490 400237477 950718804 239973912 591933014 713674555 990857232 759421957 701432763 949822130 492580799 722603313 588297647 142935191 132607514 63849865 433995231 877385329 241228322 526374539 208739209 357777938 627657618 977121975 336811511 123008133 188898462 476247792 11960883 523561826 96415442 286767574 37125675 801546126 350702189 824566669 385094928 148096114 429595548 798889328 596707995 151959296 647981125 540997917 720124172 402345018 774318368 179303213 181391100 160965634 682986543 890149639 854254900 945556292 537740762 518742569 380670399 859582978 646042841 260545413 97985279 764600120 103795697 503393522 437263556 307883118 452234844 355434718 184616219 974917603 577138701 288820259 891230244 307326025 697123797 950619223 256596982 587039702 866646892 174507890 941728343 671061602 1558865 604531079 987669215 381636495 877241234 842352208 148525088 906649542 128359214 854605237 856980763 337441372 132578315 609270864 796676001 621454891 977366496 103660267 594614818 382306910 320510463 110057865 297761074 883340960 118776920 986551851 272371677 483447661 849243356 159882377 857103191 79734343 900622472 223456683 334202408 375618013 560447957 647094556 993040369 312630772 78995977 787727778 792029229 387052736 187243352 914740834 171887561 16720755 939206354 887889179 934640747 358050393 388897607 846522825 856229035 444532690 400305864 291311625 40192576 802832207 917116776 979487046 889010744 369321161 672480785 185015835 729748343 224738609 470889247 69927131 563587276 51832160 276281128 732789943 519621670 926996943 970938211 228975791 429024553 748340791 932693255 240769437 807035854 961561035 557181694 881324912 616558729 423742319 906502325 730074681 118979279 793705360 448593126 517385617 904179663 931711828 42330216 145379126 372361706 122439498 536954578 92249287 236550303 269918966 16396747 493023603 598743587 700850352 814541547 255551509 476004038 326085829 518280741 354024993 340493336 653706290 772336423 312374659 353354881 535336894 194191811 271897520 835543710 239319494 498007037 87647224 884757728 734461264 752366836 910518827 6865763 560549235 433931226 399607957 572888116 460946396 609190991 565096722 263031248 876847419 624180608 489406284 657454375 36995757 925725119 842140688 200477429 360860210 990906305 767506100 232684095 899394904 168720333 559909807 222327099 658458191 351319445 851892306 463823666 497264312 801594966 517076599 816218751 342753814 271741871 35613343 108280478 298759070 862629302 817348506 87720522 217069645 681933453 425372116 440488418 923478057 839100601 667817474 812371413 749600962 665248141 505159005 790409972 448406694 259872403 270801939 133335657 142842155 16054354 16286018 807951867 922538422 976990651 26873041 86543946 153094161 273706363 383122717 936895317 898465916 307115851 395907811 606156904 490471330 998371667 561809766 320193649 259458915 648481445 435232681 134020797 701033424 135014264 935769086 685355307 352207771 475092294 752383326 241706420 424268195 849910890 949157392 945630608 168770231 440840667 56802487 503175257 541459163 506572768 919257366 226921113 495691760 722432638 430139007 664132791 876145064 589416310 837087026 959023951 696943926 425644511 423119329 182689183 976835119 849964334 932430945 659563175 520468152 509938293 603329151 688328504 164296618 527352487 997644565 139347918 119960609 127620422 285503597 129252969 372738728 514849952 829090020 538210668 743186527 706357743 141239927 457364654 248787007 238783033 151874107 280618343 464210619 325206900 114510397 942715676 570137440 691974645 239096523 530868375 862324558 770878274 326105664 10609047 918013172 620449657 837910873 157258825 362064212 904400916 753194338 28097535 302552794 945490412 132057557 742304369 98199151 13173488 395841535 92130565 647560718 567454967 617523403 290846801 216938094 116540451 252475943 263143131 387083134 89537763 569865184 890710161 862168201 43960512 455995699 397065549 985775785 493836723 767622101 93103679 889867867 779692998 825370567 280982837 713101332 911702323 764686467 658007995 690699638 177693834 96360445 497668112 811551924 669944870 342168127 867375821 360794593 279898007 855146489 66959768 497469982 862983 745264620 809805488 204173391 147991271 245463305 289235972 66784293 709606434 135055053 350977362 890187932 612120180 604105155 768782073 37008441 589695201 486100569 390461771 698104396 47503734 982437596 487418593 588954999 916160740 589989677 390581942 124857798 338723738 211377874 243229016 762630233 641724899 450763821 584315284 832921945 557949925 589367189 234918545 286849221 993405832 781472499 395001696 459168376 508283892 988393531 315135517 254430515 245513779 632602939 191118804 152264832 139006653 478753481 430679718 972477334 626962900 503028792 947313893 988692414 261522127 274532070 997764353 349626113 967243864 919291377 846171768 897761540 218434855 644437979 430499683 569082872 189212460 152518442 748923840 322394268 880196916 363083636 122715709 238104890 457234989 193010373 921251341 988135813 672438239 682960398 688284889 294382876 583632639 456111423 294650818 14470461 444864308 11383012 702485445 685832688 564740179 632907444 435503124 642845474 917211492 998829050 588070955 953404178 87603318 487729221 713499761 346935264 459438835 480028415 380945322 912675668 507629315 78230103 99682241 630268614 326759773 459211058 846270810 470824074 562934866 92672594 835710523 736560740 622046444 57316751 807741040 435762608 229106040 914571359 74402559 5163389 814665677 924027262 855324040 24774591 690451477 533517738 989676656 937027313 138862593 305469864 109590430 995858508 784850464 283720118 74371940 594046761 458648277 79526602 650260507 358440027 867204029 946437065 18794135 724673292 323171778 401580582 486203945 823773428 671420031 669885264 274742381 61014829 89782418 253236735 916303559 697091057 970817111 802705935 516383216 313037641 354337653 99914473 347170284 942058934 728250654 464834814 987528217 284802844 291111044 764468810 977152210 687391879 367167195 572141536 300987409 32232309 546341483 10534840 381585779 360700159 389110458 831464764 438828418 100485217 768073668 105105309 589607079 41096841 858604462 757133049 540940912 662412525 60144954 881527392 970388389 588765716 605409505 1247197 866664252 710921751 528774111 943869202 49140946 954802996 565796469 813082137 423097372 797167534 164133324 268872701 868682895 867659726 302721557 860617350 686944372 879804503 638759344 673331493 532141384 551749174 831927200 35429024 802782830 475271880 389884945 98528677 788221350 671905028 715219977 614264954 869287596 278932776 89539672 877901964 366781365 552893717 19039516 132951857 825391956 800983753 344964983 709140587 24848524 487025240 395052897 484562026 574201913 28307607 953986102 293469434 479402701 758350147 854938998 721931645 226597201 742908018 451114243 87550473 469841130 346679341 316832732 771206713 798345670 680148581 827591886 563663924 89905204 175589730 849401882 369573164 319254968 103992244 377759975 228999366 374273243 550359388 727765619 283741216 750425326 117089447 963151699 304087432 929532413 301267419 965980245 820369592 462816070 170518878 111436377 732524324 236405997 729618834 725925528 365597182 214230484 512185320 879643777 560272642 149360614 432712858 398990591 270092560 308933316 936594439 726662419 499195783 617244503 556142774 745585102 400788283 11950087 43716292 330670458 917646026 429371886 572513205 701574973 417377507 1655808 126862616 225437671 997681059 115593285 78454996 888905698 550191091 516081637 866711496 152893947 112197280 717479265 480133889 904327673 461358970 653242045 599664842 250975950 65603456 527141737 473170503 1049240 482401173 490919054 203444819 33517414 836035498 712857786 366852741 7875197 700379607 772046139 232663274 726669811 984330209 978348803 903809634 963156955 368115040 274346625 430110189 713050585 191115406 544341412 304226182 544453471 899709583 882028084 567046183 853264093 998453364 375582872 377954469 123084648 58615355 768374584 339652397 130582574 269114453 147532307 67953056 569824104 845994553 393601601 219851663 399987855 332745722 878811576 465825939 647664889 970979607 629756657 607002668 604820934 216988230 208492271 41437703 20088116 454474479 160807404 279605914 47406210 155406838 879588904 59698847 32760547 659152761 361487366 486032146 787749313 804353566 256666800 962709083 89541550 705159867 745379694 521210137 990168178 300483622 216143774 731252124 854499771 472218744 310227095 249031450 398060768 418866620 741529926 646495571 651148616 675723544 220390060 147173979 688063459 458554245 900860633 452860551 669448678 940698140 201870073 168316482 845148229 985493216 473115125 883392406 307744547 156195615 65805765 815963323 462005526 688808059 446832849 829225468 676670676 176475683 358428307 782735090 931894068 625746530 144687369 722388330 489740498 705549788 563574106 24191672 182946170 514978383 354906764 713760497 739403758 980456499 252971342 399503208 394937096 449893670 265084901 802667945 123763615 412592685 321432000 565981381 102135369 34824660 585001589 348360346 553047361 308612171 223518027 84788944 75973382 369867777 963098535 960055954 198425150 673738569 793651885 71004685 645568044 353783738 978845796 340562753 729377599 469552921 46656140 419695385 425694602 94989246 91432051 797942254 35237341 887118134 969160502 605462751 674791078 65908664 183580908 85157351 840109705 10880460 447638157 783722231 997068879 903659418 611199345 439529102 416764583 313658017 582571566 875230716 81510825 620547757 363024189 441398548 38951695 114777544 947501914 226842768 386289214 526005136 62298308 902830418 507866021 941042379 137863952 468867416 99586902 336368192 423676733 104239276 583342846 405621871 250043816 801211515 508577983 867816618 916544244 903908504 36677572 680840274 642328057 874967763 925536141 94682110 328547783 701428889 187748294 838688253 443869202 40906223 666857210 950951827 658834313 773081052 223568335 692289218 105807392 508328715 71029537 508521759 764737887 743580613 483232405 945402741 362809859 996725443 857772209 98300405 187285798 106703740 561361627 639236073 972659673 608420959 730555505 191485050 169000639 482451183 836639582 267714639 593341380 190421135 573420827 809197143 605415126 797928070 483158808 559407740 476913315 883570314 567388821 888648294 706829363 263681705 453698668 214766346 533553857 312698811 786091390 841434348 348164901 588163476 413332084 720136684 901815937 201632066 555162119 488246914 926773445 852542006 249140807 996198910 295649062 248689900 752130045 382871867 436793024 113971380 575189850 483289476 370777188 148501423 793718445 336494518 458674084 212905959 77444745 539823144 496499918 481003686 473953149 237436742 226164543 508326222 404461276 89870113 58458919 681097164 23037006 592311512 952937641 659494887 339544933 716487253 612536335 927627814 309137753 244802286 375310257 820222076 787916678 245118973 963585330 201418356 626288182 484753830 760434507 600247668 696224021 737247476 722030003 415885520 761851090 272896336 705125092 158202497 219511642 809944862 454410448 650303101 355618443 851309452 254270863 74004308 426936164 837280207 313938202 578041268 945536915 717988485 672452006 23792997 358456411 423428828 990089958 296037156 229787898 71498996 517208763 706427742 214419978 976355954 969944617 457684494 582729017 122077420 797709090 311043845 766806134 939817731 369529329 244406807 257941950 746473175 942569430 988906103 702702978 587052623 31873669 471077570 751986565 934085377 843082470 369694609 97962632 69649712 638343161 445727873 393804196 39146007 904258183 796152316 127435049 679771511 139841134 924904321 844714771 443123048 235735860 759491891 774956596 681038945 992835985 44490602 398850485 446769639 456743875 103723109 994946248 452223605 842249585 274702667 266245588 302510139 778596542 522444729 900034333 63669257 379970625 413771378 874113705 883951035 524968905 897144148 759354963 486981177 272605560 186104546 817942251 141794452 141748273 702188655 18870399 223939247 30327480 708847660 392536122 89842500 809462877 583238249 308483396 581179889 816616834 976008438 664772164 631104282 18158677 784374231 444149931 325882499 227457952 835931572 622184078 372057682 162250894 467377537 567584347 830370720 419931535 439841086 394748606 209573096 794110465 221618372 685179847 320087590 917759131 840467360 36958317 115445993 901571008 187067321 725042156 861450915 798381674 268657729 728918578 367128444 365214598 36162439 860574060 934441574 102479791 578079789 613675133 763203908 644306511 309682490 750869734 36870840 296513208 219089694 384207858 508078257 361565366 719124391 715570653 161745033 78002733 580252660 426299924 630262691 5665606 329990372 926054839 375381655 288521788 554273312 779556402 929807969 177745172 171787224 662332053 578834037 48318515 96688201 311687283 809324697 550855220 485997947 334071752 939494604 689524192 70986946 917316925 989410027 131084805 122592368 373972554 853762612 152310240 927717910 199738733 132709921 378095732 785515055 611429514 43835702 217053491 69355031 973389556 621134552 873770265 201586795 592204311 396677006 644641519 586602241 842149255 605404941 358908835 336262383 862337065 52027501 22295273 485297220 253146250 576591748 764938630 744589397 331269577 817692497 801004872 433935168 792525562 367080477 905361786 552750876 374628773 880328669 155799264 495705605 370983548 466158217 38344236 992401097 712718648 191142023 532174218 922197824 942783681 481014964 434980369 360490977 895166071 789431788 932437357 869812054 632585264 654765678 907022509 863590108 693339133 225611330 199067666 759071459 563124939 529480209 409958323 779908538 419185897 96287864 131624712 829388402 466678981 689328405 869244328 294818800 274394896 225044142 538609763 576680836 795722135 661448766 293510925 689492530 539678231 796089368 954233224 527245934 247443057 898013547 623897012 423762249 246894936 375589202 862045530 984150683 815382003 752772883 799015377 1037133 894611367 821841235 145961323 470667753 236668515 443063816 441510629 178223667 463035474 548063740 338733576 822140891 762093158 759325905 396478247 5687160 565964376 442319427 666496216 650100774 696451034 283576865 613850493 836352158 895501424 470677514 598055615 740809004 858184239 195469848 404112068 291046827 224795413 721655453 758474835 910845576 502331624 640948011 362929386 404377553 818654764 748179501 941464702 131956929 411824624 857414510 948316543 423505588 702616550 383873807 125425726 919266235 104944770 760603454 387960955 472964294 44939184 329605193 404085545 873308996 482179317 800270776 910352747 553925046 856942041 886469930 569396626 700663805 15371154 370575945 489515266 368555948 672482776 661964346 786295460 328659093 847193274 272072523 336699161 828911152 906119894 538277900 51018716 526591778 339310393 476812045 194686384 952616371 597260220 832339409 186611427 436586517 847947034 922978802 423400768 235131900 856153104 240525801 681899009 342406520 229747662 837131443 875922179 535677649 49320465 525505483 25238052 613315118 609928470 348437685 81291784 467256632 147746860 331406147 739855296 891197950 73701564 471773945 734497149 676929152 832653587 924896334 405616594 843443654 288327766 394817184 114101270 703555717 882681920 130107156 273845719 54112576 765212289 842107439 552675539 95158735 627426364 599313795 336566467 827775137 597214361 860377927 313921335 894864895 223939837 417987684 343255525 99865383 114597034 9137077 266052364 930184189 244746071 867993243 82305616 109555747 927242787 673135473 233397775 546418824 631244343 957900073 350302895 109667148 931855013 379935983 898842911 84022747 280423160 346512566 453150170 134014987 263461451 315432992 777335311 514735326 543670002 6495426 311378722 158020059 909446865 566100343 173622898 353428087 675256183 472757258 534614500 65416490 901466135 30198577 706338577 117060247 74977357 42062574 615803670 498537597 885506613 357469937 402082876 973685365 217878544 290186936 318375533 151512740 17285060 926436487 298723677 204140480 781524819 301066029 724007594 729388262 328009859 574503441 644769416 408140117 863637501 219036460 525116175 23638601 533341779 667005271 124215794 971817228 851895988 86142848 359702552 900591561 365174064 750865381 116568069 686047374 295673825 448286884 113796255 37199098 679347846 697466675 328741 291109715 662849789 423034852 545470082 312296386 715192 405806064 396798781 953812705 220973474 794060725 203855314 221087417 405989306 290212805 195262025 580144563 409267348 193319662 304566257 179302441 424617356 871267061 855624993 240384386 199307289 867343766 193385362 834940838 910907302 470750509 237860582 882480445 928210035 841337466 696281944 907797245 752117340 229769071 673921718 328454828 914633084 295152051 666843014 982018760 304330055 52289840 125729707 811733024 265596729 885692118 753667241 624412015 253078194 270087934 549015200 527462238 750027803 546942759 729714035 872454738 756800431 194333138 232397927 93841097 716650769 642930067 444981172 966846176 243823532 486426383 218638689 474585462 52605825 619825986 467928921 560614316 703351739 203715372 127530464 631202184 142056119 204339188 387956470 63467081 118936208 482190403 532000680 536114749 279307698 198966446 450349777 44023482 795522912 969096968 675931192 634599454 790950995 89182571 526047277 598960640 815484404 850343039 696768336 58328786 646603167 384327380 333829582 697502308 862966889 363717462 123447531 791727680 256122932 947638773 909544016 290692695 895971499 875274883 122522197 357586615 215659005 812290094 297707241 777461304 335970106 179246413 413757616 209757631 75260757 695173701 39855029 511126418 881284242 4814590 745202303 604403643 341427863 124549272 345845312 210777240 745613878 403723117 324180620 962633709 444193634 158643848 114514497 170195578 945589665 313075853 139733603 707657530 284826334 167594588 863820919 667553804 792818411 917932755 438776182 164211929 385632817 769134110 996764134 604069314 511642750 230748881 32779085 284764431 904729753 123368309 928352682 101593872 636013687 627236138 606102550 558253027 405779318 88542006 707951559 17910628 303675914 636895043 794130822 655302397 207470968 511069899 972409777 481487712 761668901 893249448 172022950 529899558 758214597 277783283 835401810 861790715 697447407 603916921 53281241 790380062 635452810 400581113 682843080 678484089 262109181 369014031 29920557 360162999 199758829 855310712 659327449 260285664 417403535 406223598 833156745 704690229 786383397 864775590 120268024 71348000 50937874 216245795 513429708 446512682 587215582 381116834 282447459 323569757 438826300 372305471 94374314 940508688 909356697 531277608 219343219 363869401 363339477 684146932 806067443 264268403 259756272 918552881 810442217 164499590 605357095 631760287 431109060 883348290 402002015 513863836 281386330 204176327 880211735 898813107 254092531 762832412 576974497 216961450 10623208 575739593 804166027 432152119 41967008 629176662 222627135 729335046 996419448 230409982 896804858 244515371 805804125 150328913 668505228 161638867 297159145 698202057 259877248 144364190 229858400 286276177 883887744 460673839 750435483 396225448 92315937 645742387 582632428 483153513 382352187 368425257 842913183 753933565 762702062 660615045 95707653 151194571 167868575 95396594 177724666 843963327 416406566 611538218 378339941 463305682 782319020 511888911 12073742 738512727 894227571 358204619 506897552 187476777 342374145 169431941 247996760 164208211 439724371 842903032 900350192 234082837 769141369 932683089 275289511 176938234 14997849 339305739 949161227 743401914 295170876 157536516 875357941 766746437 714676344 856318747 550557146 890476794 688471656 812708163 42528475 247326055 678597607 368482803 207124828 372611127 760815277 166046302 710631353 994846687 766582971 291603956 313184005 668119287 168565741 690997267 64560566 679226885 108435632 190367971 176480377 606244659 521339060 359174690 194484139 463243011 427284525 272982311 916647199 380342916 301249485 478841767 992491336 304517123 574858701 205314133 284673209 390575722 310915739 736070924 528559095 577952572 888792249 100797327 10714590 530322694 188753589 258703069 739406059 963346903 86926410 364718500 698814124 712611394 267995774 366817526 610499060 689829601 275466128 932870253 727844337 278622385 914114098 689607647 914689076 463119794 871393481 850014310 482932338 201935712 441135589 673233959 580275279 836316285 730763136 106283005 915886366 599452941 308643805 992999146 314473785 155409794 717855674 732871472 830066520 332426917 420233676 246452510 19817373 897329084 357665047 21821162 285398733 212083165 576783937 614972751 423943793 722881602 800124686 720515886 638041094 418845067 421116782 603338589 259901971 832450625 251107935 696553391 694221525 287887646 93858349 813723864 939067832 92508845 578041027 781552588 288257262 420309924 449362098 503407077 934656983 169348571 902370736 503237423 378196105 732878025 152597534 754610322 871513605 762244027 326826286 321855129 89078191 844087507 261094293 608050907 581366215 72427681 92804284 747619880 366452365 384155137 966535178 742971432 302076331 24594988 228183366 952581211 33230754 664981414 888783894 166933120 804235849 892169727 553875192 622802587 363198886 668642526 976658201 997720982 234219355 95412427 233536489 650949294 833827656 647899291 274014359 829154914 163378820 252550755 553752201 950128110 928484565 671008428 221697887 193190418 885005026 965763209 828689765 430409666 14336510 837629809 958780273 497508452 420466885 932753269 225213409 111843096 177450663 989386988 332281775 938294643 599201983 28638067 704622459 154941767 88456391 214175529 76293338 588490297 428374228 890346325 55171026 985897270 824319812 236938036 478295103 476327613 787340101 603498743 290974125 130824367 384513476 210279012 281924772 14191218 874310101 151002492 309872607 61141440 87224748 566549639 829309223 127259109 713118006 4742444 330417258 316068843 399827028 510094428 866869642 859759024 442087647 89949289 378355556 592265710 63950418 348788078 126187778 59153919 212002620 832996989 113524488 324228017 593223642 799977474 32340734 282739994 179626856 941472456 436516678 96637242 459101430 83829833 666982585 16194955 292557922 533497008 243918286 951232589 386551553 255844872 890284790 643261845 250153303 595486880 428934340 824089783 572506538 907457689 182652355 491059087 290524479 857156901 35826811 144873228 979892533 107674299 246239883 616354826 860423968 875289834 245221900 567541363 520617080 87736531 821880567 89950632 659365876 416631555 987949229 198121565 429683076 824730843 895852885 768845143 878036589 816131392 79949483 944983517 124699258 356894457 11973875 258743423 292836309 715473616 93415139 513677281 463039192 403932076 622895439 736256189 24250344 529504785 393176509 935961528 618637796 915221104 179173765 316325606 794057422 27136089 641926092 924938315 394350783 976281234 837350761 312014093 964349876 6963133 144917017 327589903 120999792 824951573 49390808 258629324 911099242 102758686 226822331 113389189 174643047 942768496 598189814 516092172 937429366 389200522 306027215 578378550 722430970 44340561 633328901 911545585 776499580 961043766 486301526 530500941 796558674 516501660 112042542 422887213 244412792 1241764 630722799 169522513 357761262 572624466 769022383 671228752 543603192 709741859 472444791 521720098 14191541 733797705 68501942 898358118 269032942 891678103 642597459 264465545 865616457 593175964 130196974 316656374 590628817 431570436 28538841 955660239 301010480 217258343 162568157 969556863 528309656 42562428 21077250 120395793 264928831 483238347 268267837 321107487 437754567 782323288 894830856 670845335 75450462 457856287 23217637 623938701 743927182 890855429 720866625 637851525 599470164 149461595 313160739 42355877 555293481 231723234 436141061 129720578 469405082 663135072 869310294 173378594 361899469 633538423 345745177 431995535 486797749 110495414 100594350 948176245 247391735 281340665 359649164 685153735 450545354 459443549 830246377 448610574 178881667 250820475 242180516 768264231 423221993 431949131 668883974 340832800 712050 965565110 515430391 988435533 430523831 775415483 490471148 690118618 267924441 802279183 977412046 752122502 102746732 271450622 881716162 777863826 186341253 550585835 573768881 931211503 195113914 990009770 260185933 91980984 375631286 700167663 191820527 538399592 989351640 18308915 611693082 503189315 877963215 924515467 860357732 519662140 910602481 383459696 570671483 661826594 861485662 581796500 248815325 214866053 224339471 955543654 171003771 395151435 796262781 911239926 535975049 936763793 458160 591711112 7552215 514119587 77595810 895857971 391029768 281508186 878221684 857942920 815580652 841487575 599269864 155008519 66653578 574126276 128592057 757651686 440051147 148373893 342130361 695523665 630005941 958239004 130679192 239878847 865475228 391921209 937496279 599949191 346623193 887687270 594762472 901333734 643094429 67523271 453729137 177430479 729969311 322265565 600584753 270061593 853644846 685308274 432886392 37909411 564359884 604093424 723352850 218203268 501472992 658113767 55927625 809200759 789999057 66596459 320013367 287202197 5492821 687737741 684279096 183281564 444865628 105997834 582181121 308855154 35944216 32330023 642511910 483487782 141518566 15635627 781888399 771303658 984621038 682179884 691616493 262869839 930189230 18343962 526130989 625696445 356079762 585886340 368398811 849264170 547538622 857871697 976038997 746487136 35081928 502846374 69501824 292254209 305801378 576705418 489971523 25138817 643251849 524730526 798765195 876624883 83294039 446633340 370496870 695792117 303778968 956813948 951798424 97101966 338069387 389269068 368463942 260860093 691204405 813633581 509507448 874496409 84736779 776898714 537383828 939117091 430624443 590609992 445867188 838916759 896738716 464786717 161481985 542388321 922079102 967834214 982969680 173219041 312961878 754124895 533953543 77501223 2652997 700995117 691193917 930467155 109303962 661335005 215342500 88545666 301117476 313475946 421124866 719316100 293681039 676819772 735375602 286227281 35010051 574114312 827517204 954484690 888489747 322312597 788553050 848161281 911156126 747577482 72761762 409510782 394160943 875934391 51644740 717319107 584010770 136883807 977696298 111693454 516285328 109121901 681467885 491504600 861803109 506865799 653208996 132188180 950643037 573552386 137799597 737480097 830200927 495429774 692504273 333684027 422161500 580898394 922207271 597664775 317531372 319276115 318325909 757974669 780057752 184987866 45037768 633959596 289033296 508355421 346243339 517258012 486388375 452272143 822221242 345876143 57211081 563694810 556742417 725549159 945994182 734834981 608137034 650324565 543502392 113754761 952501229 891029198 75478744 808094944 760240887 322555736 913753785 374997858 833159578 331383153 343831589 314648533 836502841 261842698 504097480 683380231 744348441 66001108 813216632 625924428 733669837 634094231 627501487 789575144 412381436 517237354 242916785 515462491 180679423 378519156 340799709 851412260 357135403 412652780 426017072 852642368 391660843 71079414 885472313 480144194 397155587 338807845 844526598 869779005 490323982 696455086 174012370 537119245 748199918 489978084 535494128 145187752 55873986 616773454 295013869 590213332 907658402 109338373 519716858 219526146 80687270 396286833 351910544 688021526 417809308 366273466 472285141 518557498 2592329 114294313 428069566 540602981 784158208 896085075 138282147 607888351 564807135 101453107 805568635 140397777 11016986 921352671 182425312 114763295 636656268 630041489 783021257 970755358 38544621 200999849 72934279 519489411 551218980 847965739 890033547 591214962 718466289 319719650 498949848 612224739 122012962 547743104 690993108 616891687 610538131 209401994 649080544 928820497 558415038 371225127 411259122 303153704 912042627 627983455 915320793 674674043 239193614 334866475 397238961 961154247 433257691 889706580 807853468 911212538 131986046 983619005 578032165 917277726 419062842 532994279 395424574 645241148 157340040 543215123 812990437 668044433 577242819 790335850 623031834 444139078 424308470 285551106 141159609 881154707 909610590 734862544 582506959 493028999 969602390 925804858 71401839 516581145 226195548 621649692 945792778 996796221 100216504 683852124 415910805 590723951 491490547 646064353 591533795 946022191 166484820 159451072 777595302 631204434 533867361 414612750 962658263 925103439 208446150 794524525 142909207 37692668 869729329 854227830 987813822 676780246 280260907 971441100 755644581 629618907 684139482 67817164 721985043 17280270 965829594 668143539 454453554 347867039 297106178 797098374 720972077 184246315 263297996 929060345 540777260 402866201 860084469 714463949 145900049 289695945 189687284 333712026 600909573 777874259 444387443 606234737 814297767 542437086 623932992 623727098 85772524 186970982 704153794 639375155 633098685 444141631 448303362 819031709 105530028 408047764 648473989 905218119 195321235 699988601 295569 822608438 609101237 513944919 929704955 468197272 179883928 756525065 804182509 486073059 337084112 978592321 252113588 17775514 12848986 517889895 135124487 444811177 361846637 594601271 640477938 580452451 118724920 711849362 402667483 182690272 135638159 188749821 321265310 337332271 483233321 790592409 817227613 962243694 282710988 881529633 861835228 834084810 964719101 17713272 15622627 422848279 99989903 180852719 989441980 732596210 366176048 652332501 328618504 270979242 727295433 451096365 461074442 878334196 128499090 531914758 410808723 693457613 126574244 119580444 603838895 854324388 468645054 629803897 137940494 202509034 437467522 359327235 975078845 291162672 242035582 201527428 47998000 99520245 551687113 823984616 738175354 896529270 82362732 131349943 330756361 938216423 189606267 751264685 935183596 180879778 718018383 255757833 333950075 137490539 940388930 921091936 388533613 740745310 369470528 912248490 912333647 685224318 978874904 29799593 303931859 369672224 183439693 892393536 685646873 776641683 579633717 587088316 782829837 529076780 13582574 391903209 656627232 466210793 807640896 827670542 39865618 571268614 975145335 975568727 269334114 237717952 514808710 187358440 818971849 301025193 169071576 399563485 371992346 272884628 427532041 394480414 834801105 403527572 96749062 441372973 842309068 59023331 356763709 424406380 444518769 188036525 474245033 189978702 901689106 789776895 103353347 853851077 876153355 38583962 904710946 472941882 338960933 605057999 442315625 925939256 941443299 726283599 573916031 977590590 691530151 618890224 547405845 611123286 716439767 959139568 724420618 903398088 3606365 882184062 858961885 581214108 765438928 396694032 512286209 343073684 33453610 444881919 857582699 626959297 217129796 778221832 232711884 670232421 150723811 655836558 467477327 46837972 745890766 743990543 454148503 144153980 960352180 401135674 701034310 522533904 113614314 13044772 552986475 113610681 94525319 173606501 260323768 509238857 110351489 871248804 726127444 545313920 649933921 123229484 491750312 853023387 577627713 538858323 635802142 432656088 290952444 436908703 738679551 413316710 868882049 73071368 148780203 856107440 28112313 462804152 279556800 334772242 539379886 247591992 612454662 681014081 444669118 233049546 742958516 420448838 656605787 763202223 955332708 841622244 232867476 722372302 113363383 636897195 28795869 328364086 473636558 132363637 130445007 600606569 425478123 327755856 63033414 30456094 725562724 66249116 360608258 359434379 944656545 129547651 610492454 938700793 815567542 866681337 94152073 769523490 821508482 877954526 649335094 534883413 124378683 210227339 750450958 130089890 335509501 605970444 172400117 621243874 838769267 49420414 218979555 992633789 476832735 100893970 216028588 254983529 811609218 892472479 311308421 58993613 568062766 1003224 19597138 796783670 127806956 223599508 769218938 192978633 600150625 335474489 584126973 629193523 178479334 673692210 169771511 559507397 81610645 958044622 802119059 630962799 623322877 72436238 257538917 538461520 231560145 775299293 418402678 721869817 901899089 253807639 87400235 172746459 364030454 452083743 390454093 590059257 969131051 509888240 985252791 505822950 825489634 18754853 892617706 59821659 52495257 992874659 387279685 59875644 526249979 561212573 96590462 525210189 643859841 172962640 533498787 308129537 534610427 792941882 922483806 600283116 993035382 212233523 583714330 620073331 496072057 757400279 326464836 576691705 881893621 607379634 62412070 401104028 165935599 950069695 235473723 902757080 665455818 693345904 478433876 568101298 571822083 581003731 539328717 327712663 217596159 885441038 899705254 469225878 297813204 716959775 594664941 419254909 112546509 222455881 659684277 754019054 958632281 19451194 202980671 194716224 729327830 627281954 998993345 274376159 113173136 622065145 152430426 778031578 535990883 862248739 515916226 535706012 690897830 837429342 420608643 777979590 885460370 724187859 202182230 626612258 478414346 744427465 314922691 459741822 544377098 335397001 738218742 426662843 506976266 566695067 513106138 906467033 139652451 133597469 129024205 241052353 507756512 184090718 510721666 595102336 370341642 523896113 5972966 971296582 964226437 284579856 545819276 870264063 161449552 911572653 508364599 922925425 354202458 506060194 230581379 802869951 882421743 904065517 71954887 610766008 621762688 335887832 669675008 28050715 812686499 519019070 440022134 15754161 461919872 138286741 751552940 228594921 307943191 701720140 862002251 840655889 956273363 687948680 745503290 254960236 392736621 675265478 448674056 418365088 457411268 509507380 176478172 264529788 673118190 30731297 997947229 112249914 887270887 205368898 494064094 642434098 437463147 1520959 957412771 767647416 125447248 343226775 42173274 522974256 382797514 749661107 991930471 229309280 935315287 47329502 106748608 882014056 171096463 424885771 9396312 410324846 529934301 184920789 979900633 806781288 170359363 827673060 779669843 771089079 747474528 982822988 961679255 89239291 839700466 121480463 369846203 55998227 961319550 458853629 621070437 93970712 230315802 681180208 903187856 370248335 152175436 448026196 341460353 487164540 320038078 217535494 30863176 603800940 194713292 263780144 248896876 40140851 695010657 713957611 435496775 244665582 593958801 372926884 27171395 451026637 237914481 932217990 519863372 300388066 214223380 536320870 928922777 595155604 418582190 71595948 54152195 475863265 375190109 449037923 697870121 754721974 360731760 619385442 609964887 486310116 416742888 132346341 447089553 234542284 721281286 683532087 846575432 904818975 311257758 88079247 70568047 339233923 312322065 697062329 822351317 862339553 477039259 552742403 357221843 351083281 255425440 179586153 935928514 630065379 666021589 267373972 530861772 89542510 965692938 963352364 459413619 410024803 637717064 164058237 87175515 256035370 54550835 439238717 903434529 228562522 560520884 257500857 163582445 83949312 539433940 292562302 636476169 374115032 752986894 478522204 523191027 965440244 734835632 772946143 4910922 165103302 659946064 66482099 567847006 525493873 532741988 528678690 502003216 586641948 920286795 992802196 879283874 764780986 127200679 900069216 778008039 166692374 875441808 916164162 764941445 712489524 262004829 342647063 758048090 491817291 831654650 708446128 658070513 961819929 733858101 503060944 565018817 593857160 424495321 876985139 466258992 510162945 445026268 125644594 441634936 632832264 165701013 798584001 288272650 991263755 996274496 989281989 435517914 220822122 97362130 291811362 594065200 48721293 116539959 597857962 379484932 435569127 4650812 259635456 319264253 543203743 154761820 188081636 428372066 365639313 565285329 416355079 30288222 134599466 897244453 327650357 481069374 782280068 348329786 748298783 271159118 65763403 129835670 710348183 576488339 190886947 398615239 698036937 996281296 70199362 231223542 440981212 380664284 457618259 707579677 554348584 541666747 102522054 787909006 393155760 864840879 992390673 93307058 525479473 938660226 986362334 533307216 239402753 773421514 432942347 585897224 201380947 813006240 831284246 697206147 15703536 230926648 800660448 863062607 202034779 937999444 898122165 993672017 651007013 433926922 502510648 583430949 655645205 438972170 995061472 808047212 187698833 387365274 410756953 912585109 97570823 333753877 6936311 155137756 23841640 876258092 161983255 519140330 346211683 292294373 941936296 84547723 326597224 427614195 157466037 980395236 958457272 12452084 942195957 385043600 949460162 368561630 456399488 186859605 994516664 718724391 57044166 161301662 648421189 29090749 968101587 632088801 493318317 771582612 478735655 848843218 247575932 697805448 441450915 253810129 55660745 33577664 768884315 846544665 58347893 117111425 642116290 949806001 547162608 277367848 276842083 846141984 219554847 501419919 568054776 512329348 17602987 613982124 743605311 775331118 346583789 552754997 480735371 706707404 927387125 443334334 562684777 629858183 625594946 975363664 433326899 898314997 868248558 724825716 222346926 251441121 16478336 224179088 376142534 978092731 969875804 169427475 288223085 913215441 420054645 224647749 311256085 183341291 844691233 979347109 754640339 969636677 962447681 442017893 34524069 358961379 628531699 440699025 504351482 872656985 765426524 480996527 872450304 24411350 61138857 901945698 139299106 76556172 866261114 840625645 579787035 734355542 468082339 606139935 172238256 967588950 118642969 321916404 820787508 713035680 602425858 438268780 728123637 654358259 285857965 744802834 857137003 719662559 925655541 893743430 494883968 323070935 610464174 869081876 950558031 233485472 174803707 969915367 179764063 594859691 770330331 53484725 276896282 469914340 814197119 645211241 629049256 105941618 991066714 596737930 362490057 144222985 336514529 431687980 793590564 186720695 529359940 385746621 472522698 162419394 250851615 548168072 203252011 939133312 621271845 74185549 291405011 859061873 957544228 755776446 323419190 829835123 32664571 12404960 164997980 265927558 424167865 875176823 925256192 380709560 215763170 791499384 784330864 205153471 455001109 457656693 873862698 738736217 268864806 826631377 480924610 369298829 43955494 637877617 699248873 139657121 370317978 805242610 624479313 231730668 338604154 611319536 233313961 659515848 180949761 340966799 879501827 666886252 932394073 440636311 184902264 457682350 840172051 428102085 593154366 631519029 892852333 790291795 946857452 362328605 820964782 213061028 299271715 444824358 115961734 640788660 951157307 410434040 975714239 400535463 80753231 769218244 949870105 504308129 285931511 357996664 55659293 607535825 804095745 22873096 194486554 330284962 593171453 353468563 408916480 199418511 688295154 422418068 793523954 963585551 881740478 511804104 679414944 370004609 284788861 575565116 287844243 281043108 258237001 617404262 590317718 11331752 25238197 452162110 436990792 202490383 669804945 722958284 400630581 337375180 327431542 580030893 816014966 448057913 86124256 926981175 845946227 918512331 494333776 754901923 980791674 310202113 870040018 550483509 183082719 961523660 642458111 632707494 942709726 41134770 746878062 349322350 684905892 896808602 953289683 120793754 690179047 412191687 57495393 891032461 835937895 979640211 559598507 92349109 346975929 675695528 981245108 633136912 901654740 492960485 216911277 618876055 118152931 774558499 152190772 454386640 239466970 212520111 846162433 98522509 593892456 613768991 736844265 172808326 989375858 552948419 979688912 141098342 811551688 930559076 745432442 310434596 770787698 874699984 440890267 532811228 456152280 320406859 268275755 470851819 939884441 127582 316342978 457750818 258072609 668172910 245614627 851845694 256507323 226624454 561964777 446302011 543584890 791280759 807745336 107674004 690810413 941041797 725667194 28543798 807991229 822201683 679295023 534132325 33149752 842063097 904498341 172909721 988773938 268775975 353530984 757769632 267084639 616537333 843018956 333382150 329922044 899976144 614013124 663590586 787547177 896665138 248632537 150649552 523053861 661596921 4631121 560167251 64183531 612180854 261239870 582773757 295332437 398438736 881115173 855643252 607077326 283467216 432904701 545952250 866007215 866165660 460060548 620790988 80187526 622893543 897932975 224508446 999437700 521739527 674743438 452388174 804037528 331518127 537306408 814525343 136529771 664536223 267043669 824506289 928443993 843235364 329331932 282824311 632908285 773115406 705907548 542588627 949445941 278081719 71819277 15455031 41174849 115981885 555467072 676840675 656881055 648921986 372129980 498831292 664112242 391261880 147220242 725054185 405452224 236551870 613086994 748631848 182153378 363744182 189720658 649584110 600342336 21052498 245457687 683140274 423003208 321673285 882521464 841137828 101567849 489608168 137538521 644109330 271266248 878828851 562050741 834964451 783115387 409649924 903525895 295715813 215257677 713320268 802843622 90623034 919184840 51966516 519459911 967036819 309376991 729461393 865683657 406939273 501206959 335014911 73749911 329269670 360985277 478684689 765935048 793840050 859810803 621581947 193949788 648551431 698832129 679544064 936941974 937230568 838571783 594870747 934386048 618494276 316484746 538931501 211897254 683823650 114156211 320907340 966255710 324713724 766808148 412544612 81462692 913997208 224932094 254722701 219370697 125218542 988790633 897490516 327270692 368639181 778269326 579351154 773291173 259399287 518781499 637053807 537606151 459570930 84513854 698996539 257825633 210881136 975526320 351496956 382712030 800653176 900083925 282794576 384906860 449148124 603913038 103515779 174073231 709974777 66824249 689286422 499773501 726374784 326236793 944082467 898182068 799972308 356369714 360474101 421692301 217901025 588150686 38500531 161425488 411661435 356745646 196984008 756087500 315685865 667373505 892079964 200609979 541401592 918135899 988744133 490112899 260862985 757625583 611276346 70086670 236373235 562029077 99362838 90260905 988529903 402539759 544788101 528987950 478177498 288150343 531561047 187108533 627581496 851638698 130590389 150893286 661092865 934789632 441840840 692618539 610723990 497947978 330964929 104319007 989285867 363372557 209361795 483930243 756204830 29195378 998575869 827117646 601529096 107428548 735771382 227569359 750995286 606306675 282166071 108211351 638396965 508084300 451029487 532336049 114592647 574114343 878020003 387184439 451942744 97561276 5659695 488604391 386882769 87245041 926836032 114836592 703605455 274406479 416640940 826878481 897808446 774976438 863686317 208349604 534504365 593468108 605026281 856435451 635533157 18071182 351564712 76255700 746448175 392977930 604158202 781623753 981699711 56678729 682756751 162462823 717292776 434089401 818084221 245342172 370025899 510250329 155331806 212017294 321377884 968762356 969039362 976402105 3528242 793683053 80739202 724718052 928362649 184675821 678702778 142393343 284275523 784066095 114280203 73072289 828511245 572293780 607911066 262090315 250149661 494087864 956957457 422624253 252564392 878763346 333128696 739011808 422409 392491633 400610659 404166796 365572347 523140462 393302597 835932167 449307415 420381299 961872520 914021788 290833649 120341499 956712265 535793746 37372012 151678302 467791903 405325352 920904675 897882036 212863795 744429304 830709689 826318433 610954691 554665286 828772421 229184080 875031265 744500086 426657181 598532202 509062050 128449895 609373988 656094886 584498856 843764431 308973387 993416107 718034329 529568363 884012438 329840743 391068123 665259078 61386440 89209789 861839091 171678116 741570431 460882551 194529106 526445993 994981486 708687244 641715139 423326623 446299393 269762175 226872974 579922862 921832382 919661968 485287207 30187540 183683187 516760030 32462922 915043043 983495644 204990411 419464597 463588507 587338640 554974718 93633345 128236925 395088626 535430420 884589854 147251857 879435771 310000005 909137529 542662596 471911517 713739062 950141373 974943761 508979987 804864366 952000298 322340193 181722059 329697943 555233248 261241175 958285147 716798248 80566303 506034499 918146179 657703304 307245613 255356349 432091429 119859993 583316526 562016052 962929885 424603306 614641916 416777851 626526795 46527401 547853346 529991182 945667259 740608211 482679228 560129694 374747659 978142724 18609995 493727121 213019322 739610021 138037618 387879972 533942994 604063505 268225718 696085107 834290643 276091959 202060836 27034021 155455803 545336643 108163427 382772486 590584490 588134210 862561985 204729217 628198271 439397567 316952400 104859365 323528752 10640251 423343386 376516716 172208590 26397136 670325549 922534192 288208473 78426733 753843009 239621562 409685444 742568798 458585513 153003954 131346608 910326625 976703198 818741919 646232865 93970948 361024965 465904943 415309847 713427117 207971671 599485892 537599646 398273112 254819220 6336525 784312159 820007475 424082187 894507244 335287338 460068367 358404516 962133680 911929228 541150063 269353048 109131460 785149102 330555749 334814222 297713485 935291657 387108562 891399055 203757357 662279971 18403846 255899149 610123854 649735581 306910414 873438198 169363431 566594536 35407523 961514187 818511497 45854066 341272766 992515381 636799432 811076814 603310799 5688102 32620638 571746686 361699270 295395885 285634870 746624439 34949419 338556378 927606609 489986351 95481903 321700263 336456196 470123827 273480687 507534258 942792881 312072493 876251747 264631792 670728173 274786563 791862875 439411304 68141084 884588803 985918832 819015861 3814868 531842699 601912727 473324501 831379189 935926586 449954866 83610440 971361103 115193687 22527415 711804189 809870632 901107069 383993596 608368673 421379552 376344083 469230657 460056713 605884102 519122642 567872771 601246964 81884382 991449122 746370281 531660745 381144438 340876596 696444442 80245128 918191503 948115868 127994459 660718454 143415164 159339814 527223564 437154935 532061762 991896270 170663252 234694536 297463077 416756473 97546906 542482455 199071444 245007410 951238266 234827700 901220165 346972920 888966134 965742603 623250198 422784859 352508543 426013479 415941536 281317670 607728402 993432988 462102679 628793807 279189290 729471463 436572657 221775322 932183175 141257801 379440400 312779194 315555788 713777981 793248354 662854511 978400762 771874399 122365740 343130812 488872372 49479965 775605963 517479485 808796609 555282666 792466514 296267633 36359434 341056415 11727810 581169747 144938960 35707943 823731934 529849296 640946137 117607116 364847111 167063163 391389997 223186916 254895088 935954192 156971187 877327079 750995513 166023738 672537164 583386197 598101024 555296169 26937810 47983972 335415034 996127825 646060002 446563418 531631371 563285275 864367901 806796618 565027809 183714003 499111726 662302551 854829226 562965046 736964683 185591824 946616527 38886312 234889088 720563919 325505858 636942897 51393348 653111606 991460386 50301448 828101174 640431951 68223695 275032020 290515681 964339904 557787329 28332635 836489290 179859121 968027485 952808943 55093760 448272983 268865811 438096591 301706238 206772058 408688026 912132163 706055633 929308627 331447214 340421130 444068893 188220827 658494447 269792517 87934822 729145264 787399220 377538634 969308124 644247913 335307210 540362918 620055734 662435072 706654417 146202148 359739053 106477815 792366257 912861023 637526334 249061545 593484000 880872707 83727036 921242333 398333990 141347440 176317 38160696 767785495 625411042 23759434 509803840 423663604 670195014 679162207 527573572 442522321 649586164 183683280 529166717 925358684 626454912 421044650 378652424 182359683 12955920 250463822 678928465 699999814 939615891 369194804 465740615 217622303 40059306 272438424 722545758 169132171 678738302 718493595 771289130 134476742 186816221 525246269 542118973 665333734 289468525 128483219 353375288 164939059 572818077 483154809 449299536 680221001 850827608 576737007 103279807 840820405 526246470 98559248 384540795 992349376 605348537 149309236 754865126 853281451 634019788 935192404 185442686 15768306 918466815 454218375 716358505 142941567 46406129 740005187 287089294 498003002 708059864 608889010 372509681 544388605 863463121 832302336 585614091 16039174 306177523 957754782 250802736 87097486 615405586 997148138 330907055 357616425 306613947 468868286 314593589 813498898 438855206 237697612 884802732 246879731 287459253 345689043 49614338 595397677 755271425 718866722 278155351 179344119 814021636 940913048 219621511 645255950 962437851 98662377 64213152 807914755 889219582 183841145 961506496 542400816 65898600 487577586 795090429 929100938 842232573 357846436 250706137 789044899 750162614 4185716 556177261 205282960 434498806 245858511 162364594 225033085 915136946 717904602 592711579 922511914 501882195 337257795 848258410 252657346 882519136 200634679 548258079 35824327 958162473 584668284 541161776 636778511 797267784 439322357 208962947 927914925 395935745 852833608 404313928 424860902 315979849 844661113 159602189 759545489 683150294 845899977 142735717 887738982 942236584 670480267 662464248 200291319 716779880 413249068 453047701 636104708 67074861 554075999 675526589 739220582 346184685 242881817 327672471 251299141 383597651 267514555 186882534 439473098 912453610 436102110 222280118 661331930 588944131 841375331 400074593 188046875 355489535 854999626 687478666 200311118 409764006 836442179 841918566 27439726 680762871 899275545 994164573 421135103 810584217 399445352 953746589 295202644 168889313 607973780 683618806 221265232 44418823 292399636 813484745 474956773 739926330 132488597 886555373 172632725 529738719 437453226 141033974 460155032 483105926 994353298 438926836 867519964 237919730 689536050 880612732 150777429 546412680 829087025 763021903 639617665 37035785 198833501 447942064 996858531 236219658 12609955 128794697 92553360 957610311 246797746 129858264 131028984 892756893 590802299 196282054 376957709 963028772 6617353 80143507 953342850 135582641 955238563 531775807 287327333 940508556 26059990 723651041 531331676 115019621 5045867 362769747 352050448 762829982 346096624 263419005 336942042 140351669 56537612 373426770 471056506 599734174 98639323 387643262 933866528 671410341 311820143 710788477 854891749 29159133 560033203 959636606 911306569 357329416 755197935 467145641 541909659 493154793 46418785 387517730 232010417 855857600 647391819 573371226 957044276 572582885 976463465 131029684 472529659 757665778 966491336 218459494 324346522 824383718 648166214 264817673 152601509 603977546 162715089 130614700 77347621 814309738 280859121 755231557 316681193 941374735 827931704 319592583 975100110 663004947 146635844 515220037 482490530 401445693 634173632 24925938 518533364 3651234 71320720 383548707 691266622 361252899 33368187 888461699 755043913 476769140 836010229 35683194 902876697 910027378 35679274 413990258 803906251 991971446 78528258 241361615 644475606 805424386 639209383 412014695 109147572 316462546 277064726 599706735 643247261 31450911 863559905 495550173 203345041 351125606 778728661 997779981 795591638 160155094 905558753 927133796 81135497 552865381 165418689 670468748 466241252 791282975 998082345 618621189 440739056 852617354 121741809 753016486 961924319 566128964 104862584 405652225 792265855 896321552 466093502 10763611 345577415 288599854 476231321 709331421 757649345 97074469 512079618 915487736 803650227 567645006 495621469 365521565 125098286 947831202 605255962 803111944 638884794 459969095 780176310 17358896 439806627 800943488 938403907 27204499 667229534 548339812 737906995 936352924 627711119 849298564 446326906 250097792 386597833 128444497 866484086 855886514 743894376 362649303 87352694 705019341 548263703 809328387 336797597 290624867 826474869 579946649 451048272 844602266 68960911 309701725 748325709 480354808 436708482 384511493 949444410 115025062 588143749 160340418 921128504 635964909 504894461 203598546 134524452 552058814 734680635 93710081 700907173 810085328 57371180 155291909 303904590 686297416 154510113 863621380 999850436 692826124 815377090 512959200 17332812 550373552 16732093 456157477 31302649 925027959 718797746 439775443 749666415 487050571 55751838 927084701 609464378 35578735 248570478 844354567 480688817 499982682 812522138 559447855 38418860 791229293 278581598 451324938 156128357 833242992 976644736 303774663 583624093 1535070 756655497 189220394 576174567 927123573 802055049 275919447 608539274 841838920 336831291 549330575 939961980 700693563 957806587 296003873 192358313 447619146 258234056 877439726 358767960 662264503 602477694 26332722 169931993 303424254 512732916 592938805 509054338 986664416 21597354 797191634 769282253 611335029 280488817 601832163 990040723 607954908 437305215 243609841 886819850 965165767 411286005 718947133 804218270 537102423 995250708 684410310 413634208 634668354 534763472 431842964 515021010 693959678 135269356 712491043 548489883 40457480 556132526 50951463 872079169 238365719 285581518 212736305 972039790 376990952 483595036 829436077 841495488 190408453 997582657 604258369 418163204 964321434 428898724 323704577 322805223 50442712 632659476 610135661 211998260 625220368 403668403 90412948 227818331 252934621 732810449 502037364 636179083 763546094 117927402 802290605 41168449 206063737 298702452 136536277 658678641 320915326 811505136 3833196 858003443 746390231 460663352 725331296 266342877 599749430 667852683 986195448 437783238 955411845 263211540 560252740 806266125 856908587 576739956 301508347 244943946 401362249 10757276 532041812 588291115 719652267 171388060 792709340 299104123 570678793 88543097 508863839 647130074 966600967 575724602 406346718 627624269 699258249 749397062 861596044 155802840 345309404 117191613 92454889 45312318 746474883 327377341 412036916 654251329 931722180 590657093 522094295 671597768 62008602 251900433 399659205 530132236 704103845 427987238 558097242 384519870 870818035 344828507 180373477 604535442 563321346 370765071 124295632 571608058 395315740 893948871 843461888 808689888 567469817 376739237 226531124 89222115 227457772 121151383 833447997 884096482 684058567 823650078 508215520 899605191 59300770 575166180 755296293 170594694 345855422 152352015 530375876 701096073 37735568 399349652 330975914 277976875 859813520 519571880 690720765 187521127 621512450 424859266 285168460 679979601 83100422 858151279 616856199 345597131 422586464 194133596 669793284 584220033 828195013 600402834 122014823 259464224 770109888 653695793 889704982 191895378 572026326 367573006 448783066 654335027 530286035 222703163 959681551 277532090 863501586 195990982 876185501 860390405 512835154 105136635 807387590 549277016 295008871 945249045 577049237 266851752 845182585 825521636 922367324 606160049 252792466 205230506 958164875 775312600 183501385 219044398 108125850 932260695 765428572 829601747 679786179 251070617 333857581 439680264 93645686 284998967 663058586 33896145 245281642 203288034 485160018 397560967 128268578 920629950 703864649 726548106 645593788 736143424 711194133 311918799 365308659 369206794 309704481 573140225 262099875 398196940 110348364 901653540 418841104 575295245 758602604 46633064 936509816 193155904 303681636 82874310 813545924 188990488 573987259 239155609 250363873 852949514 53709695 954264635 912532606 700678413 939291575 299415744 104503634 831459040 272740152 802057433 635807017 895858244 86113088 902676479 746988614 601908849 697867888 327176183 733811472 774746979 845153608 268368342 303386979 317476262 826305291 765141945 865278195 783033587 951801673 981761013 427236928 445007152 940282878 300433125 954889894 775729151 674358983 268616305 237366403 385923789 823326756 947830389 191000265 264113075 448046851 449543252 617195249 986590027 337112346 674751582 270814268 254739932 806940213 783842300 273114404 878225297 966115240 900290576 406077153 184789630 811025443 607258333 784000055 799484014 535600273 474754044 741475883 652781715 244848914 234633365 426470080 546081822 850507363 507036040 191246191 635606810 499023548 336379466 538647471 109028513 871971346 394931986 2785430 687073519 747471556 267946087 793234477 532928101 117218298 476652217 127303246 547828579 599794404 567141395 238753252 24764646 301882894 592516334 130656486 460662889 216373111 863411186 499323522 755264012 728066501 645605503 170537280 606685675 565329175 296549661 157089 588707485 374660658 472627878 500474083 65776507 986519434 960495003 242701543 971327306 145624111 425365133 983826528 975262776 195421963 673298909 392782763 732879922 741156243 596070308 703068228 519909397 878279543 309513074 191459237 765991574 303537972 201981136 294833125 99490625 777340393 895682927 371609820 828913160 503779483 176695374 286744042 47067567 270037011 107673500 221277567 19604962 25514381 970256406 602652545 484966461 245451084 619058328 862210637 965273824 823274010 947895450 54855923 996288904 496637754 910496818 209103047 242033893 761479278 900627504 222913386 252531812 917312681 393947927 728328256 171019436 456996851 289686665 866388810 465709494 650607248 930443653 419952654 700115976 537758268 187088978 275566751 660632981 583121618 209261343 265843957 112329322 347269938 225798652 871544175 110512532 373930713 329886112 124657870 269163156 145491319 944035879 700874523 266549096 464506872 375195682 889335265 307681825 452780607 761242539 629059404 127109846 311609044 25329601 617167489 743755321 620640961 646265486 539887117 344118923 568684088 591469823 436537866 353698724 510557315 88435666 477507410 454062039 290373113 484701412 310269560 945331530 513670323 755818885 110667414 638459626 933731358 4186465 677630781 611945126 606419456 719162573 914446747 877368408 147511819 771713074 937227216 841358782 552250674 574127647 575685084 901052795 655105564 534618902 239709181 125709519 557360806 517092586 197610485 297380471 646785455 262765212 321321635 742420658 537244141 419610129 495559279 110078238 399526119 27306255 315401652 68642002 205308730 462375024 317247521 426810433 686725359 306717979 22431554 68762428 768443704 669788421 804879281 141168426 283582304 863922862 711561522 607082200 427862299 675731893 130007805 544956421 806445610 191580282 451407662 548266333 450948109 447963469 446783843 429504311 489901689 246989419 958364321 722038270 378423699 749876415 778964402 690420776 640543786 170979654 734174616 811569337 816948821 806412600 802982508 198556017 51813092 427026003 474560248 238497193 952813534 872546305 286004652 432719946 738936972 346138753 664959399 668416424 177355363 137506061 327769820 934206195 298487562 463473818 603844390 876303919 642278929 325023653 135705115 209676495 485134673 169029091 564193303 308330318 595659326 254783818 666461874 982224529 314769681 261409444 559480343 618346066 483349610 50851819 396862707 314458747 136096106 283764270 777323645 248901897 81260667 2061636 495921381 820626385 550060237 665002241 492885292 511884318 243503657 521026595 382456391 418945955 422738491 936881922 682176455 586962734 70618509 648459687 688764634 279080340 396549164 982103853 98649336 288100 547836265 771335024 347328585 656162595 901716465 31299509 664141798 307589125 160225230 646692191 882277142 471240515 22229658 888566926 154377373 357924628 722204208 983958515 513752726 385123609 776300098 144709569 356731935 504067763 435648195 472473929 12993219 676723522 867229805 648716719 99109380 202200717 649071868 125208010 202799233 281186148 661575288 842595615 226652104 409993073 939099045 313935139 209564171 39464785 426502239 136771957 159443358 862637339 778092642 218329778 723783844 694166332 943646789 576618413 848168635 974290029 744547342 132082511 540936205 112393649 738084817 622693125 866449286 252012360 680473859 611147292 150820048 723070370 507812755 386721519 831059458 665700796 897723453 409892267 330335107 313894750 455831989 994191964 910363765 647420281 111793045 446990065 223772291 743929514 559080568 17936513 260062043 316769684 609446656 518033729 246921689 868030801 279482355 44355254 884339462 729662198 453111220 717234573 664141925 21893013 315491986 488308450 533833135 817086020 447861737 697769566 996666199 795940714 281532412 662039172 168324782 64165339 101921744 616236871 429504305 717872872 401812530 860331028 985407164 798761776 838640513 594442288 375573008 682283971 56655244 386837226 966024085 896514404 235416964 957979630 88112055 670869913 120961417 177153507 729982472 179668917 486049855 335547717 208402790 643815430 537148986 854080828 610299634 88452155 909049999 367637158 700431105 809796268 234498443 189533115 313821117 722842262 464323112 528654552 976575321 86304531 996462951 150704138 832395349 132198746 67127371 275873003 83404549 582919225 147189674 518414186 858455285 599065158 660478351 208569195 708934676 72799355 824085186 36995181 336186034 340358983 208625422 347515661 256641889 735074077 679860036 882353 974677505 425596396 328227193 255310318 99710173 778811200 73148978 218952174 715067538 355413262 351789500 642919763 913657714 748551392 28269135 149577289 959447286 261631381 920990880 987476636 191333704 58167906 958556061 801330972 966486849 581410864 231445477 310659411 448549677 133301349 398167568 129934491 924956238 153093884 846901544 169810901 960435275 965882359 362773498 721979734 38585981 618205452 592760219 652365506 212999228 113001292 92141127 822133180 631723374 703208639 749183478 138067060 542116499 314894125 886595482 929869028 3420273 188651791 63168022 733569868 857161177 61383017 70759202 837481511 827696256 700778219 869690428 800116508 750198586 250432884 285073029 882744366 987861213 822333378 665982182 697342994 936412550 875583925 377660996 275041414 865672568 325386450 330399775 596335741 949890335 116592701 442922924 380673735 745251724 669517708 979123348 656997839 896209245 22314932 520651084 49848137 433793505 987082977 775561399 884915211 49002930 362257145 465804698 909504063 523313939 796345026 252689935 716976580 95829913 109517925 624294182 768964068 203670226 98835487 50027369 322481574 712125348 491338695 54385814 822230827 995148952 237956095 472481324 642490582 894013133 21328103 839923753 970310476 189677005 552293828 997983801 350324041 334385526 37338606 70697955 639623819 583402988 948250545 416281021 675707513 271535760 799608936 815803206 320447511 852475282 249016099 333343916 262423315 284046448 220156050 444780278 271051848 14341734 588088438 350661960 276132624 684180435 736813504 345856478 427691045 495589402 33671748 912611863 37475189 362543870 483858304 553520940 166694678 121860976 837940464 81712489 283319527 757950692 32141261 930614792 420015643 373177451 751260224 319284383 462227940 262451825 950490705 852103810 993618974 614765204 748145772 57805062 883570951 582891517 872702313 710971238 454560017 891492905 414996753 856052807 89831171 629295472 953698446 481670685 618408825 990601386 545533213 367170095 376587607 936844078 372936100 981199342 342246169 647816972 279117101 434630441 216822140 646989659 635920555 636892985 245867962 174385391 488364356 134836464 345205185 270953265 2872281 363322762 449366699 760217451 520848123 551865665 796103940 439620980 400276044 598815598 754626426 375465385 760222634 327451100 4753911 894762223 510622932 181504279 726430829 490103713 313184889 129010705 50825976 710663299 876422287 416605192 42426839 289299768 26967239 245040989 273238892 173119008 768582112 927309179 303501965 75502845 905228214 77734838 896029929 831454064 602373864 206000810 565273965 363775440 499555527 411659767 749090659 434080249 252184782 130871730 860162047 123492800 775429903 621272314 754900231 645916015 619505218 246576959 964438936 373170517 694175075 810913753 158087357 432770706 28791948 925876275 288602037 556235448 59939223 138202700 85316959 709076915 724055962 351546785 199275485 679749848 878627806 499195140 64397734 370439643 490973335 469369042 744528708 3552995 469759845 85195519 621071331 733611328 92095344 284558837 285064512 153500382 147834768 523561617 32832779 891628984 315655307 437673307 924775344 817017254 77391624 925156685 611888308 987598521 616985466 814224200 450638012 171313287 19329596 70022475 491639437 457902103 722397741 988160033 978664097 909700367 841595688 8839920 621357165 536531795 761525246 399445605 355012384 576751303 405289262 732427679 242947038 318236771 503335644 848208076 27988965 669558828 852590172 9715047 313542199 474895968 504849459 390658225 520727940 306570358 847272915 535946858 612765670 923174631 632720420 951378609 912631140 432596705 572664132 852934669 180354265 382224120 665448450 990379566 821074010 741362112 423812474 647200408 481175415 664267824 417894509 228081081 131693452 662537541 529866679 122604914 400631840 221430875 574880344 612100024 810679343 573733584 144735470 78001622 653080967 767702123 883727605 821815111 771641713 37683130 791716387 350845704 241449243 805746660 489752096 527399149 664276863 740480292 8102147 564230478 968027811 662622485 8452132 68035328 539725912 196650986 979937139 287340310 293525696 533426340 436103915 503286875 116286951 772353594 586748399 263130659 813432944 318118878 959974652 969838826 159582003 686850726 688819782 674615459 291182137 836027440 628705739 279544179 204532551 211014341 285718318 719428365 756079679 908326404 16841130 740006496 123850303 399866061 441484282 978167777 219211176 457416947 110893792 116010201 849472468 388662579 318294637 529059302 480259397 711454699 57163889 340568097 735634991 5440380 83882601 336238886 115492567 543916665 50535795 801981920 709031478 486075777 852022070 95031136 660057206 68152438 668444527 671458753 417547972 238104429 405027149 89441116 684868803 65168174 93927867 609261711 983689421 83341692 23812001 61093010 21394387 230539327 534760191 722807721 98860070 213041930 452681257 979235920 252340991 839059708 826912463 733813508 316978492 79470793 522012872 366191045 161836584 194973491 828851303 584445141 993156427 461060627 956289884 462660478 131932770 3873756 432706756 9465109 388867625 472690205 566355056 681056183 671811757 911742128 264903831 935212583 316135653 492270457 512842721 292176479 808372866 385157727 583722064 789466170 414061542 701908874 454907951 435612174 68636283 560388011 883828581 845258049 762275205 636678421 962489256 319251780 200517125 149913666 263510324 305278815 432655385 360431454 48415546 78348995 967740708 981129850 424868636 556173373 685385279 198736722 772047226 86501449 969194013 162094097 89315721 108832472 526544553 196231883 679435100 749696970 44249508 295715884 53333420 59992467 555280127 566254014 979318649 250256064 345938549 418431666 66543526 977653004 631582400 358852879 500549628 721249271 399904607 959666366 439118052 211181673 663746836 436096052 2968666 976427361 517339707 47362038 254552485 898385488 789375080 475485272 161196829 87472340 431023354 367199593 911540522 514548627 221000940 362545527 165682089 62696651 864363687 804435265 439693148 261436836 198919722 690952658 820093456 433258791 737918583 115946602 362737155 457471407 775437073 106233649 332183993 345526747 462594208 952749524 319797615 862851300 193599172 971114682 34393262 902345356 979100064 477118508 531942493 515373610 65204960 335859401 94114188 879916034 622536066 151669769 290266405 957586498 582621097 419883030 955906848 792835332 132992697 906433343 645435428 731079661 566933344 882632448 786364683 184275671 628830107 607544453 988509433 3321524 882548592 815023847 381932572 212989633 983421933 140694709 402012328 867985135 145335467 193852943 389155903 645170702 739735207 925187441 878762603 885723939 442058860 946041982 46734802 474102495 813715173 230720789 994216011 333768864 116368917 959140333 951783643 461447282 44487790 181352461 490579309 696639651 65878893 553557842 950023576 249399694 256793099 773791847 992096950 127981942 990066275 878531033 96637557 80742097 608128122 782080652 798245207 529981734 158303115 595644463 252003089 545490748 613612105 701995932 815318515 692902410 161625420 504652737 742018920 972802966 902531259 721797144 25615621 487732178 610212415 517237593 789775678 865545046 62990496 987273226 409310059 883146313 532973375 217472881 89313611 60289401 779398713 793764112 452880847 10414764 168555554 811874485 550750002 194615885 828797926 188403164 171257777 961317457 753203549 835122561 942019443 642629259 317345044 585539827 979909336 56541233 656865386 973370095 884350150 404115183 398522191 64014430 720951032 730172713 776489543 264218075 890696562 779613720 888076120 858239088 735784358 853915650 445379494 208993501 816927335 295197879 802737997 559058349 873383022 366989186 191977734 731542274 270253170 958093768 54752797 140205389 441816958 765969344 764089470 997092561 563212180 296620523 964371804 737883376 102427076 783431221 273702368 988229922 889631276 745845477 291729618 79446531 775267484 426260287 405066577 945420373 405941395 315313941 803125768 679659292 505695018 693963340 874947791 247059429 243103708 799043614 166167672 116316083 529302931 847397096 209236209 938993083 864047544 140518489 634406846 179605282 809102735 459256870 914078290 773904554 334099523 542712689 969744851 2452892 307559083 560763351 68213613 118726080 58567264 689819394 179687950 725040179 869018763 470621559 549120887 992488775 468336559 101493668 40694478 109617157 332134918 884804263 357835656 787378748 808765820 100538725 972729129 196633305 879067797 27307712 592628692 1663484 28683517 20889962 883388760 608976089 56598738 478818731 857265394 330083057 771997991 340358950 441703142 813037043 232106049 708810016 700888328 956199572 676168975 908351753 428370128 573211233 144236987 374325250 744834079 988311781 927723325 55081816 777176814 942710794 741806208 969206993 590722274 387442499 51136839 440871396 220939503 554409724 443446100 241434747 733438120 314378572 368267541 791370379 359905115 512144431 698176271 581712978 826541108 156700835 3523068 442483895 409623123 463996662 335481038 216964615 288859992 227440728 729920278 911806234 411721794 413900389 92847339 834350729 648298617 461753436 774514571 910997064 187965620 308522958 999257699 702691287 845352227 543306759 359039158 17882934 6319554 10835809 363991461 29809665 710012535 809024351 18346722 878149086 204339142 693430444 848233036 791378858 661983329 965395665 450920063 977222496 308600576 958695431 378527316 900292399 708988595 972432584 44051799 460491810 961954087 470972591 926365401 493215061 930061720 245926051 699703223 291457076 100468549 337168897 206856026 188323822 144820880 216227406 525409819 559654137 835860167 433790070 606566805 969521826 728350268 475430919 662529709 376941216 759740938 16967550 177618225 268824307 443794468 406845159 428298155 472254288 763008457 5582964 748333357 411620163 576264490 110964685 520571120 590543234 294718780 907793430 187413618 238641790 463154231 875908429 9576858 285953860 547986049 697360846 587687252 421960727 840291109 347382143 996476752 133984450 326370029 610163382 174353508 55103288 758996234 821682848 43726656 771583212 865644304 323933844 524198834 710628311 615348826 371738811 922340050 568276854 699714871 248818212 539935032 96472879 19460129 530489369 898778068 449632631 633546033 265693793 80444014 307833397 467051685 873555576 827708513 638881073 756278002 35240749 842760492 625698034 43630533 936755233 453243510 300605559 579835014 744383133 268240286 892635457 238950720 716940023 798912048 744704604 709972756 395484402 184915041 855409739 255672436 679854292 782240323 597524634 811953857 749347322 135288854 139742134 294560638 845087958 904871240 846299895 651692353 883953454 709906630 15954401 755606174 992937151 489482479 744515252 651450047 148143738 141973287 509992225 518919669 412953230 586771453 772295492 61587226 152048334 562126367 813446095 390842406 213207355 879397889 960146514 552270995 106782006 134859964 988466968 36146655 259412075 956961891 280920882 67400712 518547685 937681986 543394449 725004627 140227535 601083577 9352803 958506654 104076053 752305386 113078333 55875131 431302461 247202620 149497841 378133369 224090363 377835556 433452979 831374481 201829133 610749701 163353798 820968255 66369684 733135913 111573141 753528794 174612233 902908115 525756832 902905288 149603583 17278463 105246632 426553007 611824421 225049905 282124126 173928060 686757 192957501 119640682 391779681 159789146 303725992 632577154 102944021 702187319 60312267 910489487 68703042 984531390 939094040 534496449 34426034 554988354 462379997 806779913 419792341 925043571 381049084 818013473 89538967 818744949 869129394 271544551 485789850 104430386 518409321 907510573 985425703 717430858 70116838 94065821 471965047 332720251 298757418 960383065 825805986 602865104 771976160 661085554 710459876 216344852 847989299 282850730 235673270 808576250 747233966 170691995 58353555 435183079 819440052 302757467 319470412 913544873 285057866 198096970 525412967 642208384 208197085 721912625 206407697 12175283 591097070 190846706 427955089 635234608 579553754 183507023 38802470 318063759 393005602 399555831 857392252 795696671 212847894 585444044 158010094 940363940 59249321 512205070 81875916 880508832 573750773 304186441 155474174 346904068 366751167 316348291 163466026 70634208 893608790 955369314 272408604 23470142 187901694 869220042 949152883 713817821 88175720 935099165 62650906 64643125 263893443 195859694 28737710 537359865 639472906 737946297 735852430 134441738 929451873 185044472 727149424 595194038 526960445 704276739 528577472 839858134 568183992 372190680 81992360 528623941 888292690 788274043 12046087 879241528 904479610 5668261 844718970 580924014 232808467 502606567 280853376 45018772 309139562 632941021 225880375 778397249 8126650 910992496 836448961 349627411 265082839 398140039 47458239 919512967 408654435 557778562 64108511 678208993 442795545 450320499 505366584 139114899 576414348 278824399 859462235 232328270 269220279 599955309 20494126 217086822 44960560 126489412 219959410 25635099 420479662 451074650 396788594 558169635 462428429 668438174 89529414 100116832 146436308 954206217 507128897 618376269 571466224 956483916 940977886 606046477 519637165 113875650 858317937 216440705 421755705 939521087 199092530 401472589 244806131 185979338 102009585 733045038 472794073 135195225 28002781 644066413 223296853 309736563 529820592 566923679 263918194 350179751 579757227 321554932 684805749 110060826 913812193 994716169 632675066 262993963 525501423 328563262 307627054 683422595 677982537 709158775 18008798 392583458 453894165 890193344 742290027 224906841 660248329 452419465 376682831 469964142 68045133 667444449 552789406 218664161 959113789 381208238 52422216 762667389 239566608 330561210 40822482 157064135 523047188 813228860 828458657 15071095 48733137 322687465 825984087 35684218 59380724 333842925 260578266 192708904 684830556 463862418 500123107 500568774 551178380 482123581 396740444 147457204 387219138 69073463 91142706 851453182 532186923 471133919 757468983 482971925 25641520 202850671 406397698 322315180 249441237 320396718 471699810 473934391 750035029 94376784 895011267 654581717 747684247 849254889 112106289 166720176 26875431 109417539 345641863 262538792 744796440 644706374 274926957 340592363 295215449 840384134 306381787 54470163 641355750 876739975 724641810 458843130 468826659 888596030 893186089 701888762 688826443 158487230 877364052 785923334 875560297 842342071 443326370 38052780 422522484 241007872 160526299 140620248 919627541 465121873 566234890 512951775 550273529 951183859 647501395 82335300 408042671 576019415 659948169 291615668 421369772 934667780 651411957 102977336 90130771 254944466 194359548 42172976 640529196 625287147 410145575 802659256 887382914 713347141 763491097 646123799 647339228 921419694 576463316 488625150 298565460 358824855 24997687 321072171 559058820 922027468 529437235 556965691 575932347 626881915 784520735 80601737 161671554 870658413 102700448 953214449 933685042 950858430 260934441 873426970 453577577 364805189 721954180 568930731 880706713 332387958 523755701 288998083 566715777 639630606 662434516 681826437 815336145 887126368 693821288 929122686 373049314 189955309 832376274 790473857 874409614 716384823 226941078 815736693 649982997 65448068 188024539 427543393 623144440 577202672 271496332 207577139 160252157 846450333 581465400 243387538 904839463 876234912 467753211 962286600 685331235 633695955 462405979 905363393 967049553 104298101 930648475 590798128 788088176 354425937 150644085 284230033 506735091 738366355 434381070 41188356 81803990 913984969 161753469 510492163 31742786 912179402 543774038 398538329 189830059 857723268 183410197 773089162 966869117 561607962 104096667 136777532 425775855 637392021 201494232 914401486 879732469 243685459 169904926 388220283 413875689 428514063 3246662 658857868 837122060 303565725 425948346 216834087 284385862 934092255 353148626 885943790 669052817 468374990 803818786 912247398 115319342 908254856 491537167 831170917 415915604 828172331 391424088 563924009 188822489 383781066 898992474 130144888 576146414 970473447 721492729 925312427 812142669 513821974 317110627 526270610 590801679 530971649 301697043 316093859 407002855 151339452 834083182 74789730 298131086 670579582 470739908 385253041 984125159 591795218 460892538 712815032 88370645 508640843 46567117 416505440 17378697 606892699 574556902 216641041 81777419 27848009 315818571 63204697 596968477 846242465 612679492 73125649 830366916 27029804 396059112 601754504 216633286 67130164 197310073 595121280 119536051 590179640 188204055 766735797 765099791 663670332 301130709 886329007 231358193 608862171 680813555 583221943 816282252 727549494 65292978 833041401 505803922 27367077 765426350 989819216 522030942 908483728 486366002 704787377 203476967 259816539 548422124 976082520 567100622 964359490 139076034 307677843 373729784 470262411 773664302 370866784 721072003 456770010 63279761 871299130 677282040 615553647 418485616 921767590 256029034 909908449 426926773 393033527 628411562 119887348 586075725 26802644 728694346 969155403 765070019 709145334 443063305 350876301 696917974 694062926 196021456 808842186 949601662 941554560 332113424 59552966 839905214 688121150 304354592 250548121 781913690 137768105 517800799 504461255 49050925 433505070 574301254 400815939 41218898 169893937 897253244 82154008 433417259 171380000 169820157 431103166 843054161 410154227 62570221 872981727 339210971 308182106 344429944 544799111 610915052 940605680 333144195 597705003 294359462 241422755 909002771 172450368 505640221 574341848 637613706 668539511 550980489 923790854 638146401 732542774 549662826 388370592 360672691 587388705 837451917 454537796 361373182 319131224 532250513 876737615 46179407 464957846 855819892 303743861 609571505 67667418 407381720 812373342 14336273 58603842 335606597 246984459 375307938 809358715 902067530 466854789 721076603 565897440 539449758 116906793 956391663 60186549 155950698 818021014 426886688 388371142 33196500 478405510 935455469 371474621 603306764 668201672 171626628 499318212 981637863 659529940 756843000 930998070 760849217 55193750 290728454 83644363 84909018 638650066 843840512 324267814 277818278 576859385 714966752 758379800 968720200 233703580 867939144 809685280 194091490 824155674 331751239 648320189 934422776 752734366 189083261 163543058 191108073 306175138 371415618 927800275 756291710 900252757 314803957 281494230 369383518 290642654 915140685 52877995 411688092 446299362 973150331 735672176 757111650 798808825 532400808 793176611 420639309 337520213 351039930 62716781 993737222 821741688 476137261 831489134 718564634 27743533 520062376 42557951 29077403 68845862 117114254 733300148 693052611 269572253 822239205 117798567 341230613 670630007 957320697 671694396 373138150 742423631 188673745 615679182 58799535 608871183 676099840 938412426 863749274 850148055 464734950 68272683 455556714 591083090 238110021 486534541 310708485 346903313 537721133 912731832 299546509 650116809 934107217 597929851 297026231 351074501 453906641 322082080 368622825 147340671 47776851 872246994 927261655 557746950 642922239 6151165 594900339 592168552 855944070 171904836 60376565 606885909 613426822 798227911 275854140 908964394 456545686 866396011 263719768 572674028 839223245 346070557 232535139 139840448 775343809 101248585 909786648 874800839 701282179 132666824 152694628 722448738 443509258 470133487 986647436 779586485 159717555 747625861 890221190 646821573 921907648 980578649 503759027 211072983 612667055 623102231 975723339 695259781 391258409 746334670 603563875 735430656 956467058 712660011 433354097 61109076 862235431 621640514 520987367 555368023 653962722 775571334 162435501 783932367 428003133 543520023 274500281 299941603 88760727 837113680 113892819 655114534 537987906 839540278 816367208 512769226 457786403 662193611 257977534 614068066 621870057 375305640 357840249 976524218 874584268 451601041 175344772 132314659 935940185 671069634 8012301 867961093 352241383 309048128 259867186 685651923 288333136 480709063 637287952 946322802 663404158 931580154 559099244 548856714 985927297 909344332 471843913 28500418 41551509 244914754 421580214 293236411 745261381 179511268 329798170 765340549 794463618 32180270 29027899 614354098 595175523 922983071 496206462 824510717 200677730 640623618 299458754 66260810 709691845 167014825 71636854 829911712 450372971 256785032 661716106 584536317 283741948 710348366 27468414 925202243 692467937 51029471 901787022 658235410 836833859 509028324 163717343 219585804 46225191 167747498 894030677 427655924 234542557 32429683 956803371 115621303 224694010 402675080 389864032 583393044 427949685 639018506 553674611 338615978 242186829 463586398 344908257 436197953 826729617 769686527 807103554 566872367 792668379 115972313 90517895 336760770 531812028 897687126 488915993 433142124 464964257 589355128 102426502 644388236 565732696 922358618 375881769 152342306 592821892 519326097 619754954 545969937 551005849 484769183 350751087 698356291 356326641 937537209 236288869 324846549 447247776 658200781 430151998 668410039 430482319 338106088 110445613 353412975 747223060 610572198 946306251 310398898 991947115 661557426 43957049 65104558 16505254 136352767 945644798 260396002 123520398 707984870 706159973 219243886 783367418 114466865 915128589 349529441 515366605 816688242 222586532 279141001 869760226 788699484 658719407 261773842 328912213 922036384 431519711 255135425 918733191 121726818 237586264 906226723 504542993 720398092 121251654 825617317 552242962 501802804 822316989 379770056 199102738 535999447 532191996 836508308 909928865 17175511 286076261 194354459 420756899 164755769 25982248 790462303 608508630 258014509 44736890 26900993 461114800 389732765 486242975 509622611 215841299 730763052 169356822 507017012 703505187 299448204 656909638 705178473 929322721 199293160 666852739 980336125 499681873 814397401 954209332 186737138 728119453 86029338 892427577 704859874 589580781 912448456 794367227 95971723 618399162 233982341 548949426 836837341 592448180 206852082 994891809 812248718 8034628 872375308 733113850 983866932 188430640 226907763 934981403 315560667 316426280 895757841 630050170 648782200 190354684 159280453 197653254 441470377 318606352 726353813 717940604 495810823 293471419 720009237 763360229 782877159 659152355 380173304 934815350 705588537 776513323 275064994 40102162 920770295 57719639 606341890 54678749 686414002 206276741 387364145 237727029 349148249 562155647 958198323 963587654 595434328 385811189 367998233 10608251 563954577 849768887 377239391 899418890 901965865 732998005 834612558 349346130 465037717 849695990 7023920 246278050 108711260 723742556 236452515 684470509 78185503 382268626 16236101 939934603 762421139 195377068 137177928 753563578 807992874 824869247 848744049 797733175 862119395 380053514 367516797 837023324 988783205 610327190 640577338 35939397 79601908 967399329 932276699 656071131 626739119 391248943 496106268 962632477 195864171 466791222 701716688 179026446 745780948 313918271 785728317 161019077 195289372 720910126 758254588 500140428 353414344 49141288 833908912 972789785 58827878 169128443 508419830 375479367 979522126 238029272 107987633 310369712 57959813 611607067 335834289 781859121 561316944 178714874 441038372 670685484 125440750 576419056 122837869 613454982 819616640 479950045 61990111 57153460 558453065 528763668 49217814 511819945 646560497 813214546 915880062 493263533 644739218 235320116 723445401 575235760 739152094 667849931 807613746 921404766 564545116 401201360 433656214 136772396 516863997 574215728 346099225 536005536 843490916 238087790 381669268 749751215 313351066 797450444 670050945 312823582 989149887 257813972 456159327 309513163 769694367 944087229 745134832 171761607 602130761 23150301 404448623 278177823 561144916 114235269 942776240 55754520 962400739 44435574 892919740 897852111 899779814 746569395 153846089 337774154 896754458 351081932 998631169 855478977 410258070 105783017 308626590 177668295 960466724 840952635 766417428 131777519 303702487 658527210 300425465 619306709 173878290 870587651 37421195 294583250 906942624 390440426 816301565 265076682 215538217 446428542 273203655 54478289 101915186 908187031 784096871 264897056 57965287 156302440 170728322 107893636 171728572 945540740 846545625 53669418 586460304 447119469 166295375 189888824 179202391 386868143 646963783 215434246 410530383 130323690 979713015 65355442 77451052 42862659 629688511 415416048 87911621 690102167 150169531 966891635 41357100 819012869 226396734 469116797 580153798 148711474 850624727 524440285 452841053 451003950 792328747 669409021 21273868 998153325 98673237 994873189 591127721 224649538 639825785 40236687 144619924 624645210 144053955 107347280 569070549 142520200 58816566 192465901 128682179 215078591 495956910 522716651 995445520 989385134 525295007 426527886 657743824 694516502 761768 240489607 652726834 966810432 24088656 599252921 886892422 309551266 373570074 187224291 591799912 4932142 729535802 348562508 270841976 232040046 861936858 401472064 301478020 36488304 177413691 15683607 757024565 940140882 960518923 156836956 716924282 722177548 361664301 848925000 758420973 208256130 290658197 609617028 511112005 328406820 569715034 753359835 729728773 903810366 214264352 706902587 235871522 998751714 67448602 184061114 998952384 175619505 313796592 744923778 281733796 230152540 187758903 205312645 268940404 109528273 959445935 411720024 712720773 527099285 764453989 207675967 538550022 950220774 282120926 77452871 746131519 121522798 87628689 711606161 630422338 755625815 694005199 464736645 773338889 507631394 614713313 201745186 167146441 569472745 202342536 668670984 863293863 834542907 376837095 70623117 43843339 728059372 663294690 674603252 568849331 107264703 771763805 51591867 283833511 215426761 513118841 627871674 717743390 809732402 350505343 510253373 910093404 873586820 451846843 949419346 290453198 513133602 79695645 549180193 585281937 72139189 391658192 774951226 139499513 231757337 685172681 522817455 448098504 259708246 166940478 408199365 45631096 492230901 257404741 257894370 880836328 681760805 383120323 372795375 887446903 997027971 736711747 704175257 359216611 768765484 391143808 968310587 12011513 58152259 987414139 804444634 681442618 816435326 142779311 380588542 38599936 455177416 466456437 733803706 706036499 350090127 34941855 21729645 232242757 417720404 935190915 592302472 230478529 290117367 215985869 349799707 211214770 416415954 865372851 167293745 548505138 406485519 187692037 792882613 221881014 814986636 414102666 684740630 641685109 653881830 437386286 406294634 689038872 384303699 340828338 248186210 298736428 306521354 901888022 744930110 793451751 831627771 416127793 20077152 911134192 349880878 199888469 765657802 230131985 498413097 40500334 871316581 126716670 988540136 797239615 24515569 128607066 160685396 947170224 110316903 813265744 782225206 905955227 33382159 83372315 202900301 743244625 37604155 279540126 832441928 234188568 385119938 25584244 124403286 242818479 647246497 648538117 414486106 725444436 198541944 249848730 991872964 591534291 279844730 936780254 585876155 680368733 34721938 120260065 306892085 64533954 867736536 386757602 588156751 263249972 260861910 362293751 245284556 208474648 395672459 690032981 456047515 873005524 577225446 658040320 18096429 393253562 277915493 22369834 824599052 910465103 588087601 792386398 884345668 818970533 499636581 475815323 911061282 582809982 85867271 679326532 984271652 426402771 795496331 525120914 659661561 779148266 271078213 880394622 669846279 936713591 278707259 24353751 784799970 909841064 565324514 225079359 61654220 974231384 51661775 875032639 358698559 759129877 865430974 830295064 555439174 525651213 163055856 301895553 394500372 899230502 213842595 534063431 849214790 2911076 336583916 965722626 761838908 498987233 201682346 40683772 7548833 707217681 839035550 759434276 702246314 500416442 525235458 87842351 148703365 103512430 437089137 916356896 278356404 144641039 222000963 38829215 51181777 114184466 369213810 616482971 88670317 182126406 109784355 665513645 239114369 851703742 526305496 502622507 19839607 803633483 260640195 295238072 248585195 479328790 9003103 721212310 88079720 825987216 774781477 141307608 951726950 985139941 498384455 107326288 44533897 555634143 771288208 220757703 225733661 26053073 407029085 904097236 432646381 353854490 876983184 48190173 596278491 221375373 143541982 9686546 276180024 438042988 977776014 503980664 33930411 759457658 56370706 330968038 809927209 767797687 270824118 552295487 898623632 852729425 545541614 746326357 193774285 6619620 376550709 46594610 123481989 686234799 236395837 677005898 399791802 467049021 403384423 921217017 151565269 229512439 956399323 712785413 605299013 544851113 374130658 339420382 950706124 427209360 282768968 259424433 424149627 225761874 984477651 764837631 867343944 55599257 40852404 669101841 628437684 521009848 14572098 674830294 525148602 883869330 150291405 992028727 144063595 232384158 46149695 813289505 267149216 297881641 119587854 589489356 234453030 164191378 58097489 485210960 321099510 887627230 809851626 898586911 272459008 908173808 686336671 315869972 384487636 694741148 280551540 93477596 221314873 749930289 643135705 920529246 804861057 41876147 790438701 734492081 761968634 242756336 628557205 461475355 397035125 767912936 374274461 528057045 244937776 102295999 899565349 695699671 695427507 559601562 957243931 209435213 559677682 824520845 268316224 163610750 559422129 453482989 313341129 347307777 537960570 357667183 52333468 578879371 709961268 529521354 366403262 628106558 564910558 354510551 644591528 591989432 888429957 841187741 441279830 214650901 513602613 749924511 878937788 94548504 873620595 242097704 169910972 87968844 881521674 223238059 845893742 908169744 254550257 22883430 486156905 640183817 869603061 79038764 488640920 982690459 671843090 606132482 807060884 993330422 898795362 748172638 695394831 587555141 185802606 321335496 369835993 306400427 87029865 189826661 653132244 735152230 850210593 551144270 782218291 517046821 88121260 77441522 535885191 130087268 494804449 420390839 654539345 830748035 156146691 113627291 984246336 737067891 607798894 592363092 559097839 37271738 538053731 484109526 192723014 939841620 780097235 314437546 369911469 586229645 837768234 480809561 328083515 868686226 107387150 342206516 305492279 790436191 173899697 880992827 481885666 176207029 209434779 219541670 418917031 868153486 924700449 289324515 825756388 636005923 858614090 376357877 797595611 329824975 861067579 486353972 390164909 78004270 541789665 512236007 844468602 714292286 473472353 413076010 6683337 698451370 725921796 542074765 439787606 564978616 942754883 501712359 996803154 155735911 365161557 91539373 820500462 951859596 690332094 861150550 411776904 102921045 538943611 531798950 378318550 492005926 316225123 472885092 548305965 670113229 843247555 779977312 16345703 263345059 504352860 447057277 865531963 387520801 575287010 22814050 902634794 791719630 263246294 200362316 935393998 996463319 504013657 782225927 520250178 625542875 672353815 79443042 568585184 287167997 342724990 673031069 419021004 270999184 505542270 65097342 579495080 395364075 907627567 253921675 235170254 657392901 513785216 137901904 583152779 759636432 242162910 291000003 459466680 170975038 483191071 400585311 230552242 299262084 9107724 543434845 402074660 658492517 908988903 399607952 353442158 260065613 625720842 408476067 716563293 88854080 383820505 991409588 190048026 848599996 685693603 456790006 335569657 113019152 659527345 641493004 559024652 574750486 853725128 179441146 316502946 890229771 191577848 763689552 766223397 268094649 61330142 446238010 905292697 904080533 708182092 95101969 169887471 880589984 589473399 191019861 607198132 746724689 409112438 740420998 666547656 286850331 857978367 471945034 515630131 753816182 439213979 658498423 482750327 464186905 316742611 677988942 43789241 4819916 779727060 960550831 686164038 940923743 734532120 120365104 323878234 227965956 434602344 526837090 549691669 8956095 832415806 803818345 815515474 548420198 296248861 976210030 848888482 271623533 137555790 812778484 569732476 548883495 531544621 609194874 658937779 600674989 474030110 889921438 845301487 690103323 437598468 558010625 813803236 248406928 219834941 47117234 939925843 932145970 750233861 275390577 560015346 89615696 639459888 522373914 556763582 554039784 963723007 14720804 807119329 715700341 297623438 86520930 754194081 453248855 334274957 852615585 780852981 961664375 892656730 350380487 273670972 374538695 271394157 430933822 461551145 864758315 314560423 922424210 752338274 481536810 381939246 518835332 956767785 98276747 56421013 896102920 941918051 53579455 483075908 734192241 255416040 534692332 646347266 331058532 646478004 475488694 835624158 669471070 541682391 409370157 844633060 572342337 497429016 765577860 313875107 772619142 72825180 917917930 665222895 231406563 24177318 664079474 7706525 431331443 326574614 319529624 526454331 878840289 57222129 576042484 659133135 386565432 154210520 802003506 792507062 186005413 435790425 494672948 498634523 140713878 689480077 365750397 296528859 265835043 278780005 380591116 722315764 105102761 134474165 965386908 602246952 794942293 409390458 707905792 443731582 329689055 814093521 959200065 213666132 256323286 424800012 916388758 55073940 720635495 382001064 892421355 148499684 580867594 729163234 495712173 518433211 306745965 852231142 825196991 529780558 717396790 347087451 338808341 771507907 585796092 372916231 151178862 591023715 330237006 163697990 271207110 258540312 322941437 995941068 173534254 912541057 933932612 689079079 555353510 396284489 558204956 706723392 94648318 161593791 309504115 9805237 571794195 877647460 638140366 988758893 282499392 999377642 972040645 647822567 114072291 750979884 481927964 353241802 792137896 476082083 359781755 140113703 366853564 308621104 45096378 92585189 550420597 804574902 605818428 862918278 772946678 305762675 724598962 155479297 1756311 102314654 736205569 412207721 353996837 457739600 719298417 202555301 635346836 655479297 470063726 191456529 776082644 892460118 401226596 6273849 15620111 837285539 287884790 505104723 418015968 527120714 423940824 678131723 640638798 503840378 182920852 291071499 595553823 48495170 851572404 940887543 147479864 541184337 932740391 137115733 687350114 912721422 16193779 79349846 414953222 993452565 357546836 910654802 676046558 691606032 895019101 954038189 328701516 18915226 889030271 826442437 442121645 394798897 115617192 806625971 838723045 608573892 29069537 132448055 588560818 611619908 158563504 730263163 715756511 853581490 29266483 957804055 533907658 731582417 403806302 146221946 92496525 793123436 546441477 164005858 278159726 967661721 663023559 323737086 945204320 933370263 153615931 673587424 345318750 468557800 907827357 24975980 918697505 139018345 252314325 47246319 270148063 914297048 863675461 282674698 562906420 284375568 968736354 130036230 627912460 861747411 998800126 913996132 808894606 282163620 846238745 433398225 190726378 179950823 455019233 289186865 862315149 705706023 251841749 16519122 466395575 556030490 472823777 796562326 793033085 805712291 738652241 171919774 81870627 431443510 697943115 304671057 798840806 989767917 315961150 941259147 571196662 327011448 456739510 43048500 449453525 447673435 996895275 965679111 812479096 71525179 599174617 155036287 62587081 591461846 169916540 191963339 216584928 314210311 245851872 502685994 198831397 727985674 400802704 632110469 942950856 827509032 931848160 279223448 455645203 972834675 34027583 84956050 37283038 340641847 693583305 9172932 134856118 314361604 723055799 551664298 956147535 504122164 5441191 638684038 743301940 285784528 292756958 38045396 970172281 670820011 448144355 25557304 106060267 683880296 448133747 671269940 686827736 837230092 302677090 224217090 735391901 439023994 961955167 65876998 184378671 556523485 538212297 635666418 272257035 762666879 144700569 633565893 678479605 352787727 650253121 393081817 398656982 819722797 357520669 715434072 123755387 604358423 536308039 793146886 592913878 6092411 485903824 619050724 515643814 855012983 138107123 618888315 485456760 268998157 96361849 639841128 911051986 558361592 997343601 346497912 111927062 159764816 216755155 330067740 402489965 459940487 38311550 683547126 852317928 744326213 398978876 996107196 511030193 776122039 688771041 405114662 690002071 232275565 940915901 863770339 26038826 694242556 164564324 592575911 457273021 287919105 47273695 309205608 828917470 290659573 526586532 739158807 647278531 500456861 347535692 510827020 506229046 3549437 602366467 404792698 152647059 290040494 983126477 820063833 64362184 676184312 58216133 510762046 37531761 494378951 155748643 852406575 47768699 555871063 793598222 217988492 404579809 49653329 554067154 490561487 638750163 692855654 212764424 868777182 876320244 942059929 412831040 861882689 450691482 148675448 642636613 481409703 198883246 52313956 611925186 902869674 689267558 18242893 934848824 653968672 331894986 49905901 330523548 173589708 859178173 119394397 441355749 868846408 613841564 507354772 178812158 761925377 414896046 193260168 433521580 836921091 932055339 272750726 472108938 211646205 816993088 890267339 138345521 258926863 842351366 406381692 686895199 400517777 185753913 205175310 686858851 654442671 448349709 769209134 586700841 856269090 241302562 207869727 781170463 621430043 304691129 566984158 885046740 875609264 442869640 444062583 621892922 263476731 405146193 399292225 280708992 811521727 379008281 838065522 692289124 337151090 980387741 434859715 882414938 909040510 695188792 297424579 181585628 783463491 132738085 974846886 302793765 850808824 37614909 583209011 893969799 172890772 787321130 753811282 469107129 388184774 369892028 21736991 708183802 696665818 80551357 498115751 409846878 936867485 338297429 164576352 756937980 541914005 217241365 422842941 386744708 410566556 311277929 104173309 112226520 282347822 49035144 996954058 32310661 425662221 419958775 442863101 658283998 730481350 557526699 700882490 212654474 142220230 582997814 738031678 221919152 855156138 322629895 243401731 175722850 35135143 250102725 733137619 816173641 128164312 218507707 312238657 459846746 431950581 278771670 711301796 225780478 415782778 391316798 920103279 235868875 915891296 973027933 430970538 564360146 651279538 272112183 397469196 662555477 586279012 353443856 757167811 698415308 67996911 454748707 764841571 568103405 518962321 816385642 391002376 130700537 104273286 540950427 136874232 364017764 180605972 473802422 740824044 740905150 481619953 614894392 753766793 257642780 166887520 614208024 261903463 906811867 729337998 525425940 265107489 970581780 443703539 858995709 153668828 577845175 65956783 185915226 586706792 444385507 282155268 6118123 986108856 53349850 355937664 373383629 526612622 768720764 905498715 640367163 446997793 248589597 20173367 214771861 603846527 414907741 433444915 628455057 142526170 973787693 135387623 80953716 424842200 419241559 107410529 761356242 526575570 275921362 171253771 902580617 597368347 265058149 496391869 11289714 504998164 74864463 396973121 446822066 357872555 306213976 612316024 338754474 289073238 928961663 131456601 784568219 577814322 193012305 803352971 710789531 217850539 816809006 355772317 483776404 233133400 789878372 241960459 621966221 884462021 990971383 919967366 91853277 499774946 123224758 428632909 327843245 771300879 472638096 493593607 115873451 987675307 212816910 850156939 741804182 208092355 584534623 231806888 522628695 194954412 386584747 84814814 295113546 494394870 317251348 165317338 194562722 394076962 14825506 364710835 590183705 57973726 802208657 193550229 326342431 950037178 390053481 141239533 196381804 691259923 142582652 14408710 731929396 137783028 267495793 235207119 331517425 981982113 787174900 384655200 946806107 269125287 186737023 194076379 372144092 474462556 98742836 176121768 652748868 841701509 749358413 474858993 573812611 180876390 764751597 795010319 174478241 47957875 804855879 197415402 42193672 154035911 516360501 399719265 796016880 156955077 763250359 339741311 677352713 419546372 487359027 718131420 957913185 211803035 247510676 722014907 515927859 670369393 878519405 724795238 676531059 416366354 102551136 798992255 896691743 254767804 414102841 58491597 743088811 676390076 301027127 651422882 211485431 548966659 431302103 433412287 591958247 358688530 364886416 689003850 737140104 430698070 518556852 39125755 477088544 856657474 868995788 63521592 158591768 742511508 645976877 215925910 747198916 414003744 11007399 4306924 482765304 759052916 88965220 315278971 548420909 716910560 87727766 564278109 365987858 402507438 284170060 147567274 882105825 580096779 87589798 460266829 580088655 741538883 39838715 729801560 671407159 707813117 948658109 87157710 866223413 429720600 411479145 641284345 746535244 551726457 224670679 226633086 50701673 241608672 474469325 814895690 787149175 564332304 472991819 902917111 186792720 647081775 683492330 230184353 963089155 262092201 612808603 773095146 995305963 773604135 885684094 189740399 497978584 573941932 696579365 215479327 880784635 694583127 876968213 245858906 545257202 228964841 547185159 747061671 55537820 248101689 562426306 501501218 516106875 861683987 717813368 799528058 553352113 934022844 897582664 114477316 724955349 921565329 518989019 730433102 341807058 184275865 486662971 290834460 216056559 914258242 246163931 243254701 889894449 834870159 890864443 706877122 999409803 642714251 608219025 570336933 217369768 466394903 487351587 578116636 773023829 980289335 52407172 771635922 696445948 633570987 684573922 630272094 51280245 964541276 462935858 393243804 585123253 529844096 203438300 385139532 584738943 525931098 275583119 201114397 657423851 492411928 472925631 334269328 995696284 454716765 245809353 57518184 543971267 549730969 666519673 540739120 422976587 862895577 993780753 113119479 572443322 613608639 213670471 20848908 847817780 137606842 375593587 173561003 643898000 822370143 767327847 335307412 344147488 299180881 109937931 533461853 681092239 623902739 508447740 368854114 867954777 533665848 910657101 353043147 210135064 1137058 608478725 224098022 544222227 711533313 906050412 862998165 710303026 691243817 409670950 871652695 71551352 977720265 988549480 972687439 765330204 632784632 994111931 644668638 804350682 960330797 445356059 489154410 90861870 420633317 904902428 268147524 484858185 257697364 382727398 710868237 842545001 160897525 938755135 267454184 37963261 3669054 42601994 522319220 741944519 820859479 984907350 234766928 474117710 906153504 164103629 946187140 866909621 595251121 619174303 521347904 956450870 921255647 368411704 599008935 399659774 283638635 573819690 829906063 900597065 320454407 179449973 196688532 406883886 459798554 199654406 309197434 189330826 472811866 722777298 840097032 731914281 513420496 842798055 893263947 601545266 86829893 807436313 420120280 626178929 192686642 169886823 916631025 737739188 847560288 647621298 13173439 575933836 113459622 138391493 40864193 947718088 425971465 972615649 203106277 252118802 463700799 227990592 944013465 186890926 551347178 580823046 831164468 380654061 543580625 431970376 391416897 367016899 585407092 43209343 27733324 569805681 521497172 568700965 43575586 203385548 236197280 892078699 159073278 759634984 653711139 300937157 169879602 96633836 423711526 461240818 422213952 341586947 828514358 822594750 194227645 828588380 913272343 328090734 257817729 92479045 576543963 196042864 130083435 631725239 403356650 303452885 692986846 827530481 898526604 558637703 386797486 912055202 105199683 849377743 487530638 541067565 429611854 447714656 936060760 153142319 156864785 438360573 705760719 102813302 937280566 530295863 549692294 490585061 430798378 936791284 716672592 125854875 266352622 816686598 123388093 992830479 480371928 552770437 54403638 795562984 430415523 398887843 850305241 417010883 638907623 215828976 770407546 346598143 231768071 838571111 69469980 944630201 103749388 843334566 746173951 102863638 130160993 59840057 560835969 870863124 786624013 271191159 11709481 851955543 706790061 226021399 356228879 250677328 951793901 423160593 249915621 156881261 383749421 256739960 929749227 852386116 256565419 948635044 19824836 758910725 408545028 930601400 215555009 54867381 646654925 281870786 506569856 126290324 615371976 93689911 894966213 981742195 765684173 946289958 36409145 258873702 67739578 46594809 489893967 29453952 405327308 162350044 134012990 725079489 873355059 790963558 138503102 439948483 88054872 465958296 694605024 893657285 752105602 960313896 699072603 259212272 871493788 193853780 411875271 680774750 307229602 593714385 112905992 982175440 404316825 354002349 790453917 63194983 912985081 155748251 415071082 242402460 956373523 30667099 808363804 747318408 481027296 207893783 551347024 289233147 841570248 884839889 791702114 731895253 403287994 125290792 59086232 472209047 738766988 337885875 696120014 512456319 504583918 602655993 222472348 129109036 208027439 912295890 805571207 141552215 159549703 911958616 726271290 235798160 561470713 786865383 175836035 680427057 911568485 116477069 711910130 457142563 481076885 808865055 401585626 866121608 493721588 815165939 934801150 527987118 304986916 820376481 703159380 709163531 625186594 698703396 237824567 50462001 306867074 6015928 849862090 395328563 515823589 746572258 11454788 242667120 45772068 114354345 268785458 508439552 16505523 812245328 231480943 708679136 406227523 492837668 318884143 95147547 188921372 32435480 763634782 807220510 186219534 841019518 258387690 322090741 771540860 405656348 314288901 154413786 360220917 421009380 379081020 260674468 129961689 401577983 623818502 680445975 92519569 589638590 148044103 672959336 579409262 805584167 77031074 968595567 73075222 36029746 961591087 338407395 758799145 766019750 465002675 7285814 20657377 649478193 104592645 651226711 302202895 281176629 442630424 484116099 422166827 947506065 197598214 890933139 20556788 305094806 344947900 50934035 319113886 819304090 561996818 435495630 213015286 651558219 970328905 135472032 754678406 453515906 411437637 997293597 106783075 177502903 4805916 478623919 105822016 950238324 672230005 71005849 123249750 325316941 564770777 21209540 667186350 766925698 332173335 420848544 931039127 201441870 100139328 604814498 328640422 729393118 383755433 915838665 129393135 651457426 375629067 558610299 544960280 425829063 700751563 685397179 903205367 879497524 214563150 84255519 393960732 459455854 374570569 20715609 903585915 916190845 388208526 923018757 439446623 897406872 414541263 446904796 552686933 854470013 265869726 468735231 597584286 673276345 801067433 855620602 265258430 680712310 295914982 152418451 400980288 409417516 531768214 398125292 676628784 489245272 293107900 507285803 780824368 242833532 808707877 646696461 151463242 378178960 472705574 991985580 90254381 579619079 334531718 553510534 133598335 275575524 885575873 975737134 940093610 410227958 409901360 666472829 806810947 837268082 931041186 838942829 27205444 287512098 432518889 778990470 772252972 776270486 523819576 933802352 466944140 304207615 7029389 215054371 230692810 295300767 490820340 723620011 424972751 298309403 655282158 51117142 411967500 175434494 141254962 93821312 49164696 786129647 20454004 134662849 948750126 548483304 311989386 29216918 291633715 519727042 988275580 225352232 62508080 999257808 90107623 389322537 822671767 782432489 89840571 54589606 730364460 23927406 467281433 156147457 77895720 123024899 135736045 366500578 957618119 818057958 686597499 707740623 620508663 227949385 570776717 337060178 909992637 352527424 17096328 168577440 902263122 9932281 909945949 131865195 927120856 231137086 510523847 736582467 434727002 555735251 44887855 474902095 738661538 174224522 232367109 669064672 674583876 721955534 41998469 150740935 74152182 117534890 248878208 695215774 853891705 295782690 908459617 321349962 241146944 939588241 722033162 936163862 660713248 978016094 139157594 823813936 675113621 401983840 761483149 471990071 380231856 806929460 806265938 835961693 404953130 453067905 473716964 300707265 628001239 741592866 503697178 951417970 482497734 411065881 757648228 155981020 684602772 155311842 800525937 326125488 357586770 615879349 810630558 617906954 84016805 91331380 371216769 382008047 28822504 906699246 953249620 468595556 718951632 366996828 539502893 383171683 224375896 729243726 846351883 702632644 670500048 694771036 525314137 952235330 252371282 998896949 837978065 901664938 986504609 767893393 811625298 688885771 219475708 71805348 999533476 239100270 397965946 637918578 887771383 821871304 996135927 457876282 367358411 672013972 512103866 626381120 808471403 98582406 521024502 725875342 204353979 827138760 458258126 240981817 440419578 695621147 569387649 668548202 251560518 269621480 466261468 326530878 881415466 41493980 233447370 654026649 281675878 753506676 678355308 838401745 278127754 287019857 951189587 723833644 663106311 971417007 50077461 641788425 224615093 111929630 607278952 420335571 353200889 777681600 98928676 642684652 428312862 172164515 652295378 347858726 249110541 228324798 115960915 544864795 497852280 306138536 747111493 791576577 748878845 644208930 258583318 781837634 853375392 92415812 968376332 449169058 430733788 602691893 748873618 405512310 701241339 346302293 889049774 380972992 343073688 704929006 471916116 762067153 583135062 22159955 466260584 602931906 748432827 446619332 869500995 58296596 946915239 579149573 150563690 992055468 513640037 423008395 552558393 278965395 130529636 936781621 724975538 983908641 314641249 146794472 607912950 65360556 839439990 958130323 399236225 614095215 709630604 587208756 956505962 923013109 17392000 991987270 132002469 934642258 51543043 281622353 706599023 220186352 210580316 996854632 812616992 750910051 528654610 759142399 327802208 738671561 995085596 408699327 789293377 737160813 541319195 384831414 434913454 242568086 930589436 504300487 833443122 662533926 175117671 52304052 590263338 650363627 646638907 987745065 701262477 115989891 992383167 342372099 830977524 713111463 571233768 895130492 768336983 352581895 500443634 852384112 7185490 313189980 196297985 352415381 916198658 72027363 152336760 916794018 182748653 930211062 514016219 933948897 622760843 512476504 796912828 412907773 639047973 145371058 915650605 721834246 147143269 338936896 676212101 649895682 734137497 297354478 841298341 527118300 406742398 318712632 9870643 513134779 367657171 492340596 659375294 638043001 888336846 266522828 119911281 661862168 541239776 499099723 43632274 138512986 466823734 944365781 721293434 945151976 361815649 975856274 896407122 579339218 71741813 726540855 536991835 318688546 993787203 905037231 71093920 561845584 910549198 637269099 723824509 947150255 787721639 512601347 637490326 788344338 557768664 933978744 907627149 798566003 6845886 822014078 592280090 736649033 252106148 955803139 758984891 815765798 111258933 554268588 441126886 579651787 388024964 241665964 462241799 438058686 937043115 639058939 786812090 350082434 363701263 913596588 631264652 3035361 870899576 519113821 743985429 274630168 698383850 879054121 174222101 785879544 781945440 311588959 927672344 390295998 929756085 602406336 306706622 924221956 292571517 964194948 450144799 5339548 915625198 194123123 431625039 144673814 82960978 991244500 531402700 453412024 764863118 424980255 521384425 75014734 820478484 800175223 557208829 172667214 284803883 418615458 528562846 644224151 391602120 884574346 693179661 675002409 483596048 801314378 621133855 857355987 533928473 702222689 133733325 441838573 100659598 108569029 131248469 336133995 398866598 446252629 452107018 768333125 960339827 269690890 285440141 278233852 771997485 442867069 794121516 22754748 880027193 414559832 242154674 590269911 762001740 947585179 190386688 196121035 367245512 941239724 502874180 394920055 40722377 922475197 651418996 506498549 426442779 479673910 263977325 352386169 817130484 532600887 233609495 425383253 315398587 233966200 648028846 422832958 192070165 204457886 314213608 952557720 962316785 947287441 314795715 250568880 292508277 646893563 787007379 649572798 673053565 406893921 766347854 517636301 430176585 604018232 779151821 582195773 689479754 835114890 94267704 10129418 504931155 471493649 606199861 684865792 610179290 682444733 896541516 407990617 446619222 380945333 534019501 145770894 360145375 305164149 130248222 143539595 559068060 966879483 473926088 569778517 695933443 770878004 848177452 255200164 5193230 568319525 780517783 794915222 487281553 66626671 386864802 125954321 632240400 387514165 294673300 170609656 80436623 549682759 281999395 460860409 541636258 484180378 864873092 325345529 190405626 666681540 931748734 409107789 687838479 457653689 254869261 302685666 596077394 981331846 505544337 155480773 875846483 194521507 499543411 45031408 54014980 869740037 178293851 837081142 684845120 941743486 399370890 49379600 142904546 755893693 655292467 490026778 768779143 839197337 68682503 235749838 145940475 980973567 385945236 609990572 1832080 869605552 974082685 705201435 77020734 156819450 576282419 317914311 796868498 949667840 792747323 960788932 933339361 853753710 425163390 726476576 204868347 681343217 340888393 367849096 887392992 591341293 747103493 45111111 92610254 650248334 339657391 178995729 861714924 22185638 304213815 588767294 925162741 43545199 75150485 154136156 885900899 873354931 71103274 98785967 532103839 86285880 803510755 358688777 15002436 212334141 998101018 425797152 37845042 835149328 102642706 271795697 347332782 7642557 332472325 481004726 678303935 415184301 676071855 291040961 912863929 910810888 843744597 358708767 892264027 89274768 472471876 799827307 639664449 716631076 602282293 471489047 849570957 859432329 10595094 907601072 678544069 660185201 421956808 274354148 65934179 572224264 91952330 313628135 982572250 484125731 923982159 876223174 480735249 762569700 18714253 180510549 878615426 431316191 875580499 218792755 245554721 272322353 845280399 83131353 324737342 440153005 332083706 719342549 555215722 861939267 945168440 646044530 582510058 527718560 662506142 59674791 973022707 508094246 640358514 696883757 537973285 884709911 632842711 613677654 282745899 288226006 485310815 95260384 689112979 65138074 585345762 748727081 523539667 608096224 917184936 909034962 297420237 875993700 163833991 152488018 853346993 791313697 367410974 90136114 436533162 702082496 701222711 329200398 27532513 170806075 992298020 841694764 609850330 737941665 643830339 942713816 524365884 25026195 799240767 629072823 895907261 774555959 281305633 851540666 846607895 364806846 423182264 167265760 470919808 15551854 581475873 122446234 58834086 292571457 392889649 607371341 509387878 155093885 139804081 484633029 155370954 492110310 880823985 712479254 529835229 934543096 693023509 326745915 231081053 369580941 715997852 287958033 903494987 275231971 910903725 549883323 909384449 172655235 573607281 258013443 76700812 50308809 890630921 511694926 630914047 52683246 304246377 894409547 530628895 1306030 673093670 960207552 96050571 493758770 916100830 990367086 617893452 356113475 465960510 510430992 741231309 832543482 161143383 195095459 301573417 700072749 462640641 793485455 176696557 122720132 457075319 486967223 207293427 731431664 629932200 1043022 336801099 416320632 788443478 870868400 182624586 526801385 288302150 994949810 903191389 672837140 695274926 431699092 453937423 852004974 454952378 990913277 144471237 732041059 482037775 493073553 746041413 166921354 618457801 941882132 728746427 58895520 637098072 527228068 238838914 255961835 375721597 656137549 147593807 158577966 721646791 912372973 200370842 864878016 791299637 479664278 707979503 876852389 344152947 605810646 615177572 245481223 237605478 965477740 319252700 498071128 980305906 886427875 471820089 21528270 135954119 503992498 678548198 773271238 558612288 871818482 172991279 302456097 547001029 664242217 196495536 176706722 106510084 193324506 263861705 292491296 166332430 452796804 914383500 436392806 89029298 307392025 275563575 491929098 565712186 443147865 738597167 895690838 320695946 587501719 257132351 247267511 855305486 347555329 518795758 808591610 373902995 496464654 171129214 924170468 535627007 997923422 815888266 644682430 238118997 447512537 834871669 450223633 424630157 799925592 155555855 122256493 266474966 452926464 266570073 852536886 921389659 952782889 148273711 890078296 610237060 74234698 169545939 906083772 341367475 82320123 463151294 655384109 867684252 678280392 90647308 506128541 6300044 473502512 904584697 777920925 319895295 26768524 650247787 277386993 300212732 343156236 718711571 712987464 284167553 688720624 383894533 593582895 441622772 227319595 177245367 836144236 800496672 552848723 226906003 435317277 950739434 517624502 742628027 362885790 45514968 298261567 368629703 719829871 101752309 630586927 387590604 568074686 998562086 726605969 412182945 775599354 747606574 743910384 219049134 642395751 152492191 255349031 605583020 82682743 39527441 775627256 565881299 292882784 883272462 637129810 658932437 481439546 314286687 54529430 757021282 492608015 722353197 304500623 24266109 810579601 111574789 361687758 565976098 6620044 817693770 97078194 792644637 979665001 215085326 580092972 6689914 565912450 166325532 503447628 256235975 290338655 741675837 11234915 119975818 568096552 321832316 111687774 143274899 112698572 462304583 9342328 472002126 884641235 757340140 962005143 487356755 251572234 799334239 401409037 731144120 100358846 50771279 442985833 565056486 392442518 341984832 245671985 443056646 448661582 334300578 309254201 560266316 405744379 557233656 616098836 771606397 185659618 48296279 993587615 447522734 159594692 761961495 358372083 805226556 704539650 409756752 825499671 43406687 625176250 198903350 113617490 233996260 192283778 443862685 379631705 488519950 798216077 889963445 316352727 688562528 374314750 207892163 233277788 958150417 74810198 26761758 388435555 608522605 703859160 58130547 915644752 164703809 170118035 967042062 533055190 850819065 590848698 424849860 702144300 680304872 240632782 930284517 157354310 528439320 585573157 460545169 759268963 86581915 335084330 963054304 263961659 699142054 719603785 161453016 838645555 585919710 687682776 735887710 977357064 790630515 46701943 257301479 315786502 584442605 66867368 440090683 537169199 843653042 892063930 694267618 653955311 593407829 944047464 80682503 889632148 744501748 984758882 540717848 46764820 396750674 938283114 925742079 999263340 946661171 89512637 383197650 522300901 219850855 975956125 70257618 38323343 851443719 127050441 996689354 94215697 223729927 902380100 317469207 817980318 873756105 856742164 41607131 60043405 765735105 335416435 432715715 54603006 991169777 110310541 529346768 33190189 419737864 801970434 113081862 636455456 70062028 114888520 197894078 216912692 354492997 229876212 832457250 789068481 117626822 697456228 497231248 189154031 957533975 414941794 620591139 861858174 680125631 861900197 881020437 821415139 290003619 805484736 255257637 534466910 175655626 433037328 945784228 415213896 877692044 278489729 402730935 753488112 441533137 261452889 580727494 676405323 539984852 39218106 805761488 530222947 207254748 689050679 80073751 719913274 297202726 805273478 669087785 375677478 611849332 369767846 220768898 405112457 82604071 404463003 700649128 310298795 615267952 259406516 904330057 899535046 801488812 997562243 76737973 764695716 359366669 216364107 209433032 956679600 601601878 860322889 320486590 360211099 126394532 43764198 196661008 83871121 301929887 48196444 362463146 704481769 510588908 644717623 873854093 353122119 673933543 435166264 563839436 771546517 340439663 379843633 738714022 634515574 785795429 206870955 126701200 60273814 755541815 73250802 992533113 795729198 728999256 443666264 833636818 632013562 172568347 457891563 255321303 819968251 6917047 384838560 196943855 329315599 115659693 913554614 651869569 551907530 479589783 911012656 913319840 776624495 212908285 788881106 375671376 534344061 593524581 5284880 978939616 884973144 885274774 212895779 202013294 640638633 88884274 138786846 526915699 212718130 784516286 199825490 173291134 503788797 188454544 19503654 520538607 103037319 390619011 160846328 712839286 527084653 877837266 833491760 504203560 656725323 191766934 970971865 62745190 700849941 774606359 311958925 690037987 341695054 909088306 683006019 849057275 167717381 261968159 829681203 767716697 773720588 570369444 399853749 146129637 154452928 345031885 92675422 415865394 412718080 896175138 539156221 558227749 722617823 283847306 611483321 445002788 729101454 302128314 289595418 28103822 132395701 388492188 914468792 949210579 69820065 467587385 977437681 429034611 392808077 579175373 869300835 479094341 734378084 724840531 762072866 281818441 716947057 817027463 724763374 473612468 638083734 921384492 299967452 712415726 634673649 165368167 885857497 150936754 645244957 894620524 228334641 493337481 124757568 814666768 258028156 512356567 479149058 205443834 710311039 563009802 929646903 182260411 984892123 447547420 665198843 284997907 555594749 912609310 818102645 889204982 984881402 891136202 16260449 726102423 908241887 633691066 808304309 511367960 765682871 430269129 766237380 183042626 685296517 349856718 355570860 935996735 548684097 93151015 930585434 871794570 143321624 173639163 977146371 757820245 432173755 692150831 968413032 717162625 673719907 147225554 255531831 170171465 903274515 322176688 240763312 66955072 465556815 81192937 582015406 465312411 732829484 272639418 654599104 120207814 994414466 80577247 416985141 936044 177462569 775302143 322681232 18736383 814334300 819820049 921163039 188158114 87354049 494347141 373628650 863889017 618458835 635659212 470387027 800527500 439365576 444112214 464180620 145438867 336010728 707158580 84959254 47174705 866336530 328178150 15657429 618394370 861165917 729484867 317519590 999855666 661078459 207758617 32723376 854736700 258095999 219415582 944975654 791018132 322122853 4651155 396761672 236273862 404871757 135920481 293621376 366022967 892063104 942228023 480828525 657904280 804029227 405795581 230593215 737444625 206519261 261986504 594537189 618382432 660184997 141889002 66294097 549855422 919456502 754500661 999305864 533746874 89973329 181987879 738799137 503482806 802759040 548048122 847606635 786824943 541161726 584066838 45768999 140461823 347292911 849526734 185780935 359243678 262193994 937501381 436085747 740159407 92816355 368102523 736403249 569342804 177162421 622285622 943082666 321752492 117908947 755894678 66066366 237331975 324710863 735149590 233201469 456658790 271576534 215766259 583620225 142667558 926296653 329702027 437612034 850259509 943907698 221919001 380519191 990107418 270412710 588222128 295638537 624744485 815114993 661839436 794176424 226799976 384114739 144654142 550892380 595642875 261236931 218286724 514279423 620816669 349984020 506054472 178694084 105715788 870211945 227504478 584872488 224054121 438490394 168051774 340000616 779422244 184022528 493323794 722458724 424473229 764914617 407977859 553617097 629273435 689890284 131456613 183386098 943568748 169950099 848902573 210471257 187505364 525277891 501369337 492430833 385758550 190964135 592507781 938836683 441392557 100968725 282946830 57341420 997803148 442265457 463447745 582543676 804100732 460669764 332924416 637813694 862044728 164153529 839937752 950399249 963086803 158571296 292771853 61896554 891826126 363067692 620323245 214993032 710716236 129165347 264204349 798558443 807456918 404760598 791671996 23427692 444301950 245595568 536515444 949957097 332699629 418904626 701722807 812748202 762295990 533113450 458618431 509760979 542344773 245651649 805099364 562157728 340415645 568570331 833223646 783035063 745429761 470990922 914687356 260501682 742007778 672125742 156093889 887730825 577883726 866475068 955528174 623931854 963405894 236640179 670133565 391398240 919635949 674585255 864832967 417879545 218117564 332092674 937406836 656366108 640033985 313342371 544869178 652422326 869235236 797936994 46900778 541638312 565641015 158040501 54685483 490857307 179756583 333760091 958477773 301858316 526103312 755914568 840063391 310282459 260176107 892713630 48968479 463561572 716810731 637732433 761977278 785174341 324458282 76881669 98812565 460056755 130555864 911973320 199513419 290297060 455366037 92293415 275699241 808460736 719151511 301993746 761616960 457088648 562295749 869575578 998220282 398603938 609964816 890258435 139237327 387201024 177009221 795414636 339582260 170204734 80119051 718047766 869492557 571274997 954945786 298092501 32166072 618606714 37729970 925403043 397037648 351009933 732040476 140679806 432369147 330538679 986194395 171465956 811137027 403625736 692809107 157653880 827453546 330390577 130796919 250890451 247457726 154722411 837218350 156925238 319330206 454050958 984914860 11590828 570378037 523417335 179345941 18787265 757693678 749175624 88075778 155169765 212493888 931250624 975745614 330262156 391787156 997676454 716900335 22140639 729784004 552682015 867256463 370479954 766386464 178141337 123465827 10399758 977291379 983702205 553175353 693634455 163969609 97894703 683715884 613488852 985854279 42872621 650733678 987604800 964845293 483357076 385052034 690135897 105612998 323452123 569283971 61054196 410087300 419912600 377898198 189130147 617267243 468942722 870122143 140051908 912033351 990487062 989251230 205349268 639381670 812800537 222338608 657906346 914594770 25220783 587811009 181025461 434245002 152342944 913651516 908683009 470168505 661473117 915688483 954487829 274011154 140260770 719712236 712591745 956302525 582476479 649804081 498149400 385921452 763286855 585911928 565724808 614165802 876800489 530038229 778199600 903104727 581016769 560143691 490059982 519940154 912581918 215885514 247568756 981839316 909517187 776602942 297138179 831311379 725352003 138602020 597836845 390504117 42232947 719599604 14718531 397597108 940082861 801501799 319983555 646188225 924317738 103297923 443809605 56308625 971330569 485401532 749649531 301236363 545758385 360483565 7671638 462963865 950213870 40429248 884880595 842716318 364125516 453651208 650251197 528304476 89973932 128956830 430486281 21229936 339508961 51633041 976721484 71007916 35540161 343950420 38302617 718893172 834897614 885166866 215694876 968334309 34576174 534420428 451401155 395990389 4163892 123692912 842372602 232940103 210019873 86343318 728285015 771903665 368210518 390524635 96784391 807779104 861039601 596031764 259567725 78344025 608049853 621263271 542111402 105191231 68665615 818550240 989511292 469768330 863466561 751444 810232489 931600454 523361562 211346604 668011373 493967444 359802541 955369609 745820562 932484259 290715639 851220488 88880022 546780714 936966140 500825486 420863129 976279342 919370097 622565724 978889927 113190229 791162531 40144050 572922814 691097010 888698314 587616749 651142277 909638166 458558933 731169841 223058449 151828020 597975411 301491979 300424954 150773973 465025926 914402670 716039047 232897605 706856348 850902914 692830647 655269376 197297482 915561248 826946854 838093888 166259070 830121326 172134983 351864180 273249440 660123191 149819129 391604192 648062859 689912620 335520379 570519056 812296241 737266245 811738587 804536645 241789369 850305251 266633626 287556400 501779409 424752478 729163323 846872887 522645056 560542167 65871758 684373107 250601849 696852603 780385086 796053988 437385242 42533212 557318867 661363877 145644991 85936431 264660965 242055242 103918563 790599143 979327561 407487011 179657054 283138070 558180995 439894651 55127862 82104940 582241378 641600931 215561797 156004001 752906496 814361989 13903779 357499789 988516077 548523143 100490130 282859077 854581709 333018697 646395322 96373292 188286119 147537816 365692315 733405142 808613011 295907048 364060457 511514110 137260703 726994319 537556699 864754425 725006605 44643679 28238566 629183095 797045854 915225155 132553947 110731307 488664773 531056741 267378909 253777408 224621842 996111387 24015950 23157023 622161503 993111056 861874289 592473149 34796539 156453543 454105851 100208629 735696184 441281218 325037770 608151215 417454258 193602082 995314429 606091037 251064715 452114673 185596112 222791396 514647779 447165540 460565234 63993728 363905486 819426204 1152949 641526724 287874831 243566079 517841187 342117812 593159407 45612950 662723014 156877054 69172027 213118605 379418776 297073312 537661806 933053306 260485415 587958719 966692485 629976157 679987232 668714487 553516547 916404574 218411548 592759154 90589824 375118115 272898519 917320595 262216438 714120704 773201954 152495202 806065565 165192844 583018902 265579367 961939570 850219160 294817608 697352962 837131535 395188714 78164173 892680432 328233585 122922276 142292808 566867934 513013838 574059036 129789336 157795688 7006542 413241965 859417117 354397601 549140870 307375654 777807976 382961136 282265436 294089569 340346563 549541512 349402428 613713020 157561187 559840184 740584658 432892093 515644338 696641269 173262450 447092269 333166895 877203113 865041114 118307726 161890393 439455842 27334528 151032671 234693578 786372604 103054284 623539653 70634405 215758938 567943957 472830222 858122497 375865992 280854728 16787009 305924994 322155510 976954727 654002064 184217017 323456992 491888992 889888951 506129721 406575196 901932569 999664088 961977288 841917847 492301408 25500613 269983068 238819484 135203043 672888389 697559428 981761656 812255437 317250101 159131953 362445848 861609305 398014008 388356055 364702182 361345056 693527245 107109974 398190605 464575512 778615066 862564387 697333571 189547237 778239949 39156833 592449340 583192820 565739343 961688514 260644048 28807728 414200197 267116347 970187824 475633273 454931905 134431075 811177323 870734728 680040641 177063112 485243385 37438870 11374512 501835427 138685248 729324471 896354601 711119935 340780275 569285794 297628528 601255161 293058373 915347632 385206687 883592865 692673508 491943684 16794456 424934216 276755336 480302621 739166544 737273527 929220732 229766182 264644361 564780605 938026325 678410343 288231694 296749273 349544698 539578533 757905038 296484563 1456417 129336512 660889036 780629210 804788360 482838898 366988199 794383463 317277228 330272576 146053772 483716924 917564509 412363725 803474478 632709197 139982639 907326715 881669363 904233875 148832891 495364976 69125505 596581385 807994119 921217765 554274446 928079312 163757996 844067946 242045363 772472371 559703205 818417905 889491930 265046115 353050779 120163518 877045506 889357177 190427390 912783434 520887927 109205116 566779953 191620770 291061920 219750742 533400689 585594353 808148468 208144913 567199910 249992698 716491299 141905738 342004130 119187313 947194475 947610900 121499129 636240637 222384491 193267172 846919449 573718695 454732941 766138725 970044961 846370523 160058567 400036384 36858380 540695553 57606617 946333470 298746511 698590680 907010591 709840551 814190198 975598380 61206701 176482977 148559861 210523244 242562434 595229278 372117669 409601085 538771944 874209052 18193203 874149242 355465886 205934025 237705907 816150833 990489455 736969439 689439477 780314628 66333386 545779299 660351955 939544497 457980931 839030553 255494109 666084157 130933036 752047168 932404882 103002807 532457820 89596129 25814869 865653462 559348236 146379786 280440607 822815150 957071210 50842825 599440612 997106717 606162774 673979645 599790678 817242638 547430747 958250737 461838038 384429323 542860858 259462713 86370940 318652297 876304114 293947343 333777822 617842968 369628830 518408914 433707816 246729579 392810813 145128653 189489505 909270819 40499766 700112650 439494056 153471545 80356259 203303330 732754151 168292684 567267030 100817368 110871270 539223503 22966665 683460163 676901843 474433403 449706609 168939493 333050547 976508704 111503582 713748479 276075625 971464701 865272944 835402484 736060142 101443559 587865850 482903052 367451857 167651803 228714180 541204861 44105353 252048341 855710704 712745512 962451203 264759401 302777309 47399204 276029357 163650667 313025764 36976981 615584101 491868920 690369115 775095750 474463003 313968977 683222230 499444502 300282156 637473317 263408371 549196005 764104232 351226141 686492198 301055439 449603845 863440674 850079402 953655452 951475916 874229436 272827410 464513760 313415015 423193023 363783689 1805436 807949934 527972281 401058999 148206187 886048907 548011617 300616075 128790502 227644430 591386937 124226644 224321371 486223217 140369425 647785085 780963901 436786100 699114418 358480971 53118456 161210692 559287845 272308782 683452283 302200540 147073256 346621586 422477937 387352477 299849251 631680119 633582520 441949369 667875967 382291845 229016877 499506457 135246970 880104962 775515854 953783298 411200536 957159136 834757570 723204448 83536404 161726623 21591016 519049014 768831380 583236978 793087400 432769875 643447534 628756063 666812479 479478298 319196585 800725703 535180075 522831498 503691281 767882213 975196111 361050004 45362572 202507273 326322956 547546826 738384789 343714406 92515210 698334718 650293486 893372364 101419389 983961017 920817292 104489377 608663165 434069745 855363600 953902531 694830080 788560125 272069161 512234196 4215757 753090751 58470740 820034776 597538619 92193241 429608314 466931602 962059959 251122105 262820790 724380227 387882661 278147792 518096099 720177404 525118116 994523620 639382971 92840419 377430171 152666252 638324950 660105343 754524998 714657718 676868231 89450467 122001401 639130324 79768449 88074916 696546870 368294221 771468097 685220125 743212138 929691733 719448862 499879036 442782015 446126553 810938232 872058002 694619390 342994139 960148060 489810068 442243562 132839770 833230155 688932588 603598529 182174711 902525802 908160662 660103835 289983319 287901189 349194550 97711150 378084914 698617247 965995753 60882863 231590004 493548861 860804618 916570188 277729098 454518433 458927851 882063945 225056760 993122710 629486213 304141483 34361292 810424162 280267725 438922487 278498713 852138019 816540916 227701393 138529258 743719345 26082615 675281255 549049282 326931828 63170091 431015457 496209392 890490196 827487090 464690334 715726685 313039171 77816683 842488017 34610649 311960355 499348803 978946208 13799646 12120462 48695719 18941579 261695778 286495709 562749741 500266502 480627247 262243439 150468822 755101746 696963928 890423984 950405584 796200067 871709043 807901440 992228275 893257949 587239809 201786796 901733843 532486008 604059091 562009099 51847668 716643098 513044866 613441132 323922429 692965137 519823167 434782979 143006092 928277981 871210954 319857450 402335991 369352778 648862364 312432301 372695395 119532048 794755175 867625752 365880301 454285010 205703563 513993750 940482882 904619928 625929927 150198329 210271378 709326825 768061755 300964599 223334611 632741293 722045482 718437899 379939583 926001178 314893065 426107545 533731873 150280400 564413090 262932960 5170165 331108869 190685533 447005181 444757713 220508188 256218905 366342374 340726335 640024147 335481430 194767888 325506570 448763218 694335548 409605115 150639866 264765756 138532259 678340843 174960111 266183274 304670989 462897566 617557200 916286003 938167270 933226458 252437959 198420426 807969995 762171924 341173633 428224633 32227657 326897352 736449444 250514825 335941264 655159301 957623537 127152175 133029466 573656493 778380234 727076310 556232363 24102625 338701939 526073130 213559701 739076068 477959774 338371922 448631108 628483265 739424760 772256274 439899979 892593897 271705114 457485980 550796126 610224872 975768314 275576774 322368298 564762785 603649467 89317089 910337847 742348366 99636306 431584054 675351433 589541221 416378154 214594390 90870837 259888357 75203567 88035601 922470397 82231545 285423938 3182583 7193382 991035989 951894502 564474639 484749730 101918903 465144133 590401636 2895331 620371946 320899835 662410376 911643237 352628681 299836581 171067507 399529734 16675571 683629902 635460647 526633220 774697568 825202049 504410785 706162829 661728770 102519136 416823665 596961108 950108135 397830072 644078292 196055210 270744514 985213292 878381092 554387774 286642363 195242459 489131114 119342098 714797270 685842399 587775036 294451144 945914605 215801860 885033987 660460394 34026677 127294276 758763857 959542480 752691384 879859819 223398049 623685987 603779564 617837425 74027957 725207334 292488108 4633644 195101960 117274678 901311644 131895916 395659990 608775672 780072700 581360204 92681434 747198000 915011613 967458925 277424497 133291301 730717528 205078739 381116095 639040046 379988529 184853008 555146287 273467740 368445636 558368574 126031862 744195382 540015379 886192094 290779018 825902155 231965024 950689076 776388054 494130928 343121525 792856669 34800706 606707694 28858618 68209965 196869214 11617438 181355827 135441535 169780629 705051911 925339487 930750212 448163383 562665231 991416848 297635514 363845102 360143494 92675105 186826997 604729619 132392623 282735871 210383709 689279517 388663733 497189421 217148763 928820530 11345098 659896737 718227376 682640347 360480153 974534164 533290025 667859497 970425036 740096362 347785195 711591581 393749504 820160541 421078342 50370972 722901751 948765216 75990513 564369497 857631768 695612477 818410029 732784799 317484969 296472509 590858630 964618339 642221077 362950378 661492594 562618384 938789044 390471688 743866324 67675141 232983237 559430198 654629270 497035664 187187764 94918000 65634600 461134074 823623230 268342348 235225045 846059626 883864214 783369879 433554283 743859872 765223099 706961268 214728515 446874009 548561820 426086611 844386693 169570457 360492686 598294064 603381446 288320607 142621401 98265450 253619643 978088368 548570166 821393509 896257100 834697640 113701527 165352163 59423239 922509997 172232590 5507391 779141518 76723503 355866262 116553470 288911753 705695720 694147156 309602467 327898243 57196454 734430695 815743487 241398092 622132710 411622330 453602717 299383004 4549283 235302250 73646819 448157471 243785539 505785092 413737606 255737146 805613849 305972055 572059943 20857179 788366653 373214938 586053788 433219026 385955002 433575422 365616864 968443640 763362886 96616494 93730419 522841341 37292134 525792139 42674088 334097221 730776232 615588484 159669782 562989803 927262728 740779169 988306713 646630143 425801948 610176844 705883665 544183953 755367905 661183618 817982694 804286487 431854497 117804399 333835282 148457492 180710412 329658492 956812057 370257728 655704187 26726114 648942270 289335754 117290757 595790871 829353159 769906902 482214072 727059472 929401494 365813613 439229051 494303390 512863730 502371254 459663078 854434422 78870057 129148041 732871495 963803417 567229505 101593466 150511308 508439220 415854781 535710244 691020186 321872167 235003009 863220452 888214962 699122612 623212794 540396209 33451281 691533767 452271191 454398197 993722785 324688979 370367856 705663038 446225855 363221487 305794781 854608720 179757367 313067526 583131934 725500916 857867687 131270050 874226130 275272882 186466087 974063574 98103300 705200199 673412688 105496956 711376093 896252072 614325352 53029550 137366127 867890890 32628374 10609803 446774844 203737451 333889520 227899035 599093930 973699318 992304126 805550591 21562564 903385760 731474768 396169178 260208415 244012789 173017979 178727966 544627258 892753582 86982777 482493893 708406537 271142433 289791917 221786239 44996632 446786961 341470628 306382168 668463432 106535121 559211273 574501812 809213878 551846688 611486504 305754116 695815621 368813207 838762993 364048820 93015232 883680456 219110890 235203934 302211222 483153192 5185069 763769212 31652665 233602461 529729937 351558259 191672403 101548956 902506672 277621768 258456256 749234737 810956029 4423170 433792260 264354854 412375767 657315708 640723812 569724871 496441485 415566265 642618179 142530227 908357268 581994852 378798768 760762916 34023278 322251163 52920538 895328360 744003650 701475505 473843005 76187158 319478508 847920065 39129021 976102055 172462024 988562353 319544928 397263210 872177011 77375244 606564512 998760872 533633349 679224729 264451983 979929481 879490383 369945740 349208615 332708017 570072756 427496123 62035144 444479558 510745379 316599868 950821468 157514164 894681753 288644388 132951455 247129447 598739879 306535857 408339428 786557395 958491557 129477226 705435534 474207382 146781600 918356998 496872327 655924665 253760273 315771661 993870185 475452790 832663906 917125230 848205617 796347436 874032672 87846444 596670296 383594653 394293879 585531528 337971277 503408939 577237216 715390837 637454203 130411056 307439835 170253996 433671002 397971008 441655647 847732773 772313088 670013920 974440482 774103232 157509060 838218768 681111355 702727573 409127507 505506538 350594211 327526325 750502130 229148019 237189229 38696016 906233279 12656344 859058474 300997425 81577738 120217208 308530498 132178483 262006687 219750092 957744846 957857449 13503438 955285825 373105088 597069391 590965362 939469413 890989988 130479355 83894386 139145806 237909649 627532046 5762027 396721448 593856923 106318920 834313688 620850589 867371879 40990191 450510155 448797114 689773947 978357812 869695476 307779926 702959939 232298429 841723473 371868451 332426174 749922482 707189728 643555783 861851811 828372833 218099778 326212747 885519656 23918880 117854705 135795997 684724882 258047285 471687363 865289342 98746007 253828516 776789239 102912802 970506407 193115386 860138250 901757197 446046198 796745202 656111834 483406913 689137116 445007416 538199009 58382734 911742438 200368611 658610533 872983934 820249999 134520269 302714131 136078084 366351844 729243304 778900619 750327944 773492900 80023984 920420577 638668735 319921923 911013186 171814035 849163455 880354889 871749165 486529718 676851788 452115511 298648064 907723323 673484382 91046067 231851405 436899509 423525597 996296758 286616690 104873848 739480165 379488837 648171011 706000339 194187481 211692767 220894599 320526283 535918447 907302203 188903750 41676058 973147660 457124 382102979 188173804 976775822 142205891 856195836 690433635 864382204 344638475 545092660 261940548 635615551 663734903 931075663 935908422 760425620 136021147 696737097 736664801 673797222 487608996 432102054 200771017 509369442 861621142 775855770 193105545 803068525 692701482 114111805 385770947 238302968 447754570 520641805 911292590 776993665 548949534 996366127 949951565 856031899 18312361 468895913 287208862 752089741 746311076 373293034 542428933 195494876 83796687 386578147 853061537 117343110 683093751 415729225 507732762 642795909 880407572 20883671 632751706 170871053 828056668 737361626 11083897 712425636 803805322 741192864 295999409 881662055 251535499 430410462 260710717 427386089 736996476 552397005 2152756 156763300 545452913 631865341 367906657 375626044 458455938 191275534 295508014 395854929 223763948 996308364 980307487 174420582 677466891 338150182 54451514 735519501 973104307 999640966 363341105 82718723 531306926 246266837 865768344 643766653 447852903 132090264 630428642 916351944 264251736 669798496 105345263 420752167 411842428 650046729 426833803 967823007 681747754 562670292 337063622 764685562 145205452 547213936 281534829 519839350 979113222 946163168 255853612 79275141 739841716 205194932 853381670 791488271 960856847 586139951 776493235 171424976 837886249 551631308 265865675 130981372 100558825 799544974 476642126 845561760 333387992 460532361 31976509 731736919 500510775 455002893 576400815 886323692 976659692 461082889 641890552 578983898 111512278 838911043 324957234 507924297 371877197 964027729 552820729 368276273 894511830 4950646 356784274 736058763 72540972 288348606 780881290 74785962 232173700 554736227 643761263 75327729 652133124 770257169 643023421 252871279 869935409 754748622 231386393 97122370 774342749 215907523 501171363 836713130 565867053 111324789 564220729 209464711 515209775 134461740 397333645 117360143 291918307 828008749 433958444 298404964 559730244 701346070 530495900 219845255 86526411 400029450 100803213 813107798 317358614 473115080 687116286 200015575 436743054 754731809 364596198 162989841 285296851 701964502 226858014 903914246 628032724 297306406 776411610 803302874 799548117 399389354 910032845 604701595 580812069 707588793 235054905 806792613 850083061 825405827 42649856 128546549 307668308 862460645 34702913 937576814 898827893 106869799 984865399 639786933 610555502 290291353 446382864 746762585 964566920 816650014 556143156 894343230 899458491 836796338 102636181 897031379 281521423 799119052 579532078 292331657 346992591 259573046 187161585 372632991 438562455 504027173 286354401 136080848 325129955 559165481 337058514 644092120 270229258 515198670 550819285 527173138 716187739 1158666 891422611 574971462 648853946 491975981 506900025 634537611 689136282 934148562 107033144 319811362 113853133 607562043 450458913 852434709 800221801 610603540 184808156 27683687 4344288 748910254 775069501 467442164 68615556 207823204 983935901 877699995 298955120 883205402 883061810 229048606 437023614 160814066 908493611 841568570 740311719 253511180 526343506 719797162 286700419 884281163 201512071 201367831 496447870 824574767 603977388 697902227 626950840 786414698 191123804 117796748 971490192 214388830 158544672 986350544 160293383 645236283 432067673 520186737 368512988 175198764 738138942 667760247 890330160 783517414 75129619 666834245 148582641 38369785 940361254 632806201 30521171 374541483 133310918 515002509 448803703 692542142 158232595 307722165 886372390 768522758 983744853 963203172 532313848 101674042 810438974 540405846 942671317 323765869 614784772 881137853 221651031 45359477 146601343 648425167 920680586 380326361 203766956 503168905 73013267 869177466 365484067 137662638 998629592 698328257 253862039 142240512 46001476 236292884 539840232 732332759 399949029 10229109 318304687 763108329 466748162 922553685 973528047 800706897 55621626 711547333 519735229 683696503 771351936 923570139 498334600 852505417 713268501 837296179 392508412 814444838 377569053 719799092 443214884 78400942 950700549 819608016 768973052 408697806 670912102 68349709 389685156 900661508 950090308 458795022 348681010 603670138 189678592 609313447 352144450 606541389 843304118 804065726 447819567 634940698 638012015 59060554 528761667 249189346 406186098 120003784 114457548 327098302 884215893 421660460 35898509 48615888 997532980 947904109 436674539 83570538 357222267 401197328 788351608 398243722 787311681 214447706 40663858 888832221 733490351 645352359 787286174 771550675 742517790 144784446 987059638 585875190 878177245 48727930 792205286 143634756 192611076 225151241 48136838 248087099 106365212 407140434 110883324 527423175 786626370 997369237 166001848 278445658 494188087 124723158 856109174 649316352 440588580 580554076 713588485 45745016 335247161 347075102 374968975 335418669 196114402 582051823 263927841 577921922 17151773 356868497 403477055 893800678 471339532 129749788 161506782 202701109 301792943 964536127 912969404 943591219 324409430 384236655 968229283 930934513 430655230 884863349 209949566 768111703 613528338 680234608 902595162 859412763 89885653 642548960 360450766 616984799 892523400 197199745 712146982 228453160 312679818 600050157 301770080 889797548 34762870 708341878 653762969 645929823 837847655 891561229 33362365 798295255 968741751 795193687 178460249 520818848 857100061 198230174 155106038 592427938 518947989 341477351 798926894 487604310 492250688 562659160 671139436 58428226 296403065 601293376 566227868 190965354 239570306 925859777 819977605 418642867 244331900 200033736 945981030 890399504 396324213 995276988 68439908 73374193 716823693 235619627 166942021 610782916 944294968 792544203 981223275 255451062 495076671 396195758 542439772 943386871 357664462 565442984 431000407 353801653 6970721 219983591 541440917 872302319 52501396 517313461 584992878 672247528 941145350 378676813 687195338 208995249 465477847 216297340 595722090 195897321 747144587 390403103 985399289 215227454 292547536 800906051 575557900 872427555 261757584 602987265 207675886 201250361 712681432 84549766 230247971 449469112 958670842 784603614 692534062 272515183 233516282 625267533 563069337 834882444 36298801 906087031 912778124 354808748 622006996 581894423 955060430 496221294 938541815 148352226 953318542 534101310 800192854 411077440 983986265 964945369 136887741 291581169 327025184 990717966 569609368 739544393 134088514 90525805 964026679 632511201 828602741 961527333 601379607 179680455 737405703 157459907 423351779 811026675 716536189 802419069 144246003 190534728 704097635 795597685 925788988 768930255 380742943 932768525 84009243 832716416 456894006 832544737 943163411 89626124 351789312 400880778 425728988 969387714 965576153 96307622 276802338 19761665 590354225 901322209 740903124 567809759 979920690 563711419 1517722 698201748 713494324 309364165 387046976 767897609 376665807 876311298 551063198 225197285 550152083 165069554 558950845 723354037 429802750 779401084 396202827 759386716 678336528 898808150 698376021 780272275 803021133 124247662 222701665 672738867 172393571 348035661 957879782 430037926 156142819 864271003 218593798 722863712 425052564 918655278 579725783 97865075 102348657 47443609 377666739 747307312 129140885 559643032 652268089 647615423 46509820 644142082 453455575 717154162 440422300 729628474 756067214 963429081 140300481 813365997 402191107 860338662 653185804 29528775 162495618 499813609 437432870 396745773 163052767 934735665 176200990 301913029 432965041 616185182 137942041 127368785 184689452 205056631 659181446 75423982 17645157 588295738 786653144 464247746 358713755 450163847 680272888 373448069 274802987 64137400 278482449 575513954 640564244 396266435 388384940 609895962 426463119 673814737 289152465 778804878 556806857 252201076 33869419 936829349 20209264 270136982 281171228 185205571 694310516 896185261 34564937 638632111 908035943 673221312 706200811 764838293 729828024 239135271 132588949 332624940 900846886 597858618 190845523 688772966 2518924 368083258 283891573 91817256 224719613 379078953 848239261 346317222 997321995 975354020 664843737 596414 303923140 928494049 537021027 553798527 228670329 947349280 567829748 272978897 324583127 670095100 731044652 309062580 333858026 833085230 313642491 747379888 342850572 22431646 396206884 762420312 801289164 893012279 869212488 212982498 399539214 68607015 165117863 289554264 198481379 608196997 372616781 744897615 814155758 95976977 639226941 324754121 842932920 68908519 207051277 156412317 530550182 932670042 673725478 194881330 322120995 323564646 209817115 800296123 814470404 97996458 677070734 732688770 630095796 3568100 538404573 394275999 852775121 62096633 129686941 752086401 58456718 378984760 190691636 976358257 668658213 66430757 912379898 797990802 842787039 703424612 268275636 781028863 654269524 719124249 868481848 274623178 386585509 143927494 380697103 796491675 816254163 663379935 259356940 834043195 909966001 145358090 423498421 234120639 300034599 493642753 409465175 112978852 534171918 87081670 314055949 655893068 834961213 606523924 962712085 256229161 801662651 45379564 373037970 937789482 282528806 71494646 751342863 73397393 889451723 401128921 164729863 234085447 63697954 852086241 666739883 126342703 893539474 861639343 669581245 643965039 737841027 226900551 801703052 10103842 632089078 779555886 460651265 167430559 832097722 868505771 958102373 696275191 399824957 184627365 552271660 946146347 274452246 522857491 583862307 32663811 480088469 239585694 987997734 357606654 706614160 840515951 602261132 815693915 518642624 446568965 623009966 319947153 977516780 445272973 713670555 426500834 678633563 600444726 347354469 830384521 612923980 621347394 139937179 758311264 371813950 977955221 94668328 477456747 781267719 898618447 607375620 338127314 609369394 473913274 469752642 46490928 241152407 215834873 811586267 887547493 541933101 307743859 454049341 839469072 79068551 693981848 656355046 646872339 90839836 493623049 105452744 475985916 990127631 775025657 498997353 463677569 917235575 973304029 919642596 334561902 969662911 788847427 343227837 716359975 738407966 939581492 153859453 874695282 506079877 62299868 88713949 298464797 140151168 322221593 950107423 176138108 252223368 380800072 312772559 794502802 860168075 358084079 345231394 698719393 170280658 276530262 47833159 487307958 935334044 990019971 84402456 334576353 709659547 842718379 409969701 531399012 87415493 123843572 277755666 260131165 739094523 481080794 493490518 785984260 23161029 973108789 731823669 733455248 747063731 876229194 844732717 179821218 305315996 942327195 439363856 208304172 144560374 737833886 938349668 251346898 688642011 637023987 188610023 252228414 833527985 923294093 867831222 390550760 804487281 137872616 202495352 852294596 180210992 876547978 293409269 859552997 403594307 96907090 770676811 488698402 950747230 753493989 960043860 992313375 183712902 742914304 922405488 182334856 790780672 167220057 89797040 856357149 494305583 335517425 222668574 28702039 772556475 483351552 435685303 239656840 746031784 313268275 437991340 112416312 906938106 694562688 610792696 563920677 73105400 356557431 241107829 891822394 542565340 268888066 798355854 628435379 218248000 973831322 164039401 934496671 736827114 596644609 181100654 518995631 234419527 542790630 794866776 840951924 491068988 353823602 267656997 388399349 165528583 161428489 423183565 50245863 166765660 197337838 788324407 28478174 178972142 404314987 203705835 899490384 406741827 785540561 250209606 478604715 187715738 231702229 290953933 284197278 741976626 296129182 136506059 277030717 620810065 931149743 270109579 423221759 241739774 773590819 189196460 600895904 803746018 76924738 380534372 132441378 261953964 958963418 845640016 391643675 910255888 427670193 37035012 388118436 255451639 507493533 279644186 125241105 765133022 796548255 31883277 411472775 94584450 222506019 671907187 600652872 592472402 714626535 837483310 507920324 575421133 206310498 845058102 454568150 92164107 339703887 831905260 689862437 488309806 196255417 951974695 703441192 878055377 798017664 311518657 874826437 745916426 702448903 898590306 385491863 619244531 914851270 525008508 559999074 269758464 547164299 952978477 158926611 53077073 113242616 495756819 960716386 683368797 68679701 951619786 896292341 946325612 210944699 161539602 461333740 337186458 744622373 381770466 330481560 799862812 230168888 887582957 731673594 582628020 648919670 405576139 110124016 598698216 353689962 156507700 692006037 985461688 155364982 989662635 208703910 173680649 3412915 468878742 383052934 131576286 734416352 950473650 922915532 263995202 684142160 747332886 784859817 718948984 600564445 293508468 478981877 475543193 537268250 418564873 644522090 639234681 407520797 89003344 713124279 989021210 238721589 128549629 776832593 508913969 117811955 548220951 221504002 430158273 241885366 65458205 9876037 535615276 732155474 758535306 292389872 905986802 641283587 528585511 960902206 648719194 603463325 702341059 594820022 911238050 76679304 252064304 692983652 238496640 718150605 87114578 123657736 566138693 852630164 851951959 850776754 966553876 542480304 827966013 275649999 409182053 342626546 952009629 732521271 974670341 892933194 210369088 659053011 579367811 175401520 691018029 638488091 889551251 497256792 227052953 864831010 201352465 324574345 755974566 881822718 16070513 402771549 861270810 840161905 73383755 475258019 576055002 225685224 303359936 315866489 735685127 789839734 585355498 780661665 625733342 868869623 992424601 204093735 7655797 830451547 238561537 86716204 480945916 438161731 466399907 973477704 856769451 525612525 305331551 710339860 935922018 604384005 830586584 124118 414874481 842953034 858023807 265110017 740871405 994925398 296538681 743724741 143288267 639658135 554862876 632122353 406429843 352907906 313623711 54634957 252404908 462392953 311389272 894141596 515891606 19772511 544208730 917645161 736232879 623867529 525270783 971780141 675283934 839541046 360781346 613940944 623926681 685495406 983391296 684968024 913853660 552438201 267059775 94217543 627325082 238421471 582401301 635937310 947465999 842301996 599352013 325632688 422944185 566054863 779135732 603956292 538873959 623769558 558121394 870052842 386636613 718191810 539049362 622591642 557252570 158215574 429196729 313460670 888851979 947788051 932319017 470750207 635393608 474090089 941101241 135582774 672662641 304468359 92484854 700964500 584753886 884751775 210745973 865418333 892088598 428300008 304409402 69703268 726947588 247631687 997384427 435097447 836831804 636988604 216265922 430521063 919008270 361861421 349504934 155694367 873590002 187680362 51911095 672048352 715823299 894122628 342908194 510758849 443778200 788268414 496654819 178664673 19493242 39042958 112725702 793644257 882668180 331580396 917494150 472722267 948445776 208953805 960758498 391821440 472888967 301964348 733688367 442655397 745079157 796288554 311800005 555114141 822374926 681545710 113891850 592816556 331565539 269015456 64277629 987759481 881399572 235217535 788155790 252621352 432786488 494717915 131088064 348482187 220800085 476030909 850644482 103618766 321202293 396595069 770152009 785001813 762038653 949677398 799444468 220230977 442412192 820483860 684566594 944026543 768445887 551760744 516211287 611269478 420750428 850973222 629111942 436512463 318576702 525067094 20831381 651116639 972249653 354163748 392989500 339591983 987931258 169584919 567383415 364316196 91610540 447249082 689667072 564247177 402625295 728444178 273888418 902544792 376872095 188467434 291900430 417088077 11245224 464875314 473408165 775656548 867587595 168620252 76368774 990528787 266070724 90659311 170059691 389704195 123137555 813484344 323800347 681716760 429926742 373444796 857867309 834480254 514491948 847448553 717642862 279014718 73639661 318520447 683815222 54722177 912950616 801579452 272843843 259716049 150396978 314177063 757618406 149649383 187350868 345436157 71265144 81967548 955500994 771916678 695364279 525437314 185959266 620142137 609609339 424910841 452138617 437860841 592907951 961112684 867931384 190523645 290966037 166126634 326390432 114584238 403633891 732134859 895164741 19658726 104798660 431056752 335231097 835811942 743362106 506240198 342275604 250462511 67519811 597443670 159374564 117461244 22570621 480325508 361444422 45528325 783748646 668305505 885295121 301418823 74217517 738350914 225070934 551927296 998832617 656748696 511859274 60509977 696971278 731653419 573318894 283259081 621810321 439616305 632739087 409132299 385293958 799941580 721571536 821987623 453079928 462544385 945348179 120821542 847923370 568180836 924319292 142197491 208237368 574699155 975263199 13314415 22634259 693120431 840050167 55447186 701823745 710785547 903726490 609412123 854390989 153433633 723937947 660696576 318404317 43690190 542671231 413174312 664397963 379455791 79538173 388672923 933623611 751152284 805136927 810423343 874309091 442497722 791519994 547468105 190741449 932646969 350509727 15502521 607398208 822325132 914242443 506337608 126275354 627669179 676982436 769060817 895005333 950921808 861834154 964839450 33257236 599765407 123756002 943153214 66794734 925387883 335303448 807085609 699814198 415365446 850276102 318043980 415809241 817033746 219810177 523332210 764444845 436223943 451269243 78580324 348157755 523611810 766903760 85106221 602481355 357039420 127816461 507849961 86187085 760228380 932338629 981357242 101099061 500016556 577713213 411081988 962025351 83029590 357415596 389027152 343140588 229105721 553095445 667100308 956202351 516421965 468873568 824610924 63989252 739282520 420512059 969333689 104548625 14540026 494804611 962515618 151351443 884004836 676732739 294882023 24563766 55947071 630658813 566273139 760834811 43297123 242803140 874506232 651754534 688374382 785777334 583586462 51763388 95453176 383270086 890938176 765050225 866949546 406934753 222651945 415633340 122265552 384636152 996645652 290626933 979504681 864491980 805220794 780740429 53364062 827570857 778474977 757186055 310935995 327399411 931114117 892423039 905914598 159630558 89264187 896282497 262297929 634252687 453884182 211054408 801297069 605874006 752625551 180909209 742604006 458153585 114883455 758069343 119724875 631249175 14209308 925668340 997929035 536554152 438439827 794145244 201466664 893003164 310628981 803914425 320992017 775985408 876888878 889740194 333445788 934811032 717390368 965903323 392042535 637098993 335890169 14279072 360929213 974330135 967727211 695540945 243738013 156484246 183080203 89577427 458006320 426073430 686987201 753740074 611989035 906349080 304079580 147315082 808433574 841542419 651049552 732097849 592677950 289467280 450616632 24618010 784964860 940525875 833683041 56696647 156176346 420672401 251940472 606736856 649031487 486349708 335184167 18223887 653848073 220635311 159298438 955361036 387534092 713676102 275611761 153532629 801207029 151158050 131625882 716711971 527968391 408501731 587220181 93286510 655606089 868130024 641633372 791438045 572327471 899496334 449866446 934874275 862034747 809610191 930182678 592862307 727842610 609121325 421207364 56573025 900879972 826756133 972138492 258360210 284512303 433176848 691265537 757438315 12052477 692441872 649698950 321819125 123243526 106923539 958870207 662536482 138253268 112781528 709173028 714993532 551827208 204358748 917683335 859307508 968831260 424296832 438574729 782644765 845400997 995432289 291737414 464551258 543035494 896665024 192522571 761359020 842826154 262050280 728154019 639991864 404437232 955626224 556574810 698115556 624556746 388434186 367640135 617054783 362574598 12147320 160542613 813981247 841793946 257812264 366143400 293624003 954480466 349881469 216749894 302853018 303886850 38587772 493025015 339508338 389448999 625337966 440137840 322248437 372338827 482415512 111180266 143692870 974488615 228601746 9835299 878452743 86231698 931087924 655647143 859062688 798014992 783973257 147125348 197468799 71095982 609750915 933569499 209573226 172339817 930423649 550609011 329749259 480130353 505014224 924709472 382902187 533977265 991601480 248686931 527851608 359284074 175556647 97010672 589150472 227839124 939359497 101631615 372231260 63168590 145542741 92298452 712494929 11659831 475449577 335538350 560948188 828977244 446531868 58766689 329150564 647382031 585341792 998554787 841812948 408423486 41100822 460188785 36124798 224751669 96140714 556987177 643600760 338372054 177984164 667724688 977594859 459966208 272526587 685222387 484361028 790738246 428446152 563749013 736908319 165609290 159228270 76779607 261838574 896543892 995427414 705408103 742313062 435540987 439248861 947354681 952899792 832713206 281398135 549501702 52908614 206812077 381304162 649387368 714611311 70421205 953557771 296902500 2710968 72049931 860676100 522528005 51520599 143758357 155386223 553474453 841781257 449815661 226820946 790688444 857728573 469440806 739022197 311954355 331446899 669457684 113538317 853809295 307542242 65961560 476490220 224791010 427846921 931796975 565577777 859225932 824436642 111567110 511892670 915059738 601939540 240891670 303206313 735740428 5558570 688394030 718573308 185969501 886805770 625243064 7712671 101578353 23855599 952813058 804354390 407424739 789890991 612761216 860327398 181987397 126175687 906859194 222658243 83637478 496887604 651908135 223017913 933751764 670911704 985253412 769865664 275225940 186237249 48900825 800530963 542641791 813956049 20207644 462207341 366775111 449332589 147343089 214580213 324872204 548872211 845953070 414956334 206056274 428793710 889117696 286206945 140729884 632002990 998260748 175011087 289534486 851993410 203591221 846737081 182751664 51384017 73653698 762500634 251473855 585364689 39441394 589498622 470614333 49810763 658274960 567264818 334869254 826971613 919491434 800038436 695304190 280162127 7179548 363418341 177903630 413292365 529940486 372333304 922598602 570141412 291387997 269283997 983868470 249192175 389218318 555928197 77715721 349000672 944903051 143544246 510915463 70807853 166648247 525882091 669647841 429190617 812578729 11190353 486861506 836928546 805699617 264531713 84739528 991025175 924163634 983664484 504667316 470971341 286514529 869122849 14170916 937304520 461693655 614783804 126333705 844214650 645199268 401241197 634190946 609838774 305427919 421457995 359996132 607445862 294940568 778741494 481091406 658685027 703682903 230758427 700803307 529886186 549320518 522903280 715327831 403469889 886415632 673425598 185871394 303816662 517273181 95882977 179785952 121937906 117622077 746642041 733547035 961488419 73498915 928544888 152897251 775163079 99591035 739864926 565846723 48871689 603820972 172941182 264461746 519444036 285792593 439197515 420260117 118801155 395325315 790076211 826752811 443149139 524667285 672775503 543398874 902722506 129317692 94866683 349147056 694541739 246799112 153609762 409924839 955432684 518182513 9758684 781593760 447722770 833535878 701136766 687979962 790927662 514116538 963055199 837623738 672498894 443943534 911251841 331161497 754219263 577268607 354873351 376921741 911269729 937102877 446813655 325271611 326463537 198933522 868140328 479362347 115675278 442440656 261451718 409520326 263913243 777797833 383235693 974579939 875515505 74665283 479442470 189602827 531028629 369369898 462666100 813058614 787211210 720354563 566657747 362278699 350128567 484393837 698137463 27560409 810381610 119159094 31459022 30152663 664445717 693096043 110902324 233758080 349660473 352479764 115890069 530292422 793052725 653945911 429246829 162458362 975793962 932130877 959558863 700897310 504450327 371299593 925856261 724387639 426185243 419368303 573274692 443158555 417240925 225523136 352774964 535472598 420331398 729746413 564059197 789756699 359576105 890789965 479817563 109248671 384116389 435434938 77992523 781274330 316611646 148710199 980389551 392079307 996202817 233309264 556541937 88748048 939402661 599043968 597406109 386510386 565014386 101688310 453514526 538581398 843835190 265797643 776521787 986757012 865363825 729988548 924640058 146551860 677515730 902257241 814102702 220706363 232586767 649877249 189957192 995699856 413176911 752354302 439746287 311216396 630036529 864617161 968668531 777797786 922974388 832700765 688986463 877475250 14037483 397007305 432026056 511744138 145999624 628851148 463172791 982960750 539675933 725994297 153375027 613388547 69764622 473301388 705167423 383385546 983689355 488922752 982846635 97262856 16454519 729007858 699806753 59560895 531733294 376770626 994690169 177924835 869602850 489587032 368594988 778413271 957572940 232584236 960615695 707556087 551591863 301377570 154463878 409707296 360866858 226365682 671431761 753530567 72927580 708581422 197073629 425148337 306052376 144476454 807361489 419528193 799702162 88276770 347759517 127162723 291315053 112621622 950961529 737417903 173598490 744292733 137852154 127366583 220642158 721892471 519546638 755437657 617861725 949974475 228088389 120865252 322981353 744864391 617816171 706854959 413754803 581652311 935101486 668130507 268636324 984908841 378389374 960515108 70714732 321728708 890344343 805136645 418552883 195292337 516099037 728444692 417348726 44438935 74334536 879365413 32773807 433704671 441399262 389066345 694612272 641958874 357658910 70126525 381599654 413029778 142658111 685286784 738620120 93097149 151596220 444529627 575813725 634686935 523006868 782153300 958540422 90214561 864960569 570052703 980179625 201048671 339415120 985830812 856719341 897936283 895651352 934631689 65088988 109232783 343963392 145698178 643737053 190010027 571261873 939366894 73262957 890785285 958311135 107080662 431177547 72904180 162172187 336797085 753776845 326649359 713344029 299939258 870343164 815122980 862274520 595914978 470099164 201150762 794055612 768748408 987849849 686295927 471356909 767854038 300120178 660228914 117769695 737187854 85492207 403281331 155789894 69275552 4806958 146621840 519385856 822579747 56775284 490662652 413063812 879744455 671654186 543319108 847271410 370594687 738264525 231334058 932625862 810522618 63957748 257889149 418100928 1391501 925593970 933577167 155641690 175319306 563274095 98290906 604179885 51225030 57355906 318242334 440560241 93329904 61602137 586439824 587889363 747381035 922030098 66675850 776040703 287498061 313745685 67533168 87103518 689315822 688670175 846728182 804568743 822464808 440819456 610597149 782618962 143741950 793045854 614194381 50007970 219052039 15162123 259641312 565433223 779502429 905014974 762715539 581956800 446621067 188957924 397833255 544009749 793232086 253482129 140260034 620666528 1414452 470091885 779284387 823610217 165025586 153154352 639827267 541886216 177654473 668277232 396398807 328067259 981477963 282727154 304426284 672471475 58931007 886556373 321734471 281996802 225318173 756819281 457072120 375806924 239698775 826467610 822588073 282952526 565964121 239165611 851524388 926224494 775624825 570213241 521564836 520193152 589727499 919759539 5208858 804496986 508106137 417681694 637701057 316563865 901210275 103355359 966035480 175213913 7489273 813221164 159728467 974925527 620670907 251519445 570133487 958087958 873812618 772498852 727715690 783999367 626858654 827598725 747531329 334271057 831018449 879059558 328240880 267783476 652601843 486628387 900340515 485214422 622077409 934898755 612548470 434493891 100835834 429320386 474630058 619571391 893199274 539307350 179162396 489898215 951905276 291568923 799649333 76862491 408874749 489541443 494485210 368492953 925948741 582781086 429144645 701900174 270012835 3512845 634567293 669337341 811995487 111827542 152689751 367996264 152656589 205606277 81521974 172705352 361411324 354723294 1221214 61355908 48141903 956609644 890647697 94980432 309179776 582799089 293557331 88254259 968656205 18458268 158736921 111434982 892424959 579950850 510757846 356897122 431935446 966137607 745286586 416106006 40769183 636787646 662761797 626454329 915049476 738385675 273256376 411319138 970393131 125858980 125374377 984120852 430218458 237167291 846280576 183121780 978725628 969523155 48311434 419582887 582029102 819491052 503033038 943749548 878941966 120804038 814194254 308820887 757449007 171020523 759608326 315910633 270286224 951730347 93016168 19645089 421786942 598977359 344375517 160823437 704078009 418600898 490317829 38847869 615450135 420428812 23223006 363204598 588937361 918783558 648609285 952758667 279845477 583643455 378057408 199737938 278897176 880865581 258383404 9968509 911729817 762976145 812598829 835333397 311382712 651709614 602965331 281956430 310959474 119934897 649740351 278925611 44685247 409962795 93881606 107784830 455780972 506811326 723777698 384579821 446542735 285963709 946075199 136705665 594246811 813930313 446889938 273304427 254535016 174106780 566921276 668438695 88509962 215141796 926988133 171819566 965622429 355039774 172237351 298809831 870679607 335193915 846550751 714185581 227411999 140203119 550687435 988262641 215659222 541640886 395541071 663569235 297009639 119366420 210134177 336346017 117602906 312489109 941374368 701766894 664189536 444674598 261683212 409342378 371762797 24779844 51898028 293513501 239003235 88135925 975403699 870313713 197283899 709733012 660390080 382364191 765740639 783745591 337135263 510077802 582130391 432228022 846436826 153054170 766414615 180884112 663969539 775197143 761869634 687592222 341924087 405677524 795244919 472376 596703898 122936141 767909602 286108606 668656036 866275088 974547938 798232339 693550208 216328091 516245016 512115260 250396501 924077590 114204978 613570587 443413533 501320045 810393011 862179497 154065177 837919143 962448244 930253869 53738234 487935857 688774739 698292741 802586245 760422955 457359215 821939818 318459163 412134489 844231988 810409941 479579989 474709730 591729447 666633440 306790473 458552054 812497098 203944644 175345198 60844356 864160758 421627046 360447452 21351907 255437754 233334434 164933626 637452970 415882134 174634547 583943184 878931760 186818893 419936758 547402589 498974435 682760696 936356279 896244457 560523691 132813050 820686768 428019643 424123911 777640937 581982458 415655957 283136676 798900318 543931678 321462859 714205575 473333408 998577499 278625418 517365543 947373983 40374340 181578021 22951793 589791665 795122922 832804161 362967878 139232390 143149135 154051116 567422335 303676185 430325989 279662385 143266709 393359621 587040081 674772183 973569004 19629293 394087933 899378497 324570290 478189493 768438981 992121195 515799430 111123844 471415044 125542292 51520219 568423637 347738820 790973969 135954013 408376154 403969950 383022413 531640544 126158020 483921547 218291769 17303153 984279878 284868560 775455584 784073230 288278970 350157912 498560886 484459329 887220615 514312686 67209246 373878251 48631637 110246354 543374218 853960815 446230380 80008739 824430123 202616504 731862797 438462470 710087719 910945890 562197974 991961923 568980616 596007025 90524505 98743189 299426764 353768699 40933483 412765407 391653708 469827327 606730114 563405272 669045535 947103607 586533130 323616938 876526361 825475104 681357658 520420320 369920498 933890073 370055169 486020950 291942136 282739509 795086991 255503870 250775857 112628729 641041123 443113128 307394500 985454766 964851638 258649188 118463267 82877679 293633193 834803496 225355949 930073622 690076172 614731 446015182 433664731 949618982 233642180 411586908 555408717 596882020 14499845 11103121 642535377 112410624 703492334 313082165 26030800 950377976 813742913 306258614 600554627 221667918 934383044 107562855 916748396 629137141 268431962 488426466 25030312 403701611 912049483 274203842 470513862 136602223 225343399 522791882 46769918 971946872 378908168 11099165 412695095 357745691 895953552 502489113 982912994 456867829 171003878 402388507 93810128 82390076 488364717 251812947 470111636 90714959 243468867 395636415 280954564 129206805 641163779 612344451 220462467 394328991 454128386 552499349 966456030 509529388 450133295 479252653 557783843 565274930 495708219 524013195 627684364 715479644 673301317 35786072 682973727 196073352 794465434 581267922 644784817 795842197 434938697 801316640 781095958 712118564 744628721 452772576 753705635 275220579 593087775 252133393 107184857 995544988 458303372 726531244 532449757 690563268 10254576 467191900 949698727 862185857 484844051 911836479 3621739 202913449 192025204 728209848 97429357 702161088 852231919 400264805 706698432 602738365 502745821 139488725 302620205 473350978 599078258 202108926 433863327 115507510 883284439 739980143 589212045 439795426 163416761 366318691 10919805 10406500 15657883 417172730 363195752 638087241 12411759 13009006 433990084 729844890 973701701 732095455 822573903 793469409 477578598 77509829 829256414 350642920 318282512 294461835 59883286 950462102 308963354 521145046 397184896 189360912 852857502 211462829 937279748 11827675 745548178 552903688 311865709 376420583 696834228 754376189 425448517 674599350 906513651 931251663 681856341 186139037 707240587 877947456 693318455 520629256 233593224 719590307 612967714 66916626 767111892 535027691 247435891 872748250 731298371 866021724 996898919 108369206 973982227 380493469 800026653 715346578 90881571 876969385 96085359 609712093 465063340 101107524 322168179 259295097 971934401 674803424 708148572 145040232 687899405 777516411 55504407 518838775 395205603 392239766 21862399 436412167 454254732 137032672 740383116 278066975 688577167 466091834 16813056 249267119 414472727 142568767 717788222 954418318 543566935 609121934 962999862 202267649 762294860 373373516 356080009 398352590 806767640 746472563 754518059 254745282 31098690 396934596 812012856 453705367 606106260 421385956 117023176 430337821 537123407 126443828 940797893 781079862 946320900 215465163 441346073 265565655 553650922 609142050 844494770 149326012 834231772 901373360 846996302 879385915 513297954 598595800 276705003 45529370 854108754 747741025 281106115 683744343 138579297 466696202 932651735 612760301 483682909 348989062 168481897 616542970 856063874 281893139 894441141 478562043 400427866 989114455 743432809 357702511 94743074 540540501 760654157 546435342 585293986 472399222 892909222 502064466 794266414 969083837 129239579 198017471 686371358 235128161 4908907 138663602 409968228 586613760 950419312 703015747 396048908 102435215 548288058 686138520 666224972 892750232 614877411 99370625 812402771 529153649 517353902 267871607 290708371 122797836 553459283 561050343 899219598 248048137 116433431 810391428 606139812 602240207 244709333 117659269 219607844 475749005 652293174 230036682 34409102 914189497 575652973 241235682 104728070 338063213 250107877 12770847 686944410 176168450 632127979 141468150 748784489 611511772 472744333 93591183 835801579 192570783 466862771 865688644 238996226 554591894 881820553 341057549 623849140 816204203 888769460 529425378 347618925 255644554 34471858 828050533 422001938 145564682 361581785 567443497 91297377 461498776 12442951 651219070 523397317 416997816 681302048 664479612 186145882 465517414 970942169 218039145 14445301 898723098 925359206 11022327 619130727 875446746 438453130 349704461 964968431 603209324 630985585 101602557 326645678 118523264 505291397 918018471 382493879 898362123 306098187 818373784 640998329 468120824 649653478 55214854 242890723 263315327 607461562 138787019 669864847 334096578 583169018 32284957 258234304 141112505 82414440 518452946 988359452 698167404 924697255 459756625 9983162 268819822 274592335 477752448 619179332 681094570 370118018 417859606 773344491 706010825 385212381 52081020 644754504 96768192 863971390 630596211 197800435 880118211 866887527 712727790 805469600 23638645 776354550 718706293 634146824 840277795 410518747 488408350 686884768 230605945 779764762 148250069 126383284 159114739 993867880 489550815 913969662 380986478 188696078 350613636 249536165 386475301 680166799 43994834 192477017 338920333 541332155 428237181 687376867 790245916 859916520 443664991 517856024 910848625 139028639 545449689 766810392 155462358 803117467 821507612 225351735 412178053 629957595 674688154 283310459 784662160 317992888 179326141 733948502 203364164 483720016 836828282 367563323 190575017 765811434 588643267 105717421 381285509 877232740 929356857 104079160 249602287 509040718 58743126 837321009 526425392 381363546 287348061 916782146 326849761 968583256 591256108 897711635 856490721 213236313 163934080 335514024 962586544 314015509 987757724 337587969 876473200 22855531 682849189 864702005 596234615 922329156 800626284 200067749 599713402 865316773 837857018 459987190 236711588 642229356 545727380 952182827 490622280 839844868 711790865 69230032 987641319 841465048 682899587 232129625 349709260 484182410 983652671 778344326 892459633 218315698 79486956 470914578 140156919 624096162 704680415 809759066 481519342 612498888 702884645 461426453 839047959 3694023 984981718 672285252 111260430 670632429 645160635 745843412 548379881 386981777 955731079 585648775 542581693 378257545 654954287 763557249 785637625 236608030 115446163 106590992 567246259 285908466 188679925 363790772 888531785 930743081 669700732 188371985 700572277 694817926 713846602 977673896 885236122 356914877 242258195 752428603 879646630 194600843 79429784 602558138 687786220 850827041 418663903 846361938 252952530 814661707 89541115 708469858 294120611 375896836 720650817 489862431 572661051 564563741 155353274 389715464 188748186 757610172 851745042 357583537 473273855 692490988 338790551 567143873 371899514 488379187 95066821 485513519 369401686 22509080 949142096 762785713 536166144 56161029 86925886 89364467 902251347 331270497 668160277 435109180 810965965 410901604 274065543 87997530 859578171 38823400 773822855 703919338 399798517 347934102 591063227 821761418 339371700 293411913 617603801 594864400 135369940 368014750 614452766 776834725 548130672 363171823 982000776 47440445 115423402 527297169 473310139 829097819 901824173 69221980 824791867 959905335 696198760 353074195 659672532 547481199 175663304 836927886 584173255 126176119 387538253 533238739 699884957 203882450 58633865 371587169 899524719 883942367 836823616 15199112 925792317 30640123 766027363 584458957 290125442 139760060 15753688 31238195 953075474 182702637 434816397 140601841 278905701 736843918 486746036 980947250 474217941 125497169 425556516 888076230 396538863 194145726 241935518 783998544 97929269 55648864 897584234 236602869 673375849 153713974 928986487 816513485 550149021 269139137 602809011 963914462 980779823 937136369 635725578 143313370 798918451 315482702 156674471 930441534 305055716 893266370 121584082 419951906 567669905 60813203 311903364 347210700 734256209 857066264 103941436 71936987 351369048 553402507 251440553 266638923 24070397 397177759 932639635 916318272 144723152 277961539 949375287 50410829 979203576 312308922 294476981 183177174 968839224 273363942 465806223 517789697 760231390 728451800 672489422 699194980 490150446 294400691 190876051 22109158 547905374 517842875 46593914 603682234 721334904 73899547 706852113 994804455 380063381 218816784 130914416 116795043 278183723 424597815 155048915 963437243 730193460 616744284 47475837 888135383 339304844 887176278 102099735 228316081 367017101 91870227 71669164 869220050 313476166 219834391 621616189 660748997 743660043 127245600 418693233 905076885 138397928 617986112 260866733 976455340 930324831 48736916 285795554 708209233 155140313 443739624 603861346 310689961 333479245 997813271 400872082 338648494 444426714 608830995 924289367 830724925 216988172 345501462 991786161 519880408 982305762 806805976 341946278 209598202 482625223 169467840 58265745 118786531 729815396 218023753 304425047 687293758 457768710 127755825 850354502 652025229 622108157 737086592 846071537 4174028 947759332 531869612 676341208 217054128 236826830 427101001 187661841 48469966 237684472 900008435 15647112 159289940 939066996 167188426 336680293 446712414 587208358 263836565 806842493 105631344 454490421 944501726 858337248 9411276 789481004 85721530 526410144 554881470 450482399 619271075 551537651 436386278 366337259 653883149 84465874 843953536 566945535 674471952 844643783 738999775 537620318 694401557 465943911 151284252 384505578 494394207 90793581 59315149 669739480 974511259 306159209 708813108 85677414 729823177 824271586 198669105 488816139 269706233 164241759 122777698 577478711 917250861 616909793 127157807 793024744 704721511 530897845 72999012 967650720 642635069 541042995 949038466 503235005 759270326 196174472 721698026 832211319 103054515 387972618 635780546 368707039 633215806 495370432 301690981 218616286 615423131 479583233 725216200 716804117 993579089 566271001 284584687 352475646 794096329 578177752 617187103 758252948 881363099 766295621 134952206 701460963 290289773 361982563 822998469 625276056 319856483 911890636 705402841 411086243 854295578 254293061 77535831 44311365 38382617 194778560 501927923 787542798 824461415 797221938 864860428 396977536 412830217 257365908 145556596 517016115 197851979 51857839 116513859 878864905 105083684 627793848 881491832 593783833 973735300 849340032 165039048 436310607 249108922 265595283 692547762 151117420 380192566 702238932 585407539 869242381 967483905 586458862 239219839 156367924 315664790 532395980 311649046 580268645 30418409 927267376 5239679 909855397 824965533 716816036 706823294 98635375 628021380 260934889 841088128 848423739 778199265 875791957 323120846 298657267 388032897 978917517 556326865 645677717 426704165 387839707 915065122 527618655 379375263 652168292 334194912 526817577 842085897 901892077 614618231 141498270 23392874 625645720 598604168 347271144 935927378 417860799 272307658 617343685 419485589 751372537 175963664 527614746 592337017 272248535 407011488 11810866 747459782 371235298 211823610 912750929 91736836 181666661 410054982 488275340 854958546 78545278 498706984 217278293 833072842 650157328 20976899 883635105 183522818 532525534 439433845 300215586 209222786 691056089 751874926 662486661 236024467 181487561 931908385 814700171 810674417 888671345 434491715 50521325 647652538 133017437 879766642 20609552 744114239 523628154 480733792 144897270 127631762 637146726 945493665 947357619 44109571 581210956 5996632 710108795 260760459 771179956 159083351 283842027 53767768 829920961 908933242 326776115 59854220 627256104 236131867 385792668 849306023 270529857 484476775 394895306 840371387 989433106 917313177 52640698 28568170 217063312 768137341 834839965 686379563 642439138 769433666 192178435 843767401 443857155 973446502 166353356 908423230 950954092 642152158 447734603 99069827 352881657 195040165 634626257 861461498 776094064 761096032 86848040 446308454 136723491 420174932 391200674 942211943 234170281 240575551 13591418 395403381 185350408 441919644 659786551 320629730 538783867 606915321 795703229 564834955 330523351 655844106 281449057 824348112 219207784 704200671 157174064 154044345 985636615 611370272 59976803 280159356 602707487 664111733 937577096 642363488 93645578 572236650 863226705 639603222 769892186 935333522 622820454 725599099 782812248 160113166 941056854 920349696 619689712 57170859 489560661 346322846 532847543 216714204 304317789 140494431 183219390 190781590 831875441 637035345 826565652 237822444 894612427 899339683 709252769 186881194 219892003 753391830 650857568 391066091 969275524 658597272 354987931 197150090 115161221 475964093 497005046 522867338 87776670 490846664 53236085 150117545 290765158 395534254 584795955 800509411 849390503 283298672 962641553 187837180 151103728 494346870 721557964 936180978 755060642 218795410 137016520 604965448 813116772 392733936 125727444 375596919 200911949 575496294 383979277 999764922 502310620 257146145 937220093 587858928 297377528 710181011 143920994 123994190 77563532 699930277 293043963 130951615 399771079 646004863 418224423 80189199 166278205 423139348 286307066 720089502 698128436 504027427 249073256 363007234 283029128 392558160 484920945 874733716 279811121 559090471 135268074 165936626 176697893 347396861 277163150 128725867 777274569 509330186 519363738 189855874 123585807 32346451 689815535 898354710 998442062 475866663 184661065 318965829 211084661 335177885 155296421 844841073 413797149 159757476 592530562 136175382 943305682 62338972 699415930 813908621 243745824 808416451 301723862 720507272 647173710 626001150 407659715 638646364 627762893 575238691 526683473 577745823 126314268 603400368 755108937 52133090 274602307 539137139 843892397 753220567 573753041 473204969 111346877 841477137 309441393 229031981 314603642 286768890 586621425 482150578 891700283 452432325 771259917 786662536 570111416 351855185 164933407 457902625 768007334 645727584 451864784 536528138 1371320 644731480 695525636 672709778 571314680 696675532 74844388 861088983 37494153 71938072 55632218 423046458 624530026 144794287 169281145 439810034 333286651 961276874 148745590 642601002 108960585 58157097 136969400 563200385 225003611 861109174 697596786 965218281 158244538 577916476 122847412 794200279 43460243 931498282 297754260 233055017 462098333 841415507 205129297 752364697 914910661 479460159 544764962 712708420 693651580 830161946 641728700 538626875 331141030 693472987 199295686 430942441 37035449 467857828 167164748 300055808 938845682 574951364 830572806 748672115 888902617 701593234 287098935 522765426 316241352 953767993 57634802 380233599 807240076 895163700 492870239 270643000 610925466 545358967 101618280 853838063 190725551 924225654 107952122 534638133 405198834 521902299 604243011 426589388 131699643 455228351 780345707 949029299 563197489 861943266 198821521 884184135 2126608 67542333 261690529 914624785 549414395 528413330 878712801 711109561 805804568 447687692 606535212 803088608 371966772 274929815 763648273 754483524 556052064 845112638 824318672 901585887 600991887 613758060 751366959 352402792 677734090 967229402 900552169 301890200 512099548 154041152 271074195 42830144 232705591 907577490 267083866 191060733 821864721 290377905 342119079 120332898 470797052 43824206 293099940 822739144 645225429 484947950 195397319 61249811 997463858 110032296 911635809 657679147 250702237 49568762 991374078 38811488 35415467 262648336 198176807 953856807 120363728 330652258 126178135 165991996 648312740 160174923 810560556 552871085 584074265 119291071 942930483 178936745 610461722 159175461 141423673 264620817 467791448 143340343 579827161 672384468 216428 858638404 170509590 626686279 733624002 819480773 267606459 207678952 959223049 322499259 535201220 696723197 814828954 611010588 634850384 235055129 744524912 607482612 385875458 633180290 917615437 874465837 497794854 665249347 362094889 626272208 918622569 967994973 530434554 106671589 656194029 691192891 275083852 778174082 865132781 887575289 182280999 962822205 895192090 507603086 772494355 799140475 770197639 463138868 884533081 956435271 821711538 815770978 279999436 944922011 766114923 642996582 644081030 894130491 362433219 391537718 309510169 863893833 304044971 513165984 172383749 705084350 3297625 720563974 756403479 746024689 297400831 452478198 371990542 586204022 85249147 248271318 651216078 20599890 116283886 426198085 933763637 713052776 317285852 112506712 711034409 762739757 752007582 978821533 107201534 889014641 289242412 6690935 446848130 700338278 63572700 331965340 354411742 667858582 730975748 961885041 456161368 939446065 123941048 913501772 340811928 579856106 201891978 620622554 590317823 129123676 328990750 583970553 135318695 907721718 669963539 436056324 115967271 119974729 973540345 284722028 307678931 889901262 158436871 996638367 130066199 373087615 412035830 213030409 270987586 948365883 652437762 242333404 41979982 471868332 139756980 362063837 463827779 652738635 736018196 336955723 58375041 717674083 518957530 368254310 519639807 575883939 328008677 79861971 662781606 516010437 392372410 727650407 813725573 743742057 646543998 750157755 16326729 109476669 468168389 478501933 596749462 550253651 36018972 566257361 140066761 476894002 170434045 547870034 394347665 241897150 952687798 598943086 132464387 174337877 361095592 157722304 831111670 933873266 947232482 800727570 314638378 864570688 9558911 777290278 796058857 383989975 889258865 515542519 87609751 890496986 948226736 466403974 964403453 737142346 842001906 354811821 181400290 221433945 277500459 655464751 632644335 933930427 986372979 695339284 940759623 431400368 159020046 785899744 164341194 371212082 245395923 4187833 676287396 679069343 291289513 25289060 905818804 622325296 8428706 897726326 330983762 447200544 49224000 951076467 37279642 254477063 42835530 50864569 109386327 921538298 231057190 404148067 954744396 733500095 667891827 809070873 386007545 380718838 748678768 532899216 795451049 495450496 342488827 165781257 762297592 981144093 307060944 218703820 683670569 116138669 704223381 369521833 379473001 924509984 219901781 657652094 24237926 828487291 721351021 699353942 564718477 801883589 73773446 308255264 698664521 554427875 454704787 632379773 413903888 467883925 27607813 743102908 319466211 91555966 984880088 830021253 240419256 602859710 425356490 242709602 642630533 382483274 14810653 676870806 972278727 164564228 432849459 441654692 145409345 285192695 45050142 193311826 119364254 705973440 415150178 990815935 112247109 96660445 366353886 986425054 575598662 522861288 672280787 139533465 120374099 68477589 179878152 102405895 937547827 801696272 22920738 543815392 400838280 160625095 962367575 135044067 481872873 638803904 808865221 931585717 476689742 875776141 745259760 843404222 733766410 179150556 44571505 414150106 244085038 539388606 585791775 302706650 84482479 819755027 208727007 465678713 962561891 24118361 238828138 262343677 737605642 536070043 940162777 184406545 878597106 306417527 773531287 491869607 459681674 940044418 533083520 543886161 675451075 36276133 833573786 479927332 257350529 918617669 346087589 800004421 477090183 482112496 622390407 179929626 827619081 250151995 528490156 566773991 320370489 512628124 861369116 780336286 323158017 28717926 195367210 331709509 217699267 864680066 590097022 994198633 899408168 172744476 930588433 451221810 793253017 312924830 311281158 324742893 256286869 520753620 734793710 691732327 957208253 612977853 311516047 679217565 28845761 49103189 680627562 955767700 777298747 224949203 457675416 353899929 712200591 449731606 518390889 186014402 237735181 422090826 358768005 425537482 90615138 354311238 219843166 250882780 166462718 729865775 292290932 951188836 141245240 623032732 191399055 208605703 224539136 354937087 985839030 994305533 465388686 470526710 927663445 89823716 209242629 528310393 357953585 650657386 251219133 99110381 541427302 952735836 281007889 299722984 476659307 161285723 943781667 41350863 553217741 910954840 482531666 770922799 216559158 601590084 959960147 218590806 182215577 555410767 464337718 342111891 745488146 765223226 457037309 945063353 91254190 985232010 627649092 867811254 946129641 634573736 717976717 301600524 789778441 67468992 857455145 378451241 601195703 648800481 511089319 957477215 773379107 59585428 501597740 390262875 400198797 304991866 146610438 505424755 119846149 210990014 458569740 579353973 618435464 903358261 639889103 983183988 415038904 740676379 427254356 378585307 945951982 104032547 542160977 957653639 695659513 937283493 200137805 775898465 364900610 243093463 543043630 522761119 573400437 492559092 629214971 912802691 877155941 360353562 724014534 788742339 76652554 210991732 755208285 495477973 996069147 810782845 22489518 763506158 788806613 411517722 228898289 670114359 75316902 68115752 713249076 626567582 726083278 886528786 970700212 601623136 98607520 882559337 302584823 149617032 588288520 809315371 779464444 233984949 643695919 462223811 929220418 683629108 463684242 972301403 270137422 541499197 491537702 642830836 521838844 162674938 206364889 492388966 966592298 457894028 495698399 864294487 371834941 304653360 583712990 729212798 297825976 896364270 314807785 70028363 16862606 495516033 139940566 909856418 479836535 374132344 824969623 311938488 144957526 596485307 44052171 638687893 80251443 600847024 661679420 801836934 355397849 776541985 911376130 812442263 171623372 862536058 447157483 779142484 147708860 113408409 145500681 995111951 189072385 988178209 518910840 272901252 119517638 659714270 171598045 253357963 166049724 42667134 216514243 178309998 205197457 889329034 274983573 675599749 435573660 843136372 98790893 54023659 999376048 19826174 229440614 7935933 585826518 791032950 252982218 112107165 284387643 207593501 400137285 525070725 897840516 136607635 480236961 517144904 232649447 656025314 494433012 885657951 667237145 27768559 942362058 22330860 192097384 572084729 271817106 357262058 619167285 438661601 165781150 315003014 4687305 430652116 4613731 362901840 765255564 858998368 584061493 603129864 765659155 816422556 422878155 626901975 340272865 413053038 59366491 603986168 797266943 234161798 702285847 890516921 856065956 41545399 981846456 575352872 395447265 27000184 160507478 334125383 308772180 201095428 243962376 998267342 325485552 280520802 143893109 787362462 606410249 835008846 149726581 436544533 416018426 965149409 856176944 740310006 9624879 50196342 882672228 356045431 996995633 332268363 471258951 721364900 104773100 824005842 355661390 482021058 246698273 884047586 178421699 378287564 901315022 604485110 628543609 649383037 504308612 93251712 399146863 127477111 818643706 819982831 980979061 494580329 660005968 368733637 531792950 835824179 415513588 292200909 915347771 451158558 624408660 410303868 104891483 785896576 784184988 638898106 926656065 585926870 534082580 630031576 978321914 623409625 168647966 247061035 634787794 851366650 238851692 32036670 919259702 941866426 341738797 512621276 833958760 273118054 842869459 401513288 557151033 515432245 854270528 523981209 231637038 318218697 434882323 511145300 185182244 273252202 517149518 948944062 234443210 52057590 340444889 159183664 509203567 184385679 378954384 964618305 300001636 44558306 921579237 937615741 300179333 306391459 250737678 233243144 910618591 362516657 78759123 70570238 714743728 830064237 381077002 772709486 608834715 28856851 343520792 605464632 532430179 191611559 668772193 63477699 491236277 603852890 46545139 952715784 41247089 274775094 684085437 716974626 726911487 897909915 426566668 131246196 797454078 671326950 851475927 811329498 971275672 629170464 79822842 633840148 7850358 65333124 620847775 881122032 166794525 835217444 976364993 794283405 77850774 578134217 761936816 744682540 904045632 653730232 179787013 940096265 729327817 62908977 802693938 930974839 726725600 867499569 667224214 173148660 143781344 951845396 770138759 152587921 376719821 439568362 740270047 995616001 63023248 124661079 822585982 50679811 328205946 70981871 799337056 545666551 668384037 737473874 34105033 957797604 719693618 414782803 72977849 259572958 630190582 522796482 53128092 674006872 945107364 126626956 59628721 665160282 411502212 228395471 982272020 652843496 477760238 108220526 673291483 937158361 791910344 77061225 403948672 89588298 636077738 815636177 396052220 706343214 182756850 621849226 884611107 575807107 32869273 36896077 905313319 527094535 648739553 846547242 496845724 165931947 365802351 942498046 348088096 18343980 190258605 258869718 147604795 442374933 681862665 228218102 63948262 658986577 912074427 846244115 148446565 420242007 107153115 455384582 23146959 601611095 141361372 167354096 115568670 865628952 193931377 935448565 759485396 367808025 701632159 463829028 653064745 798902380 198925876 41083257 995932707 852574641 289799066 748223526 894103100 691950312 880115204 250009861 206677512 306828223 203140218 566273997 540062757 470784942 984585840 140159579 631455692 999758001 744054472 697145248 719594895 99865905 196571362 650792979 504367204 371563446 722136545 207515255 402564637 869357416 135590745 979026862 652349444 945301793 715833511 435151766 115823890 125081685 56415522 385016344 531310291 570394436 684037750 410531456 556349967 976300930 946956897 424024201 440214332 894438751 370090336 676754473 701538757 33853345 969273597 168621605 88094807 978283925 287544936 214392560 46504069 230696830 789244086 33295959 507093385 694129884 80973203 695622694 10426466 579094227 208156645 163107301 543358828 710081342 563412132 671838083 316155184 680475620 812074790 912772362 86771978 201696686 368363635 75323042 802406892 629015422 520161218 145516847 70447410 788040269 974551411 726059624 934697756 398075178 308502010 668355291 449792168 968310002 352964233 925231827 399112975 218850128 702142638 15075465 72070203 805133322 252659899 830904604 285916322 221825582 916767839 5796646 912712215 414086762 388779507 166153771 70672312 981908355 518226657 208703992 343532768 912225080 174453665 341050968 344190092 161677847 264235263 699704832 855982635 786622352 760229123 486928293 552877739 134080270 444537385 434191872 967100706 893091323 179014038 232418763 241647691 241616581 565336678 155166092 222848027 45655797 332977625 196187410 631442405 899141175 945228160 175577060 879479423 527409199 381549939 257503138 470308034 745546379 417010377 395380098 258566150 815403645 339173470 68061027 519518993 40686356 11174726 222555606 370516353 666403180 730112781 377975623 919739850 530298051 696722435 581843260 635873958 463875584 231360217 169505949 892258430 574338969 767363210 251872803 929010800 476680474 518056831 130639258 15577771 653289732 259573874 66811908 887701055 808014864 779622024 742656498 301209607 708146585 625276049 893317810 513635109 429985904 812695025 237612520 140319860 368995694 182790834 68019704 337422791 179375540 492232866 119653550 396203444 356442375 474219732 992119350 950616376 874619665 66253740 399895707 868491969 599438384 102743544 979338574 388246414 816931592 697517065 505519989 589497280 773488267 893094302 172391379 294849799 352517019 6985265 703045522 576117586 857233968 161761420 179755768 330796601 414703391 390162973 362363282 272601086 64428419 437085621 421191784 92567669 847353251 299869542 476004414 13791407 181811719 852281114 368234405 139003841 636546489 946086761 208271437 995460784 756493984 76028585 884867267 959109940 113829700 6881741 681093896 917237538 896142068 910491829 695614881 160601326 446719898 437154020 996336599 985536473 854874047 985960372 182747012 891131188 876016148 643752507 445386424 920994424 992863447 117868111 656636151 555644084 232371747 354888236 908476685 628136351 971657168 239150909 5314607 305850705 409646037 832593148 177939873 169497585 657296171 522622871 575224883 463818154 8103730 424578989 747208816 71579210 747398465 609390261 452287914 860014876 408992901 466447152 124998819 344057954 341719609 679441693 833068762 636328206 610595868 28574673 658173643 178210829 254796640 69579976 10643065 442081729 657851388 51549513 997275939 863297360 924187665 155389502 767171818 718075127 865430913 899813503 669420327 222129861 936911971 28342105 660688091 226625433 846471490 553226487 288634455 231931032 374547754 279653125 414691273 823826626 987379293 849643688 984912247 984700502 789473700 271731936 121743367 379195222 945460597 599324359 753638255 2293580 662037499 987281917 173593224 23895680 245763273 200502423 329862557 169403454 686256900 116070126 2990423 711869022 669409973 24665621 501335948 429318742 664076812 543330428 398132679 94449439 221933336 110680071 650879653 935530269 930010029 689382041 459293433 979548458 975932626 78194922 33691279 142916612 237472751 4153149 564308373 534619907 647676379 839910381 681950832 165444641 338409660 122947911 914397437 474284235 755730956 33972726 605350127 84240530 661995932 544679586 525732488 611371491 104004129 457959323 710026482 594096179 898605357 190717205 42786716 984421631 135720446 303327343 288595803 888071616 729054766 592935270 965081340 100146524 162823141 13488092 821258 879912077 169540835 561380873 603169033 307184829 368719289 579312543 78300263 649951434 742625315 172732389 325816927 208207291 294986202 180372191 992863167 210318235 422841901 94958340 68484575 914267719 221984827 338477381 942625944 440714182 257103383 636198260 324656062 818321197 554742075 905028497 136725846 282006241 58431868 289013864 923615838 603567372 283463081 834593301 383585263 37037460 613422921 38866114 590113743 328319891 231350126 703395499 751643094 29733045 67917115 226712271 345514489 502356051 804565050 643041709 842403065 486711991 437558361 992486903 188749558 352871660 319962744 298115659 238044120 361510096 892124562 297964098 878901433 498020260 505616905 405462134 662608990 109737220 120847144 957689532 676137796 204881796 876260720 373781530 986864281 645636394 992215406 37573278 980375587 190491565 499336969 649080939 844994260 499747711 678132865 738271171 465525924 297857565 21994424 430648220 852205130 411872789 677539083 24610357 364201912 919757452 897094309 586219500 259518321 108457256 182542741 198642991 573893778 656326723 692516466 272461113 73891992 781553472 297895380 412091331 148923343 690444319 120750190 312420573 758972576 132377340 457804627 817291733 938986860 134091918 13221392 186192448 885001140 239210087 817429812 596246079 215771209 264397156 613671708 555752866 524088282 582808183 930326198 329339125 482958068 870310301 44760174 788560823 699705631 412222455 850460680 410943271 579622730 516876993 92513205 16588569 81798903 549262477 384641286 692610235 609723786 17427810 22505165 981479710 898033013 612928999 572873685 44641447 243231454 264328232 250749460 392272076 478042899 463536130 495236893 372670004 632197527 192103870 434162457 170351240 114761613 846072292 32646848 50751045 897158134 364689737 45715417 336016927 996360836 684615185 781028418 93399936 392367025 909536564 317653764 618024544 392942153 161843048 462306209 741619792 872513166 859160882 814872192 240206139 532095939 173051769 729215721 342896842 397559365 945466483 213602945 725502102 219537288 229951735 298968575 18303261 762155787 830488067 129233225 90724034 435836150 476827528 589040451 293105543 599156201 572554667 997936672 186935917 744560442 304582771 484961850 372337828 463742894 666929081 295044290 863421687 50311887 236457401 80551758 243111341 80666652 453866692 9327106 605358674 885968628 789447639 587673441 431762012 233125196 83288960 626004274 350802672 540278485 399751651 241643269 449783090 910139046 435740093 966598877 723137521 976694581 183189535 334432975 642442896 862267906 432747376 838800014 38496258 67688912 946935795 50991487 156556907 185573786 486063860 159947540 503999670 36687994 603741448 781972415 324398762 73263362 438704025 169546039 854647230 893444415 762184517 813606795 445580090 161623342 850290196 823490761 522869876 152453867 767407569 472274845 404090889 810124749 493558288 35811666 843129818 7895111 548588997 712565240 404004444 341624507 998052457 871661648 437098972 667290632 21472843 935574445 313976997 698801400 592281435 61713927 678483824 593613157 50632261 232116104 962171695 622510462 849791513 644605478 459016575 541147838 108497295 948557449 107272406 911339193 49189896 705518578 276262829 333818555 568076005 963988373 359757713 795710760 686100030 714252577 614975781 458593697 277913110 657736650 603806060 140789221 23622132 458671447 74891149 865638894 340890914 558575305 1970568 168365110 322408111 851599090 479331739 914128376 450422396 645305724 17438130 860789718 370765672 704094554 6047636 262266391 507950013 436023861 775794198 119234749 886417664 997480390 769625449 193312502 468427234 909887729 598713355 105889598 913233312 411032085 545912861 783730898 91956682 863311390 884035962 945055271 537873568 335038293 160190329 419120986 137741862 69344542 653323633 196543500 70880071 198199864 119512278 509469876 544809068 854159398 34730054 780742597 363221340 633497229 278581940 800544989 78200022 524422354 138111349 538994079 651627315 343089273 659221768 575403767 38071568 256306318 656382434 245743415 798232868 426612696 848317721 546991743 874431518 566925294 902392573 101729653 811626707 735768847 257339373 667824437 772993048 228932932 480256959 731397682 707547242 731779566 152671385 683829410 871043312 87754209 328276806 985008702 990300593 165137474 55660656 782786422 283402762 221516400 308193894 65107247 337933642 583225697 310399593 637464114 781397686 948730864 553404236 428512622 615999800 280969073 518739382 675914169 126269761 703368144 158310297 560405312 944177746 876807342 976014990 78245057 726802863 894209515 692806110 736529007 57411463 82555696 70502269 436683921 155816682 526086280 610570352 93632826 937413185 552040082 214206780 443963374 966613942 549509983 803537907 170095130 849708608 599555679 238037150 746674299 712831236 860653140 911088914 761001779 929494802 310725401 933960229 999141910 47829975 964115362 712552560 337595891 911718350 554558290 600990670 471294465 758533477 879730564 631796070 677276724 901338911 915175452 419062161 939098899 477219526 157286863 945788771 394590182 88469781 126618219 56075326 619382787 994818318 42306842 462743761 441309320 162449099 950092173 548464188 636103788 850061801 602977913 461255062 991968878 901978677 793552605 843390933 647476 18781618 598400015 213190286 697401986 588839307 889282879 817521442 384918987 524649650 645136368 254602613 963905977 72857836 560789569 837936477 351125224 78116783 358223605 83647845 732605650 691782420 254383572 643730147 829302446 203869529 349224194 495595201 460961326 263202035 29953223 121269194 100520604 658700176 403648561 137589755 929297682 665045499 868867100 254661324 206243927 553527544 379801889 666269931 52850929 696171708 839966346 25715552 938955054 632936058 475535488 93727911 612206379 588782160 517829822 155815438 30381707 296091509 543954006 714481447 613614473 267199526 558698345 870456967 602963155 730152454 940254261 452315140 166419273 975855508 630368047 272775283 893662714 459132928 698081197 529617257 812188200 488289168 607645521 999047983 882852108 292463142 845573921 153142679 20430756 26809435 703754381 411377421 585359136 614159907 184264380 882967826 362536654 847032870 903736294 932323600 456148661 14693671 233133161 786596978 642263913 270010429 319349684 561837715 668885330 605925153 223264820 404704198 833415426 212285833 682576577 393039028 146306878 781013490 481811849 279549717 372232256 699068842 121963372 244771251 543964549 334821500 148605098 734214868 368116523 599548018 537314609 267175222 948483374 446475650 419024083 588458553 825337213 350319720 704892962 967592139 106668142 343187186 778537549 225511697 435454493 266568429 626910849 120957419 801488995 159450133 647703067 676936673 697394313 278595198 767218743 386167528 226567665 145874597 998935803 881231348 510187461 375631626 203586319 411706085 589605272 839149017 679850408 323373080 956813618 103236045 413135771 457329255 354298246 339123838 879755309 981983871 65476979 218883134 759954678 818607419 185030851 982779180 301711684 51656815 253385908 814554275 288315175 57052267 242358265 419072430 322956974 169653189 645486336 303663052 266077521 477607435 751836751 362480200 259000177 807283900 562637928 260950178 660765127 831062823 648890873 845758847 693705245 934190431 133088390 694368272 216088229 618766039 605904041 484901869 492370616 932673569 758177903 752217761 890682028 521591120 830666740 624056584 576283068 870512748 838522701 962294053 791362038 848789527 627741364 293148730 847355569 867697987 637737500 131351435 682146462 87157461 569670386 985379910 982633239 578000282 271361799 73909915 377258854 231693297 175236568 614847034 549000837 62582289 706863746 945077868 404856816 717793733 460362303 631028088 324593695 850525404 748556663 668799393 931702273 886207889 159263553 302042773 521133367 460797532 498034338 209251960 654058506 596218287 354418704 793723296 43448124 594131458 419039060 478839232 633198316 115844442 815289248 89851178 881519182 45724432 79157412 532793306 463928943 49505727 315129579 406224175 645728162 393500517 122223790 81678250 854061727 147759599 612273942 532149183 207358956 855624647 95976237 218488922 434806901 309359502 810712331 376205340 163214597 865113670 674285587 444861019 611620246 653739294 933077065 210969768 879188991 659701910 465503997 735711005 469846962 988760331 871504380 807514402 709180836 718460575 969874228 560524302 756775937 748613290 949093444 813641713 648341129 954145402 117554780 344730766 643613548 892135559 292479008 460431217 317523581 172320354 925832023 585704872 803941304 587177105 928002952 517441439 2705198 465918994 164948895 980273036 652375713 187086875 634943761 853375042 460333922 390488523 410978016 937691934 640192410 461321272 719312169 260261450 345615473 687664216 936022819 922970171 952787245 72680502 477406172 870815687 907232142 604761622 913773104 561019420 907721677 60928569 975923634 822929348 83368024 840330117 44307805 350699248 520402331 54923188 426935218 900112056 852524893 602009117 664400437 559304911 821814082 343712130 611683704 419773520 750967294 931465533 596652140 286969207 336774361 600249483 224917488 977670342 180182527 855506113 681373425 152607036 776151560 680953215 392361672 558203992 431769796 572827349 166785500 628527599 783620320 448327206 982508477 362846688 65871585 711619384 357923676 405242949 896034877 247521797 742043494 637996239 812820420 957055351 979975857 842866270 76346052 881427200 638114141 697529052 783816885 713328423 408474521 651473195 92903208 416919925 166711722 149579801 982652004 56939802 149572097 73898210 436930332 774798934 78966661 255908794 29901507 14403892 642813720 625724277 680405390 448872596 18270917 37290116 183675975 512795444 427360566 728778312 839800544 979125496 540124032 922217550 752812554 389702870 861289786 313924895 696563793 138528890 374071822 500214843 134848980 613008063 302838741 474076369 550936047 667775393 356945247 911406550 343974342 886668016 364287602 926963629 880020380 563928433 248695089 442988517 621952888 643134455 203704556 114717408 996316016 259475859 471756475 945921459 436818888 601761569 336565319 208946388 758627818 406940351 959421087 794620123 788917830 183268106 195586557 933872281 565411091 374506169 326064115 703507813 29910172 629246820 29095324 204019186 713688621 306862821 846713518 390637135 393776129 597055339 349970403 758735177 305565325 417137434 288134393 984155676 589004828 84423002 304428963 811463259 546506939 262934089 416111201 961180988 702584724 469076101 418241953 456992835 197719411 232785106 840876604 288758251 178820187 211226658 8416627 132602330 429701631 852981866 353069652 191597811 66742106 857877673 801285572 74092250 859939522 879485427 223148313 456518073 99084960 151832451 500622588 181943474 361471926 347232242 284094083 316677696 385567100 362695320 491642609 454873551 390821780 195798384 620445118 499022287 803071662 447022195 299855588 214109106 830064893 570252299 72380416 60773130 488932879 92913352 803236046 55134568 950898885 962566646 390273949 818210170 857087368 729648410 612224051 465647974 452237350 595624850 451723592 235532455 141518516 351700192 627767320 648822288 718991282 904396007 885537193 747364401 275071164 19503231 997077589 72499967 984253638 143716993 756092614 495638066 219851488 986946396 597216155 530497140 615798220 498604672 302843988 401339173 45450011 158327822 737710748 83250487 715748094 167145870 754328362 591046396 465703825 792199179 898005927 47304694 637588516 599339739 480616588 162342221 51651550 551887480 249883709 323445778 70770010 832621523 904115390 39741240 229494235 194713228 974713641 442157495 326552285 152818534 189142211 551031229 846385532 205335097 487044545 342144454 432434540 864645618 35144518 870300711 177604482 292122491 280838863 2828918 461815653 252035901 251470081 997995686 780442747 442209706 197125673 560506255 820618285 631062329 277312205 438143965 338273670 317384924 9605904 181491138 720648553 319083848 484069756 887344790 341218122 821427429 909703799 667398150 191557282 467656540 690310884 814999334 891455257 363102038 999055765 589670756 646863166 288686869 415539698 245330510 453697982 30392307 97181326 740966735 764531722 801546082 981006780 435351421 399328735 850745116 707065265 539564096 436887202 417365850 872959786 853903344 695724019 415035084 121104368 153681789 341599991 387431884 450348392 507770726 559346610 398183593 135993237 858851424 473450359 623556045 141762032 557764361 620808967 783882181 459851985 971814535 127834380 861853248 922348814 834009188 358212958 960121579 168889889 765753140 845417428 768217142 617690890 522492715 946736449 295042716 774945904 640525681 534137836 906984586 388881172 216398437 92511580 662401369 230131846 296723441 517826708 697857054 158467482 834731631 570279944 677388000 518960048 226932350 293167033 253475790 474117840 893801952 627170108 211511207 454719425 24602174 899219978 549768679 521173129 535003183 990012640 375000513 780815213 819734608 48885429 969370974 997418886 568257584 647170308 696534135 107377610 715671896 412167186 117918560 386840397 738307248 444557335 516811293 212463376 359356272 669098913 784477493 456959621 249766434 108181725 160124128 246643073 585016073 177809955 812002454 442632722 649205974 531172677 622862984 470339351 727967248 348785425 549719211 151719987 318675472 813559655 688960132 51181402 835181093 36735988 575327682 31023488 706266774 657563048 512110665 887996932 227582772 629963410 421359383 19454317 682719338 207750068 175393287 515066975 361136447 894141881 536575637 552158338 490632313 254721729 735079494 203663264 376431941 33029581 44509840 96995367 189106291 106944370 884125251 12264263 187459861 627163694 797021175 353985358 982505552 966400847 110157347 536507217 413306082 880320954 706396349 868160052 448002985 210896642 399126286 640047855 904820898 399831319 114583739 715487114 978286794 610559217 400318301 388324090 953605767 651331548 67932170 728766568 945842650 867568570 462854499 229923760 383405493 677312548 873845079 105068967 413206089 707598709 502753615 627870841 744464657 89285496 704366004 603762480 331728713 111922956 921809878 363158930 325731894 740877542 538581885 238739886 753921416 490657112 965482156 461040536 925289502 648282264 761122419 203918872 158636877 8142466 31132903 251103848 230775539 979637336 152958984 431728569 67658121 298599277 243277681 596408221 505441852 540693529 656468504 486327516 2613683 990436171 33585158 978229918 333104014 193747663 710626973 922626378 363395156 950210849 887079364 768623790 814418800 456190731 997441917 789935373 546599615 17711495 263413524 590133338 645975411 289684755 709592006 505668193 123273608 618752550 57249293 668000608 911034300 655671960 528198583 392394397 726529838 668916558 817148524 9876984 77045420 325627176 653303690 781549186 264010608 971990095 742309298 624439421 567361005 917349738 789416332 936562548 75331540 436459710 201564350 424159524 753540910 207596723 122432951 329730995 269293086 703331763 324675758 515054712 541200036 638047994 540368582 574867799 182074732 324057675 470362969 197089805 119454736 938088585 954532301 18301491 925097463 124336728 600955090 308507617 536318090 407054777 492905200 113233622 896491170 87875925 64093463 154620886 307146223 269309627 928135907 60669575 197061018 753839583 677115502 550307193 603521103 781690027 102491642 92677706 392147649 276778733 356138651 812959020 467191494 501280177 839125192 438315372 775346792 263703914 86155615 829459551 451762477 164571921 545024744 843900815 90090472 823509833 205337796 67524757 986979252 486514331 694347021 864018248 37140487 662262126 693258169 55695033 951730349 347866294 41828707 638645387 892259953 554094053 145195832 3302536 491712801 530403288 544031993 24016168 120188394 782122592 287543272 120420630 639650530 644741803 914188478 61328902 277602704 543230527 906162454 233782458 388927013 672339990 95646855 676224430 801400926 101090621 509979615 402298810 212249464 482479158 395217573 979652499 595678458 963637607 869006221 219673887 85068424 67335691 641420798 751656347 388829714 927580426 64428811 47332894 752504417 1421386 43316780 505208961 420653779 955688475 43681634 311844643 135309894 454220381 938035935 803944797 470300707 233006649 533375957 977337923 414861512 303525676 179332240 362233053 860280162 411812293 598422820 491710292 719935989 45982889 880901932 475910122 995472016 849431308 481672534 602270315 28288286 391228330 325129560 228231033 867143921 567656684 136013509 207837878 386467480 65644158 232459958 981723848 851985925 385595005 107944432 185558545 376053160 698061270 279710167 113833571 202708865 338215240 499716011 189517901 682522238 401709238 536968987 811626442 223772690 118164090 25671720 754110653 617771382 231319570 852133473 296309333 302935819 724849145 860039470 494930667 327305275 802351170 447062961 938521140 183666549 833921456 197347334 892733534 248217154 883863476 797138200 292333017 547280405 604057540 715126288 543711543 580801240 427338952 665070292 336131884 682578799 934466752 789370003 645919537 464267473 845460996 99268595 207660664 466489465 348989240 319236071 615401920 503092748 233455058 208726301 430533036 416957622 993087215 938298175 52309956 915552335 146798796 596289848 291052601 343614303 363737140 874472787 929107164 786753436 750903415 663448280 469676503 226180809 189545426 347519358 390066818 922461809 412177463 758352722 487840546 813935139 690397956 762555182 76461973 429813740 678269184 883374961 746434692 499763170 55033158 136470708 993482504 41761226 906511144 22550303 399597511 505850326 846108875 76993804 734010380 264366763 700109754 532704214 718606861 918383645 212602978 629170737 463572275 729589082 620759981 457088824 584164431 117175751 426555179 191552601 728727377 689935852 460684952 114357406 533605633 40736901 434640076 680326059 51111563 986909184 788502586 23787336 909685887 356801982 984020205 388098164 286744843 30777274 869753537 199032259 195550049 498691831 330150772 654937015 176922939 3754664 335291952 143743651 651385185 884383527 518547015 19271496 284082841 599286036 678236334 411937028 595211810 733677352 317994997 427536235 635393096 867874379 265309304 986669708 357238389 747840622 737842194 2001120 225479792 535822976 760284334 856180650 387769163 904455366 739394711 22647573 680245577 804966961 978156408 499288573 69552668 450167039 831768588 141153852 730858201 957807147 294142744 374288139 249145242 165603141 935973334 464918460 842513849 548348451 295623342 44716754 20426234 340534213 606254810 722268066 846423655 989153695 406227558 850943746 647706155 902723422 639504097 481018614 412423868 963771222 812883957 871356659 744065517 626813380 998526142 75990747 302402971 144613564 110914770 594687797 444962655 712945255 905125390 372176576 376627645 445178434 638150355 791592555 767243887 914162849 545007509 151555058 681851020 295919288 598929236 536530303 580000461 872210208 632177808 960109091 543984042 262287848 510474890 361365684 7827452 435675751 545629713 611976515 756663176 822859790 430476585 421267273 774761451 424729319 620942506 616618079 874705275 37937946 295877907 256271839 11912410 969881170 65027742 701312132 819750084 519777464 579728701 16454903 391767689 754569173 20228666 264965270 24948215 744134250 563582186 379234786 699033733 506796570 643516789 86044437 872902876 322374974 940978381 680515134 621480197 712403925 483071731 32792992 62041417 748124769 196625692 903412508 38831740 643530847 753501137 11060049 802055961 422498851 890941031 346496383 637214235 50734004 143110123 318075913 635762008 388630306 719653346 646296512 474497031 925880223 806905738 697606478 36836042 996716556 336789479 532795826 27154645 375972620 179433127 14420852 351978250 592615136 235389765 44999509 994954829 534943524 206141774 647266502 527216513 849217752 330062897 519952045 85069821 268517343 79400219 877564188 311610949 247000847 814708934 927039844 47673399 286828207 56932792 158740973 880429144 412687276 998383914 5694739 912745131 344178141 110162222 596470533 108835363 239701614 805116919 308159339 330979237 253599296 990383140 843382762 473541197 14199004 264205130 578942439 322982682 968048009 745339609 779890380 891175127 347417573 112338106 2874079 658176507 512665856 464129968 576087676 389911014 638993532 982115710 565403299 596042439 560883681 404842050 54669231 772379787 932013879 807926463 711742174 982334251 520615910 968394871 490073029 617313784 71855327 538112287 81956769 907750340 784194517 619246543 205477813 918420977 992143400 663221316 997791764 177320960 134404252 183996745 507251956 512612097 748244033 406601443 924656684 231672491 728381577 586660138 290452043 155633603 943325909 535125265 319025669 909170358 131499940 347506574 786064790 708749515 685412096 634651448 912665511 900114884 323716524 953455043 471186511 739934161 241365811 693841653 526461173 885496843 291953616 23126324 575760938 497191202 970180680 44567079 566381890 5112869 758857769 277301175 244803337 98035358 363436453 420042525 308380066 737055432 619967726 828073732 552406988 855486490 963510402 722941170 971940539 517747018 497215118 166370091 50230825 980172334 243566121 539767778 399931135 210639409 323473103 336406117 459368302 913760478 370471960 727073586 467283151 29316144 675860615 953314533 62422384 477713044 310151376 226397538 605897991 479412725 516940973 355730282 412621522 758737891 475252856 226123035 231115256 425081118 124193249 749576410 811267825 21022229 332471818 435025127 661384672 845458097 133461119 564484607 494598227 383731594 240398697 736302149 499903517 373857553 33998942 773090867 378620929 754580637 845267722 43443247 109500234 638112385 546148241 76189777 980932321 376110702 64650159 414378716 349530866 971552221 534919543 200375055 14160947 767336808 916814351 79477254 919569328 764846040 75789163 995451564 939485216 489397863 506970818 794093742 713676004 855520608 561425993 370586521 662385232 460890859 246071014 596189649 406952387 610351241 503367198 371363087 457168090 491309242 543402240 549775081 36526187 125712686 431736794 474714922 455085690 520155625 443389748 643036668 964869940 441208909 475366344 565979205 266997434 547369451 235846450 875098171 549722623 769729181 385780116 226061602 530712579 231380159 25320568 335185715 743161473 50389548 989647189 593195572 185901529 823126274 69574426 814851508 776068088 249883314 967144739 984238973 988354448 347905298 47982789 373680893 508633522 616054467 585920904 480862722 248946862 770755581 666012198 213956713 17749786 879508516 136005287 213025616 808561556 567636408 391651020 952400591 910545645 379042097 807226552 67226215 267745737 402918915 987633364 772845181 828262648 379462113 258084463 458367416 677654933 839211575 65159493 954930413 31873290 664842314 94729725 351393143 548351039 493130094 659097577 278726975 209462371 151895119 962390318 933197820 844528884 602861699 500094430 127910723 549004725 350532645 890625299 248311714 893840723 320045764 728110566 885158802 435381260 214296166 455593828 606115419 905985840 331018039 232867204 430786506 743186307 189254644 133541605 714969561 639107944 967508347 898250148 361029212 572176458 940192457 573333183 751306468 6688585 696949285 431242721 775880303 696710740 24842475 251352265 118168066 177837130 678601632 936046759 857329162 951298612 910048381 393650126 110384536 360357804 904690445 193693941 589998595 63569675 546440919 271461118 818439472 879831184 95232898 174252301 723229559 116035095 62892922 347138141 995188323 334243811 149932391 226419808 573105374 554228427 446276164 857527755 81848998 298253704 215094913 266820968 738210425 795569368 244453369 119860187 866828417 68400862 648425450 302442703 603057588 206372052 350858694 281392942 952625487 768417655 66125901 165223285 811452507 723599679 460944270 104864080 173054662 642981748 154881144 322234120 528327475 76969720 429228990 462378477 530023908 687153172 64899952 265046584 385749893 461576121 563900220 334917395 62298160 483742808 761975410 939042679 430012051 110229504 790482249 623136985 918158975 870698389 253742729 906904311 486667840 750926871 753580816 873624501 828854076 921587461 805190341 88034747 785568770 579266983 784596045 104818013 685691543 912220578 323818763 396981921 573076991 584430285 929120741 691907021 699510850 959703007 281089203 365392374 729644583 248762977 944068877 574996625 198467560 27191115 811790113 435421827 357908736 391182230 710708690 896812732 286665012 988371895 796915223 84822418 606875481 222017324 487234660 521058338 197911118 676330353 189521308 766769201 481121260 281582725 914265262 82697689 161457071 38586470 601571950 796922437 894746328 69649024 797373898 281686610 545248469 247934249 162636986 980111652 710944282 487806230 818315282 833239341 640983379 387797178 922635649 26407687 454357578 983009850 161111407 767291527 387200068 974611278 298260860 56522775 933093178 170861135 654612688 981260019 937128294 747907105 978671097 484164844 57600727 84106913 869324066 919134519 796935905 708040760 889299465 663399326 296921762 507315741 454851930 587079580 51663888 830238591 978268517 973388393 872290905 999765960 645936347 117676672 192382737 972812822 452836968 618707113 64419872 520116987 446603547 819733320 705710047 921703433 890716721 63157668 363993388 566129903 351851779 209241813 637498595 709398997 902683185 769246299 965780398 124628916 315325177 540581321 949509997 915941491 896520836 815186444 878858064 11009034 622341530 964633155 296120825 724192759 563814196 137267706 245867479 121748570 884039721 313584491 392691588 725929168 861986439 315941190 404514141 338037924 938240748 60143720 889536144 749101388 321012061 373526304 73262995 516387294 647623147 611941707 242119723 25481028 397812627 629065412 903600592 512513098 218434971 557408942 577221061 524275926 656195991 830669152 400377506 831233713 362886970 565294805 862990602 861016944 549581250 892031137 312759741 580905385 915073593 561853767 91802336 437524676 864469387 792721846 457543723 698124567 722770829 73372539 539392374 235839255 460853711 692528747 242547706 111362033 314795692 548347372 75522828 493652285 625536639 384148954 430276755 348055617 205739652 480949665 733518568 829478674 250209352 735946419 687007945 312471600 181365428 863251517 969356560 270372698 620438611 324953053 956922111 728665796 200194914 346579632 254342458 76371352 935503556 974524791 800109942 141637606 633676926 840077494 71903835 959209151 105440253 90600793 155733232 629517176 732275943 220169391 835152487 204666955 612661362 971270706 260223773 149352130 84795857 161274522 312361462 449181565 687285705 538174410 93599840 8368659 426900486 855169568 139766539 594161577 401207262 256860132 789987835 709244119 466171588 93611178 956987336 703056763 986590640 754321646 313823728 485507934 868196991 696829546 935920833 62739245 741708929 802774233 878552005 32581333 888889651 184977654 882159568 243276116 293491775 847656283 596301880 316167862 685757560 556420424 428188875 211784430 360231182 125213282 293259937 564041758 380894560 648388501 689849162 261664337 926903807 654895883 57931145 595501831 146230596 294942338 410285546 273207457 36837915 901051256 16924684 263001112 134688789 719590900 449186570 671546632 327206875 790723383 334014133 632788467 12481019 535147958 6653023 821800130 352148655 613810444 205747973 422911594 433375167 225286791 838884723 172273335 140153970 911129205 148297633 333800916 591552658 201757264 715256410 387516025 852784999 477329527 943405507 987866237 564526637 83813064 939290592 42040427 185029670 101099526 420312549 119037199 101224680 943739614 155004404 617182413 986081698 684515359 756116545 316256498 461964949 506576997 690276182 475135938 685910870 577820268 110458095 475516316 31863959 771885046 2037429 100397546 589775159 328659368 60740662 200472179 83866089 690371961 506931 396098740 353247168 582906595 953012722 898538378 296192429 301704734 934687688 26878305 262770301 327100376 298488542 533005504 985688796 371034633 922925192 331101127 487315535 522555685 352925283 520672619 569386794 847768158 691802787 821295153 559308992 57600814 343552814 714116278 83091244 173673458 861344296 601709956 830506077 811012611 900478419 370975482 238109056 960954430 112672747 370712848 178809307 600050373 923907721 607190860 945661530 12943892 489626872 95567880 130184875 194228054 487231457 73388706 413404988 198021517 642935075 129086509 936742813 995766753 999087360 657535206 771384383 777791857 129937107 751423929 393631534 658393480 96987432 443942862 581173263 40933108 180309347 582121019 430048769 731887284 45967728 816575878 831734357 394798032 522300613 453101626 662905315 285762293 8131218 739451968 746083107 399438298 916123182 764938024 38159152 100400448 867453704 259733710 926589730 16353800 161033925 661639662 788794208 481303971 658299181 256023343 129073793 915327284 357948700 928076168 417844568 378973187 899664336 263834070 542380926 174311658 875182011 146139737 760596436 837216279 706442661 542434385 266541325 697111180 601111544 652949999 96054724 252314246 376930848 387904780 545179297 875234010 855430304 996402407 389057063 851385108 29023859 909925246 417183606 753219476 529279344 687846872 451024536 130297256 360637657 946591668 108481970 110234891 275167085 615916008 490064149 499983045 295684717 903720307 94041157 677080297 868085166 644396641 263177666 609840263 528240287 6856295 784363264 559986405 445538405 38944325 281137297 786503480 835068791 677906231 655913447 667074189 70848029 963063043 216389151 234741433 151954187 957181995 434731094 436452037 318394000 614213526 308113214 509289105 411477283 77799121 693853069 937270507 35513287 798200530 824542286 747403019 823830272 471335471 506218060 577126992 580797490 6360750 144311382 367030828 10948656 382827758 264352242 747250304 874473844 757671093 180919079 964733895 951761722 302968511 433924757 203109994 657685468 556845297 653064452 915509146 809824406 597025332 28761757 865829759 359709423 228237528 231594842 232543577 706513486 662238679 823400048 548601044 928761927 544351808 653418967 18703510 412919780 102809335 924633001 542252897 141734041 613434499 415104134 639386403 214660753 734323499 98045372 787265311 92246846 264761453 240408600 225697138 348031771 717298572 131494697 468228064 114905619 718462009 844135634 855062421 723869670 82461270 559046318 113945439 897794070 49756489 444724365 198681498 810772551 695782237 980146884 863158070 518466035 721802232 569940374 529854864 882200615 125039513 967992826 509780082 117130633 294002943 372216144 470902711 601802208 835279100 877818153 111874414 11565159 410932312 94733561 997135520 931922298 620699216 962157315 590971515 603535007 508070364 508917064 297291787 923148508 842315297 689989067 621321827 909964220 248663072 299109157 984705221 695215974 94976530 649930661 247920906 726610151 523561712 336456494 749548600 598223038 138711302 273565682 682379703 753803285 532900021 210611299 222590415 744552799 240573987 479405972 460293356 643570366 991787004 994184773 259296197 518132608 253428772 414498157 844961341 308131062 895356434 622898722 8732003 584534847 4372477 258058441 428353277 566693939 563756505 816296698 436971271 320626992 98064152 649113113 732219907 551237193 165347453 604505330 355703244 159841140 250067127 241483048 260097496 343057751 798380433 439988122 726228214 753365373 632840507 867212587 324513712 487234828 443578395 925253770 569269540 27978026 389441162 507194430 335478256 694703983 192345651 602583696 859180278 384962478 31128678 810924037 33032318 487072404 340566517 677473777 900248477 488257640 749146106 790744198 699607214 741633617 303795845 737746082 362252099 982680750 517562129 555144225 351899798 714655961 91462924 227430305 904243984 3769267 30772345 994834182 692377717 14975436 909880905 732527146 986582244 377450346 182648628 104326227 832368909 631179751 311561937 940749853 533283456 743978779 492894611 479891971 390803317 600961260 999232731 773013117 436888606 118926345 699745376 1344795 5617492 818203233 132966501 13657926 518372209 268809136 632425828 12187657 485501410 92186488 421748749 191296755 672256737 328667415 89040066 71772976 489977467 836623614 38326557 572733995 37430927 772572443 424758028 41899240 229709153 675442403 526295880 423507538 364163291 558963286 105252910 310791440 590017310 458523643 116644452 353591662 377640787 280794772 81947708 349527052 356411741 961165105 912525321 416242259 213987536 661921006 842816231 335152630 254275875 446358328 492461123 421755620 730139096 518038903 488136748 944279822 450397170 199871979 249107186 269754520 356775135 307624968 198210547 613070647 607353783 829751069 63884543 653633685 9386161 856954525 550550822 854348959 64920339 102690847 998178840 384543514 211463419 615590501 945469990 200699335 895575363 809235327 357322124 440532273 248047189 480038426 501797106 187291701 276934214 505045844 787343607 703044800 151166524 745341567 728825153 178532419 833676690 117245551 376419753 628196894 79507139 698226863 607297473 510664612 440859106 922000216 441449570 959720030 193621002 810216270 814637240 683152113 204715131 845088588 648334630 761293845 232369803 796127046 330669250 812370929 6310274 91668799 695203783 850797455 760472988 187888896 181157290 494498955 415387525 187816904 348321795 587227913 301852274 967106801 587192961 364589056 689715140 505428855 465517456 908445398 499551905 598185152 156533630 447391527 408091528 637398454 264050199 899380360 118486135 15463749 375096868 620541844 778020843 157956446 700832944 759889113 195762886 396745563 826788549 195705238 72277068 951312584 29579399 218706358 870357663 284995645 228944204 32824301 820576475 32086913 849942461 50638039 491436797 622557748 273467144 309366767 936214173 84396668 814803544 612163471 545116290 387576724 428106738 541626381 250900151 613040145 8633470 910873648 656806414 355018278 795430848 61565691 330750682 682338162 580788725 344071801 662061389 167172301 703159819 55488509 702147822 302278977 858634070 391132918 676465273 434417255 249476674 652748413 618611852 465422316 11432780 162257221 509799758 994664147 737918681 764674702 960334405 568638561 335250463 142100631 559955914 5803027 72942337 901966229 261182925 523508539 850563198 159439560 15735926 57739907 221614675 175496430 395193863 685332285 687852523 803790662 16329780 250320648 198078241 539142606 427581837 960616490 53002711 550513478 40851558 614189236 210729005 2672071 851016471 209208879 793998467 424785945 350432026 323313700 703955435 317547127 307061894 462453666 111093320 47151771 912318331 986727807 545344477 728246979 717265165 974887342 481010458 273861792 902502788 854818165 86577528 285908628 592368001 269348948 441965531 90157917 736848425 416741716 690642396 968608854 745210109 753037096 675837011 165499020 432107694 866392917 613045972 602531442 474137765 620275853 232853634 987086219 987712815 323363584 262678666 192427110 207551971 207519223 338456699 92841127 3603782 409921879 70639941 61523090 321559508 243922376 237178922 555447693 678473859 95581281 150748661 823292110 213023422 102969664 376854175 515876858 730570630 214516476 581245818 636226127 702188010 106514769 692601022 68147618 853209857 121967346 303382967 960318019 298209908 67929851 7949305 937244992 684639087 864239170 216790999 690491067 680746458 568754627 118596455 321720779 4342140 701103578 879518944 685846959 838019242 817559975 204362116 550120269 128225153 461598368 691291819 31006634 475191598 330188800 657805912 630311598 489334693 460596657 563555580 558700749 884309550 100530639 744337734 146668126 86922387 900018239 293673012 620224736 574914967 738045446 97210074 576183666 922355511 366196948 163177792 97693871 88256337 778660266 652042396 28405937 419292931 494736528 740912898 27334533 8075489 857911536 496675507 10536161 959925403 775817730 347033999 388217257 49123113 689427855 495103719 381378347 469883702 176619188 377629553 648991367 426320700 622371990 842165001 483060521 456689221 929183532 483727758 33365242 725551383 355775527 990433729 407206714 598918983 985823791 341783909 322026338 383333714 248983870 25158728 333471136 580140715 733840772 273644446 379123393 750514308 777428630 223274591 505537849 689007457 822944081 166420442 156087168 364085915 535574176 229769441 439842883 754082124 101613670 266828535 261194289 940495881 505257240 714010908 604343302 100762394 673544488 734991913 300377573 969489006 791215376 230868598 765106451 133741958 17029926 998707537 545825965 359857079 911444986 19156796 633861439 501011132 690039489 246160270 583848462 455401797 243694442 901697406 535318185 733491399 726003356 601738787 300294123 916167005 999251685 924482254 138944714 621425532 701228495 21598393 858186602 637146900 492809778 452160255 715798573 321874341 179182103 895148457 885074449 460192394 707981248 80894562 308509338 683787172 970752014 745573988 458666326 749262051 836941431 144668143 393385143 788047066 87823474 443946535 197309926 927123384 472613608 14856515 570116484 938671578 119971411 640728115 184993570 892295453 485727521 782702362 767472048 895772329 2887422 682327984 356573708 896862536 211390814 392299859 724206311 32970691 586653001 13386951 239917322 443793340 479565792 976670249 218833415 787510993 314556502 416100875 323287220 61532287 428591865 862695065 979398693 316622519 848952565 702153077 696765494 43878058 295258463 895616526 311972883 597242400 206748098 661923988 825891594 346838316 141834682 333619915 804991196 968478324 778180232 693738119 460961836 38608190 89274073 738080450 537693011 830333445 622133779 369134650 761474532 529622093 45970572 88852796 169036403 879147894 266794924 656675996 338168083 239542338 871155944 363693696 983864334 832157691 975496237 120309861 640259901 386567416 736792524 494729742 542314392 150105490 891017898 595016582 596996258 583308903 628587300 609099583 355312599 378836861 911131027 436913341 600991534 204843174 244860418 381415798 628401778 392828490 753972396 166008816 658659961 986409664 798070673 997723946 664678331 147734327 351542958 408295765 85731638 580441235 288575883 250612007 606599837 220787385 292557708 521380813 287624445 766363260 710275795 490496334 453632808 560863778 158584867 387130910 786256337 778660874 559177317 645481219 860297620 456170911 635271462 163692027 681084899 828979761 630248565 989847633 970517780 755057961 881959393 635787633 161903739 251553375 504071437 797184284 774502716 856254990 192581103 25453511 200410300 24925115 665525364 647652295 673794038 937903300 714766398 283595572 421771529 477041284 694695249 532846269 629279053 322817490 980128810 731356602 205505807 286839865 171746676 468314006 281239719 719903791 197768043 178806761 848864712 920282000 664988508 823190226 393607261 496260417 397498530 371981404 841770442 718045372 925512764 694085509 542920140 970141795 253311675 518567759 844070836 295808083 341173129 295780168 250673376 365182594 200374633 653233340 878874203 423735089 804318627 892049567 522470291 254367373 616107269 794416562 70628950 714120680 241157772 144225232 692628304 179467245 384377694 438610509 926257756 138180165 495700276 930479638 807461096 532840708 482240819 354830624 162931927 341343822 331755982 228763398 402205200 885126162 376638566 450033510 766405458 979651142 16964318 336671321 449223478 923267056 427934915 198314429 145174210 997231054 783313082 801864963 398559031 390953231 484514902 547784565 60695475 129032156 166446462 32908389 225774705 478650316 47271122 756945955 724600835 988380196 183773797 720059350 39968728 140013101 563033852 343890318 319321457 945402835 44027249 133201528 17907323 130042553 832880906 481211175 74034914 480335889 243967192 849222319 307181401 513022870 711948447 281548341 227766221 53744929 667142010 933413312 817167669 620214102 711346222 688832113 412873437 344332342 468835577 247740135 778706526 431884560 949785281 39309671 756518243 581324260 47364142 592780578 899951183 787768830 130318190 663946905 486828882 648266407 897546207 318748556 88974647 699639245 243221814 462471280 637443318 639099049 896123061 433210545 221257945 109662780 313023535 683024602 800708098 148976817 168323304 315353496 740572076 902595781 136060490 573647800 338761577 338929739 943426412 157307358 611123989 167866263 53046096 850788316 832771051 363633079 498691274 730111885 228169990 476576468 480611449 811704576 416879290 829764770 708843712 258079032 540713545 480900290 678151880 183120030 299170904 495046675 6936652 290271612 178925234 792133893 358814054 854801559 63453621 503896269 675944903 744405617 717110729 89634584 482710297 139194902 465105048 516246512 371087887 620121009 944437025 584565513 306567768 156477601 942898075 990089066 158140879 336129985 962543838 667286819 604076826 362125658 18037591 182439422 659889555 383564220 579075568 170813923 116071734 970639409 780876326 73808713 681402690 413486372 218878865 922626268 128932320 356816623 182315538 464602795 166319163 35015846 817843154 531712951 331161637 831047557 165770999 568105752 523451944 59101500 943866577 639360676 440585461 366982316 915079881 358859191 377858369 622586618 19543866 732044352 946996219 579854008 531901380 822721859 226064090 824415077 202640435 894940858 486013374 459417300 345232713 449750990 635598179 619667140 224211524 64901241 792965701 146547047 319971634 811861013 400566647 246223723 570449233 527873667 680182321 338774865 740835340 937461945 746196190 430326093 564609955 518004397 990536583 865586907 690480736 128752890 433195315 722647772 878138840 218440918 603189293 927437075 563614533 323888329 500391623 830470792 847588030 445128470 935258284 656032888 557438357 364254885 135921592 371993395 524526161 577625457 154190872 594234407 339295986 776359195 1302562 277447836 106100495 195201238 519612696 737897884 977065666 137398049 97333104 394678998 126279642 126472973 142230266 860970578 244368187 939712646 788984768 522626653 960334483 686057222 910082758 182902966 641279068 152813335 75677723 483398070 783551600 118959754 309426832 641126817 151594421 888169114 455611180 234796945 449358996 997624327 890517596 67926465 638087140 322920817 300219607 466675043 568000651 56680426 67301783 439520946 812601552 57399072 374938146 309906029 829337394 520691589 371684619 356468676 450026991 835661894 573032795 506593791 71118755 382138156 549199805 100952640 882414054 825509917 114683117 816084701 446297782 102915026 591084019 564625742 748357980 482895099 324777924 281890841 388740752 73674507 505211411 958570153 911152562 818908434 19430816 870614692 527019125 620337413 802451896 431998594 192321522 2266219 420931094 680210611 923423181 672759399 355132992 326357526 535027302 876200460 579824111 539932723 864963778 485826323 430849464 797129876 750435985 675053790 936438800 375358743 19105875 996824216 330401851 540274865 700822726 723777909 693052627 31408097 794432931 600277008 24008474 647397956 722655506 766746540 41682580 334815672 359773556 260114823 935432802 514670667 992287544 609484303 939495663 92648267 331574671 842620625 356962449 890992681 767031903 449083026 894299731 754742263 657664482 501537722 837149447 638527401 486655296 38381225 15133547 142268872 268436548 119203264 556341431 796024757 975276657 781732243 59976377 757161166 180069441 406205296 375860877 873471728 504244115 278572408 333052655 539617298 513483886 826770561 757562309 625108760 907248477 28938104 852912426 886841285 111788295 760742597 664577481 968992812 600893864 455684136 88772551 17027079 395105837 498831159 677793393 374592459 684805666 807839460 359555377 296629303 30824834 871354054 632083858 578087881 749359167 650205069 133657896 162793592 596013360 587654148 595407177 530536146 934220284 226180312 275314844 98059190 970662216 129062116 571631944 300249396 481695510 210102153 883356060 825714829 541224015 357431778 315137732 5130328 112784231 101324960 252007473 552612177 746435401 479500916 307524864 212677383 526424162 993155551 186248282 284008283 558243144 834320700 743962148 406248981 254267948 519587910 161466425 75646550 706052331 662695426 725672570 24488795 521073541 631072184 678759237 665055502 251053325 681920847 454819110 369212854 497855023 727256641 312321674 60625065 28131955 410896251 871411165 710908168 481709043 345147375 738123102 641534512 636608140 931674615 990752550 50375550 722643952 477661799 745955281 271525667 470847519 713055614 29343067 879428445 418987547 841482629 779911519 859876725 368795458 152591461 845444022 68725732 607010835 89992676 19097268 729131737 7721331 722107150 762906153 469944364 749943209 943136960 428379481 744931909 683738903 591080809 328244873 735953545 404717980 400908506 89219637 804141020 38277516 741024823 639574719 463618877 58153133 382611364 72354534 892039471 527937254 922700032 515387161 175567678 939214462 427647870 973255138 337038123 597231875 993288318 923810889 594263225 425743794 400781105 149956125 410722727 42091840 423018716 786945474 282314342 56763460 848629697 39646189 325735379 780815197 869793427 572885748 865440616 509599210 842721380 762196751 570728068 490351968 358851532 710492411 578226333 600210435 108323548 404251548 164693107 370287425 183463815 228210337 460000926 653771877 455673257 130003927 236132813 435188187 843177781 594896914 390650230 588401608 307043344 785629481 255573076 486945564 127763102 897578528 181488908 9770313 848180076 433329883 832129900 996784006 83617557 182495891 463462400 168662631 905580915 851249790 41311111 315483247 943686250 745682321 492136200 143898349 86858715 12058557 76328135 520673613 832154026 409522641 324302463 340616582 529177228 829080080 427851905 906514527 294798444 161165326 100657601 393713334 969297431 941629893 267385157 279533673 780447617 492951516 198215807 34142753 653615926 149168915 916943286 281871857 483332361 142689838 834207396 510497212 904739811 883800749 39516596 759951354 527855013 210654170 97488245 311106356 873497731 391681144 957153929 127964907 632722216 806845445 826074635 878115210 901869917 326082289 348993587 379178458 214327424 533952423 977353618 675531192 365453773 525227447 565532461 83041147 270324803 915305788 799949950 867957718 15647102 402281743 376130207 552364658 171431739 382235659 603635671 622039889 640466328 191363230 399483714 977429905 449778206 339389479 748086740 463259409 145073385 489267269 474178906 365837114 724285564 312076667 116242917 823222448 456794487 191782281 134795796 759052068 844344935 565212548 931111158 978752131 299588984 185340958 8596840 877593106 653036340 58175651 581516985 448251184 333977892 376794832 449849144 709928132 267716215 979754089 41553056 427271137 511703462 654244202 470531643 491395722 361562331 321072980 511447392 647448129 352193477 735165363 212435124 36501754 149834802 583899375 406563834 203522114 340831232 590193444 206035210 786814973 324972092 644749469 340499562 934991079 311725034 442015544 328565450 587708835 214525400 513328555 133292000 977567178 618635894 431511534 414417611 205107609 332904393 334452332 499933801 489495229 130343151 887822774 916704393 442448571 506750787 924034614 67680439 941677547 161126954 457236871 381003327 383342091 553779711 984207031 875917810 323763956 168323208 112041747 126205644 846905549 332978775 429720793 481421596 985401503 437665164 900293508 76351774 291087430 61782308 446945396 855204309 83865629 867537005 665914937 907977293 270945384 587320756 686168334 454210100 200195163 894008577 434655927 115992426 512839210 669078462 730170132 284042475 625515093 767046946 3537807 807188840 337395631 698946318 835994404 401608591 770217637 550201871 317725385 540025613 630674622 534082178 215016064 972859126 570722254 671305676 150004160 870577283 451695178 67605765 625691844 914223751 624153472 606150838 775347960 80602018 11885072 429370407 737618146 852930121 698903758 100617185 967561937 286327506 348020489 266404196 863829504 549434180 706452297 577861162 792340423 517983718 276460825 685244483 321730375 529850827 183565573 367207350 132957266 964713914 342586945 128950458 860314195 346944386 161277549 63839139 50833529 368172118 16330635 393064824 492807287 472043938 302329958 937632414 900500523 6583202 150185296 353613734 53639700 921550547 767150708 173751348 201884738 407156355 167343046 670341056 45803260 998716028 426334062 188478774 878979460 91517892 254182788 680858768 965016568 620542516 284713823 866686397 806788746 129043654 687681696 815593598 984706713 764582155 55527412 615785592 697158004 426480757 585543941 244474173 204473459 791631750 378344536 424225962 596605298 543977566 1261196 725157267 200892913 260440359 557075982 651994393 409699126 88124234 830197550 5055703 117559066 956331719 559714977 658779769 865192008 417762205 812491860 258097428 425788212 586962816 7634552 400362083 545570793 698102913 54963338 143059005 689930594 408157069 13030701 520386640 382480110 488503453 334023588 690745224 280583133 76761438 449379594 814893983 234564154 574640083 348783399 204103633 567141655 535562545 380033265 948215065 536741144 913153125 599106675 873576367 672147447 86080900 364580999 329998095 7999256 266853819 2251928 392586859 310505013 458622257 948949870 834767245 795577791 180801361 466574453 22755881 66502691 130414525 24648992 520804719 115013530 400862700 792895832 43247519 806218843 589698375 528785710 932658891 53117256 377993267 960257985 517756587 957219256 212111337 201235138 123680089 830532130 566798464 84614848 896771596 728704198 829950051 677137160 93894147 659451346 345144106 336196213 619620532 530107217 800275877 538528453 826112455 639931590 213682826 405006495 36372734 972432896 751432444 893116520 987593270 53020271 701920738 16035130 440199834 546321016 592707530 297312776 203915550 260072479 558886625 796037225 697294866 555951388 82491069 522067485 262635047 356994957 770012873 908594046 497079024 171589386 15296265 481489569 275403350 649063987 289676249 497317584 48819277 517082415 773583156 30476501 470950173 819079081 257574309 860251226 887254162 262332706 690178970 527570887 584861079 843497054 21034558 59039763 617233368 180445523 399583082 682727726 666253852 26654044 693598881 884930213 341756593 975698012 728331114 464435968 51488188 981125456 268526775 19033826 605789506 236315460 644499343 896980538 486734429 593971611 548023631 900265225 3479589 156265786 989535473 124618755 308332073 401243903 537333362 69957013 649644952 3934772 172160938 707786193 843131342 549325290 186895696 563971269 752637269 339224028 502992324 949972488 272014898 62975940 602259248 758045822 877034456 588830205 954305039 827499348 824156318 40184471 787615576 492011562 356038991 815240861 718648494 556665238 798256417 735301764 267110966 671685495 80169899 451657997 196677731 29731535 739055222 608667258 567608814 268308078 723031263 52951001 566455728 109295159 171030886 677600681 535826449 469242974 210341410 639847084 790712404 108961265 905965522 930697866 250369503 513477579 120225096 141031416 316409295 651677826 691060274 731174242 6103761 3275353 104575598 539016931 382895515 456802759 133356467 262685968 847896248 623225917 604445237 923445271 310743818 318653548 486508889 626520659 351674131 81945960 415001463 836293625 938278907 973718236 722294941 281273192 712726777 977858568 380386367 285568652 62377309 714590204 631760318 809125180 723583727 438202762 312331679 953382275 400567263 397241341 82204980 311378624 232527755 370445693 732345796 446936681 526262739 126595433 149554087 887320836 73246968 704634224 81963573 419078434 719867612 452649491 306743026 740281948 802595176 751030632 283741347 27279925 994347460 122784827 664719130 893520179 205548806 366071194 465808286 698861985 120413891 590848082 245166810 111311879 639430658 57543584 741799902 823377532 610628759 802245274 861351200 182741033 927841967 38227286 675247833 17008712 638164269 275846791 501787859 606253548 216063649 697927092 660429027 111760527 143593724 898648757 242178622 319918311 61296585 789445663 686862582 66980584 204330700 815087282 969795346 521097569 860719071 554859932 597078144 886289045 634771842 426878206 354380935 476713960 980871151 801056451 761176755 516040581 667953296 186867501 772799775 486638120 111172007 259139763 600571538 402715166 91574971 959366858 427347082 30949012 803602554 228419993 360315532 28287558 222981558 712256340 562747672 58932003 285557372 266447077 764994993 617179173 907454542 944477139 795750987 210498461 683898543 407923457 642017250 675101906 200837366 630972903 607140708 184004360 802950576 753295248 865708186 256680743 37025770 283937308 650579115 836845300 976308721 294033389 86066018 905141488 475350790 865483466 726654497 247705590 781321405 488684541 35558056 621189535 771951442 324035715 834020045 109026493 206370466 527465293 779584057 492528501 892698700 866760510 972871650 592743434 238018649 669431762 962644046 516222619 454243011 373412391 630632312 833904623 443445190 980832346 745637316 247894560 994947514 809449710 965003585 559875686 464045423 943102773 876552046 416050213 644597863 320241362 851456043 604125911 630860262 258614551 183272084 568677998 814737118 445307567 966124084 523209575 865018753 514629674 180634584 269825150 241445224 592641728 531260775 745066275 607989296 957510592 80497657 899904081 728121601 130107970 501797618 349335966 332387549 335459026 533370596 359009982 105995528 140298725 478601763 27407432 553954369 537086646 294706674 498926847 817050377 93730529 517559981 163760223 377168926 72548676 565233952 578464226 107724192 929510785 312593684 173329109 476150158 64551144 962062021 507403265 315670986 536318798 268667753 969266451 990106270 650462871 178453243 629277524 26055725 165231177 36259056 969897735 109200959 822996514 6069492 112575930 156247999 540794305 289015797 580850611 970036183 3728841 108645279 159140153 951631265 419473657 76931404 453811771 27830162 745501863 12304836 129698465 898146919 369710240 962443426 999336453 894096600 552837280 841278758 222711828 250238521 104726918 562000938 825270019 297948941 621782864 350246033 318815932 817288530 807984680 216582572 914084463 103910944 167761570 680274279 893359184 337208862 57801399 340274329 70707921 141550952 807979460 451208801 869628935 7342914 88792806 700488383 462157953 360755013 329240283 488727496 265677287 403833725 749352617 196899084 99705092 933449285 695295140 401125319 99882319 358570864 426734373 409114512 124723905 550860568 673559843 351633739 817987613 245205233 998758692 43531357 352587483 809778362 227230307 125485373 498502818 146293457 42506747 944349785 626393583 361974462 737677270 470906329 362520969 735967355 911061952 57337692 416314939 607274312 808318654 407369767 463221992 337857392 63823141 27001849 144972856 474523232 329619857 180334699 966718527 534615149 936556700 158046520 355238597 354343720 156300196 893601437 753833154 414664072 72390393 948141787 948585830 309177854 506825857 801021743 897354690 391506413 918185224 508532228 24972145 298285356 142317561 821484438 538802222 854723209 570418446 989518930 230496412 500989610 416665111 60245801 203569198 417776546 419671629 700324972 248810132 485687074 247453565 155909296 934911813 999805234 746570198 880953931 339090705 274451489 868641794 585060416 214392830 833840200 599688643 33955858 825047225 21027628 294208243 681912019 417269835 461074044 37121659 231524908 777805284 109831105 82152542 932818759 685281777 288595492 845729799 91837093 363419106 969189750 312286366 301444537 866238704 859835720 771126424 469639139 257909373 680026031 250160442 209015440 452272862 304864129 339098179 766300073 685386459 378039633 17027583 715819013 409056687 148702258 649741008 782205936 800611138 600416818 474405485 27006589 537719583 587099989 886976493 664610515 878614362 313988609 583304892 595170670 363938696 243563335 662224164 847138133 475748524 282070662 474422331 160518757 153419984 210752430 214855531 373725611 997508063 883095757 140189762 174184272 940987357 247617320 120694112 610783538 182778449 774361810 40832879 773077359 331755755 378714578 289275627 40713344 91733030 53093761 867077647 284325521 721264288 75754890 292955199 423598714 870829620 265428801 316232109 253827362 367538451 794928132 926343859 925370268 316811973 915377064 168854708 308157884 738970115 602609633 348671348 666106673 426658997 213066033 563929156 416811941 485043712 360804586 10397770 990823911 650305180 679425756 261728060 758797688 283733781 848636024 793898568 152375982 249535847 210394502 167258987 758058937 160554031 137965036 362943488 572086769 538110832 168907571 672180553 932512362 902475123 123212755 555433655 449313052 982177230 314217329 541478470 106803700 24506532 892969166 732148664 619094960 542756368 898413151 837310678 764010302 907728343 881648160 774926050 388548088 399219550 347439866 165057593 209851189 490265840 251616200 687117775 774820426 481723878 801008891 555226956 803614099 309561428 301283282 1061028 461795119 909255678 437278654 567407666 348773059 675844441 885738360 287189131 512460714 306933414 628112006 915071673 742028450 772637267 569253543 663159810 684924482 326448408 113483824 946069754 514602541 963632701 557375487 656305328 86658448 311925609 802757352 439417490 510463778 193475581 182646240 120955779 89127361 163611007 693769025 170732535 397524284 728954298 583673188 510227029 628850021 133972569 414244755 597227513 397638282 390129063 973951635 684967657 719273963 317855936 516289519 812909015 76885182 70898195 384091086 559925963 930450181 186474606 375115509 998416789 98851103 817770460 681846481 459434639 422792779 888066692 695282033 318003392 455529571 901318859 450525410 154308481 343229878 247723356 526346176 718277545 977015225 321154661 205136551 33458639 84539557 249325678 388899749 265187140 845789786 387714440 329662637 762247490 230780829 876543752 861818082 236490891 758124138 318497927 706460549 34410199 961681927 501929218 378484231 607354715 384658429 84817483 580242296 297209469 741012112 825187560 704760545 860937180 120127785 598291912 265774991 93195617 615167545 192804141 951409688 515211608 58563456 152405149 550212583 989082416 195627254 694678565 313321442 196516075 226113386 509452496 143380117 240439841 300009063 909942641 68632121 915844555 169338684 299878187 535622215 251631103 616603300 60345099 900132859 15419615 895433761 949404007 876070193 468018075 3848101 940524943 562108510 288182269 637187607 184462043 353464664 541491855 517679931 13166075 287357604 300891850 941732733 300246406 72569446 692660716 801953804 728592263 745505235 161850012 67976192 234814024 835571953 7184784 100091985 71594641 291306241 99230070 677627378 182370389 273775110 761824738 758818533 259373748 645971202 154836972 516622607 355656909 522553570 251710415 976071400 375348329 621818805 12666950 504213296 613115075 627671689 476246980 920466795 336816448 278898046 915746070 26029298 806128064 218707941 969837048 347684140 879296254 674238566 705542129 856337936 457170157 84380608 382934735 172406587 149011536 108501890 895322544 107394778 225357687 55323067 255968896 264741938 842105176 520886337 886710194 485026419 776049290 741395914 277781887 849579103 65264264 158851550 635643188 128497203 547041776 875295678 459029661 770391160 778220195 29681791 386590537 951088107 371535304 582214489 933613809 44421872 871618177 796726136 489845252 172179887 338939673 102916315 581695180 393371626 30561644 67298049 490586979 319263543 85137633 854987658 735481699 893093553 784745299 355502504 533468334 335839906 634323079 408056659 579745121 987541304 882750280 497834348 218641953 737063615 523040192 387553065 58296449 135524881 586030214 386871841 672889738 775454668 125321623 855210401 358613526 193355318 604707742 482702259 33103876 138280805 955115575 953917745 212311415 380809657 553869175 270170969 2263817 255125693 172801497 922437032 638611558 484197404 584938444 811986501 728669229 27509535 432881162 921420011 404880702 431004830 597683031 939106362 256029558 53152543 109606317 354350763 573663396 453060744 115664784 782880463 670197962 795919763 626586630 212529693 523598089 83392261 237961079 489959358 700673568 165368479 519963407 434579417 112395867 412893536 539133878 26660100 634972602 460898978 429673392 262799710 798082990 579955437 243284436 167432137 643566908 192825640 320944305 26733766 745073678 407392315 103123422 87718771 680363500 572025271 612374026 59971895 519876945 886437160 171026892 100177813 972539852 68542693 954674651 665240716 136958318 607750670 254241588 148044605 199154809 415659437 990969985 917245543 333604978 459091105 455329633 301799195 766131027 790553249 107150188 914777155 712359379 409571645 461520869 378505655 520974733 86925357 390184668 240394620 805188484 518560821 321275851 486644829 979763596 739821041 52271292 500855810 817069490 293800715 982791589 407746547 630370733 331874063 391173884 271182790 292561900 136783277 40664583 278961376 606497799 459274495 202994685 404980294 746761793 916694934 584540735 867059021 646865636 925371530 547426420 538937290 471129670 429021918 336252119 970096115 941269812 554032115 277137298 764717224 960395091 651857509 881267912 959137865 703522058 488388058 394414376 560382821 460049433 785673916 163172687 490060754 282387952 741131342 925371351 912605394 599986760 778460135 690218362 465720128 596849867 968180105 908889772 750321739 233954438 840134221 850092366 821942841 73246074 436422215 752455842 199529054 695131639 150354239 125002962 452943150 817071051 382052335 89188631 543166687 30428115 601386525 766339069 118841712 620718272 286424865 567892751 371627608 196050426 649684513 974001585 1883841 685122662 118697770 856029733 670453710 265032712 520706680 904238344 850037744 202520406 82174228 975891973 453090372 228598240 463385619 63852011 862300369 153909685 89709167 258890577 226234822 287766736 562375533 531188740 646622751 88445321 571875221 259866229 935293337 829714624 868836098 407835221 710487769 221619330 590527523 998176504 951025047 835571360 129529250 311238628 319100655 980026463 739873172 776776541 271323634 937680403 817181228 13250209 287847883 273549635 516616850 862629360 559520640 983440851 473389975 355994485 640549662 73940012 374710313 556072137 726340203 156465743 33986144 332871174 279921436 408448099 298602404 253701534 628046486 623829476 489887088 316583245 674360724 955185282 174417877 514877022 877627839 425741177 653461791 539913368 860372479 675538558 843415679 102476708 170344641 301305724 717503560 405118380 230915308 923496951 529492433 672759906 862631295 494354688 870810322 384010844 927143031 401387356 148675933 647539194 902524302 416381928 755037794 335488034 166496544 348280241 804496081 811669112 259377781 289116032 624141818 141423540 162357106 303760934 423627023 169966370 480376910 972496170 396075802 600578673 599507531 102421632 828254127 584263718 526901179 131093157 457056346 381561758 940764116 173949894 526125494 445318676 365631142 383107050 535881599 939880721 707847544 768169154 758496702 375207739 490809137 972287330 575305770 881402925 648482300 116581962 41777827 558832966 743228719 380504006 728786377 659390804 63924144 306169643 328963606 651386070 122080310 765748062 946413771 43820830 939303402 755987733 95127894 773627630 794797691 51686851 588269009 505169818 423712712 981109623 132055001 387238512 166058258 779471200 467985158 152005729 552277546 293524394 390754050 913130746 214434547 35676095 53359491 178141570 235383825 168087749 916667162 584604926 659666726 776049263 64804730 706769529 946994449 595005073 63006240 126134074 721717873 228416361 57075450 827973396 392062021 427345570 661628683 414503206 592813031 659134368 660043737 293593040 196337401 638850387 9064550 315099214 570370188 121866553 190644895 536328860 297206921 968072490 242344440 266990775 370885557 899212002 823299826 989953866 224464299 560231582 608481574 421474106 371555898 355976604 847680052 665288438 566335939 467652603 923127274 292794286 489809985 210995485 734581391 414180941 803061846 614062982 525283706 183633899 609263327 534646070 437424395 314597984 354536246 26730818 466552416 557669866 451428265 710614024 704505339 540404451 229932473 238898466 57798895 126252022 741878974 572452821 727410661 813768053 9805930 706836048 671364546 418320306 657355159 86556200 97339652 656175555 374724648 434638383 758602011 729109086 264034795 271706859 348624720 623937020 316173349 951653978 763518442 373336940 120301600 792612023 682205977 228801848 729981295 284222702 748690256 963736295 981467695 448372945 312345132 201810436 67895584 402400716 98779625 718266467 951429213 137280039 422145120 829848741 623095429 621953880 942737521 644431119 908215804 852281444 654480318 236660547 649483388 189004005 638365316 292431759 40881749 131801364 364879575 639707589 205157781 965335214 573811398 718956069 147373658 131564944 479331895 729584680 366870426 711608161 581428295 567414404 211333237 326130341 17324998 699046621 157246503 966030409 726137867 942171245 736607427 86416389 883324654 44513017 84711604 74352957 758916519 698824298 484034580 885987915 57298035 768398899 12292825 656892320 749936642 290915936 988296733 769279803 711052774 39361640 699757341 258100748 541178590 96095316 812216536 985754138 357713126 133012451 418419773 380381566 814044514 154712714 60095443 743841806 989924714 292368011 442537999 142035796 323635891 715107876 504738294 934877320 424621384 131336014 517014616 980367721 823632845 649756444 916211397 412181504 880857291 230232163 965158190 823354444 854550855 432855865 874116288 865660314 314078818 6684315 456567691 185036025 361954040 411307494 819554897 338307435 538797673 884188926 201340039 909514066 675261688 240437671 628163672 198546391 489733735 643556633 458455907 38210460 269232642 251105786 615063370 30527347 846584951 410077307 316242838 803364123 629485271 850183012 773451506 953782820 739893540 197886405 441853789 609008311 39072248 538252107 564380267 986637388 573119120 416340970 815657749 764535945 943345509 797759370 88590814 945062315 662961923 705012495 977248057 883535952 255851023 716279651 416703648 377091102 907664922 302857639 406171767 179477242 424476081 426866428 875079647 780028366 275162573 697334658 92199817 552842958 194935631 932929870 630464725 479433765 157640619 86137893 561743190 527779000 318986637 338389114 329045461 550462229 514125337 450146835 23418165 753852682 539057376 517466042 692296770 325599990 754881673 360969629 280470968 456823475 486869617 575772989 397439605 813932170 597695184 792630614 528269603 489125134 556971393 510978674 986435062 429727747 703421681 601396052 569492128 465450967 433187120 758007537 141063435 428955897 498983835 413871262 2434295 135118721 330624546 656607551 465344906 920523664 286150526 241581151 36662725 108389702 813845590 28185307 5151958 322656758 138862538 257517507 679964410 512791584 566331841 831248188 153796446 863095575 47645299 909151865 424240876 713046051 925508929 633032616 47584206 555916709 548532200 213041390 555184973 657216516 571403612 816126826 653709045 18065178 38060546 266345205 60093842 238243766 62374882 955155705 363597802 286596833 525832250 38081464 734706347 170685164 669129534 743186375 413797379 571113652 92331865 880340417 741516794 270216537 164933237 511230865 526050453 919315650 889662330 309575997 778636805 153728377 144611200 672151550 913438953 319003266 284712308 836733145 330942144 601547102 931799704 229944415 824839516 800000028 797855049 927693214 381716584 932953244 787698835 233486406 274046539 541453112 775364860 925898523 733874025 592068462 553756432 687656213 960685627 747662944 755325231 690218235 381905203 17640410 115080465 719027541 246936588 702735912 657707873 843004030 158158088 677389402 500871602 182702729 516588416 11688891 984198077 350369741 815542373 709537499 373450384 272958164 134544278 463609775 432562558 746793941 750370996 3675988 660828209 602382751 790891603 591944594 375569864 133100000 169539171 934983544 85273652 929133895 706084245 36273883 289067198 832018378 57414726 167622597 692878045 407480405 563699095 472142167 3510738 420935104 387168548 313935989 729144099 85228650 108378620 602001813 472115168 410741882 149626310 220003448 318340657 73501578 338061087 142060356 154757247 411787533 215781387 781829050 578563698 307920264 325551853 772879505 870632629 729287551 511897906 480454548 492459580 29899067 348164347 665324442 603386062 279034880 628987720 269042915 70865295 845633704 224829731 692995026 359690081 35828497 175555819 586416568 433807109 564824318 570354213 200953813 395418285 545623896 968336235 180769571 657507326 724136406 700800987 624522189 488444377 785381846 472968448 792448647 459857743 966782635 187336484 879834540 970877293 706371227 89621534 169048062 721215352 75222438 558065428 535410604 636177201 161606995 473327438 572864654 357280036 520301791 159670409 261981553 320192552 152438576 794147623 49035211 900067880 422030081 518114844 418693476 319053787 801626222 228810869 81105805 337118797 11810595 658449584 351478770 706579368 641644816 239428536 403393206 106422533 237980481 272452368 691472325 278316250 330511024 465779537 941922500 73957260 651578796 813923410 76254280 918203967 463825787 919403521 21312711 54598514 229085780 482225383 380406486 58491959 400444545 439300965 820205973 717517323 164379766 708845766 537414926 865993424 290049220 822158540 179964379 894182950 745259064 212003587 697991580 925871980 813697725 271479207 235270224 593182024 280102372 39753783 357307450 893469809 855748133 949968455 391270750 542643855 810113170 358206491 161266458 725272487 569586489 423806950 896198409 311311814 984876662 740884 785574098 995604322 759477148 371230809 72507865 977855263 509909573 867861317 898737217 296360787 980016696 991378176 293647573 833873441 367333654 932871986 575700368 993641085 767219561 780203668 685124834 193160368 194177042 480863014 484226847 151801912 639040905 568846990 516310074 577033845 293745301 482671544 201694106 633761913 333261 735796135 278709684 997535294 944733093 383555237 172412810 878577430 202336346 915472302 536323455 518396662 753190591 189702636 41085054 468006817 117978105 475762012 547160402 708432310 580317907 736500553 393409840 979935630 548617870 169181104 572129379 690945679 816775094 936409570 708511200 879342730 666113943 791533472 618863339 855413820 511142047 426744793 901232259 449114188 702505879 530237301 617771687 2096309 543896740 571012415 453463569 238340082 797210559 520787846 55004270 567175156 524779141 413503644 410915161 669395780 237397061 678234529 226133803 96535135 40784653 750638139 276361086 700544593 227214129 411294804 914857677 752444614 274786506 143542966 847586909 84715346 512796666 836646118 890441670 637232238 959179734 689693112 265144472 123012869 314073408 254121832 685223127 486743787 865296539 887184998 928421919 746953068 642655493 644793416 166002164 456242965 435710035 807497103 420718778 985151312 569425859 521145045 276732243 332808790 316724972 174254829 941315255 899630952 533208771 845013406 737506831 620424699 250248330 4075981 175767362 257854254 922695978 446697145 557682833 110758351 870911601 656938601 856130759 904428709 105957839 740444163 981256387 937267392 316178606 511289548 511613456 211949941 261826976 75966876 840056314 919188087 232780733 671212291 293969801 170887590 384508102 836713565 635849668 324148234 481456705 20675205 313338831 918265624 822394755 432000312 327088839 294414039 562353424 683136651 104487192 165758403 901305226 785325961 36148383 22732540 58373618 511269457 827477819 641598580 397905772 969526565 23300541 575889860 224044987 61681121 202417688 493729071 111255556 653435113 876814733 361717507 427470606 345903684 82899979 847945813 389588486 781885769 269123485 956922383 364196105 303580159 548182234 856488067 479456168 555994299 549712848 255045950 950255809 561557440 853771467 692298977 548446297 796601718 424716341 337750220 445275975 581172351 919673923 540412319 814327746 165101629 970876453 805531559 750679855 281059110 613831114 131106248 267998202 135826810 214537267 865397400 186348265 497498546 757377683 755037052 457333098 896545907 920512061 813387906 305823139 680887200 641833325 862410509 289466658 671641636 466159527 416863928 671481217 682523479 880280296 515458980 402431866 702980164 251796916 52279971 911966443 577852529 561304623 295742668 917134315 411826846 507284638 855018416 464813304 59691553 830771145 931139262 397107654 830010148 64893080 764281145 19880928 784130759 351019673 197243944 337329667 16501849 77402967 438079516 942141649 934814897 350375424 453048163 475332557 978145981 312018955 458989500 672388336 15576665 557063316 645837794 755546665 349965486 836295151 1468677 867232671 459134657 351310353 248779697 318657128 521440076 400296573 516345731 620066621 126354795 834523533 566263644 747614296 6392935 454415646 697307377 338749438 593880277 957646783 847850090 440419560 385770149 312037249 711201216 73669955 642640730 144074895 818192158 212086027 831755385 96272165 510878915 100916578 426310914 637278912 12384104 101168645 648093996 125374527 814185387 238924215 815985952 60613066 503977876 895305636 105480840 904961202 143902710 3870372 376965915 198000269 55925793 380531395 442977200 955127354 459312789 33278847 423542608 448118924 355059100 979082548 142296300 298021112 251471869 217806216 839807863 211950588 931640343 461952363 57099014 342099731 317202327 668911459 596355610 29134697 995889472 199110341 710370399 818953870 163932942 371211764 931000106 381177778 560926982 559523974 490904361 910470711 663887952 766484011 655486781 566355381 847856088 508734448 71246469 612679915 915704236 8688081 273999650 514802078 565021064 24066785 409089817 712521570 153943790 176986342 935962194 458910697 477359094 939960120 770832944 215419383 609172130 508664258 894605559 844263862 49955197 533850508 917971199 30135685 239621751 68386597 174570167 914159234 852140606 178452789 669857044 990009760 185515507 855908260 639903394 356404260 612291407 73431099 664931794 784933950 693671220 59518144 619732057 40212654 753472427 258975795 141165113 351196657 124604984 893524199 574975492 12823396 725467971 140873106 34772901 255445732 397026336 933723005 139745480 160782116 747749010 454723513 552575677 864526874 293572498 934439106 855655042 696805083 232506108 170102916 687889706 177701873 288987908 519191005 940079246 192385881 319327195 152564339 372216804 40252711 497048981 548176679 351827481 750575827 662114114 141567264 636896233 261415100 336372619 808582892 549591718 941263237 624974904 895323568 78545230 556269442 967649956 253326992 194883440 610900723 587554094 671299482 883143093 568090771 570581970 408274287 828748128 75406537 932039612 363199271 696175798 129524467 493455138 408172452 919939530 306577682 235121096 867340725 690416800 538312730 211515251 447486866 781358281 226113695 48812893 290980896 174023552 834829499 457116055 682374072 27189600 162015803 834029092 946198855 516986120 453784044 369403031 522076026 302692274 247795974 466474202 892962271 170711694 568607463 592559141 763693637 188970126 480732279 336556464 911589529 271872009 502246206 922359599 248302946 268886814 626906809 667801378 553743134 590329407 262235175 195685007 584596234 647026868 718891747 87537914 158977704 792225868 318812878 488981615 279735567 39260008 773512636 898849249 511640194 960850632 177147922 210950247 936314059 863136585 439028645 378507176 923131995 200796304 310208544 905005640 467755263 978315174 701803082 497573606 43658763 237042394 889253990 874533309 309062365 919162779 340112170 257781021 923065373 837513189 157896499 284721861 673407912 579289053 570963525 173459955 71315867 205758919 774255921 820677618 286482607 373822696 793967254 9331421 251002861 187155296 340081304 735683166 887654885 180876834 679788013 417985571 874314552 481559317 444621173 340052575 943737999 327184977 822687252 540533738 10364674 448478517 856708772 21774966 434967705 892110003 537444064 869969335 681164979 702007385 293543989 819835670 574306500 742601691 840645265 807623387 20170469 314796700 325195110 291076609 13929694 10861459 776535426 948495824 396947422 623282457 982899965 359846437 355288387 847003568 361095924 5615771 696312597 408283243 902208883 564685350 919976826 330299588 25945743 179115663 475868187 972552519 631615320 678193789 7687311 93743690 755563449 975567195 997642220 29448109 544560322 247417572 11161468 123059805 85526528 529427045 973113443 441612516 315871555 834183825 497807079 150365148 715637817 800112087 697381985 581009457 195476034 591267263 422580823 564007436 733189884 537125625 720809738 55612561 398533818 598734703 99733019 653240608 839400808 468111806 95580912 827883532 159937905 917402574 286040294 535978670 702173589 310530904 300143280 68816997 396868831 719280063 437677174 294495601 975829934 514482636 267691847 312752322 41907637 616842218 953767828 468204471 554095159 643371115 413971001 500579046 588805862 156704625 637728272 457792634 657930501 253809986 670934454 190004105 834756218 761318736 273572375 337669411 393382838 16474881 213365351 345095094 432298139 453989242 988988528 514673818 886919258 356819293 805653970 604563378 135632277 258865163 892936982 503032818 580501946 604710871 689915168 384968334 6540260 534846922 990178779 989530819 700402294 215094144 23445457 660597766 750761069 163430670 890826945 324646588 628711605 326969576 399790193 239734430 896881107 46070692 76059489 139385606 913885419 701782817 871980885 735220353 913699829 630044903 468897870 277017422 563075008 753966994 486767493 949653826 856902187 751003565 723185370 326499568 973187610 431676937 811244630 805860671 972408139 846482425 280449186 746829766 498307984 229889492 863555539 37466925 434381387 854336957 211517470 78330381 849900372 703693376 158346519 952227584 131885779 353228463 313512451 192695519 123355687 952520779 785105769 518950943 112253547 926620743 868023485 529835353 492576679 601821853 894647215 12190195 940300800 834123516 76911010 655838098 147010383 420757399 667171007 18337083 686454908 303571049 877029337 452488470 274010036 695630423 632878660 174571871 418449141 616338251 489691310 330785903 160480112 758501250 537669327 104412617 840382988 294394108 315880721 79233683 336940471 296143640 144003820 448981562 730401967 327945988 774153230 140397357 723974279 928859067 992381121 71781766 732907871 622569759 652709276 317181933 135658456 916485342 143810203 78452773 174629211 144628964 373101443 838338657 797111462 943128942 352977118 626942085 614362670 617545844 920540355 886177205 430863045 124699038 289228684 231021379 212886689 127090504 539030216 872436475 176729206 244611044 618269220 935836395 844971058 997154709 488199440 536343632 186395507 969875877 612579646 641561655 859064220 898931582 762792485 707344596 999610983 516196999 383082520 971739554 653888568 147792544 861934424 879694908 530302663 11414229 781573903 692194764 285414494 946389645 968434312 217551655 502210050 533857956 154180025 617604144 62729976 206833167 897973230 194797872 290944347 819318773 163876160 332218633 839337719 224116757 631067501 225887990 526320441 404325879 32649213 31174851 159285173 950080372 643285475 780098404 456025128 241747247 967986066 796510747 571944309 486135474 906785889 499988570 265158047 845402032 439244462 482409130 724678458 48864094 993255861 943715833 322164520 913079803 724481388 491690913 613522725 729951985 601739235 723466369 292567558 457420428 734012151 528113391 217493009 288846770 879400347 759996601 576979429 496390379 712918789 939574670 421464539 84382028 160514254 350092913 376677780 759779792 487786919 592044780 170568904 902600651 657049151 979314122 953021839 408784439 456604886 752291282 707963883 36991339 477110622 145273434 376070909 905070247 803609465 189497735 813600031 463719530 87994160 920695528 878445489 194045878 833718659 619092214 805968409 256664742 250320033 61926174 336967428 636076585 305203353 294474927 57580865 510337629 290574073 33618461 558822628 355795782 989845818 885789620 233535777 106977532 708401528 48283740 356179409 408894196 641143479 804177084 921706212 496198818 106886581 492281403 710909483 896429653 789943216 25412111 784976192 820989417 893410790 653113088 987797317 111179512 26567455 890695039 99290493 854368523 805795472 891429453 30681460 617251122 619944530 237111908 787488660 515562375 304205092 716992361 360933811 929059721 498555594 883124186 191828370 135951867 616443133 585534357 110916724 420382753 593944372 699224617 5475469 639685679 57483584 571464478 860556035 168685942 519064490 204793754 5194231 381747082 37219176 504072184 819285051 876702658 577677351 570771362 805073122 509314633 877633442 453242159 320659856 867231954 305065716 94933249 991303535 574373162 653447493 717418650 996913253 931932517 564392907 350312372 158965372 945995386 622976148 531509086 863810472 168529479 182393523 473593632 726549310 445170514 735410664 471655669 700210979 317401993 778777566 405805135 29120302 16131203 70056039 434002008 703734758 7340167 497227142 42784062 287543446 755910056 72238378 855004986 916305965 107192261 574348269 834378725 366711308 864143302 55635210 16027116 989447864 785147685 679996611 118173193 703227418 492348583 69536049 348409003 156735876 666111010 537366299 750581767 737892348 998492235 232057698 415725979 107931645 89716579 191600052 660797050 125088902 631785965 410598663 637840843 408427907 301951459 743684863 490262046 617716092 273614293 236882771 196518382 853774843 902078889 764541811 462236150 531066277 203573307 410407249 747053135 420726193 726606375 954722752 330562544 693201518 344396929 956988497 620426322 233964118 539865255 391667551 806392003 31416372 60690295 897457196 707728997 103150478 732837822 69914754 267531657 780481789 99018270 972990568 568192241 153693662 289595260 301837970 299640791 18095113 431292193 895107818 305192821 90593972 79303639 189011063 647127896 401578538 879442517 451609142 378076335 832068213 271029232 257443921 71414269 113697662 463268355 665942569 131983159 131145685 922113403 585985549 316692733 941973577 680625430 884902166 675551964 580379877 901801311 967503378 924734827 601426535 626999109 662641447 652946146 481410209 490076843 502442694 676701841 243008404 585145144 439349879 319506097 202018694 957210771 303208026 997436468 221131924 103072506 346958205 229268838 239090283 200228382 398515189 457877646 645052549 169695895 84244816 993728725 464775193 334943557 248656515 944922031 836643932 971913333 921346134 19210142 793349337 872908240 440758679 897561840 567139733 694039798 123596262 481200298 317571571 814931896 770313020 109433380 946360148 377519254 429413744 774079683 162423262 948496714 571542149 815995618 474820228 337563610 138579990 332274151 933992100 745153636 576972988 233387110 237781400 212765775 836076529 909079178 285323686 881169432 25546566 564719107 49082706 138925616 651227967 478412786 650638506 815543712 847539028 839512004 478816217 20174221 287766635 662990255 849745394 412562103 873843003 23315616 68576926 365852104 390350324 481269965 65552647 285265131 861684067 311654906 119617256 370497444 812378548 383641942 607736823 147708259 698236302 609569236 146026973 568800752 916530568 231536158 67218208 457240909 615539379 215168689 511906820 898275323 290757131 504381700 235841189 784908954 735868477 677153413 281200411 162710915 581779420 500012260 275950170 998283766 78649716 529048059 53759164 680248431 660499026 430411189 950521766 903793538 160758693 854782387 473337657 366828779 379605935 725998117 24412351 650189678 269639667 345772589 827159757 48959294 773431957 770107327 541257320 96664228 946910586 43784066 863323942 353055688 103761468 475258158 546607787 429629068 368960398 87957907 891817063 51199328 316196525 357083184 418743069 765825775 460777731 105618143 235923319 567240578 319521063 844413743 379792178 849149475 528355867 217544698 189458023 701950055 713841646 263162560 288043196 286322744 491370749 468532585 385715192 272473242 695633599 686922007 194052890 208105848 321296133 952412249 65729917 662595246 510114955 342365892 389789360 256792659 999979454 465317298 106634220 665522696 205951238 267234154 675203125 78125250 783823740 622606366 767931472 728934078 900844461 943374793 19623809 964925288 438696472 359956219 566393752 54712022 486797405 651224469 288211297 230347064 9811739 962836378 217013862 738068055 76087519 223022788 485648065 394410018 155921176 582600503 635084795 265237549 323627750 806884291 791721913 761450213 317632364 858382245 285109028 445426467 163517125 492899203 302509308 593435532 45552166 35997605 247820287 526757145 820111896 821176721 284763058 404252018 801453530 218217372 348868538 873029155 243907336 453525810 568897919 800383672 141802632 292847916 264398413 556507287 455221349 412197265 241082769 873721646 418934887 466425605 702032019 987592859 454828022 416783352 697795160 537104382 547149521 573496753 963144846 344248918 497067114 870697285 913440784 62563915 458098997 463371309 35557189 50955946 316453631 722163583 816360537 80544206 123147760 622786769 459295547 251328152 805449934 850159432 841780778 353942427 619684311 637952046 519977735 574785225 455215350 135588990 858927128 668698266 449143802 23525315 411765122 165105257 651143817 795006775 776514878 402827903 596059169 752255448 472741097 92219388 613418943 757078087 605421127 488167730 759710652 200897272 808907324 658967834 404761754 458366405 416308279 676866057 878214072 2415471 211980008 646615688 912681404 316479995 432684116 810279408 225257323 841748238 197880869 633166946 251600549 53060319 836181371 122961426 736332208 209939640 576367005 778912786 469624705 386874810 388355844 528999087 306343429 453890064 254074333 524881632 805488202 852326689 652437883 768732119 162918971 995480416 347610269 592992063 726250844 558916621 104813726 916549013 726704681 788357103 978708087 271518925 789123303 440385973 211502853 191013872 622371546 312171924 958342853 471552069 121844792 503177405 775246233 647041360 468617896 501844053 218678490 128950735 750235333 306148240 487961999 651344532 968241484 858449234 11027927 731101416 252910229 446309512 149905272 83055401 26409059 739615788 555333391 61170616 4789456 494607432 420471398 871671871 398534509 51339043 340210712 590973664 331631027 281923589 923492115 209596233 475472685 142768267 92141139 129154036 347013651 326852106 217297876 239416235 442385652 235422240 894605796 287788228 276066233 28865595 398620408 721071595 753987497 545790569 845854561 960772492 264572913 189517243 685098041 277120336 402816639 918731116 830241658 208576637 126568067 172614293 744372054 476148786 869387535 115660531 472225849 487325618 59827053 632929696 295596208 363563350 482994654 154019920 691672959 822941840 225529256 433535203 725478769 928602596 358913423 401751344 955974305 937682026 246324396 295863942 413917204 926034697 235174796 790769779 893225274 750980296 633279931 481658408 983977776 791459555 989409353 663168182 478291405 200163520 714980722 976581193 611849551 845013207 764313536 71963442 828046708 681118264 542365975 629730818 390875790 792576079 487781685 903593485 361410787 23976352 492404669 432149902 275302206 637181459 168676186 988626974 447408451 581622853 379527638 845538719 515446690 333209720 151075811 681703073 903872586 437654201 599785763 971106299 258893171 515811741 324548840 641117526 938829809 362014572 560664116 26727000 357322453 381189114 401950423 488643108 272854630 448278569 872523938 945407700 453412301 28262009 500004985 88941491 775902610 924596227 428021083 805631371 562736239 772611668 979597026 169949531 420073582 232866956 995863418 215745432 285520871 774998566 822239188 341117166 22160580 352066864 347492930 594356005 874195853 722563584 772992815 869092048 812135572 693645358 135435733 719383177 276878887 411525085 527952213 993618618 454541101 87798053 607079650 7900972 144684146 584492165 572465421 415345664 812244141 564774257 826215599 930978242 408859043 993384123 884496413 80323386 196610385 718036105 790875056 574341777 356866650 603897101 545567982 335129402 478523629 333752882 972243037 967780253 471570821 62607776 570522516 16216454 885720867 471821044 411006883 242843957 654242710 976646719 504676505 142398210 141963725 630247431 191916755 392771774 566715674 993379824 304012086 490615714 77813166 113681063 180986810 822595959 723464964 682457748 330390088 217828410 919899466 728641428 696586902 66359321 943416406 322995742 404541414 449164078 854699398 368648802 276591469 871741771 575803767 891166036 39524537 313486156 11987048 256281200 769164254 427748497 778799660 960624417 683885812 361211681 385537520 384243475 232485152 396666953 631258776 929652844 326440064 232916084 756990308 354158815 47311335 843632689 444915317 891005930 184139229 560785373 883282242 770865906 421227857 221979766 481675252 587247171 45122267 105560440 157980091 926165411 889731575 832293332 938517973 216994812 198673763 404490932 177559007 365383184 489402103 878847385 376561814 662989491 264874644 142770984 351946462 284381191 84014703 648758202 635964773 552824544 800530176 118995686 829376801 829252447 507381414 641679014 596907798 973685384 989876748 544198105 59533304 113563866 398298233 920684906 163388433 271320161 530035574 963883969 18774720 667914322 100054818 241499704 324762038 707132039 485033519 78791548 486055351 359891198 519587954 856108318 620511616 24709196 833584144 895731446 287238060 472347203 662114383 914656220 114135880 516264383 235888874 267235932 919948398 618085093 576913135 207926549 828944997 348358825 410551831 975230538 36742365 805944939 520527733 694673120 632964542 791407090 433773526 845814994 816602829 700807770 94182865 675366100 977569196 918997779 726344077 752914723 629111412 32341606 283840367 120252413 321340766 628495890 24693693 426576738 654722358 450348595 820457282 687839863 791457045 208828789 616160657 848777467 442411414 574124152 132259330 637766582 330326879 574116042 400479246 721636841 754444190 516488675 623185479 630797621 603283536 958772366 496979003 385911517 415120750 738664391 703702401 732936025 174884714 585785916 129365026 583920628 618440590 899671492 332922931 985179130 673699417 7302910 74548804 590803349 608574911 260984841 656062395 300162003 459333677 549362226 764902510 867062501 790241025 40941479 805766349 52535725 624490956 246741648 168199187 350241062 135965969 703850447 77444362 562818789 837322573 230993996 357009806 337074152 681522725 948348274 287274691 73173572 396316165 578221348 978855368 961171109 622600954 43109813 252853915 209537030 418669275 263911019 203202549 76805108 585270263 709563069 126230445 735084162 76108674 481678063 740590418 990899107 83003376 700868999 984997622 734040533 58277609 957928938 760598107 720386693 415327183 833644124 899048011 776761328 346376613 634840693 426006932 46454549 609556420 344603252 478393888 679785901 481892448 217751831 299371339 777116149 108197765 841603114 711639077 94510732 751853176 754691013 676345914 707894457 882856280 719391744 721144915 800962093 925051003 710457566 19350165 3343797 651672690 943478436 324763941 496287896 618037954 70351612 180977153 626158580 47541129 990682719 112281842 672419849 126382105 837483121 939409896 928872574 450887333 604364839 77004172 652097539 114839548 580185553 845066328 528810116 818985611 641997215 301380971 99443013 440537446 939930664 626977183 443559847 337335415 834133649 935204716 767967406 923254371 959384311 479212333 706241501 453696624 783658285 280231631 957249350 722359686 765590493 309048630 277875317 492759754 63061140 533138388 868161058 607799617 704910094 117876565 361913305 40556070 165470585 50675154 791094898 569503026 344462264 829188599 255216751 614217655 767323636 554929055 330014934 686260641 757154216 94717436 562805179 403495788 836278869 208421701 930297769 726867084 158370959 444997256 352504368 672629967 574670566 53746538 810027544 216140537 26512926 917460074 434923822 674913766 742523294 319436633 638325689 59179283 773612576 111486886 790126293 299474754 520477802 475893225 959362087 760363320 459372433 800820587 492290560 962458926 489462857 942037690 471484086 97992257 767365132 891524274 396577744 883936568 236350574 588326188 824703995 332248220 747693090 668821949 807001118 260007481 760833844 373557128 882195309 173954066 897876102 519997126 332502629 193638423 161580253 532383822 532409316 429454232 454891596 933349611 868208827 810987206 2407082 525114689 623989380 514651695 306505145 517846510 249430097 661011376 701860092 208657517 324394486 109012472 524086126 111754562 261581145 37990058 581139784 148058726 939685973 446431862 874309324 574868194 752649094 899653790 741721012 931846556 486479592 124664551 810060218 556589735 198204428 601491541 388661253 883673981 412479137 109477979 46312449 499986885 659525538 917774535 874941059 364232759 471311181 847077458 62624 227195068 548188759 190798508 638895728 836461208 715216268 418279997 572027451 463118589 171330627 189943293 416422857 278574006 430852707 517691439 27922325 140081238 627680716 685879730 718249161 698444273 118272197 62578859 920880966 325995030 434077149 550465931 974690614 432688515 621480613 314509540 487247168 614771655 41097915 491318251 790893436 785713252 914412520 128598758 795856829 735825807 302917321 501687954 61496643 1790979 150063035 93062840 93260300 881444086 417967781 689862447 55301455 20123824 393113039 890686926 624981975 44881774 802404322 639139174 590869778 905133115 639704382 164249663 775701550 851188739 783310073 10508425 391445027 559062220 570433288 417429691 230485049 291405443 392494009 606672393 943243277 717148636 863945959 117258151 297871541 210452645 853503678 125505154 827865916 632539356 710949869 237933948 519160172 889221720 457638383 860650243 722738950 957944747 636414625 267629311 456901668 502415154 450112270 134039670 867151174 531053618 636800166 483608310 763232643 518102093 601106006 67998662 968741745 121851669 873771832 77104899 252443583 185432563 731748699 483811907 677752607 378875012 775571321 663566052 447274047 869680017 481903071 463313521 329552530 889591391 198139453 312828529 328296406 370561849 344456904 742355242 831040000 3307073 143716058 548361804 844497415 654017128 545575673 592724145 240917867 642124036 751630816 883052506 761978792 129656671 632502264 320804712 822727181 372179407 724397990 318339837 999103631 313723156 292337495 495683702 226310686 267225280 290330491 484056960 258073003 872391440 228322323 659297366 612983465 810161109 135656563 715876089 664541582 633876201 82367035 679829386 894841975 18235665 256967953 710414252 814665050 850435184 440230104 779533632 684175332 897439139 901956627 938682585 174517037 410456220 972052569 710637645 332978446 500960981 692624808 431149227 74944074 577269179 215924833 587888437 440713094 413424563 771601141 400797566 525419229 704054428 688240587 844774407 181222754 643025112 12555730 643734925 802345422 25010126 900520662 202790848 483015585 142068241 506811514 482626278 12903603 922387609 264120189 280317757 505246077 158309895 333741397 46173245 244538111 209522691 480646124 47007899 195058174 393126786 204395420 329173211 19376656 307177553 959377417 839761958 504294672 748276301 144712463 277138832 324069335 542687587 526057761 654792105 751133135 948531994 416914962 58411193 121524364 991203230 151868151 890147578 134692018 726090046 238356952 832567237 542594804 654802935 520765215 157522812 317685284 519351344 655708984 419226623 890976982 200792652 196286010 618104008 532811347 848355223 422215166 100599075 700008975 946998202 375369701 968298852 168019170 749414787 652539423 585042765 911236283 345461228 478352994 152974410 668849080 904998468 918053456 769456445 909142731 368704915 183477706 136281122 840728355 23278325 27293714 337838594 124137546 137093300 234651213 364533701 688598250 773315852 114345058 813725172 596753577 14225549 29497044 707523857 120940854 526936891 401093036 30425915 627995730 667041022 869960797 684652349 589943884 65847445 573597498 469390554 360537611 480067917 706505704 810072398 471153197 712243063 308279189 747631733 329211457 54735120 891390419 28330316 497041706 664214896 211095508 17440681 487868987 377063476 576271735 845857124 372251971 76089193 580710217 744520383 35698590 351573498 28759756 28256917 869360840 923307826 829907240 857566877 718126873 172925859 584728296 726818047 668459298 850819130 383900339 684480362 973127686 855319783 452011387 195492381 273833507 137701473 217873474 654545323 226298276 84335983 882731192 119786045 248950314 519725256 552330619 275243366 820383779 459343377 283172892 335618308 572331130 536828155 360806068 25264394 901417538 724169523 488239569 815789045 759003598 428704909 54034860 12575658 929005510 28291630 720819699 369867172 514958438 249240401 455639363 13181038 443481422 653556862 462063157 499655384 80891878 765434842 508256037 911428018 673280956 309633868 794608675 703667280 442811971 727785124 724842104 318805452 129107157 583803274 504082976 871861834 786615280 451336368 607492010 585320209 872666531 296004910 454538297 717213401 377388981 746971712 818542846 26117834 744723409 939096963 450491057 473247687 340475579 106649290 998715748 716369530 29842767 303068665 612301895 667357478 935680598 679802375 470050490 666863897 520102911 383941674 51775668 757837855 788262242 49600694 506602568 780635440 949173185 108503825 939065498 604123380 861587883 106849235 238071659 931652240 747092422 592099931 98318473 672426524 59142825 233302837 324687546 120163585 156306760 718528842 741038640 552902479 482570187 112636574 28886543 718166996 876302340 935779219 675081898 130449740 120683949 167974388 358776246 502180215 139353745 488048222 961630725 400665349 106319113 914361666 640462788 154078144 733931702 624400922 181715314 863878533 119095622 372724787 748486957 128531466 254537615 5097563 142535404 718115139 288867425 801903104 180495773 545046819 133834506 776058600 52548373 996888022 849189947 123812932 599305217 817541498 140547004 418423340 668224837 263712730 803934931 415143685 624352649 497513495 744337633 673907011 614166592 234310923 863515151 92149127 142206929 539278019 73386666 732993093 414339052 876137377 354321738 889769949 413747049 971071126 679155030 605511544 56888717 345548585 100854296 945638381 552477404 76904862 414717210 365571713 160738224 887158879 416643416 915577798 231147520 35279943 943982585 556742533 185150815 315571477 238142846 61260357 406713014 551763206 361174675 181488467 752876179 540625817 17997661 762501092 523648226 339232086 797713585 459958893 986894417 810771921 331356686 850383246 936019532 302749158 520096327 300316765 688840446 857975116 204278292 923907490 514913653 792420767 953081977 490836844 613936862 832992577 136679007 176235063 244399644 274409232 828300865 955375184 4615681 207563232 222115096 51594544 323534424 349482995 347218343 704183110 965356363 81706019 6944736 657412879 513673576 764634976 353525348 98512153 46396308 579757274 128497665 602771041 308452746 717367852 178506522 153867699 831680017 679428294 541903631 309028305 723930730 851959427 530673076 722284949 766197792 724796337 164936327 570017481 157300776 556448861 909452486 500620430 191346036 694392864 14305584 20818567 606766461 430495161 747170118 697003082 141242447 884786636 583725044 194223877 759038295 897086051 82065251 775093234 154412446 816368606 913728314 988063278 708019986 344491498 932034659 751094428 46386816 737122938 666133803 893569512 620428598 502357786 34230936 408812370 932228487 898324351 930904885 665321914 637007440 569587493 879848938 384532340 53340724 71406889 774232345 571345162 292593552 110774257 844712086 672408667 13266708 132714836 970553120 887622888 734030637 427162298 684115240 487917563 412461200 595980693 983572475 809647175 395515767 583475673 403864809 651019287 269237178 32374106 363884398 222251309 243528420 847306118 313208331 627483520 879184009 904461176 913253142 654565567 826893201 104873267 97463792 538590934 876075434 316235081 476826533 816139651 837329997 347766827 930692303 783040993 660690203 471626230 562941564 12146480 602572181 464095212 159822713 432033918 771302243 295049078 130677556 534306785 231821107 220951436 532932393 439239879 361916030 728812930 432112229 661575988 94172025 793935285 861100920 44897828 52925750 364539995 12815845 641042052 145141983 751044082 973064506 122543007 877284582 560997897 716362302 125035655 442681206 83544700 483832306 585375017 580139255 27969512 112514409 662103813 742990903 761310181 240381819 342108583 503285711 372955752 458457633 720210259 319177318 222273012 428220529 290239872 856361237 923456337 481390178 453872765 135271883 301374312 901356198 825531349 643138933 78740485 766741429 374902264 463985848 909734788 552886557 9473350 431431535 586778785 347292255 371932304 616313211 203315682 950134541 9917116 984835199 964623707 320106745 959653270 93893690 761416584 73250910 867974739 691706985 286537009 315156058 454301957 850094835 413797964 983205068 323953198 909065754 438093444 532637779 771633249 221206666 219194523 732899573 903022452 243927441 501323968 149916524 867573359 50262062 308962426 518952588 40225807 680666413 561209641 509903998 608012830 779998408 555310670 516595884 634259730 867705004 509708911 762091032 477201345 643928244 332527551 275176330 490711718 362684473 852070693 968465019 567253614 233421276 99994691 971749581 650563199 393655280 71159394 808702784 221965408 389296687 452436770 799339070 521519681 247039882 481033675 481170 871786971 732887562 254725853 370260202 210572304 369711636 256760253 323041144 219213046 526070603 770122216 321069106 92961463 767720107 869105025 209746480 562096051 105207975 674677076 976006488 369187846 98455091 279530088 504573530 843841553 298488390 57301371 795983848 405645058 440158480 151525392 404298112 895222781 988540847 172283491 28443370 897979643 565302626 25471484 83105447 324105560 828496262 251059760 9907004 557096699 262078165 523506881 441354839 464035669 869800554 687091431 655830357 434895614 347255586 340641326 153310201 355221829 412565099 106795741 552497105 890242568 219602038 824132268 903934017 964855859 167069644 332293448 852565633 218257915 529354146 803860099 98753054 75770804 497581887 226821603 711854521 559848885 751370761 996128430 971400482 76970649 160372674 456331469 116003262 343304604 235134580 463992458 853786703 622123129 660904149 926964366 586185925 256373105 799497401 442068300 461052665 519887459 371460037 550649843 532995758 82014706 544782606 58723018 974366608 511771902 946990532 740323675 114488146 459753897 192384060 164838217 38219887 172400503 636102788 399672787 209833206 983484662 493332480 254177052 795101412 127774457 901110192 444049073 439934807 857021926 246790669 172436681 422756967 513713544 634138788 261120862 748993834 466752295 660799498 695818910 34286690 645598384 622758954 782858397 102111246 974904080 62635153 969720347 311613717 249700514 774535520 695341345 400765131 884458908 225099438 634683621 518037649 675067332 185295145 830474864 335827178 98272530 917227495 362067176 738469156 672836508 14571980 388072791 509050366 121462257 327417162 655738081 885186732 129435713 914427405 460581383 603135607 857935832 360636928 891154714 89402017 12524265 730664832 922496074 105513706 749224431 288408548 56333140 380498705 520186357 544494253 691167003 357173968 405001221 428335489 691627821 864314572 597747938 276070730 274722216 959373744 896780674 701888944 226327536 168120106 97340510 585902611 147082778 544140135 513008945 688780932 648174386 801500632 92732846 455221877 47648379 539290672 13699182 954431693 129263834 898450672 579822242 722263075 843013635 985749242 203857416 519273720 645649976 303974985 162711352 725472702 410537080 472976189 600710739 536812668 315376894 266243114 995625963 561379644 227920632 544491744 92261888 806544987 9335682 193634695 464512971 829111540 732162463 397430264 113771897 485612090 169906504 583657019 124891506 461255242 548059433 191825366 444118225 390020190 846069930 362311920 288368072 266358800 215651917 783864432 37422665 196654511 392905236 366645255 676737901 334751630 158895248 561380944 8543841 646740618 621344044 298873115 94368586 266696801 375102475 900474532 636123885 277763786 266709831 964916917 702911008 47032143 978643675 966427530 255999904 2372220 957359761 251868944 136132429 78684386 654394306 689858445 405017302 500321010 594692299 630423645 648551972 737433395 3406605 135142451 660026430 271300199 628679795 834031659 76133204 977149025 955028291 494172770 684230316 56699941 500750644 145720574 778935730 654949267 84334054 636611326 842282784 366145401 941844991 182572379 787996579 317957296 832949904 937100067 194736817 652004727 411546353 647948451 28796523 559421295 378521936 80109691 394668995 517999561 717384171 341480927 204967309 19648752 548926002 838370485 817251674 611488014 555638489 112478825 30482691 731834207 52839442 294066516 784822641 581865359 724421137 818386257 661280346 441400013 427286885 450164392 588455496 906552209 907192837 618617053 765761655 306380150 329277192 515596465 246624653 874345544 705322984 579588044 978637962 914729341 120854063 125765887 305433691 104372402 160095504 840759970 855851799 706301693 596062903 483506289 113941924 129963211 411719804 829326233 126370065 988628378 61208701 193418998 943013548 144299287 856185634 656432442 814277198 970401154 165715353 907570385 782462840 986315524 214224842 196368244 256140885 951345333 67755285 394627656 740182422 783360363 473573701 353702805 773641723 373224015 364380244 821276141 609596672 130441335 688195647 631343997 257762876 672415636 375490831 90235409 696225991 306722218 445682088 256682624 950200347 782591486 575957102 412993930 705142149 872822241 253877664 252949037 798468054 898420286 381922719 510084679 14467605 303235968 876601120 199101748 322356232 337733799 4677906 67602598 724567807 860153468 968521122 800277315 160608855 603865364 677112773 301094459 339439499 946066686 599496731 657596939 205293044 301889489 796379117 535710361 8475435 275934360 689472535 994126225 126914619 531591931 213554749 627005376 319990758 823680075 519515038 128904950 398264028 674420854 254979997 223558205 298297726 91027345 919424446 572753580 407472624 229204437 559215814 856705255 752930902 58562125 471976472 567186127 769748286 91972969 180846711 7671679 986295189 985952100 957036264 407497498 604975700 435716513 322334308 423972842 344549190 781502895 560528731 116579413 999145347 718872525 443185927 189129508 318419763 626071796 320133202 215231892 256816311 194950092 211653658 139254502 668095108 240473067 253794015 652388644 146241204 535303673 564083574 880385255 992949119 413295834 430197203 415595643 915725963 586181006 2230200 865777412 995443344 348808461 710850426 726208109 516405831 178725525 273005280 882780060 11179108 816366100 169643384 982668511 816521296 321252875 297327462 750022277 428042386 127918514 692809483 897718722 682480116 531380703 736321609 341476962 372725142 450542348 298563503 773238915 566536358 759562718 675649742 625467036 654665280 421518229 357902264 509584355 24944820 759424459 521625040 895706267 989238544 616257223 147296333 492032439 514765574 787179927 293743546 217504007 589044655 123775970 828725278 853008556 576575479 511076161 838497317 52738458 138944618 111852759 912237000 86951516 529723619 99428436 648177657 927523594 379187383 249199212 707917785 652646451 128176053 907708984 751100619 572895845 36600065 326990899 479468874 504121476 415473600 210082111 56044326 245914252 680695204 899023579 651357653 493255782 702381207 312592426 389524542 567940868 26436610 336353365 969295661 352174543 78920933 334562709 478456559 867176996 32389241 167349062 914061939 218459171 506098849 37375560 309379308 389705342 128338516 113494616 541166092 739995612 259262834 621592540 373753802 599362268 613699182 208417332 425811299 69673391 275745420 691303171 208655829 580617805 370276292 968092743 165312247 764312130 578938767 716474049 632872687 946863035 348048144 714255916 510364550 573612076 166050375 847362747 465417626 857849324 377213527 605571499 953784261 168091263 938382510 924881409 778663159 810438798 439011558 103683386 966667773 616641623 481227091 87572922 948169724 125902261 516781972 621201271 474906991 556628088 893621638 665755235 733446559 990836104 593877183 58065369 147454246 775254905 72434205 373637487 16543461 804477874 146807692 686114622 223611203 599674324 613576254 226819683 764859396 379335264 633197650 708041663 579381105 385798875 661856230 836134464 458568656 351249469 948094342 495302579 839379704 883360155 265731755 903232157 687455616 177689059 864589691 241099425 407659618 906432470 345332324 113410255 338301787 884337299 762317331 627741677 57335761 47825471 102020053 177164335 730597419 94916395 569998478 801767667 24722852 731932836 657475486 927908830 607667394 584447970 461239566 929693882 5448002 529432737 36673405 64514752 264716873 439041216 497949110 395916703 226690088 191858243 985044939 435039519 666496086 622537718 96625293 239831864 855020932 688721901 827834052 334778100 931789043 264731838 715632256 269295282 713428568 436958933 184654696 398503230 833199039 549286832 170683265 499075904 972586934 807010291 173989588 869421404 585211178 58877330 711244584 650047610 869422007 73056833 392086099 264356473 605426646 473114785 50802786 987764191 73174045 173544610 895670039 106946771 77698024 749928666 137093467 525991735 981301297 542264713 43298637 924481033 712096438 78240571 794815761 824221236 856221982 682058841 960412693 742024743 713990588 710941611 71099252 233375097 108116691 226988236 199947905 150755189 759758622 910537446 397471609 202341868 307359909 249195454 959187443 875217222 474031967 604304197 296983066 599697439 807140249 561380672 874491467 820029206 702456494 880890997 84892062 117430291 439164074 480278709 199474760 318474244 184214939 836958421 928759568 194204766 274057080 412507726 836627415 460248414 104399870 603288451 409193020 64460635 181500157 410346220 586618040 561764028 178772459 896806030 970175146 803272220 2388175 973666759 511731212 137743916 689960333 864384739 562443065 675072519 622599854 680699129 390693623 465185862 109292281 362882392 742365553 761699491 553077599 186446234 833455687 964041562 848410464 909839525 269949848 470413193 173576585 133283271 759135427 552829904 529458887 516815262 365520503 842908778 112468221 407797925 106394623 280900352 795112711 681467213 574011492 723402444 904456973 964254379 287041508 21664161 542944075 885968873 998109280 907456615 12586745 713272594 485105858 6870113 15365180 283348151 638911882 596581591 403444226 822601705 647727390 436114314 897868539 720676633 96473180 853511979 608893522 735468851 528836457 556078973 273516069 953898310 40142648 875678230 919983007 317446 152187128 661213253 487484077 176474913 336654301 355601232 899564033 61053845 384474634 485165286 623315939 254779186 104319569 792112632 958419761 53900689 473396484 181206572 92048467 600150073 415074509 542385841 669312966 545718411 661554854 426021822 819026369 195245964 196438416 252972371 332080475 149850402 668160532 625231018 814155994 366415081 820719519 228038671 601020169 746656027 567807231 718284839 458424383 594067924 154379147 642084732 207623857 177820278 265369291 28024425 453926884 774445672 711775735 23367896 960441290 253112054 149032178 354047810 126322332 564015984 881310647 1100754 475828380 97816697 521169955 627599731 401690290 307164529 91575778 412740975 907732683 676499442 231737984 647674542 510271993 557074069 721642703 966576788 756538810 481489046 48291630 856678890 703185198 286524499 830976876 25570249 397954516 672038107 130957226 256053976 918096181 816379977 451891034 263435168 449790853 398385630 378691054 492490961 742009454 653433593 806186592 763952184 679217411 586269385 436476221 760405398 662705486 174363634 233672866 866852371 69462043 315678396 378918121 596673045 3020376 1698562 232811881 939886809 844098454 241426101 22823959 126419813 50935943 571000327 178101112 672838622 249973484 256839146 690387410 884587207 839737082 467932424 346903238 490981317 262003747 902312405 472373685 905405804 737170026 45125286 350393874 858587447 360889757 940330901 206585393 492619851 691209634 345811738 527832535 697266393 955349673 89887459 339070842 455989137 947753413 535148761 123841316 193727394 650213268 729875795 384143483 847794312 63887523 213835220 148281764 38236618 242030242 7048080 982105866 541040661 799153332 703842629 927113004 638717750 60957124 165648607 596245392 134650691 844186791 380932281 525011068 980739731 43689798 728461843 223863240 807883903 681316923 33417623 480194787 419443241 207687184 846795198 787226169 822104120 633740633 880629654 502470603 842020780 172291327 138678830 907202217 460148782 134242565 997828666 841543875 230385239 706899296 253349425 879073425 639372459 570407232 22118548 636638641 740001436 400923672 767093021 764531022 440683065 857895806 53108702 956140035 629250466 778539501 175389688 777341876 204526523 357851215 522136987 177621797 265529742 744361520 767320538 251403756 27256194 486168405 465043890 816903506 304822318 319764783 174559190 918155092 410880756 317742283 767860712 77186306 626970934 374194270 100373627 86159890 373901483 762538717 47217078 73488676 904532550 829700682 892504073 386138837 169704403 844516765 130618682 926176547 286985994 690143904 250053281 339800301 25083263 408746305 561193632 593899627 952537806 379216350 798071015 879734920 768392470 439196625 192741367 136159918 806799759 156188596 924150854 872775978 723310584 60401805 912127558 513071913 555330394 699765582 284104242 268286529 11405360 374799666 813853508 633233470 74262200 507633574 872878369 610881315 128374991 110689133 647548605 384961205 260627756 405300451 727447849 292081125 787510578 453957393 938404711 720319345 806568117 198798466 115152615 690808310 747310276 773364173 722243274 458035101 525215462 800335523 13495944 811590514 445721533 925530161 609176617 238883808 749173771 319381107 741408213 692268116 234268358 607579389 426499283 547818251 526333046 992773067 378739908 283478188 201323556 661155844 499732133 868194259 101064405 517624982 59844469 502133343 223955039 182688005 515417569 458592283 938133534 407171712 898305065 560503093 623925601 978124012 212048741 535205359 452886100 295787598 112779299 361229406 33329193 708948116 212271082 867220252 7492183 642423072 874838809 225721 415263656 176507259 967271875 331252864 689196412 887387358 546860799 895707983 375455496 720694960 457569592 605671743 119979997 242668153 651640720 83239115 731206592 922311900 22008957 93143554 37799843 13815012 604378776 493269242 589479825 784638899 370573572 142618399 709655339 924216236 868480287 57862257 45890862 904736539 773032521 511922886 494270915 321618306 618476077 765744076 403814366 118366567 545610191 970670162 983169827 771162915 493206466 523447805 854405366 455617481 835537875 121905022 880231981 842160307 283416325 399441814 622599948 722181082 813368233 423469028 202785332 195370305 179725155 808406004 345564835 62750895 951963519 403059815 372632006 750917024 971750602 510496720 911814840 491126798 752110685 691994263 619779511 345796122 81905789 192963274 117951220 302795242 882430552 706617814 156471166 899094455 535227334 964946303 292852855 623765840 30932866 665206842 200516231 124309330 910722643 611598552 235921414 511567137 440859426 225851897 821554069 150169363 124861420 70234976 614562996 517857805 204616761 394194713 394610224 293481590 158739357 384782050 178694079 227576951 636905724 302954346 65679438 520743178 228304724 156445907 246852255 474735658 486217188 311541165 930613146 816290435 817676061 991029318 289557769 303573987 299275956 186374815 9183166 317916612 192311263 186766731 599973573 77477526 569046337 882222208 68752146 733046306 13510454 257066797 736553893 237113213 742146804 570553717 910424063 151917653 337280522 763088520 603022513 471002009 12465552 2873650 825018846 490541587 173452526 865153742 95021356 217083247 626884601 61205794 306425925 617221590 737366710 602497827 988829279 519578241 988509011 161275094 417513982 662857905 304237957 575123452 789226946 221547552 100928357 962948542 765055409 738168806 332988130 555944065 411160153 69737911 815516572 745385041 535738547 942532564 374937518 349320953 591402376 623458577 835464151 780996290 886216145 665418723 597504799 905043729 894583794 208951590 408029407 13137074 377998059 554769395 661897557 232362130 633087203 765757592 275425801 488847104 68992486 290516917 216533265 152843836 180229688 71293170 508111645 367333498 127064741 279085012 367988949 759883836 988701232 461841660 840347144 559959376 960128221 871478887 646448147 436894366 645270981 561970857 888745806 278446931 551887647 20774209 868676872 760516958 991106144 803879345 410690895 634259235 908925883 836650394 877532465 662170148 426211126 600131201 857012615 621325760 547060049 703309239 737784342 496770148 853389361 830205166 701027569 448251092 418851448 67189170 87654793 257975738 886809963 89928585 812418680 715365477 258311930 939259386 900155982 3704371 561466791 295511127 433382346 765019641 515091595 736100121 310701524 836864247 334642660 749445565 780796639 773418897 769384896 917375315 677051972 47002465 229461621 84845377 332113078 623293781 891880978 6233239 929953895 268884374 534546160 134115602 589436067 522551151 39830983 563722195 903660349 209971316 970463697 780525453 63126640 394486597 519069096 46467676 784944667 184133536 545371071 822080451 748226427 657015918 902387421 506782432 496975468 92891168 974175287 287263639 786639954 11353112 15400627 167376235 617182646 609092535 665818499 659929466 177748926 564446940 138076847 256525548 371704293 720777082 384693840 643180021 311368011 668640132 622117977 927993143 413123787 714922372 516843069 985255656 247043830 186212671 550766194 612170828 48067767 159094441 910447983 626013834 177875660 226853943 642773017 867533721 705132497 274160495 13473568 849515731 974273161 551076164 815814213 318541192 760413000 240623223 262974644 376168058 513849706 793829194 769046950 340708377 659753457 583220235 429004043 272274473 589293757 851066289 950823454 223202563 377863924 574236277 752877966 678515287 234426037 966642554 272122208 82210845 895479399 263786308 945967432 174073916 94153523 492969472 913983169 807490995 296084371 931095613 316778303 202592866 432864512 851258617 692643404 486957839 866008291 324544283 4232238 734633535 110686785 543237255 462166017 408395801 412921409 860889732 967235124 795964197 170077597 88657923 37695601 436760088 78864907 716340653 423809477 28640603 935522333 933080150 640080140 19298280 547026450 34843986 919154640 592448190 813820557 225954434 719498665 943328389 562454249 998999531 791077152 432879043 613529353 311768976 804860303 723093766 672322258 252970916 778291775 612631694 548017567 262674857 271942474 418944986 96068651 390037412 923166079 474984382 436779948 715159475 101670963 664778308 645771864 174175123 345338314 739463342 428958310 794470994 10705664 160615416 679774617 749605535 683852320 565839833 362628914 63767459 204331329 76422589 140900067 864045605 190195095 440674947 375770886 105200100 287217159 905561795 366134635 980758950 697240100 227274639 399506918 730580257 746384224 680657646 214854835 933885387 807969432 1046111 517648991 944394953 880339681 425523753 18493592 311036306 424233493 138457334 211895888 949358171 814919952 514865699 61419801 809332188 353842992 976257819 914908761 876393780 781016924 865130410 823336394 358854120 96892222 89234476 443189148 677411603 784640659 770385602 619354701 200820186 371456742 803884046 614410271 332178677 654060117 929332108 116556095 806606417 963435991 160473996 987715734 333723929 970640611 244153773 938314424 387929921 191998873 77093186 189093827 251821565 453802327 11897806 296362265 552131195 836229475 211808831 62071036 873420738 951713353 603044760 124112910 550956174 743646006 292395131 816803456 824338989 926860259 70558686 748074668 498315718 912570980 251057361 172996998 578001749 163295125 257338930 105795881 22436976 779922549 263909025 9904643 685159801 903574686 693322343 484794980 490783682 963106325 904200137 374558344 350925596 429347747 952782104 685379534 435622890 911671607 326083151 52815843 719699666 230204897 176183682 660296774 347590720 826085412 608044511 569366656 792603672 928021704 554114164 572522606 935930212 901941582 729387365 722337497 523476869 706407085 506588708 282591760 874219326 588556533 904008940 32597726 553077193 332278314 608757670 194726852 774315759 647065595 218819533 596498450 962156671 295268492 475565857 567025924 300943939 180637553 693814244 244587154 486392964 951910806 762354671 548197713 889671383 736646362 998625764 908587877 217983863 453672492 128676676 62635897 199277464 948613148 717129505 386762819 59763344 340667657 517739669 52340861 750497762 520551094 886992306 10671450 158786458 609312174 266238877 308600941 514944194 684364040 991495423 70835223 116013665 287831589 754749450 847443424 306674877 159401094 177514547 805021300 487944130 855766451 561153203 273301220 16392557 672081910 826928369 444152570 882911172 296078937 106326683 947630829 482639526 935749629 487155759 760061923 377458138 971535269 905145219 158189112 445680327 300734137 350532735 97516138 799047454 932867416 370046933 542678517 218535414 97986303 972546845 824350951 825663506 55183548 321581093 545590435 560348011 680084299 496388018 944607651 576570568 254915847 506735787 847604362 763813709 471748191 231300294 820689786 661201884 822318287 86627106 679850221 27846048 461354668 596815501 796155880 925744309 515129923 580410261 853211610 443889052 442185508 439960364 839902683 361370004 106956928 253468938 351919894 611306207 194970806 306656127 206284273 681987366 334297402 550205994 438432391 899183932 274739970 726091410 18027374 382217696 397498226 540280856 911797546 124569415 915365028 289247872 225949551 908689869 93706641 542257219 468364308 644676295 729505266 270489610 286375781 154761709 352403110 594687364 7348102 381768177 983358876 648966931 762131868 509727913 703720648 911962387 556988280 866724574 837198485 615362516 597244448 603170878 491357157 566439386 944705077 89618703 279333323 9815687 857738402 722891330 549726070 801172609 603959291 105561650 342030783 535522657 731003470 478234012 76008773 86771659 760960245 658721961 236136113 347544219 436015485 446064496 692214158 990498323 605029712 742928221 4912980 319005061 649303390 623333080 590895285 654748740 329138137 617521969 144598730 605742042 590909547 608762219 977656296 681512772 421335949 857833890 320052474 224080896 337388261 474862578 980362544 444155342 469708599 139298457 193681145 264518205 218959114 790298073 548347612 365394467 121745675 981449506 601395337 820764678 139711857 392075308 576780817 57026717 300935263 509111549 630174892 40257159 667552872 663804817 439403014 922289729 722067333 935403714 75788539 305866174 883983578 134422741 17433477 272123073 505848437 199833955 905715448 682261718 86657221 714797612 841023342 813317571 81364854 611233653 877553049 677991442 370744646 271327350 870178276 695153736 444308343 749095766 151920083 47374734 130612276 615679074 146993091 277998084 559372779 291555732 549162892 794117457 767713209 988471934 632932107 659779068 991538592 314215307 117817758 973043677 614403546 633731565 152053553 796419759 407579234 15379109 144923941 391064978 148756478 904240722 608205445 396480088 654196428 358999363 756303121 712332609 241043330 379558627 243510172 577055994 728990162 843331818 56112940 42793128 231385214 963889559 662633711 852264066 664471943 254692366 865386959 49013968 772744144 606067112 254202745 947290607 936108514 262655795 751001743 918181834 203481439 155702476 245785015 812572514 281926418 271419641 40944048 276561272 827116663 648554591 432670751 158118400 558258822 403698669 971094803 86110471 113247945 351621637 843493431 228556063 210104686 1617340 49525767 741172561 830356014 883145266 18226184 736656622 245539605 441111760 184304231 931835590 102323651 123712759 528209893 860192990 412801016 484081763 984365164 269625842 553967958 222673220 927149493 816844293 347372378 366106816 658766652 189695345 352261657 839475506 210478179 619668234 422885512 911776060 224983217 380988200 716833258 15832142 195691240 776218274 440520083 551564654 263791901 634166691 155710779 443084797 556458119 446857887 2668321 238090321 695572528 380168949 544695135 280521369 926653733 451703647 346094360 563985213 494506819 500749760 439404134 430553522 135673626 740089771 563434405 841207397 677985379 91172279 93326548 911773860 828161062 357259780 203603082 411501316 494158013 420040312 502688390 985273333 995699199 652218869 826218601 145939763 941290127 500690129 69196427 588536465 338810136 924361717 174680495 27483202 992912147 888317669 196027779 26232293 937503166 837652787 408700858 397807515 879568541 109920449 127531594 52815373 664762132 952110310 771310539 354478615 494503855 677369371 986455793 480292338 971870849 373218352 47572252 523975453 821401732 798266120 51481990 375166832 179475221 672629459 89139796 893064875 343452245 222158555 122256461 567891599 23798949 634687248 557824766 492909416 566644423 73633948 436604400 115031208 690432274 709021146 837591107 617798970 506829553 452738554 184089250 519432247 145934743 50203365 486543093 989300501 48196065 199853122 746681221 312090284 740457989 9133647 500666876 445694406 233424995 994558006 659126090 161952116 980147198 750136526 351257988 672438168 793644118 23105688 663203591 37952886 593639654 262623947 70631656 780693707 979859575 142643194 992357935 390492869 276892279 9030616 49384633 286123008 570204602 978187854 671245776 431490741 349882688 272722228 274959193 200108451 757482984 916867775 430560862 764195889 99971253 76938626 153601454 552674209 74508984 342122897 414128335 786213230 907717568 659620356 522583289 348043817 890589616 535734848 974684087 897323417 486738287 7034354 850173232 288420232 231225308 16106090 476924588 664949557 359064954 654113108 841048100 435062649 353836664 175294284 553764694 528331655 445363289 821527877 945490065 219320514 680618323 824610680 996984230 640148675 709775868 817442759 286600937 993910951 92623668 867436145 839921906 687528322 191021702 304261337 526383920 337150742 676229446 958606422 782638569 799745677 242830548 122758196 51529410 880931985 779457140 636788896 604430539 693025547 864095693 859038845 492792044 224273523 27129758 305175478 255293488 820851307 110874680 463189373 80699992 487267527 439858797 909461277 913893896 12669562 414932445 76661954 536587840 516014147 397743269 640608814 386558199 256958298 133653113 578422191 744495160 395420481 707796769 514540418 537781158 331871388 361215432 665782709 896150740 450722531 210028344 936427588 927667265 737113735 134693198 238232878 876318774 727033094 964538609 96228466 177714901 996771028 120581617 304305266 673647560 76761873 897712902 8470735 940990599 778327402 814289482 670269712 749904431 366128026 627363550 980345274 626236289 795192982 35505619 26402803 232521825 699154837 955605627 999712952 755951478 270278621 387643424 385677653 509456640 748672803 264155295 471397488 476987227 86584815 614581462 50404148 714900210 109496844 738628037 301928959 389986048 490966606 760226607 897779873 58916569 620911566 135563965 577052151 369017467 312067079 386692897 284598970 732742522 703329219 22181821 308629990 664180233 341121508 628140686 523037880 798013987 51086668 193343925 795290374 372871062 525941560 507352617 995485726 89217010 895017463 839951335 692868733 219571794 781451321 211470934 889448487 799296805 761687000 612247011 736665154 794279448 28033540 281000975 816810626 898738929 652529257 45024427 757039309 655486376 810043806 905220738 775631943 535230383 713904909 886132529 771245356 430718507 268246558 678447994 557656458 760102441 702693447 365957941 178751483 848959244 30578688 274818096 517293890 761074466 787970269 998300975 500104669 344269647 602929935 238261743 903977786 837482740 890720176 189078869 784702421 449161845 66003673 859569948 261604597 513657874 895043145 491281892 95610658 536983457 906441192 891238736 291481584 956700753 511972915 750704194 643628330 952713278 464129042 639435851 292983211 426131389 692607250 385551222 794168358 672928010 491619827 813004415 818659815 657739121 871200275 118552011 623955526 134119315 333895295 427093173 500078025 718956908 850488277 510980087 280794242 858287771 924154395 138340696 447467519 314806858 496126066 821582617 478667417 624538460 640410478 627013993 25287355 562877290 97368140 147720758 138117730 465675186 370145069 349540840 443968680 190665499 107280963 981247542 737518301 204664488 378493158 716090264 341396500 817708987 97519040 172686479 340905513 642519906 250924930 886786950 735069347 469772417 791990772 88349265 828959721 68837806 928625952 718885823 521510275 8842412 145754894 625884716 395776564 860601824 131337987 59795961 712392935 491244666 79893378 635114243 843226212 690515066 774719833 787771067 602741063 214808206 641683503 595946564 249583235 696909617 833493267 868758956 104285893 27418317 296927678 338758626 934401540 699350729 397803292 552065589 847997507 90933573 227218261 556212254 286019780 151976779 315249627 479766773 361226686 624190085 733887680 221502624 653808409 333241784 493314174 799689629 973923922 346505172 378299685 944832128 633678801 162882549 249029165 660482469 261980914 674719313 996660794 189213534 425414808 910321013 341835893 970196001 230572525 72160713 792648951 353210978 434472773 177154827 373217660 25500943 42898507 229432729 190014231 759866353 18345602 931320640 162631688 84477116 981690316 522963324 256640640 706626750 957365804 524262265 394830564 89719714 402464595 736920622 22792542 358356348 322419972 925001091 297442603 847770600 512362961 956945762 325296766 306006258 4103823 858746073 157132086 633246361 824692196 718264481 150747854 439281407 412466844 370951838 656621043 805897291 660236703 475715913 628904884 816829130 668980452 89998423 609434271 783990837 633354661 595098377 528691352 597532381 737967474 35541187 829926037 234361634 551608362 549731533 721293468 97454763 65619490 261260529 108062010 18248440 444892115 781045096 599184521 327961068 953006704 162435810 458009997 956940777 415761204 955350955 120711524 961838645 189403071 374622579 792720435 727130487 87541384 522982616 79115384 407883974 990529350 315807215 767293686 708330271 519009758 161748440 920498831 833998633 534477514 685205938 891118426 738052984 952035570 316750006 25662728 802855134 565738736 631361940 449752736 743899509 404199393 221147375 767414753 823563047 107207505 79615435 779736388 402947232 692061560 801360192 663232072 643877221 336025372 434534699 278148645 978968229 409886383 831747991 696708719 192749506 788253840 312875816 792380327 118440410 86680285 741871356 10880570 13619862 705223132 386456297 2285861 17553861 198692509 299363778 148367805 487453031 951831419 987841838 862561088 9340022 626412277 535669420 963925270 550740524 451358796 925498066 883059426 427415420 202007049 108582785 409218303 136630817 655584278 237221404 475269873 349792779 485468268 741902656 752447284 321671518 39072700 583374836 673339440 731906856 688538791 584223657 375583230 872220732 124473608 235459906 387634316 641640692 733187352 634572956 883678718 743437555 296270627 397294761 501855478 757829482 711031985 104984093 973891180 151734592 386407161 411113110 686250076 227104918 723484126 895000545 700153043 479569912 777830345 140692225 388404493 221955111 827531436 407301842 986937471 621951664 84317871 709423184 366032484 563543901 4499965 793766654 939002603 915596886 109826725 966635584 670571739 391143443 446975368 789551178 316957184 741258619 225518809 506717657 769551435 275106289 896626339 820258812 461630856 816490061 588209190 576356971 789498995 449679062 881068810 336592850 356224601 554330199 762999513 572175849 530495704 226381030 991855802 102630341 393379972 144215723 590305840 431229631 590114638 145938558 98194059 368630096 200863863 144903683 501017519 241025273 728568167 253205821 255346834 844615815 974299340 329529585 789968126 547595524 688433265 837028030 503981321 728282368 260587308 197037868 14063916 479459990 173495622 103915403 584751381 236475590 810612668 1334622 734918622 613742954 384418455 475242443 898467967 920966501 163774312 442358684 403589013 965770886 536781929 851645605 992465081 496607619 799981023 1521372 539057211 637411195 728812044 973934983 451039839 859608123 983754263 747599136 82822773 489442598 884890190 367597890 131086928 168459287 441598026 699707890 645863405 401540444 942011947 752776168 731974592 65825170 554718987 798764640 762884833 234110718 833794986 191319710 607973007 506866675 490522590 894672225 952396390 520116666 940718591 880901351 542074223 675782390 234313327 763760980 60123692 155364642 247880225 201088317 225295775 274826957 2528288 961389356 789661379 116397460 694836944 534424880 769565400 469338491 391291897 514613254 168259578 143937721 186725932 45050056 682366579 105617253 862238899 784777223 455616924 732746469 424306291 989118917 167002248 666955751 116739455 653005030 21410504 294108186 102843070 947831948 886716219 768702159 916067915 99310586 637210371 780176468 839515193 981691758 75758934 481075145 940135368 647473822 161250699 498745680 276803281 873545204 571378923 780980153 456355248 853188958 384073611 464843175 299811217 547701488 536142003 282295939 398952429 590883877 657282567 138577578 555814858 617377623 571364614 203143114 778437276 71917414 111691916 768893256 136701550 825944083 408948684 123845429 16606076 218600438 230382178 259535882 574468708 101850372 743400861 255463951 483254897 41665714 993982869 318809964 813880795 166084097 196551961 769492315 558942205 943122492 798486530 908355375 476606042 332944115 31712248 307594041 322877363 442073638 387518550 898617860 221213031 477450649 17965114 365745901 358182588 105573339 980126011 608832236 683522342 57564963 108534636 974888351 179560428 516951504 711573179 976696544 168668300 833695476 905249874 786417925 62108802 272799074 323237051 700056081 490402554 312294693 546632669 15376802 933460992 443499395 98406940 684083210 888260231 910711541 474294546 360989240 65397458 241109761 199811052 83392849 317415018 293992261 123423830 795579482 33014538 187532134 9334642 221360038 965952463 343115039 973745723 509897577 421985908 299201656 78573998 536172601 477248169 483384562 354183106 98042348 888101156 377364451 860472015 735719845 599080903 98992932 593837459 124197271 765883120 54569058 712389154 46800908 264756000 322257563 338710848 756888161 297385181 438512019 524224133 522479135 27806848 602857978 985159669 325370977 40511551 525810582 683890524 942000088 888874678 282585128 237485690 551094586 155369046 979371642 844395887 782958651 838258025 734100458 130559328 237002303 356274675 331284258 605726314 876750780 363607953 436937330 645937461 224712407 933016848 790857456 811144790 388672438 954480517 202065720 948523558 406717109 506100103 283169611 943922902 286401663 11938459 310755412 191161656 984323329 683353261 399488060 545932926 4919364 736868892 525766166 912648347 977063605 319477384 370348086 732062770 743423458 996459594 386227309 893478329 962428590 834287717 808899692 782054770 891244666 533105768 331931820 892983895 678062190 428991769 493050760 745003537 43133495 10686628 742910764 563378556 718390710 323406924 517922489 538170030 825581643 91694596 69722605 522992533 879973885 91668976 862717271 120317473 794804781 276494784 984396418 850683682 378551696 52906483 907033027 487453062 968075777 682409278 627191137 720616496 944367444 398098878 719928452 158797823 486873397 235840780 966922478 690436179 909688018 922009945 247512483 424382080 154459411 505358720 769074111 588077614 395517866 795190405 952971575 28190035 209108205 771816319 137253641 517576591 715720200 432885766 431125936 590229600 592097368 236133847 454995742 758967659 714121649 369676807 968941221 283281706 375546334 156707648 408636462 336657447 825720257 906855270 77610792 803632896 63269063 963902547 250380736 966265819 358806475 111428926 378162837 66834923 748614333 623306534 905963567 94327960 632867447 672770745 671055589 166025313 386631009 790511158 271587417 497215434 580675298 84756144 19629501 413288567 458480968 436208798 433600584 207790753 151109238 916783108 681640868 74557025 168119061 527639927 345690155 291595157 687292041 775770996 369554348 809618557 150867664 29021997 871211317 978675872 767478670 965593991 122438038 106761612 445248496 245711969 132722469 877085809 324533217 534893022 52504608 194579144 404954691 860322069 464467817 170645202 810596461 482237662 530184110 907806597 616550682 68259623 55972443 110385212 372294366 57816684 991680957 594154899 470462490 234067994 63846423 14468372 902285189 399419553 189589958 249466278 163144200 441523670 393226786 286610346 23519373 482005055 39653756 958955396 71271953 556266067 507957577 208512050 681033763 617582511 745885017 200053217 763781907 241881342 233388424 542723377 744737471 297942733 435474957 786223374 24260684 773805854 439542809 263751416 738613338 142692298 152289005 406587136 554385797 373318633 482625961 796833628 405183192 465801727 813690274 266275806 762718341 800661434 55925510 446558521 24385848 204972154 199531415 782614676 540261703 146767755 231753125 636950515 949615040 74896565 22700867 420050198 784308805 909946945 544125321 195548917 664259297 987768944 394613608 735623815 816541937 840018135 849711519 215782835 381218397 482721612 931759982 175691796 258425829 411643637 111485341 787604181 958109565 982333169 822150937 539234584 722493640 691084651 504646009 678044741 378402666 74786982 701436421 961996013 929512244 474682706 605398258 119292193 258779926 490951114 37523408 117365568 471483987 340415287 784013853 479804442 715142073 526662 620500030 459659032 537846730 617694357 372707752 407292507 532486805 530034997 246309571 66776725 293174989 911387992 837514320 817760071 560700980 269889020 775273705 877430853 955797347 579569896 598320145 921726191 88987536 45632537 26281438 636518395 312253980 365195282 594905517 52780996 892392974 665634139 398097801 6215111 433508110 387172112 603250407 705493118 970764707 568134734 164951967 443239509 735505842 18849743 715056986 691881526 917824905 863889755 328633631 360663463 979296250 933124730 280229140 280886735 963068848 43979712 63468437 419997916 944893388 154596256 681944758 112773347 196579232 378975241 909299548 726668322 869248441 348957981 432746893 309695230 38143980 317297754 937542383 14529152 365465036 252440875 182645943 533912330 389268372 431037084 218328015 96434257 961968841 172022125 176819932 514914687 467819306 879346396 921147339 330405375 443963866 860330450 949357746 764537986 810277641 910373569 677466211 168905542 566643641 616654204 874098725 151844319 804933008 393714079 876727823 852247675 991685548 35506306 21382917 870910638 105334986 357967860 233076050 696009545 897296476 835081953 135321263 757004516 934136843 184400803 514789988 568301397 618268504 208271635 259638266 436541761 507248299 646233359 242097210 519002015 383349536 810562498 12932143 545642554 781687517 612311271 303274944 752025190 723684236 754585011 783531327 361985079 976022337 594470516 641841360 541423186 134544327 704221906 836686952 910623950 950343838 187817270 15208303 535932944 367099475 134346263 555824611 507542922 378933432 657352994 980229273 506102690 3122061 920021704 169251558 517072983 142118596 497561641 143545138 812509734 904539696 535174594 508446521 572400621 18458531 824113197 664988692 663095660 83235957 513034231 64634455 184365516 216522389 771976239 44067720 725215563 361114802 596606466 874223882 650399313 443073799 739257661 858243619 844392474 850462584 334160946 766430363 866257379 357879747 704427187 437417989 736206254 196255124 831303182 401418130 495716528 380320276 44700609 568046446 827939896 529227105 993751401 458359799 87067747 495045554 782876435 657468122 363940823 998175847 427355479 458986634 921738513 389699575 177919967 932885098 964818016 208429278 828233332 410258409 146354787 785341961 448401937 415081624 408096565 518347215 131448011 288749824 489033288 889460535 680644278 435634799 375266079 416506501 844104799 480522080 658875624 529385439 757257076 867193191 188543856 348731820 98559609 647732939 269697806 791600530 762360761 951680729 492520372 43962367 494953284 139060473 803253751 149543130 779063976 709275101 213213906 602364792 782788727 20755884 975271436 658818978 864077331 160086915 538335584 554163543 171003186 439996239 175593079 351168689 888990839 114284779 473745420 623798363 210206586 271956705 17007250 979808676 532450303 304127516 729369698 179929264 552296253 155581154 922434542 133085402 901755237 800158231 712672724 863924774 642705364 582680275 702781163 906249670 74243188 493238026 276086686 748150853 99122092 211033606 661951436 913140115 128710715 629852983 908385286 86336313 467446652 976138535 231686876 25647201 127268991 653531759 228835353 199098848 339327066 553322027 240418561 816601508 606322320 534642732 517600054 734369723 72607217 911991875 34220354 904971109 816808161 378787788 815142648 611541287 980535868 378090494 245624114 912510951 908234459 218423816 27361273 574345519 6805247 232365412 5902705 173799788 783517547 77978845 948978404 194801589 649997272 320331582 782390949 928468103 294569779 927193760 994848987 830509183 87144896 54535546 746384919 774681382 783234309 26785412 795383556 230665427 535108471 984388499 790494381 375454290 387056265 346724799 167301947 816666767 361189317 216720790 483951062 233955857 567304760 72477322 4790654 867874642 80201305 718956145 670917172 706193949 102000139 327874518 510697801 574118099 376854247 208303340 216412509 57622354 498869952 569884010 775686013 529118733 203600125 536739144 499202548 937752537 583451447 732785274 118092771 604708568 658496184 385466155 475424500 615357580 243184542 19826748 207367089 582579543 514127423 206535502 171483775 734782810 641827121 350514593 434335681 657509644 991343280 515093727 20393774 478423225 840438255 467812732 401656290 336734329 448713640 137720876 962648627 876967458 761696094 82278418 818530757 609331028 591380808 630512318 994417657 79629789 734201460 549695699 472355192 242007463 216004997 200452791 375584439 423052406 556515856 383637006 774729613 941520319 810319221 130550998 515558254 281792061 61867570 341205198 727397389 713349628 385719877 43600295 673542313 992591815 584165144 831973516 483422093 817841871 281479182 438399900 41705109 457102618 901513326 526409593 277347522 875480566 440742577 851119663 291089295 856002702 118551262 448623634 111979771 831429363 489065624 863250817 298116357 309874053 746520441 619601447 167990971 349243120 865381046 696513187 960515892 771555991 595805412 942565288 359671760 247549809 606308768 416716240 958213032 694744502 59847281 425426921 449070718 303270867 555481654 804142246 500960494 416771707 938394923 833703227 488878383 389093680 75290745 802371013 747462290 677581576 995431604 851564263 494611365 154549437 247553263 303815793 920177671 746324137 835355575 899320738 984516439 828567845 44938208 697477164 719722580 717001892 617336447 763776068 291711318 444309228 658436685 368111639 960174082 812792904 43896411 212705661 243214205 607610946 461692214 729293793 744433335 247718652 55076524 527058531 263798366 884236940 49540608 513058854 20429460 75620733 28520775 371865059 63400934 409169798 421248896 625941507 76707100 257965350 99306811 680916760 372543572 396878480 739161381 312586075 999075542 331487235 48665571 290817651 938919322 607530851 387251782 350950682 689623104 351516404 4456365 676010486 703505530 908880802 63526449 625890457 730500759 701003321 971343117 204141983 262336181 896526546 384682288 478948536 405507107 250924918 690806138 836017241 547792640 37702698 877645937 980293952 349040726 946783703 229723497 149231419 10196809 350016632 313814340 840693540 461766803 546319735 835170174 747599421 850189927 27791920 668269519 396153990 100328853 133121130 428637428 228156234 557389229 120834261 431078590 648916055 947322651 946678574 366867888 743745734 720995760 139521504 108219522 536376141 446666029 811625516 895944758 652406995 30777471 996114818 152099104 92979653 875131451 678858226 640073089 146534666 456598580 736402932 823019079 526095879 691812652 966982009 68505330 994273278 697806202 274333239 147956226 643334395 753763538 463233963 925902502 745281049 886343653 185083292 64725971 179211209 459200041 654390301 953034544 486608260 345804241 661011074 598006592 57923471 952830800 722429673 401374241 181786674 392430755 194221106 183031332 376390287 307241786 846050632 847668683 63711922 14236460 867520710 607961798 332833609 151826508 147732659 652591418 16267015 315201085 211990278 938033790 79082890 122094102 346972880 544345674 459411575 415343739 284938064 569010427 754803695 246268597 473814731 770918246 379326282 906521535 693574644 228348426 439319354 122336208 347555953 743196640 447449259 479006774 220761724 330065074 100473044 832019949 208941251 161873806 663628780 351283835 673806124 63396466 644977986 844449346 61415755 827562073 312065427 808043707 38320261 937028730 825362941 113083581 561581514 598344229 197320020 601213234 445659125 579808549 116718941 390951082 953122464 422331130 920797577 75719507 549788675 44641596 325549313 130314724 208376694 349151889 901605406 185347287 656060124 868575393 9944357 173458606 13174499 871924663 256445589 139500614 124268292 68761292 737359279 142669127 884780533 384865565 380011473 913968962 874364710 760174178 11513404 31997997 456619264 729584720 45241574 234052773 339395923 864251809 665453983 496575198 194782616 702656679 911492588 577744692 109388801 821892203 753730107 233115582 959939198 766444099 558751077 91700791 87794500 723620376 751614916 993917513 566474295 479302922 710035340 541945636 332032729 728593844 732369632 971801889 850151363 238586805 136639833 388689924 257889163 868995334 195228049 798742345 673592283 704394121 458940046 781596889 805016035 651007821 946040320 459046361 401198703 333260080 693921619 447684020 585304409 941845096 166450996 351576686 482337265 447759325 845462367 768722913 215992440 367341001 341964430 659633314 242891033 739418251 303100413 31818661 173974173 574401871 329379813 160879959 215816320 688267826 603160339 868941416 720254411 935247899 272844361 708838376 32465565 662458458 918633941 524344090 196844380 431331495 750105537 816668026 148660840 344597604 196163528 199668940 854095255 20339607 45930411 69216101 419924972 402881203 461428750 37482011 929309297 150970552 10759242 746691224 887647524 450295211 335508897 758980682 574570813 654948960 259406862 201580577 171088575 634954097 818366702 405768524 388517921 447839159 947047044 545181472 717593720 333600369 324616193 764895740 896209003 974973723 138129243 430377941 738116937 255935975 584721113 438366211 494291108 532753921 16658965 428260920 928312700 488618044 938731024 178923140 926375566 110533695 735195648 578599281 165472052 19332450 326708214 126323547 848583762 928782512 704794902 910240598 250568115 975539494 77277072 868211281 927156436 535353362 973093239 260848672 334887045 693028792 756932776 537159644 494427209 817129073 121072389 126853599 802417711 350173765 181903594 159899295 351139102 657888513 838899856 555290149 318508035 448211472 653594103 448178255 294776765 352450354 261041866 373779181 708733979 462098765 954721408 633685814 77158924 871596397 92381445 979650851 696655656 700655841 268845172 200455164 164424147 847181688 418142637 178979324 9030888 805468950 765157664 631882981 185813286 302163088 5699210 343984605 657259810 515103238 376605093 747424296 943913041 749239722 186665363 559524346 728147484 798811291 588867629 322259306 490644219 687974506 939543365 473377085 626105912 962637305 451847396 233246220 492994958 543445342 98727128 614362203 794992430 704654953 366644946 683460093 2390962 613872252 915992541 121292212 646809970 247956855 865308821 210047099 373856419 631249556 724998198 357983355 920482652 928226365 177262146 904262750 907695038 692898779 274075467 636487604 822758810 443362794 675020838 902693139 665346536 355808860 872712469 379902822 690596244 233023447 56375394 996102756 444660126 633068190 869698134 991431040 134461203 97138564 588903434 993904097 295783153 699058978 263150621 196015737 739109491 814350874 472711408 536656023 470019310 264846219 662296576 947820152 684462668 247672572 151334554 787092122 828888701 941861317 392676650 54266782 973643641 842279838 862670285 238813836 772016528 948373535 224723662 826460318 564805741 165110242 996658383 395956522 942215100 402742212 964279178 238447726 788000428 13139941 479996237 986950873 301149928 179004492 718079239 395576090 152164868 890816903 346546383 110901995 415337337 88014626 970208012 2184824 502695343 400172195 635206922 473666552 827142081 786299848 79761887 32215146 46310516 38794929 127143334 673593689 18426311 942523221 821834674 934282981 281580159 715417354 249733921 644374017 958934436 422830304 41793242 658218957 63993987 982279147 282893309 222309878 621589867 916475748 218321202 89793152 143805775 323349251 109032302 78164146 148742688 845218446 457132578 928175481 633366236 972627867 474752458 498083657 396358424 515449680 87072287 934623481 274525656 785726439 555157031 619075585 999808945 349191303 771999471 512839439 380358078 940597493 501588213 758850214 678200624 670410528 106134359 657352237 746147260 37856368 836760949 658174566 154992635 670532487 85578838 910223276 902316596 293924532 991664615 714809515 438112993 722745244 189758762 604527067 50868962 990230853 652045121 272708563 445156205 263036248 418709196 677022200 720499651 340858343 200925358 950596823 222797012 867982906 401338485 539933168 445480385 720480972 960410049 835897445 528782664 386841995 560034536 478050695 100627650 178625697 959278858 455227813 406147001 852697626 219809401 219194498 48978613 717213908 92337202 26659271 678584925 232677667 989684622 134580870 220061563 596333102 779738730 940776127 632214427 422379051 507014077 175184771 455851203 359571450 174510253 458064089 807975796 602340920 308710489 426873770 136166646 378389426 499435814 440603950 984201761 284258576 531528849 30936361 909846224 70307255 679183445 668481069 593853346 653758142 239971065 381051793 936448794 464479577 426416342 257323026 72823777 695989378 326634939 259012065 447184906 892273450 5479436 439858818 944218920 157291687 954014950 132515483 243362007 894966957 192537799 405489769 270403485 955983678 558069144 113662890 110983735 314294852 417830413 329517787 985469505 654437146 618241199 271232226 925318445 930683218 627069635 888806117 74722218 805556122 984118227 741567604 927709874 590314467 488830817 787547579 471831400 912560688 108105343 229603333 329997040 942645463 387413011 596242720 45750627 669326337 519983930 481933208 240516908 816407546 715875760 941743714 288293271 694920270 463836763 173057378 958321829 568448281 654304854 58705018 533958862 601178380 46410539 484426930 389818199 692306840 312978199 808635909 956588339 121512630 118013495 336227233 536513285 788819920 546052200 792787764 155500472 296161010 65536013 994497429 677698031 671990656 533664920 277378101 347948767 475056175 792152951 322861790 307216070 465636347 344462509 583460540 15693904 113378314 984797607 518900609 111369837 355108445 693646863 415414709 429013562 362698456 811922064 704551351 804286050 349482804 792910728 673364756 160316666 960515908 399863532 925121513 794791609 692072394 40530004 813607525 336502403 546843837 229253837 767452440 278381512 763868665 928213250 260375552 748609063 90427339 997088648 627317677 827070338 498442920 998629089 516593496 961117567 391609800 970634899 260392254 714385561 948735970 642362660 612781913 588766753 773917386 737774187 140511643 640632534 763975451 778622027 932845963 135487966 663657465 650846283 67784039 110783209 7758024 799288730 771086127 421789921 985434103 841077898 738569657 479661500 395858158 80016643 79417792 648435710 150470792 719989019 553989085 741563083 623970314 126474621 380338184 775291685 696911958 342597662 968397594 948493475 635815878 922486821 33966229 698375093 692156601 517650531 835458651 780735208 195587325 569276256 645618217 974390779 786466292 719173886 39066825 811607727 947381849 707757288 105232220 729399494 339609713 923058031 132655843 763281132 875032041 216997987 275588941 964869070 329092544 519035332 564782592 426799621 624334922 308860605 670526790 157123970 987997537 154078390 744476229 965423437 900319476 807277799 325319578 756731035 361215743 79696963 902110404 43521282 716650226 950250325 539767913 963761229 472548415 963898355 741175486 67270649 887061629 109344675 870484531 401666228 903952823 416988421 812768207 168036200 866373309 24377518 869402050 26947316 139741619 178875917 811201509 105733546 70357893 111012326 480592713 627006896 722771407 703347833 855312780 23468361 534801888 485059034 505057035 785686565 332215034 687161776 983111115 798858314 96408602 881491512 223795818 856696921 432388590 181195860 289960667 346626921 187622882 251745642 244454441 723295810 781276576 48781711 29911527 494866936 296661603 952690281 932079518 76945467 600752057 759850088 371423177 994860479 150414781 580506223 862317100 279403367 986968234 14448925 947713236 793314212 42380854 682023618 557853515 84896560 205038843 334015657 910646261 166699251 874905229 100573512 688148448 335527899 614985137 285041189 94244207 433781414 218192770 283681239 692452040 526717368 509658776 843586233 179828088 581985072 268454895 997828908 362652401 573719171 398021545 181278098 460432726 711593902 525088281 637019060 950595942 357248703 684799405 47884769 883815507 178950936 238878937 536093217 68282983 183310395 405447905 195541557 72785753 645073285 803692670 358924594 59873473 561755248 678551100 442112278 171211553 46525787 51659164 142615702 546668014 511008769 206449725 545528673 675189435 956441247 465401955 156246796 62090016 228217700 228797554 656232047 954057984 24391272 919995788 855630675 272895053 711688750 91104320 456235515 999734415 861127790 185890902 896185921 716239376 604317150 534108325 471805073 237427782 998627922 52872756 677994029 25810998 710196725 27675671 44477352 47159407 405123360 32771174 710340828 528394371 242994244 271939215 729772633 177289987 540382145 964475661 424062751 464107370 950950749 706974546 396586025 974645231 221684577 77412757 129511198 623253528 396166515 869980971 660283761 981886437 858663337 514751558 585196041 935492127 195557582 549222398 584681032 656183921 864746415 881334115 172982015 745722881 896647302 417786103 699949273 50472593 646872476 461196715 339842593 619900311 489106237 863746137 291467319 478161291 724864775 663372335 581707629 329181143 355867417 975870014 834665528 410016191 634104483 195636195 226451700 268807206 458549657 870562909 455013384 382517520 884167401 124121875 785549824 230888634 286929856 628685563 858377919 481840874 748017882 289648035 644641811 838821700 159479482 12134058 421586927 281321610 98384178 508438550 487498526 112339709 851330894 837574634 995392642 645893100 720771431 886439680 904068328 681673339 817894705 271354041 401023327 409843079 661855348 78565316 439149039 620313443 267456431 997666411 944245256 48292271 232679497 870095233 551770926 796843194 950947225 968723241 401768273 949314430 915175211 105915680 277634925 288380208 557688315 779193263 804079386 341320491 775469206 320174855 33701779 546049208 231339000 482929206 395321155 987047314 777634910 695224516 664366292 223176412 9908080 36042919 78795693 884641729 726023856 549647316 869394315 104446457 472234158 162353365 178721150 461839639 432364188 365542209 389267424 276826047 20978589 452808037 761057578 716236455 915853006 650946329 338910053 803267184 365766775 770121341 170619868 376415982 983820412 616270134 915959240 597809219 714389678 250074426 237300707 554326684 335709578 995024175 589421401 841228798 641835712 511749294 913754409 179989921 748759834 753871472 243151695 473839795 23355586 774594478 69133501 788971823 302338841 462776964 617457369 620043296 568116482 495890284 991527393 944890408 677890461 279153913 923610572 884646889 96485613 482019762 779019295 198374782 861982604 775815379 752453856 977293470 871131738 492066694 219387741 586885238 653587799 989240607 286882643 430702415 950754253 195996275 288856674 1120931 547483821 285476092 827286127 908197192 457358338 1996335 973066901 106877402 883020667 329894498 519872923 945712607 106696065 770217595 270345975 834411076 309406897 136093791 909009697 382666335 972684018 631069572 75106907 316525133 870388971 645188332 173248359 122286308 53508839 654955574 321324785 311338715 817335458 911023875 539256845 893614329 228038221 668642494 266917700 818489971 345158429 956993442 68528357 426168293 28274100 597035602 669585933 618772600 229840788 846986859 12909522 291078722 414962018 400403849 314435070 443206649 835617507 858037486 620195469 953828905 110932045 993417274 347523586 246727327 978896653 561820862 535994325 299789050 272673754 749504205 189296690 781999625 886331989 335954154 568191690 910022641 113035007 933349666 406240104 814064082 742307411 876784413 209423238 186721401 662811747 789035607 949975846 118832656 983000979 193197599 785857826 963221421 806783043 798603904 911570682 206015220 375202746 267839396 54674781 497930436 621718278 78471927 923443707 770155322 986697141 496656870 101522395 567835131 711937528 331319746 383368906 794324566 362173972 474476947 146820351 31920007 450230715 780177318 848644284 5527908 937999263 650256680 405341229 3884160 45854085 977768498 903976328 845155151 190903615 480918810 2004692 573144795 226551783 626354951 751026635 527786001 7047557 95246063 195244437 322505652 827424280 900751194 160366743 453653412 752172740 108094164 891727451 389210730 406064377 405206455 656458036 554439556 801149739 738738094 202425251 57390036 180798080 640144711 565269173 502128800 350441824 758604233 308296349 777824700 651893423 773513208 940274609 219841720 337302482 416049000 4100792 730240034 933452975 71191563 236268772 651432785 816344834 289053252 818430719 841202384 909733044 650224145 60222731 110458137 6533383 248297228 308129734 965239313 457285615 716988916 313080216 53851579 284819925 26321095 879263913 371173139 220336930 608247669 73405616 134791992 620732642 135441813 405277676 822287201 571394513 551691586 881518660 599478742 721729425 560673435 372543416 420818097 968149032 819608081 437934219 209523604 330705702 55902714 370720588 75220629 391944368 356455513 466264486 941079388 903561025 124956874 552703920 814271695 747125688 654131370 372523572 376154801 921226605 684080080 859780688 534520573 706589798 538080513 390663754 215639751 370945513 893203714 865159017 112214292 323271883 755564227 854146066 976167739 70916441 47211384 148216566 271736887 969838602 970980090 170580397 50319674 389840103 732902770 148265070 39810203 685729128 141159449 933800314 627156583 784440953 410490105 590137131 324337303 246386815 67513387 480350941 556257733 198249246 462105654 181429228 232441197 514632575 688209582 221625222 378012024 646410459 576610252 106517345 297611587 177277474 787305310 406424363 862444931 735734439 294545388 33133671 405325566 586693619 165046623 589182258 346837224 14316198 691619477 785131848 392056 429600817 602012444 553138849 466307332 224412981 788175775 534170264 92541711 460640510 299220033 813678368 436116177 824547731 725180310 742885366 901531237 585859900 513810037 168112680 904317470 161094373 180310982 339469176 311429815 177694512 460868156 48412370 731870506 438689335 650795410 553275725 292516432 176328626 35397136 47245033 720547996 741999885 417979574 118088483 297742904 745467009 95299809 827781049 765624629 623199908 285470685 209470977 99810777 396180427 387412526 269800047 63995726 262722700 504016046 550426868 181208377 673984372 88099885 418770753 183067378 400755048 641932068 897655556 647583050 695050933 642346653 149879356 158393951 701918261 377033365 558993191 122904050 75490032 435796152 881435532 186941943 506144153 722980044 421808378 820039073 777451642 642792225 844859926 924625373 94846213 333312645 681350336 951134962 733297454 785219714 28691519 928747980 215894047 711591881 806637862 173043724 955680000 397482319 886200388 719443610 694698952 249893534 138661615 865739758 12066575 521690682 328434798 984584751 64857396 270712804 102016779 907302074 935367075 844219455 881524655 473218386 358106714 381170154 96425034 571116375 343869142 266501786 513362349 275700104 151732658 907931391 730128667 571674140 138230248 297384557 715679268 315153634 137242701 39289277 505387165 192024830 207097100 109791788 492270551 776209106 480593401 424531597 498031602 997230705 559279594 906290180 243082922 998910879 759864158 572363721 350298644 26425946 419074984 695236061 139630754 429039310 383384538 481723756 588252773 508776167 359054092 357216699 395035682 341563247 28111418 923843730 481764920 612364587 733373595 658407253 647561718 245660921 981702281 131535235 280125962 481070487 668207488 695762580 289848405 425909967 867669203 896060022 850832001 782155510 670528789 799387402 580992046 735741408 490249112 984290339 935318561 154727200 348080217 148726914 390308305 716460077 319970948 544321866 238208773 111304113 152661466 834450633 653500516 631815548 261205923 302873566 531866969 588105510 215389775 732401601 20435071 726945563 533264676 374356603 720787310 327353735 791232586 149105925 150297129 414577585 568506219 168079364 398907039 205399589 4575117 426622642 275864819 581076406 193379818 923095913 143732516 724276091 701214378 964582986 626151211 712772810 603897217 412569055 656944885 693676949 468943798 619359935 809575384 972809307 101994181 157010494 891785865 538424510 289219666 611843857 989815791 195066339 306312185 947325756 955675999 195340074 974587613 141485684 108084387 13775797 886888656 253103018 814581918 565640407 801988952 367992614 349609834 890038737 241658719 314389971 892516356 682193151 303501855 694985088 503720934 424396322 779160831 848048295 889630146 16060488 245518851 737042904 609477202 383275873 329683031 213552467 256002788 266043344 483217593 636703932 153678096 159496486 542955325 319870101 777183843 551142820 426229304 623974068 707247817 814232347 249877556 544651732 96988212 276561959 362676901 243225501 549970472 62822828 219009298 312273679 509264214 44968906 966105585 691233100 836095882 680815730 844841660 592541027 817612780 750945383 101855879 333872359 447660996 184128852 103036925 456411098 194351880 835011131 208522671 686322611 681702756 945221894 306363428 199859661 216136517 448452986 866920898 945781768 498793791 490006738 635563494 21858076 596944088 168323382 863431198 70400565 906270705 70731166 226368739 229090463 45609152 291524815 174048159 695209886 560897539 650661271 463745827 94609621 609883216 419285064 753211589 431639110 575071419 990317589 424703378 255386312 541222498 674397828 128366290 743965357 3843068 429496474 472520324 332548116 276316469 42390368 797691958 461488886 416137972 83302894 122574251 568372683 61115692 462865333 34044266 449589807 609847430 984914566 385522140 225021133 183151343 120448273 140974790 845014222 628404708 539729659 138760815 617067994 289892863 322653820 809111273 610713225 359419281 574386849 813114429 548104203 451655436 83054817 187012446 307998693 874951316 804564725 660396745 498365159 486500081 133264265 623552672 912394367 138277139 993126253 27852350 296719179 707012749 475612546 836537081 678523808 520222265 181935131 785814409 877714503 762674474 990801538 72340191 148573119 628059434 908190343 463814040 983406365 242102057 578401502 340174790 343591578 672893830 408705354 198351136 322633805 997361598 933021665 283724399 667931012 709434598 182651702 692311327 224896436 368558374 514504633 470609532 25898264 4922755 426385129 652283303 531983032 445144389 176883784 825162305 222689205 676563502 370793991 902815208 975496665 812099590 203211961 328201646 328515287 712965231 248452608 411315940 55802181 127563414 303499564 864885911 154606658 77468147 772589577 291021022 439985929 345976816 340595277 32909223 771636713 898680958 976037126 531290160 586800536 951049209 106856059 800844638 736556222 481844742 942559105 769235487 645662315 284187608 887964491 210569410 842306840 126810020 206617352 815345738 595306194 277226499 698048122 889297234 74797734 543440268 99110262 72553961 569620487 116900832 927379304 160742329 643498203 859265039 312487041 609042845 696299825 848334916 997118309 121114925 880216136 932549927 488042655 738692084 584799220 796747899 372924619 554551651 589310858 525270983 399384142 994884133 359356028 406614945 697323890 45196740 105128254 149935579 652452802 482060184 818165636 880184316 774568705 44806147 962089432 778365879 926975361 41708275 380447146 465124119 461648722 16919432 744626877 287557344 868977853 765820485 626017260 903083304 226893838 332563982 386261250 429706376 979194116 420089532 434073419 247996265 386551248 529905680 356572001 556334103 313183735 830379345 351441786 20267672 45289669 935963213 479389294 289252650 708531420 989392625 54794128 389042738 959614631 136272254 910734140 175842414 319496077 495988936 781965633 787984595 85072431 395732859 468298795 803903383 178811752 722962168 89581154 896827531 201497610 90368101 878948835 635171439 241969792 446790992 526227545 258562099 733922922 44570824 219334623 776704531 219962969 649936880 45329981 122522873 503579112 435955477 834066240 295591376 428781365 434005659 383177237 42017945 771522711 583255006 450514442 506391671 63751660 334000320 484127988 445006368 529865375 212440723 719712526 816016899 88308651 418568779 237909681 77098084 490904053 801144369 726057143 142630526 149904624 330862893 409602242 324665219 566538383 984861281 187398041 553973563 984285322 275668209 182502389 542352740 461381619 290455177 508025061 51269425 326725296 790686427 850439296 248593146 487520191 553622570 325885314 251097658 88003420 368948157 869667900 987930600 172915776 184898597 487208510 346227708 589445286 409142914 45740505 355930886 289032109 356207813 355370881 302413500 757144750 954451880 523174036 63929261 768995290 48775520 244181461 931845484 763287616 603917712 761606456 465164016 482787193 610263046 817939101 735838788 561923904 55496624 695659081 797775497 341913821 633915718 506344334 271264723 671816723 507568148 178573927 433209364 766788026 279278259 234844286 506976508 255045329 44549473 831537958 405204282 370159869 761008802 285985103 554921011 646411224 995236069 796732986 454375150 778943358 486313979 668697709 60133745 394738147 582152104 986186060 551591630 466722927 819215852 284598536 729568284 831802075 528028878 857660162 632859070 545998304 516393089 895745448 890655495 637596252 374896515 371022400 941110488 91238329 347352943 167909448 701325225 749794764 802081045 390871118 56333546 214094499 365610470 911404561 875103702 474772289 952706258 738021627 654345577 193515424 686983562 714371367 279307174 881654463 382105194 527884268 220673502 148983216 518739624 224442264 843582585 512847520 974340932 183460184 158084978 783197610 68171209 477494204 112769384 142431526 50980363 391338310 648339107 46945258 419354923 611610988 931376200 952446815 729590274 485719173 915020623 797775294 469523128 9168956 830732707 715869604 585185328 174253558 601016636 707742658 455040354 613025082 32924672 678039555 650393104 790703998 520738566 817870788 300268227 869525029 562772409 450654051 710048636 215083333 385121012 534361682 891708868 234043848 815631629 929328793 544534683 288809450 386725485 196294442 121981119 105465092 337475865 989975897 186460852 487506404 533437150 260759173 890715753 125381108 21432347 658470926 175302470 801772490 213347787 643707490 704256097 437090903 726257076 763066772 836533080 839223715 307690442 884089183 481804718 488029202 219752080 449197398 885000452 667033164 951916122 89516109 293714232 718898051 984634002 998381318 155893769 464736008 609562431 41245840 921200833 782285698 622910767 363310296 948661840 208592766 76244332 41102005 302981489 939063265 759427650 583046562 738731254 858010270 861531974 743578858 958738679 854546149 293457511 981280508 775259307 776475610 604191558 706377165 83154527 163449302 737744051 248935285 282785258 432704099 754335524 498820074 34915388 215018356 902429233 784546565 174822425 626087682 665123403 595256362 928735100 494060883 625138100 326408391 774346782 416154088 976854713 575906748 27617711 933008015 984663114 410347420 620653482 926685648 63940804 806735065 387532968 337303092 171896777 724515413 501618861 261962807 689763673 806600931 319374075 148544765 177287252 683040665 371335564 872242831 14560232 426041608 226569789 594026056 117470944 868272870 772840774 326402337 629173042 51470023 125205067 282843276 272744992 362981491 980053339 430593201 242283171 424414782 884845086 539089765 642572869 256981480 596166904 251193682 828670783 765825369 453146148 112504564 189903216 948793335 555259112 904437785 836732314 158891322 721157133 491320898 404667062 276490683 160394655 357402892 471082861 861103707 442810643 318314730 349456308 976420181 746572778 929253757 511863166 327479981 616549248 707897129 79695831 588355221 456493989 885173369 751864445 108051986 496352722 330666452 975267847 735796119 489934034 742846186 817767440 685844849 118806318 386503005 36782073 840338997 589306737 145145752 282449420 723039779 347979561 925608762 614464087 879464061 671928860 555512377 123186574 125257039 471653434 578181761 342775295 656361574 317883488 556351122 697399401 340837060 348545982 820905700 538771422 595171191 836222400 778103546 102046478 956935962 79331949 385972938 664938933 246224129 127381022 133818876 804509509 941997672 523051145 475545274 890254492 38364727 315542482 450374453 340440732 26334173 819365381 313495348 736187276 855003309 740454827 665705533 475615440 255331236 33783396 531362544 460890981 663692026 354978183 474915370 548069600 822171065 859773111 506286583 923054242 559871497 984776144 884212503 443023364 512982667 882570181 487725941 568243322 741133334 241662488 134204633 697764370 684423229 316115361 164185715 414303844 510930218 720008351 567652114 85291556 835254177 176319994 356039280 967939483 40035753 961581180 445240306 883800591 583182329 894908766 817312113 434375326 848387742 593961761 786145551 529187516 4372252 692448240 620033707 906261384 418838706 947206818 142502437 641257749 230560170 842770538 856421388 177656871 516821474 836470265 925826887 44559408 652243705 590886862 66354779 878801722 223161690 807399007 146776920 898920419 245743425 109827261 467683315 696664719 98976164 723769051 221189891 67705964 180918170 321308084 103386210 92176986 121669246 523956337 878252458 983126647 149834297 593601460 776409001 608840062 76135838 43113995 997022480 10641399 3257467 990064058 109812624 644284889 520335020 802021848 274054285 651012706 795933481 51930548 240040878 81368399 603389772 265686326 324364074 498326607 816117309 722000508 944406171 314871478 229572541 6396344 884584410 716484431 667577605 144067652 274496237 538172899 282973902 285056838 743817592 138481702 369752718 6275471 882238089 360136987 976401663 479649664 740541476 412541371 692927046 985266679 785229277 205048290 533883422 441119454 863196939 437928476 521616312 861456541 117826135 7323040 743031415 728891420 691103058 385402441 277096281 666539321 787005149 298990081 96703134 274735729 383489871 759753 573718421 388859630 202923684 120936085 59950253 703560331 424094970 714464259 595613847 965849756 442525832 904807122 47472741 381773949 841732118 759792456 165056807 468736840 599870072 816279693 100567968 479864879 551393499 438033351 684165235 126730060 579388978 307292401 755638337 929804299 175399808 463710164 894930952 828813196 667283069 658806674 755057036 518194355 767352079 405044962 362117414 26461603 296578140 221920851 717824898 471543485 840969307 985896881 71160463 714529322 410288360 746932407 28179062 741350948 765171185 17419438 889507544 461618349 885539657 31913953 464759196 309340194 793382762 885364429 77080713 244865101 895010295 705096441 407688665 263393707 728309576 224750722 299054820 185350295 387887760 528945203 776808448 151708696 660024753 771221120 912800887 143196723 228408183 904168832 382910999 37362265 725962858 186094365 738068530 323780603 182202245 656251776 360726644 535055150 296106188 89712080 532536283 705486868 238771967 87250641 547005053 792409330 285812507 553938351 683923726 569106284 782209219 672846311 664140027 786725503 488545243 168119162 600937519 622724156 749880235 168629091 679113053 168800546 106119318 730790089 440446109 767856950 711120674 197279298 638733881 246939174 305984421 424043857 425223689 652660873 594826706 535762359 791684940 33711101 522616713 480797367 329320537 340879729 727208332 569837889 359218562 530926341 672643531 329414067 449851518 637386335 534004782 822971598 853514617 577347513 85131146 814084784 888845742 376459646 640658704 11126277 431895249 892672909 34155280 853823495 741687967 572796284 80897591 513904947 863486794 660021830 686021720 61745727 289468543 272227444 264362968 328686176 492742064 1421594 601740364 422840403 560331449 779238559 796960340 747819309 740073103 226935189 56486288 757374874 464164749 892476019 80245927 250058618 922037092 185607515 530509163 806469300 975190560 249685097 430439900 104194200 253115549 318959791 633431136 551204233 298674459 348735967 147382784 607083910 428064226 714228039 76904124 894132345 183096 639467366 67708707 475891453 765611620 816830012 910012296 948206671 615256970 589001695 139427996 335470738 669692388 654065739 900228031 728714526 794108443 891679231 286352438 343051687 765240219 491903802 829409037 73561768 321487586 998283638 925725903 876125816 77730143 467696509 590594835 199195055 13026295 544780929 238799640 96186053 927060719 945255079 914437442 603625575 399040927 506388548 316474141 681265480 862661995 216758829 146798762 722655372 325568778 138128284 619398347 157108272 137846680 864580973 849995563 718484266 465899579 923225360 570357976 60184737 761475649 60335616 228686542 964914834 418620791 143685492 206124017 490336358 91875948 827713674 741772192 98339833 656588283 65606614 414482459 542562999 915491816 111541173 852028941 744241973 527937070 833176238 544961461 637209887 948573709 679226504 604591403 277991106 501839140 719794913 286059348 791885432 517980142 834910132 861470323 158467079 953905722 426940213 171560169 152695458 473366225 824246575 554239796 60199804 514972210 200464753 173188855 341024402 252087427 429153937 673251054 71333559 722114556 619399837 37144944 204990554 224755796 927910003 339618728 422115490 462921500 237595763 105839338 589243756 240749109 889313976 402423894 849548549 945283727 872288943 411535690 228887309 308088386 372354582 593746608 683951372 161943262 125256529 571939571 438187235 513439199 617364556 760054608 817392701 658219689 859582183 569660604 362663976 853373298 238806157 456176020 371720873 929719017 486741412 298484314 440166581 493672617 202083281 138248289 354651352 425187896 503224346 341357427 460810981 233697318 766096989 269549631 495646368 515628037 115517970 155948250 630475081 670934733 820798232 276810920 978562967 635226791 170746128 94351513 510805646 420933873 7972493 926791615 475096953 584183019 40121564 822550581 98680411 131246177 155190120 182609060 544663070 412767402 565851140 817349733 625796437 442731305 63723368 24213689 734895399 608173910 221421660 487789265 832301642 449377465 448311605 919203555 537714079 958920730 407275425 592956694 711078795 285022866 354731943 936297764 759273269 968057104 471577991 956006362 189984189 870730072 928868039 417448854 736380489 455868036 290072567 723751754 248039187 562676330 682746926 938809388 812451309 839379029 390633405 259412125 325775885 282234175 330034953 302108411 692285071 963831910 93879245 859462461 583625854 920582188 40712021 593452905 562586300 328619881 717564970 831329064 783352172 338218203 846673204 581970534 720374945 148255775 513053702 809048857 750567658 281076369 753006053 825441988 587880763 208342078 288832077 572839185 551048137 966827069 850447781 864009114 431954314 675531879 556487486 749780134 433685593 325420087 253014334 677815651 167926643 184356663 672367085 348533852 52451974 143064868 94788099 962691379 902959025 648677023 736494157 634275737 547260830 932106630 150742963 559571730 243701209 99332450 196404172 515573428 784742997 448802843 752001369 555503728 342554581 86899017 343620590 814148766 177314857 269706786 568976446 770938069 707715863 765513215 435828352 871663186 187048001 505710493 125581685 122881799 330643507 468297364 897091716 672714285 124460623 583948097 502113355 343960191 598172979 519071262 252728805 839332135 667746883 417229466 482405352 149184939 211703537 341103695 309026705 317018177 651148016 281950818 469447261 166998285 917995314 493838637 702951264 638085408 286878476 766242109 345770573 503711044 520243632 22257669 393824528 512673062 348524756 485632223 126082156 975885638 911508123 639092153 811404969 531734689 221712318 866969254 724443322 412950986 892691827 421914092 227893931 584570183 305683112 371948307 539335962 555277676 779580224 938111527 31926298 405544329 803393827 741299333 475122418 461006269 573342821 574309676 782761707 856522955 585444196 631637014 411742464 878161474 502686262 852464005 671248733 677624222 575342793 115180352 900456358 961770289 687629385 470231231 629058953 218005157 491804809 993746053 882198398 52444036 298502075 152322944 805708303 753104322 350846922 376696137 170126119 504045337 474654104 612741315 388014779 872738159 571068373 230836345 458756182 700621444 719104599 870525447 880920690 342959591 87568978 428778701 777397959 200475450 974628813 880745076 253369041 668506755 998936535 870133787 720940338 329226813 834492540 779378323 148986106 317340710 266488383 580108972 392963564 640837352 889308938 701759781 406213302 100632854 755029140 459906862 865507248 809642200 891707201 238989124 312174189 665488942 494188786 874427647 418868068 707905531 632605593 736960320 547526459 726960821 618343430 693005796 742978295 295718378 920289378 805031015 434909583 440911014 402128773 165945972 345113692 4879123 647340371 159613760 764204352 431222214 383982212 421422670 534752452 810609234 318101485 533798212 235887864 834986389 369921002 342031818 122818504 33557096 791455776 6679611 593129877 389597177 846390863 653678455 995622866 748299166 837279290 533632742 594262020 295335338 724400973 533666818 931371656 102050452 684331669 452181357 67871613 73748101 829916724 178370169 762993589 291768934 244557694 925522890 101977986 132637045 824640286 876930707 899845828 708068385 269254306 914720808 982543866 878317586 551824528 997829028 9589378 927593533 768251158 674224667 18688952 223802577 567096254 526386830 794356469 788348766 868938125 788334179 748809800 420331094 918196643 340090799 623159026 407188748 38282825 278054292 686657026 546664531 211528675 679271674 666710141 476855350 332899389 861179906 257952694 794370150 212858493 71133350 834139734 62498942 618014165 666752282 459410828 899986693 971180386 372292046 336098408 226235637 139181201 394025084 725854956 930229537 270063897 32067332 628613635 600135456 252614188 179335678 687264006 189599628 299590776 571649146 820197796 538260356 946904340 150901732 221235602 938805113 312946819 820743076 472356849 31138098 411856786 50251221 744660521 146255503 599734868 366009727 173700661 733666243 552118563 117956815 178552467 518958026 456018113 156173641 785479554 369481079 703967422 772734266 936704501 111287853 241706198 838873437 855022107 468773265 524006573 283105472 511999564 704447347 945779313 107255328 76640927 868872031 727732603 442147114 234396502 954395450 704378265 623411221 771019833 926128285 394965931 140130597 641644825 849776583 304359485 992664151 760643742 618475561 619592080 779924924 140133007 69368413 816870465 480547209 101972051 555191022 725305190 91171681 637946905 601139551 808458591 371001280 948895791 192714904 721646490 245632139 996809738 997367273 934549034 168783393 693093088 759806797 681211128 456316502 642834145 601174315 238391781 209933254 499786399 518155384 783032889 127477074 691709412 160064026 544002339 911747702 327864505 139726478 736407351 309202513 260878973 807658225 630658292 356113926 992791710 645492660 737134041 226221485 392947839 312979429 566503346 588132125 933524522 185781676 400766369 611436939 192151681 502904794 247096617 113329773 198918935 428768658 81497607 6993872 197396144 700271243 223881395 237878144 976748457 50931285 10940393 89284147 150969772 890813570 234586867 636583650 669894073 187607304 26168417 839031372 243387964 186029406 326344433 543390897 234616088 326856479 294356875 736194867 252118673 264412400 451924026 461660684 198859040 908472153 612270615 381726869 91426943 863305032 793073369 283403091 184565716 504466961 118905501 16363625 630169752 621253624 486321187 491755044 303558157 189638943 437116601 67579639 869499390 161257485 683396337 386520620 699090541 375143603 88113980 227709331 558579119 684815096 96001980 778576955 710505721 44068484 772653864 85675341 205351880 865613701 616563450 673978812 916766489 191524920 735670564 786596517 267419896 716451575 959494724 526199445 185211601 631874939 498870269 164930637 628031956 566511494 632567764 628156775 611675529 913608828 821760905 138021894 364228130 816208415 8980379 691175340 129450307 795743107 387912876 242522634 809981550 966662601 554584720 139700038 379936039 441744117 912551915 823321145 846591740 78951505 923077769 972357174 544790438 624417859 703727154 995321883 728347335 952318941 300867793 490288058 308315683 32113653 216445751 752703986 238508578 487445696 305990908 253633256 653398161 584777611 674158724 660727831 165841310 281789714 490900903 55705108 603203729 889501437 176332316 38528537 355385210 893281584 57522064 916112344 74941970 629631974 542682295 273607491 253375235 450042150 845689839 512960236 933296987 398436678 550769577 849234553 106692669 353067130 588380888 690550077 922774408 415424751 244764387 385472614 744671107 200018098 709142785 769727334 473857785 285838812 716255142 333119507 446988779 713590653 492280490 501726295 429991903 851984144 835147523 25033987 68700640 231117810 568475189 715327208 509448779 389658582 231303198 942274671 306620364 313113106 92742846 985833818 184085143 683680452 393581713 564128861 579671672 45287746 886745396 531194434 646615004 633428778 470649765 363641670 605002972 340256342 711149677 608432063 96641751 727020500 744787716 155047320 209088763 133551842 494522216 938512454 520128811 647927941 198894332 311534814 868872930 198630747 542430368 447028555 425503058 191888125 52303336 99253172 790119186 958544190 289747110 329903525 485675340 635683360 436943626 411464671 296737912 86785126 760089179 430380556 871965255 143609589 676157217 517845210 946910952 414357917 769252371 722492856 138632144 613152461 787788763 339261819 744633561 788741883 194992015 888071 223001680 671810952 316164668 876618286 22329875 661456129 962491283 362212574 728377234 117314706 76943335 321343806 190842325 538723336 994637126 142145061 713809517 120583054 684128356 819270539 213392005 844632025 774560347 71206444 72388112 874342224 678057055 69231645 32195531 945718762 389916162 353427585 999984103 25286095 31635860 101941652 550463987 365232217 813066790 475675638 393578859 668547580 347139398 257891646 974027848 8764148 766071447 757265488 411730956 914012666 696396652 233081617 109748210 558835419 251328785 501681864 263554333 392469086 153486272 925878768 302006872 627704364 873762625 946638481 568415403 910596525 79544825 563436411 613423215 770630992 27991969 303397701 930782327 68108697 136709946 143823281 217124835 862149503 175378117 934369940 141142379 220781869 155515502 785744959 366899030 768135565 610085344 257025337 635708369 84203665 450262398 69698339 618668621 221369858 338818268 926432370 281930300 225699009 980031584 872860266 933845308 122548014 397606657 736081782 109150397 244268605 218324148 215276855 730758689 521790990 154898754 819316573 137155805 245211576 792079373 120458963 536434436 706434193 997428051 732198201 373572914 859489270 23609769 451597102 246641504 672004245 687291408 484374064 531195541 429614849 33311203 379293188 919556529 61643248 476330249 814488556 19770713 920685183 188812723 304696325 616501268 484469034 871188582 302455077 552627984 28132796 185644162 74149115 974702573 979879208 159544280 27084314 936820598 922306490 76133643 411267310 793136896 744730737 727632738 146379533 219240529 924469635 704231893 530453866 338669944 999478397 448902804 742525606 742078142 265088584 950090325 103561911 420775483 247554093 941943383 163171208 34274411 742130264 820548514 9035203 356049679 233604134 89891028 386645078 334217028 713480744 543803483 937064351 887761776 372358892 56207966 525162234 651359373 373303140 262576444 51905267 471572796 104475332 488419885 595268689 612739163 293445177 449443531 602055045 621888687 849688149 91507231 443909419 769245470 628793872 989192306 745258878 110614053 225453521 768853650 797836741 729066891 720909930 69977927 179052881 561539484 187278025 230841237 612190530 341131088 324448811 584876214 394035416 502590988 91144485 38571905 510792529 422653823 902811821 813323754 171925800 967785139 986487393 678919037 641069352 721630153 618075738 901346912 105822247 586030591 405071667 28771384 911109599 636046743 298235773 252561955 868995598 456395574 171321987 322149735 689638260 352861848 252876959 297417884 513758010 545154307 205502973 593143769 393556947 156948104 767178332 367428623 200798498 412870862 876364967 610201506 932829905 824781060 713770042 669319105 65120488 777160922 498987983 584220124 642829191 828271804 849770307 760991627 669177322 197863226 734199301 635889213 989877146 793565551 221105736 462913657 683144076 248874615 373778780 473162261 881511469 38364307 685681112 791085578 673533257 842783885 902283836 353364914 784959365 450593620 989278379 329263222 364888603 243214586 263007254 330921621 23303162 154309241 393541053 495109690 5445330 555246121 498922099 228289706 25196461 99794822 663393836 640911245 89446588 387197855 140744541 289164319 206505712 121088220 68257940 811942847 383457445 242963207 595091549 573941870 730981040 244484789 491560904 997408765 733734408 54445155 447541128 219691833 334212411 661056877 881778228 229231838 654008862 271249722 645772210 317468817 613199824 261198590 71387375 449906278 605808924 53577817 768748870 680247617 407373060 205243792 786146605 925402024 357211865 402132753 774905031 495002178 524339282 163618323 554221385 671678062 724045524 439981572 692321556 538812411 697251327 449901515 927412979 758686287 586528440 530973214 40053493 933580971 760599140 306794191 785923941 164210080 451339539 127616698 976166106 180438123 540375649 589591942 20949942 746522432 430876261 843146260 131558376 854545892 117244916 64072347 817445438 997960057 632016486 241971417 684411499 232802622 197064309 234386138 313140001 49302047 689470196 870462985 382110635 495109099 818612198 358805530 716877893 897311371 598557288 540624222 774093395 53420149 422882679 574357147 199216572 709361542 413510761 248922352 558529953 672700695 556593130 583129106 552614724 551068601 800915231 569846407 160662126 479396987 467362624 317880160 181577001 583629339 298194867 599807324 649394160 848889549 201063782 591351922 643629653 245622167 761532105 736558781 599094872 70914253 702888442 847673937 456703548 401295372 908963581 407229739 208996986 230418818 574607059 120096631 373752151 583266824 57879594 467743402 728307753 924977319 877527856 447557739 249718352 966818126 833094629 15835525 566466429 902754886 389324299 912175690 241753308 475962085 811419463 511408888 724960757 42097031 108187331 572897044 682377432 521264416 996443824 971879682 911386667 684706945 977199217 914019917 845032032 106475352 415347306 915013718 163332508 746023416 868818338 429325627 887931238 156889492 634390394 638879687 41070382 703844206 227030516 883681460 124013537 583484769 186859895 507679584 481448681 238771694 607286320 766444610 898292319 162315671 954880378 582789200 854983858 482870205 551792906 432936840 957866725 199236993 476768063 210608453 447431764 204082111 893709142 732991569 684891480 21748645 529905213 988736354 501120999 562214861 109552876 731309411 2155163 406234946 823703734 167293119 626008786 623448869 7597010 46109151 610293033 75535141 274828691 646268939 377605812 449028626 732380945 635980139 80381292 274553767 742173750 965784155 238622185 242440348 693486859 604007764 904805773 252424322 853550406 288540888 7441595 521801612 307347797 425716332 980027172 440463326 948402864 104907244 213862070 302483663 812045485 758246782 678712287 435709954 180023715 536919574 110839317 299090729 901669503 39219585 20541719 366087976 434173535 318714219 348367555 340873248 186374462 719904295 117423001 741295708 778725394 988148899 625383772 330779564 849065263 327197616 445268870 709490715 935074596 931269151 392773676 833047316 848452065 603373971 100222973 742816568 380509238 346941082 77957316 289910725 690794020 517190620 930750468 128703449 732119893 732588889 348931799 112629936 10551513 335337108 760754502 197109509 707242906 873108275 744283799 94300434 365650537 208415185 16025978 164841853 741471112 759613515 378704194 228439545 478447682 127571696 402851769 754452253 284894839 981060645 345882150 591544964 391485120 308855630 18485244 766063947 354488624 775822020 806072713 651894350 493890777 633415781 571290555 879722529 325126033 607829685 492930997 237083765 642815980 18757235 295721753 892636281 938313563 870971450 260001936 341972939 962917545 504961022 709283697 671018107 562233353 381451650 332453384 669433420 836665767 823075461 325519589 896208575 839325449 38879658 592487006 280825723 638620641 115306808 694120880 6862540 107774991 959739873 955286402 360853012 89111682 746519699 748248550 28904039 232103706 636754690 584514874 22664328 122773 723516720 327315423 105096312 467375415 337253600 897107681 438006680 248727653 824026114 624120997 373749210 632504870 105269310 542708353 864887213 937171823 926511175 644946647 15298784 113850002 915133092 611116433 730063030 217593048 570475674 924230042 771387775 252511235 803470716 553183447 912242293 296417451 356089092 952742538 647956030 657848951 135947961 126932533 812820403 710726772 918947890 853105203 466132947 220979457 264108201 403438688 930996739 52699263 710732816 773446895 728053064 524432645 530347069 762955692 49310021 304692085 447057031 250060810 197352927 36555514 538842858 6260124 67719864 97303282 885894267 206264343 462646144 382821012 651157354 749370682 870000707 180919493 248153739 734899218 18070616 908974815 819510386 660503265 508987603 259570844 784126745 168687688 355218307 786847555 127254663 558733447 1886070 896033345 297312395 849510094 854101574 493827369 105929379 284924522 914467602 292232879 881979526 347615605 636295953 214332898 35657526 549508998 577040223 51942570 327739539 675249786 53768317 38341588 32393740 645280811 290746585 854340314 487052182 214969181 712921221 103353141 140340038 860006704 500884999 298166731 15539662 274213752 971611373 379196240 769121358 175984099 311699132 165165682 465700894 898863702 963931628 135409839 651938858 805853700 192675429 51855752 747273271 234582763 208819979 899872799 316969167 482124902 598094395 684220218 3092595 87081995 237406125 64934140 573934660 395344023 285021706 741574554 246171637 787817192 459220652 163299022 841658222 319549208 661025914 278827256 109420803 677074279 361326593 396838199 768807611 457982720 198694338 56763459 319310512 650685304 268460169 28054342 706441069 962285830 463926749 938238157 276176397 606732986 546541627 910847719 247160439 711985026 194626398 676334 2659260 934824296 553613609 777119070 85298552 468181465 26524202 929702625 846146541 325272999 880630586 822942834 206450286 567122844 289717807 186925053 692846955 461578734 119814382 168686857 664204721 356963962 453416343 772678667 350825544 158508152 193582059 253491770 632009305 145871460 964715168 48102601 824315589 328301014 805746383 628325834 510273588 997190502 816697135 400757121 884947056 261380566 159128374 847855289 500347027 743953698 691956845 12772090 986559004 749537680 574446392 974390336 422472824 576967772 549154527 361660772 243792843 732649622 681602748 350264967 938838023 822231939 911195126 151818991 18046103 138837572 600397812 567420104 389344345 94793027 673157325 759922965 666214485 490482736 621988940 40921658 942742290 396064527 302370448 498757865 593790012 191018690 574269406 130392283 380841300 905748431 361659411 739318840 817687060 756106814 162668797 972626453 578609707 969710937 438128762 316064067 100551948 770909266 53846696 591603287 384469618 915480704 17300727 710614940 641666369 716704698 819588019 233506027 232721291 34556972 776961457 408752208 530991202 973798981 509708699 807220885 289140717 86112206 896945822 71736369 226212338 687477006 772397870 403535987 964349911 529319304 687319671 316275819 563848209 318039990 34429795 535637827 866231422 237988503 930154433 345444706 208347139 582774767 738209304 955865939 83883757 29407049 75121278 445101695 566079489 52019724 55405133 840058230 551368959 687061916 461796797 881398740 934010039 606036257 480119978 290518812 584977138 431449695 833883402 133618256 65926487 856600020 741572103 153256817 365487509 157077950 318791999 435493938 170074502 395962010 949766202 157350258 812088478 674915976 775728224 219098606 576111524 441766522 165851675 486057301 975757038 812047389 959402482 693971449 140012706 34415815 951440859 702018688 125633600 43371100 632524882 283486763 209922607 141516798 114847658 192697266 557242695 346383346 709195013 754258623 805403157 176307798 654662932 512340613 502825923 984027198 619230947 685607454 39642525 526244563 155492646 53322055 745638934 641208064 117488764 602175956 11136215 919314789 716793216 374486759 48272917 653825067 160907320 460170790 316203490 219288897 623557394 757404484 74999741 507021360 920725187 53701770 314386263 922064476 732072067 790108763 602408158 434359748 482775580 83514021 370310052 661515369 870668867 807479938 581584940 782775238 987138604 525665566 364121283 964433473 670805395 356332423 582942805 757456217 128020658 318658967 676432535 373407243 996121066 17454746 13882743 820841329 19539222 518325846 58608918 19626834 699338104 839932345 540970896 699415495 207907948 687998927 178129679 700236066 835099475 148981987 881003924 332634393 49503324 7010869 736119985 49639144 691612165 572678648 863601998 958235596 272093463 873800401 428824157 718995393 826326409 766843813 931156948 732013760 831331220 428491841 978893311 692198291 88008370 136529646 243138735 529625490 657298336 248820151 114046003 225696536 299139942 424879617 687712965 619421999 364143335 212085514 4164633 404573251 52650532 449355800 89544752 19341219 275027209 45571219 577251881 813630450 792734510 753166726 26561007 99069903 599800415 175217782 745985264 71958180 687738605 59938173 328449512 168464517 839511595 401156317 186935809 551956703 323497233 166210891 880406775 710045593 226617507 53490197 938558630 103599536 428666541 697617795 471027632 197966376 611122537 758773504 28060182 15347209 199067343 87342039 193471103 682557791 487955931 515124914 546923133 243796899 100536820 995021019 174247025 743222448 538983508 899859511 428552268 56329448 100296180 707005830 538826008 375045526 340646103 142614577 844006158 367940089 122346054 342595470 433493082 935223063 798461158 892258276 855106957 596630374 515691164 732267490 946070235 969190843 876751005 411192469 360362151 187441489 943106002 955521674 520390314 30509798 793056154 485731429 876629782 326738394 263218553 321503906 210807021 846252665 519930294 25338774 366592930 455808268 318304236 172875281 581991272 205735020 198880117 847437650 423963019 946191874 250066823 490879347 261733012 983579599 80621793 742253096 88051221 35943664 811573849 429367938 184953858 571807236 178799477 613206023 941894578 215234601 968942339 420597752 697455411 13596774 635568808 945887317 206769047 505668721 881858076 448071573 457767959 804910089 505052097 687077443 200655323 596779171 178688214 165747712 438849114 293274642 628552173 556646590 878859393 307857103 36754489 365062548 363145885 613665451 800148950 238498112 243139936 421273402 651272804 383919359 730648496 308866024 151517941 419240068 537893307 414788964 875962015 937377127 991739748 106962120 420545962 200760190 366340076 476054397 246743714 325135534 498858745 837331409 726928111 688399622 483201988 177686306 273053415 283863875 689949313 728240476 802482418 385113398 202595093 763943674 775646563 625338126 956954618 534540302 287608978 223350798 454251042 236655898 807727466 21907909 285515823 111922018 923390035 728273741 218028246 875341529 404755323 602913974 808228040 439279010 652405050 346694919 885202147 106109970 388748034 809753456 480646123 710405632 75753788 393170753 238434583 557844598 637677080 829170485 638646625 10767797 320745499 518156344 320099101 60058865 466548707 148122106 729775857 334768056 688325266 127039165 410257485 740429290 507122620 889272073 632401812 674897407 925961108 198950909 663314643 251600692 398841157 975133242 354645218 198079603 94628009 56850329 62564886 619936513 917692612 883694025 784638963 919660023 634454775 79661967 146729730 426104324 775277795 991172757 189134888 192274162 637200115 959882814 943026402 990762988 148603529 647650696 489985720 647321031 854822667 730389068 597560510 390967027 586940227 757586524 315299321 558514290 907885301 518374496 384528857 884441443 985542977 146373711 473859228 654069191 626042873 860070374 781116423 461196279 713981635 158674170 433456047 350055900 27893611 985344447 729689351 356853468 495738899 67931109 379819206 874767855 407736845 410410465 861360939 31565475 410403520 641856152 756545649 435045286 246849601 65470450 257830824 691425052 644171124 772032191 739507089 291326600 531603165 785228903 369794821 59089986 113025731 765551494 708082270 281971891 310802833 877066125 868609059 259240665 973266075 592694713 203471578 448951692 428507060 590869791 465696891 359405161 401408834 87945326 199197929 791596100 516769463 560011230 592585750 161839435 309833465 878995320 641049975 836363094 413778203 83906859 842084522 841949597 644753620 717668714 917147104 53243601 822549280 582100276 404262453 750247891 561840774 134550831 674495400 281942148 948944682 182199297 823986027 219791086 269643346 644793938 276710816 704706768 86611277 705333455 251103456 469125273 375436136 210743611 650195876 579494347 43705220 964174830 361010811 508926735 164238309 714408166 828491076 25121795 920946117 442221267 450329929 265095088 312354116 812511173 369980620 463618261 62370346 402588821 132442513 962670745 978078945 575085180 270414790 131011820 789784159 638927506 692567996 570079440 48702911 208463325 242282559 507972930 733392710 107438234 195678745 153596924 866694253 28959991 225142064 332304867 79305318 450134413 429018735 262432217 897137712 68905004 417905140 30273467 590994261 527832356 169462398 512894227 398840274 983781338 364583086 378855960 691977881 643873057 812228392 947462423 360282542 601634195 164041102 557573968 901636008 34299593 99889726 192859751 201141067 998356616 551097567 839552212 147366529 107640563 214293048 297125106 534951666 332588967 873138660 158880461 330333225 633132343 581765560 687904493 825299151 689121836 995543745 703352035 389995102 800696034 974738891 769515016 554532484 746435935 88264587 513771178 561871199 209402336 436951626 754837486 854299589 491864818 939592788 437870363 407402305 170538808 511480009 127746161 74259298 803494755 87399222 909197335 572127073 462951530 972623221 144128349 924570343 701383138 115098380 567825145 971221259 310569711 106886995 86823974 465952893 51214895 299368841 627800819 677981544 801557946 89839013 541991554 216420472 557037263 978581067 292530983 127352017 607461826 792216016 586607298 818447902 626099704 773366679 944518115 392900246 417991337 795288193 810554824 182630847 538997872 828586557 33566947 220179984 119899140 796778649 767219293 609017012 787926855 525274367 559756891 955635068 302415802 540896778 152209688 232416024 223000083 919482260 854947309 53007818 907482875 824867509 31233809 606680802 8205989 532557688 723799247 40462381 650377389 728594441 698154057 318213543 280298982 154615544 434082615 543563516 317090717 879007873 797633939 312515604 143275876 772665169 53641835 516845862 410488987 611508557 848066516 872116610 906916299 439886111 15261075 703360455 949580383 84885249 255307059 261793862 766871251 610890794 553581479 674126059 780907569 875499098 761924406 304856107 881057940 772705806 759169242 123057747 471928755 204414402 990224248 690356700 18742310 788479937 170663493 791531638 206877069 733116767 573444710 14042919 668237151 740575301 732091499 778970146 57071405 259541149 701101779 144017192 140050074 613815786 617885187 957223183 394060768 751788136 993490484 867358375 248054092 201602812 279087451 142575371 739151983 853569361 874559468 207051093 808854175 823979896 904144470 27108928 991184838 265698992 627386227 136281502 187348341 258158287 893882857 580383491 408235029 608008389 506381710 86125016 984549235 698059558 189933837 70057052 21158939 841476390 333504291 717605355 282596299 706928224 271890762 198101407 356453928 459646754 32539821 995242817 988205655 865664879 748748184 200832189 258100135 541266679 491748844 55811267 205600501 156059761 624158251 711695297 988351301 788169454 818982493 939438957 846788112 33842437 802557013 311760704 691762502 400950446 550787865 866814678 766976495 657395116 410115741 481885753 553676514 44098269 360619873 47809113 569422500 978641194 430550796 997422230 21101528 250703499 467166747 417433778 881574514 124733619 801528682 256600944 755242305 717633658 45236893 636530203 579561639 729054600 118382594 418916067 806912130 882614718 473225994 523172906 765505113 683149162 863935772 296489070 711196428 525601331 118764051 807710076 985505171 27252743 944099268 115075236 58658864 807065700 132168929 622007668 3867022 675578425 969472504 968362275 49696731 366062247 675397807 323212345 368270884 254129487 770105758 407438871 645452449 404929210 666211909 735824382 269887065 946387277 265909488 604405286 191498575 345233325 448855937 759291050 929803864 835651782 577761491 846289028 362861101 483886208 656927625 194036682 498029062 873473957 567680168 432074528 543937378 306979318 240443406 127569964 175435685 979196917 862333625 741604654 926606887 245493332 788517689 492699718 448621910 854164656 428196127 446924275 245491416 337360445 289458415 595036474 649730144 300045451 141800993 369225237 267582712 106326674 517494957 555234119 552628855 283537224 616052185 245741930 122749721 835654100 680581931 767811597 774275597 780286678 329020911 667612873 634566214 486633579 610602803 8353087 403309054 334882648 598407980 800946688 311051430 400533227 296933395 193688763 706931722 341245701 219294273 492910908 25052265 782468163 393378258 696576434 409517250 275544204 572343117 259112521 71822570 645715488 959478075 835257628 387379001 945544609 326925386 369953572 600215765 491165870 958680113 713669385 788788155 495527486 355944544 789391228 931349211 762683410 881982113 944189464 507454262 640335404 212840223 360824038 55908556 273621118 997750703 112221420 61951387 533236321 984772481 999720236 562076239 956846606 125546015 333361795 911933849 905186147 205782433 207464757 677587619 663490700 723025007 250550456 511387073 617742442 607186889 428208414 324891686 730153991 516654350 209226130 234128112 743133673 186999528 494492907 271650349 464830680 424898493 709956128 266865791 282986013 282708738 374569588 546236739 882828107 5824673 508365029 304854032 536094380 701271631 658254710 992203118 17585841 569805292 533617675 895852981 670522918 289861570 703307544 204619477 864349524 605637624 671983123 68752450 879073464 230238720 643162944 769476411 887052885 750707182 483849892 718442199 148814747 974576892 196038302 33369257 375803662 54514197 777620123 885011031 370251057 91659997 636161715 90387661 757005805 957315086 543133001 359450429 37356769 411099817 426017093 211638456 105769732 848108759 494360881 102762515 454054381 512227180 59408100 879625226 823016397 574924010 269707369 859675672 383417157 603624577 438409412 697458496 281318165 485726008 301441076 400454796 173733081 442065107 601032629 851765762 483937530 55348978 64630964 695548980 277462305 255751040 252334749 828625936 983030460 458049187 237502030 106800747 144363593 3681198 164139003 174473831 906637606 45593958 420733074 575991542 729861974 689367780 473888317 84915363 325552277 617312318 165527437 374863005 692118916 242141495 368600337 41795372 216165265 26177247 145333867 544955499 179267797 197413930 553830088 98230693 731048952 346351591 154174339 22562336 768566708 968773454 411727647 661985550 205462552 268601064 58166474 372096827 523368389 890253590 788361808 222846329 424203573 156172205 876151017 58480924 848057153 711470580 507565609 485430807 741162800 303233279 63239121 139878629 512888432 443463524 820540762 951597880 506359408 86113791 835532534 721424036 135165970 952173623 342701654 646906164 528844305 240695912 994342556 653003094 348523063 786666344 191593941 64359820 583697644 654968176 677893428 311572505 58150141 974299614 858198565 482451237 865413267 607926835 876774315 864103089 830934068 636666032 427373670 806134988 653429259 802068165 224913066 982845791 256971581 555811764 792099549 708050083 810972935 972039955 114075754 208407904 943288371 939714999 289736074 909851085 700460206 74712100 616073213 243789501 507956333 411806192 948478644 40567447 57516610 247078962 275268306 41209677 981931599 529598914 51771780 594832042 81997050 876848395 841699220 318112997 449665052 615134140 285931806 25821569 763173308 363813271 768491316 708509409 943650923 994043234 16118432 986763809 579589568 241816372 742177115 384059854 803105700 567394326 855058960 798613694 250910459 871578491 410449179 594334821 728943184 566946434 911134050 68253204 192141676 768467780 569988718 451366976 688680306 327847857 782855896 26415926 257602873 245278116 342481879 64828687 351936786 921767397 783127347 758235089 372908085 659293391 824866923 705716550 935682361 775289993 456093616 394777422 616222472 123194533 655489184 54128263 6594914 408796248 859745748 276888360 877023501 935681738 453841467 506690840 40879685 748456268 975698259 119016648 590554820 751778002 611704082 224421121 540057602 926516580 732654965 803515124 739234360 15573196 654041831 323098342 541071478 956985613 926372678 759015195 228537382 17090811 94265839 744574434 757468478 737981542 624718803 505957327 48830295 735923198 645732785 234213633 265834281 14029669 512086323 837213682 674643666 835752835 56993454 68808264 836894351 722525107 14903197 448958937 453098360 464969972 164694558 283825478 877576357 588443069 299538482 983826374 699615955 446032823 689904086 304649995 939968158 376586692 735934125 812906846 220063453 626394687 487061157 244064244 86331976 988593367 802249536 91520546 157070223 11226467 134010774 284644022 952999635 141157848 22366643 348341420 121581896 556235646 647813924 649795595 270492087 150820526 676859552 117443609 896458861 912805793 441044594 582402857 340251123 210324491 734822505 581424456 846079242 306096420 612402747 595970045 908744885 85610905 153898154 815138851 416888391 729448439 752642602 728620342 617351498 998853332 425264969 433716787 125823765 61213912 831221853 963327083 327703629 519724146 731599374 783313064 393301415 920961840 800899675 873478323 215476060 515231681 633523655 52717555 23850306 7995636 106445875 950541299 153129159 32340605 521922443 992847444 975566334 708846383 278657186 96191349 940975400 360034053 903949706 580551469 247392553 753540246 595165535 654848472 605051901 427816539 967709509 958120783 289975397 837490438 351115604 111643449 644950401 473786862 765953270 773601634 213496257 858993744 556034963 549783650 592397129 323037920 875910583 42905225 931956841 477235633 399371264 708356537 133953487 792678103 804970996 592643423 595420352 798976719 718740827 240116455 797205974 306811285 828504849 309638339 546903116 822037153 560343913 879661834 6646886 847816486 764174525 337564384 553189192 75917783 460470796 585231497 901373737 994978859 777145982 852065599 92854131 324005344 929368727 663282696 26701837 414308791 558374056 735462657 883848793 913884379 917735606 124883579 166621740 304383557 236987535 173683077 475564907 366887747 378282157 947284041 593774455 560312730 778423491 16314820 358965910 956336651 335915299 619940387 120321585 417016504 525056442 293797246 981416879 848968957 886366211 825410186 136773129 650439338 635709578 374660122 696910930 930864996 934887463 118716197 52289861 174237897 625615018 300611653 14063276 762227715 979753716 149891619 303964558 402991715 406568217 846539300 60980326 283422653 550195783 155007091 562946760 188949285 76445010 432336741 424056241 63298909 875238078 437244317 669854002 646470196 467645122 796063766 656549968 801954857 289130737 34903665 126713372 176174485 752595910 180067401 341568644 42648648 228774921 364937053 500431709 510934505 272548046 521695955 391997601 874994323 763071546 662079197 8963712 343819768 548838929 337142080 436806633 42185979 334744488 33983514 741933555 326262201 793085376 15939169 870660649 965058043 684911877 989610722 227826809 794094142 592079832 698246678 316715164 549356013 377503326 314362399 109755115 831548348 29437745 6478239 979257810 809870803 567883773 388104714 496100955 427368533 193193331 314482073 120425866 711594838 126573335 907663041 181034510 52145083 515269267 243254436 240775321 981354578 1340821 527357641 363309239 434095814 939966852 72488340 699437384 13329770 258920414 639692559 239891998 196947630 394842054 260740595 821664460 250952609 165078333 796866499 29160057 348552114 181011290 448623287 112484627 109998059 893398435 426371728 1816487 91212633 764384742 905025213 918302092 50660526 573894095 698339390 873574548 22942145 802477067 540647837 548900275 901767270 286758876 50462666 226436858 327675481 938518164 260640254 730128650 930617581 118542848 78774550 678202918 538240413 169804451 180348034 900413298 745787705 731284023 924778083 578081952 82297195 305761242 281372401 581356875 653520267 539259809 969869918 383384999 50244745 238665015 576339287 615052177 646586981 706753626 146669570 598655058 370213849 111648276 249600746 320860936 599723025 422191241 999716738 336298803 116295929 625758434 340097558 918135542 717374356 998857396 145824703 776324278 292364809 345525875 934113318 975783804 826555953 477333223 981159481 114806694 194023568 314996327 422693379 968629565 327303795 573858780 82940055 450463046 518912190 261752489 936880810 592886128 102232805 209937438 653222014 168315314 122471605 117143130 231306069 400254346 123507496 742627449 162372193 243876281 424653694 471861628 107187461 806981252 554404958 360939618 963398052 816784715 742059631 177737750 191812279 989917351 548222529 468873915 53533409 699649318 181355527 494865011 833104159 363696932 241630276 567979585 944957023 232662555 258594253 963349794 572796692 808907779 809770830 388756669 601572661 364854519 716610866 407520587 297764105 746238984 174211366 95887936 649480157 435414336 47548416 726841513 946592143 501533829 553265465 820112241 683920787 990067331 478993076 62324547 311673146 812796383 899847770 266516345 389361610 743155075 264446345 644357747 271642446 241588311 551152201 344446261 200509653 96679991 507428413 5738732 131399011 514327736 210653317 299666011 797146084 660288131 733585611 934467311 621509636 521782880 949794798 127533040 775007934 74593039 349885296 635432972 356067957 884038625 363058682 464068953 6865359 936856206 660322975 614685640 552624378 525692090 949782257 143576775 740938826 866945130 941311162 253461085 278204645 246512622 105749056 84279282 333573427 972596677 320091106 680074756 372304793 192253109 40261167 528560235 945446607 936172893 522447631 806226224 369289824 529213087 919596130 816137871 414482161 411183229 56998509 674639885 692734544 314248947 413126872 811562791 396550302 960825855 62440152 999013975 179903675 100132147 265487897 592766391 39977613 813864206 443589778 572645079 372365825 747529285 248895473 123435446 221093378 298528168 515785592 900872981 956291547 922979227 580221215 83327210 528380136 448309446 763789692 45478519 836734116 563284916 838580533 508054854 248071712 851334064 685352571 992145634 602903472 582926157 282148406 592169512 262160176 500699583 609457613 512237802 652969139 462287934 940709131 393511284 810687673 619613840 602249430 690083856 517196754 902472657 520175614 329666413 559398616 258705956 450676205 209943316 863061516 453792256 117784563 13332399 59100009 768181441 199829966 61422912 203193075 483857305 878418702 843378259 557012040 939886908 316602175 42659336 737455094 684999360 619139423 433434059 748285599 786004059 32089746 596563334 570776348 19283559 304844918 994308955 691332357 336612670 205089142 759048726 61824812 145261135 21183720 969019930 73249659 432154612 360021043 782959214 63739371 186457990 629644175 865240554 772730870 923595469 490486092 985869666 635274542 763064039 129271795 833207768 481213558 440275117 698428909 432286874 294385204 524526075 850919782 308411842 730614379 310657026 689819913 41015519 120710043 563797195 446546300 8142003 794955520 23451761 320546023 169164618 734769807 321952848 268089247 36546460 562118966 4488403 99604568 289930870 989077246 921224385 354870775 507472812 83052253 860547316 367609101 87514456 860415982 275993867 536020711 655003594 955721931 487720907 392781617 512215949 177686267 114435929 32182998 893149788 614542855 644291121 616741796 301437245 521545873 610860050 52934882 541001389 4492141 122369363 957620087 931836197 695122712 605343522 264621280 454549160 810526078 905501746 215429867 930852006 298788758 808358423 329290483 419461212 132482526 938791043 171293231 246121010 755174556 157868469 843416271 172160809 835059578 529655078 448127251 33377507 497910036 754374861 834343587 284410667 155128506 270723693 301474273 344644748 195120317 919595174 820923336 893319812 950637056 830204546 870849158 11364272 597071838 115675070 501981599 840863530 173964894 458803365 70937291 412376388 383942723 68418842 724249059 15700984 643289729 635565863 430273055 414529308 589809963 494432484 698406965 716339847 177945452 802948756 525492790 397959298 330606844 685179239 15640358 128856618 346390575 665365537 763968510 175132724 399964576 538443728 515008309 296144895 149522128 721580644 643227247 807965361 459902726 978462956 746103005 214348665 598607497 391838130 655363942 744534154 265361615 703038387 304937562 773367557 500059693 213851831 82245681 166306063 251239111 940612843 774399884 852575899 745773984 360406196 435939615 244717997 377442872 788386617 931891077 462112550 254380470 424908153 536744508 178205582 753583828 337563396 969463967 508263730 178938775 328581027 84617137 540459130 229222423 981562804 681042642 956515032 297093738 901457746 849707761 44312671 136094235 914125006 795304184 478550326 536674282 387045626 227158871 904540157 626163760 200896124 415971221 920583850 398060296 539291079 767527485 683312218 723966334 19673288 892933293 988679811 304066353 700522210 438064174 581614402 776171422 770461289 139686018 627250174 312568570 669543927 477333721 857652958 130703981 451208702 206731841 132140161 836504485 338597769 775802742 732575757 317534364 947017370 705969873 721008548 11768209 168908323 460003608 215070350 413178748 445499880 931949205 842995932 852200099 666635548 589687278 756173321 223001123 847526822 741169887 887426857 756978273 859514058 745651210 861952375 334341778 409417972 972958981 626293200 109970001 988480374 358960427 103917248 489961885 725714299 637814808 193599384 70607784 754299388 227472510 717928684 243921311 15376773 684571742 591422837 62183862 758796882 682442396 377275051 959582081 646045368 839847298 368633295 184387091 755891708 670994154 358343446 155388411 930668676 417645095 211360277 52482837 791815432 613047439 593223041 849798482 217766361 128576766 399599431 870712821 674052909 786246478 231050961 456693430 814509670 893673955 374898836 470651378 642032002 175623707 904712222 690451932 308173433 242518507 129598144 935835635 406720241 93679427 152290027 970658992 583004806 52399900 459345600 562407232 892975254 763705818 130291922 606462100 737591400 373572221 710591420 502426188 437765000 298596652 509119949 479760301 555128194 284517946 400467287 933780659 970289293 418216648 230939151 691859006 983425667 329289469 772479134 471090008 579601 112880217 18800383 463953790 647884573 267069286 572002012 84816632 549418429 261362469 496083728 959520266 637103250 874814234 838749733 393758452 877404644 909376156 79240369 73083530 889342095 498982119 536293031 518545208 932357073 467170998 329784510 266194909 819650427 903618319 27479799 377065653 999271470 540764002 206293488 179306427 205272763 875121977 784400152 758820905 647628386 234148511 56303632 899488469 385807903 684576671 592954701 993691617 524329676 187741414 130241900 737062862 494377892 96410097 900548398 601868428 457677480 594014728 158297256 937559425 359521299 754194330 708270822 760959815 451202393 647935525 99633270 477226436 923883901 299173378 586583788 196948822 884268074 794910972 206892211 867668749 474476715 644302926 697763776 86943775 212907560 195055039 716894035 76340856 920528616 338096666 777372130 248264575 775192098 972176863 972562981 360920921 99919357 787647919 114784273 425042190 315872694 823038027 69255453 653569279 392386469 852991506 301396314 616677433 408066089 98325026 967080624 736557412 460625843 606031134 977835894 600518771 514270152 640261366 817020592 483982760 367523397 210847713 969724762 465237076 717901703 87096744 934587983 21085073 797088927 186322860 814156270 81386379 619505189 751328979 881386907 266619616 702714240 773179899 344979965 755560910 824306031 888409455 406417711 529744728 157831184 458466449 34002391 653393117 508336985 449115369 290361068 735576150 944994541 701294779 234470487 704449662 557763241 272082807 90603045 453950896 933783462 639860900 487889766 505721641 386180869 328842518 399685139 598371498 280116242 534527724 932153229 604903440 239672018 258919634 723032863 323621721 8478725 977973904 222898586 884994159 614131110 791725277 160392192 710538163 64676405 873854660 28604926 271181478 13530012 429057368 872338551 935282622 95640614 9609957 396334535 32297311 891305987 921517341 386370590 90503145 390715496 49016285 235035420 872329760 654701804 481473624 862750786 109906849 664862525 494514363 843909693 478403614 509652446 983756697 209723964 580428314 608825146 707994889 540223 597094573 897068797 770144383 131882530 481872263 718818189 453183479 114733019 908349701 486329124 127049786 736695998 531597559 406691063 985333256 324513494 147062723 843484003 876443617 507846978 580908178 303125706 145561566 758565793 611544086 996306987 930047365 697645442 592148636 511824668 864341843 266715740 165638891 760274863 296124183 391966806 2340400 162887293 500928313 210698977 814896809 827709373 728687239 330756922 982714132 61653582 342886530 322918675 265491628 403797528 447930599 255518591 674038267 958525845 12837429 830289991 928566290 252493582 429397539 510191332 212844634 275275254 588073987 190832114 770197752 797286415 498226898 832672899 541711559 95859726 225261708 217962896 410753374 408546062 480434078 47518183 788161826 788990409 342803115 562508486 940513390 984882982 903839479 483850620 761186712 363625500 126206173 919725556 413818789 236143715 178504786 160872372 589560842 333876190 455626214 170818849 500324188 678884424 916914747 796138917 394495979 714984828 680187339 940165689 290857891 70509905 130794479 181367402 886190073 753768555 668084027 892478699 511646339 370840757 999098288 556960238 858638299 51486030 856959978 836057578 857157398 728998870 470418719 296362232 7532820 805924661 984602714 862557194 163577783 722388576 654690247 767438601 802755978 552818106 458604249 977729765 560141629 634439367 262367028 6364861 358192256 98698858 890787956 165857034 91487081 467469587 346545978 144924847 698815087 316799130 633411778 528427236 271956969 303015821 943082047 668453182 968625652 724594191 734678223 1503889 186787903 759898362 962246099 484111600 780326071 841283526 915294439 489469628 700259806 736792640 73436171 960990358 338581836 744613762 899611706 481514003 313257239 509586967 516343797 428929891 788081571 350459988 771755395 543349182 578494371 581794030 970262295 100697694 121984363 773676782 965701603 565011455 916075116 219589684 456897054 481671149 20931236 310970468 858882912 834028027 77108322 758529672 940436134 100341758 750551508 762668249 564368060 400510145 335756474 29575882 124578038 681143274 485769923 640163171 529701723 814610304 362298994 957595352 342419495 444866399 751915327 143123451 562179303 123997543 978000828 468976693 917398260 953033002 318676194 446928537 688875090 536620797 790559830 229620406 967013060 719438004 160856243 195875851 124220965 698171450 394334313 884205179 737901278 114225080 521518902 379639381 414170267 229986688 655893938 310207270 976620006 961612267 721042689 909493183 534607382 694453641 150694136 456677811 986943045 332835216 17384390 13743361 444178595 627688651 612673380 462888522 75350797 386914545 312569765 972555418 51342322 519516959 76287841 279374446 655280735 292819497 673717533 935285676 985036644 980014477 515955543 447427610 636762722 619138321 524266634 731441327 183425729 146063917 156411288 60955761 627091678 383528368 439269752 700297027 787320343 241410584 415896746 664472692 496171124 106970043 74670572 957196876 302196777 744989194 145011274 12008745 614290128 33965705 170471042 532491823 660143814 429490032 889844625 568933320 367085534 295848115 227232718 54990184 351024367 927396003 644350349 683477596 214524116 408067581 405248155 225827710 884439949 272786201 624938719 122271428 967135195 64522836 32713575 934957121 257333569 641520668 434252751 96161910 397208835 733258682 918779591 581857799 261887695 297736461 224819580 89119754 524979968 824321509 267343025 422843806 994659418 43397696 388641294 812128176 463511221 209808595 604396553 547258707 863572266 975347536 419676228 6457151 410548831 196433614 879800457 219920852 425233571 576677463 733489881 863118583 556387243 424385239 950302906 229465401 444594134 164758659 570590126 66192684 551572289 457978438 698412783 819720076 416460738 501725905 866586271 555894341 881660060 300191726 545118142 41234798 885708007 726243417 200478856 537109855 26760873 198775295 222890361 980691126 939052874 49799641 258995180 523859604 806398712 409628899 317383635 548697609 388984645 220406049 599786149 36975289 76966341 851377535 422787347 155338612 829849619 595709998 495026872 189521816 513034597 384120717 872936095 862448967 745437447 894084906 633347097 856512345 492908094 820971286 398713830 142872837 915421064 992803464 391832470 722832349 167044004 728390362 29002753 293684921 129987016 899903537 847883770 37631823 967343903 227143734 277744541 161470659 348418584 624030412 174388966 710876834 737326616 176342405 557834214 790498387 637218927 898234673 848431871 175191835 827709428 564820262 3671154 771780008 143091485 528116243 260539209 738978435 905439070 581696368 227179111 145104075 270192401 690304477 161548664 68260553 141032595 666288201 797347162 370539387 451894866 799981187 386774224 74480209 817096844 286951634 32179037 154366599 896122911 577716342 617505351 503324633 442224421 9469438 886197664 995415461 701756231 824554485 980561467 541656039 901422093 481536851 151922003 455564600 747725707 912683015 893659699 348377028 966807597 103527364 120672234 618710702 312430187 245008098 178397563 355348537 839858681 929506529 472944848 507938685 288677785 23799016 692457497 222025677 565600687 690100504 279815392 854327410 247152595 15782333 850046860 27237918 111882959 212169912 617151278 772543362 271054372 840180210 675314456 540608316 838298172 720537487 261881326 576373394 850095133 686943783 729388463 632346865 746364588 482595130 834448411 812965898 96413449 971562146 624848593 354350314 210277447 418472221 639604164 223359444 745360985 171784332 454193461 196831253 735602424 693793849 847184146 390448814 597077827 711020803 101163288 373540615 709502920 380372527 300416305 457214108 285105354 356514494 427373809 230533265 857639664 657520050 42766275 828978881 76280240 870442501 178215328 244067087 443496081 613193353 708287685 6644062 460464225 966525003 763982402 32963830 744258696 737707429 417773296 13038433 699601004 496678944 918752769 995289337 664486494 420986055 96521157 956129681 484017542 748214 110924593 967173382 739188221 781941656 974824195 249397428 603976066 365102124 29821556 358226433 609175932 948117547 951223848 379702637 219874462 915818225 731285191 759491320 262278798 889883946 958741939 836890383 516290787 9616312 955575963 688814447 330160931 637864524 157759570 600531741 172157209 494530358 497320215 246959497 962466615 628920329 855162767 525244771 205539826 760578276 269979215 949567838 574881343 747475999 166228748 615782257 943182243 495046577 571687402 991650703 238031738 231128150 774923695 751828169 208601425 512619677 572592883 180624160 818210524 614615947 897408972 345196067 675803356 550783656 480114590 483376837 211217360 411930259 542084625 595668573 507626973 771472558 780677161 981306133 189358292 36867446 559273146 859007512 233670766 772484398 956848873 724160393 352400043 916478124 250245818 932220344 61672920 971773757 654312950 666939727 987460257 33010234 844777498 410884079 138837959 173175926 222375703 860442588 756565666 577189935 865293672 247448817 41374208 230973292 749570551 432530766 698341970 838945620 225669491 735963257 953650283 475549030 90595055 816750552 9159795 256289026 841983923 124831284 295259986 926721803 32432166 47258665 615501534 398101199 824128964 248814991 573328607 371658287 408455158 688826075 374740454 701731443 477059166 307504428 711524902 161290087 137098105 868819138 841981562 950379753 794005191 775265088 473964532 53125591 68697598 179292106 452206095 394809929 839283149 454178391 462278089 443569499 690864143 473759871 352125133 204583065 486703293 53444113 25664769 161603360 394214840 544935241 822859314 663945499 987614051 543749181 451465121 927127577 862688954 760377441 390117463 859990469 918186561 127766217 326098831 771402972 869790223 522924748 36266202 347330100 253810878 863109870 46106634 630482305 485287687 151166468 69433591 27239103 701067679 268156052 466315225 201420328 525520861 15946008 575279200 237778829 786088329 438102321 396469154 955832918 64017498 134195176 356378231 963982222 481232436 130507310 504805727 887373546 278417444 933386864 181511545 695327543 401459844 171052419 309556462 400090441 478253452 932374992 81455278 977529514 66467441 775988312 981417713 820339870 203826138 143348918 692637296 806289902 869504954 507658862 450205245 211045882 746273119 743311438 487382121 603405867 236370289 60873107 703555684 655591325 339760838 769700045 972473736 32254584 739700232 367621931 483201283 207011136 209418844 719948479 748705010 678084122 34704325 466909131 939634008 279496528 716712406 448278006 806571383 273740638 410760024 696310561 812039315 275192048 326974725 840167479 789518226 543715957 967945964 986906290 26208985 733650023 737447251 653739772 801993950 5706334 682346546 688197572 751106618 606710773 700811996 800589520 687466943 980477407 512067437 125165500 806454366 900752137 199192462 43707308 757132800 320460052 829143113 171850519 576640675 233333876 196365387 601920108 270213357 319302313 270265833 812648920 285892340 445216837 666773770 165924657 68644626 826084873 188927925 846069184 178584071 414633933 120041249 564338312 551418301 871189637 771490845 486711461 84221816 297251475 370561683 102709735 702779942 616868757 934889593 535335996 854571858 185297456 847233565 589665247 794444892 214227406 645188810 805200699 135135321 468209914 678974042 246348415 448564401 351993361 238216631 61983518 197153384 612106 387811254 135052909 299071889 38532958 553870015 11900680 904615330 561489722 331912536 465927027 557626588 765880314 818549012 589188420 412323726 353101997 972092664 350919502 40239280 6476563 586191164 873318269 439000998 295268571 644125778 987571842 185680425 171530077 768007936 948661481 339150575 496157975 933841612 842275130 289838634 980384777 205535801 797881005 914149350 56306583 553630620 803435370 804410344 214287525 577535465 798165755 881086466 596759613 680187117 17314972 211784676 308234920 397581541 390744725 735998778 852544938 182439314 674686858 238622413 665563712 642267029 300662183 4688435 227867982 723248978 185098631 860945716 556610412 294315703 753278851 688922835 765378988 124245904 561262242 666425180 91621956 530373500 498738131 268373251 912218339 472921954 569730869 422817090 682060538 187734154 351491861 997277178 116775555 108894998 115082286 914851373 872321687 228243367 102425101 659566117 990563280 351610064 743372636 682326424 71907076 545631197 525488604 538115526 909208615 29723856 138616037 15864726 155415212 89801779 570517643 965217419 783581959 381121177 192624417 98578149 432017309 181185323 798196394 396727609 652540812 865062048 818248575 866392141 452411786 799277601 107031120 587019662 610493987 856556421 531941979 365843554 179814263 544286025 87928878 897404562 601648071 738053589 771049010 710758022 814106219 276411969 704335387 668753163 421188638 952646047 535745972 202617755 699107344 149469402 225259032 666337606 552098877 502475888 142020682 361370226 873991023 641393129 582173417 421771973 645956689 833263306 449982389 215527981 298772428 910771338 118381086 571288299 350895376 712469969 235650367 350826692 412939923 375211828 301207904 141618971 21583172 447144216 300343436 51628192 224451027 187955010 788040910 945150643 200668990 399102330 47728995 490148869 143281469 256446264 836943184 383883074 130783486 737992638 818716260 336398859 192743171 325485090 953106848 496010677 796207675 767638788 780151238 867690157 164135652 238725662 302056324 980481405 293587160 854645812 856228817 480965751 971716380 374129495 780914608 934106387 912740952 299112477 280371749 550208501 844772193 352778872 616897556 333475279 458006868 918692752 288112218 221107998 251168421 91044715 276615732 312788782 682426637 955688857 364068998 376606063 741306893 249351246 606073312 7559808 88832067 68045165 63281524 351880122 121844232 913153309 941167393 405774099 888963789 742442365 864949644 552968935 163044497 886373412 928028982 783523749 723616337 410025400 214748067 202517475 46265715 860288449 182143657 756256630 576189987 293797873 504034364 295580972 997097333 952595635 162151068 68331031 752395286 589363848 100452002 148838179 659627395 897465930 900025927 103767585 388001416 350221169 286875007 211219738 43588805 904121118 977965912 479194520 768328027 866124704 691323839 861080477 329441622 787949720 90547140 506362634 51068318 959217236 532592542 281902588 624553878 389365507 453125355 70086703 611218067 866724024 102329704 116373 983882998 423133315 691210485 325352688 973756047 621461904 874297237 984037722 763274695 542247943 759993764 844369215 161724352 264378807 174255483 361522042 863667710 911672889 943138471 338282446 642541593 825789709 402597571 931834557 241857378 182295098 513449911 29008322 642744957 23057129 987662034 566854196 449507017 227573159 502459540 394897121 83425127 880955713 685685997 62088420 674013293 54661308 139461655 796944097 691902318 747571474 180457875 92548613 304668008 264209160 89289823 879074823 199012982 558042413 625590888 59336725 637343532 376426301 188769098 56054187 323905120 349504955 882724856 633758947 982632276 320321704 16175797 855278242 550153518 734983184 635664645 598168905 833967692 480819374 293013481 715422090 628290275 133272297 258265324 953255324 710136163 34013571 304062551 755835723 166704086 861329084 920139195 117638419 375162446 51299075 517754073 820125899 58301889 460817232 538229296 786227156 9743592 152392253 941318130 148795433 79660196 412154744 172578620 597283182 751276199 551621914 381578769 486957591 905067563 780825170 937926587 894392581 189129766 34626306 234182325 85692955 3913931 34711838 18419668 919241712 881796849 265148473 801723065 196860030 711791305 352266362 80057740 689491889 172001740 619274752 843044673 189155742 160481821 925565006 265697442 717162662 967054599 526075111 721501536 524755110 308683109 741121937 732506713 570177258 695099899 634343843 898466946 592215904 640970455 39758979 575545795 946300593 481917813 216256794 935513272 715347958 503852819 751350250 101434563 280103558 613035148 214026221 668589828 1802908 460946837 365417554 304389231 798461396 493665837 104109730 371858801 459263766 414584052 808540830 323275323 482171673 83401993 154793541 614560477 838294631 93730752 474776692 915606255 407763377 739005884 633837605 326607121 936198487 684902327 965933974 247344760 639645522 12886246 730339259 602819496 259796317 58949160 121057813 720404273 610530085 88864735 319091731 985945195 241712924 899319552 149121615 536896761 899145274 891029793 944903356 443119611 516724787 301208520 513724223 561002635 268366156 184234278 507409605 889367170 695138817 619401993 168917425 537073506 839892987 529895011 587905230 308753641 988390270 98585962 769640692 369042622 651573076 282813234 461564823 352649884 595663621 959202777 204387229 259685330 111473099 673078208 489238641 986284414 902429224 1651671 930881095 297389871 582016024 411552455 576750125 492146085 643792302 735224125 623030446 837724059 857191442 99272429 130452095 297310815 119751564 365241321 875426597 63046030 546299724 493040745 368918781 890331599 33538454 238058480 932088362 728322676 600363118 413725162 209597258 334254033 795756154 444992067 859359820 252864441 716569281 862343216 30309881 268567687 532750945 873948232 326758535 44961466 493516763 256622867 691253205 892080912 192560575 43422142 587815787 239552602 545613365 67973584 85707864 936392579 109654566 441580458 609542244 296054698 43689842 907847492 354075594 2298687 355925264 96232063 99029014 846102087 790178432 437477617 404584496 742389074 81503755 35412574 15894166 984035562 326805877 274938306 568970971 892961797 175441062 780191141 2229 498313071 76111006 149880244 208243321 596519689 524049077 254665913 840875747 277318664 465215093 877475914 527324100 35648960 547879070 825133248 563662954 794287283 804587992 216817454 185297871 467627381 583401290 450142226 603908788 271795880 460357555 507847706 863703574 472976583 838329331 329889618 898849597 229149341 666466650 500257700 857357152 632564898 941740887 756237752 199981304 764249154 810639958 230610642 491459746 355509822 353883647 919870186 259342656 221051366 385518667 742987925 45217433 115760397 741234583 77264971 451828845 30438517 713882258 47167551 133465814 655291357 720435956 555306114 36202006 288215858 314108413 395597101 795144413 515978209 780414718 756867753 347232209 960067455 101177328 250118328 482928536 788205399 575018546 542806913 138531772 891630328 583360319 228130707 668122286 890303949 451824671 480719994 747233576 217065858 191106853 884371462 440830396 12480187 21188756 164258019 628099595 40881194 320247671 608777367 344486111 581311107 34137341 379055668 592711301 231137135 829030666 371065940 831645077 587899908 677772992 518199782 400230144 127949287 474866079 925066937 238525858 267562058 609173905 573105858 809400512 283908084 13572367 804362081 429119900 709435280 249636075 333862723 826941690 192505665 758884420 278168371 313197828 637107686 272386007 445950424 213372737 904055640 860291851 433023322 414412774 384632473 310938355 967588005 671339920 396665877 815182337 424057367 106923667 732921611 756057251 446913214 327500434 995359227 152572300 168719998 90461780 423602305 184166599 618364791 889248378 10457231 924827669 383903019 781512416 768737207 653826419 641695793 158532309 16971067 546225983 201899594 341464719 337938979 761474370 547149718 272993351 542474384 220843520 122228728 69341106 935280738 633436901 348910754 238958718 318274663 667066751 250701585 157046604 80560939 831271964 678213532 163226124 966112261 104033349 81109860 325239915 250194401 757905666 992823399 64197286 518799235 58275987 692575767 455035989 61864318 640816856 382326411 894965137 542015073 5046099 445045575 98553879 875205678 414921023 659377319 637274023 881159155 564601107 323111687 17212260 272984327 686502550 221864461 724030857 798442194 140898213 745197475 476201192 502621210 783057396 526271410 669972287 655928603 474005402 818872279 436951954 553240382 32740202 961341397 99509251 171241361 690291409 137301883 190312995 274375892 223440187 909003186 188839531 918802567 112771736 512755751 47880521 961517518 364611876 276489274 746163928 949306303 143591626 188653152 471591068 695460537 979056923 572364269 210554006 5109550 714966816 163485352 425636862 435900499 400251262 892816635 154820680 809213770 808056480 669122331 490981053 57904753 912849690 905531444 29386036 647181016 545959622 500599203 928256722 934034459 683440287 625342661 747716499 837838288 389177024 325423312 155998046 138893383 411200350 749199795 564801113 649593942 7252039 414875589 615295995 571351312 363740297 161257663 427990883 924770933 904702189 786131790 714284043 843747591 620869261 291987269 372995228 643397313 926664206 637296091 520679452 223763101 527373144 934195230 289363674 360736472 113999192 563914247 934813720 694997954 773469311 108477983 980421384 61257798 933084466 926140183 539366256 108924004 677951615 847579621 657860495 386978171 766495980 203016450 545711856 166219132 188970761 571992565 444974888 691561863 801289089 687611618 654077552 767992251 439335919 259642354 559489473 333999611 394732704 773519843 593473703 659331855 586629147 382830772 615277955 995010731 852357153 329054828 319218011 518113715 281666028 751211225 417395334 973999465 271932237 894536203 438241150 242793023 805276503 398802315 335744744 66147352 903932109 935058207 787999214 649253605 433931764 343264161 223065357 922814950 162356620 648837862 151787144 261180621 174406903 855905283 487651622 649996297 8288212 388237391 822999935 441419305 845787925 789723604 410339205 567392365 714601041 734313998 186626187 606844279 637488743 222881339 183254331 615818281 88667811 331956377 584046326 151193253 757506698 337396150 563273122 173776282 857946743 98597685 636600241 667293615 964552112 807345639 68885722 593743532 548592884 103932776 131419913 552243074 552526196 852798713 590206230 397557130 607442370 483277057 470276182 376015083 359679672 297680168 4952814 52934451 579061695 640945644 59811411 374968910 629303974 372762254 779753166 16552575 460803574 40381648 208914889 750699134 395410971 425193119 432321337 395607811 696797951 110912186 687807522 165315133 667400387 447327004 206835280 46356039 471530712 234180395 897648589 913606247 488634512 484575712 190836042 667108062 24389605 401130693 578336090 94576356 920236171 681278442 855655906 528357102 252800258 563734535 560703425 601105472 740132370 206514509 725663394 959194217 430568352 643807131 887393461 879255010 541943520 993518721 185826915 71083994 142299665 954484210 371295418 882939065 803996101 877289506 6627402 509152192 570675220 634923840 38492997 151404485 376582885 576297423 46351126 653127052 355320858 829648688 435726503 932338554 213209711 307583742 621943170 594062924 123285054 130230372 650223180 568991076 475046629 945640066 94988748 426596067 138804893 796063885 777105217 921819872 941925039 228614501 105966572 900819007 306622271 899117677 183582285 55377332 730237649 850170892 930088142 461407401 426605626 170593300 176704426 410787138 379128503 779942501 106567617 116630377 194103204 384721143 930085984 191078872 318878441 150010223 454755728 861087607 658852585 220475626 583524542 190755825 831354789 209022292 350192345 256687746 204064459 940790405 722488441 517156966 662706380 278467317 767708708 87955488 771688342 700340746 458577309 904690141 417925696 641321274 383393117 433727584 291356955 181635770 80619682 876602084 975064772 567395142 100531586 652964555 963071761 92211300 290560578 937808038 376233521 620729587 147108312 884288650 945220002 921002815 361567979 331379001 750748243 542876339 218688224 136414305 470196068 569351752 932008787 725349809 353692870 39922173 665027805 584958331 703815280 366375848 93641029 789090763 832775234 654243501 572244929 169821795 314631065 417388670 197968042 838159445 333821519 374470564 599006352 280460546 469549311 364508964 567110199 76706069 717014665 938464808 509999634 121104370 609906122 633008388 454174665 21002145 963501724 139619058 807790208 777503708 229429722 944194806 889229267 657850276 570399678 611819924 854690501 857880770 309233372 964690809 961700152 546077316 663572005 78207058 908269231 458706876 917896718 373643713 789989157 362251115 26898880 160920690 576442767 742833711 337010838 32040792 173299770 881259290 904919690 794628974 42636465 627756434 890869462 623028100 591281682 115732083 87525409 903218231 824480411 140215793 88497352 142135790 573358739 634240940 804745292 687592009 626867324 376793703 283138477 885279003 180046246 576802434 662840955 829337543 794519765 576883442 544933074 59923248 201545853 325416429 524923498 192928020 132724807 456149408 545517812 44980724 662062518 836110708 237067190 451731175 601002704 370845438 767069335 567477010 507173223 717892494 43303260 976044545 793271987 137757525 173386396 250269661 88534222 995070399 366049904 123806626 788007694 367487083 407689702 820584687 511874989 142845324 411793159 679242848 240282531 983206793 394036058 890679680 550900675 216677432 703559978 934262802 33671371 737170890 155892982 48108995 236026565 366481290 711382597 780381887 979429897 551576391 834449427 321789038 900557311 226941029 96348250 932397572 565612021 496560766 242869206 292596498 375475904 659962978 843054784 335381561 43829177 602312559 667263883 237276753 812503599 8684989 181582701 658027269 697777915 42134251 94523560 388493254 591217273 271051502 656539170 582431868 841192444 652687211 530980703 354611150 209691360 36342592 893920207 397007255 904242350 488320205 661619325 386417233 12276782 75063171 359134887 96002536 60977953 309071536 964520549 959174182 169461781 987741544 474057503 838356548 419819226 766806225 397929050 446254900 663651462 334994841 993456472 808456743 654483829 695574356 568264423 585161408 702616500 246079248 426821295 665224031 649106640 134695274 899463635 456059236 710065918 468279426 668751572 813299282 352498115 457584012 650030366 929755992 779937522 953558073 379118397 245805253 107736853 628733256 965734363 832560454 978006806 434875993 298155087 101999315 435438287 325345794 95241361 794320806 980233175 620864160 658860344 525428619 71372838 201186825 566304222 617681853 466082177 640089576 993563806 279829080 126811040 146726230 708663969 993779816 356943839 227233446 961482974 552892425 337458102 784921828 87602646 503392865 386671900 235195325 323394799 706924046 918123023 801132492 500100758 811219415 107332166 383455393 527595643 581066771 810237359 649737328 370121574 40161780 748728290 501135223 598349539 844109037 316755502 959877222 723735808 378058377 823590086 606388662 69284618 249534825 841259927 371161065 226887339 869770477 688933362 430520631 104509664 347673145 181109514 949520088 131876826 660557857 624909150 584255105 523268381 236744333 140543698 851059675 464790499 369728867 355271940 585356208 886986122 258436453 148837644 494844415 938340217 995847253 34861405 765164024 460539490 982884599 916533470 392608935 471059215 428454801 233417569 600885085 151362803 662474574 305605912 350883515 273339598 588346599 744207256 552652493 591414746 212113388 158108593 272187292 756893772 361775734 668973909 913024346 387786934 613994206 259612060 309044234 79630939 34515598 312227053 393577593 805839280 238393263 343730260 965468533 596064727 894930832 97317948 512087726 826320420 842947472 756129618 358004821 282201503 22158346 870335041 407613190 517577317 123841961 799647654 505607585 884320552 801646844 140757153 850793474 228804019 512859214 451882202 204735611 754291762 889140004 832916186 69924212 614508103 199146178 793259766 854996727 63405294 79832880 337082881 988417783 608292017 354381744 546340621 539143801 733165433 212519216 144374813 734592997 375491638 882037201 582859716 333968345 994886459 426773698 24426903 678734252 104557445 521105800 808151349 837406640 215194269 912622215 251018375 417379381 917561225 815033810 372801703 891756025 995575627 323834039 688116278 611357607 333235978 534731348 846736156 483331099 288435704 829803556 196033006 427312734 435422196 684505408 567458237 282535142 824485318 47373987 940875952 748149962 484695972 817401208 742027573 180820579 707343651 559777865 778052936 262002481 791973558 206303677 297752515 776946240 827023189 774906484 870582411 441848287 207362868 382092392 521092355 781819262 590575704 842067172 153882179 405303090 256826179 72474113 142862080 816276894 181556131 36755551 341772393 844654721 629699705 369581108 18853695 467869585 245615039 82584773 91556858 401752892 472582459 155916485 800621457 829758048 43925383 258454205 199276969 772486081 453311873 358644943 751000600 286329531 674645179 302698526 906122275 169498182 56972633 352225303 922399216 64961308 925194765 829844577 13047293 130868488 122992967 332504260 32553582 838980999 375168809 966537161 437265242 971303603 789567373 342800442 141596994 70045651 318323296 732381528 479974354 903697024 685762044 830852723 800984583 789257191 105984669 716722493 176616694 931635526 853731050 395529778 861969522 387812706 51558366 103653838 731393346 864371244 897957712 286799317 340220041 180059249 657487897 535938989 634966854 256737707 749086672 521059024 46477878 568060948 996992844 489443856 180854628 536348144 276596237 893556522 94946941 846520400 767452774 141594444 873988883 915176244 178611788 453584989 446129095 154564992 682589102 858735360 677228523 335604027 887964768 50078723 528356299 489982431 567104494 878424282 436857173 338397006 475293465 818686873 45632309 118379749 958854527 987571509 23201180 743063342 691694123 546914686 946426369 83635913 205373787 319167538 350439935 54091079 84205219 953391948 848725123 361042149 128911108 822643356 59600331 646489613 785088225 126682414 928518038 573836360 971445203 153818695 749026220 33695208 333288664 973989682 956764259 675502836 709243500 190403207 495591626 231083121 613848611 361191105 801792313 33429406 130275568 997908360 117514532 360419277 301364988 138516523 33316774 692461500 105476433 807115377 438487156 961153237 827426632 443183742 15926724 401780127 329016216 794239810 247935291 788364028 968378849 365398006 398242941 746591773 92419154 467042842 790201850 389009482 6651487 667804306 30779843 566139422 341168682 69343419 78042923 784016742 272534137 223616163 445027677 156650779 626023746 841594671 434296880 490075035 399863041 893782222 74759903 10070140 115909229 36336849 521714147 210907466 331104656 923374387 271237758 731905213 705992028 756847851 216505038 971559712 207869747 971123010 300235240 107920390 565155122 569916755 423204256 582106626 126700760 474568626 934933758 986132255 195133610 588839562 913908705 652371396 591747079 562541804 524838988 218098892 376046095 853940975 297989973 471973037 856196986 26004158 545989189 795803431 503592795 274704643 43928087 897818634 733191255 410589061 729910482 388350274 745758529 305514079 85468223 265130353 123172378 114583943 200320208 286913746 619911408 897517379 883366332 596062571 633023717 707729364 980322180 412279054 828637164 388927986 894071145 861903989 182820806 483856758 193908508 52527977 934905362 643532821 846031510 602465477 116988559 99277990 870343191 480634331 534151776 678420164 32313707 328420700 575538279 610893595 57197289 636566964 685259611 874321321 837695860 892132736 777532578 784331673 488059920 792494893 588105365 258486506 753560087 185460336 958297866 639458408 84007154 732957001 838762323 86285386 873822019 449591755 326239819 186653120 778213879 608028933 343518605 48168361 243484935 890459797 928527353 955433952 403550230 824134788 271675152 624464500 156649826 119706210 1460898 833633193 216706577 441484062 312112536 682874084 239100896 227732761 209067019 421801246 865311978 181967957 223874751 863552 116037807 881621123 240258120 458990203 661572797 22849913 788609022 39980490 548868834 156971832 267336652 513693419 152809822 494468921 664398236 856788458 17506324 563632921 215930965 567951785 115090180 126996436 29676153 628408121 778587201 291233786 292891065 31738497 646048615 507804484 352491821 115974969 849092428 623126557 767717890 275596295 126921116 279676780 979783571 933097174 351530519 322350757 7601360 313045887 12602354 908357661 654736274 860577244 911463682 542293797 581063726 388039517 74731234 10851838 626748080 659300656 959670825 64628598 311526893 530650157 647948207 647662293 391153961 563259982 670255768 959630322 128502510 947536616 482401993 450772673 397561502 790708985 453470377 162843963 924362169 69890913 677568662 16282383 944418369 456954250 196746337 951608316 115725581 686876510 181394311 478509352 348515210 946563371 814895298 952505099 29201152 242608259 257307976 86274077 189808646 174921477 93238967 339473631 936228468 527782774 728783675 231732033 715084150 738801104 799909324 792237859 198674167 990839880 275014768 781116165 340728082 143911438 42258882 810487181 18533330 494043806 84864198 142157624 108858176 247262612 413962866 425870389 174987896 77037274 328131749 100433200 470880963 22337306 79302255 426055484 41272096 734958047 938678954 658113797 383507990 849033467 477193987 365889569 220420663 546891763 614042439 559667196 921418282 202884548 164748458 469184400 5888541 159518116 408429046 740353354 236465829 424783522 916586127 480175985 557142409 413151476 991579921 545657679 664413205 203361776 966071734 939856823 475835914 338459379 474120806 480447945 278584245 974851509 281150975 842435746 537441904 179870251 623108651 975783705 94775694 273915474 710654623 981409986 379390877 966585130 344093512 611393116 207990828 658528751 670077296 445151201 162850020 612394253 646274760 845545708 725347703 632896206 873799165 232992647 251384690 429583561 693740316 732241944 841773652 181697203 480735648 583779092 730280853 18862690 174154442 538440080 410389281 269359519 218037365 986787631 186888552 325107509 529982687 785802152 365533610 394973920 930505111 444150674 184625770 33274608 299075699 123872795 22446049 132026949 699932452 533505300 156196693 790361760 20197677 40187950 258703507 819643035 794669545 811462119 17780020 72932573 979934969 895388373 378692964 551306847 819425619 277679916 97457370 83401536 849743728 592120073 513754168 975214448 892396549 118014667 630583689 386661054 515632873 967075754 197469195 870272987 104321579 935890377 134835583 274909146 320438090 894687443 363455983 538863390 364007665 361850315 273028328 639962320 527824251 964024038 75015325 383304805 506202301 539680777 319765290 823587014 446696024 777699297 659010934 232307996 130270280 804523753 90395365 400807192 737859348 375616177 10815725 271304939 134013232 77811544 676809564 913047064 888871805 734311222 879770634 229923027 897095602 483024562 991703623 824550019 653820944 778693164 599620226 762977057 300756566 987738708 826334400 719437721 189117752 110522244 274602280 154504015 435536718 312712623 92343531 618416276 446735380 213669289 989020240 288077436 973968254 674529174 732833584 395264452 921882783 886521049 173789487 178524126 901990320 671760848 966787077 816387482 610962769 934622607 327787994 592041758 586476964 639500033 398078697 59345759 388618487 260622206 175782379 692899011 140059341 2857479 391884356 367594609 270531585 457459005 729462912 856497817 45041681 327338999 408008079 917208400 333424701 68727625 877414808 980079443 72834546 301776903 13837922 957806532 578765021 84702365 906559075 871612115 257468717 691322129 118318562 714269464 478563101 614181131 109743665 780144428 503290084 684494966 297855171 641022787 11271951 570635469 53614932 594546036 534550584 612438463 120629911 444166899 976488647 1953995 428844771 858627648 318920225 101318084 382858255 669058487 337348394 408376941 366325674 250077655 15171016 438837345 560182225 676516039 595443284 894724934 827298144 34229813 902225520 179826550 129606303 795676324 307606934 387956859 179159718 754278139 493229122 424710071 697399659 544606647 961858544 716440597 829721092 925464230 19129767 787231581 336589700 728512790 259344299 652527900 761363770 208617333 623944962 505502350 461091676 577060998 283605347 161551139 941840344 618122424 79967640 758470965 793594950 864504621 518409080 533581489 649663705 351389433 715720801 336918924 893424970 58189607 379284233 59948190 380157027 804163600 114263797 203073089 304828836 80670769 672405226 208543962 600640234 502803193 816888896 709710431 523821786 568540449 909647098 451891528 650255158 722654746 521458853 677024362 511326301 517687878 56076097 771588411 232500316 573680993 809834279 358103478 995970294 61213564 806672699 895973451 305645140 394179189 293417389 611828218 205654764 672215574 62746381 851020183 700960600 100293029 833324717 946401214 50766571 135103705 861451786 290089528 668164632 679615809 909239582
|